incubator-blur-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From amccu...@apache.org
Subject [2/29] Added the distribution project to allow for automatically creating build artifacts during a maven build.
Date Fri, 04 Jan 2013 22:42:52 GMT
http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/70b69ecb/src/distribution/src/main/scripts/interface/gen-rb/blur.rb
----------------------------------------------------------------------
diff --git a/src/distribution/src/main/scripts/interface/gen-rb/blur.rb b/src/distribution/src/main/scripts/interface/gen-rb/blur.rb
new file mode 100644
index 0000000..f0a38e6
--- /dev/null
+++ b/src/distribution/src/main/scripts/interface/gen-rb/blur.rb
@@ -0,0 +1,1490 @@
+#
+# Autogenerated by Thrift Compiler (0.9.0)
+#
+# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+#
+
+require 'thrift'
+require 'blur_types'
+
+module Blur
+  module Blur
+    class 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 addDocuments(options, documents)
+        send_addDocuments(options, documents)
+        return recv_addDocuments()
+      end
+
+      def send_addDocuments(options, documents)
+        send_message('addDocuments', AddDocuments_args, :options => options, :documents => documents)
+      end
+
+      def recv_addDocuments()
+        result = receive_message(AddDocuments_result)
+        return result.success unless result.success.nil?
+        raise result.e unless result.e.nil?
+        raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'addDocuments failed: unknown result')
+      end
+
+      def deleteDocumentsByQueries(options, queries)
+        send_deleteDocumentsByQueries(options, queries)
+        return recv_deleteDocumentsByQueries()
+      end
+
+      def send_deleteDocumentsByQueries(options, queries)
+        send_message('deleteDocumentsByQueries', DeleteDocumentsByQueries_args, :options => options, :queries => queries)
+      end
+
+      def recv_deleteDocumentsByQueries()
+        result = receive_message(DeleteDocumentsByQueries_result)
+        return result.success unless result.success.nil?
+        raise result.e unless result.e.nil?
+        raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'deleteDocumentsByQueries failed: unknown result')
+      end
+
+      def deleteDocuments(options, terms)
+        send_deleteDocuments(options, terms)
+        return recv_deleteDocuments()
+      end
+
+      def send_deleteDocuments(options, terms)
+        send_message('deleteDocuments', DeleteDocuments_args, :options => options, :terms => terms)
+      end
+
+      def recv_deleteDocuments()
+        result = receive_message(DeleteDocuments_result)
+        return result.success unless result.success.nil?
+        raise result.e unless result.e.nil?
+        raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'deleteDocuments failed: unknown result')
+      end
+
+      def updateDocuments(options, updatePackages)
+        send_updateDocuments(options, updatePackages)
+        return recv_updateDocuments()
+      end
+
+      def send_updateDocuments(options, updatePackages)
+        send_message('updateDocuments', UpdateDocuments_args, :options => options, :updatePackages => updatePackages)
+      end
+
+      def recv_updateDocuments()
+        result = receive_message(UpdateDocuments_result)
+        return result.success unless result.success.nil?
+        raise result.e unless result.e.nil?
+        raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'updateDocuments failed: unknown result')
+      end
+
+      def blockUntilGenerationIsVisible(generations, forceRefresh)
+        send_blockUntilGenerationIsVisible(generations, forceRefresh)
+        recv_blockUntilGenerationIsVisible()
+      end
+
+      def send_blockUntilGenerationIsVisible(generations, forceRefresh)
+        send_message('blockUntilGenerationIsVisible', BlockUntilGenerationIsVisible_args, :generations => generations, :forceRefresh => forceRefresh)
+      end
+
+      def recv_blockUntilGenerationIsVisible()
+        result = receive_message(BlockUntilGenerationIsVisible_result)
+        raise result.e unless result.e.nil?
+        return
+      end
+
+      def serverList()
+        send_serverList()
+        return recv_serverList()
+      end
+
+      def send_serverList()
+        send_message('serverList', ServerList_args)
+      end
+
+      def recv_serverList()
+        result = receive_message(ServerList_result)
+        return result.success unless result.success.nil?
+        raise result.ex unless result.ex.nil?
+        raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'serverList failed: unknown result')
+      end
+
+      def serverLayout(table, server)
+        send_serverLayout(table, server)
+        return recv_serverLayout()
+      end
+
+      def send_serverLayout(table, server)
+        send_message('serverLayout', ServerLayout_args, :table => table, :server => server)
+      end
+
+      def recv_serverLayout()
+        result = receive_message(ServerLayout_result)
+        return result.success unless result.success.nil?
+        raise result.ex unless result.ex.nil?
+        raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'serverLayout failed: unknown result')
+      end
+
+      def shardLayout(table)
+        send_shardLayout(table)
+        return recv_shardLayout()
+      end
+
+      def send_shardLayout(table)
+        send_message('shardLayout', ShardLayout_args, :table => table)
+      end
+
+      def recv_shardLayout()
+        result = receive_message(ShardLayout_result)
+        return result.success unless result.success.nil?
+        raise result.ex unless result.ex.nil?
+        raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'shardLayout failed: unknown result')
+      end
+
+      def tableList()
+        send_tableList()
+        return recv_tableList()
+      end
+
+      def send_tableList()
+        send_message('tableList', TableList_args)
+      end
+
+      def recv_tableList()
+        result = receive_message(TableList_result)
+        return result.success unless result.success.nil?
+        raise result.ex unless result.ex.nil?
+        raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'tableList failed: unknown result')
+      end
+
+      def isInSafeMode()
+        send_isInSafeMode()
+        return recv_isInSafeMode()
+      end
+
+      def send_isInSafeMode()
+        send_message('isInSafeMode', IsInSafeMode_args)
+      end
+
+      def recv_isInSafeMode()
+        result = receive_message(IsInSafeMode_result)
+        return result.success unless result.success.nil?
+        raise result.ex unless result.ex.nil?
+        raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'isInSafeMode failed: unknown result')
+      end
+
+      def createTable(tableDescriptor)
+        send_createTable(tableDescriptor)
+        recv_createTable()
+      end
+
+      def send_createTable(tableDescriptor)
+        send_message('createTable', CreateTable_args, :tableDescriptor => tableDescriptor)
+      end
+
+      def recv_createTable()
+        result = receive_message(CreateTable_result)
+        raise result.ex unless result.ex.nil?
+        return
+      end
+
+      def enableTable(table)
+        send_enableTable(table)
+        recv_enableTable()
+      end
+
+      def send_enableTable(table)
+        send_message('enableTable', EnableTable_args, :table => table)
+      end
+
+      def recv_enableTable()
+        result = receive_message(EnableTable_result)
+        raise result.ex unless result.ex.nil?
+        return
+      end
+
+      def disableTable(table)
+        send_disableTable(table)
+        recv_disableTable()
+      end
+
+      def send_disableTable(table)
+        send_message('disableTable', DisableTable_args, :table => table)
+      end
+
+      def recv_disableTable()
+        result = receive_message(DisableTable_result)
+        raise result.ex unless result.ex.nil?
+        return
+      end
+
+      def removeTable(table, deleteIndexFiles)
+        send_removeTable(table, deleteIndexFiles)
+        recv_removeTable()
+      end
+
+      def send_removeTable(table, deleteIndexFiles)
+        send_message('removeTable', RemoveTable_args, :table => table, :deleteIndexFiles => deleteIndexFiles)
+      end
+
+      def recv_removeTable()
+        result = receive_message(RemoveTable_result)
+        raise result.ex unless result.ex.nil?
+        return
+      end
+
+      def describe(table)
+        send_describe(table)
+        return recv_describe()
+      end
+
+      def send_describe(table)
+        send_message('describe', Describe_args, :table => table)
+      end
+
+      def recv_describe()
+        result = receive_message(Describe_result)
+        return result.success unless result.success.nil?
+        raise result.ex unless result.ex.nil?
+        raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'describe failed: unknown result')
+      end
+
+      def cancelQuery(session, id)
+        send_cancelQuery(session, id)
+        recv_cancelQuery()
+      end
+
+      def send_cancelQuery(session, id)
+        send_message('cancelQuery', CancelQuery_args, :session => session, :id => id)
+      end
+
+      def recv_cancelQuery()
+        result = receive_message(CancelQuery_result)
+        raise result.ex unless result.ex.nil?
+        return
+      end
+
+      def queryStatusIdList(session)
+        send_queryStatusIdList(session)
+        return recv_queryStatusIdList()
+      end
+
+      def send_queryStatusIdList(session)
+        send_message('queryStatusIdList', QueryStatusIdList_args, :session => session)
+      end
+
+      def recv_queryStatusIdList()
+        result = receive_message(QueryStatusIdList_result)
+        return result.success unless result.success.nil?
+        raise result.ex unless result.ex.nil?
+        raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'queryStatusIdList failed: unknown result')
+      end
+
+      def queryStatus(session, id)
+        send_queryStatus(session, id)
+        return recv_queryStatus()
+      end
+
+      def send_queryStatus(session, id)
+        send_message('queryStatus', QueryStatus_args, :session => session, :id => id)
+      end
+
+      def recv_queryStatus()
+        result = receive_message(QueryStatus_result)
+        return result.success unless result.success.nil?
+        raise result.ex unless result.ex.nil?
+        raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'queryStatus failed: unknown result')
+      end
+
+      def schema(table)
+        send_schema(table)
+        return recv_schema()
+      end
+
+      def send_schema(table)
+        send_message('schema', Schema_args, :table => table)
+      end
+
+      def recv_schema()
+        result = receive_message(Schema_result)
+        return result.success unless result.success.nil?
+        raise result.ex unless result.ex.nil?
+        raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'schema failed: unknown result')
+      end
+
+      def tableStats(table)
+        send_tableStats(table)
+        return recv_tableStats()
+      end
+
+      def send_tableStats(table)
+        send_message('tableStats', TableStats_args, :table => table)
+      end
+
+      def recv_tableStats()
+        result = receive_message(TableStats_result)
+        return result.success unless result.success.nil?
+        raise result.ex unless result.ex.nil?
+        raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'tableStats failed: unknown result')
+      end
+
+    end
+
+    class 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_addDocuments(seqid, iprot, oprot)
+        args = read_args(iprot, AddDocuments_args)
+        result = AddDocuments_result.new()
+        begin
+          result.success = @handler.addDocuments(args.options, args.documents)
+        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
+          result.success = @handler.deleteDocumentsByQueries(args.options, 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
+          result.success = @handler.deleteDocuments(args.options, 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
+          result.success = @handler.updateDocuments(args.options, args.updatePackages)
+        rescue ::Blur::BlurException => e
+          result.e = e
+        end
+        write_result(result, oprot, 'updateDocuments', seqid)
+      end
+
+      def process_blockUntilGenerationIsVisible(seqid, iprot, oprot)
+        args = read_args(iprot, BlockUntilGenerationIsVisible_args)
+        result = BlockUntilGenerationIsVisible_result.new()
+        begin
+          @handler.blockUntilGenerationIsVisible(args.generations, args.forceRefresh)
+        rescue ::Blur::BlurException => e
+          result.e = e
+        end
+        write_result(result, oprot, 'blockUntilGenerationIsVisible', seqid)
+      end
+
+      def process_serverList(seqid, iprot, oprot)
+        args = read_args(iprot, ServerList_args)
+        result = ServerList_result.new()
+        begin
+          result.success = @handler.serverList()
+        rescue ::Blur::BlurException => ex
+          result.ex = ex
+        end
+        write_result(result, oprot, 'serverList', seqid)
+      end
+
+      def process_serverLayout(seqid, iprot, oprot)
+        args = read_args(iprot, ServerLayout_args)
+        result = ServerLayout_result.new()
+        begin
+          result.success = @handler.serverLayout(args.table, args.server)
+        rescue ::Blur::BlurException => ex
+          result.ex = ex
+        end
+        write_result(result, oprot, 'serverLayout', seqid)
+      end
+
+      def process_shardLayout(seqid, iprot, oprot)
+        args = read_args(iprot, ShardLayout_args)
+        result = ShardLayout_result.new()
+        begin
+          result.success = @handler.shardLayout(args.table)
+        rescue ::Blur::BlurException => ex
+          result.ex = ex
+        end
+        write_result(result, oprot, 'shardLayout', seqid)
+      end
+
+      def process_tableList(seqid, iprot, oprot)
+        args = read_args(iprot, TableList_args)
+        result = TableList_result.new()
+        begin
+          result.success = @handler.tableList()
+        rescue ::Blur::BlurException => ex
+          result.ex = ex
+        end
+        write_result(result, oprot, 'tableList', seqid)
+      end
+
+      def process_isInSafeMode(seqid, iprot, oprot)
+        args = read_args(iprot, IsInSafeMode_args)
+        result = IsInSafeMode_result.new()
+        begin
+          result.success = @handler.isInSafeMode()
+        rescue ::Blur::BlurException => ex
+          result.ex = ex
+        end
+        write_result(result, oprot, 'isInSafeMode', seqid)
+      end
+
+      def process_createTable(seqid, iprot, oprot)
+        args = read_args(iprot, CreateTable_args)
+        result = CreateTable_result.new()
+        begin
+          @handler.createTable(args.tableDescriptor)
+        rescue ::Blur::BlurException => ex
+          result.ex = ex
+        end
+        write_result(result, oprot, 'createTable', seqid)
+      end
+
+      def process_enableTable(seqid, iprot, oprot)
+        args = read_args(iprot, EnableTable_args)
+        result = EnableTable_result.new()
+        begin
+          @handler.enableTable(args.table)
+        rescue ::Blur::BlurException => ex
+          result.ex = ex
+        end
+        write_result(result, oprot, 'enableTable', seqid)
+      end
+
+      def process_disableTable(seqid, iprot, oprot)
+        args = read_args(iprot, DisableTable_args)
+        result = DisableTable_result.new()
+        begin
+          @handler.disableTable(args.table)
+        rescue ::Blur::BlurException => ex
+          result.ex = ex
+        end
+        write_result(result, oprot, 'disableTable', seqid)
+      end
+
+      def process_removeTable(seqid, iprot, oprot)
+        args = read_args(iprot, RemoveTable_args)
+        result = RemoveTable_result.new()
+        begin
+          @handler.removeTable(args.table, args.deleteIndexFiles)
+        rescue ::Blur::BlurException => ex
+          result.ex = ex
+        end
+        write_result(result, oprot, 'removeTable', seqid)
+      end
+
+      def process_describe(seqid, iprot, oprot)
+        args = read_args(iprot, Describe_args)
+        result = Describe_result.new()
+        begin
+          result.success = @handler.describe(args.table)
+        rescue ::Blur::BlurException => ex
+          result.ex = ex
+        end
+        write_result(result, oprot, 'describe', seqid)
+      end
+
+      def process_cancelQuery(seqid, iprot, oprot)
+        args = read_args(iprot, CancelQuery_args)
+        result = CancelQuery_result.new()
+        begin
+          @handler.cancelQuery(args.session, args.id)
+        rescue ::Blur::BlurException => ex
+          result.ex = ex
+        end
+        write_result(result, oprot, 'cancelQuery', seqid)
+      end
+
+      def process_queryStatusIdList(seqid, iprot, oprot)
+        args = read_args(iprot, QueryStatusIdList_args)
+        result = QueryStatusIdList_result.new()
+        begin
+          result.success = @handler.queryStatusIdList(args.session)
+        rescue ::Blur::BlurException => ex
+          result.ex = ex
+        end
+        write_result(result, oprot, 'queryStatusIdList', seqid)
+      end
+
+      def process_queryStatus(seqid, iprot, oprot)
+        args = read_args(iprot, QueryStatus_args)
+        result = QueryStatus_result.new()
+        begin
+          result.success = @handler.queryStatus(args.session, args.id)
+        rescue ::Blur::BlurException => ex
+          result.ex = ex
+        end
+        write_result(result, oprot, 'queryStatus', seqid)
+      end
+
+      def process_schema(seqid, iprot, oprot)
+        args = read_args(iprot, Schema_args)
+        result = Schema_result.new()
+        begin
+          result.success = @handler.schema(args.table)
+        rescue ::Blur::BlurException => ex
+          result.ex = ex
+        end
+        write_result(result, oprot, 'schema', seqid)
+      end
+
+      def process_tableStats(seqid, iprot, oprot)
+        args = read_args(iprot, TableStats_args)
+        result = TableStats_result.new()
+        begin
+          result.success = @handler.tableStats(args.table)
+        rescue ::Blur::BlurException => ex
+          result.ex = ex
+        end
+        write_result(result, oprot, 'tableStats', seqid)
+      end
+
+    end
+
+    # HELPER FUNCTIONS AND STRUCTURES
+
+    class OpenReadSession_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      TABLE = 1
+
+      FIELDS = {
+        TABLE => {:type => ::Thrift::Types::STRING, :name => 'table'}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class OpenReadSession_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      E = 1
+
+      FIELDS = {
+        SUCCESS => {:type => ::Thrift::Types::STRUCT, :name => 'success', :class => ::Blur::Session},
+        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 Search_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SESSION = 1
+      QUERYARGS = 2
+
+      FIELDS = {
+        SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => ::Blur::Session},
+        QUERYARGS => {:type => ::Thrift::Types::STRUCT, :name => 'queryArgs', :class => ::Blur::QueryArgs}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class Search_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      E = 1
+
+      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}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class Doc_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SESSION = 1
+      DOCLOCATIONS = 2
+      FIELDS = 4
+
+      FIELDS = {
+        SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => ::Blur::Session},
+        DOCLOCATIONS => {:type => ::Thrift::Types::LIST, :name => 'docLocations', :element => {:type => ::Thrift::Types::I64}},
+        FIELDS => {:type => ::Thrift::Types::SET, :name => 'fields', :element => {:type => ::Thrift::Types::STRING}}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class Doc_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      E = 1
+
+      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 struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class CloseReadSession_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 CloseReadSession_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 AddDocuments_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      OPTIONS = 1
+      DOCUMENTS = 2
+
+      FIELDS = {
+        OPTIONS => {:type => ::Thrift::Types::STRUCT, :name => 'options', :class => ::Blur::MutateOptions},
+        DOCUMENTS => {:type => ::Thrift::Types::LIST, :name => 'documents', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::Document}}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class AddDocuments_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      E = 1
+
+      FIELDS = {
+        SUCCESS => {:type => ::Thrift::Types::LIST, :name => 'success', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::Generation}},
+        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 DeleteDocumentsByQueries_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      OPTIONS = 1
+      QUERIES = 2
+
+      FIELDS = {
+        OPTIONS => {:type => ::Thrift::Types::STRUCT, :name => 'options', :class => ::Blur::MutateOptions},
+        QUERIES => {:type => ::Thrift::Types::LIST, :name => 'queries', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::Query}}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class DeleteDocumentsByQueries_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      E = 1
+
+      FIELDS = {
+        SUCCESS => {:type => ::Thrift::Types::LIST, :name => 'success', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::Generation}},
+        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 DeleteDocuments_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      OPTIONS = 1
+      TERMS = 2
+
+      FIELDS = {
+        OPTIONS => {:type => ::Thrift::Types::STRUCT, :name => 'options', :class => ::Blur::MutateOptions},
+        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
+      SUCCESS = 0
+      E = 1
+
+      FIELDS = {
+        SUCCESS => {:type => ::Thrift::Types::LIST, :name => 'success', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::Generation}},
+        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
+      OPTIONS = 1
+      UPDATEPACKAGES = 2
+
+      FIELDS = {
+        OPTIONS => {:type => ::Thrift::Types::STRUCT, :name => 'options', :class => ::Blur::MutateOptions},
+        UPDATEPACKAGES => {:type => ::Thrift::Types::LIST, :name => 'updatePackages', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::UpdatePackage}}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class UpdateDocuments_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      E = 1
+
+      FIELDS = {
+        SUCCESS => {:type => ::Thrift::Types::LIST, :name => 'success', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::Generation}},
+        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 BlockUntilGenerationIsVisible_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      GENERATIONS = 1
+      FORCEREFRESH = 2
+
+      FIELDS = {
+        GENERATIONS => {:type => ::Thrift::Types::LIST, :name => 'generations', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::Generation}},
+        FORCEREFRESH => {:type => ::Thrift::Types::BOOL, :name => 'forceRefresh'}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class BlockUntilGenerationIsVisible_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 ServerList_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+
+      FIELDS = {
+
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class ServerList_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      EX = 1
+
+      FIELDS = {
+        SUCCESS => {:type => ::Thrift::Types::LIST, :name => 'success', :element => {:type => ::Thrift::Types::STRING}},
+        EX => {:type => ::Thrift::Types::STRUCT, :name => 'ex', :class => ::Blur::BlurException}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class ServerLayout_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      TABLE = 1
+      SERVER = 2
+
+      FIELDS = {
+        TABLE => {:type => ::Thrift::Types::STRING, :name => 'table'},
+        SERVER => {:type => ::Thrift::Types::STRING, :name => 'server'}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class ServerLayout_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      EX = 1
+
+      FIELDS = {
+        SUCCESS => {:type => ::Thrift::Types::LIST, :name => 'success', :element => {:type => ::Thrift::Types::I32}},
+        EX => {:type => ::Thrift::Types::STRUCT, :name => 'ex', :class => ::Blur::BlurException}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class ShardLayout_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      TABLE = 1
+
+      FIELDS = {
+        TABLE => {:type => ::Thrift::Types::STRING, :name => 'table'}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class ShardLayout_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      EX = 1
+
+      FIELDS = {
+        SUCCESS => {:type => ::Thrift::Types::MAP, :name => 'success', :key => {:type => ::Thrift::Types::STRING}, :value => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::ShardLayout}},
+        EX => {:type => ::Thrift::Types::STRUCT, :name => 'ex', :class => ::Blur::BlurException}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class TableList_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+
+      FIELDS = {
+
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class TableList_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      EX = 1
+
+      FIELDS = {
+        SUCCESS => {:type => ::Thrift::Types::LIST, :name => 'success', :element => {:type => ::Thrift::Types::STRING}},
+        EX => {:type => ::Thrift::Types::STRUCT, :name => 'ex', :class => ::Blur::BlurException}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class IsInSafeMode_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+
+      FIELDS = {
+
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class IsInSafeMode_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      EX = 1
+
+      FIELDS = {
+        SUCCESS => {:type => ::Thrift::Types::BOOL, :name => 'success'},
+        EX => {:type => ::Thrift::Types::STRUCT, :name => 'ex', :class => ::Blur::BlurException}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class CreateTable_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      TABLEDESCRIPTOR = 1
+
+      FIELDS = {
+        TABLEDESCRIPTOR => {:type => ::Thrift::Types::STRUCT, :name => 'tableDescriptor', :class => ::Blur::TableDescriptor}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class CreateTable_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      EX = 1
+
+      FIELDS = {
+        EX => {:type => ::Thrift::Types::STRUCT, :name => 'ex', :class => ::Blur::BlurException}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class EnableTable_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      TABLE = 1
+
+      FIELDS = {
+        TABLE => {:type => ::Thrift::Types::STRING, :name => 'table'}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class EnableTable_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      EX = 1
+
+      FIELDS = {
+        EX => {:type => ::Thrift::Types::STRUCT, :name => 'ex', :class => ::Blur::BlurException}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class DisableTable_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      TABLE = 1
+
+      FIELDS = {
+        TABLE => {:type => ::Thrift::Types::STRING, :name => 'table'}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class DisableTable_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      EX = 1
+
+      FIELDS = {
+        EX => {:type => ::Thrift::Types::STRUCT, :name => 'ex', :class => ::Blur::BlurException}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class RemoveTable_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      TABLE = 1
+      DELETEINDEXFILES = 2
+
+      FIELDS = {
+        TABLE => {:type => ::Thrift::Types::STRING, :name => 'table'},
+        DELETEINDEXFILES => {:type => ::Thrift::Types::BOOL, :name => 'deleteIndexFiles'}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class RemoveTable_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      EX = 1
+
+      FIELDS = {
+        EX => {:type => ::Thrift::Types::STRUCT, :name => 'ex', :class => ::Blur::BlurException}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class Describe_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      TABLE = 1
+
+      FIELDS = {
+        TABLE => {:type => ::Thrift::Types::STRING, :name => 'table'}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class Describe_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      EX = 1
+
+      FIELDS = {
+        SUCCESS => {:type => ::Thrift::Types::STRUCT, :name => 'success', :class => ::Blur::TableDescriptor},
+        EX => {:type => ::Thrift::Types::STRUCT, :name => 'ex', :class => ::Blur::BlurException}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class CancelQuery_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SESSION = 1
+      ID = 2
+
+      FIELDS = {
+        SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => ::Blur::Session},
+        ID => {:type => ::Thrift::Types::I64, :name => 'id'}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class CancelQuery_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      EX = 1
+
+      FIELDS = {
+        EX => {:type => ::Thrift::Types::STRUCT, :name => 'ex', :class => ::Blur::BlurException}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class QueryStatusIdList_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 QueryStatusIdList_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      EX = 1
+
+      FIELDS = {
+        SUCCESS => {:type => ::Thrift::Types::LIST, :name => 'success', :element => {:type => ::Thrift::Types::I64}},
+        EX => {:type => ::Thrift::Types::STRUCT, :name => 'ex', :class => ::Blur::BlurException}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class QueryStatus_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SESSION = 1
+      ID = 2
+
+      FIELDS = {
+        SESSION => {:type => ::Thrift::Types::STRUCT, :name => 'session', :class => ::Blur::Session},
+        ID => {:type => ::Thrift::Types::I64, :name => 'id'}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class QueryStatus_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      EX = 1
+
+      FIELDS = {
+        SUCCESS => {:type => ::Thrift::Types::STRUCT, :name => 'success', :class => ::Blur::QueryStatus},
+        EX => {:type => ::Thrift::Types::STRUCT, :name => 'ex', :class => ::Blur::BlurException}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class Schema_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      TABLE = 1
+
+      FIELDS = {
+        TABLE => {:type => ::Thrift::Types::STRING, :name => 'table'}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class Schema_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      EX = 1
+
+      FIELDS = {
+        SUCCESS => {:type => ::Thrift::Types::STRUCT, :name => 'success', :class => ::Blur::LiveSchema},
+        EX => {:type => ::Thrift::Types::STRUCT, :name => 'ex', :class => ::Blur::BlurException}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class TableStats_args
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      TABLE = 1
+
+      FIELDS = {
+        TABLE => {:type => ::Thrift::Types::STRING, :name => 'table'}
+      }
+
+      def struct_fields; FIELDS; end
+
+      def validate
+      end
+
+      ::Thrift::Struct.generate_accessors self
+    end
+
+    class TableStats_result
+      include ::Thrift::Struct, ::Thrift::Struct_Union
+      SUCCESS = 0
+      EX = 1
+
+      FIELDS = {
+        SUCCESS => {:type => ::Thrift::Types::STRUCT, :name => 'success', :class => ::Blur::TableStats},
+        EX => {:type => ::Thrift::Types::STRUCT, :name => 'ex', :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/70b69ecb/src/distribution/src/main/scripts/interface/gen-rb/blur_constants.rb
----------------------------------------------------------------------
diff --git a/src/distribution/src/main/scripts/interface/gen-rb/blur_constants.rb b/src/distribution/src/main/scripts/interface/gen-rb/blur_constants.rb
new file mode 100644
index 0000000..e455224
--- /dev/null
+++ b/src/distribution/src/main/scripts/interface/gen-rb/blur_constants.rb
@@ -0,0 +1,11 @@
+#
+# Autogenerated by Thrift Compiler (0.9.0)
+#
+# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+#
+
+require 'thrift'
+require 'blur_types'
+
+module Blur
+end

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/70b69ecb/src/distribution/src/main/scripts/interface/gen-rb/blur_types.rb
----------------------------------------------------------------------
diff --git a/src/distribution/src/main/scripts/interface/gen-rb/blur_types.rb b/src/distribution/src/main/scripts/interface/gen-rb/blur_types.rb
new file mode 100644
index 0000000..af0d86e
--- /dev/null
+++ b/src/distribution/src/main/scripts/interface/gen-rb/blur_types.rb
@@ -0,0 +1,667 @@
+#
+# Autogenerated by Thrift Compiler (0.9.0)
+#
+# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+#
+
+require 'thrift'
+
+module Blur
+  module QueryState
+    RUNNING = 0
+    INTERRUPTED = 1
+    COMPLETE = 2
+    VALUE_MAP = {0 => "RUNNING", 1 => "INTERRUPTED", 2 => "COMPLETE"}
+    VALID_VALUES = Set.new([RUNNING, INTERRUPTED, COMPLETE]).freeze
+  end
+
+  module TYPE
+    # This type uses the StandardAnalyzer for indexing and stores the value.
+    TEXT = 0
+    # This type is indexed as a String (Lucene StringField) as provided and stores the value.
+# NOTE: The String is not tokenized, so the String is indexed as a single value.
+    STRING = 1
+    # This type is indexed as an Integer (Lucene IntegerField) as provided and stores the value.
+    INT = 2
+    # This type is indexed as an Long (Lucene LongField) as provided and stores the value.
+    LONG = 3
+    # This type is indexed as an Float (Lucene FloatField) as provided and stores the value.
+    FLOAT = 4
+    # This type is indexed as an Double (Lucene DoubleField) as provided and stores the value.
+    DOUBLE = 5
+    # This type is NOT indexed but stores the value.
+    BINARY = 6
+    VALUE_MAP = {0 => "TEXT", 1 => "STRING", 2 => "INT", 3 => "LONG", 4 => "FLOAT", 5 => "DOUBLE", 6 => "BINARY"}
+    VALID_VALUES = Set.new([TEXT, STRING, INT, LONG, FLOAT, DOUBLE, BINARY]).freeze
+  end
+
+  module SortType
+    # Sort by document score (relevance).  Sort values are Float and higher values are at the front.
+    SCORE = 0
+    # Sort by document number (index order).  Sort values are Integer and lower values are at the front.
+    DOC = 1
+    # Sort using term values as Strings.  Sort values are String and lower values are at the front.
+    STRING = 2
+    # Sort using term values as encoded Integers.  Sort values are Integer and lower values are at the front.
+    INT = 3
+    # Sort using term values as encoded Floats.  Sort values are Float and lower values are at the front.
+    FLOAT = 4
+    # Sort using term values as encoded Longs.  Sort values are Long and lower values are at the front.
+    LONG = 5
+    # Sort using term values as encoded Doubles.  Sort values are Double and lower values are at the front.
+    DOUBLE = 6
+    # Sort using term values as encoded Shorts.  Sort values are Short and lower values are at the front.
+    SHORT = 7
+    # Sort using term values as encoded Bytes.  Sort values are Byte and lower values are at the front.
+    BYTE = 8
+    # Sort using term values as Strings, but comparing by value (using String.compareTo) for all
+# comparisons. This is typically slower than {@link #STRING}, which uses ordinals to do the sorting.
+    STRING_VAL = 9
+    # Sort use byte[] index values.
+    BYTES = 10
+    VALUE_MAP = {0 => "SCORE", 1 => "DOC", 2 => "STRING", 3 => "INT", 4 => "FLOAT", 5 => "LONG", 6 => "DOUBLE", 7 => "SHORT", 8 => "BYTE", 9 => "STRING_VAL", 10 => "BYTES"}
+    VALID_VALUES = Set.new([SCORE, DOC, STRING, INT, FLOAT, LONG, DOUBLE, SHORT, BYTE, STRING_VAL, BYTES]).freeze
+  end
+
+  module QueryType
+    STRING = 0
+    JSON = 1
+    BINARY = 2
+    VALUE_MAP = {0 => "STRING", 1 => "JSON", 2 => "BINARY"}
+    VALID_VALUES = Set.new([STRING, JSON, BINARY]).freeze
+  end
+
+  # BlurException that carries a message plus the original stack
+# trace (if any).
+  class BlurException < ::Thrift::Exception
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    MESSAGE = 1
+    STACKTRACESTR = 2
+
+    FIELDS = {
+      # The message in the exception.
+      MESSAGE => {:type => ::Thrift::Types::STRING, :name => 'message'},
+      # The original stack trace (if any).
+      STACKTRACESTR => {:type => ::Thrift::Types::STRING, :name => 'stackTraceStr'}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  # 
+  class CpuTime
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    CPUTIME = 1
+    REALTIME = 2
+
+    FIELDS = {
+      # 
+      CPUTIME => {:type => ::Thrift::Types::I64, :name => 'cpuTime'},
+      # 
+      REALTIME => {:type => ::Thrift::Types::I64, :name => 'realTime'}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  # 
+  class QueryStatus
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    CPUTIMES = 1
+    COMPLETESHARDS = 2
+    TOTALSHARDS = 3
+    STATE = 4
+
+    FIELDS = {
+      # 
+      CPUTIMES => {:type => ::Thrift::Types::MAP, :name => 'cpuTimes', :key => {:type => ::Thrift::Types::STRING}, :value => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::CpuTime}},
+      # 
+      COMPLETESHARDS => {:type => ::Thrift::Types::I32, :name => 'completeShards'},
+      # 
+      TOTALSHARDS => {:type => ::Thrift::Types::I32, :name => 'totalShards'},
+      # 
+      STATE => {:type => ::Thrift::Types::I32, :name => 'state', :enum_class => ::Blur::QueryState}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+      unless @state.nil? || ::Blur::QueryState::VALID_VALUES.include?(@state)
+        raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field state!')
+      end
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  # 
+  class TableStats
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    BYTES = 1
+    DOCUMENTCOUNT = 2
+    QUERIES = 3
+
+    FIELDS = {
+      # 
+      BYTES => {:type => ::Thrift::Types::I64, :name => 'bytes'},
+      # 
+      DOCUMENTCOUNT => {:type => ::Thrift::Types::I64, :name => 'documentCount'},
+      # 
+      QUERIES => {:type => ::Thrift::Types::I64, :name => 'queries'}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  # 
+  class LiveSchema
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    TABLE = 1
+    COLUMNFAMILIES = 2
+
+    FIELDS = {
+      # 
+      TABLE => {:type => ::Thrift::Types::STRING, :name => 'table'},
+      # 
+      COLUMNFAMILIES => {:type => ::Thrift::Types::MAP, :name => 'columnFamilies', :key => {:type => ::Thrift::Types::STRING}, :value => {:type => ::Thrift::Types::SET, :element => {:type => ::Thrift::Types::STRING}}}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  class ClassDefinition
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    CLASSNAME = 1
+    ARGUMENTS = 2
+
+    FIELDS = {
+      CLASSNAME => {:type => ::Thrift::Types::STRING, :name => 'className'},
+      ARGUMENTS => {:type => ::Thrift::Types::MAP, :name => 'arguments', :key => {:type => ::Thrift::Types::STRING}, :value => {:type => ::Thrift::Types::STRING, :binary => true}}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  # The analyzer sub type struct holds the sub field name and class definition of
+# the sub type.  See AnalyzerType for further explanation.
+  class AnalyzerSubType
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    SUBFIELDNAME = 1
+    CLASSDEFINITION = 2
+
+    FIELDS = {
+      # The sub field name.
+      SUBFIELDNAME => {:type => ::Thrift::Types::STRING, :name => 'subFieldName'},
+      # The class definition that is to be used.
+      CLASSDEFINITION => {:type => ::Thrift::Types::STRUCT, :name => 'classDefinition', :class => ::Blur::ClassDefinition}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  # The Analyzer struct allows for defining an alternate analyzer class definition
+# with optional analyzer sub types.  The sub types allow for indexing a single field
+# with several different analyzer while only storing the value once.  For example, if
+# field "name" was a TEXT type the class definition could be set to Lowercase
+# analyzer and the analyzer sub types could be set to Keyword (with a sub field name
+# of "name.key") and Standard analyzer (with a sub field name of "name.standard").  Then in
+# queries the Lowercase analyzer would be used when "name" is referenced, Keyword
+# analyzer would be referenced when "name.key" is referenced and Standard analyzer
+# would be referenced when "name.standard" is referenced.
+  class AnalyzerType
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    FIELDNAME = 1
+    CLASSDEFINITION = 2
+    ANALYZERSUBTYPES = 3
+
+    FIELDS = {
+      # The field that this defined type is to operate against.
+      FIELDNAME => {:type => ::Thrift::Types::STRING, :name => 'fieldName'},
+      # The class definition that is to be used.  If this field is null then the
+# default behavior of the field is to be used.
+      CLASSDEFINITION => {:type => ::Thrift::Types::STRUCT, :name => 'classDefinition', :class => ::Blur::ClassDefinition},
+      # The analyzer sub types that should be applied.  This can be empty or null.
+      ANALYZERSUBTYPES => {:type => ::Thrift::Types::LIST, :name => 'analyzerSubTypes', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::AnalyzerSubType}}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  # The analyzer allows for defining of alternate analyzers for the given fields.  The TYPE
+# enum defines the default field types and the default indexing behavior for each.  The
+# Analyzer struct allows for defining alternate behavior.  Such as a field with a TEXT
+# type using a Lowercase Analyzer instead of the default StandardAnalyzer.
+  class Analyzer
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    ANALYZERTYPES = 1
+
+    FIELDS = {
+      # The list of AnalyzerTypes.
+      ANALYZERTYPES => {:type => ::Thrift::Types::LIST, :name => 'analyzerTypes', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::AnalyzerType}}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  # 
+  class TableDescriptor
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    NAME = 1
+    ENABLED = 2
+    SHARDCOUNT = 3
+    STORAGEPATH = 4
+    ANALYZER = 5
+    READONLY = 6
+    DEFAULTFIELDNAME = 7
+    PROPERTIES = 8
+
+    FIELDS = {
+      # The name of the table.
+      NAME => {:type => ::Thrift::Types::STRING, :name => 'name'},
+      # Is the table enable for queries and updates.
+      ENABLED => {:type => ::Thrift::Types::BOOL, :name => 'enabled', :default => true},
+      # The number of shards in the table.
+      SHARDCOUNT => {:type => ::Thrift::Types::I32, :name => 'shardCount', :default => 1},
+      # The storage path is a HDFS URI for storing all of the indexes.  Any valid HDFS
+# URI can be used such as hdfs://hostname/path, or file:///path, etc.
+      STORAGEPATH => {:type => ::Thrift::Types::STRING, :name => 'storagePath'},
+      # The analyzer definition for this table.  If null the default behavior for each
+# field will be used.
+      ANALYZER => {:type => ::Thrift::Types::STRUCT, :name => 'analyzer', :class => ::Blur::Analyzer},
+      # This will only allow queries to be executed on the table.  The underlying implementation
+# does not open the index for writing, but will refresh the index periodically.
+      READONLY => {:type => ::Thrift::Types::BOOL, :name => 'readOnly', :default => false},
+      # The default field name for any field where the field name is null.
+      DEFAULTFIELDNAME => {:type => ::Thrift::Types::STRING, :name => 'defaultFieldName', :default => %q"body"},
+      # compressionClass,compressionBlockSize,similarityClass,blockCaching = 1,blockCachingFileTypes,columnPreCache
+      PROPERTIES => {:type => ::Thrift::Types::MAP, :name => 'properties', :key => {:type => ::Thrift::Types::STRING}, :value => {:type => ::Thrift::Types::STRING}}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  class Session
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    SESSIONID = 1
+    TABLENAME = 2
+
+    FIELDS = {
+      SESSIONID => {:type => ::Thrift::Types::STRING, :name => 'sessionId'},
+      TABLENAME => {:type => ::Thrift::Types::STRING, :name => 'tableName'}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  class SortField
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    FIELD = 1
+    TYPE = 2
+    REVERSE = 3
+
+    FIELDS = {
+      FIELD => {:type => ::Thrift::Types::STRING, :name => 'field'},
+      TYPE => {:type => ::Thrift::Types::I32, :name => 'type', :enum_class => ::Blur::SortType},
+      REVERSE => {:type => ::Thrift::Types::BOOL, :name => 'reverse'}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+      unless @type.nil? || ::Blur::SortType::VALID_VALUES.include?(@type)
+        raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field type!')
+      end
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  class Sort
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    FIELDS = 1
+
+    FIELDS = {
+      FIELDS => {:type => ::Thrift::Types::LIST, :name => 'fields', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::SortField}}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  class ScoreDoc
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    SCORE = 1
+    DOCLOCATION = 2
+    FIELDS = 4
+
+    FIELDS = {
+      SCORE => {:type => ::Thrift::Types::DOUBLE, :name => 'score'},
+      DOCLOCATION => {:type => ::Thrift::Types::I64, :name => 'docLocation'},
+      FIELDS => {:type => ::Thrift::Types::LIST, :name => 'fields', :element => {:type => ::Thrift::Types::STRING, :binary => true}}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  # The Query object describes how the query is passed.  If the
+# type is STRING or JSON the queryString field is used.  If
+# the BINARY type is used the queryBinary should be used.
+  class Query
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    TYPE = 1
+    QUERYSTRING = 2
+    QUERYBINARY = 3
+
+    FIELDS = {
+      # The query type.
+      TYPE => {:type => ::Thrift::Types::I32, :name => 'type', :enum_class => ::Blur::QueryType},
+      # The query to be executed.
+      QUERYSTRING => {:type => ::Thrift::Types::STRING, :name => 'queryString'},
+      # The query to be executed.
+      QUERYBINARY => {:type => ::Thrift::Types::STRING, :name => 'queryBinary', :binary => true}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+      unless @type.nil? || ::Blur::QueryType::VALID_VALUES.include?(@type)
+        raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field type!')
+      end
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  class QueryArgs
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    ID = 1
+    AFTER = 2
+    QUERY = 3
+    FILTER = 4
+    NUMBERTOFETCH = 5
+    AGGREGATERESULTS = 6
+    SORT = 7
+    DODOCSCORES = 8
+    DOMAXSCORE = 9
+    SHARDINDEXES = 10
+
+    FIELDS = {
+      # Unique id for controlling the given query.
+      ID => {:type => ::Thrift::Types::I64, :name => 'id'},
+      # If after is left null then the first N (where N is numberToFetch)
+# ScoreDocs are fetched.  If after is not null then the first N
+# ScoreDocs are fetched that occur after the given ScoreDoc.
+      AFTER => {:type => ::Thrift::Types::STRUCT, :name => 'after', :class => ::Blur::ScoreDoc},
+      # The query to be executed.
+      QUERY => {:type => ::Thrift::Types::STRUCT, :name => 'query', :class => ::Blur::Query},
+      # Filter to be executed.
+      FILTER => {:type => ::Thrift::Types::STRING, :name => 'filter', :binary => true},
+      # The number of document locations to fetch.
+      NUMBERTOFETCH => {:type => ::Thrift::Types::I32, :name => 'numberToFetch', :default => 100},
+      # If aggregate results is left true then only a single TopFieldDocs
+# object will be returned from the search method.  It will contain
+# only the best documents from the given search with all of the
+# shards being sorted and aggregated together.
+      AGGREGATERESULTS => {:type => ::Thrift::Types::BOOL, :name => 'aggregateResults', :default => true},
+      # NOT YET IMPLEMENTED.
+      SORT => {:type => ::Thrift::Types::STRUCT, :name => 'sort', :class => ::Blur::Sort},
+      # NOT YET IMPLEMENTED.  Related to sort.
+      DODOCSCORES => {:type => ::Thrift::Types::BOOL, :name => 'doDocScores', :default => true},
+      # Calculate the max score of the search.
+      DOMAXSCORE => {:type => ::Thrift::Types::BOOL, :name => 'doMaxScore', :default => false},
+      # Shard indexes allows the user to specify which shards of the table to execute
+# the query against.  If left null, all the shards of the table are used.
+      SHARDINDEXES => {:type => ::Thrift::Types::LIST, :name => 'shardIndexes', :element => {:type => ::Thrift::Types::I32}}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  class TopFieldDocs
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    SHARDINDEX = 1
+    TOTALHITS = 2
+    SCOREDOCS = 3
+    MAXSCORE = 4
+    FIELDS = 5
+
+    FIELDS = {
+      SHARDINDEX => {:type => ::Thrift::Types::I32, :name => 'shardIndex'},
+      TOTALHITS => {:type => ::Thrift::Types::I64, :name => 'totalHits'},
+      SCOREDOCS => {:type => ::Thrift::Types::LIST, :name => 'scoreDocs', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::ScoreDoc}},
+      MAXSCORE => {:type => ::Thrift::Types::DOUBLE, :name => 'maxScore'},
+      FIELDS => {:type => ::Thrift::Types::LIST, :name => 'fields', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::SortField}}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  #  
+  class Field
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    NAME = 1
+    VALUE = 2
+    TYPE = 3
+    BOOST = 4
+
+    FIELDS = {
+      # The name of the field.
+      NAME => {:type => ::Thrift::Types::STRING, :name => 'name'},
+      # The value of the field in binary form.  If the value is a string, the string should be in UTF-8 format.
+      VALUE => {:type => ::Thrift::Types::STRING, :name => 'value', :binary => true},
+      # The type of the field, this represents how the data is stored and the default indexing schema for the data.
+      TYPE => {:type => ::Thrift::Types::I32, :name => 'type', :enum_class => ::Blur::TYPE},
+      # The boost of the field.  Default of 1.0 for no change to the boost.
+      BOOST => {:type => ::Thrift::Types::DOUBLE, :name => 'boost', :default => 1}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+      unless @type.nil? || ::Blur::TYPE::VALID_VALUES.include?(@type)
+        raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field type!')
+      end
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  class Document
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    FIELDS = 1
+
+    FIELDS = {
+      # This list of fields to be indexed.  The same field name can be used across fields and the order of the fields will be maintained.
+      FIELDS => {:type => ::Thrift::Types::LIST, :name => 'fields', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::Field}}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  class Term
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    FIELD = 1
+    BYTES = 2
+
+    FIELDS = {
+      # Field name.
+      FIELD => {:type => ::Thrift::Types::STRING, :name => 'field'},
+      # Field values.
+      BYTES => {:type => ::Thrift::Types::STRING, :name => 'bytes', :binary => true}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  class MutateOptions
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    TABLE = 1
+    SHARDINDEX = 2
+    WAITTOBEVISIBLE = 3
+    WRITEAHEADLOG = 4
+
+    FIELDS = {
+      # The name of the table.
+      TABLE => {:type => ::Thrift::Types::STRING, :name => 'table'},
+      # The index of the shard in the table that the mutate will operate against.
+      SHARDINDEX => {:type => ::Thrift::Types::I32, :name => 'shardIndex'},
+      # Setting this to true will cause the mutate call to block until the mutates are visible.
+      WAITTOBEVISIBLE => {:type => ::Thrift::Types::BOOL, :name => 'waitToBeVisible', :default => false},
+      # Whether or not to add this mutation to the write ahead log for recovery of information during a shard server crash.
+      WRITEAHEADLOG => {:type => ::Thrift::Types::BOOL, :name => 'writeAheadLog', :default => true}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  # Contains a the delete term as well as the documents that will be added to the index shard.
+  class UpdatePackage
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    TERM = 1
+    DOCUMENTS = 2
+
+    FIELDS = {
+      # The term that will mark old Documents as deleted before adding the documents.
+      TERM => {:type => ::Thrift::Types::STRUCT, :name => 'term', :class => ::Blur::Term},
+      # The documents to be updated.
+      DOCUMENTS => {:type => ::Thrift::Types::LIST, :name => 'documents', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Blur::Document}}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  # Generation keeps a reference to the Lucene generation where a mutate (add/update/delete)
+# was performed.  This can be used to wait for that generation to be visible.
+  class Generation
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    TABLE = 1
+    SHARDINDEX = 2
+    GENERATION = 3
+
+    FIELDS = {
+      # The table name for this generation.
+      TABLE => {:type => ::Thrift::Types::STRING, :name => 'table'},
+      # The shard index for this generation.
+      SHARDINDEX => {:type => ::Thrift::Types::I32, :name => 'shardIndex'},
+      # The Lucene generation.
+      GENERATION => {:type => ::Thrift::Types::I64, :name => 'generation'}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+  class ShardLayout
+    include ::Thrift::Struct, ::Thrift::Struct_Union
+    SERVER = 1
+    SHARDS = 2
+
+    FIELDS = {
+      # The server for this layout.
+      SERVER => {:type => ::Thrift::Types::STRING, :name => 'server'},
+      # A list of shard ids for the given server.
+      SHARDS => {:type => ::Thrift::Types::LIST, :name => 'shards', :element => {:type => ::Thrift::Types::I32}}
+    }
+
+    def struct_fields; FIELDS; end
+
+    def validate
+    end
+
+    ::Thrift::Struct.generate_accessors self
+  end
+
+end

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/70b69ecb/src/distribution/src/main/scripts/interface/genAndReplace.sh
----------------------------------------------------------------------
diff --git a/src/distribution/src/main/scripts/interface/genAndReplace.sh b/src/distribution/src/main/scripts/interface/genAndReplace.sh
new file mode 100755
index 0000000..3ba8681
--- /dev/null
+++ b/src/distribution/src/main/scripts/interface/genAndReplace.sh
@@ -0,0 +1,26 @@
+#!/usr/bin/env bash
+
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+rm ../src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/*
+rm -r gen-java/ gen-perl/ gen-rb/ gen-html/
+thrift --gen html --gen perl --gen java --gen rb Blur.thrift
+for f in gen-java/org/apache/blur/thrift/generated/*.java; do
+  awk -v f="apache.header" 'BEGIN {while (getline < f) txt=txt $0 "\n"} /package org\.apache\.blur\.thrift\.generated;/ {sub("package org.apache.blur.thrift.generated;", txt)} 1' $f > $f.new
+  rm $f
+  mv $f.new $f
+done
+cp -r gen-java/* ../src/blur-thrift/src/main/java/

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/70b69ecb/src/distribution/src/main/scripts/logs/.empty
----------------------------------------------------------------------
diff --git a/src/distribution/src/main/scripts/logs/.empty b/src/distribution/src/main/scripts/logs/.empty
new file mode 100644
index 0000000..e69de29

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/70b69ecb/src/distribution/src/main/scripts/pids/.empty
----------------------------------------------------------------------
diff --git a/src/distribution/src/main/scripts/pids/.empty b/src/distribution/src/main/scripts/pids/.empty
new file mode 100644
index 0000000..e69de29

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/70b69ecb/src/pom.xml
----------------------------------------------------------------------
diff --git a/src/pom.xml b/src/pom.xml
index 7b7190f..7737f94 100644
--- a/src/pom.xml
+++ b/src/pom.xml
@@ -46,7 +46,8 @@ under the License.
 		<module>blur-gui</module>
 		<!--module>blur-jdbc</module-->
 		<!--module>blur-testsuite</module-->
-		<module>blur-shell</module>
+		<!--module>blur-shell</module-->
+		<module>distribution</module>
 	</modules>
 
 	<dependencies>
@@ -58,7 +59,7 @@ under the License.
 		</dependency>
 	</dependencies>
 
-	<build>
+	<build>		
 		<plugins>
 			<plugin>
 				<groupId>org.apache.rat</groupId>
@@ -78,6 +79,14 @@ under the License.
 		<pluginManagement>
 			<plugins>
 				<!-- Ignore/Execute plugin execution -->
+		        <plugin>
+		          <artifactId>maven-assembly-plugin</artifactId>
+		          <configuration>
+		            <descriptors>
+		              <descriptor>src/assemble/bin.xml</descriptor>
+		            </descriptors>
+		          </configuration>
+		        </plugin>
 				<plugin>
 					<groupId>org.eclipse.m2e</groupId>
 					<artifactId>lifecycle-mapping</artifactId>


Mime
View raw message