incubator-blur-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From amccu...@apache.org
Subject [16/25] Regenerated thrift code.
Date Tue, 30 Oct 2012 00:15:29 GMT
http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/1befa5f5/interface/gen-rb/lucene.rb
----------------------------------------------------------------------
diff --git a/interface/gen-rb/lucene.rb b/interface/gen-rb/lucene.rb
index 1825314..63ef173 100644
--- a/interface/gen-rb/lucene.rb
+++ b/interface/gen-rb/lucene.rb
@@ -1,5 +1,5 @@
 #
-# Autogenerated by Thrift Compiler (0.7.0)
+# Autogenerated by Thrift Compiler (0.9.0)
 #
 # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
 #
@@ -8,694 +8,694 @@ require 'thrift'
 require 'blur'
 require 'blur_types'
 
-    module Blur
-      module Lucene
-        class Client < Blur::Blur::Client 
-          include ::Thrift::Client
-
-          def openReadSession(table)
-            send_openReadSession(table)
-            return recv_openReadSession()
-          end
-
-          def send_openReadSession(table)
-            send_message('openReadSession', OpenReadSession_args, :table => table)
-          end
-
-          def recv_openReadSession()
-            result = receive_message(OpenReadSession_result)
-            return result.success unless result.success.nil?
-            raise result.e unless result.e.nil?
-            raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'openReadSession failed: unknown result')
-          end
-
-          def search(session, queryArgs)
-            send_search(session, queryArgs)
-            return recv_search()
-          end
-
-          def send_search(session, queryArgs)
-            send_message('search', Search_args, :session => session, :queryArgs => queryArgs)
-          end
-
-          def recv_search()
-            result = receive_message(Search_result)
-            return result.success unless result.success.nil?
-            raise result.e unless result.e.nil?
-            raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'search failed: unknown result')
-          end
-
-          def doc(session, docLocations, fields)
-            send_doc(session, docLocations, fields)
-            return recv_doc()
-          end
-
-          def send_doc(session, docLocations, fields)
-            send_message('doc', Doc_args, :session => session, :docLocations => docLocations, :fields => fields)
-          end
-
-          def recv_doc()
-            result = receive_message(Doc_result)
-            return result.success unless result.success.nil?
-            raise result.e unless result.e.nil?
-            raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'doc failed: unknown result')
-          end
-
-          def closeReadSession(session)
-            send_closeReadSession(session)
-            recv_closeReadSession()
-          end
-
-          def send_closeReadSession(session)
-            send_message('closeReadSession', CloseReadSession_args, :session => session)
-          end
-
-          def recv_closeReadSession()
-            result = receive_message(CloseReadSession_result)
-            raise result.e unless result.e.nil?
-            return
-          end
-
-          def openWriteSession(table)
-            send_openWriteSession(table)
-            return recv_openWriteSession()
-          end
-
-          def send_openWriteSession(table)
-            send_message('openWriteSession', OpenWriteSession_args, :table => table)
-          end
-
-          def recv_openWriteSession()
-            result = receive_message(OpenWriteSession_result)
-            return result.success unless result.success.nil?
-            raise result.e unless result.e.nil?
-            raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'openWriteSession failed: unknown result')
-          end
-
-          def addDocuments(session, shardIndex, document)
-            send_addDocuments(session, shardIndex, document)
-            recv_addDocuments()
-          end
-
-          def send_addDocuments(session, shardIndex, document)
-            send_message('addDocuments', AddDocuments_args, :session => session, :shardIndex => shardIndex, :document => document)
-          end
-
-          def recv_addDocuments()
-            result = receive_message(AddDocuments_result)
-            raise result.e unless result.e.nil?
-            return
-          end
-
-          def deleteDocumentsByQueries(session, shardIndex, queries)
-            send_deleteDocumentsByQueries(session, shardIndex, queries)
-            recv_deleteDocumentsByQueries()
-          end
-
-          def send_deleteDocumentsByQueries(session, shardIndex, queries)
-            send_message('deleteDocumentsByQueries', DeleteDocumentsByQueries_args, :session => session, :shardIndex => shardIndex, :queries => queries)
-          end
-
-          def recv_deleteDocumentsByQueries()
-            result = receive_message(DeleteDocumentsByQueries_result)
-            raise result.e unless result.e.nil?
-            return
-          end
-
-          def deleteDocuments(session, shardIndex, terms)
-            send_deleteDocuments(session, shardIndex, terms)
-            recv_deleteDocuments()
-          end
-
-          def send_deleteDocuments(session, shardIndex, terms)
-            send_message('deleteDocuments', DeleteDocuments_args, :session => session, :shardIndex => shardIndex, :terms => terms)
-          end
-
-          def recv_deleteDocuments()
-            result = receive_message(DeleteDocuments_result)
-            raise result.e unless result.e.nil?
-            return
-          end
-
-          def updateDocuments(session, shardIndex, terms, document)
-            send_updateDocuments(session, shardIndex, terms, document)
-            recv_updateDocuments()
-          end
-
-          def send_updateDocuments(session, shardIndex, terms, document)
-            send_message('updateDocuments', UpdateDocuments_args, :session => session, :shardIndex => shardIndex, :terms => terms, :document => document)
-          end
-
-          def recv_updateDocuments()
-            result = receive_message(UpdateDocuments_result)
-            raise result.e unless result.e.nil?
-            return
-          end
-
-          def commit(session)
-            send_commit(session)
-            recv_commit()
-          end
-
-          def send_commit(session)
-            send_message('commit', Commit_args, :session => session)
-          end
-
-          def recv_commit()
-            result = receive_message(Commit_result)
-            raise result.e unless result.e.nil?
-            return
-          end
-
-          def rollback(session)
-            send_rollback(session)
-            recv_rollback()
-          end
-
-          def send_rollback(session)
-            send_message('rollback', Rollback_args, :session => session)
-          end
-
-          def recv_rollback()
-            result = receive_message(Rollback_result)
-            raise result.e unless result.e.nil?
-            return
-          end
+module Blur
+  module Lucene
+    class Client < ::Blur::Blur::Client 
+      include ::Thrift::Client
 
-        end
+      def openReadSession(table)
+        send_openReadSession(table)
+        return recv_openReadSession()
+      end
 
-        class Processor < Blur::Blur::Processor 
-          include ::Thrift::Processor
-
-          def process_openReadSession(seqid, iprot, oprot)
-            args = read_args(iprot, OpenReadSession_args)
-            result = OpenReadSession_result.new()
-            begin
-              result.success = @handler.openReadSession(args.table)
-            rescue Blur::BlurException => e
-              result.e = e
-            end
-            write_result(result, oprot, 'openReadSession', seqid)
-          end
-
-          def process_search(seqid, iprot, oprot)
-            args = read_args(iprot, Search_args)
-            result = Search_result.new()
-            begin
-              result.success = @handler.search(args.session, args.queryArgs)
-            rescue Blur::BlurException => e
-              result.e = e
-            end
-            write_result(result, oprot, 'search', seqid)
-          end
-
-          def process_doc(seqid, iprot, oprot)
-            args = read_args(iprot, Doc_args)
-            result = Doc_result.new()
-            begin
-              result.success = @handler.doc(args.session, args.docLocations, args.fields)
-            rescue Blur::BlurException => e
-              result.e = e
-            end
-            write_result(result, oprot, 'doc', seqid)
-          end
-
-          def process_closeReadSession(seqid, iprot, oprot)
-            args = read_args(iprot, CloseReadSession_args)
-            result = CloseReadSession_result.new()
-            begin
-              @handler.closeReadSession(args.session)
-            rescue Blur::BlurException => e
-              result.e = e
-            end
-            write_result(result, oprot, 'closeReadSession', seqid)
-          end
-
-          def process_openWriteSession(seqid, iprot, oprot)
-            args = read_args(iprot, OpenWriteSession_args)
-            result = OpenWriteSession_result.new()
-            begin
-              result.success = @handler.openWriteSession(args.table)
-            rescue Blur::BlurException => e
-              result.e = e
-            end
-            write_result(result, oprot, 'openWriteSession', seqid)
-          end
-
-          def process_addDocuments(seqid, iprot, oprot)
-            args = read_args(iprot, AddDocuments_args)
-            result = AddDocuments_result.new()
-            begin
-              @handler.addDocuments(args.session, args.shardIndex, args.document)
-            rescue Blur::BlurException => e
-              result.e = e
-            end
-            write_result(result, oprot, 'addDocuments', seqid)
-          end
-
-          def process_deleteDocumentsByQueries(seqid, iprot, oprot)
-            args = read_args(iprot, DeleteDocumentsByQueries_args)
-            result = DeleteDocumentsByQueries_result.new()
-            begin
-              @handler.deleteDocumentsByQueries(args.session, args.shardIndex, args.queries)
-            rescue Blur::BlurException => e
-              result.e = e
-            end
-            write_result(result, oprot, 'deleteDocumentsByQueries', seqid)
-          end
-
-          def process_deleteDocuments(seqid, iprot, oprot)
-            args = read_args(iprot, DeleteDocuments_args)
-            result = DeleteDocuments_result.new()
-            begin
-              @handler.deleteDocuments(args.session, args.shardIndex, args.terms)
-            rescue Blur::BlurException => e
-              result.e = e
-            end
-            write_result(result, oprot, 'deleteDocuments', seqid)
-          end
-
-          def process_updateDocuments(seqid, iprot, oprot)
-            args = read_args(iprot, UpdateDocuments_args)
-            result = UpdateDocuments_result.new()
-            begin
-              @handler.updateDocuments(args.session, args.shardIndex, args.terms, args.document)
-            rescue Blur::BlurException => e
-              result.e = e
-            end
-            write_result(result, oprot, 'updateDocuments', seqid)
-          end
-
-          def process_commit(seqid, iprot, oprot)
-            args = read_args(iprot, Commit_args)
-            result = Commit_result.new()
-            begin
-              @handler.commit(args.session)
-            rescue Blur::BlurException => e
-              result.e = e
-            end
-            write_result(result, oprot, 'commit', seqid)
-          end
-
-          def process_rollback(seqid, iprot, oprot)
-            args = read_args(iprot, Rollback_args)
-            result = Rollback_result.new()
-            begin
-              @handler.rollback(args.session)
-            rescue Blur::BlurException => e
-              result.e = e
-            end
-            write_result(result, oprot, 'rollback', seqid)
-          end
+      def send_openReadSession(table)
+        send_message('openReadSession', OpenReadSession_args, :table => table)
+      end
 
-        end
+      def recv_openReadSession()
+        result = receive_message(OpenReadSession_result)
+        return result.success unless result.success.nil?
+        raise result.e unless result.e.nil?
+        raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'openReadSession failed: unknown result')
+      end
 
-        # HELPER FUNCTIONS AND STRUCTURES
+      def search(session, queryArgs)
+        send_search(session, queryArgs)
+        return recv_search()
+      end
 
-        class OpenReadSession_args
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          TABLE = 1
+      def send_search(session, queryArgs)
+        send_message('search', Search_args, :session => session, :queryArgs => queryArgs)
+      end
 
-          FIELDS = {
-            TABLE => {:type => ::Thrift::Types::STRING, :name => 'table'}
-          }
+      def recv_search()
+        result = receive_message(Search_result)
+        return result.success unless result.success.nil?
+        raise result.e unless result.e.nil?
+        raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'search failed: unknown result')
+      end
 
-          def struct_fields; FIELDS; end
+      def doc(session, docLocations, fields)
+        send_doc(session, docLocations, fields)
+        return recv_doc()
+      end
 
-          def validate
-          end
+      def send_doc(session, docLocations, fields)
+        send_message('doc', Doc_args, :session => session, :docLocations => docLocations, :fields => fields)
+      end
 
-          ::Thrift::Struct.generate_accessors self
-        end
+      def recv_doc()
+        result = receive_message(Doc_result)
+        return result.success unless result.success.nil?
+        raise result.e unless result.e.nil?
+        raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'doc failed: unknown result')
+      end
 
-        class OpenReadSession_result
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          SUCCESS = 0
-          E = 1
+      def closeReadSession(session)
+        send_closeReadSession(session)
+        recv_closeReadSession()
+      end
 
-          FIELDS = {
-            SUCCESS => {:type => ::Thrift::Types::STRUCT, :name => 'success', :class => Blur::Session},
-            E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => Blur::BlurException}
-          }
+      def send_closeReadSession(session)
+        send_message('closeReadSession', CloseReadSession_args, :session => session)
+      end
 
-          def struct_fields; FIELDS; end
+      def recv_closeReadSession()
+        result = receive_message(CloseReadSession_result)
+        raise result.e unless result.e.nil?
+        return
+      end
 
-          def validate
-          end
+      def openWriteSession(table)
+        send_openWriteSession(table)
+        return recv_openWriteSession()
+      end
 
-          ::Thrift::Struct.generate_accessors self
-        end
+      def send_openWriteSession(table)
+        send_message('openWriteSession', OpenWriteSession_args, :table => table)
+      end
 
-        class Search_args
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          SESSION = 1
-          QUERYARGS = 2
+      def recv_openWriteSession()
+        result = receive_message(OpenWriteSession_result)
+        return result.success unless result.success.nil?
+        raise result.e unless result.e.nil?
+        raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'openWriteSession failed: unknown result')
+      end
 
-          FIELDS = {
-            SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => Blur::Session},
-            QUERYARGS => {:type => ::Thrift::Types::STRUCT, :name => 'queryArgs', :class => Blur::QueryArgs}
-          }
+      def addDocuments(session, shardIndex, document)
+        send_addDocuments(session, shardIndex, document)
+        recv_addDocuments()
+      end
 
-          def struct_fields; FIELDS; end
+      def send_addDocuments(session, shardIndex, document)
+        send_message('addDocuments', AddDocuments_args, :session => session, :shardIndex => shardIndex, :document => document)
+      end
 
-          def validate
-          end
+      def recv_addDocuments()
+        result = receive_message(AddDocuments_result)
+        raise result.e unless result.e.nil?
+        return
+      end
 
-          ::Thrift::Struct.generate_accessors self
-        end
+      def deleteDocumentsByQueries(session, shardIndex, queries)
+        send_deleteDocumentsByQueries(session, shardIndex, queries)
+        recv_deleteDocumentsByQueries()
+      end
 
-        class Search_result
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          SUCCESS = 0
-          E = 1
+      def send_deleteDocumentsByQueries(session, shardIndex, queries)
+        send_message('deleteDocumentsByQueries', DeleteDocumentsByQueries_args, :session => session, :shardIndex => shardIndex, :queries => queries)
+      end
 
-          FIELDS = {
-            SUCCESS => {:type => ::Thrift::Types::STRUCT, :name => 'success', :class => Blur::TopFieldDocs},
-            E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => Blur::BlurException}
-          }
+      def recv_deleteDocumentsByQueries()
+        result = receive_message(DeleteDocumentsByQueries_result)
+        raise result.e unless result.e.nil?
+        return
+      end
 
-          def struct_fields; FIELDS; end
+      def deleteDocuments(session, shardIndex, terms)
+        send_deleteDocuments(session, shardIndex, terms)
+        recv_deleteDocuments()
+      end
 
-          def validate
-          end
+      def send_deleteDocuments(session, shardIndex, terms)
+        send_message('deleteDocuments', DeleteDocuments_args, :session => session, :shardIndex => shardIndex, :terms => terms)
+      end
 
-          ::Thrift::Struct.generate_accessors self
-        end
+      def recv_deleteDocuments()
+        result = receive_message(DeleteDocuments_result)
+        raise result.e unless result.e.nil?
+        return
+      end
 
-        class Doc_args
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          SESSION = 1
-          DOCLOCATIONS = 2
-          FIELDS = 4
+      def updateDocuments(session, shardIndex, terms, document)
+        send_updateDocuments(session, shardIndex, terms, document)
+        recv_updateDocuments()
+      end
 
-          FIELDS = {
-            SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => Blur::Session},
-            DOCLOCATIONS => {:type => ::Thrift::Types::LIST, :name => 'docLocations', :element => {:type => ::Thrift::Types::STRUCT, :class => Blur::DocLocation}},
-            FIELDS => {:type => ::Thrift::Types::SET, :name => 'fields', :element => {:type => ::Thrift::Types::STRING}}
-          }
+      def send_updateDocuments(session, shardIndex, terms, document)
+        send_message('updateDocuments', UpdateDocuments_args, :session => session, :shardIndex => shardIndex, :terms => terms, :document => document)
+      end
 
-          def struct_fields; FIELDS; end
+      def recv_updateDocuments()
+        result = receive_message(UpdateDocuments_result)
+        raise result.e unless result.e.nil?
+        return
+      end
 
-          def validate
-          end
+      def commit(session)
+        send_commit(session)
+        recv_commit()
+      end
 
-          ::Thrift::Struct.generate_accessors self
-        end
+      def send_commit(session)
+        send_message('commit', Commit_args, :session => session)
+      end
 
-        class Doc_result
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          SUCCESS = 0
-          E = 1
+      def recv_commit()
+        result = receive_message(Commit_result)
+        raise result.e unless result.e.nil?
+        return
+      end
 
-          FIELDS = {
-            SUCCESS => {:type => ::Thrift::Types::LIST, :name => 'success', :element => {:type => ::Thrift::Types::STRUCT, :class => Blur::Document}},
-            E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => Blur::BlurException}
-          }
+      def rollback(session)
+        send_rollback(session)
+        recv_rollback()
+      end
 
-          def struct_fields; FIELDS; end
+      def send_rollback(session)
+        send_message('rollback', Rollback_args, :session => session)
+      end
 
-          def validate
-          end
+      def recv_rollback()
+        result = receive_message(Rollback_result)
+        raise result.e unless result.e.nil?
+        return
+      end
 
-          ::Thrift::Struct.generate_accessors self
+    end
+
+    class Processor < ::Blur::Blur::Processor 
+      include ::Thrift::Processor
+
+      def process_openReadSession(seqid, iprot, oprot)
+        args = read_args(iprot, OpenReadSession_args)
+        result = OpenReadSession_result.new()
+        begin
+          result.success = @handler.openReadSession(args.table)
+        rescue ::Blur::BlurException => e
+          result.e = e
         end
+        write_result(result, oprot, 'openReadSession', seqid)
+      end
 
-        class CloseReadSession_args
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          SESSION = 1
+      def process_search(seqid, iprot, oprot)
+        args = read_args(iprot, Search_args)
+        result = Search_result.new()
+        begin
+          result.success = @handler.search(args.session, args.queryArgs)
+        rescue ::Blur::BlurException => e
+          result.e = e
+        end
+        write_result(result, oprot, 'search', seqid)
+      end
 
-          FIELDS = {
-            SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => Blur::Session}
-          }
+      def process_doc(seqid, iprot, oprot)
+        args = read_args(iprot, Doc_args)
+        result = Doc_result.new()
+        begin
+          result.success = @handler.doc(args.session, args.docLocations, args.fields)
+        rescue ::Blur::BlurException => e
+          result.e = e
+        end
+        write_result(result, oprot, 'doc', seqid)
+      end
 
-          def struct_fields; FIELDS; end
+      def process_closeReadSession(seqid, iprot, oprot)
+        args = read_args(iprot, CloseReadSession_args)
+        result = CloseReadSession_result.new()
+        begin
+          @handler.closeReadSession(args.session)
+        rescue ::Blur::BlurException => e
+          result.e = e
+        end
+        write_result(result, oprot, 'closeReadSession', seqid)
+      end
 
-          def validate
-          end
+      def process_openWriteSession(seqid, iprot, oprot)
+        args = read_args(iprot, OpenWriteSession_args)
+        result = OpenWriteSession_result.new()
+        begin
+          result.success = @handler.openWriteSession(args.table)
+        rescue ::Blur::BlurException => e
+          result.e = e
+        end
+        write_result(result, oprot, 'openWriteSession', seqid)
+      end
 
-          ::Thrift::Struct.generate_accessors self
+      def process_addDocuments(seqid, iprot, oprot)
+        args = read_args(iprot, AddDocuments_args)
+        result = AddDocuments_result.new()
+        begin
+          @handler.addDocuments(args.session, args.shardIndex, args.document)
+        rescue ::Blur::BlurException => e
+          result.e = e
         end
+        write_result(result, oprot, 'addDocuments', seqid)
+      end
 
-        class CloseReadSession_result
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          E = 1
+      def process_deleteDocumentsByQueries(seqid, iprot, oprot)
+        args = read_args(iprot, DeleteDocumentsByQueries_args)
+        result = DeleteDocumentsByQueries_result.new()
+        begin
+          @handler.deleteDocumentsByQueries(args.session, args.shardIndex, args.queries)
+        rescue ::Blur::BlurException => e
+          result.e = e
+        end
+        write_result(result, oprot, 'deleteDocumentsByQueries', seqid)
+      end
 
-          FIELDS = {
-            E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => Blur::BlurException}
-          }
+      def process_deleteDocuments(seqid, iprot, oprot)
+        args = read_args(iprot, DeleteDocuments_args)
+        result = DeleteDocuments_result.new()
+        begin
+          @handler.deleteDocuments(args.session, args.shardIndex, args.terms)
+        rescue ::Blur::BlurException => e
+          result.e = e
+        end
+        write_result(result, oprot, 'deleteDocuments', seqid)
+      end
 
-          def struct_fields; FIELDS; end
+      def process_updateDocuments(seqid, iprot, oprot)
+        args = read_args(iprot, UpdateDocuments_args)
+        result = UpdateDocuments_result.new()
+        begin
+          @handler.updateDocuments(args.session, args.shardIndex, args.terms, args.document)
+        rescue ::Blur::BlurException => e
+          result.e = e
+        end
+        write_result(result, oprot, 'updateDocuments', seqid)
+      end
 
-          def validate
-          end
+      def process_commit(seqid, iprot, oprot)
+        args = read_args(iprot, Commit_args)
+        result = Commit_result.new()
+        begin
+          @handler.commit(args.session)
+        rescue ::Blur::BlurException => e
+          result.e = e
+        end
+        write_result(result, oprot, 'commit', seqid)
+      end
 
-          ::Thrift::Struct.generate_accessors self
+      def process_rollback(seqid, iprot, oprot)
+        args = read_args(iprot, Rollback_args)
+        result = Rollback_result.new()
+        begin
+          @handler.rollback(args.session)
+        rescue ::Blur::BlurException => e
+          result.e = e
         end
+        write_result(result, oprot, 'rollback', seqid)
+      end
 
-        class OpenWriteSession_args
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          TABLE = 1
+    end
 
-          FIELDS = {
-            TABLE => {:type => ::Thrift::Types::STRING, :name => 'table'}
-          }
+    # HELPER FUNCTIONS AND STRUCTURES
 
-          def struct_fields; FIELDS; end
+    class OpenReadSession_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      TABLE = 1
 
-          def validate
-          end
+      FIELDS = {
+        TABLE => {:type => ::Thrift::Types::STRING, :name => 'table'}
+      }
 
-          ::Thrift::Struct.generate_accessors self
-        end
+      def struct_fields; FIELDS; end
 
-        class OpenWriteSession_result
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          SUCCESS = 0
-          E = 1
+      def validate
+      end
 
-          FIELDS = {
-            SUCCESS => {:type => ::Thrift::Types::STRUCT, :name => 'success', :class => Blur::Session},
-            E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => Blur::BlurException}
-          }
+      ::Thrift::Struct.generate_accessors self
+    end
 
-          def struct_fields; FIELDS; end
+    class OpenReadSession_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      E = 1
 
-          def validate
-          end
+      FIELDS = {
+        SUCCESS => {:type => ::Thrift::Types::STRUCT, :name => 'success', :class => ::Blur::Session},
+        E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => ::Blur::BlurException}
+      }
 
-          ::Thrift::Struct.generate_accessors self
-        end
+      def struct_fields; FIELDS; end
 
-        class AddDocuments_args
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          SESSION = 1
-          SHARDINDEX = 2
-          DOCUMENT = 3
+      def validate
+      end
 
-          FIELDS = {
-            SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => Blur::Session},
-            SHARDINDEX => {:type => ::Thrift::Types::I32, :name => 'shardIndex'},
-            DOCUMENT => {:type => ::Thrift::Types::LIST, :name => 'document', :element => {:type => ::Thrift::Types::STRUCT, :class => Blur::Document}}
-          }
+      ::Thrift::Struct.generate_accessors self
+    end
 
-          def struct_fields; FIELDS; end
+    class Search_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SESSION = 1
+      QUERYARGS = 2
 
-          def validate
-          end
+      FIELDS = {
+        SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => ::Blur::Session},
+        QUERYARGS => {:type => ::Thrift::Types::STRUCT, :name => 'queryArgs', :class => ::Blur::QueryArgs}
+      }
 
-          ::Thrift::Struct.generate_accessors self
-        end
+      def struct_fields; FIELDS; end
 
-        class AddDocuments_result
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          E = 1
+      def validate
+      end
 
-          FIELDS = {
-            E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => Blur::BlurException}
-          }
+      ::Thrift::Struct.generate_accessors self
+    end
 
-          def struct_fields; FIELDS; end
+    class Search_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      E = 1
 
-          def validate
-          end
+      FIELDS = {
+        SUCCESS => {:type => ::Thrift::Types::LIST, :name => 'success', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::TopFieldDocs}},
+        E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => ::Blur::BlurException}
+      }
 
-          ::Thrift::Struct.generate_accessors self
-        end
+      def struct_fields; FIELDS; end
 
-        class DeleteDocumentsByQueries_args
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          SESSION = 1
-          SHARDINDEX = 2
-          QUERIES = 3
+      def validate
+      end
 
-          FIELDS = {
-            SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => Blur::Session},
-            SHARDINDEX => {:type => ::Thrift::Types::I32, :name => 'shardIndex'},
-            QUERIES => {:type => ::Thrift::Types::LIST, :name => 'queries', :element => {:type => ::Thrift::Types::STRUCT, :class => Blur::QueryArgs}}
-          }
+      ::Thrift::Struct.generate_accessors self
+    end
 
-          def struct_fields; FIELDS; end
+    class Doc_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SESSION = 1
+      DOCLOCATIONS = 2
+      FIELDS = 4
 
-          def validate
-          end
+      FIELDS = {
+        SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => ::Blur::Session},
+        DOCLOCATIONS => {:type => ::Thrift::Types::LIST, :name => 'docLocations', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::DocLocation}},
+        FIELDS => {:type => ::Thrift::Types::SET, :name => 'fields', :element => {:type => ::Thrift::Types::STRING}}
+      }
 
-          ::Thrift::Struct.generate_accessors self
-        end
+      def struct_fields; FIELDS; end
 
-        class DeleteDocumentsByQueries_result
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          E = 1
+      def validate
+      end
 
-          FIELDS = {
-            E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => Blur::BlurException}
-          }
+      ::Thrift::Struct.generate_accessors self
+    end
 
-          def struct_fields; FIELDS; end
+    class Doc_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      E = 1
 
-          def validate
-          end
+      FIELDS = {
+        SUCCESS => {:type => ::Thrift::Types::LIST, :name => 'success', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::Document}},
+        E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => ::Blur::BlurException}
+      }
 
-          ::Thrift::Struct.generate_accessors self
-        end
+      def struct_fields; FIELDS; end
 
-        class DeleteDocuments_args
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          SESSION = 1
-          SHARDINDEX = 2
-          TERMS = 3
+      def validate
+      end
 
-          FIELDS = {
-            SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => Blur::Session},
-            SHARDINDEX => {:type => ::Thrift::Types::I32, :name => 'shardIndex'},
-            TERMS => {:type => ::Thrift::Types::LIST, :name => 'terms', :element => {:type => ::Thrift::Types::STRUCT, :class => Blur::Term}}
-          }
+      ::Thrift::Struct.generate_accessors self
+    end
 
-          def struct_fields; FIELDS; end
+    class CloseReadSession_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SESSION = 1
 
-          def validate
-          end
+      FIELDS = {
+        SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => ::Blur::Session}
+      }
 
-          ::Thrift::Struct.generate_accessors self
-        end
+      def struct_fields; FIELDS; end
 
-        class DeleteDocuments_result
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          E = 1
+      def validate
+      end
 
-          FIELDS = {
-            E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => Blur::BlurException}
-          }
+      ::Thrift::Struct.generate_accessors self
+    end
 
-          def struct_fields; FIELDS; end
+    class CloseReadSession_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      E = 1
 
-          def validate
-          end
+      FIELDS = {
+        E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => ::Blur::BlurException}
+      }
 
-          ::Thrift::Struct.generate_accessors self
-        end
+      def struct_fields; FIELDS; end
 
-        class UpdateDocuments_args
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          SESSION = 1
-          SHARDINDEX = 2
-          TERMS = 3
-          DOCUMENT = 4
+      def validate
+      end
 
-          FIELDS = {
-            SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => Blur::Session},
-            SHARDINDEX => {:type => ::Thrift::Types::I32, :name => 'shardIndex'},
-            TERMS => {:type => ::Thrift::Types::LIST, :name => 'terms', :element => {:type => ::Thrift::Types::STRUCT, :class => Blur::Term}},
-            DOCUMENT => {:type => ::Thrift::Types::LIST, :name => 'document', :element => {:type => ::Thrift::Types::STRUCT, :class => Blur::Document}}
-          }
+      ::Thrift::Struct.generate_accessors self
+    end
 
-          def struct_fields; FIELDS; end
+    class OpenWriteSession_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      TABLE = 1
 
-          def validate
-          end
+      FIELDS = {
+        TABLE => {:type => ::Thrift::Types::STRING, :name => 'table'}
+      }
 
-          ::Thrift::Struct.generate_accessors self
-        end
+      def struct_fields; FIELDS; end
 
-        class UpdateDocuments_result
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          E = 1
+      def validate
+      end
 
-          FIELDS = {
-            E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => Blur::BlurException}
-          }
+      ::Thrift::Struct.generate_accessors self
+    end
 
-          def struct_fields; FIELDS; end
+    class OpenWriteSession_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      E = 1
 
-          def validate
-          end
+      FIELDS = {
+        SUCCESS => {:type => ::Thrift::Types::STRUCT, :name => 'success', :class => ::Blur::Session},
+        E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => ::Blur::BlurException}
+      }
 
-          ::Thrift::Struct.generate_accessors self
-        end
+      def struct_fields; FIELDS; end
 
-        class Commit_args
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          SESSION = 1
+      def validate
+      end
 
-          FIELDS = {
-            SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => Blur::Session}
-          }
+      ::Thrift::Struct.generate_accessors self
+    end
 
-          def struct_fields; FIELDS; end
+    class AddDocuments_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SESSION = 1
+      SHARDINDEX = 2
+      DOCUMENT = 3
 
-          def validate
-          end
+      FIELDS = {
+        SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => ::Blur::Session},
+        SHARDINDEX => {:type => ::Thrift::Types::I32, :name => 'shardIndex'},
+        DOCUMENT => {:type => ::Thrift::Types::LIST, :name => 'document', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::Document}}
+      }
 
-          ::Thrift::Struct.generate_accessors self
-        end
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
 
-        class Commit_result
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          E = 1
+      ::Thrift::Struct.generate_accessors self
+    end
 
-          FIELDS = {
-            E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => Blur::BlurException}
-          }
+    class AddDocuments_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      E = 1
 
-          def struct_fields; FIELDS; end
+      FIELDS = {
+        E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => ::Blur::BlurException}
+      }
 
-          def validate
-          end
+      def struct_fields; FIELDS; end
 
-          ::Thrift::Struct.generate_accessors self
-        end
+      def validate
+      end
 
-        class Rollback_args
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          SESSION = 1
+      ::Thrift::Struct.generate_accessors self
+    end
 
-          FIELDS = {
-            SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => Blur::Session}
-          }
+    class DeleteDocumentsByQueries_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SESSION = 1
+      SHARDINDEX = 2
+      QUERIES = 3
 
-          def struct_fields; FIELDS; end
+      FIELDS = {
+        SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => ::Blur::Session},
+        SHARDINDEX => {:type => ::Thrift::Types::I32, :name => 'shardIndex'},
+        QUERIES => {:type => ::Thrift::Types::LIST, :name => 'queries', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::QueryArgs}}
+      }
 
-          def validate
-          end
+      def struct_fields; FIELDS; end
 
-          ::Thrift::Struct.generate_accessors self
-        end
+      def validate
+      end
 
-        class Rollback_result
-          include ::Thrift::Struct, ::Thrift::Struct_Union
-          E = 1
+      ::Thrift::Struct.generate_accessors self
+    end
 
-          FIELDS = {
-            E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => Blur::BlurException}
-          }
+    class DeleteDocumentsByQueries_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      E = 1
 
-          def struct_fields; FIELDS; end
+      FIELDS = {
+        E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => ::Blur::BlurException}
+      }
 
-          def validate
-          end
+      def struct_fields; FIELDS; end
 
-          ::Thrift::Struct.generate_accessors self
-        end
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class DeleteDocuments_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SESSION = 1
+      SHARDINDEX = 2
+      TERMS = 3
+
+      FIELDS = {
+        SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => ::Blur::Session},
+        SHARDINDEX => {:type => ::Thrift::Types::I32, :name => 'shardIndex'},
+        TERMS => {:type => ::Thrift::Types::LIST, :name => 'terms', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::Term}}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class DeleteDocuments_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      E = 1
+
+      FIELDS = {
+        E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => ::Blur::BlurException}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
 
+    class UpdateDocuments_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SESSION = 1
+      SHARDINDEX = 2
+      TERMS = 3
+      DOCUMENT = 4
+
+      FIELDS = {
+        SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => ::Blur::Session},
+        SHARDINDEX => {:type => ::Thrift::Types::I32, :name => 'shardIndex'},
+        TERMS => {:type => ::Thrift::Types::LIST, :name => 'terms', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::Term}},
+        DOCUMENT => {:type => ::Thrift::Types::LIST, :name => 'document', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::Document}}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class UpdateDocuments_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      E = 1
+
+      FIELDS = {
+        E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => ::Blur::BlurException}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class Commit_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SESSION = 1
+
+      FIELDS = {
+        SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => ::Blur::Session}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class Commit_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      E = 1
+
+      FIELDS = {
+        E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => ::Blur::BlurException}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class Rollback_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SESSION = 1
+
+      FIELDS = {
+        SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => ::Blur::Session}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class Rollback_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      E = 1
+
+      FIELDS = {
+        E => {:type => ::Thrift::Types::STRUCT, :name => 'e', :class => ::Blur::BlurException}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
       end
 
+      ::Thrift::Struct.generate_accessors self
     end
+
+  end
+
+end

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/1befa5f5/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/AlternateColumnDefinition.java
----------------------------------------------------------------------
diff --git a/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/AlternateColumnDefinition.java b/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/AlternateColumnDefinition.java
index 4818510..ae347fb 100644
--- a/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/AlternateColumnDefinition.java
+++ b/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/AlternateColumnDefinition.java
@@ -1,7 +1,8 @@
 /**
- * Autogenerated by Thrift Compiler (0.7.0)
+ * Autogenerated by Thrift Compiler (0.9.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
  */
 package org.apache.blur.thrift.generated;
 
@@ -24,6 +25,15 @@ package org.apache.blur.thrift.generated;
 
 
 
+import org.apache.thrift.scheme.IScheme;
+import org.apache.thrift.scheme.SchemeFactory;
+import org.apache.thrift.scheme.StandardScheme;
+
+import org.apache.thrift.scheme.TupleScheme;
+import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
+import org.apache.thrift.TException;
 import java.util.List;
 import java.util.ArrayList;
 import java.util.Map;
@@ -47,6 +57,12 @@ public class AlternateColumnDefinition implements org.apache.thrift.TBase<Altern
 
   private static final org.apache.thrift.protocol.TField ANALYZER_CLASS_NAME_FIELD_DESC = new org.apache.thrift.protocol.TField("analyzerClassName", org.apache.thrift.protocol.TType.STRING, (short)1);
 
+  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+  static {
+    schemes.put(StandardScheme.class, new AlternateColumnDefinitionStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new AlternateColumnDefinitionTupleSchemeFactory());
+  }
+
   /**
    * 
    */
@@ -114,7 +130,6 @@ public class AlternateColumnDefinition implements org.apache.thrift.TBase<Altern
   }
 
   // isset id assignments
-
   public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
   static {
     Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
@@ -273,44 +288,11 @@ public class AlternateColumnDefinition implements org.apache.thrift.TBase<Altern
   }
 
   public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
-    org.apache.thrift.protocol.TField field;
-    iprot.readStructBegin();
-    while (true)
-    {
-      field = iprot.readFieldBegin();
-      if (field.type == org.apache.thrift.protocol.TType.STOP) { 
-        break;
-      }
-      switch (field.id) {
-        case 1: // ANALYZER_CLASS_NAME
-          if (field.type == org.apache.thrift.protocol.TType.STRING) {
-            this.analyzerClassName = iprot.readString();
-          } else { 
-            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
-          }
-          break;
-        default:
-          org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
-      }
-      iprot.readFieldEnd();
-    }
-    iprot.readStructEnd();
-
-    // check for required fields of primitive type, which can't be checked in the validate method
-    validate();
+    schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
   }
 
   public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
-    validate();
-
-    oprot.writeStructBegin(STRUCT_DESC);
-    if (this.analyzerClassName != null) {
-      oprot.writeFieldBegin(ANALYZER_CLASS_NAME_FIELD_DESC);
-      oprot.writeString(this.analyzerClassName);
-      oprot.writeFieldEnd();
-    }
-    oprot.writeFieldStop();
-    oprot.writeStructEnd();
+    schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
   }
 
   @Override
@@ -331,6 +313,7 @@ public class AlternateColumnDefinition implements org.apache.thrift.TBase<Altern
 
   public void validate() throws org.apache.thrift.TException {
     // check for required fields
+    // check for sub-struct validity
   }
 
   private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
@@ -349,5 +332,89 @@ public class AlternateColumnDefinition implements org.apache.thrift.TBase<Altern
     }
   }
 
+  private static class AlternateColumnDefinitionStandardSchemeFactory implements SchemeFactory {
+    public AlternateColumnDefinitionStandardScheme getScheme() {
+      return new AlternateColumnDefinitionStandardScheme();
+    }
+  }
+
+  private static class AlternateColumnDefinitionStandardScheme extends StandardScheme<AlternateColumnDefinition> {
+
+    public void read(org.apache.thrift.protocol.TProtocol iprot, AlternateColumnDefinition struct) throws org.apache.thrift.TException {
+      org.apache.thrift.protocol.TField schemeField;
+      iprot.readStructBegin();
+      while (true)
+      {
+        schemeField = iprot.readFieldBegin();
+        if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
+          break;
+        }
+        switch (schemeField.id) {
+          case 1: // ANALYZER_CLASS_NAME
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.analyzerClassName = iprot.readString();
+              struct.setAnalyzerClassNameIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          default:
+            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+        }
+        iprot.readFieldEnd();
+      }
+      iprot.readStructEnd();
+
+      // check for required fields of primitive type, which can't be checked in the validate method
+      struct.validate();
+    }
+
+    public void write(org.apache.thrift.protocol.TProtocol oprot, AlternateColumnDefinition struct) throws org.apache.thrift.TException {
+      struct.validate();
+
+      oprot.writeStructBegin(STRUCT_DESC);
+      if (struct.analyzerClassName != null) {
+        oprot.writeFieldBegin(ANALYZER_CLASS_NAME_FIELD_DESC);
+        oprot.writeString(struct.analyzerClassName);
+        oprot.writeFieldEnd();
+      }
+      oprot.writeFieldStop();
+      oprot.writeStructEnd();
+    }
+
+  }
+
+  private static class AlternateColumnDefinitionTupleSchemeFactory implements SchemeFactory {
+    public AlternateColumnDefinitionTupleScheme getScheme() {
+      return new AlternateColumnDefinitionTupleScheme();
+    }
+  }
+
+  private static class AlternateColumnDefinitionTupleScheme extends TupleScheme<AlternateColumnDefinition> {
+
+    @Override
+    public void write(org.apache.thrift.protocol.TProtocol prot, AlternateColumnDefinition struct) throws org.apache.thrift.TException {
+      TTupleProtocol oprot = (TTupleProtocol) prot;
+      BitSet optionals = new BitSet();
+      if (struct.isSetAnalyzerClassName()) {
+        optionals.set(0);
+      }
+      oprot.writeBitSet(optionals, 1);
+      if (struct.isSetAnalyzerClassName()) {
+        oprot.writeString(struct.analyzerClassName);
+      }
+    }
+
+    @Override
+    public void read(org.apache.thrift.protocol.TProtocol prot, AlternateColumnDefinition struct) throws org.apache.thrift.TException {
+      TTupleProtocol iprot = (TTupleProtocol) prot;
+      BitSet incoming = iprot.readBitSet(1);
+      if (incoming.get(0)) {
+        struct.analyzerClassName = iprot.readString();
+        struct.setAnalyzerClassNameIsSet(true);
+      }
+    }
+  }
+
 }
 

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/1befa5f5/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/AnalyzerDefinition.java
----------------------------------------------------------------------
diff --git a/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/AnalyzerDefinition.java b/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/AnalyzerDefinition.java
index 4d453f8..9a83d30 100644
--- a/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/AnalyzerDefinition.java
+++ b/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/AnalyzerDefinition.java
@@ -1,7 +1,8 @@
 /**
- * Autogenerated by Thrift Compiler (0.7.0)
+ * Autogenerated by Thrift Compiler (0.9.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
  */
 package org.apache.blur.thrift.generated;
 
@@ -24,6 +25,15 @@ package org.apache.blur.thrift.generated;
 
 
 
+import org.apache.thrift.scheme.IScheme;
+import org.apache.thrift.scheme.SchemeFactory;
+import org.apache.thrift.scheme.StandardScheme;
+
+import org.apache.thrift.scheme.TupleScheme;
+import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
+import org.apache.thrift.TException;
 import java.util.List;
 import java.util.ArrayList;
 import java.util.Map;
@@ -49,6 +59,12 @@ public class AnalyzerDefinition implements org.apache.thrift.TBase<AnalyzerDefin
   private static final org.apache.thrift.protocol.TField FULL_TEXT_ANALYZER_CLASS_NAME_FIELD_DESC = new org.apache.thrift.protocol.TField("fullTextAnalyzerClassName", org.apache.thrift.protocol.TType.STRING, (short)2);
   private static final org.apache.thrift.protocol.TField COLUMN_FAMILY_DEFINITIONS_FIELD_DESC = new org.apache.thrift.protocol.TField("columnFamilyDefinitions", org.apache.thrift.protocol.TType.MAP, (short)3);
 
+  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+  static {
+    schemes.put(StandardScheme.class, new AnalyzerDefinitionStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new AnalyzerDefinitionTupleSchemeFactory());
+  }
+
   /**
    * 
    */
@@ -136,7 +152,6 @@ public class AnalyzerDefinition implements org.apache.thrift.TBase<AnalyzerDefin
   }
 
   // isset id assignments
-
   public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
   static {
     Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
@@ -463,90 +478,11 @@ public class AnalyzerDefinition implements org.apache.thrift.TBase<AnalyzerDefin
   }
 
   public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
-    org.apache.thrift.protocol.TField field;
-    iprot.readStructBegin();
-    while (true)
-    {
-      field = iprot.readFieldBegin();
-      if (field.type == org.apache.thrift.protocol.TType.STOP) { 
-        break;
-      }
-      switch (field.id) {
-        case 1: // DEFAULT_DEFINITION
-          if (field.type == org.apache.thrift.protocol.TType.STRUCT) {
-            this.defaultDefinition = new ColumnDefinition();
-            this.defaultDefinition.read(iprot);
-          } else { 
-            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
-          }
-          break;
-        case 2: // FULL_TEXT_ANALYZER_CLASS_NAME
-          if (field.type == org.apache.thrift.protocol.TType.STRING) {
-            this.fullTextAnalyzerClassName = iprot.readString();
-          } else { 
-            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
-          }
-          break;
-        case 3: // COLUMN_FAMILY_DEFINITIONS
-          if (field.type == org.apache.thrift.protocol.TType.MAP) {
-            {
-              org.apache.thrift.protocol.TMap _map70 = iprot.readMapBegin();
-              this.columnFamilyDefinitions = new HashMap<String,ColumnFamilyDefinition>(2*_map70.size);
-              for (int _i71 = 0; _i71 < _map70.size; ++_i71)
-              {
-                String _key72; // required
-                ColumnFamilyDefinition _val73; // required
-                _key72 = iprot.readString();
-                _val73 = new ColumnFamilyDefinition();
-                _val73.read(iprot);
-                this.columnFamilyDefinitions.put(_key72, _val73);
-              }
-              iprot.readMapEnd();
-            }
-          } else { 
-            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
-          }
-          break;
-        default:
-          org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
-      }
-      iprot.readFieldEnd();
-    }
-    iprot.readStructEnd();
-
-    // check for required fields of primitive type, which can't be checked in the validate method
-    validate();
+    schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
   }
 
   public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
-    validate();
-
-    oprot.writeStructBegin(STRUCT_DESC);
-    if (this.defaultDefinition != null) {
-      oprot.writeFieldBegin(DEFAULT_DEFINITION_FIELD_DESC);
-      this.defaultDefinition.write(oprot);
-      oprot.writeFieldEnd();
-    }
-    if (this.fullTextAnalyzerClassName != null) {
-      oprot.writeFieldBegin(FULL_TEXT_ANALYZER_CLASS_NAME_FIELD_DESC);
-      oprot.writeString(this.fullTextAnalyzerClassName);
-      oprot.writeFieldEnd();
-    }
-    if (this.columnFamilyDefinitions != null) {
-      oprot.writeFieldBegin(COLUMN_FAMILY_DEFINITIONS_FIELD_DESC);
-      {
-        oprot.writeMapBegin(new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRUCT, this.columnFamilyDefinitions.size()));
-        for (Map.Entry<String, ColumnFamilyDefinition> _iter74 : this.columnFamilyDefinitions.entrySet())
-        {
-          oprot.writeString(_iter74.getKey());
-          _iter74.getValue().write(oprot);
-        }
-        oprot.writeMapEnd();
-      }
-      oprot.writeFieldEnd();
-    }
-    oprot.writeFieldStop();
-    oprot.writeStructEnd();
+    schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
   }
 
   @Override
@@ -583,6 +519,10 @@ public class AnalyzerDefinition implements org.apache.thrift.TBase<AnalyzerDefin
 
   public void validate() throws org.apache.thrift.TException {
     // check for required fields
+    // check for sub-struct validity
+    if (defaultDefinition != null) {
+      defaultDefinition.validate();
+    }
   }
 
   private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
@@ -601,5 +541,177 @@ public class AnalyzerDefinition implements org.apache.thrift.TBase<AnalyzerDefin
     }
   }
 
+  private static class AnalyzerDefinitionStandardSchemeFactory implements SchemeFactory {
+    public AnalyzerDefinitionStandardScheme getScheme() {
+      return new AnalyzerDefinitionStandardScheme();
+    }
+  }
+
+  private static class AnalyzerDefinitionStandardScheme extends StandardScheme<AnalyzerDefinition> {
+
+    public void read(org.apache.thrift.protocol.TProtocol iprot, AnalyzerDefinition struct) throws org.apache.thrift.TException {
+      org.apache.thrift.protocol.TField schemeField;
+      iprot.readStructBegin();
+      while (true)
+      {
+        schemeField = iprot.readFieldBegin();
+        if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
+          break;
+        }
+        switch (schemeField.id) {
+          case 1: // DEFAULT_DEFINITION
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+              struct.defaultDefinition = new ColumnDefinition();
+              struct.defaultDefinition.read(iprot);
+              struct.setDefaultDefinitionIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 2: // FULL_TEXT_ANALYZER_CLASS_NAME
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.fullTextAnalyzerClassName = iprot.readString();
+              struct.setFullTextAnalyzerClassNameIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 3: // COLUMN_FAMILY_DEFINITIONS
+            if (schemeField.type == org.apache.thrift.protocol.TType.MAP) {
+              {
+                org.apache.thrift.protocol.TMap _map140 = iprot.readMapBegin();
+                struct.columnFamilyDefinitions = new HashMap<String,ColumnFamilyDefinition>(2*_map140.size);
+                for (int _i141 = 0; _i141 < _map140.size; ++_i141)
+                {
+                  String _key142; // required
+                  ColumnFamilyDefinition _val143; // optional
+                  _key142 = iprot.readString();
+                  _val143 = new ColumnFamilyDefinition();
+                  _val143.read(iprot);
+                  struct.columnFamilyDefinitions.put(_key142, _val143);
+                }
+                iprot.readMapEnd();
+              }
+              struct.setColumnFamilyDefinitionsIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          default:
+            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+        }
+        iprot.readFieldEnd();
+      }
+      iprot.readStructEnd();
+
+      // check for required fields of primitive type, which can't be checked in the validate method
+      struct.validate();
+    }
+
+    public void write(org.apache.thrift.protocol.TProtocol oprot, AnalyzerDefinition struct) throws org.apache.thrift.TException {
+      struct.validate();
+
+      oprot.writeStructBegin(STRUCT_DESC);
+      if (struct.defaultDefinition != null) {
+        oprot.writeFieldBegin(DEFAULT_DEFINITION_FIELD_DESC);
+        struct.defaultDefinition.write(oprot);
+        oprot.writeFieldEnd();
+      }
+      if (struct.fullTextAnalyzerClassName != null) {
+        oprot.writeFieldBegin(FULL_TEXT_ANALYZER_CLASS_NAME_FIELD_DESC);
+        oprot.writeString(struct.fullTextAnalyzerClassName);
+        oprot.writeFieldEnd();
+      }
+      if (struct.columnFamilyDefinitions != null) {
+        oprot.writeFieldBegin(COLUMN_FAMILY_DEFINITIONS_FIELD_DESC);
+        {
+          oprot.writeMapBegin(new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRUCT, struct.columnFamilyDefinitions.size()));
+          for (Map.Entry<String, ColumnFamilyDefinition> _iter144 : struct.columnFamilyDefinitions.entrySet())
+          {
+            oprot.writeString(_iter144.getKey());
+            _iter144.getValue().write(oprot);
+          }
+          oprot.writeMapEnd();
+        }
+        oprot.writeFieldEnd();
+      }
+      oprot.writeFieldStop();
+      oprot.writeStructEnd();
+    }
+
+  }
+
+  private static class AnalyzerDefinitionTupleSchemeFactory implements SchemeFactory {
+    public AnalyzerDefinitionTupleScheme getScheme() {
+      return new AnalyzerDefinitionTupleScheme();
+    }
+  }
+
+  private static class AnalyzerDefinitionTupleScheme extends TupleScheme<AnalyzerDefinition> {
+
+    @Override
+    public void write(org.apache.thrift.protocol.TProtocol prot, AnalyzerDefinition struct) throws org.apache.thrift.TException {
+      TTupleProtocol oprot = (TTupleProtocol) prot;
+      BitSet optionals = new BitSet();
+      if (struct.isSetDefaultDefinition()) {
+        optionals.set(0);
+      }
+      if (struct.isSetFullTextAnalyzerClassName()) {
+        optionals.set(1);
+      }
+      if (struct.isSetColumnFamilyDefinitions()) {
+        optionals.set(2);
+      }
+      oprot.writeBitSet(optionals, 3);
+      if (struct.isSetDefaultDefinition()) {
+        struct.defaultDefinition.write(oprot);
+      }
+      if (struct.isSetFullTextAnalyzerClassName()) {
+        oprot.writeString(struct.fullTextAnalyzerClassName);
+      }
+      if (struct.isSetColumnFamilyDefinitions()) {
+        {
+          oprot.writeI32(struct.columnFamilyDefinitions.size());
+          for (Map.Entry<String, ColumnFamilyDefinition> _iter145 : struct.columnFamilyDefinitions.entrySet())
+          {
+            oprot.writeString(_iter145.getKey());
+            _iter145.getValue().write(oprot);
+          }
+        }
+      }
+    }
+
+    @Override
+    public void read(org.apache.thrift.protocol.TProtocol prot, AnalyzerDefinition struct) throws org.apache.thrift.TException {
+      TTupleProtocol iprot = (TTupleProtocol) prot;
+      BitSet incoming = iprot.readBitSet(3);
+      if (incoming.get(0)) {
+        struct.defaultDefinition = new ColumnDefinition();
+        struct.defaultDefinition.read(iprot);
+        struct.setDefaultDefinitionIsSet(true);
+      }
+      if (incoming.get(1)) {
+        struct.fullTextAnalyzerClassName = iprot.readString();
+        struct.setFullTextAnalyzerClassNameIsSet(true);
+      }
+      if (incoming.get(2)) {
+        {
+          org.apache.thrift.protocol.TMap _map146 = new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+          struct.columnFamilyDefinitions = new HashMap<String,ColumnFamilyDefinition>(2*_map146.size);
+          for (int _i147 = 0; _i147 < _map146.size; ++_i147)
+          {
+            String _key148; // required
+            ColumnFamilyDefinition _val149; // optional
+            _key148 = iprot.readString();
+            _val149 = new ColumnFamilyDefinition();
+            _val149.read(iprot);
+            struct.columnFamilyDefinitions.put(_key148, _val149);
+          }
+        }
+        struct.setColumnFamilyDefinitionsIsSet(true);
+      }
+    }
+  }
+
 }
 

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/1befa5f5/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/Attribute.java
----------------------------------------------------------------------
diff --git a/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/Attribute.java b/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/Attribute.java
index d0ef013..715e283 100644
--- a/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/Attribute.java
+++ b/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/Attribute.java
@@ -1,7 +1,8 @@
 /**
- * Autogenerated by Thrift Compiler (0.7.0)
+ * Autogenerated by Thrift Compiler (0.9.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
  */
 package org.apache.blur.thrift.generated;
 
@@ -24,6 +25,15 @@ package org.apache.blur.thrift.generated;
 
 
 
+import org.apache.thrift.scheme.IScheme;
+import org.apache.thrift.scheme.SchemeFactory;
+import org.apache.thrift.scheme.StandardScheme;
+
+import org.apache.thrift.scheme.TupleScheme;
+import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
+import org.apache.thrift.TException;
 import java.util.List;
 import java.util.ArrayList;
 import java.util.Map;
@@ -46,6 +56,12 @@ public class Attribute implements org.apache.thrift.TBase<Attribute, Attribute._
   private static final org.apache.thrift.protocol.TField VALUE_FIELD_DESC = new org.apache.thrift.protocol.TField("value", org.apache.thrift.protocol.TType.STRING, (short)2);
   private static final org.apache.thrift.protocol.TField TYPE_FIELD_DESC = new org.apache.thrift.protocol.TField("type", org.apache.thrift.protocol.TType.I32, (short)3);
 
+  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+  static {
+    schemes.put(StandardScheme.class, new AttributeStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new AttributeTupleSchemeFactory());
+  }
+
   public String name; // required
   public ByteBuffer value; // required
   /**
@@ -123,7 +139,6 @@ public class Attribute implements org.apache.thrift.TBase<Attribute, Attribute._
   }
 
   // isset id assignments
-
   public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
   static {
     Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
@@ -423,68 +438,11 @@ public class Attribute implements org.apache.thrift.TBase<Attribute, Attribute._
   }
 
   public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
-    org.apache.thrift.protocol.TField field;
-    iprot.readStructBegin();
-    while (true)
-    {
-      field = iprot.readFieldBegin();
-      if (field.type == org.apache.thrift.protocol.TType.STOP) { 
-        break;
-      }
-      switch (field.id) {
-        case 1: // NAME
-          if (field.type == org.apache.thrift.protocol.TType.STRING) {
-            this.name = iprot.readString();
-          } else { 
-            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
-          }
-          break;
-        case 2: // VALUE
-          if (field.type == org.apache.thrift.protocol.TType.STRING) {
-            this.value = iprot.readBinary();
-          } else { 
-            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
-          }
-          break;
-        case 3: // TYPE
-          if (field.type == org.apache.thrift.protocol.TType.I32) {
-            this.type = TYPE.findByValue(iprot.readI32());
-          } else { 
-            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
-          }
-          break;
-        default:
-          org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
-      }
-      iprot.readFieldEnd();
-    }
-    iprot.readStructEnd();
-
-    // check for required fields of primitive type, which can't be checked in the validate method
-    validate();
+    schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
   }
 
   public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
-    validate();
-
-    oprot.writeStructBegin(STRUCT_DESC);
-    if (this.name != null) {
-      oprot.writeFieldBegin(NAME_FIELD_DESC);
-      oprot.writeString(this.name);
-      oprot.writeFieldEnd();
-    }
-    if (this.value != null) {
-      oprot.writeFieldBegin(VALUE_FIELD_DESC);
-      oprot.writeBinary(this.value);
-      oprot.writeFieldEnd();
-    }
-    if (this.type != null) {
-      oprot.writeFieldBegin(TYPE_FIELD_DESC);
-      oprot.writeI32(this.type.getValue());
-      oprot.writeFieldEnd();
-    }
-    oprot.writeFieldStop();
-    oprot.writeStructEnd();
+    schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
   }
 
   @Override
@@ -521,6 +479,7 @@ public class Attribute implements org.apache.thrift.TBase<Attribute, Attribute._
 
   public void validate() throws org.apache.thrift.TException {
     // check for required fields
+    // check for sub-struct validity
   }
 
   private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
@@ -539,5 +498,135 @@ public class Attribute implements org.apache.thrift.TBase<Attribute, Attribute._
     }
   }
 
+  private static class AttributeStandardSchemeFactory implements SchemeFactory {
+    public AttributeStandardScheme getScheme() {
+      return new AttributeStandardScheme();
+    }
+  }
+
+  private static class AttributeStandardScheme extends StandardScheme<Attribute> {
+
+    public void read(org.apache.thrift.protocol.TProtocol iprot, Attribute struct) throws org.apache.thrift.TException {
+      org.apache.thrift.protocol.TField schemeField;
+      iprot.readStructBegin();
+      while (true)
+      {
+        schemeField = iprot.readFieldBegin();
+        if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
+          break;
+        }
+        switch (schemeField.id) {
+          case 1: // NAME
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.name = iprot.readString();
+              struct.setNameIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 2: // VALUE
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.value = iprot.readBinary();
+              struct.setValueIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 3: // TYPE
+            if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+              struct.type = TYPE.findByValue(iprot.readI32());
+              struct.setTypeIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          default:
+            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+        }
+        iprot.readFieldEnd();
+      }
+      iprot.readStructEnd();
+
+      // check for required fields of primitive type, which can't be checked in the validate method
+      struct.validate();
+    }
+
+    public void write(org.apache.thrift.protocol.TProtocol oprot, Attribute struct) throws org.apache.thrift.TException {
+      struct.validate();
+
+      oprot.writeStructBegin(STRUCT_DESC);
+      if (struct.name != null) {
+        oprot.writeFieldBegin(NAME_FIELD_DESC);
+        oprot.writeString(struct.name);
+        oprot.writeFieldEnd();
+      }
+      if (struct.value != null) {
+        oprot.writeFieldBegin(VALUE_FIELD_DESC);
+        oprot.writeBinary(struct.value);
+        oprot.writeFieldEnd();
+      }
+      if (struct.type != null) {
+        oprot.writeFieldBegin(TYPE_FIELD_DESC);
+        oprot.writeI32(struct.type.getValue());
+        oprot.writeFieldEnd();
+      }
+      oprot.writeFieldStop();
+      oprot.writeStructEnd();
+    }
+
+  }
+
+  private static class AttributeTupleSchemeFactory implements SchemeFactory {
+    public AttributeTupleScheme getScheme() {
+      return new AttributeTupleScheme();
+    }
+  }
+
+  private static class AttributeTupleScheme extends TupleScheme<Attribute> {
+
+    @Override
+    public void write(org.apache.thrift.protocol.TProtocol prot, Attribute struct) throws org.apache.thrift.TException {
+      TTupleProtocol oprot = (TTupleProtocol) prot;
+      BitSet optionals = new BitSet();
+      if (struct.isSetName()) {
+        optionals.set(0);
+      }
+      if (struct.isSetValue()) {
+        optionals.set(1);
+      }
+      if (struct.isSetType()) {
+        optionals.set(2);
+      }
+      oprot.writeBitSet(optionals, 3);
+      if (struct.isSetName()) {
+        oprot.writeString(struct.name);
+      }
+      if (struct.isSetValue()) {
+        oprot.writeBinary(struct.value);
+      }
+      if (struct.isSetType()) {
+        oprot.writeI32(struct.type.getValue());
+      }
+    }
+
+    @Override
+    public void read(org.apache.thrift.protocol.TProtocol prot, Attribute struct) throws org.apache.thrift.TException {
+      TTupleProtocol iprot = (TTupleProtocol) prot;
+      BitSet incoming = iprot.readBitSet(3);
+      if (incoming.get(0)) {
+        struct.name = iprot.readString();
+        struct.setNameIsSet(true);
+      }
+      if (incoming.get(1)) {
+        struct.value = iprot.readBinary();
+        struct.setValueIsSet(true);
+      }
+      if (incoming.get(2)) {
+        struct.type = TYPE.findByValue(iprot.readI32());
+        struct.setTypeIsSet(true);
+      }
+    }
+  }
+
 }
 


Mime
View raw message