You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by ec...@apache.org on 2013/04/12 16:37:29 UTC

svn commit: r1467287 [6/14] - in /accumulo/branches/1.4: ./ src/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ src/core/src/main/java/org/apache/accumulo/core/client/mock/ src/core/src/main/java/org/apache/accumulo/core/data/thrift/ sr...

Added: accumulo/branches/1.4/src/proxy/src/main/java/org/apache/accumulo/proxy/thrift/AccumuloProxy.java
URL: http://svn.apache.org/viewvc/accumulo/branches/1.4/src/proxy/src/main/java/org/apache/accumulo/proxy/thrift/AccumuloProxy.java?rev=1467287&view=auto
==============================================================================
--- accumulo/branches/1.4/src/proxy/src/main/java/org/apache/accumulo/proxy/thrift/AccumuloProxy.java (added)
+++ accumulo/branches/1.4/src/proxy/src/main/java/org/apache/accumulo/proxy/thrift/AccumuloProxy.java Fri Apr 12 14:37:09 2013
@@ -0,0 +1,69879 @@
+/*
+ * 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.
+ */
+/**
+ * Autogenerated by Thrift
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ */
+package org.apache.accumulo.proxy.thrift;
+
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.HashMap;
+import java.util.EnumMap;
+import java.util.Set;
+import java.util.HashSet;
+import java.util.EnumSet;
+import java.util.Collections;
+import java.util.BitSet;
+import java.nio.ByteBuffer;
+import java.util.Arrays;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+@SuppressWarnings("all") public class AccumuloProxy {
+
+  public interface Iface {
+
+    public ByteBuffer login(String principal, Map<String,String> loginProperties) throws AccumuloSecurityException, org.apache.thrift.TException;
+
+    public int addConstraint(ByteBuffer login, String tableName, String constraintClassName) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public void addSplits(ByteBuffer login, String tableName, Set<ByteBuffer> splits) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public void attachIterator(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes) throws AccumuloSecurityException, AccumuloException, TableNotFoundException, org.apache.thrift.TException;
+
+    public void checkIteratorConflicts(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes) throws AccumuloException, TableNotFoundException, org.apache.thrift.TException;
+
+    public void clearLocatorCache(ByteBuffer login, String tableName) throws TableNotFoundException, org.apache.thrift.TException;
+
+    public void cloneTable(ByteBuffer login, String tableName, String newTableName, boolean flush, Map<String,String> propertiesToSet, Set<String> propertiesToExclude) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, TableExistsException, org.apache.thrift.TException;
+
+    public void compactTable(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, List<IteratorSetting> iterators, boolean flush, boolean wait) throws AccumuloSecurityException, TableNotFoundException, AccumuloException, org.apache.thrift.TException;
+
+    public void createTable(ByteBuffer login, String tableName, boolean versioningIter, TimeType type) throws AccumuloException, AccumuloSecurityException, TableExistsException, org.apache.thrift.TException;
+
+    public void deleteTable(ByteBuffer login, String tableName) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public void deleteRows(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public void flushTable(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, boolean wait) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public Map<String,Set<String>> getLocalityGroups(ByteBuffer login, String tableName) throws AccumuloException, TableNotFoundException, org.apache.thrift.TException;
+
+    public IteratorSetting getIteratorSetting(ByteBuffer login, String tableName, String iteratorName, IteratorScope scope) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public ByteBuffer getMaxRow(ByteBuffer login, String tableName, Set<ByteBuffer> auths, ByteBuffer startRow, boolean startInclusive, ByteBuffer endRow, boolean endInclusive) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public Map<String,String> getTableProperties(ByteBuffer login, String tableName) throws AccumuloException, TableNotFoundException, org.apache.thrift.TException;
+
+    public void importDirectory(ByteBuffer login, String tableName, String importDir, String failureDir, boolean setTime) throws TableNotFoundException, AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public List<ByteBuffer> listSplits(ByteBuffer login, String tableName, int maxSplits) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public Set<String> listTables(ByteBuffer login) throws org.apache.thrift.TException;
+
+    public Map<String,Set<IteratorScope>> listIterators(ByteBuffer login, String tableName) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public Map<String,Integer> listConstraints(ByteBuffer login, String tableName) throws AccumuloException, TableNotFoundException, org.apache.thrift.TException;
+
+    public void mergeTablets(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public void offlineTable(ByteBuffer login, String tableName) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public void onlineTable(ByteBuffer login, String tableName) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public void removeConstraint(ByteBuffer login, String tableName, int constraint) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public void removeIterator(ByteBuffer login, String tableName, String iterName, Set<IteratorScope> scopes) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public void removeTableProperty(ByteBuffer login, String tableName, String property) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public void renameTable(ByteBuffer login, String oldTableName, String newTableName) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, TableExistsException, org.apache.thrift.TException;
+
+    public void setLocalityGroups(ByteBuffer login, String tableName, Map<String,Set<String>> groups) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public void setTableProperty(ByteBuffer login, String tableName, String property, String value) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public Set<Range> splitRangeByTablets(ByteBuffer login, String tableName, Range range, int maxSplits) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public boolean tableExists(ByteBuffer login, String tableName) throws org.apache.thrift.TException;
+
+    public Map<String,String> tableIdMap(ByteBuffer login) throws org.apache.thrift.TException;
+
+    public List<ActiveScan> getActiveScans(ByteBuffer login, String tserver) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public Map<String,String> getSiteConfiguration(ByteBuffer login) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public Map<String,String> getSystemConfiguration(ByteBuffer login) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public List<String> getTabletServers(ByteBuffer login) throws org.apache.thrift.TException;
+
+    public void removeProperty(ByteBuffer login, String property) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public void setProperty(ByteBuffer login, String property, String value) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public boolean testClassLoad(ByteBuffer login, String className, String asTypeName) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public boolean authenticateUser(ByteBuffer login, String user, Map<String,String> properties) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public void changeUserAuthorizations(ByteBuffer login, String user, Set<ByteBuffer> authorizations) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public void changeLocalUserPassword(ByteBuffer login, String user, ByteBuffer password) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public void createLocalUser(ByteBuffer login, String user, ByteBuffer password) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public void dropLocalUser(ByteBuffer login, String user) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public List<ByteBuffer> getUserAuthorizations(ByteBuffer login, String user) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public void grantSystemPermission(ByteBuffer login, String user, SystemPermission perm) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public void grantTablePermission(ByteBuffer login, String user, String table, TablePermission perm) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public boolean hasSystemPermission(ByteBuffer login, String user, SystemPermission perm) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public boolean hasTablePermission(ByteBuffer login, String user, String table, TablePermission perm) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public Set<String> listLocalUsers(ByteBuffer login) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public void revokeSystemPermission(ByteBuffer login, String user, SystemPermission perm) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public void revokeTablePermission(ByteBuffer login, String user, String table, TablePermission perm) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public String createBatchScanner(ByteBuffer login, String tableName, BatchScanOptions options) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public String createScanner(ByteBuffer login, String tableName, ScanOptions options) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public boolean hasNext(String scanner) throws UnknownScanner, org.apache.thrift.TException;
+
+    public KeyValueAndPeek nextEntry(String scanner) throws NoMoreEntriesException, UnknownScanner, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public ScanResult nextK(String scanner, int k) throws NoMoreEntriesException, UnknownScanner, AccumuloSecurityException, org.apache.thrift.TException;
+
+    public void closeScanner(String scanner) throws UnknownScanner, org.apache.thrift.TException;
+
+    public void updateAndFlush(ByteBuffer login, String tableName, Map<ByteBuffer,List<ColumnUpdate>> cells) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, MutationsRejectedException, org.apache.thrift.TException;
+
+    public String createWriter(ByteBuffer login, String tableName, WriterOptions opts) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException;
+
+    public void update(String writer, Map<ByteBuffer,List<ColumnUpdate>> cells) throws org.apache.thrift.TException;
+
+    public void flush(String writer) throws UnknownWriter, MutationsRejectedException, org.apache.thrift.TException;
+
+    public void closeWriter(String writer) throws UnknownWriter, MutationsRejectedException, org.apache.thrift.TException;
+
+    public Range getRowRange(ByteBuffer row) throws org.apache.thrift.TException;
+
+    public Key getFollowing(Key key, PartialKey part) throws org.apache.thrift.TException;
+
+  }
+
+  public interface AsyncIface {
+
+    public void login(String principal, Map<String,String> loginProperties, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.login_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void addConstraint(ByteBuffer login, String tableName, String constraintClassName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.addConstraint_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void addSplits(ByteBuffer login, String tableName, Set<ByteBuffer> splits, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.addSplits_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void attachIterator(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.attachIterator_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void checkIteratorConflicts(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.checkIteratorConflicts_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void clearLocatorCache(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.clearLocatorCache_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void cloneTable(ByteBuffer login, String tableName, String newTableName, boolean flush, Map<String,String> propertiesToSet, Set<String> propertiesToExclude, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.cloneTable_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void compactTable(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, List<IteratorSetting> iterators, boolean flush, boolean wait, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.compactTable_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void createTable(ByteBuffer login, String tableName, boolean versioningIter, TimeType type, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.createTable_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void deleteTable(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.deleteTable_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void deleteRows(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.deleteRows_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void flushTable(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, boolean wait, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.flushTable_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void getLocalityGroups(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getLocalityGroups_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void getIteratorSetting(ByteBuffer login, String tableName, String iteratorName, IteratorScope scope, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getIteratorSetting_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void getMaxRow(ByteBuffer login, String tableName, Set<ByteBuffer> auths, ByteBuffer startRow, boolean startInclusive, ByteBuffer endRow, boolean endInclusive, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getMaxRow_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void getTableProperties(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getTableProperties_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void importDirectory(ByteBuffer login, String tableName, String importDir, String failureDir, boolean setTime, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.importDirectory_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void listSplits(ByteBuffer login, String tableName, int maxSplits, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.listSplits_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void listTables(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.listTables_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void listIterators(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.listIterators_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void listConstraints(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.listConstraints_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void mergeTablets(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.mergeTablets_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void offlineTable(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.offlineTable_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void onlineTable(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.onlineTable_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void removeConstraint(ByteBuffer login, String tableName, int constraint, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.removeConstraint_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void removeIterator(ByteBuffer login, String tableName, String iterName, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.removeIterator_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void removeTableProperty(ByteBuffer login, String tableName, String property, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.removeTableProperty_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void renameTable(ByteBuffer login, String oldTableName, String newTableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.renameTable_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void setLocalityGroups(ByteBuffer login, String tableName, Map<String,Set<String>> groups, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.setLocalityGroups_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void setTableProperty(ByteBuffer login, String tableName, String property, String value, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.setTableProperty_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void splitRangeByTablets(ByteBuffer login, String tableName, Range range, int maxSplits, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.splitRangeByTablets_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void tableExists(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.tableExists_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void tableIdMap(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.tableIdMap_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void getActiveScans(ByteBuffer login, String tserver, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getActiveScans_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void getSiteConfiguration(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getSiteConfiguration_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void getSystemConfiguration(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getSystemConfiguration_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void getTabletServers(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getTabletServers_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void removeProperty(ByteBuffer login, String property, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.removeProperty_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void setProperty(ByteBuffer login, String property, String value, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.setProperty_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void testClassLoad(ByteBuffer login, String className, String asTypeName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.testClassLoad_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void authenticateUser(ByteBuffer login, String user, Map<String,String> properties, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.authenticateUser_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void changeUserAuthorizations(ByteBuffer login, String user, Set<ByteBuffer> authorizations, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.changeUserAuthorizations_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void changeLocalUserPassword(ByteBuffer login, String user, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.changeLocalUserPassword_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void createLocalUser(ByteBuffer login, String user, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.createLocalUser_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void dropLocalUser(ByteBuffer login, String user, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.dropLocalUser_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void getUserAuthorizations(ByteBuffer login, String user, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getUserAuthorizations_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void grantSystemPermission(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.grantSystemPermission_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void grantTablePermission(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.grantTablePermission_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void hasSystemPermission(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.hasSystemPermission_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void hasTablePermission(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.hasTablePermission_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void listLocalUsers(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.listLocalUsers_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void revokeSystemPermission(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.revokeSystemPermission_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void revokeTablePermission(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.revokeTablePermission_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void createBatchScanner(ByteBuffer login, String tableName, BatchScanOptions options, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.createBatchScanner_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void createScanner(ByteBuffer login, String tableName, ScanOptions options, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.createScanner_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void hasNext(String scanner, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.hasNext_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void nextEntry(String scanner, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.nextEntry_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void nextK(String scanner, int k, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.nextK_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void closeScanner(String scanner, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.closeScanner_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void updateAndFlush(ByteBuffer login, String tableName, Map<ByteBuffer,List<ColumnUpdate>> cells, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.updateAndFlush_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void createWriter(ByteBuffer login, String tableName, WriterOptions opts, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.createWriter_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void update(String writer, Map<ByteBuffer,List<ColumnUpdate>> cells, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.update_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void flush(String writer, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.flush_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void closeWriter(String writer, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.closeWriter_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void getRowRange(ByteBuffer row, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getRowRange_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void getFollowing(Key key, PartialKey part, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getFollowing_call> resultHandler) throws org.apache.thrift.TException;
+
+  }
+
+  public static class Client implements org.apache.thrift.TServiceClient, Iface {
+    public static class Factory implements org.apache.thrift.TServiceClientFactory<Client> {
+      public Factory() {}
+      public Client getClient(org.apache.thrift.protocol.TProtocol prot) {
+        return new Client(prot);
+      }
+      public Client getClient(org.apache.thrift.protocol.TProtocol iprot, org.apache.thrift.protocol.TProtocol oprot) {
+        return new Client(iprot, oprot);
+      }
+    }
+
+    public Client(org.apache.thrift.protocol.TProtocol prot)
+    {
+      this(prot, prot);
+    }
+
+    public Client(org.apache.thrift.protocol.TProtocol iprot, org.apache.thrift.protocol.TProtocol oprot)
+    {
+      iprot_ = iprot;
+      oprot_ = oprot;
+    }
+
+    protected org.apache.thrift.protocol.TProtocol iprot_;
+    protected org.apache.thrift.protocol.TProtocol oprot_;
+
+    protected int seqid_;
+
+    public org.apache.thrift.protocol.TProtocol getInputProtocol()
+    {
+      return this.iprot_;
+    }
+
+    public org.apache.thrift.protocol.TProtocol getOutputProtocol()
+    {
+      return this.oprot_;
+    }
+
+    public ByteBuffer login(String principal, Map<String,String> loginProperties) throws AccumuloSecurityException, org.apache.thrift.TException
+    {
+      send_login(principal, loginProperties);
+      return recv_login();
+    }
+
+    public void send_login(String principal, Map<String,String> loginProperties) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("login", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      login_args args = new login_args();
+      args.setPrincipal(principal);
+      args.setLoginProperties(loginProperties);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public ByteBuffer recv_login() throws AccumuloSecurityException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "login failed: out of sequence response");
+      }
+      login_result result = new login_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.isSetSuccess()) {
+        return result.success;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "login failed: unknown result");
+    }
+
+    public int addConstraint(ByteBuffer login, String tableName, String constraintClassName) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      send_addConstraint(login, tableName, constraintClassName);
+      return recv_addConstraint();
+    }
+
+    public void send_addConstraint(ByteBuffer login, String tableName, String constraintClassName) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("addConstraint", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      addConstraint_args args = new addConstraint_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setConstraintClassName(constraintClassName);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public int recv_addConstraint() throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "addConstraint failed: out of sequence response");
+      }
+      addConstraint_result result = new addConstraint_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.isSetSuccess()) {
+        return result.success;
+      }
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      if (result.ouch3 != null) {
+        throw result.ouch3;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "addConstraint failed: unknown result");
+    }
+
+    public void addSplits(ByteBuffer login, String tableName, Set<ByteBuffer> splits) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      send_addSplits(login, tableName, splits);
+      recv_addSplits();
+    }
+
+    public void send_addSplits(ByteBuffer login, String tableName, Set<ByteBuffer> splits) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("addSplits", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      addSplits_args args = new addSplits_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setSplits(splits);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_addSplits() throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "addSplits failed: out of sequence response");
+      }
+      addSplits_result result = new addSplits_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      if (result.ouch3 != null) {
+        throw result.ouch3;
+      }
+      return;
+    }
+
+    public void attachIterator(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes) throws AccumuloSecurityException, AccumuloException, TableNotFoundException, org.apache.thrift.TException
+    {
+      send_attachIterator(login, tableName, setting, scopes);
+      recv_attachIterator();
+    }
+
+    public void send_attachIterator(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("attachIterator", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      attachIterator_args args = new attachIterator_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setSetting(setting);
+      args.setScopes(scopes);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_attachIterator() throws AccumuloSecurityException, AccumuloException, TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "attachIterator failed: out of sequence response");
+      }
+      attachIterator_result result = new attachIterator_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      if (result.ouch3 != null) {
+        throw result.ouch3;
+      }
+      return;
+    }
+
+    public void checkIteratorConflicts(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes) throws AccumuloException, TableNotFoundException, org.apache.thrift.TException
+    {
+      send_checkIteratorConflicts(login, tableName, setting, scopes);
+      recv_checkIteratorConflicts();
+    }
+
+    public void send_checkIteratorConflicts(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("checkIteratorConflicts", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      checkIteratorConflicts_args args = new checkIteratorConflicts_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setSetting(setting);
+      args.setScopes(scopes);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_checkIteratorConflicts() throws AccumuloException, TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "checkIteratorConflicts failed: out of sequence response");
+      }
+      checkIteratorConflicts_result result = new checkIteratorConflicts_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      return;
+    }
+
+    public void clearLocatorCache(ByteBuffer login, String tableName) throws TableNotFoundException, org.apache.thrift.TException
+    {
+      send_clearLocatorCache(login, tableName);
+      recv_clearLocatorCache();
+    }
+
+    public void send_clearLocatorCache(ByteBuffer login, String tableName) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("clearLocatorCache", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      clearLocatorCache_args args = new clearLocatorCache_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_clearLocatorCache() throws TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "clearLocatorCache failed: out of sequence response");
+      }
+      clearLocatorCache_result result = new clearLocatorCache_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      return;
+    }
+
+    public void cloneTable(ByteBuffer login, String tableName, String newTableName, boolean flush, Map<String,String> propertiesToSet, Set<String> propertiesToExclude) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, TableExistsException, org.apache.thrift.TException
+    {
+      send_cloneTable(login, tableName, newTableName, flush, propertiesToSet, propertiesToExclude);
+      recv_cloneTable();
+    }
+
+    public void send_cloneTable(ByteBuffer login, String tableName, String newTableName, boolean flush, Map<String,String> propertiesToSet, Set<String> propertiesToExclude) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("cloneTable", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      cloneTable_args args = new cloneTable_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setNewTableName(newTableName);
+      args.setFlush(flush);
+      args.setPropertiesToSet(propertiesToSet);
+      args.setPropertiesToExclude(propertiesToExclude);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_cloneTable() throws AccumuloException, AccumuloSecurityException, TableNotFoundException, TableExistsException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "cloneTable failed: out of sequence response");
+      }
+      cloneTable_result result = new cloneTable_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      if (result.ouch3 != null) {
+        throw result.ouch3;
+      }
+      if (result.ouch4 != null) {
+        throw result.ouch4;
+      }
+      return;
+    }
+
+    public void compactTable(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, List<IteratorSetting> iterators, boolean flush, boolean wait) throws AccumuloSecurityException, TableNotFoundException, AccumuloException, org.apache.thrift.TException
+    {
+      send_compactTable(login, tableName, startRow, endRow, iterators, flush, wait);
+      recv_compactTable();
+    }
+
+    public void send_compactTable(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, List<IteratorSetting> iterators, boolean flush, boolean wait) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("compactTable", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      compactTable_args args = new compactTable_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setStartRow(startRow);
+      args.setEndRow(endRow);
+      args.setIterators(iterators);
+      args.setFlush(flush);
+      args.setWait(wait);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_compactTable() throws AccumuloSecurityException, TableNotFoundException, AccumuloException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "compactTable failed: out of sequence response");
+      }
+      compactTable_result result = new compactTable_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      if (result.ouch3 != null) {
+        throw result.ouch3;
+      }
+      return;
+    }
+
+    public void createTable(ByteBuffer login, String tableName, boolean versioningIter, TimeType type) throws AccumuloException, AccumuloSecurityException, TableExistsException, org.apache.thrift.TException
+    {
+      send_createTable(login, tableName, versioningIter, type);
+      recv_createTable();
+    }
+
+    public void send_createTable(ByteBuffer login, String tableName, boolean versioningIter, TimeType type) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("createTable", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      createTable_args args = new createTable_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setVersioningIter(versioningIter);
+      args.setType(type);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_createTable() throws AccumuloException, AccumuloSecurityException, TableExistsException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "createTable failed: out of sequence response");
+      }
+      createTable_result result = new createTable_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      if (result.ouch3 != null) {
+        throw result.ouch3;
+      }
+      return;
+    }
+
+    public void deleteTable(ByteBuffer login, String tableName) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      send_deleteTable(login, tableName);
+      recv_deleteTable();
+    }
+
+    public void send_deleteTable(ByteBuffer login, String tableName) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("deleteTable", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      deleteTable_args args = new deleteTable_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_deleteTable() throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "deleteTable failed: out of sequence response");
+      }
+      deleteTable_result result = new deleteTable_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      if (result.ouch3 != null) {
+        throw result.ouch3;
+      }
+      return;
+    }
+
+    public void deleteRows(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      send_deleteRows(login, tableName, startRow, endRow);
+      recv_deleteRows();
+    }
+
+    public void send_deleteRows(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("deleteRows", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      deleteRows_args args = new deleteRows_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setStartRow(startRow);
+      args.setEndRow(endRow);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_deleteRows() throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "deleteRows failed: out of sequence response");
+      }
+      deleteRows_result result = new deleteRows_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      if (result.ouch3 != null) {
+        throw result.ouch3;
+      }
+      return;
+    }
+
+    public void flushTable(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, boolean wait) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException
+    {
+      send_flushTable(login, tableName, startRow, endRow, wait);
+      recv_flushTable();
+    }
+
+    public void send_flushTable(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, boolean wait) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("flushTable", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      flushTable_args args = new flushTable_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setStartRow(startRow);
+      args.setEndRow(endRow);
+      args.setWait(wait);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_flushTable() throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "flushTable failed: out of sequence response");
+      }
+      flushTable_result result = new flushTable_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      return;
+    }
+
+    public Map<String,Set<String>> getLocalityGroups(ByteBuffer login, String tableName) throws AccumuloException, TableNotFoundException, org.apache.thrift.TException
+    {
+      send_getLocalityGroups(login, tableName);
+      return recv_getLocalityGroups();
+    }
+
+    public void send_getLocalityGroups(ByteBuffer login, String tableName) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getLocalityGroups", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      getLocalityGroups_args args = new getLocalityGroups_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public Map<String,Set<String>> recv_getLocalityGroups() throws AccumuloException, TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "getLocalityGroups failed: out of sequence response");
+      }
+      getLocalityGroups_result result = new getLocalityGroups_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.isSetSuccess()) {
+        return result.success;
+      }
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getLocalityGroups failed: unknown result");
+    }
+
+    public IteratorSetting getIteratorSetting(ByteBuffer login, String tableName, String iteratorName, IteratorScope scope) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      send_getIteratorSetting(login, tableName, iteratorName, scope);
+      return recv_getIteratorSetting();
+    }
+
+    public void send_getIteratorSetting(ByteBuffer login, String tableName, String iteratorName, IteratorScope scope) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getIteratorSetting", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      getIteratorSetting_args args = new getIteratorSetting_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setIteratorName(iteratorName);
+      args.setScope(scope);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public IteratorSetting recv_getIteratorSetting() throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "getIteratorSetting failed: out of sequence response");
+      }
+      getIteratorSetting_result result = new getIteratorSetting_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.isSetSuccess()) {
+        return result.success;
+      }
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      if (result.ouch3 != null) {
+        throw result.ouch3;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getIteratorSetting failed: unknown result");
+    }
+
+    public ByteBuffer getMaxRow(ByteBuffer login, String tableName, Set<ByteBuffer> auths, ByteBuffer startRow, boolean startInclusive, ByteBuffer endRow, boolean endInclusive) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      send_getMaxRow(login, tableName, auths, startRow, startInclusive, endRow, endInclusive);
+      return recv_getMaxRow();
+    }
+
+    public void send_getMaxRow(ByteBuffer login, String tableName, Set<ByteBuffer> auths, ByteBuffer startRow, boolean startInclusive, ByteBuffer endRow, boolean endInclusive) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getMaxRow", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      getMaxRow_args args = new getMaxRow_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setAuths(auths);
+      args.setStartRow(startRow);
+      args.setStartInclusive(startInclusive);
+      args.setEndRow(endRow);
+      args.setEndInclusive(endInclusive);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public ByteBuffer recv_getMaxRow() throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "getMaxRow failed: out of sequence response");
+      }
+      getMaxRow_result result = new getMaxRow_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.isSetSuccess()) {
+        return result.success;
+      }
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      if (result.ouch3 != null) {
+        throw result.ouch3;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getMaxRow failed: unknown result");
+    }
+
+    public Map<String,String> getTableProperties(ByteBuffer login, String tableName) throws AccumuloException, TableNotFoundException, org.apache.thrift.TException
+    {
+      send_getTableProperties(login, tableName);
+      return recv_getTableProperties();
+    }
+
+    public void send_getTableProperties(ByteBuffer login, String tableName) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getTableProperties", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      getTableProperties_args args = new getTableProperties_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public Map<String,String> recv_getTableProperties() throws AccumuloException, TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "getTableProperties failed: out of sequence response");
+      }
+      getTableProperties_result result = new getTableProperties_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.isSetSuccess()) {
+        return result.success;
+      }
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getTableProperties failed: unknown result");
+    }
+
+    public void importDirectory(ByteBuffer login, String tableName, String importDir, String failureDir, boolean setTime) throws TableNotFoundException, AccumuloException, AccumuloSecurityException, org.apache.thrift.TException
+    {
+      send_importDirectory(login, tableName, importDir, failureDir, setTime);
+      recv_importDirectory();
+    }
+
+    public void send_importDirectory(ByteBuffer login, String tableName, String importDir, String failureDir, boolean setTime) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("importDirectory", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      importDirectory_args args = new importDirectory_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setImportDir(importDir);
+      args.setFailureDir(failureDir);
+      args.setSetTime(setTime);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_importDirectory() throws TableNotFoundException, AccumuloException, AccumuloSecurityException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "importDirectory failed: out of sequence response");
+      }
+      importDirectory_result result = new importDirectory_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch3 != null) {
+        throw result.ouch3;
+      }
+      if (result.ouch4 != null) {
+        throw result.ouch4;
+      }
+      return;
+    }
+
+    public List<ByteBuffer> listSplits(ByteBuffer login, String tableName, int maxSplits) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      send_listSplits(login, tableName, maxSplits);
+      return recv_listSplits();
+    }
+
+    public void send_listSplits(ByteBuffer login, String tableName, int maxSplits) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("listSplits", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      listSplits_args args = new listSplits_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setMaxSplits(maxSplits);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public List<ByteBuffer> recv_listSplits() throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "listSplits failed: out of sequence response");
+      }
+      listSplits_result result = new listSplits_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.isSetSuccess()) {
+        return result.success;
+      }
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      if (result.ouch3 != null) {
+        throw result.ouch3;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "listSplits failed: unknown result");
+    }
+
+    public Set<String> listTables(ByteBuffer login) throws org.apache.thrift.TException
+    {
+      send_listTables(login);
+      return recv_listTables();
+    }
+
+    public void send_listTables(ByteBuffer login) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("listTables", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      listTables_args args = new listTables_args();
+      args.setLogin(login);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public Set<String> recv_listTables() throws org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "listTables failed: out of sequence response");
+      }
+      listTables_result result = new listTables_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.isSetSuccess()) {
+        return result.success;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "listTables failed: unknown result");
+    }
+
+    public Map<String,Set<IteratorScope>> listIterators(ByteBuffer login, String tableName) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      send_listIterators(login, tableName);
+      return recv_listIterators();
+    }
+
+    public void send_listIterators(ByteBuffer login, String tableName) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("listIterators", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      listIterators_args args = new listIterators_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public Map<String,Set<IteratorScope>> recv_listIterators() throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "listIterators failed: out of sequence response");
+      }
+      listIterators_result result = new listIterators_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.isSetSuccess()) {
+        return result.success;
+      }
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      if (result.ouch3 != null) {
+        throw result.ouch3;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "listIterators failed: unknown result");
+    }
+
+    public Map<String,Integer> listConstraints(ByteBuffer login, String tableName) throws AccumuloException, TableNotFoundException, org.apache.thrift.TException
+    {
+      send_listConstraints(login, tableName);
+      return recv_listConstraints();
+    }
+
+    public void send_listConstraints(ByteBuffer login, String tableName) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("listConstraints", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      listConstraints_args args = new listConstraints_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public Map<String,Integer> recv_listConstraints() throws AccumuloException, TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "listConstraints failed: out of sequence response");
+      }
+      listConstraints_result result = new listConstraints_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.isSetSuccess()) {
+        return result.success;
+      }
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "listConstraints failed: unknown result");
+    }
+
+    public void mergeTablets(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      send_mergeTablets(login, tableName, startRow, endRow);
+      recv_mergeTablets();
+    }
+
+    public void send_mergeTablets(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("mergeTablets", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      mergeTablets_args args = new mergeTablets_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setStartRow(startRow);
+      args.setEndRow(endRow);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_mergeTablets() throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "mergeTablets failed: out of sequence response");
+      }
+      mergeTablets_result result = new mergeTablets_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      if (result.ouch3 != null) {
+        throw result.ouch3;
+      }
+      return;
+    }
+
+    public void offlineTable(ByteBuffer login, String tableName) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      send_offlineTable(login, tableName);
+      recv_offlineTable();
+    }
+
+    public void send_offlineTable(ByteBuffer login, String tableName) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("offlineTable", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      offlineTable_args args = new offlineTable_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_offlineTable() throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "offlineTable failed: out of sequence response");
+      }
+      offlineTable_result result = new offlineTable_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      if (result.ouch3 != null) {
+        throw result.ouch3;
+      }
+      return;
+    }
+
+    public void onlineTable(ByteBuffer login, String tableName) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      send_onlineTable(login, tableName);
+      recv_onlineTable();
+    }
+
+    public void send_onlineTable(ByteBuffer login, String tableName) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("onlineTable", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      onlineTable_args args = new onlineTable_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_onlineTable() throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "onlineTable failed: out of sequence response");
+      }
+      onlineTable_result result = new onlineTable_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      if (result.ouch3 != null) {
+        throw result.ouch3;
+      }
+      return;
+    }
+
+    public void removeConstraint(ByteBuffer login, String tableName, int constraint) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException
+    {
+      send_removeConstraint(login, tableName, constraint);
+      recv_removeConstraint();
+    }
+
+    public void send_removeConstraint(ByteBuffer login, String tableName, int constraint) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("removeConstraint", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      removeConstraint_args args = new removeConstraint_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setConstraint(constraint);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_removeConstraint() throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "removeConstraint failed: out of sequence response");
+      }
+      removeConstraint_result result = new removeConstraint_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      return;
+    }
+
+    public void removeIterator(ByteBuffer login, String tableName, String iterName, Set<IteratorScope> scopes) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      send_removeIterator(login, tableName, iterName, scopes);
+      recv_removeIterator();
+    }
+
+    public void send_removeIterator(ByteBuffer login, String tableName, String iterName, Set<IteratorScope> scopes) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("removeIterator", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      removeIterator_args args = new removeIterator_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setIterName(iterName);
+      args.setScopes(scopes);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_removeIterator() throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "removeIterator failed: out of sequence response");
+      }
+      removeIterator_result result = new removeIterator_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      if (result.ouch3 != null) {
+        throw result.ouch3;
+      }
+      return;
+    }
+
+    public void removeTableProperty(ByteBuffer login, String tableName, String property) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException
+    {
+      send_removeTableProperty(login, tableName, property);
+      recv_removeTableProperty();
+    }
+
+    public void send_removeTableProperty(ByteBuffer login, String tableName, String property) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("removeTableProperty", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      removeTableProperty_args args = new removeTableProperty_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setProperty(property);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_removeTableProperty() throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "removeTableProperty failed: out of sequence response");
+      }
+      removeTableProperty_result result = new removeTableProperty_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      return;
+    }
+
+    public void renameTable(ByteBuffer login, String oldTableName, String newTableName) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, TableExistsException, org.apache.thrift.TException
+    {
+      send_renameTable(login, oldTableName, newTableName);
+      recv_renameTable();
+    }
+
+    public void send_renameTable(ByteBuffer login, String oldTableName, String newTableName) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("renameTable", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      renameTable_args args = new renameTable_args();
+      args.setLogin(login);
+      args.setOldTableName(oldTableName);
+      args.setNewTableName(newTableName);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_renameTable() throws AccumuloException, AccumuloSecurityException, TableNotFoundException, TableExistsException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "renameTable failed: out of sequence response");
+      }
+      renameTable_result result = new renameTable_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      if (result.ouch3 != null) {
+        throw result.ouch3;
+      }
+      if (result.ouch4 != null) {
+        throw result.ouch4;
+      }
+      return;
+    }
+
+    public void setLocalityGroups(ByteBuffer login, String tableName, Map<String,Set<String>> groups) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      send_setLocalityGroups(login, tableName, groups);
+      recv_setLocalityGroups();
+    }
+
+    public void send_setLocalityGroups(ByteBuffer login, String tableName, Map<String,Set<String>> groups) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("setLocalityGroups", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      setLocalityGroups_args args = new setLocalityGroups_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setGroups(groups);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_setLocalityGroups() throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "setLocalityGroups failed: out of sequence response");
+      }
+      setLocalityGroups_result result = new setLocalityGroups_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      if (result.ouch3 != null) {
+        throw result.ouch3;
+      }
+      return;
+    }
+
+    public void setTableProperty(ByteBuffer login, String tableName, String property, String value) throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException
+    {
+      send_setTableProperty(login, tableName, property, value);
+      recv_setTableProperty();
+    }
+
+    public void send_setTableProperty(ByteBuffer login, String tableName, String property, String value) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("setTableProperty", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      setTableProperty_args args = new setTableProperty_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setProperty(property);
+      args.setValue(value);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public void recv_setTableProperty() throws AccumuloException, AccumuloSecurityException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "setTableProperty failed: out of sequence response");
+      }
+      setTableProperty_result result = new setTableProperty_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.ouch1 != null) {
+        throw result.ouch1;
+      }
+      if (result.ouch2 != null) {
+        throw result.ouch2;
+      }
+      return;
+    }
+
+    public Set<Range> splitRangeByTablets(ByteBuffer login, String tableName, Range range, int maxSplits) throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      send_splitRangeByTablets(login, tableName, range, maxSplits);
+      return recv_splitRangeByTablets();
+    }
+
+    public void send_splitRangeByTablets(ByteBuffer login, String tableName, Range range, int maxSplits) throws org.apache.thrift.TException
+    {
+      oprot_.writeMessageBegin(new org.apache.thrift.protocol.TMessage("splitRangeByTablets", org.apache.thrift.protocol.TMessageType.CALL, ++seqid_));
+      splitRangeByTablets_args args = new splitRangeByTablets_args();
+      args.setLogin(login);
+      args.setTableName(tableName);
+      args.setRange(range);
+      args.setMaxSplits(maxSplits);
+      args.write(oprot_);
+      oprot_.writeMessageEnd();
+      oprot_.getTransport().flush();
+    }
+
+    public Set<Range> recv_splitRangeByTablets() throws AccumuloException, AccumuloSecurityException, TableNotFoundException, org.apache.thrift.TException
+    {
+      org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
+      if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
+        org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
+        iprot_.readMessageEnd();
+        throw x;
+      }
+      if (msg.seqid != seqid_) {
+        throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "splitRangeByTablets failed: out of sequence response");
+      }
+      splitRangeByTablets_result result = new splitRangeByTablets_result();
+      result.read(iprot_);
+      iprot_.readMessageEnd();
+      if (result.isSetSuccess()) {

[... 68174 lines stripped ...]