incubator-blur-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From amccu...@apache.org
Subject [8/14] More API changes, and update and delete documents are noew implemented.
Date Sun, 04 Nov 2012 02:17:15 GMT
http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/4e18a556/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/Lucene.java
----------------------------------------------------------------------
diff --git a/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/Lucene.java b/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/Lucene.java
index f0e8bea..d648b83 100644
--- a/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/Lucene.java
+++ b/src/blur-thrift/src/main/java/org/apache/blur/thrift/generated/Lucene.java
@@ -53,21 +53,86 @@ public class Lucene {
 
   public interface Iface extends Blur.Iface {
 
+    /**
+     * Creating a session snapshots the readers during search and document fetching.  This provides a static view of the indexes so the document ids will remain the same during a session.
+     * @param table the table name.
+     * @return the new Session.
+     * 
+     * @param table
+     */
     public Session openReadSession(String table) throws BlurException, org.apache.thrift.TException;
 
+    /**
+     * Runs a search with the given query arguments.  Invalid Sessions will throw a BlurException.
+     * @param session the Session.
+     * @param queryArgs the QueryArgs which contains the query, filter, sort, fetch, paging information, etc.
+     * @return the TopFieldDocs, where there is a TopFieldDocs object for each shard that was search against.
+     * 
+     * @param session
+     * @param queryArgs
+     */
     public List<TopFieldDocs> search(Session session, QueryArgs queryArgs) throws BlurException, org.apache.thrift.TException;
 
+    /**
+     * Fetches a document based on the DocLocation list with the fields specified.
+     * @param session the Session.
+     * @param docLocations the document locations, which include shard index and document id.
+     * @param fields the field names to fetch.
+     * @return the Documents that were requested.
+     * 
+     * @param session
+     * @param docLocations
+     * @param fields
+     */
     public List<Document> doc(Session session, List<DocLocation> docLocations, Set<String> fields) throws BlurException, org.apache.thrift.TException;
 
+    /**
+     * Closes the session and allows the readers to be closed.
+     * @param session the Session.
+     * 
+     * @param session
+     */
     public void closeReadSession(Session session) throws BlurException, org.apache.thrift.TException;
 
-    public void addDocuments(String table, int shardIndex, List<Document> document) throws BlurException, org.apache.thrift.TException;
+    /**
+     * Add Documents to the given table in the provided shard.  If the table or shard is not found on this shard server a BlurException will be thrown.
+     * @param options the MutateOptions provide the table name, shard index, etc.
+     * @param documents the documents to be added.  NOTE: All documents provided to be indexed in a single segment.
+     * 
+     * @param options
+     * @param documents
+     */
+    public void addDocuments(MutateOptions options, List<Document> documents) throws BlurException, org.apache.thrift.TException;
 
-    public void deleteDocumentsByQueries(String table, int shardIndex, List<QueryArgs> queries) throws BlurException, org.apache.thrift.TException;
+    /**
+     * Delete Documents to the given table in the provided shard.  If the table or shard is not found on this shard server a BlurException will be thrown.
+     * @param options the MutateOptions provide the table name, shard index, etc.
+     * @param queries the Queries that will executed and mark there resulting documents as deleted.
+     * 
+     * @param options
+     * @param queries
+     */
+    public void deleteDocumentsByQueries(MutateOptions options, List<ByteBuffer> queries) throws BlurException, org.apache.thrift.TException;
 
-    public void deleteDocuments(String table, int shardIndex, List<Term> terms) throws BlurException, org.apache.thrift.TException;
+    /**
+     * Delete Documents to the given table in the provided shard.  If the table or shard is not found on this shard server a BlurException will be thrown.
+     * @param options the MutateOptions provide the table name, shard index, etc.
+     * @param queries the Terms that will be found and mark deleted all the documents to be deleted.
+     * 
+     * @param options
+     * @param terms
+     */
+    public void deleteDocuments(MutateOptions options, List<Term> terms) throws BlurException, org.apache.thrift.TException;
 
-    public void updateDocuments(String table, int shardIndex, List<Term> terms, List<Document> document) throws BlurException, org.apache.thrift.TException;
+    /**
+     * Update Documents to the given table in the provided shard.  If the table or shard is not found on this shard server a BlurException will be thrown.
+     * @param options the MutateOptions provide the table name, shard index, etc.
+     * @param updatePackages the documents to be updated.  NOTE: All documents within a update document object are indexed in a single segment.
+     * 
+     * @param options
+     * @param updatePackages
+     */
+    public void updateDocuments(MutateOptions options, List<UpdatePackage> updatePackages) throws BlurException, org.apache.thrift.TException;
 
   }
 
@@ -81,13 +146,13 @@ public class Lucene {
 
     public void closeReadSession(Session session, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.closeReadSession_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void addDocuments(String table, int shardIndex, List<Document> document, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.addDocuments_call> resultHandler) throws org.apache.thrift.TException;
+    public void addDocuments(MutateOptions options, List<Document> documents, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.addDocuments_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void deleteDocumentsByQueries(String table, int shardIndex, List<QueryArgs> queries, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.deleteDocumentsByQueries_call> resultHandler) throws org.apache.thrift.TException;
+    public void deleteDocumentsByQueries(MutateOptions options, List<ByteBuffer> queries, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.deleteDocumentsByQueries_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void deleteDocuments(String table, int shardIndex, List<Term> terms, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.deleteDocuments_call> resultHandler) throws org.apache.thrift.TException;
+    public void deleteDocuments(MutateOptions options, List<Term> terms, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.deleteDocuments_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void updateDocuments(String table, int shardIndex, List<Term> terms, List<Document> document, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.updateDocuments_call> resultHandler) throws org.apache.thrift.TException;
+    public void updateDocuments(MutateOptions options, List<UpdatePackage> updatePackages, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.updateDocuments_call> resultHandler) throws org.apache.thrift.TException;
 
   }
 
@@ -215,18 +280,17 @@ public class Lucene {
       return;
     }
 
-    public void addDocuments(String table, int shardIndex, List<Document> document) throws BlurException, org.apache.thrift.TException
+    public void addDocuments(MutateOptions options, List<Document> documents) throws BlurException, org.apache.thrift.TException
     {
-      send_addDocuments(table, shardIndex, document);
+      send_addDocuments(options, documents);
       recv_addDocuments();
     }
 
-    public void send_addDocuments(String table, int shardIndex, List<Document> document) throws org.apache.thrift.TException
+    public void send_addDocuments(MutateOptions options, List<Document> documents) throws org.apache.thrift.TException
     {
       addDocuments_args args = new addDocuments_args();
-      args.setTable(table);
-      args.setShardIndex(shardIndex);
-      args.setDocument(document);
+      args.setOptions(options);
+      args.setDocuments(documents);
       sendBase("addDocuments", args);
     }
 
@@ -240,17 +304,16 @@ public class Lucene {
       return;
     }
 
-    public void deleteDocumentsByQueries(String table, int shardIndex, List<QueryArgs> queries) throws BlurException, org.apache.thrift.TException
+    public void deleteDocumentsByQueries(MutateOptions options, List<ByteBuffer> queries) throws BlurException, org.apache.thrift.TException
     {
-      send_deleteDocumentsByQueries(table, shardIndex, queries);
+      send_deleteDocumentsByQueries(options, queries);
       recv_deleteDocumentsByQueries();
     }
 
-    public void send_deleteDocumentsByQueries(String table, int shardIndex, List<QueryArgs> queries) throws org.apache.thrift.TException
+    public void send_deleteDocumentsByQueries(MutateOptions options, List<ByteBuffer> queries) throws org.apache.thrift.TException
     {
       deleteDocumentsByQueries_args args = new deleteDocumentsByQueries_args();
-      args.setTable(table);
-      args.setShardIndex(shardIndex);
+      args.setOptions(options);
       args.setQueries(queries);
       sendBase("deleteDocumentsByQueries", args);
     }
@@ -265,17 +328,16 @@ public class Lucene {
       return;
     }
 
-    public void deleteDocuments(String table, int shardIndex, List<Term> terms) throws BlurException, org.apache.thrift.TException
+    public void deleteDocuments(MutateOptions options, List<Term> terms) throws BlurException, org.apache.thrift.TException
     {
-      send_deleteDocuments(table, shardIndex, terms);
+      send_deleteDocuments(options, terms);
       recv_deleteDocuments();
     }
 
-    public void send_deleteDocuments(String table, int shardIndex, List<Term> terms) throws org.apache.thrift.TException
+    public void send_deleteDocuments(MutateOptions options, List<Term> terms) throws org.apache.thrift.TException
     {
       deleteDocuments_args args = new deleteDocuments_args();
-      args.setTable(table);
-      args.setShardIndex(shardIndex);
+      args.setOptions(options);
       args.setTerms(terms);
       sendBase("deleteDocuments", args);
     }
@@ -290,19 +352,17 @@ public class Lucene {
       return;
     }
 
-    public void updateDocuments(String table, int shardIndex, List<Term> terms, List<Document> document) throws BlurException, org.apache.thrift.TException
+    public void updateDocuments(MutateOptions options, List<UpdatePackage> updatePackages) throws BlurException, org.apache.thrift.TException
     {
-      send_updateDocuments(table, shardIndex, terms, document);
+      send_updateDocuments(options, updatePackages);
       recv_updateDocuments();
     }
 
-    public void send_updateDocuments(String table, int shardIndex, List<Term> terms, List<Document> document) throws org.apache.thrift.TException
+    public void send_updateDocuments(MutateOptions options, List<UpdatePackage> updatePackages) throws org.apache.thrift.TException
     {
       updateDocuments_args args = new updateDocuments_args();
-      args.setTable(table);
-      args.setShardIndex(shardIndex);
-      args.setTerms(terms);
-      args.setDocument(document);
+      args.setOptions(options);
+      args.setUpdatePackages(updatePackages);
       sendBase("updateDocuments", args);
     }
 
@@ -471,30 +531,27 @@ public class Lucene {
       }
     }
 
-    public void addDocuments(String table, int shardIndex, List<Document> document, org.apache.thrift.async.AsyncMethodCallback<addDocuments_call> resultHandler) throws org.apache.thrift.TException {
+    public void addDocuments(MutateOptions options, List<Document> documents, org.apache.thrift.async.AsyncMethodCallback<addDocuments_call> resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      addDocuments_call method_call = new addDocuments_call(table, shardIndex, document, resultHandler, this, ___protocolFactory, ___transport);
+      addDocuments_call method_call = new addDocuments_call(options, documents, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class addDocuments_call extends org.apache.thrift.async.TAsyncMethodCall {
-      private String table;
-      private int shardIndex;
-      private List<Document> document;
-      public addDocuments_call(String table, int shardIndex, List<Document> document, org.apache.thrift.async.AsyncMethodCallback<addDocuments_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+      private MutateOptions options;
+      private List<Document> documents;
+      public addDocuments_call(MutateOptions options, List<Document> documents, org.apache.thrift.async.AsyncMethodCallback<addDocuments_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
-        this.table = table;
-        this.shardIndex = shardIndex;
-        this.document = document;
+        this.options = options;
+        this.documents = documents;
       }
 
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("addDocuments", org.apache.thrift.protocol.TMessageType.CALL, 0));
         addDocuments_args args = new addDocuments_args();
-        args.setTable(table);
-        args.setShardIndex(shardIndex);
-        args.setDocument(document);
+        args.setOptions(options);
+        args.setDocuments(documents);
         args.write(prot);
         prot.writeMessageEnd();
       }
@@ -509,29 +566,26 @@ public class Lucene {
       }
     }
 
-    public void deleteDocumentsByQueries(String table, int shardIndex, List<QueryArgs> queries, org.apache.thrift.async.AsyncMethodCallback<deleteDocumentsByQueries_call> resultHandler) throws org.apache.thrift.TException {
+    public void deleteDocumentsByQueries(MutateOptions options, List<ByteBuffer> queries, org.apache.thrift.async.AsyncMethodCallback<deleteDocumentsByQueries_call> resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      deleteDocumentsByQueries_call method_call = new deleteDocumentsByQueries_call(table, shardIndex, queries, resultHandler, this, ___protocolFactory, ___transport);
+      deleteDocumentsByQueries_call method_call = new deleteDocumentsByQueries_call(options, queries, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class deleteDocumentsByQueries_call extends org.apache.thrift.async.TAsyncMethodCall {
-      private String table;
-      private int shardIndex;
-      private List<QueryArgs> queries;
-      public deleteDocumentsByQueries_call(String table, int shardIndex, List<QueryArgs> queries, org.apache.thrift.async.AsyncMethodCallback<deleteDocumentsByQueries_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+      private MutateOptions options;
+      private List<ByteBuffer> queries;
+      public deleteDocumentsByQueries_call(MutateOptions options, List<ByteBuffer> queries, org.apache.thrift.async.AsyncMethodCallback<deleteDocumentsByQueries_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
-        this.table = table;
-        this.shardIndex = shardIndex;
+        this.options = options;
         this.queries = queries;
       }
 
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("deleteDocumentsByQueries", org.apache.thrift.protocol.TMessageType.CALL, 0));
         deleteDocumentsByQueries_args args = new deleteDocumentsByQueries_args();
-        args.setTable(table);
-        args.setShardIndex(shardIndex);
+        args.setOptions(options);
         args.setQueries(queries);
         args.write(prot);
         prot.writeMessageEnd();
@@ -547,29 +601,26 @@ public class Lucene {
       }
     }
 
-    public void deleteDocuments(String table, int shardIndex, List<Term> terms, org.apache.thrift.async.AsyncMethodCallback<deleteDocuments_call> resultHandler) throws org.apache.thrift.TException {
+    public void deleteDocuments(MutateOptions options, List<Term> terms, org.apache.thrift.async.AsyncMethodCallback<deleteDocuments_call> resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      deleteDocuments_call method_call = new deleteDocuments_call(table, shardIndex, terms, resultHandler, this, ___protocolFactory, ___transport);
+      deleteDocuments_call method_call = new deleteDocuments_call(options, terms, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class deleteDocuments_call extends org.apache.thrift.async.TAsyncMethodCall {
-      private String table;
-      private int shardIndex;
+      private MutateOptions options;
       private List<Term> terms;
-      public deleteDocuments_call(String table, int shardIndex, List<Term> terms, org.apache.thrift.async.AsyncMethodCallback<deleteDocuments_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+      public deleteDocuments_call(MutateOptions options, List<Term> terms, org.apache.thrift.async.AsyncMethodCallback<deleteDocuments_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
-        this.table = table;
-        this.shardIndex = shardIndex;
+        this.options = options;
         this.terms = terms;
       }
 
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("deleteDocuments", org.apache.thrift.protocol.TMessageType.CALL, 0));
         deleteDocuments_args args = new deleteDocuments_args();
-        args.setTable(table);
-        args.setShardIndex(shardIndex);
+        args.setOptions(options);
         args.setTerms(terms);
         args.write(prot);
         prot.writeMessageEnd();
@@ -585,33 +636,27 @@ public class Lucene {
       }
     }
 
-    public void updateDocuments(String table, int shardIndex, List<Term> terms, List<Document> document, org.apache.thrift.async.AsyncMethodCallback<updateDocuments_call> resultHandler) throws org.apache.thrift.TException {
+    public void updateDocuments(MutateOptions options, List<UpdatePackage> updatePackages, org.apache.thrift.async.AsyncMethodCallback<updateDocuments_call> resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      updateDocuments_call method_call = new updateDocuments_call(table, shardIndex, terms, document, resultHandler, this, ___protocolFactory, ___transport);
+      updateDocuments_call method_call = new updateDocuments_call(options, updatePackages, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class updateDocuments_call extends org.apache.thrift.async.TAsyncMethodCall {
-      private String table;
-      private int shardIndex;
-      private List<Term> terms;
-      private List<Document> document;
-      public updateDocuments_call(String table, int shardIndex, List<Term> terms, List<Document> document, org.apache.thrift.async.AsyncMethodCallback<updateDocuments_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+      private MutateOptions options;
+      private List<UpdatePackage> updatePackages;
+      public updateDocuments_call(MutateOptions options, List<UpdatePackage> updatePackages, org.apache.thrift.async.AsyncMethodCallback<updateDocuments_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
-        this.table = table;
-        this.shardIndex = shardIndex;
-        this.terms = terms;
-        this.document = document;
+        this.options = options;
+        this.updatePackages = updatePackages;
       }
 
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("updateDocuments", org.apache.thrift.protocol.TMessageType.CALL, 0));
         updateDocuments_args args = new updateDocuments_args();
-        args.setTable(table);
-        args.setShardIndex(shardIndex);
-        args.setTerms(terms);
-        args.setDocument(document);
+        args.setOptions(options);
+        args.setUpdatePackages(updatePackages);
         args.write(prot);
         prot.writeMessageEnd();
       }
@@ -762,7 +807,7 @@ public class Lucene {
       public addDocuments_result getResult(I iface, addDocuments_args args) throws org.apache.thrift.TException {
         addDocuments_result result = new addDocuments_result();
         try {
-          iface.addDocuments(args.table, args.shardIndex, args.document);
+          iface.addDocuments(args.options, args.documents);
         } catch (BlurException e) {
           result.e = e;
         }
@@ -786,7 +831,7 @@ public class Lucene {
       public deleteDocumentsByQueries_result getResult(I iface, deleteDocumentsByQueries_args args) throws org.apache.thrift.TException {
         deleteDocumentsByQueries_result result = new deleteDocumentsByQueries_result();
         try {
-          iface.deleteDocumentsByQueries(args.table, args.shardIndex, args.queries);
+          iface.deleteDocumentsByQueries(args.options, args.queries);
         } catch (BlurException e) {
           result.e = e;
         }
@@ -810,7 +855,7 @@ public class Lucene {
       public deleteDocuments_result getResult(I iface, deleteDocuments_args args) throws org.apache.thrift.TException {
         deleteDocuments_result result = new deleteDocuments_result();
         try {
-          iface.deleteDocuments(args.table, args.shardIndex, args.terms);
+          iface.deleteDocuments(args.options, args.terms);
         } catch (BlurException e) {
           result.e = e;
         }
@@ -834,7 +879,7 @@ public class Lucene {
       public updateDocuments_result getResult(I iface, updateDocuments_args args) throws org.apache.thrift.TException {
         updateDocuments_result result = new updateDocuments_result();
         try {
-          iface.updateDocuments(args.table, args.shardIndex, args.terms, args.document);
+          iface.updateDocuments(args.options, args.updatePackages);
         } catch (BlurException e) {
           result.e = e;
         }
@@ -2509,14 +2554,14 @@ public class Lucene {
             case 0: // SUCCESS
               if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
                 {
-                  org.apache.thrift.protocol.TList _list316 = iprot.readListBegin();
-                  struct.success = new ArrayList<TopFieldDocs>(_list316.size);
-                  for (int _i317 = 0; _i317 < _list316.size; ++_i317)
+                  org.apache.thrift.protocol.TList _list324 = iprot.readListBegin();
+                  struct.success = new ArrayList<TopFieldDocs>(_list324.size);
+                  for (int _i325 = 0; _i325 < _list324.size; ++_i325)
                   {
-                    TopFieldDocs _elem318; // required
-                    _elem318 = new TopFieldDocs();
-                    _elem318.read(iprot);
-                    struct.success.add(_elem318);
+                    TopFieldDocs _elem326; // required
+                    _elem326 = new TopFieldDocs();
+                    _elem326.read(iprot);
+                    struct.success.add(_elem326);
                   }
                   iprot.readListEnd();
                 }
@@ -2553,9 +2598,9 @@ public class Lucene {
           oprot.writeFieldBegin(SUCCESS_FIELD_DESC);
           {
             oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.success.size()));
-            for (TopFieldDocs _iter319 : struct.success)
+            for (TopFieldDocs _iter327 : struct.success)
             {
-              _iter319.write(oprot);
+              _iter327.write(oprot);
             }
             oprot.writeListEnd();
           }
@@ -2594,9 +2639,9 @@ public class Lucene {
         if (struct.isSetSuccess()) {
           {
             oprot.writeI32(struct.success.size());
-            for (TopFieldDocs _iter320 : struct.success)
+            for (TopFieldDocs _iter328 : struct.success)
             {
-              _iter320.write(oprot);
+              _iter328.write(oprot);
             }
           }
         }
@@ -2611,14 +2656,14 @@ public class Lucene {
         BitSet incoming = iprot.readBitSet(2);
         if (incoming.get(0)) {
           {
-            org.apache.thrift.protocol.TList _list321 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
-            struct.success = new ArrayList<TopFieldDocs>(_list321.size);
-            for (int _i322 = 0; _i322 < _list321.size; ++_i322)
+            org.apache.thrift.protocol.TList _list329 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+            struct.success = new ArrayList<TopFieldDocs>(_list329.size);
+            for (int _i330 = 0; _i330 < _list329.size; ++_i330)
             {
-              TopFieldDocs _elem323; // required
-              _elem323 = new TopFieldDocs();
-              _elem323.read(iprot);
-              struct.success.add(_elem323);
+              TopFieldDocs _elem331; // required
+              _elem331 = new TopFieldDocs();
+              _elem331.read(iprot);
+              struct.success.add(_elem331);
             }
           }
           struct.setSuccessIsSet(true);
@@ -3128,14 +3173,14 @@ public class Lucene {
             case 2: // DOC_LOCATIONS
               if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
                 {
-                  org.apache.thrift.protocol.TList _list324 = iprot.readListBegin();
-                  struct.docLocations = new ArrayList<DocLocation>(_list324.size);
-                  for (int _i325 = 0; _i325 < _list324.size; ++_i325)
+                  org.apache.thrift.protocol.TList _list332 = iprot.readListBegin();
+                  struct.docLocations = new ArrayList<DocLocation>(_list332.size);
+                  for (int _i333 = 0; _i333 < _list332.size; ++_i333)
                   {
-                    DocLocation _elem326; // required
-                    _elem326 = new DocLocation();
-                    _elem326.read(iprot);
-                    struct.docLocations.add(_elem326);
+                    DocLocation _elem334; // required
+                    _elem334 = new DocLocation();
+                    _elem334.read(iprot);
+                    struct.docLocations.add(_elem334);
                   }
                   iprot.readListEnd();
                 }
@@ -3147,13 +3192,13 @@ public class Lucene {
             case 4: // FIELDS
               if (schemeField.type == org.apache.thrift.protocol.TType.SET) {
                 {
-                  org.apache.thrift.protocol.TSet _set327 = iprot.readSetBegin();
-                  struct.fields = new HashSet<String>(2*_set327.size);
-                  for (int _i328 = 0; _i328 < _set327.size; ++_i328)
+                  org.apache.thrift.protocol.TSet _set335 = iprot.readSetBegin();
+                  struct.fields = new HashSet<String>(2*_set335.size);
+                  for (int _i336 = 0; _i336 < _set335.size; ++_i336)
                   {
-                    String _elem329; // required
-                    _elem329 = iprot.readString();
-                    struct.fields.add(_elem329);
+                    String _elem337; // required
+                    _elem337 = iprot.readString();
+                    struct.fields.add(_elem337);
                   }
                   iprot.readSetEnd();
                 }
@@ -3186,9 +3231,9 @@ public class Lucene {
           oprot.writeFieldBegin(DOC_LOCATIONS_FIELD_DESC);
           {
             oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.docLocations.size()));
-            for (DocLocation _iter330 : struct.docLocations)
+            for (DocLocation _iter338 : struct.docLocations)
             {
-              _iter330.write(oprot);
+              _iter338.write(oprot);
             }
             oprot.writeListEnd();
           }
@@ -3198,9 +3243,9 @@ public class Lucene {
           oprot.writeFieldBegin(FIELDS_FIELD_DESC);
           {
             oprot.writeSetBegin(new org.apache.thrift.protocol.TSet(org.apache.thrift.protocol.TType.STRING, struct.fields.size()));
-            for (String _iter331 : struct.fields)
+            for (String _iter339 : struct.fields)
             {
-              oprot.writeString(_iter331);
+              oprot.writeString(_iter339);
             }
             oprot.writeSetEnd();
           }
@@ -3240,18 +3285,18 @@ public class Lucene {
         if (struct.isSetDocLocations()) {
           {
             oprot.writeI32(struct.docLocations.size());
-            for (DocLocation _iter332 : struct.docLocations)
+            for (DocLocation _iter340 : struct.docLocations)
             {
-              _iter332.write(oprot);
+              _iter340.write(oprot);
             }
           }
         }
         if (struct.isSetFields()) {
           {
             oprot.writeI32(struct.fields.size());
-            for (String _iter333 : struct.fields)
+            for (String _iter341 : struct.fields)
             {
-              oprot.writeString(_iter333);
+              oprot.writeString(_iter341);
             }
           }
         }
@@ -3268,27 +3313,27 @@ public class Lucene {
         }
         if (incoming.get(1)) {
           {
-            org.apache.thrift.protocol.TList _list334 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
-            struct.docLocations = new ArrayList<DocLocation>(_list334.size);
-            for (int _i335 = 0; _i335 < _list334.size; ++_i335)
+            org.apache.thrift.protocol.TList _list342 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+            struct.docLocations = new ArrayList<DocLocation>(_list342.size);
+            for (int _i343 = 0; _i343 < _list342.size; ++_i343)
             {
-              DocLocation _elem336; // required
-              _elem336 = new DocLocation();
-              _elem336.read(iprot);
-              struct.docLocations.add(_elem336);
+              DocLocation _elem344; // required
+              _elem344 = new DocLocation();
+              _elem344.read(iprot);
+              struct.docLocations.add(_elem344);
             }
           }
           struct.setDocLocationsIsSet(true);
         }
         if (incoming.get(2)) {
           {
-            org.apache.thrift.protocol.TSet _set337 = new org.apache.thrift.protocol.TSet(org.apache.thrift.protocol.TType.STRING, iprot.readI32());
-            struct.fields = new HashSet<String>(2*_set337.size);
-            for (int _i338 = 0; _i338 < _set337.size; ++_i338)
+            org.apache.thrift.protocol.TSet _set345 = new org.apache.thrift.protocol.TSet(org.apache.thrift.protocol.TType.STRING, iprot.readI32());
+            struct.fields = new HashSet<String>(2*_set345.size);
+            for (int _i346 = 0; _i346 < _set345.size; ++_i346)
             {
-              String _elem339; // required
-              _elem339 = iprot.readString();
-              struct.fields.add(_elem339);
+              String _elem347; // required
+              _elem347 = iprot.readString();
+              struct.fields.add(_elem347);
             }
           }
           struct.setFieldsIsSet(true);
@@ -3684,14 +3729,14 @@ public class Lucene {
             case 0: // SUCCESS
               if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
                 {
-                  org.apache.thrift.protocol.TList _list340 = iprot.readListBegin();
-                  struct.success = new ArrayList<Document>(_list340.size);
-                  for (int _i341 = 0; _i341 < _list340.size; ++_i341)
+                  org.apache.thrift.protocol.TList _list348 = iprot.readListBegin();
+                  struct.success = new ArrayList<Document>(_list348.size);
+                  for (int _i349 = 0; _i349 < _list348.size; ++_i349)
                   {
-                    Document _elem342; // required
-                    _elem342 = new Document();
-                    _elem342.read(iprot);
-                    struct.success.add(_elem342);
+                    Document _elem350; // required
+                    _elem350 = new Document();
+                    _elem350.read(iprot);
+                    struct.success.add(_elem350);
                   }
                   iprot.readListEnd();
                 }
@@ -3728,9 +3773,9 @@ public class Lucene {
           oprot.writeFieldBegin(SUCCESS_FIELD_DESC);
           {
             oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.success.size()));
-            for (Document _iter343 : struct.success)
+            for (Document _iter351 : struct.success)
             {
-              _iter343.write(oprot);
+              _iter351.write(oprot);
             }
             oprot.writeListEnd();
           }
@@ -3769,9 +3814,9 @@ public class Lucene {
         if (struct.isSetSuccess()) {
           {
             oprot.writeI32(struct.success.size());
-            for (Document _iter344 : struct.success)
+            for (Document _iter352 : struct.success)
             {
-              _iter344.write(oprot);
+              _iter352.write(oprot);
             }
           }
         }
@@ -3786,14 +3831,14 @@ public class Lucene {
         BitSet incoming = iprot.readBitSet(2);
         if (incoming.get(0)) {
           {
-            org.apache.thrift.protocol.TList _list345 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
-            struct.success = new ArrayList<Document>(_list345.size);
-            for (int _i346 = 0; _i346 < _list345.size; ++_i346)
+            org.apache.thrift.protocol.TList _list353 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+            struct.success = new ArrayList<Document>(_list353.size);
+            for (int _i354 = 0; _i354 < _list353.size; ++_i354)
             {
-              Document _elem347; // required
-              _elem347 = new Document();
-              _elem347.read(iprot);
-              struct.success.add(_elem347);
+              Document _elem355; // required
+              _elem355 = new Document();
+              _elem355.read(iprot);
+              struct.success.add(_elem355);
             }
           }
           struct.setSuccessIsSet(true);
@@ -4526,9 +4571,8 @@ public class Lucene {
   public static class addDocuments_args implements org.apache.thrift.TBase<addDocuments_args, addDocuments_args._Fields>, java.io.Serializable, Cloneable   {
     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("addDocuments_args");
 
-    private static final org.apache.thrift.protocol.TField TABLE_FIELD_DESC = new org.apache.thrift.protocol.TField("table", org.apache.thrift.protocol.TType.STRING, (short)1);
-    private static final org.apache.thrift.protocol.TField SHARD_INDEX_FIELD_DESC = new org.apache.thrift.protocol.TField("shardIndex", org.apache.thrift.protocol.TType.I32, (short)2);
-    private static final org.apache.thrift.protocol.TField DOCUMENT_FIELD_DESC = new org.apache.thrift.protocol.TField("document", org.apache.thrift.protocol.TType.LIST, (short)3);
+    private static final org.apache.thrift.protocol.TField OPTIONS_FIELD_DESC = new org.apache.thrift.protocol.TField("options", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+    private static final org.apache.thrift.protocol.TField DOCUMENTS_FIELD_DESC = new org.apache.thrift.protocol.TField("documents", org.apache.thrift.protocol.TType.LIST, (short)2);
 
     private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
     static {
@@ -4536,15 +4580,13 @@ public class Lucene {
       schemes.put(TupleScheme.class, new addDocuments_argsTupleSchemeFactory());
     }
 
-    public String table; // required
-    public int shardIndex; // required
-    public List<Document> document; // required
+    public MutateOptions options; // required
+    public List<Document> documents; // required
 
     /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
     public enum _Fields implements org.apache.thrift.TFieldIdEnum {
-      TABLE((short)1, "table"),
-      SHARD_INDEX((short)2, "shardIndex"),
-      DOCUMENT((short)3, "document");
+      OPTIONS((short)1, "options"),
+      DOCUMENTS((short)2, "documents");
 
       private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
 
@@ -4559,12 +4601,10 @@ public class Lucene {
        */
       public static _Fields findByThriftId(int fieldId) {
         switch(fieldId) {
-          case 1: // TABLE
-            return TABLE;
-          case 2: // SHARD_INDEX
-            return SHARD_INDEX;
-          case 3: // DOCUMENT
-            return DOCUMENT;
+          case 1: // OPTIONS
+            return OPTIONS;
+          case 2: // DOCUMENTS
+            return DOCUMENTS;
           default:
             return null;
         }
@@ -4605,16 +4645,12 @@ public class Lucene {
     }
 
     // isset id assignments
-    private static final int __SHARDINDEX_ISSET_ID = 0;
-    private byte __isset_bitfield = 0;
     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);
-      tmpMap.put(_Fields.TABLE, new org.apache.thrift.meta_data.FieldMetaData("table", org.apache.thrift.TFieldRequirementType.DEFAULT, 
-          new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
-      tmpMap.put(_Fields.SHARD_INDEX, new org.apache.thrift.meta_data.FieldMetaData("shardIndex", org.apache.thrift.TFieldRequirementType.DEFAULT, 
-          new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32)));
-      tmpMap.put(_Fields.DOCUMENT, new org.apache.thrift.meta_data.FieldMetaData("document", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+      tmpMap.put(_Fields.OPTIONS, new org.apache.thrift.meta_data.FieldMetaData("options", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+          new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, MutateOptions.class)));
+      tmpMap.put(_Fields.DOCUMENTS, new org.apache.thrift.meta_data.FieldMetaData("documents", org.apache.thrift.TFieldRequirementType.DEFAULT, 
           new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST, 
               new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, Document.class))));
       metaDataMap = Collections.unmodifiableMap(tmpMap);
@@ -4625,32 +4661,27 @@ public class Lucene {
     }
 
     public addDocuments_args(
-      String table,
-      int shardIndex,
-      List<Document> document)
+      MutateOptions options,
+      List<Document> documents)
     {
       this();
-      this.table = table;
-      this.shardIndex = shardIndex;
-      setShardIndexIsSet(true);
-      this.document = document;
+      this.options = options;
+      this.documents = documents;
     }
 
     /**
      * Performs a deep copy on <i>other</i>.
      */
     public addDocuments_args(addDocuments_args other) {
-      __isset_bitfield = other.__isset_bitfield;
-      if (other.isSetTable()) {
-        this.table = other.table;
+      if (other.isSetOptions()) {
+        this.options = new MutateOptions(other.options);
       }
-      this.shardIndex = other.shardIndex;
-      if (other.isSetDocument()) {
-        List<Document> __this__document = new ArrayList<Document>();
-        for (Document other_element : other.document) {
-          __this__document.add(new Document(other_element));
+      if (other.isSetDocuments()) {
+        List<Document> __this__documents = new ArrayList<Document>();
+        for (Document other_element : other.documents) {
+          __this__documents.add(new Document(other_element));
         }
-        this.document = __this__document;
+        this.documents = __this__documents;
       }
     }
 
@@ -4660,121 +4691,88 @@ public class Lucene {
 
     @Override
     public void clear() {
-      this.table = null;
-      setShardIndexIsSet(false);
-      this.shardIndex = 0;
-      this.document = null;
+      this.options = null;
+      this.documents = null;
     }
 
-    public String getTable() {
-      return this.table;
+    public MutateOptions getOptions() {
+      return this.options;
     }
 
-    public addDocuments_args setTable(String table) {
-      this.table = table;
+    public addDocuments_args setOptions(MutateOptions options) {
+      this.options = options;
       return this;
     }
 
-    public void unsetTable() {
-      this.table = null;
+    public void unsetOptions() {
+      this.options = null;
     }
 
-    /** Returns true if field table is set (has been assigned a value) and false otherwise */
-    public boolean isSetTable() {
-      return this.table != null;
+    /** Returns true if field options is set (has been assigned a value) and false otherwise */
+    public boolean isSetOptions() {
+      return this.options != null;
     }
 
-    public void setTableIsSet(boolean value) {
+    public void setOptionsIsSet(boolean value) {
       if (!value) {
-        this.table = null;
+        this.options = null;
       }
     }
 
-    public int getShardIndex() {
-      return this.shardIndex;
-    }
-
-    public addDocuments_args setShardIndex(int shardIndex) {
-      this.shardIndex = shardIndex;
-      setShardIndexIsSet(true);
-      return this;
-    }
-
-    public void unsetShardIndex() {
-      __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __SHARDINDEX_ISSET_ID);
-    }
-
-    /** Returns true if field shardIndex is set (has been assigned a value) and false otherwise */
-    public boolean isSetShardIndex() {
-      return EncodingUtils.testBit(__isset_bitfield, __SHARDINDEX_ISSET_ID);
-    }
-
-    public void setShardIndexIsSet(boolean value) {
-      __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __SHARDINDEX_ISSET_ID, value);
-    }
-
-    public int getDocumentSize() {
-      return (this.document == null) ? 0 : this.document.size();
+    public int getDocumentsSize() {
+      return (this.documents == null) ? 0 : this.documents.size();
     }
 
-    public java.util.Iterator<Document> getDocumentIterator() {
-      return (this.document == null) ? null : this.document.iterator();
+    public java.util.Iterator<Document> getDocumentsIterator() {
+      return (this.documents == null) ? null : this.documents.iterator();
     }
 
-    public void addToDocument(Document elem) {
-      if (this.document == null) {
-        this.document = new ArrayList<Document>();
+    public void addToDocuments(Document elem) {
+      if (this.documents == null) {
+        this.documents = new ArrayList<Document>();
       }
-      this.document.add(elem);
+      this.documents.add(elem);
     }
 
-    public List<Document> getDocument() {
-      return this.document;
+    public List<Document> getDocuments() {
+      return this.documents;
     }
 
-    public addDocuments_args setDocument(List<Document> document) {
-      this.document = document;
+    public addDocuments_args setDocuments(List<Document> documents) {
+      this.documents = documents;
       return this;
     }
 
-    public void unsetDocument() {
-      this.document = null;
+    public void unsetDocuments() {
+      this.documents = null;
     }
 
-    /** Returns true if field document is set (has been assigned a value) and false otherwise */
-    public boolean isSetDocument() {
-      return this.document != null;
+    /** Returns true if field documents is set (has been assigned a value) and false otherwise */
+    public boolean isSetDocuments() {
+      return this.documents != null;
     }
 
-    public void setDocumentIsSet(boolean value) {
+    public void setDocumentsIsSet(boolean value) {
       if (!value) {
-        this.document = null;
+        this.documents = null;
       }
     }
 
     public void setFieldValue(_Fields field, Object value) {
       switch (field) {
-      case TABLE:
-        if (value == null) {
-          unsetTable();
-        } else {
-          setTable((String)value);
-        }
-        break;
-
-      case SHARD_INDEX:
+      case OPTIONS:
         if (value == null) {
-          unsetShardIndex();
+          unsetOptions();
         } else {
-          setShardIndex((Integer)value);
+          setOptions((MutateOptions)value);
         }
         break;
 
-      case DOCUMENT:
+      case DOCUMENTS:
         if (value == null) {
-          unsetDocument();
+          unsetDocuments();
         } else {
-          setDocument((List<Document>)value);
+          setDocuments((List<Document>)value);
         }
         break;
 
@@ -4783,14 +4781,11 @@ public class Lucene {
 
     public Object getFieldValue(_Fields field) {
       switch (field) {
-      case TABLE:
-        return getTable();
-
-      case SHARD_INDEX:
-        return Integer.valueOf(getShardIndex());
+      case OPTIONS:
+        return getOptions();
 
-      case DOCUMENT:
-        return getDocument();
+      case DOCUMENTS:
+        return getDocuments();
 
       }
       throw new IllegalStateException();
@@ -4803,12 +4798,10 @@ public class Lucene {
       }
 
       switch (field) {
-      case TABLE:
-        return isSetTable();
-      case SHARD_INDEX:
-        return isSetShardIndex();
-      case DOCUMENT:
-        return isSetDocument();
+      case OPTIONS:
+        return isSetOptions();
+      case DOCUMENTS:
+        return isSetDocuments();
       }
       throw new IllegalStateException();
     }
@@ -4826,30 +4819,21 @@ public class Lucene {
       if (that == null)
         return false;
 
-      boolean this_present_table = true && this.isSetTable();
-      boolean that_present_table = true && that.isSetTable();
-      if (this_present_table || that_present_table) {
-        if (!(this_present_table && that_present_table))
-          return false;
-        if (!this.table.equals(that.table))
-          return false;
-      }
-
-      boolean this_present_shardIndex = true;
-      boolean that_present_shardIndex = true;
-      if (this_present_shardIndex || that_present_shardIndex) {
-        if (!(this_present_shardIndex && that_present_shardIndex))
+      boolean this_present_options = true && this.isSetOptions();
+      boolean that_present_options = true && that.isSetOptions();
+      if (this_present_options || that_present_options) {
+        if (!(this_present_options && that_present_options))
           return false;
-        if (this.shardIndex != that.shardIndex)
+        if (!this.options.equals(that.options))
           return false;
       }
 
-      boolean this_present_document = true && this.isSetDocument();
-      boolean that_present_document = true && that.isSetDocument();
-      if (this_present_document || that_present_document) {
-        if (!(this_present_document && that_present_document))
+      boolean this_present_documents = true && this.isSetDocuments();
+      boolean that_present_documents = true && that.isSetDocuments();
+      if (this_present_documents || that_present_documents) {
+        if (!(this_present_documents && that_present_documents))
           return false;
-        if (!this.document.equals(that.document))
+        if (!this.documents.equals(that.documents))
           return false;
       }
 
@@ -4869,32 +4853,22 @@ public class Lucene {
       int lastComparison = 0;
       addDocuments_args typedOther = (addDocuments_args)other;
 
-      lastComparison = Boolean.valueOf(isSetTable()).compareTo(typedOther.isSetTable());
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-      if (isSetTable()) {
-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.table, typedOther.table);
-        if (lastComparison != 0) {
-          return lastComparison;
-        }
-      }
-      lastComparison = Boolean.valueOf(isSetShardIndex()).compareTo(typedOther.isSetShardIndex());
+      lastComparison = Boolean.valueOf(isSetOptions()).compareTo(typedOther.isSetOptions());
       if (lastComparison != 0) {
         return lastComparison;
       }
-      if (isSetShardIndex()) {
-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.shardIndex, typedOther.shardIndex);
+      if (isSetOptions()) {
+        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.options, typedOther.options);
         if (lastComparison != 0) {
           return lastComparison;
         }
       }
-      lastComparison = Boolean.valueOf(isSetDocument()).compareTo(typedOther.isSetDocument());
+      lastComparison = Boolean.valueOf(isSetDocuments()).compareTo(typedOther.isSetDocuments());
       if (lastComparison != 0) {
         return lastComparison;
       }
-      if (isSetDocument()) {
-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.document, typedOther.document);
+      if (isSetDocuments()) {
+        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.documents, typedOther.documents);
         if (lastComparison != 0) {
           return lastComparison;
         }
@@ -4919,23 +4893,19 @@ public class Lucene {
       StringBuilder sb = new StringBuilder("addDocuments_args(");
       boolean first = true;
 
-      sb.append("table:");
-      if (this.table == null) {
+      sb.append("options:");
+      if (this.options == null) {
         sb.append("null");
       } else {
-        sb.append(this.table);
+        sb.append(this.options);
       }
       first = false;
       if (!first) sb.append(", ");
-      sb.append("shardIndex:");
-      sb.append(this.shardIndex);
-      first = false;
-      if (!first) sb.append(", ");
-      sb.append("document:");
-      if (this.document == null) {
+      sb.append("documents:");
+      if (this.documents == null) {
         sb.append("null");
       } else {
-        sb.append(this.document);
+        sb.append(this.documents);
       }
       first = false;
       sb.append(")");
@@ -4945,6 +4915,9 @@ public class Lucene {
     public void validate() throws org.apache.thrift.TException {
       // check for required fields
       // check for sub-struct validity
+      if (options != null) {
+        options.validate();
+      }
     }
 
     private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
@@ -4957,8 +4930,6 @@ public class Lucene {
 
     private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
       try {
-        // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor.
-        __isset_bitfield = 0;
         read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
       } catch (org.apache.thrift.TException te) {
         throw new java.io.IOException(te);
@@ -4983,37 +4954,30 @@ public class Lucene {
             break;
           }
           switch (schemeField.id) {
-            case 1: // TABLE
-              if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-                struct.table = iprot.readString();
-                struct.setTableIsSet(true);
-              } else { 
-                org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-              }
-              break;
-            case 2: // SHARD_INDEX
-              if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
-                struct.shardIndex = iprot.readI32();
-                struct.setShardIndexIsSet(true);
+            case 1: // OPTIONS
+              if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+                struct.options = new MutateOptions();
+                struct.options.read(iprot);
+                struct.setOptionsIsSet(true);
               } else { 
                 org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
               }
               break;
-            case 3: // DOCUMENT
+            case 2: // DOCUMENTS
               if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
                 {
-                  org.apache.thrift.protocol.TList _list348 = iprot.readListBegin();
-                  struct.document = new ArrayList<Document>(_list348.size);
-                  for (int _i349 = 0; _i349 < _list348.size; ++_i349)
+                  org.apache.thrift.protocol.TList _list356 = iprot.readListBegin();
+                  struct.documents = new ArrayList<Document>(_list356.size);
+                  for (int _i357 = 0; _i357 < _list356.size; ++_i357)
                   {
-                    Document _elem350; // required
-                    _elem350 = new Document();
-                    _elem350.read(iprot);
-                    struct.document.add(_elem350);
+                    Document _elem358; // required
+                    _elem358 = new Document();
+                    _elem358.read(iprot);
+                    struct.documents.add(_elem358);
                   }
                   iprot.readListEnd();
                 }
-                struct.setDocumentIsSet(true);
+                struct.setDocumentsIsSet(true);
               } else { 
                 org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
               }
@@ -5033,21 +4997,18 @@ public class Lucene {
         struct.validate();
 
         oprot.writeStructBegin(STRUCT_DESC);
-        if (struct.table != null) {
-          oprot.writeFieldBegin(TABLE_FIELD_DESC);
-          oprot.writeString(struct.table);
+        if (struct.options != null) {
+          oprot.writeFieldBegin(OPTIONS_FIELD_DESC);
+          struct.options.write(oprot);
           oprot.writeFieldEnd();
         }
-        oprot.writeFieldBegin(SHARD_INDEX_FIELD_DESC);
-        oprot.writeI32(struct.shardIndex);
-        oprot.writeFieldEnd();
-        if (struct.document != null) {
-          oprot.writeFieldBegin(DOCUMENT_FIELD_DESC);
+        if (struct.documents != null) {
+          oprot.writeFieldBegin(DOCUMENTS_FIELD_DESC);
           {
-            oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.document.size()));
-            for (Document _iter351 : struct.document)
+            oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.documents.size()));
+            for (Document _iter359 : struct.documents)
             {
-              _iter351.write(oprot);
+              _iter359.write(oprot);
             }
             oprot.writeListEnd();
           }
@@ -5071,28 +5032,22 @@ public class Lucene {
       public void write(org.apache.thrift.protocol.TProtocol prot, addDocuments_args struct) throws org.apache.thrift.TException {
         TTupleProtocol oprot = (TTupleProtocol) prot;
         BitSet optionals = new BitSet();
-        if (struct.isSetTable()) {
+        if (struct.isSetOptions()) {
           optionals.set(0);
         }
-        if (struct.isSetShardIndex()) {
+        if (struct.isSetDocuments()) {
           optionals.set(1);
         }
-        if (struct.isSetDocument()) {
-          optionals.set(2);
-        }
-        oprot.writeBitSet(optionals, 3);
-        if (struct.isSetTable()) {
-          oprot.writeString(struct.table);
-        }
-        if (struct.isSetShardIndex()) {
-          oprot.writeI32(struct.shardIndex);
+        oprot.writeBitSet(optionals, 2);
+        if (struct.isSetOptions()) {
+          struct.options.write(oprot);
         }
-        if (struct.isSetDocument()) {
+        if (struct.isSetDocuments()) {
           {
-            oprot.writeI32(struct.document.size());
-            for (Document _iter352 : struct.document)
+            oprot.writeI32(struct.documents.size());
+            for (Document _iter360 : struct.documents)
             {
-              _iter352.write(oprot);
+              _iter360.write(oprot);
             }
           }
         }
@@ -5101,28 +5056,25 @@ public class Lucene {
       @Override
       public void read(org.apache.thrift.protocol.TProtocol prot, addDocuments_args struct) throws org.apache.thrift.TException {
         TTupleProtocol iprot = (TTupleProtocol) prot;
-        BitSet incoming = iprot.readBitSet(3);
+        BitSet incoming = iprot.readBitSet(2);
         if (incoming.get(0)) {
-          struct.table = iprot.readString();
-          struct.setTableIsSet(true);
+          struct.options = new MutateOptions();
+          struct.options.read(iprot);
+          struct.setOptionsIsSet(true);
         }
         if (incoming.get(1)) {
-          struct.shardIndex = iprot.readI32();
-          struct.setShardIndexIsSet(true);
-        }
-        if (incoming.get(2)) {
           {
-            org.apache.thrift.protocol.TList _list353 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
-            struct.document = new ArrayList<Document>(_list353.size);
-            for (int _i354 = 0; _i354 < _list353.size; ++_i354)
+            org.apache.thrift.protocol.TList _list361 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+            struct.documents = new ArrayList<Document>(_list361.size);
+            for (int _i362 = 0; _i362 < _list361.size; ++_i362)
             {
-              Document _elem355; // required
-              _elem355 = new Document();
-              _elem355.read(iprot);
-              struct.document.add(_elem355);
+              Document _elem363; // required
+              _elem363 = new Document();
+              _elem363.read(iprot);
+              struct.documents.add(_elem363);
             }
           }
-          struct.setDocumentIsSet(true);
+          struct.setDocumentsIsSet(true);
         }
       }
     }
@@ -5488,9 +5440,8 @@ public class Lucene {
   public static class deleteDocumentsByQueries_args implements org.apache.thrift.TBase<deleteDocumentsByQueries_args, deleteDocumentsByQueries_args._Fields>, java.io.Serializable, Cloneable   {
     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("deleteDocumentsByQueries_args");
 
-    private static final org.apache.thrift.protocol.TField TABLE_FIELD_DESC = new org.apache.thrift.protocol.TField("table", org.apache.thrift.protocol.TType.STRING, (short)1);
-    private static final org.apache.thrift.protocol.TField SHARD_INDEX_FIELD_DESC = new org.apache.thrift.protocol.TField("shardIndex", org.apache.thrift.protocol.TType.I32, (short)2);
-    private static final org.apache.thrift.protocol.TField QUERIES_FIELD_DESC = new org.apache.thrift.protocol.TField("queries", org.apache.thrift.protocol.TType.LIST, (short)3);
+    private static final org.apache.thrift.protocol.TField OPTIONS_FIELD_DESC = new org.apache.thrift.protocol.TField("options", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+    private static final org.apache.thrift.protocol.TField QUERIES_FIELD_DESC = new org.apache.thrift.protocol.TField("queries", org.apache.thrift.protocol.TType.LIST, (short)2);
 
     private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
     static {
@@ -5498,15 +5449,13 @@ public class Lucene {
       schemes.put(TupleScheme.class, new deleteDocumentsByQueries_argsTupleSchemeFactory());
     }
 
-    public String table; // required
-    public int shardIndex; // required
-    public List<QueryArgs> queries; // required
+    public MutateOptions options; // required
+    public List<ByteBuffer> queries; // required
 
     /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
     public enum _Fields implements org.apache.thrift.TFieldIdEnum {
-      TABLE((short)1, "table"),
-      SHARD_INDEX((short)2, "shardIndex"),
-      QUERIES((short)3, "queries");
+      OPTIONS((short)1, "options"),
+      QUERIES((short)2, "queries");
 
       private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
 
@@ -5521,11 +5470,9 @@ public class Lucene {
        */
       public static _Fields findByThriftId(int fieldId) {
         switch(fieldId) {
-          case 1: // TABLE
-            return TABLE;
-          case 2: // SHARD_INDEX
-            return SHARD_INDEX;
-          case 3: // QUERIES
+          case 1: // OPTIONS
+            return OPTIONS;
+          case 2: // QUERIES
             return QUERIES;
           default:
             return null;
@@ -5567,18 +5514,14 @@ public class Lucene {
     }
 
     // isset id assignments
-    private static final int __SHARDINDEX_ISSET_ID = 0;
-    private byte __isset_bitfield = 0;
     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);
-      tmpMap.put(_Fields.TABLE, new org.apache.thrift.meta_data.FieldMetaData("table", org.apache.thrift.TFieldRequirementType.DEFAULT, 
-          new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
-      tmpMap.put(_Fields.SHARD_INDEX, new org.apache.thrift.meta_data.FieldMetaData("shardIndex", org.apache.thrift.TFieldRequirementType.DEFAULT, 
-          new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32)));
+      tmpMap.put(_Fields.OPTIONS, new org.apache.thrift.meta_data.FieldMetaData("options", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+          new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, MutateOptions.class)));
       tmpMap.put(_Fields.QUERIES, new org.apache.thrift.meta_data.FieldMetaData("queries", org.apache.thrift.TFieldRequirementType.DEFAULT, 
           new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST, 
-              new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, QueryArgs.class))));
+              new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING              , true))));
       metaDataMap = Collections.unmodifiableMap(tmpMap);
       org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(deleteDocumentsByQueries_args.class, metaDataMap);
     }
@@ -5587,14 +5530,11 @@ public class Lucene {
     }
 
     public deleteDocumentsByQueries_args(
-      String table,
-      int shardIndex,
-      List<QueryArgs> queries)
+      MutateOptions options,
+      List<ByteBuffer> queries)
     {
       this();
-      this.table = table;
-      this.shardIndex = shardIndex;
-      setShardIndexIsSet(true);
+      this.options = options;
       this.queries = queries;
     }
 
@@ -5602,15 +5542,15 @@ public class Lucene {
      * Performs a deep copy on <i>other</i>.
      */
     public deleteDocumentsByQueries_args(deleteDocumentsByQueries_args other) {
-      __isset_bitfield = other.__isset_bitfield;
-      if (other.isSetTable()) {
-        this.table = other.table;
+      if (other.isSetOptions()) {
+        this.options = new MutateOptions(other.options);
       }
-      this.shardIndex = other.shardIndex;
       if (other.isSetQueries()) {
-        List<QueryArgs> __this__queries = new ArrayList<QueryArgs>();
-        for (QueryArgs other_element : other.queries) {
-          __this__queries.add(new QueryArgs(other_element));
+        List<ByteBuffer> __this__queries = new ArrayList<ByteBuffer>();
+        for (ByteBuffer other_element : other.queries) {
+          ByteBuffer temp_binary_element = org.apache.thrift.TBaseHelper.copyBinary(other_element);
+;
+          __this__queries.add(temp_binary_element);
         }
         this.queries = __this__queries;
       }
@@ -5622,79 +5562,54 @@ public class Lucene {
 
     @Override
     public void clear() {
-      this.table = null;
-      setShardIndexIsSet(false);
-      this.shardIndex = 0;
+      this.options = null;
       this.queries = null;
     }
 
-    public String getTable() {
-      return this.table;
+    public MutateOptions getOptions() {
+      return this.options;
     }
 
-    public deleteDocumentsByQueries_args setTable(String table) {
-      this.table = table;
+    public deleteDocumentsByQueries_args setOptions(MutateOptions options) {
+      this.options = options;
       return this;
     }
 
-    public void unsetTable() {
-      this.table = null;
+    public void unsetOptions() {
+      this.options = null;
     }
 
-    /** Returns true if field table is set (has been assigned a value) and false otherwise */
-    public boolean isSetTable() {
-      return this.table != null;
+    /** Returns true if field options is set (has been assigned a value) and false otherwise */
+    public boolean isSetOptions() {
+      return this.options != null;
     }
 
-    public void setTableIsSet(boolean value) {
+    public void setOptionsIsSet(boolean value) {
       if (!value) {
-        this.table = null;
+        this.options = null;
       }
     }
 
-    public int getShardIndex() {
-      return this.shardIndex;
-    }
-
-    public deleteDocumentsByQueries_args setShardIndex(int shardIndex) {
-      this.shardIndex = shardIndex;
-      setShardIndexIsSet(true);
-      return this;
-    }
-
-    public void unsetShardIndex() {
-      __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __SHARDINDEX_ISSET_ID);
-    }
-
-    /** Returns true if field shardIndex is set (has been assigned a value) and false otherwise */
-    public boolean isSetShardIndex() {
-      return EncodingUtils.testBit(__isset_bitfield, __SHARDINDEX_ISSET_ID);
-    }
-
-    public void setShardIndexIsSet(boolean value) {
-      __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __SHARDINDEX_ISSET_ID, value);
-    }
-
     public int getQueriesSize() {
       return (this.queries == null) ? 0 : this.queries.size();
     }
 
-    public java.util.Iterator<QueryArgs> getQueriesIterator() {
+    public java.util.Iterator<ByteBuffer> getQueriesIterator() {
       return (this.queries == null) ? null : this.queries.iterator();
     }
 
-    public void addToQueries(QueryArgs elem) {
+    public void addToQueries(ByteBuffer elem) {
       if (this.queries == null) {
-        this.queries = new ArrayList<QueryArgs>();
+        this.queries = new ArrayList<ByteBuffer>();
       }
       this.queries.add(elem);
     }
 
-    public List<QueryArgs> getQueries() {
+    public List<ByteBuffer> getQueries() {
       return this.queries;
     }
 
-    public deleteDocumentsByQueries_args setQueries(List<QueryArgs> queries) {
+    public deleteDocumentsByQueries_args setQueries(List<ByteBuffer> queries) {
       this.queries = queries;
       return this;
     }
@@ -5716,19 +5631,11 @@ public class Lucene {
 
     public void setFieldValue(_Fields field, Object value) {
       switch (field) {
-      case TABLE:
-        if (value == null) {
-          unsetTable();
-        } else {
-          setTable((String)value);
-        }
-        break;
-
-      case SHARD_INDEX:
+      case OPTIONS:
         if (value == null) {
-          unsetShardIndex();
+          unsetOptions();
         } else {
-          setShardIndex((Integer)value);
+          setOptions((MutateOptions)value);
         }
         break;
 
@@ -5736,7 +5643,7 @@ public class Lucene {
         if (value == null) {
           unsetQueries();
         } else {
-          setQueries((List<QueryArgs>)value);
+          setQueries((List<ByteBuffer>)value);
         }
         break;
 
@@ -5745,11 +5652,8 @@ public class Lucene {
 
     public Object getFieldValue(_Fields field) {
       switch (field) {
-      case TABLE:
-        return getTable();
-
-      case SHARD_INDEX:
-        return Integer.valueOf(getShardIndex());
+      case OPTIONS:
+        return getOptions();
 
       case QUERIES:
         return getQueries();
@@ -5765,10 +5669,8 @@ public class Lucene {
       }
 
       switch (field) {
-      case TABLE:
-        return isSetTable();
-      case SHARD_INDEX:
-        return isSetShardIndex();
+      case OPTIONS:
+        return isSetOptions();
       case QUERIES:
         return isSetQueries();
       }
@@ -5788,21 +5690,12 @@ public class Lucene {
       if (that == null)
         return false;
 
-      boolean this_present_table = true && this.isSetTable();
-      boolean that_present_table = true && that.isSetTable();
-      if (this_present_table || that_present_table) {
-        if (!(this_present_table && that_present_table))
-          return false;
-        if (!this.table.equals(that.table))
-          return false;
-      }
-
-      boolean this_present_shardIndex = true;
-      boolean that_present_shardIndex = true;
-      if (this_present_shardIndex || that_present_shardIndex) {
-        if (!(this_present_shardIndex && that_present_shardIndex))
+      boolean this_present_options = true && this.isSetOptions();
+      boolean that_present_options = true && that.isSetOptions();
+      if (this_present_options || that_present_options) {
+        if (!(this_present_options && that_present_options))
           return false;
-        if (this.shardIndex != that.shardIndex)
+        if (!this.options.equals(that.options))
           return false;
       }
 
@@ -5831,22 +5724,12 @@ public class Lucene {
       int lastComparison = 0;
       deleteDocumentsByQueries_args typedOther = (deleteDocumentsByQueries_args)other;
 
-      lastComparison = Boolean.valueOf(isSetTable()).compareTo(typedOther.isSetTable());
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-      if (isSetTable()) {
-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.table, typedOther.table);
-        if (lastComparison != 0) {
-          return lastComparison;
-        }
-      }
-      lastComparison = Boolean.valueOf(isSetShardIndex()).compareTo(typedOther.isSetShardIndex());
+      lastComparison = Boolean.valueOf(isSetOptions()).compareTo(typedOther.isSetOptions());
       if (lastComparison != 0) {
         return lastComparison;
       }
-      if (isSetShardIndex()) {
-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.shardIndex, typedOther.shardIndex);
+      if (isSetOptions()) {
+        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.options, typedOther.options);
         if (lastComparison != 0) {
           return lastComparison;
         }
@@ -5881,18 +5764,14 @@ public class Lucene {
       StringBuilder sb = new StringBuilder("deleteDocumentsByQueries_args(");
       boolean first = true;
 
-      sb.append("table:");
-      if (this.table == null) {
+      sb.append("options:");
+      if (this.options == null) {
         sb.append("null");
       } else {
-        sb.append(this.table);
+        sb.append(this.options);
       }
       first = false;
       if (!first) sb.append(", ");
-      sb.append("shardIndex:");
-      sb.append(this.shardIndex);
-      first = false;
-      if (!first) sb.append(", ");
       sb.append("queries:");
       if (this.queries == null) {
         sb.append("null");
@@ -5907,6 +5786,9 @@ public class Lucene {
     public void validate() throws org.apache.thrift.TException {
       // check for required fields
       // check for sub-struct validity
+      if (options != null) {
+        options.validate();
+      }
     }
 
     private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
@@ -5919,8 +5801,6 @@ public class Lucene {
 
     private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
       try {
-        // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor.
-        __isset_bitfield = 0;
         read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
       } catch (org.apache.thrift.TException te) {
         throw new java.io.IOException(te);
@@ -5945,33 +5825,25 @@ public class Lucene {
             break;
           }
           switch (schemeField.id) {
-            case 1: // TABLE
-              if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-                struct.table = iprot.readString();
-                struct.setTableIsSet(true);
-              } else { 
-                org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-              }
-              break;
-            case 2: // SHARD_INDEX
-              if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
-                struct.shardIndex = iprot.readI32();
-                struct.setShardIndexIsSet(true);
+            case 1: // OPTIONS
+              if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+                struct.options = new MutateOptions();
+                struct.options.read(iprot);
+                struct.setOptionsIsSet(true);
               } else { 
                 org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
               }
               break;
-            case 3: // QUERIES
+            case 2: // QUERIES
               if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
                 {
-                  org.apache.thrift.protocol.TList _list356 = iprot.readListBegin();
-                  struct.queries = new ArrayList<QueryArgs>(_list356.size);
-                  for (int _i357 = 0; _i357 < _list356.size; ++_i357)
+                  org.apache.thrift.protocol.TList _list364 = iprot.readListBegin();
+                  struct.queries = new ArrayList<ByteBuffer>(_list364.size);
+                  for (int _i365 = 0; _i365 < _list364.size; ++_i365)
                   {
-                    QueryArgs _elem358; // required
-                    _elem358 = new QueryArgs();
-                    _elem358.read(iprot);
-                    struct.queries.add(_elem358);
+                    ByteBuffer _elem366; // required
+                    _elem366 = iprot.readBinary();
+                    struct.queries.add(_elem366);
                   }
                   iprot.readListEnd();
                 }
@@ -5995,21 +5867,18 @@ public class Lucene {
         struct.validate();
 
         oprot.writeStructBegin(STRUCT_DESC);
-        if (struct.table != null) {
-          oprot.writeFieldBegin(TABLE_FIELD_DESC);
-          oprot.writeString(struct.table);
+        if (struct.options != null) {
+          oprot.writeFieldBegin(OPTIONS_FIELD_DESC);
+          struct.options.write(oprot);
           oprot.writeFieldEnd();
         }
-        oprot.writeFieldBegin(SHARD_INDEX_FIELD_DESC);
-        oprot.writeI32(struct.shardIndex);
-        oprot.writeFieldEnd();
         if (struct.queries != null) {
           oprot.writeFieldBegin(QUERIES_FIELD_DESC);
           {
-            oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.queries.size()));
-            for (QueryArgs _iter359 : struct.queries)
+            oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRING, struct.queries.size()));
+            for (ByteBuffer _iter367 : struct.queries)
             {
-              _iter359.write(oprot);
+              oprot.writeBinary(_iter367);
             }
             oprot.writeListEnd();
           }
@@ -6033,28 +5902,22 @@ public class Lucene {
       public void write(org.apache.thrift.protocol.TProtocol prot, deleteDocumentsByQueries_args struct) throws org.apache.thrift.TException {
         TTupleProtocol oprot = (TTupleProtocol) prot;
         BitSet optionals = new BitSet();
-        if (struct.isSetTable()) {
+        if (struct.isSetOptions()) {
           optionals.set(0);
         }
-        if (struct.isSetShardIndex()) {
-          optionals.set(1);
-        }
         if (struct.isSetQueries()) {
-          optionals.set(2);
-        }
-        oprot.writeBitSet(optionals, 3);
-        if (struct.isSetTable()) {
-          oprot.writeString(struct.table);
+          optionals.set(1);
         }
-        if (struct.isSetShardIndex()) {
-          oprot.writeI32(struct.shardIndex);
+        oprot.writeBitSet(optionals, 2);
+        if (struct.isSetOptions()) {
+          struct.options.write(oprot);
         }
         if (struct.isSetQueries()) {
           {
             oprot.writeI32(struct.queries.size());
-            for (QueryArgs _iter360 : struct.queries)
+            for (ByteBuffer _iter368 : struct.queries)
             {
-              _iter360.write(oprot);
+              oprot.writeBinary(_iter368);
             }
           }
         }
@@ -6063,25 +5926,21 @@ public class Lucene {
       @Override
       public void read(org.apache.thrift.protocol.TProtocol prot, deleteDocumentsByQueries_args struct) throws org.apache.thrift.TException {
         TTupleProtocol iprot = (TTupleProtocol) prot;
-        BitSet incoming = iprot.readBitSet(3);
+        BitSet incoming = iprot.readBitSet(2);
         if (incoming.get(0)) {
-          struct.table = iprot.readString();
-          struct.setTableIsSet(true);
+          struct.options = new MutateOptions();
+          struct.options.read(iprot);
+          struct.setOptionsIsSet(true);
         }
         if (incoming.get(1)) {
-          struct.shardIndex = iprot.readI32();
-          struct.setShardIndexIsSet(true);
-        }
-        if (incoming.get(2)) {
           {
-            org.apache.thrift.protocol.TList _list361 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
-            struct.queries = new ArrayList<QueryArgs>(_list361.size);
-            for (int _i362 = 0; _i362 < _list361.size; ++_i362)
+            org.apache.thrift.protocol.TList _list369 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRING, iprot.readI32());
+            struct.queries = new ArrayList<ByteBuffer>(_list369.size);
+            for (int _i370 = 0; _i370 < _list369.size; ++_i370)
             {
-              QueryArgs _elem363; // required
-              _elem363 = new QueryArgs();
-              _elem363.read(iprot);
-              struct.queries.add(_elem363);
+              ByteBuffer _elem371; // required
+              _elem371 = iprot.readBinary();
+              struct.queries.add(_elem371);
             }
           }
           struct.setQueriesIsSet(true);
@@ -6450,9 +6309,8 @@ public class Lucene {
   public static class deleteDocuments_args implements org.apache.thrift.TBase<deleteDocuments_args, deleteDocuments_args._Fields>, java.io.Serializable, Cloneable   {
     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("deleteDocuments_args");
 
-    private static final org.apache.thrift.protocol.TField TABLE_FIELD_DESC = new org.apache.thrift.protocol.TField("table", org.apache.thrift.protocol.TType.STRING, (short)1);
-    private static final org.apache.thrift.protocol.TField SHARD_INDEX_FIELD_DESC = new org.apache.thrift.protocol.TField("shardIndex", org.apache.thrift.protocol.TType.I32, (short)2);
-    private static final org.apache.thrift.protocol.TField TERMS_FIELD_DESC = new org.apache.thrift.protocol.TField("terms", org.apache.thrift.protocol.TType.LIST, (short)3);
+    private static final org.apache.thrift.protocol.TField OPTIONS_FIELD_DESC = new org.apache.thrift.protocol.TField("options", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+    private static final org.apache.thrift.protocol.TField TERMS_FIELD_DESC = new org.apache.thrift.protocol.TField("terms", org.apache.thrift.protocol.TType.LIST, (short)2);
 
     private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
     static {
@@ -6460,15 +6318,13 @@ public class Lucene {
       schemes.put(TupleScheme.class, new deleteDocuments_argsTupleSchemeFactory());
     }
 
-    public String table; // required
-    public int shardIndex; // required
+    public MutateOptions options; // required
     public List<Term> terms; // required
 
     /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
     public enum _Fields implements org.apache.thrift.TFieldIdEnum {
-      TABLE((short)1, "table"),
-      SHARD_INDEX((short)2, "shardIndex"),
-      TERMS((short)3, "terms");
+      OPTIONS((short)1, "options"),
+      TERMS((short)2, "terms");
 
       private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
 
@@ -6483,11 +6339,9 @@ public class Lucene {
        */
       public static _Fields findByThriftId(int fieldId) {
         switch(fieldId) {
-          case 1: // TABLE
-            return TABLE;
-          case 2: // SHARD_INDEX
-            return SHARD_INDEX;
-          case 3: // TERMS
+          case 1: // OPTIONS
+            return OPTIONS;
+          case 2: // TERMS
             return TERMS;
           default:
             return null;
@@ -6529,15 +6383,11 @@ public class Lucene {
     }
 
     // isset id assignments
-    private static final int __SHARDINDEX_ISSET_ID = 0;
-    private byte __isset_bitfield = 0;
     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);
-      tmpMap.put(_Fields.TABLE, new org.apache.thrift.meta_data.FieldMetaData("table", org.apache.thrift.TFieldRequirementType.DEFAULT, 
-          new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
-      tmpMap.put(_Fields.SHARD_INDEX, new org.apache.thrift.meta_data.FieldMetaData("shardIndex", org.apache.thrift.TFieldRequirementType.DEFAULT, 
-          new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32)));
+      tmpMap.put(_Fields.OPTIONS, new org.apache.thrift.meta_data.FieldMetaData("options", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+          new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, MutateOptions.class)));
       tmpMap.put(_Fields.TERMS, new org.apache.thrift.meta_data.FieldMetaData("terms", org.apache.thrift.TFieldRequirementType.DEFAULT, 
           new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST, 
               new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, Term.class))));
@@ -6549,14 +6399,11 @@ public class Lucene {
     }
 
     public deleteDocuments_args(
-      String table,
-      int shardIndex,
+      MutateOptions options,
       List<Term> terms)
     {
       this();
-      this.table = table;
-      this.shardIndex = shardIndex;
-      setShardIndexIsSet(true);
+      this.options = options;
       this.terms = terms;
     }
 
@@ -6564,11 +6411,9 @@ public class Lucene {
      * Performs a deep copy on <i>other</i>.
      */
     public deleteDocuments_args(deleteDocuments_args other) {
-      __isset_bitfield = other.__isset_bitfield;
-      if (other.isSetTable()) {
-        this.table = other.table;
+      if (other.isSetOptions()) {
+        this.options = new MutateOptions(other.options);
       }
-      this.shardIndex = other.shardIndex;
       if (other.isSetTerms()) {
         List<Term> __this__terms = new ArrayList<Term>();
         for (Term other_element : other.terms) {
@@ -6584,59 +6429,34 @@ public class Lucene {
 
     @Override
     public void clear() {
-      this.table = null;
-      setShardIndexIsSet(false);
-      this.shardIndex = 0;
+      this.options = null;
       this.terms = null;
     }
 
-    public String getTable() {
-      return this.table;
+    public MutateOptions getOptions() {
+      return this.options;
     }
 
-    public deleteDocuments_args setTable(String table) {
-      this.table = table;
+    public deleteDocuments_args setOptions(MutateOptions options) {
+      this.options = options;
       return this;
     }
 
-    public void unsetTable() {
-      this.table = null;
+    public void unsetOptions() {
+      this.options = null;
     }
 
-    /** Returns true if field table is set (has been assigned a value) and false otherwise */
-    public boolean isSetTable() {
-      return this.table != null;
+    /** Returns true if field options is set (has been assigned a value) and false otherwise */
+    public boolean isSetOptions() {
+      return this.options != null;
     }
 
-    public void setTableIsSet(boolean value) {
+    public void setOptionsIsSet(boolean value) {
       if (!value) {
-        this.table = null;
+        this.options = null;
       }
     }
 
-    public int getShardIndex() {
-      return this.shardIndex;
-    }
-
-    public deleteDocuments_args setShardIndex(int shardIndex) {
-      this.shardIndex = shardIndex;
-      setShardIndexIsSet(true);
-      return this;
-    }
-
-    public void unsetShardIndex() {
-      __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __SHARDINDEX_ISSET_ID);
-    }
-
-    /** Returns true if field shardIndex is set (has been assigned a value) and false otherwise */
-    public boolean isSetShardIndex() {
-      return EncodingUtils.testBit(__isset_bitfield, __SHARDINDEX_ISSET_ID);
-    }
-
-    public void setShardIndexIsSet(boolean value) {
-      __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __SHARDINDEX_ISSET_ID, value);
-    }
-
     public int getTermsSize() {
       return (this.terms == null) ? 0 : this.terms.size();
     }
@@ -6678,19 +6498,11 @@ public class Lucene {
 
     public void setFieldValue(_Fields field, Object value) {
       switch (field) {
-      case TABLE:
+      case OPTIONS:
         if (value == null) {
-          unsetTable();
+          unsetOptions();
         } else {
-          setTable((String)value);
-        }
-        break;
-
-      case SHARD_INDEX:
-        if (value == null) {
-          unsetShardIndex();
-        } else {
-          setShardIndex((Integer)value);
+          setOptions((MutateOptions)value);
         }
         break;
 
@@ -6707,11 +6519,8 @@ public class Lucene {
 
     public Object getFieldVa

<TRUNCATED>

Mime
View raw message