text:
/**
 * Autogenerated by Thrift Compiler (0.12.0)
 *
 * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
 *  @generated
 */
#ifndef ClientService_V2H
#define ClientService_V2H

#include <thrift/TDispatchProcessor.h>
#include <thrift/async/TConcurrentClientSyncInfo.h>
#include "client_types.h"

namespace org { namespace apache { namespace accumulov2 { namespace core { namespace clientImpl { namespace thrift {

#ifdef _MSC_VER
  #pragma warning( push )
  #pragma warning (disable : 4250 ) //inheriting methods via dominance
#endif

class ClientServiceIf {
 public:
  virtual ~ClientServiceIf() {}
  virtual void getRootTabletLocation(std::string& _return) = 0;
  virtual void getInstanceId(std::string& _return) = 0;
  virtual void getZooKeepers(std::string& _return) = 0;
  virtual void bulkImportFiles(std::vector<std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const int64_t tid, const std::string& tableId, const std::vector<std::string> & files, const std::string& errorDir, const bool setTime) = 0;
  virtual bool isActive(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const int64_t tid) = 0;
  virtual void ping(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials) = 0;
  virtual void getDiskUsage(std::vector<TDiskUsage> & _return, const std::set<std::string> & tables, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials) = 0;
  virtual void listLocalUsers(std::set<std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials) = 0;
  virtual void createLocalUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& password) = 0;
  virtual void dropLocalUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal) = 0;
  virtual void changeLocalUserPassword(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& password) = 0;
  virtual bool authenticate(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials) = 0;
  virtual bool authenticateUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& toAuth) = 0;
  virtual void changeAuthorizations(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::vector<std::string> & authorizations) = 0;
  virtual void getUserAuthorizations(std::vector<std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal) = 0;
  virtual bool hasSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const int8_t sysPerm) = 0;
  virtual bool hasTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& tableName, const int8_t tblPerm) = 0;
  virtual bool hasNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& ns, const int8_t tblNspcPerm) = 0;
  virtual void grantSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const int8_t permission) = 0;
  virtual void revokeSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const int8_t permission) = 0;
  virtual void grantTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& tableName, const int8_t permission) = 0;
  virtual void revokeTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& tableName, const int8_t permission) = 0;
  virtual void grantNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& ns, const int8_t permission) = 0;
  virtual void revokeNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& ns, const int8_t permission) = 0;
  virtual void getConfiguration(std::map<std::string, std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const ConfigurationType::type type) = 0;
  virtual void getTableConfiguration(std::map<std::string, std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& tableName) = 0;
  virtual void getNamespaceConfiguration(std::map<std::string, std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& ns) = 0;
  virtual bool checkClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& className, const std::string& interfaceMatch) = 0;
  virtual bool checkTableClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& tableId, const std::string& className, const std::string& interfaceMatch) = 0;
  virtual bool checkNamespaceClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& namespaceId, const std::string& className, const std::string& interfaceMatch) = 0;
};

class ClientServiceIfFactory {
 public:
  typedef ClientServiceIf Handler;

  virtual ~ClientServiceIfFactory() {}

  virtual ClientServiceIf* getHandler(const ::apache::thrift::TConnectionInfo& connInfo) = 0;
  virtual void releaseHandler(ClientServiceIf* /* handler */) = 0;
};

class ClientServiceIfSingletonFactory : virtual public ClientServiceIfFactory {
 public:
  ClientServiceIfSingletonFactory(const std::shared_ptr<ClientServiceIf>& iface) : iface_(iface) {}
  virtual ~ClientServiceIfSingletonFactory() {}

  virtual ClientServiceIf* getHandler(const ::apache::thrift::TConnectionInfo&) {
    return iface_.get();
  }
  virtual void releaseHandler(ClientServiceIf* /* handler */) {}

 protected:
  std::shared_ptr<ClientServiceIf> iface_;
};

class ClientServiceNull : virtual public ClientServiceIf {
 public:
  virtual ~ClientServiceNull() {}
  void getRootTabletLocation(std::string& /* _return */) {
    return;
  }
  void getInstanceId(std::string& /* _return */) {
    return;
  }
  void getZooKeepers(std::string& /* _return */) {
    return;
  }
  void bulkImportFiles(std::vector<std::string> & /* _return */, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const int64_t /* tid */, const std::string& /* tableId */, const std::vector<std::string> & /* files */, const std::string& /* errorDir */, const bool /* setTime */) {
    return;
  }
  bool isActive(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const int64_t /* tid */) {
    bool _return = false;
    return _return;
  }
  void ping(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */) {
    return;
  }
  void getDiskUsage(std::vector<TDiskUsage> & /* _return */, const std::set<std::string> & /* tables */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */) {
    return;
  }
  void listLocalUsers(std::set<std::string> & /* _return */, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */) {
    return;
  }
  void createLocalUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const std::string& /* principal */, const std::string& /* password */) {
    return;
  }
  void dropLocalUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const std::string& /* principal */) {
    return;
  }
  void changeLocalUserPassword(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const std::string& /* principal */, const std::string& /* password */) {
    return;
  }
  bool authenticate(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */) {
    bool _return = false;
    return _return;
  }
  bool authenticateUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* toAuth */) {
    bool _return = false;
    return _return;
  }
  void changeAuthorizations(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const std::string& /* principal */, const std::vector<std::string> & /* authorizations */) {
    return;
  }
  void getUserAuthorizations(std::vector<std::string> & /* _return */, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const std::string& /* principal */) {
    return;
  }
  bool hasSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const std::string& /* principal */, const int8_t /* sysPerm */) {
    bool _return = false;
    return _return;
  }
  bool hasTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const std::string& /* principal */, const std::string& /* tableName */, const int8_t /* tblPerm */) {
    bool _return = false;
    return _return;
  }
  bool hasNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const std::string& /* principal */, const std::string& /* ns */, const int8_t /* tblNspcPerm */) {
    bool _return = false;
    return _return;
  }
  void grantSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const std::string& /* principal */, const int8_t /* permission */) {
    return;
  }
  void revokeSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const std::string& /* principal */, const int8_t /* permission */) {
    return;
  }
  void grantTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const std::string& /* principal */, const std::string& /* tableName */, const int8_t /* permission */) {
    return;
  }
  void revokeTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const std::string& /* principal */, const std::string& /* tableName */, const int8_t /* permission */) {
    return;
  }
  void grantNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const std::string& /* principal */, const std::string& /* ns */, const int8_t /* permission */) {
    return;
  }
  void revokeNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const std::string& /* principal */, const std::string& /* ns */, const int8_t /* permission */) {
    return;
  }
  void getConfiguration(std::map<std::string, std::string> & /* _return */, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const ConfigurationType::type /* type */) {
    return;
  }
  void getTableConfiguration(std::map<std::string, std::string> & /* _return */, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const std::string& /* tableName */) {
    return;
  }
  void getNamespaceConfiguration(std::map<std::string, std::string> & /* _return */, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const std::string& /* ns */) {
    return;
  }
  bool checkClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const std::string& /* className */, const std::string& /* interfaceMatch */) {
    bool _return = false;
    return _return;
  }
  bool checkTableClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const std::string& /* tableId */, const std::string& /* className */, const std::string& /* interfaceMatch */) {
    bool _return = false;
    return _return;
  }
  bool checkNamespaceClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& /* tinfo */, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& /* credentials */, const std::string& /* namespaceId */, const std::string& /* className */, const std::string& /* interfaceMatch */) {
    bool _return = false;
    return _return;
  }
};

class ClientService_getRootTabletLocation_args {
 public:

  ClientService_getRootTabletLocation_args(const ClientService_getRootTabletLocation_args&);
  ClientService_getRootTabletLocation_args& operator=(const ClientService_getRootTabletLocation_args&);
  ClientService_getRootTabletLocation_args() {
  }

  virtual ~ClientService_getRootTabletLocation_args() throw();

  bool operator == (const ClientService_getRootTabletLocation_args & /* rhs */) const
  {
    return true;
  }
  bool operator != (const ClientService_getRootTabletLocation_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_getRootTabletLocation_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_getRootTabletLocation_pargs {
 public:

  virtual ~ClientService_getRootTabletLocation_pargs() throw();

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_getRootTabletLocation_result__isset {
  _ClientService_getRootTabletLocation_result__isset() : success(false) {}
  bool success :1;
} _ClientService_getRootTabletLocation_result__isset;

class ClientService_getRootTabletLocation_result {
 public:

  ClientService_getRootTabletLocation_result(const ClientService_getRootTabletLocation_result&);
  ClientService_getRootTabletLocation_result& operator=(const ClientService_getRootTabletLocation_result&);
  ClientService_getRootTabletLocation_result() : success() {
  }

  virtual ~ClientService_getRootTabletLocation_result() throw();
  std::string success;

  _ClientService_getRootTabletLocation_result__isset __isset;

  void __set_success(const std::string& val);

  bool operator == (const ClientService_getRootTabletLocation_result & rhs) const
  {
    if (!(success == rhs.success))
      return false;
    return true;
  }
  bool operator != (const ClientService_getRootTabletLocation_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_getRootTabletLocation_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_getRootTabletLocation_presult__isset {
  _ClientService_getRootTabletLocation_presult__isset() : success(false) {}
  bool success :1;
} _ClientService_getRootTabletLocation_presult__isset;

class ClientService_getRootTabletLocation_presult {
 public:

  virtual ~ClientService_getRootTabletLocation_presult() throw();
  std::string* success;

  _ClientService_getRootTabletLocation_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

class ClientService_getInstanceId_args {
 public:

  ClientService_getInstanceId_args(const ClientService_getInstanceId_args&);
  ClientService_getInstanceId_args& operator=(const ClientService_getInstanceId_args&);
  ClientService_getInstanceId_args() {
  }

  virtual ~ClientService_getInstanceId_args() throw();

  bool operator == (const ClientService_getInstanceId_args & /* rhs */) const
  {
    return true;
  }
  bool operator != (const ClientService_getInstanceId_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_getInstanceId_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_getInstanceId_pargs {
 public:

  virtual ~ClientService_getInstanceId_pargs() throw();

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_getInstanceId_result__isset {
  _ClientService_getInstanceId_result__isset() : success(false) {}
  bool success :1;
} _ClientService_getInstanceId_result__isset;

class ClientService_getInstanceId_result {
 public:

  ClientService_getInstanceId_result(const ClientService_getInstanceId_result&);
  ClientService_getInstanceId_result& operator=(const ClientService_getInstanceId_result&);
  ClientService_getInstanceId_result() : success() {
  }

  virtual ~ClientService_getInstanceId_result() throw();
  std::string success;

  _ClientService_getInstanceId_result__isset __isset;

  void __set_success(const std::string& val);

  bool operator == (const ClientService_getInstanceId_result & rhs) const
  {
    if (!(success == rhs.success))
      return false;
    return true;
  }
  bool operator != (const ClientService_getInstanceId_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_getInstanceId_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_getInstanceId_presult__isset {
  _ClientService_getInstanceId_presult__isset() : success(false) {}
  bool success :1;
} _ClientService_getInstanceId_presult__isset;

class ClientService_getInstanceId_presult {
 public:

  virtual ~ClientService_getInstanceId_presult() throw();
  std::string* success;

  _ClientService_getInstanceId_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

class ClientService_getZooKeepers_args {
 public:

  ClientService_getZooKeepers_args(const ClientService_getZooKeepers_args&);
  ClientService_getZooKeepers_args& operator=(const ClientService_getZooKeepers_args&);
  ClientService_getZooKeepers_args() {
  }

  virtual ~ClientService_getZooKeepers_args() throw();

  bool operator == (const ClientService_getZooKeepers_args & /* rhs */) const
  {
    return true;
  }
  bool operator != (const ClientService_getZooKeepers_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_getZooKeepers_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_getZooKeepers_pargs {
 public:

  virtual ~ClientService_getZooKeepers_pargs() throw();

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_getZooKeepers_result__isset {
  _ClientService_getZooKeepers_result__isset() : success(false) {}
  bool success :1;
} _ClientService_getZooKeepers_result__isset;

class ClientService_getZooKeepers_result {
 public:

  ClientService_getZooKeepers_result(const ClientService_getZooKeepers_result&);
  ClientService_getZooKeepers_result& operator=(const ClientService_getZooKeepers_result&);
  ClientService_getZooKeepers_result() : success() {
  }

  virtual ~ClientService_getZooKeepers_result() throw();
  std::string success;

  _ClientService_getZooKeepers_result__isset __isset;

  void __set_success(const std::string& val);

  bool operator == (const ClientService_getZooKeepers_result & rhs) const
  {
    if (!(success == rhs.success))
      return false;
    return true;
  }
  bool operator != (const ClientService_getZooKeepers_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_getZooKeepers_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_getZooKeepers_presult__isset {
  _ClientService_getZooKeepers_presult__isset() : success(false) {}
  bool success :1;
} _ClientService_getZooKeepers_presult__isset;

class ClientService_getZooKeepers_presult {
 public:

  virtual ~ClientService_getZooKeepers_presult() throw();
  std::string* success;

  _ClientService_getZooKeepers_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_bulkImportFiles_args__isset {
  _ClientService_bulkImportFiles_args__isset() : tinfo(false), credentials(false), tid(false), tableId(false), files(false), errorDir(false), setTime(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool tid :1;
  bool tableId :1;
  bool files :1;
  bool errorDir :1;
  bool setTime :1;
} _ClientService_bulkImportFiles_args__isset;

class ClientService_bulkImportFiles_args {
 public:

  ClientService_bulkImportFiles_args(const ClientService_bulkImportFiles_args&);
  ClientService_bulkImportFiles_args& operator=(const ClientService_bulkImportFiles_args&);
  ClientService_bulkImportFiles_args() : tid(0), tableId(), errorDir(), setTime(0) {
  }

  virtual ~ClientService_bulkImportFiles_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  int64_t tid;
  std::string tableId;
  std::vector<std::string>  files;
  std::string errorDir;
  bool setTime;

  _ClientService_bulkImportFiles_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_tid(const int64_t val);

  void __set_tableId(const std::string& val);

  void __set_files(const std::vector<std::string> & val);

  void __set_errorDir(const std::string& val);

  void __set_setTime(const bool val);

  bool operator == (const ClientService_bulkImportFiles_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(tid == rhs.tid))
      return false;
    if (!(tableId == rhs.tableId))
      return false;
    if (!(files == rhs.files))
      return false;
    if (!(errorDir == rhs.errorDir))
      return false;
    if (!(setTime == rhs.setTime))
      return false;
    return true;
  }
  bool operator != (const ClientService_bulkImportFiles_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_bulkImportFiles_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_bulkImportFiles_pargs {
 public:

  virtual ~ClientService_bulkImportFiles_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const int64_t* tid;
  const std::string* tableId;
  const std::vector<std::string> * files;
  const std::string* errorDir;
  const bool* setTime;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_bulkImportFiles_result__isset {
  _ClientService_bulkImportFiles_result__isset() : success(false), sec(false), tope(false) {}
  bool success :1;
  bool sec :1;
  bool tope :1;
} _ClientService_bulkImportFiles_result__isset;

class ClientService_bulkImportFiles_result {
 public:

  ClientService_bulkImportFiles_result(const ClientService_bulkImportFiles_result&);
  ClientService_bulkImportFiles_result& operator=(const ClientService_bulkImportFiles_result&);
  ClientService_bulkImportFiles_result() {
  }

  virtual ~ClientService_bulkImportFiles_result() throw();
  std::vector<std::string>  success;
  ThriftSecurityException sec;
  ThriftTableOperationException tope;

  _ClientService_bulkImportFiles_result__isset __isset;

  void __set_success(const std::vector<std::string> & val);

  void __set_sec(const ThriftSecurityException& val);

  void __set_tope(const ThriftTableOperationException& val);

  bool operator == (const ClientService_bulkImportFiles_result & rhs) const
  {
    if (!(success == rhs.success))
      return false;
    if (!(sec == rhs.sec))
      return false;
    if (!(tope == rhs.tope))
      return false;
    return true;
  }
  bool operator != (const ClientService_bulkImportFiles_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_bulkImportFiles_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_bulkImportFiles_presult__isset {
  _ClientService_bulkImportFiles_presult__isset() : success(false), sec(false), tope(false) {}
  bool success :1;
  bool sec :1;
  bool tope :1;
} _ClientService_bulkImportFiles_presult__isset;

class ClientService_bulkImportFiles_presult {
 public:

  virtual ~ClientService_bulkImportFiles_presult() throw();
  std::vector<std::string> * success;
  ThriftSecurityException sec;
  ThriftTableOperationException tope;

  _ClientService_bulkImportFiles_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_isActive_args__isset {
  _ClientService_isActive_args__isset() : tinfo(false), tid(false) {}
  bool tinfo :1;
  bool tid :1;
} _ClientService_isActive_args__isset;

class ClientService_isActive_args {
 public:

  ClientService_isActive_args(const ClientService_isActive_args&);
  ClientService_isActive_args& operator=(const ClientService_isActive_args&);
  ClientService_isActive_args() : tid(0) {
  }

  virtual ~ClientService_isActive_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
  int64_t tid;

  _ClientService_isActive_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_tid(const int64_t val);

  bool operator == (const ClientService_isActive_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(tid == rhs.tid))
      return false;
    return true;
  }
  bool operator != (const ClientService_isActive_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_isActive_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_isActive_pargs {
 public:

  virtual ~ClientService_isActive_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const int64_t* tid;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_isActive_result__isset {
  _ClientService_isActive_result__isset() : success(false) {}
  bool success :1;
} _ClientService_isActive_result__isset;

class ClientService_isActive_result {
 public:

  ClientService_isActive_result(const ClientService_isActive_result&);
  ClientService_isActive_result& operator=(const ClientService_isActive_result&);
  ClientService_isActive_result() : success(0) {
  }

  virtual ~ClientService_isActive_result() throw();
  bool success;

  _ClientService_isActive_result__isset __isset;

  void __set_success(const bool val);

  bool operator == (const ClientService_isActive_result & rhs) const
  {
    if (!(success == rhs.success))
      return false;
    return true;
  }
  bool operator != (const ClientService_isActive_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_isActive_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_isActive_presult__isset {
  _ClientService_isActive_presult__isset() : success(false) {}
  bool success :1;
} _ClientService_isActive_presult__isset;

class ClientService_isActive_presult {
 public:

  virtual ~ClientService_isActive_presult() throw();
  bool* success;

  _ClientService_isActive_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_ping_args__isset {
  _ClientService_ping_args__isset() : credentials(false) {}
  bool credentials :1;
} _ClientService_ping_args__isset;

class ClientService_ping_args {
 public:

  ClientService_ping_args(const ClientService_ping_args&);
  ClientService_ping_args& operator=(const ClientService_ping_args&);
  ClientService_ping_args() {
  }

  virtual ~ClientService_ping_args() throw();
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;

  _ClientService_ping_args__isset __isset;

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  bool operator == (const ClientService_ping_args & rhs) const
  {
    if (!(credentials == rhs.credentials))
      return false;
    return true;
  }
  bool operator != (const ClientService_ping_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_ping_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_ping_pargs {
 public:

  virtual ~ClientService_ping_pargs() throw();
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_ping_result__isset {
  _ClientService_ping_result__isset() : sec(false) {}
  bool sec :1;
} _ClientService_ping_result__isset;

class ClientService_ping_result {
 public:

  ClientService_ping_result(const ClientService_ping_result&);
  ClientService_ping_result& operator=(const ClientService_ping_result&);
  ClientService_ping_result() {
  }

  virtual ~ClientService_ping_result() throw();
  ThriftSecurityException sec;

  _ClientService_ping_result__isset __isset;

  void __set_sec(const ThriftSecurityException& val);

  bool operator == (const ClientService_ping_result & rhs) const
  {
    if (!(sec == rhs.sec))
      return false;
    return true;
  }
  bool operator != (const ClientService_ping_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_ping_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_ping_presult__isset {
  _ClientService_ping_presult__isset() : sec(false) {}
  bool sec :1;
} _ClientService_ping_presult__isset;

class ClientService_ping_presult {
 public:

  virtual ~ClientService_ping_presult() throw();
  ThriftSecurityException sec;

  _ClientService_ping_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_getDiskUsage_args__isset {
  _ClientService_getDiskUsage_args__isset() : tables(false), credentials(false) {}
  bool tables :1;
  bool credentials :1;
} _ClientService_getDiskUsage_args__isset;

class ClientService_getDiskUsage_args {
 public:

  ClientService_getDiskUsage_args(const ClientService_getDiskUsage_args&);
  ClientService_getDiskUsage_args& operator=(const ClientService_getDiskUsage_args&);
  ClientService_getDiskUsage_args() {
  }

  virtual ~ClientService_getDiskUsage_args() throw();
  std::set<std::string>  tables;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;

  _ClientService_getDiskUsage_args__isset __isset;

  void __set_tables(const std::set<std::string> & val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  bool operator == (const ClientService_getDiskUsage_args & rhs) const
  {
    if (!(tables == rhs.tables))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    return true;
  }
  bool operator != (const ClientService_getDiskUsage_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_getDiskUsage_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_getDiskUsage_pargs {
 public:

  virtual ~ClientService_getDiskUsage_pargs() throw();
  const std::set<std::string> * tables;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_getDiskUsage_result__isset {
  _ClientService_getDiskUsage_result__isset() : success(false), sec(false), toe(false) {}
  bool success :1;
  bool sec :1;
  bool toe :1;
} _ClientService_getDiskUsage_result__isset;

class ClientService_getDiskUsage_result {
 public:

  ClientService_getDiskUsage_result(const ClientService_getDiskUsage_result&);
  ClientService_getDiskUsage_result& operator=(const ClientService_getDiskUsage_result&);
  ClientService_getDiskUsage_result() {
  }

  virtual ~ClientService_getDiskUsage_result() throw();
  std::vector<TDiskUsage>  success;
  ThriftSecurityException sec;
  ThriftTableOperationException toe;

  _ClientService_getDiskUsage_result__isset __isset;

  void __set_success(const std::vector<TDiskUsage> & val);

  void __set_sec(const ThriftSecurityException& val);

  void __set_toe(const ThriftTableOperationException& val);

  bool operator == (const ClientService_getDiskUsage_result & rhs) const
  {
    if (!(success == rhs.success))
      return false;
    if (!(sec == rhs.sec))
      return false;
    if (!(toe == rhs.toe))
      return false;
    return true;
  }
  bool operator != (const ClientService_getDiskUsage_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_getDiskUsage_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_getDiskUsage_presult__isset {
  _ClientService_getDiskUsage_presult__isset() : success(false), sec(false), toe(false) {}
  bool success :1;
  bool sec :1;
  bool toe :1;
} _ClientService_getDiskUsage_presult__isset;

class ClientService_getDiskUsage_presult {
 public:

  virtual ~ClientService_getDiskUsage_presult() throw();
  std::vector<TDiskUsage> * success;
  ThriftSecurityException sec;
  ThriftTableOperationException toe;

  _ClientService_getDiskUsage_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_listLocalUsers_args__isset {
  _ClientService_listLocalUsers_args__isset() : tinfo(false), credentials(false) {}
  bool tinfo :1;
  bool credentials :1;
} _ClientService_listLocalUsers_args__isset;

class ClientService_listLocalUsers_args {
 public:

  ClientService_listLocalUsers_args(const ClientService_listLocalUsers_args&);
  ClientService_listLocalUsers_args& operator=(const ClientService_listLocalUsers_args&);
  ClientService_listLocalUsers_args() {
  }

  virtual ~ClientService_listLocalUsers_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;

  _ClientService_listLocalUsers_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  bool operator == (const ClientService_listLocalUsers_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    return true;
  }
  bool operator != (const ClientService_listLocalUsers_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_listLocalUsers_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_listLocalUsers_pargs {
 public:

  virtual ~ClientService_listLocalUsers_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_listLocalUsers_result__isset {
  _ClientService_listLocalUsers_result__isset() : success(false), sec(false) {}
  bool success :1;
  bool sec :1;
} _ClientService_listLocalUsers_result__isset;

class ClientService_listLocalUsers_result {
 public:

  ClientService_listLocalUsers_result(const ClientService_listLocalUsers_result&);
  ClientService_listLocalUsers_result& operator=(const ClientService_listLocalUsers_result&);
  ClientService_listLocalUsers_result() {
  }

  virtual ~ClientService_listLocalUsers_result() throw();
  std::set<std::string>  success;
  ThriftSecurityException sec;

  _ClientService_listLocalUsers_result__isset __isset;

  void __set_success(const std::set<std::string> & val);

  void __set_sec(const ThriftSecurityException& val);

  bool operator == (const ClientService_listLocalUsers_result & rhs) const
  {
    if (!(success == rhs.success))
      return false;
    if (!(sec == rhs.sec))
      return false;
    return true;
  }
  bool operator != (const ClientService_listLocalUsers_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_listLocalUsers_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_listLocalUsers_presult__isset {
  _ClientService_listLocalUsers_presult__isset() : success(false), sec(false) {}
  bool success :1;
  bool sec :1;
} _ClientService_listLocalUsers_presult__isset;

class ClientService_listLocalUsers_presult {
 public:

  virtual ~ClientService_listLocalUsers_presult() throw();
  std::set<std::string> * success;
  ThriftSecurityException sec;

  _ClientService_listLocalUsers_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_createLocalUser_args__isset {
  _ClientService_createLocalUser_args__isset() : tinfo(false), credentials(false), principal(false), password(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool principal :1;
  bool password :1;
} _ClientService_createLocalUser_args__isset;

class ClientService_createLocalUser_args {
 public:

  ClientService_createLocalUser_args(const ClientService_createLocalUser_args&);
  ClientService_createLocalUser_args& operator=(const ClientService_createLocalUser_args&);
  ClientService_createLocalUser_args() : principal(), password() {
  }

  virtual ~ClientService_createLocalUser_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  std::string principal;
  std::string password;

  _ClientService_createLocalUser_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_principal(const std::string& val);

  void __set_password(const std::string& val);

  bool operator == (const ClientService_createLocalUser_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(principal == rhs.principal))
      return false;
    if (!(password == rhs.password))
      return false;
    return true;
  }
  bool operator != (const ClientService_createLocalUser_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_createLocalUser_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_createLocalUser_pargs {
 public:

  virtual ~ClientService_createLocalUser_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const std::string* principal;
  const std::string* password;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_createLocalUser_result__isset {
  _ClientService_createLocalUser_result__isset() : sec(false) {}
  bool sec :1;
} _ClientService_createLocalUser_result__isset;

class ClientService_createLocalUser_result {
 public:

  ClientService_createLocalUser_result(const ClientService_createLocalUser_result&);
  ClientService_createLocalUser_result& operator=(const ClientService_createLocalUser_result&);
  ClientService_createLocalUser_result() {
  }

  virtual ~ClientService_createLocalUser_result() throw();
  ThriftSecurityException sec;

  _ClientService_createLocalUser_result__isset __isset;

  void __set_sec(const ThriftSecurityException& val);

  bool operator == (const ClientService_createLocalUser_result & rhs) const
  {
    if (!(sec == rhs.sec))
      return false;
    return true;
  }
  bool operator != (const ClientService_createLocalUser_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_createLocalUser_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_createLocalUser_presult__isset {
  _ClientService_createLocalUser_presult__isset() : sec(false) {}
  bool sec :1;
} _ClientService_createLocalUser_presult__isset;

class ClientService_createLocalUser_presult {
 public:

  virtual ~ClientService_createLocalUser_presult() throw();
  ThriftSecurityException sec;

  _ClientService_createLocalUser_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_dropLocalUser_args__isset {
  _ClientService_dropLocalUser_args__isset() : tinfo(false), credentials(false), principal(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool principal :1;
} _ClientService_dropLocalUser_args__isset;

class ClientService_dropLocalUser_args {
 public:

  ClientService_dropLocalUser_args(const ClientService_dropLocalUser_args&);
  ClientService_dropLocalUser_args& operator=(const ClientService_dropLocalUser_args&);
  ClientService_dropLocalUser_args() : principal() {
  }

  virtual ~ClientService_dropLocalUser_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  std::string principal;

  _ClientService_dropLocalUser_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_principal(const std::string& val);

  bool operator == (const ClientService_dropLocalUser_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(principal == rhs.principal))
      return false;
    return true;
  }
  bool operator != (const ClientService_dropLocalUser_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_dropLocalUser_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_dropLocalUser_pargs {
 public:

  virtual ~ClientService_dropLocalUser_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const std::string* principal;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_dropLocalUser_result__isset {
  _ClientService_dropLocalUser_result__isset() : sec(false) {}
  bool sec :1;
} _ClientService_dropLocalUser_result__isset;

class ClientService_dropLocalUser_result {
 public:

  ClientService_dropLocalUser_result(const ClientService_dropLocalUser_result&);
  ClientService_dropLocalUser_result& operator=(const ClientService_dropLocalUser_result&);
  ClientService_dropLocalUser_result() {
  }

  virtual ~ClientService_dropLocalUser_result() throw();
  ThriftSecurityException sec;

  _ClientService_dropLocalUser_result__isset __isset;

  void __set_sec(const ThriftSecurityException& val);

  bool operator == (const ClientService_dropLocalUser_result & rhs) const
  {
    if (!(sec == rhs.sec))
      return false;
    return true;
  }
  bool operator != (const ClientService_dropLocalUser_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_dropLocalUser_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_dropLocalUser_presult__isset {
  _ClientService_dropLocalUser_presult__isset() : sec(false) {}
  bool sec :1;
} _ClientService_dropLocalUser_presult__isset;

class ClientService_dropLocalUser_presult {
 public:

  virtual ~ClientService_dropLocalUser_presult() throw();
  ThriftSecurityException sec;

  _ClientService_dropLocalUser_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_changeLocalUserPassword_args__isset {
  _ClientService_changeLocalUserPassword_args__isset() : tinfo(false), credentials(false), principal(false), password(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool principal :1;
  bool password :1;
} _ClientService_changeLocalUserPassword_args__isset;

class ClientService_changeLocalUserPassword_args {
 public:

  ClientService_changeLocalUserPassword_args(const ClientService_changeLocalUserPassword_args&);
  ClientService_changeLocalUserPassword_args& operator=(const ClientService_changeLocalUserPassword_args&);
  ClientService_changeLocalUserPassword_args() : principal(), password() {
  }

  virtual ~ClientService_changeLocalUserPassword_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  std::string principal;
  std::string password;

  _ClientService_changeLocalUserPassword_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_principal(const std::string& val);

  void __set_password(const std::string& val);

  bool operator == (const ClientService_changeLocalUserPassword_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(principal == rhs.principal))
      return false;
    if (!(password == rhs.password))
      return false;
    return true;
  }
  bool operator != (const ClientService_changeLocalUserPassword_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_changeLocalUserPassword_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_changeLocalUserPassword_pargs {
 public:

  virtual ~ClientService_changeLocalUserPassword_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const std::string* principal;
  const std::string* password;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_changeLocalUserPassword_result__isset {
  _ClientService_changeLocalUserPassword_result__isset() : sec(false) {}
  bool sec :1;
} _ClientService_changeLocalUserPassword_result__isset;

class ClientService_changeLocalUserPassword_result {
 public:

  ClientService_changeLocalUserPassword_result(const ClientService_changeLocalUserPassword_result&);
  ClientService_changeLocalUserPassword_result& operator=(const ClientService_changeLocalUserPassword_result&);
  ClientService_changeLocalUserPassword_result() {
  }

  virtual ~ClientService_changeLocalUserPassword_result() throw();
  ThriftSecurityException sec;

  _ClientService_changeLocalUserPassword_result__isset __isset;

  void __set_sec(const ThriftSecurityException& val);

  bool operator == (const ClientService_changeLocalUserPassword_result & rhs) const
  {
    if (!(sec == rhs.sec))
      return false;
    return true;
  }
  bool operator != (const ClientService_changeLocalUserPassword_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_changeLocalUserPassword_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_changeLocalUserPassword_presult__isset {
  _ClientService_changeLocalUserPassword_presult__isset() : sec(false) {}
  bool sec :1;
} _ClientService_changeLocalUserPassword_presult__isset;

class ClientService_changeLocalUserPassword_presult {
 public:

  virtual ~ClientService_changeLocalUserPassword_presult() throw();
  ThriftSecurityException sec;

  _ClientService_changeLocalUserPassword_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_authenticate_args__isset {
  _ClientService_authenticate_args__isset() : tinfo(false), credentials(false) {}
  bool tinfo :1;
  bool credentials :1;
} _ClientService_authenticate_args__isset;

class ClientService_authenticate_args {
 public:

  ClientService_authenticate_args(const ClientService_authenticate_args&);
  ClientService_authenticate_args& operator=(const ClientService_authenticate_args&);
  ClientService_authenticate_args() {
  }

  virtual ~ClientService_authenticate_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;

  _ClientService_authenticate_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  bool operator == (const ClientService_authenticate_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    return true;
  }
  bool operator != (const ClientService_authenticate_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_authenticate_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_authenticate_pargs {
 public:

  virtual ~ClientService_authenticate_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_authenticate_result__isset {
  _ClientService_authenticate_result__isset() : success(false), sec(false) {}
  bool success :1;
  bool sec :1;
} _ClientService_authenticate_result__isset;

class ClientService_authenticate_result {
 public:

  ClientService_authenticate_result(const ClientService_authenticate_result&);
  ClientService_authenticate_result& operator=(const ClientService_authenticate_result&);
  ClientService_authenticate_result() : success(0) {
  }

  virtual ~ClientService_authenticate_result() throw();
  bool success;
  ThriftSecurityException sec;

  _ClientService_authenticate_result__isset __isset;

  void __set_success(const bool val);

  void __set_sec(const ThriftSecurityException& val);

  bool operator == (const ClientService_authenticate_result & rhs) const
  {
    if (!(success == rhs.success))
      return false;
    if (!(sec == rhs.sec))
      return false;
    return true;
  }
  bool operator != (const ClientService_authenticate_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_authenticate_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_authenticate_presult__isset {
  _ClientService_authenticate_presult__isset() : success(false), sec(false) {}
  bool success :1;
  bool sec :1;
} _ClientService_authenticate_presult__isset;

class ClientService_authenticate_presult {
 public:

  virtual ~ClientService_authenticate_presult() throw();
  bool* success;
  ThriftSecurityException sec;

  _ClientService_authenticate_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_authenticateUser_args__isset {
  _ClientService_authenticateUser_args__isset() : tinfo(false), credentials(false), toAuth(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool toAuth :1;
} _ClientService_authenticateUser_args__isset;

class ClientService_authenticateUser_args {
 public:

  ClientService_authenticateUser_args(const ClientService_authenticateUser_args&);
  ClientService_authenticateUser_args& operator=(const ClientService_authenticateUser_args&);
  ClientService_authenticateUser_args() {
  }

  virtual ~ClientService_authenticateUser_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials toAuth;

  _ClientService_authenticateUser_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_toAuth(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  bool operator == (const ClientService_authenticateUser_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(toAuth == rhs.toAuth))
      return false;
    return true;
  }
  bool operator != (const ClientService_authenticateUser_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_authenticateUser_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_authenticateUser_pargs {
 public:

  virtual ~ClientService_authenticateUser_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* toAuth;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_authenticateUser_result__isset {
  _ClientService_authenticateUser_result__isset() : success(false), sec(false) {}
  bool success :1;
  bool sec :1;
} _ClientService_authenticateUser_result__isset;

class ClientService_authenticateUser_result {
 public:

  ClientService_authenticateUser_result(const ClientService_authenticateUser_result&);
  ClientService_authenticateUser_result& operator=(const ClientService_authenticateUser_result&);
  ClientService_authenticateUser_result() : success(0) {
  }

  virtual ~ClientService_authenticateUser_result() throw();
  bool success;
  ThriftSecurityException sec;

  _ClientService_authenticateUser_result__isset __isset;

  void __set_success(const bool val);

  void __set_sec(const ThriftSecurityException& val);

  bool operator == (const ClientService_authenticateUser_result & rhs) const
  {
    if (!(success == rhs.success))
      return false;
    if (!(sec == rhs.sec))
      return false;
    return true;
  }
  bool operator != (const ClientService_authenticateUser_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_authenticateUser_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_authenticateUser_presult__isset {
  _ClientService_authenticateUser_presult__isset() : success(false), sec(false) {}
  bool success :1;
  bool sec :1;
} _ClientService_authenticateUser_presult__isset;

class ClientService_authenticateUser_presult {
 public:

  virtual ~ClientService_authenticateUser_presult() throw();
  bool* success;
  ThriftSecurityException sec;

  _ClientService_authenticateUser_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_changeAuthorizations_args__isset {
  _ClientService_changeAuthorizations_args__isset() : tinfo(false), credentials(false), principal(false), authorizations(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool principal :1;
  bool authorizations :1;
} _ClientService_changeAuthorizations_args__isset;

class ClientService_changeAuthorizations_args {
 public:

  ClientService_changeAuthorizations_args(const ClientService_changeAuthorizations_args&);
  ClientService_changeAuthorizations_args& operator=(const ClientService_changeAuthorizations_args&);
  ClientService_changeAuthorizations_args() : principal() {
  }

  virtual ~ClientService_changeAuthorizations_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  std::string principal;
  std::vector<std::string>  authorizations;

  _ClientService_changeAuthorizations_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_principal(const std::string& val);

  void __set_authorizations(const std::vector<std::string> & val);

  bool operator == (const ClientService_changeAuthorizations_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(principal == rhs.principal))
      return false;
    if (!(authorizations == rhs.authorizations))
      return false;
    return true;
  }
  bool operator != (const ClientService_changeAuthorizations_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_changeAuthorizations_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_changeAuthorizations_pargs {
 public:

  virtual ~ClientService_changeAuthorizations_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const std::string* principal;
  const std::vector<std::string> * authorizations;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_changeAuthorizations_result__isset {
  _ClientService_changeAuthorizations_result__isset() : sec(false) {}
  bool sec :1;
} _ClientService_changeAuthorizations_result__isset;

class ClientService_changeAuthorizations_result {
 public:

  ClientService_changeAuthorizations_result(const ClientService_changeAuthorizations_result&);
  ClientService_changeAuthorizations_result& operator=(const ClientService_changeAuthorizations_result&);
  ClientService_changeAuthorizations_result() {
  }

  virtual ~ClientService_changeAuthorizations_result() throw();
  ThriftSecurityException sec;

  _ClientService_changeAuthorizations_result__isset __isset;

  void __set_sec(const ThriftSecurityException& val);

  bool operator == (const ClientService_changeAuthorizations_result & rhs) const
  {
    if (!(sec == rhs.sec))
      return false;
    return true;
  }
  bool operator != (const ClientService_changeAuthorizations_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_changeAuthorizations_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_changeAuthorizations_presult__isset {
  _ClientService_changeAuthorizations_presult__isset() : sec(false) {}
  bool sec :1;
} _ClientService_changeAuthorizations_presult__isset;

class ClientService_changeAuthorizations_presult {
 public:

  virtual ~ClientService_changeAuthorizations_presult() throw();
  ThriftSecurityException sec;

  _ClientService_changeAuthorizations_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_getUserAuthorizations_args__isset {
  _ClientService_getUserAuthorizations_args__isset() : tinfo(false), credentials(false), principal(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool principal :1;
} _ClientService_getUserAuthorizations_args__isset;

class ClientService_getUserAuthorizations_args {
 public:

  ClientService_getUserAuthorizations_args(const ClientService_getUserAuthorizations_args&);
  ClientService_getUserAuthorizations_args& operator=(const ClientService_getUserAuthorizations_args&);
  ClientService_getUserAuthorizations_args() : principal() {
  }

  virtual ~ClientService_getUserAuthorizations_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  std::string principal;

  _ClientService_getUserAuthorizations_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_principal(const std::string& val);

  bool operator == (const ClientService_getUserAuthorizations_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(principal == rhs.principal))
      return false;
    return true;
  }
  bool operator != (const ClientService_getUserAuthorizations_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_getUserAuthorizations_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_getUserAuthorizations_pargs {
 public:

  virtual ~ClientService_getUserAuthorizations_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const std::string* principal;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_getUserAuthorizations_result__isset {
  _ClientService_getUserAuthorizations_result__isset() : success(false), sec(false) {}
  bool success :1;
  bool sec :1;
} _ClientService_getUserAuthorizations_result__isset;

class ClientService_getUserAuthorizations_result {
 public:

  ClientService_getUserAuthorizations_result(const ClientService_getUserAuthorizations_result&);
  ClientService_getUserAuthorizations_result& operator=(const ClientService_getUserAuthorizations_result&);
  ClientService_getUserAuthorizations_result() {
  }

  virtual ~ClientService_getUserAuthorizations_result() throw();
  std::vector<std::string>  success;
  ThriftSecurityException sec;

  _ClientService_getUserAuthorizations_result__isset __isset;

  void __set_success(const std::vector<std::string> & val);

  void __set_sec(const ThriftSecurityException& val);

  bool operator == (const ClientService_getUserAuthorizations_result & rhs) const
  {
    if (!(success == rhs.success))
      return false;
    if (!(sec == rhs.sec))
      return false;
    return true;
  }
  bool operator != (const ClientService_getUserAuthorizations_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_getUserAuthorizations_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_getUserAuthorizations_presult__isset {
  _ClientService_getUserAuthorizations_presult__isset() : success(false), sec(false) {}
  bool success :1;
  bool sec :1;
} _ClientService_getUserAuthorizations_presult__isset;

class ClientService_getUserAuthorizations_presult {
 public:

  virtual ~ClientService_getUserAuthorizations_presult() throw();
  std::vector<std::string> * success;
  ThriftSecurityException sec;

  _ClientService_getUserAuthorizations_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_hasSystemPermission_args__isset {
  _ClientService_hasSystemPermission_args__isset() : tinfo(false), credentials(false), principal(false), sysPerm(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool principal :1;
  bool sysPerm :1;
} _ClientService_hasSystemPermission_args__isset;

class ClientService_hasSystemPermission_args {
 public:

  ClientService_hasSystemPermission_args(const ClientService_hasSystemPermission_args&);
  ClientService_hasSystemPermission_args& operator=(const ClientService_hasSystemPermission_args&);
  ClientService_hasSystemPermission_args() : principal(), sysPerm(0) {
  }

  virtual ~ClientService_hasSystemPermission_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  std::string principal;
  int8_t sysPerm;

  _ClientService_hasSystemPermission_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_principal(const std::string& val);

  void __set_sysPerm(const int8_t val);

  bool operator == (const ClientService_hasSystemPermission_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(principal == rhs.principal))
      return false;
    if (!(sysPerm == rhs.sysPerm))
      return false;
    return true;
  }
  bool operator != (const ClientService_hasSystemPermission_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_hasSystemPermission_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_hasSystemPermission_pargs {
 public:

  virtual ~ClientService_hasSystemPermission_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const std::string* principal;
  const int8_t* sysPerm;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_hasSystemPermission_result__isset {
  _ClientService_hasSystemPermission_result__isset() : success(false), sec(false) {}
  bool success :1;
  bool sec :1;
} _ClientService_hasSystemPermission_result__isset;

class ClientService_hasSystemPermission_result {
 public:

  ClientService_hasSystemPermission_result(const ClientService_hasSystemPermission_result&);
  ClientService_hasSystemPermission_result& operator=(const ClientService_hasSystemPermission_result&);
  ClientService_hasSystemPermission_result() : success(0) {
  }

  virtual ~ClientService_hasSystemPermission_result() throw();
  bool success;
  ThriftSecurityException sec;

  _ClientService_hasSystemPermission_result__isset __isset;

  void __set_success(const bool val);

  void __set_sec(const ThriftSecurityException& val);

  bool operator == (const ClientService_hasSystemPermission_result & rhs) const
  {
    if (!(success == rhs.success))
      return false;
    if (!(sec == rhs.sec))
      return false;
    return true;
  }
  bool operator != (const ClientService_hasSystemPermission_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_hasSystemPermission_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_hasSystemPermission_presult__isset {
  _ClientService_hasSystemPermission_presult__isset() : success(false), sec(false) {}
  bool success :1;
  bool sec :1;
} _ClientService_hasSystemPermission_presult__isset;

class ClientService_hasSystemPermission_presult {
 public:

  virtual ~ClientService_hasSystemPermission_presult() throw();
  bool* success;
  ThriftSecurityException sec;

  _ClientService_hasSystemPermission_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_hasTablePermission_args__isset {
  _ClientService_hasTablePermission_args__isset() : tinfo(false), credentials(false), principal(false), tableName(false), tblPerm(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool principal :1;
  bool tableName :1;
  bool tblPerm :1;
} _ClientService_hasTablePermission_args__isset;

class ClientService_hasTablePermission_args {
 public:

  ClientService_hasTablePermission_args(const ClientService_hasTablePermission_args&);
  ClientService_hasTablePermission_args& operator=(const ClientService_hasTablePermission_args&);
  ClientService_hasTablePermission_args() : principal(), tableName(), tblPerm(0) {
  }

  virtual ~ClientService_hasTablePermission_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  std::string principal;
  std::string tableName;
  int8_t tblPerm;

  _ClientService_hasTablePermission_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_principal(const std::string& val);

  void __set_tableName(const std::string& val);

  void __set_tblPerm(const int8_t val);

  bool operator == (const ClientService_hasTablePermission_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(principal == rhs.principal))
      return false;
    if (!(tableName == rhs.tableName))
      return false;
    if (!(tblPerm == rhs.tblPerm))
      return false;
    return true;
  }
  bool operator != (const ClientService_hasTablePermission_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_hasTablePermission_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_hasTablePermission_pargs {
 public:

  virtual ~ClientService_hasTablePermission_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const std::string* principal;
  const std::string* tableName;
  const int8_t* tblPerm;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_hasTablePermission_result__isset {
  _ClientService_hasTablePermission_result__isset() : success(false), sec(false), tope(false) {}
  bool success :1;
  bool sec :1;
  bool tope :1;
} _ClientService_hasTablePermission_result__isset;

class ClientService_hasTablePermission_result {
 public:

  ClientService_hasTablePermission_result(const ClientService_hasTablePermission_result&);
  ClientService_hasTablePermission_result& operator=(const ClientService_hasTablePermission_result&);
  ClientService_hasTablePermission_result() : success(0) {
  }

  virtual ~ClientService_hasTablePermission_result() throw();
  bool success;
  ThriftSecurityException sec;
  ThriftTableOperationException tope;

  _ClientService_hasTablePermission_result__isset __isset;

  void __set_success(const bool val);

  void __set_sec(const ThriftSecurityException& val);

  void __set_tope(const ThriftTableOperationException& val);

  bool operator == (const ClientService_hasTablePermission_result & rhs) const
  {
    if (!(success == rhs.success))
      return false;
    if (!(sec == rhs.sec))
      return false;
    if (!(tope == rhs.tope))
      return false;
    return true;
  }
  bool operator != (const ClientService_hasTablePermission_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_hasTablePermission_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_hasTablePermission_presult__isset {
  _ClientService_hasTablePermission_presult__isset() : success(false), sec(false), tope(false) {}
  bool success :1;
  bool sec :1;
  bool tope :1;
} _ClientService_hasTablePermission_presult__isset;

class ClientService_hasTablePermission_presult {
 public:

  virtual ~ClientService_hasTablePermission_presult() throw();
  bool* success;
  ThriftSecurityException sec;
  ThriftTableOperationException tope;

  _ClientService_hasTablePermission_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_hasNamespacePermission_args__isset {
  _ClientService_hasNamespacePermission_args__isset() : tinfo(false), credentials(false), principal(false), ns(false), tblNspcPerm(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool principal :1;
  bool ns :1;
  bool tblNspcPerm :1;
} _ClientService_hasNamespacePermission_args__isset;

class ClientService_hasNamespacePermission_args {
 public:

  ClientService_hasNamespacePermission_args(const ClientService_hasNamespacePermission_args&);
  ClientService_hasNamespacePermission_args& operator=(const ClientService_hasNamespacePermission_args&);
  ClientService_hasNamespacePermission_args() : principal(), ns(), tblNspcPerm(0) {
  }

  virtual ~ClientService_hasNamespacePermission_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  std::string principal;
  std::string ns;
  int8_t tblNspcPerm;

  _ClientService_hasNamespacePermission_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_principal(const std::string& val);

  void __set_ns(const std::string& val);

  void __set_tblNspcPerm(const int8_t val);

  bool operator == (const ClientService_hasNamespacePermission_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(principal == rhs.principal))
      return false;
    if (!(ns == rhs.ns))
      return false;
    if (!(tblNspcPerm == rhs.tblNspcPerm))
      return false;
    return true;
  }
  bool operator != (const ClientService_hasNamespacePermission_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_hasNamespacePermission_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_hasNamespacePermission_pargs {
 public:

  virtual ~ClientService_hasNamespacePermission_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const std::string* principal;
  const std::string* ns;
  const int8_t* tblNspcPerm;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_hasNamespacePermission_result__isset {
  _ClientService_hasNamespacePermission_result__isset() : success(false), sec(false), tope(false) {}
  bool success :1;
  bool sec :1;
  bool tope :1;
} _ClientService_hasNamespacePermission_result__isset;

class ClientService_hasNamespacePermission_result {
 public:

  ClientService_hasNamespacePermission_result(const ClientService_hasNamespacePermission_result&);
  ClientService_hasNamespacePermission_result& operator=(const ClientService_hasNamespacePermission_result&);
  ClientService_hasNamespacePermission_result() : success(0) {
  }

  virtual ~ClientService_hasNamespacePermission_result() throw();
  bool success;
  ThriftSecurityException sec;
  ThriftTableOperationException tope;

  _ClientService_hasNamespacePermission_result__isset __isset;

  void __set_success(const bool val);

  void __set_sec(const ThriftSecurityException& val);

  void __set_tope(const ThriftTableOperationException& val);

  bool operator == (const ClientService_hasNamespacePermission_result & rhs) const
  {
    if (!(success == rhs.success))
      return false;
    if (!(sec == rhs.sec))
      return false;
    if (!(tope == rhs.tope))
      return false;
    return true;
  }
  bool operator != (const ClientService_hasNamespacePermission_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_hasNamespacePermission_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_hasNamespacePermission_presult__isset {
  _ClientService_hasNamespacePermission_presult__isset() : success(false), sec(false), tope(false) {}
  bool success :1;
  bool sec :1;
  bool tope :1;
} _ClientService_hasNamespacePermission_presult__isset;

class ClientService_hasNamespacePermission_presult {
 public:

  virtual ~ClientService_hasNamespacePermission_presult() throw();
  bool* success;
  ThriftSecurityException sec;
  ThriftTableOperationException tope;

  _ClientService_hasNamespacePermission_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_grantSystemPermission_args__isset {
  _ClientService_grantSystemPermission_args__isset() : tinfo(false), credentials(false), principal(false), permission(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool principal :1;
  bool permission :1;
} _ClientService_grantSystemPermission_args__isset;

class ClientService_grantSystemPermission_args {
 public:

  ClientService_grantSystemPermission_args(const ClientService_grantSystemPermission_args&);
  ClientService_grantSystemPermission_args& operator=(const ClientService_grantSystemPermission_args&);
  ClientService_grantSystemPermission_args() : principal(), permission(0) {
  }

  virtual ~ClientService_grantSystemPermission_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  std::string principal;
  int8_t permission;

  _ClientService_grantSystemPermission_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_principal(const std::string& val);

  void __set_permission(const int8_t val);

  bool operator == (const ClientService_grantSystemPermission_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(principal == rhs.principal))
      return false;
    if (!(permission == rhs.permission))
      return false;
    return true;
  }
  bool operator != (const ClientService_grantSystemPermission_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_grantSystemPermission_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_grantSystemPermission_pargs {
 public:

  virtual ~ClientService_grantSystemPermission_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const std::string* principal;
  const int8_t* permission;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_grantSystemPermission_result__isset {
  _ClientService_grantSystemPermission_result__isset() : sec(false) {}
  bool sec :1;
} _ClientService_grantSystemPermission_result__isset;

class ClientService_grantSystemPermission_result {
 public:

  ClientService_grantSystemPermission_result(const ClientService_grantSystemPermission_result&);
  ClientService_grantSystemPermission_result& operator=(const ClientService_grantSystemPermission_result&);
  ClientService_grantSystemPermission_result() {
  }

  virtual ~ClientService_grantSystemPermission_result() throw();
  ThriftSecurityException sec;

  _ClientService_grantSystemPermission_result__isset __isset;

  void __set_sec(const ThriftSecurityException& val);

  bool operator == (const ClientService_grantSystemPermission_result & rhs) const
  {
    if (!(sec == rhs.sec))
      return false;
    return true;
  }
  bool operator != (const ClientService_grantSystemPermission_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_grantSystemPermission_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_grantSystemPermission_presult__isset {
  _ClientService_grantSystemPermission_presult__isset() : sec(false) {}
  bool sec :1;
} _ClientService_grantSystemPermission_presult__isset;

class ClientService_grantSystemPermission_presult {
 public:

  virtual ~ClientService_grantSystemPermission_presult() throw();
  ThriftSecurityException sec;

  _ClientService_grantSystemPermission_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_revokeSystemPermission_args__isset {
  _ClientService_revokeSystemPermission_args__isset() : tinfo(false), credentials(false), principal(false), permission(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool principal :1;
  bool permission :1;
} _ClientService_revokeSystemPermission_args__isset;

class ClientService_revokeSystemPermission_args {
 public:

  ClientService_revokeSystemPermission_args(const ClientService_revokeSystemPermission_args&);
  ClientService_revokeSystemPermission_args& operator=(const ClientService_revokeSystemPermission_args&);
  ClientService_revokeSystemPermission_args() : principal(), permission(0) {
  }

  virtual ~ClientService_revokeSystemPermission_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  std::string principal;
  int8_t permission;

  _ClientService_revokeSystemPermission_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_principal(const std::string& val);

  void __set_permission(const int8_t val);

  bool operator == (const ClientService_revokeSystemPermission_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(principal == rhs.principal))
      return false;
    if (!(permission == rhs.permission))
      return false;
    return true;
  }
  bool operator != (const ClientService_revokeSystemPermission_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_revokeSystemPermission_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_revokeSystemPermission_pargs {
 public:

  virtual ~ClientService_revokeSystemPermission_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const std::string* principal;
  const int8_t* permission;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_revokeSystemPermission_result__isset {
  _ClientService_revokeSystemPermission_result__isset() : sec(false) {}
  bool sec :1;
} _ClientService_revokeSystemPermission_result__isset;

class ClientService_revokeSystemPermission_result {
 public:

  ClientService_revokeSystemPermission_result(const ClientService_revokeSystemPermission_result&);
  ClientService_revokeSystemPermission_result& operator=(const ClientService_revokeSystemPermission_result&);
  ClientService_revokeSystemPermission_result() {
  }

  virtual ~ClientService_revokeSystemPermission_result() throw();
  ThriftSecurityException sec;

  _ClientService_revokeSystemPermission_result__isset __isset;

  void __set_sec(const ThriftSecurityException& val);

  bool operator == (const ClientService_revokeSystemPermission_result & rhs) const
  {
    if (!(sec == rhs.sec))
      return false;
    return true;
  }
  bool operator != (const ClientService_revokeSystemPermission_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_revokeSystemPermission_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_revokeSystemPermission_presult__isset {
  _ClientService_revokeSystemPermission_presult__isset() : sec(false) {}
  bool sec :1;
} _ClientService_revokeSystemPermission_presult__isset;

class ClientService_revokeSystemPermission_presult {
 public:

  virtual ~ClientService_revokeSystemPermission_presult() throw();
  ThriftSecurityException sec;

  _ClientService_revokeSystemPermission_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_grantTablePermission_args__isset {
  _ClientService_grantTablePermission_args__isset() : tinfo(false), credentials(false), principal(false), tableName(false), permission(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool principal :1;
  bool tableName :1;
  bool permission :1;
} _ClientService_grantTablePermission_args__isset;

class ClientService_grantTablePermission_args {
 public:

  ClientService_grantTablePermission_args(const ClientService_grantTablePermission_args&);
  ClientService_grantTablePermission_args& operator=(const ClientService_grantTablePermission_args&);
  ClientService_grantTablePermission_args() : principal(), tableName(), permission(0) {
  }

  virtual ~ClientService_grantTablePermission_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  std::string principal;
  std::string tableName;
  int8_t permission;

  _ClientService_grantTablePermission_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_principal(const std::string& val);

  void __set_tableName(const std::string& val);

  void __set_permission(const int8_t val);

  bool operator == (const ClientService_grantTablePermission_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(principal == rhs.principal))
      return false;
    if (!(tableName == rhs.tableName))
      return false;
    if (!(permission == rhs.permission))
      return false;
    return true;
  }
  bool operator != (const ClientService_grantTablePermission_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_grantTablePermission_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_grantTablePermission_pargs {
 public:

  virtual ~ClientService_grantTablePermission_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const std::string* principal;
  const std::string* tableName;
  const int8_t* permission;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_grantTablePermission_result__isset {
  _ClientService_grantTablePermission_result__isset() : sec(false), tope(false) {}
  bool sec :1;
  bool tope :1;
} _ClientService_grantTablePermission_result__isset;

class ClientService_grantTablePermission_result {
 public:

  ClientService_grantTablePermission_result(const ClientService_grantTablePermission_result&);
  ClientService_grantTablePermission_result& operator=(const ClientService_grantTablePermission_result&);
  ClientService_grantTablePermission_result() {
  }

  virtual ~ClientService_grantTablePermission_result() throw();
  ThriftSecurityException sec;
  ThriftTableOperationException tope;

  _ClientService_grantTablePermission_result__isset __isset;

  void __set_sec(const ThriftSecurityException& val);

  void __set_tope(const ThriftTableOperationException& val);

  bool operator == (const ClientService_grantTablePermission_result & rhs) const
  {
    if (!(sec == rhs.sec))
      return false;
    if (!(tope == rhs.tope))
      return false;
    return true;
  }
  bool operator != (const ClientService_grantTablePermission_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_grantTablePermission_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_grantTablePermission_presult__isset {
  _ClientService_grantTablePermission_presult__isset() : sec(false), tope(false) {}
  bool sec :1;
  bool tope :1;
} _ClientService_grantTablePermission_presult__isset;

class ClientService_grantTablePermission_presult {
 public:

  virtual ~ClientService_grantTablePermission_presult() throw();
  ThriftSecurityException sec;
  ThriftTableOperationException tope;

  _ClientService_grantTablePermission_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_revokeTablePermission_args__isset {
  _ClientService_revokeTablePermission_args__isset() : tinfo(false), credentials(false), principal(false), tableName(false), permission(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool principal :1;
  bool tableName :1;
  bool permission :1;
} _ClientService_revokeTablePermission_args__isset;

class ClientService_revokeTablePermission_args {
 public:

  ClientService_revokeTablePermission_args(const ClientService_revokeTablePermission_args&);
  ClientService_revokeTablePermission_args& operator=(const ClientService_revokeTablePermission_args&);
  ClientService_revokeTablePermission_args() : principal(), tableName(), permission(0) {
  }

  virtual ~ClientService_revokeTablePermission_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  std::string principal;
  std::string tableName;
  int8_t permission;

  _ClientService_revokeTablePermission_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_principal(const std::string& val);

  void __set_tableName(const std::string& val);

  void __set_permission(const int8_t val);

  bool operator == (const ClientService_revokeTablePermission_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(principal == rhs.principal))
      return false;
    if (!(tableName == rhs.tableName))
      return false;
    if (!(permission == rhs.permission))
      return false;
    return true;
  }
  bool operator != (const ClientService_revokeTablePermission_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_revokeTablePermission_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_revokeTablePermission_pargs {
 public:

  virtual ~ClientService_revokeTablePermission_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const std::string* principal;
  const std::string* tableName;
  const int8_t* permission;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_revokeTablePermission_result__isset {
  _ClientService_revokeTablePermission_result__isset() : sec(false), tope(false) {}
  bool sec :1;
  bool tope :1;
} _ClientService_revokeTablePermission_result__isset;

class ClientService_revokeTablePermission_result {
 public:

  ClientService_revokeTablePermission_result(const ClientService_revokeTablePermission_result&);
  ClientService_revokeTablePermission_result& operator=(const ClientService_revokeTablePermission_result&);
  ClientService_revokeTablePermission_result() {
  }

  virtual ~ClientService_revokeTablePermission_result() throw();
  ThriftSecurityException sec;
  ThriftTableOperationException tope;

  _ClientService_revokeTablePermission_result__isset __isset;

  void __set_sec(const ThriftSecurityException& val);

  void __set_tope(const ThriftTableOperationException& val);

  bool operator == (const ClientService_revokeTablePermission_result & rhs) const
  {
    if (!(sec == rhs.sec))
      return false;
    if (!(tope == rhs.tope))
      return false;
    return true;
  }
  bool operator != (const ClientService_revokeTablePermission_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_revokeTablePermission_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_revokeTablePermission_presult__isset {
  _ClientService_revokeTablePermission_presult__isset() : sec(false), tope(false) {}
  bool sec :1;
  bool tope :1;
} _ClientService_revokeTablePermission_presult__isset;

class ClientService_revokeTablePermission_presult {
 public:

  virtual ~ClientService_revokeTablePermission_presult() throw();
  ThriftSecurityException sec;
  ThriftTableOperationException tope;

  _ClientService_revokeTablePermission_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_grantNamespacePermission_args__isset {
  _ClientService_grantNamespacePermission_args__isset() : tinfo(false), credentials(false), principal(false), ns(false), permission(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool principal :1;
  bool ns :1;
  bool permission :1;
} _ClientService_grantNamespacePermission_args__isset;

class ClientService_grantNamespacePermission_args {
 public:

  ClientService_grantNamespacePermission_args(const ClientService_grantNamespacePermission_args&);
  ClientService_grantNamespacePermission_args& operator=(const ClientService_grantNamespacePermission_args&);
  ClientService_grantNamespacePermission_args() : principal(), ns(), permission(0) {
  }

  virtual ~ClientService_grantNamespacePermission_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  std::string principal;
  std::string ns;
  int8_t permission;

  _ClientService_grantNamespacePermission_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_principal(const std::string& val);

  void __set_ns(const std::string& val);

  void __set_permission(const int8_t val);

  bool operator == (const ClientService_grantNamespacePermission_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(principal == rhs.principal))
      return false;
    if (!(ns == rhs.ns))
      return false;
    if (!(permission == rhs.permission))
      return false;
    return true;
  }
  bool operator != (const ClientService_grantNamespacePermission_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_grantNamespacePermission_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_grantNamespacePermission_pargs {
 public:

  virtual ~ClientService_grantNamespacePermission_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const std::string* principal;
  const std::string* ns;
  const int8_t* permission;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_grantNamespacePermission_result__isset {
  _ClientService_grantNamespacePermission_result__isset() : sec(false), tope(false) {}
  bool sec :1;
  bool tope :1;
} _ClientService_grantNamespacePermission_result__isset;

class ClientService_grantNamespacePermission_result {
 public:

  ClientService_grantNamespacePermission_result(const ClientService_grantNamespacePermission_result&);
  ClientService_grantNamespacePermission_result& operator=(const ClientService_grantNamespacePermission_result&);
  ClientService_grantNamespacePermission_result() {
  }

  virtual ~ClientService_grantNamespacePermission_result() throw();
  ThriftSecurityException sec;
  ThriftTableOperationException tope;

  _ClientService_grantNamespacePermission_result__isset __isset;

  void __set_sec(const ThriftSecurityException& val);

  void __set_tope(const ThriftTableOperationException& val);

  bool operator == (const ClientService_grantNamespacePermission_result & rhs) const
  {
    if (!(sec == rhs.sec))
      return false;
    if (!(tope == rhs.tope))
      return false;
    return true;
  }
  bool operator != (const ClientService_grantNamespacePermission_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_grantNamespacePermission_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_grantNamespacePermission_presult__isset {
  _ClientService_grantNamespacePermission_presult__isset() : sec(false), tope(false) {}
  bool sec :1;
  bool tope :1;
} _ClientService_grantNamespacePermission_presult__isset;

class ClientService_grantNamespacePermission_presult {
 public:

  virtual ~ClientService_grantNamespacePermission_presult() throw();
  ThriftSecurityException sec;
  ThriftTableOperationException tope;

  _ClientService_grantNamespacePermission_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_revokeNamespacePermission_args__isset {
  _ClientService_revokeNamespacePermission_args__isset() : tinfo(false), credentials(false), principal(false), ns(false), permission(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool principal :1;
  bool ns :1;
  bool permission :1;
} _ClientService_revokeNamespacePermission_args__isset;

class ClientService_revokeNamespacePermission_args {
 public:

  ClientService_revokeNamespacePermission_args(const ClientService_revokeNamespacePermission_args&);
  ClientService_revokeNamespacePermission_args& operator=(const ClientService_revokeNamespacePermission_args&);
  ClientService_revokeNamespacePermission_args() : principal(), ns(), permission(0) {
  }

  virtual ~ClientService_revokeNamespacePermission_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  std::string principal;
  std::string ns;
  int8_t permission;

  _ClientService_revokeNamespacePermission_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_principal(const std::string& val);

  void __set_ns(const std::string& val);

  void __set_permission(const int8_t val);

  bool operator == (const ClientService_revokeNamespacePermission_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(principal == rhs.principal))
      return false;
    if (!(ns == rhs.ns))
      return false;
    if (!(permission == rhs.permission))
      return false;
    return true;
  }
  bool operator != (const ClientService_revokeNamespacePermission_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_revokeNamespacePermission_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_revokeNamespacePermission_pargs {
 public:

  virtual ~ClientService_revokeNamespacePermission_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const std::string* principal;
  const std::string* ns;
  const int8_t* permission;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_revokeNamespacePermission_result__isset {
  _ClientService_revokeNamespacePermission_result__isset() : sec(false), tope(false) {}
  bool sec :1;
  bool tope :1;
} _ClientService_revokeNamespacePermission_result__isset;

class ClientService_revokeNamespacePermission_result {
 public:

  ClientService_revokeNamespacePermission_result(const ClientService_revokeNamespacePermission_result&);
  ClientService_revokeNamespacePermission_result& operator=(const ClientService_revokeNamespacePermission_result&);
  ClientService_revokeNamespacePermission_result() {
  }

  virtual ~ClientService_revokeNamespacePermission_result() throw();
  ThriftSecurityException sec;
  ThriftTableOperationException tope;

  _ClientService_revokeNamespacePermission_result__isset __isset;

  void __set_sec(const ThriftSecurityException& val);

  void __set_tope(const ThriftTableOperationException& val);

  bool operator == (const ClientService_revokeNamespacePermission_result & rhs) const
  {
    if (!(sec == rhs.sec))
      return false;
    if (!(tope == rhs.tope))
      return false;
    return true;
  }
  bool operator != (const ClientService_revokeNamespacePermission_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_revokeNamespacePermission_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_revokeNamespacePermission_presult__isset {
  _ClientService_revokeNamespacePermission_presult__isset() : sec(false), tope(false) {}
  bool sec :1;
  bool tope :1;
} _ClientService_revokeNamespacePermission_presult__isset;

class ClientService_revokeNamespacePermission_presult {
 public:

  virtual ~ClientService_revokeNamespacePermission_presult() throw();
  ThriftSecurityException sec;
  ThriftTableOperationException tope;

  _ClientService_revokeNamespacePermission_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_getConfiguration_args__isset {
  _ClientService_getConfiguration_args__isset() : tinfo(false), credentials(false), type(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool type :1;
} _ClientService_getConfiguration_args__isset;

class ClientService_getConfiguration_args {
 public:

  ClientService_getConfiguration_args(const ClientService_getConfiguration_args&);
  ClientService_getConfiguration_args& operator=(const ClientService_getConfiguration_args&);
  ClientService_getConfiguration_args() : type((ConfigurationType::type)0) {
  }

  virtual ~ClientService_getConfiguration_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  ConfigurationType::type type;

  _ClientService_getConfiguration_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_type(const ConfigurationType::type val);

  bool operator == (const ClientService_getConfiguration_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(type == rhs.type))
      return false;
    return true;
  }
  bool operator != (const ClientService_getConfiguration_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_getConfiguration_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_getConfiguration_pargs {
 public:

  virtual ~ClientService_getConfiguration_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const ConfigurationType::type* type;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_getConfiguration_result__isset {
  _ClientService_getConfiguration_result__isset() : success(false) {}
  bool success :1;
} _ClientService_getConfiguration_result__isset;

class ClientService_getConfiguration_result {
 public:

  ClientService_getConfiguration_result(const ClientService_getConfiguration_result&);
  ClientService_getConfiguration_result& operator=(const ClientService_getConfiguration_result&);
  ClientService_getConfiguration_result() {
  }

  virtual ~ClientService_getConfiguration_result() throw();
  std::map<std::string, std::string>  success;

  _ClientService_getConfiguration_result__isset __isset;

  void __set_success(const std::map<std::string, std::string> & val);

  bool operator == (const ClientService_getConfiguration_result & rhs) const
  {
    if (!(success == rhs.success))
      return false;
    return true;
  }
  bool operator != (const ClientService_getConfiguration_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_getConfiguration_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_getConfiguration_presult__isset {
  _ClientService_getConfiguration_presult__isset() : success(false) {}
  bool success :1;
} _ClientService_getConfiguration_presult__isset;

class ClientService_getConfiguration_presult {
 public:

  virtual ~ClientService_getConfiguration_presult() throw();
  std::map<std::string, std::string> * success;

  _ClientService_getConfiguration_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_getTableConfiguration_args__isset {
  _ClientService_getTableConfiguration_args__isset() : tinfo(false), credentials(false), tableName(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool tableName :1;
} _ClientService_getTableConfiguration_args__isset;

class ClientService_getTableConfiguration_args {
 public:

  ClientService_getTableConfiguration_args(const ClientService_getTableConfiguration_args&);
  ClientService_getTableConfiguration_args& operator=(const ClientService_getTableConfiguration_args&);
  ClientService_getTableConfiguration_args() : tableName() {
  }

  virtual ~ClientService_getTableConfiguration_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  std::string tableName;

  _ClientService_getTableConfiguration_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_tableName(const std::string& val);

  bool operator == (const ClientService_getTableConfiguration_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(tableName == rhs.tableName))
      return false;
    return true;
  }
  bool operator != (const ClientService_getTableConfiguration_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_getTableConfiguration_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_getTableConfiguration_pargs {
 public:

  virtual ~ClientService_getTableConfiguration_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const std::string* tableName;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_getTableConfiguration_result__isset {
  _ClientService_getTableConfiguration_result__isset() : success(false), tope(false) {}
  bool success :1;
  bool tope :1;
} _ClientService_getTableConfiguration_result__isset;

class ClientService_getTableConfiguration_result {
 public:

  ClientService_getTableConfiguration_result(const ClientService_getTableConfiguration_result&);
  ClientService_getTableConfiguration_result& operator=(const ClientService_getTableConfiguration_result&);
  ClientService_getTableConfiguration_result() {
  }

  virtual ~ClientService_getTableConfiguration_result() throw();
  std::map<std::string, std::string>  success;
  ThriftTableOperationException tope;

  _ClientService_getTableConfiguration_result__isset __isset;

  void __set_success(const std::map<std::string, std::string> & val);

  void __set_tope(const ThriftTableOperationException& val);

  bool operator == (const ClientService_getTableConfiguration_result & rhs) const
  {
    if (!(success == rhs.success))
      return false;
    if (!(tope == rhs.tope))
      return false;
    return true;
  }
  bool operator != (const ClientService_getTableConfiguration_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_getTableConfiguration_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_getTableConfiguration_presult__isset {
  _ClientService_getTableConfiguration_presult__isset() : success(false), tope(false) {}
  bool success :1;
  bool tope :1;
} _ClientService_getTableConfiguration_presult__isset;

class ClientService_getTableConfiguration_presult {
 public:

  virtual ~ClientService_getTableConfiguration_presult() throw();
  std::map<std::string, std::string> * success;
  ThriftTableOperationException tope;

  _ClientService_getTableConfiguration_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_getNamespaceConfiguration_args__isset {
  _ClientService_getNamespaceConfiguration_args__isset() : tinfo(false), credentials(false), ns(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool ns :1;
} _ClientService_getNamespaceConfiguration_args__isset;

class ClientService_getNamespaceConfiguration_args {
 public:

  ClientService_getNamespaceConfiguration_args(const ClientService_getNamespaceConfiguration_args&);
  ClientService_getNamespaceConfiguration_args& operator=(const ClientService_getNamespaceConfiguration_args&);
  ClientService_getNamespaceConfiguration_args() : ns() {
  }

  virtual ~ClientService_getNamespaceConfiguration_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  std::string ns;

  _ClientService_getNamespaceConfiguration_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_ns(const std::string& val);

  bool operator == (const ClientService_getNamespaceConfiguration_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(ns == rhs.ns))
      return false;
    return true;
  }
  bool operator != (const ClientService_getNamespaceConfiguration_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_getNamespaceConfiguration_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_getNamespaceConfiguration_pargs {
 public:

  virtual ~ClientService_getNamespaceConfiguration_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const std::string* ns;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_getNamespaceConfiguration_result__isset {
  _ClientService_getNamespaceConfiguration_result__isset() : success(false), tope(false) {}
  bool success :1;
  bool tope :1;
} _ClientService_getNamespaceConfiguration_result__isset;

class ClientService_getNamespaceConfiguration_result {
 public:

  ClientService_getNamespaceConfiguration_result(const ClientService_getNamespaceConfiguration_result&);
  ClientService_getNamespaceConfiguration_result& operator=(const ClientService_getNamespaceConfiguration_result&);
  ClientService_getNamespaceConfiguration_result() {
  }

  virtual ~ClientService_getNamespaceConfiguration_result() throw();
  std::map<std::string, std::string>  success;
  ThriftTableOperationException tope;

  _ClientService_getNamespaceConfiguration_result__isset __isset;

  void __set_success(const std::map<std::string, std::string> & val);

  void __set_tope(const ThriftTableOperationException& val);

  bool operator == (const ClientService_getNamespaceConfiguration_result & rhs) const
  {
    if (!(success == rhs.success))
      return false;
    if (!(tope == rhs.tope))
      return false;
    return true;
  }
  bool operator != (const ClientService_getNamespaceConfiguration_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_getNamespaceConfiguration_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_getNamespaceConfiguration_presult__isset {
  _ClientService_getNamespaceConfiguration_presult__isset() : success(false), tope(false) {}
  bool success :1;
  bool tope :1;
} _ClientService_getNamespaceConfiguration_presult__isset;

class ClientService_getNamespaceConfiguration_presult {
 public:

  virtual ~ClientService_getNamespaceConfiguration_presult() throw();
  std::map<std::string, std::string> * success;
  ThriftTableOperationException tope;

  _ClientService_getNamespaceConfiguration_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_checkClass_args__isset {
  _ClientService_checkClass_args__isset() : tinfo(false), credentials(false), className(false), interfaceMatch(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool className :1;
  bool interfaceMatch :1;
} _ClientService_checkClass_args__isset;

class ClientService_checkClass_args {
 public:

  ClientService_checkClass_args(const ClientService_checkClass_args&);
  ClientService_checkClass_args& operator=(const ClientService_checkClass_args&);
  ClientService_checkClass_args() : className(), interfaceMatch() {
  }

  virtual ~ClientService_checkClass_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  std::string className;
  std::string interfaceMatch;

  _ClientService_checkClass_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_className(const std::string& val);

  void __set_interfaceMatch(const std::string& val);

  bool operator == (const ClientService_checkClass_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(className == rhs.className))
      return false;
    if (!(interfaceMatch == rhs.interfaceMatch))
      return false;
    return true;
  }
  bool operator != (const ClientService_checkClass_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_checkClass_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_checkClass_pargs {
 public:

  virtual ~ClientService_checkClass_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const std::string* className;
  const std::string* interfaceMatch;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_checkClass_result__isset {
  _ClientService_checkClass_result__isset() : success(false) {}
  bool success :1;
} _ClientService_checkClass_result__isset;

class ClientService_checkClass_result {
 public:

  ClientService_checkClass_result(const ClientService_checkClass_result&);
  ClientService_checkClass_result& operator=(const ClientService_checkClass_result&);
  ClientService_checkClass_result() : success(0) {
  }

  virtual ~ClientService_checkClass_result() throw();
  bool success;

  _ClientService_checkClass_result__isset __isset;

  void __set_success(const bool val);

  bool operator == (const ClientService_checkClass_result & rhs) const
  {
    if (!(success == rhs.success))
      return false;
    return true;
  }
  bool operator != (const ClientService_checkClass_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_checkClass_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_checkClass_presult__isset {
  _ClientService_checkClass_presult__isset() : success(false) {}
  bool success :1;
} _ClientService_checkClass_presult__isset;

class ClientService_checkClass_presult {
 public:

  virtual ~ClientService_checkClass_presult() throw();
  bool* success;

  _ClientService_checkClass_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_checkTableClass_args__isset {
  _ClientService_checkTableClass_args__isset() : tinfo(false), credentials(false), tableId(false), className(false), interfaceMatch(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool tableId :1;
  bool className :1;
  bool interfaceMatch :1;
} _ClientService_checkTableClass_args__isset;

class ClientService_checkTableClass_args {
 public:

  ClientService_checkTableClass_args(const ClientService_checkTableClass_args&);
  ClientService_checkTableClass_args& operator=(const ClientService_checkTableClass_args&);
  ClientService_checkTableClass_args() : tableId(), className(), interfaceMatch() {
  }

  virtual ~ClientService_checkTableClass_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  std::string tableId;
  std::string className;
  std::string interfaceMatch;

  _ClientService_checkTableClass_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_tableId(const std::string& val);

  void __set_className(const std::string& val);

  void __set_interfaceMatch(const std::string& val);

  bool operator == (const ClientService_checkTableClass_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(tableId == rhs.tableId))
      return false;
    if (!(className == rhs.className))
      return false;
    if (!(interfaceMatch == rhs.interfaceMatch))
      return false;
    return true;
  }
  bool operator != (const ClientService_checkTableClass_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_checkTableClass_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_checkTableClass_pargs {
 public:

  virtual ~ClientService_checkTableClass_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const std::string* tableId;
  const std::string* className;
  const std::string* interfaceMatch;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_checkTableClass_result__isset {
  _ClientService_checkTableClass_result__isset() : success(false), sec(false), tope(false) {}
  bool success :1;
  bool sec :1;
  bool tope :1;
} _ClientService_checkTableClass_result__isset;

class ClientService_checkTableClass_result {
 public:

  ClientService_checkTableClass_result(const ClientService_checkTableClass_result&);
  ClientService_checkTableClass_result& operator=(const ClientService_checkTableClass_result&);
  ClientService_checkTableClass_result() : success(0) {
  }

  virtual ~ClientService_checkTableClass_result() throw();
  bool success;
  ThriftSecurityException sec;
  ThriftTableOperationException tope;

  _ClientService_checkTableClass_result__isset __isset;

  void __set_success(const bool val);

  void __set_sec(const ThriftSecurityException& val);

  void __set_tope(const ThriftTableOperationException& val);

  bool operator == (const ClientService_checkTableClass_result & rhs) const
  {
    if (!(success == rhs.success))
      return false;
    if (!(sec == rhs.sec))
      return false;
    if (!(tope == rhs.tope))
      return false;
    return true;
  }
  bool operator != (const ClientService_checkTableClass_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_checkTableClass_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_checkTableClass_presult__isset {
  _ClientService_checkTableClass_presult__isset() : success(false), sec(false), tope(false) {}
  bool success :1;
  bool sec :1;
  bool tope :1;
} _ClientService_checkTableClass_presult__isset;

class ClientService_checkTableClass_presult {
 public:

  virtual ~ClientService_checkTableClass_presult() throw();
  bool* success;
  ThriftSecurityException sec;
  ThriftTableOperationException tope;

  _ClientService_checkTableClass_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

typedef struct _ClientService_checkNamespaceClass_args__isset {
  _ClientService_checkNamespaceClass_args__isset() : tinfo(false), credentials(false), namespaceId(false), className(false), interfaceMatch(false) {}
  bool tinfo :1;
  bool credentials :1;
  bool namespaceId :1;
  bool className :1;
  bool interfaceMatch :1;
} _ClientService_checkNamespaceClass_args__isset;

class ClientService_checkNamespaceClass_args {
 public:

  ClientService_checkNamespaceClass_args(const ClientService_checkNamespaceClass_args&);
  ClientService_checkNamespaceClass_args& operator=(const ClientService_checkNamespaceClass_args&);
  ClientService_checkNamespaceClass_args() : namespaceId(), className(), interfaceMatch() {
  }

  virtual ~ClientService_checkNamespaceClass_args() throw();
   ::org::apache::accumulov2::core::trace::thrift::TInfo tinfo;
   ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials credentials;
  std::string namespaceId;
  std::string className;
  std::string interfaceMatch;

  _ClientService_checkNamespaceClass_args__isset __isset;

  void __set_tinfo(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& val);

  void __set_credentials(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& val);

  void __set_namespaceId(const std::string& val);

  void __set_className(const std::string& val);

  void __set_interfaceMatch(const std::string& val);

  bool operator == (const ClientService_checkNamespaceClass_args & rhs) const
  {
    if (!(tinfo == rhs.tinfo))
      return false;
    if (!(credentials == rhs.credentials))
      return false;
    if (!(namespaceId == rhs.namespaceId))
      return false;
    if (!(className == rhs.className))
      return false;
    if (!(interfaceMatch == rhs.interfaceMatch))
      return false;
    return true;
  }
  bool operator != (const ClientService_checkNamespaceClass_args &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_checkNamespaceClass_args & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

class ClientService_checkNamespaceClass_pargs {
 public:

  virtual ~ClientService_checkNamespaceClass_pargs() throw();
  const  ::org::apache::accumulov2::core::trace::thrift::TInfo* tinfo;
  const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials* credentials;
  const std::string* namespaceId;
  const std::string* className;
  const std::string* interfaceMatch;

  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_checkNamespaceClass_result__isset {
  _ClientService_checkNamespaceClass_result__isset() : success(false), sec(false), tope(false) {}
  bool success :1;
  bool sec :1;
  bool tope :1;
} _ClientService_checkNamespaceClass_result__isset;

class ClientService_checkNamespaceClass_result {
 public:

  ClientService_checkNamespaceClass_result(const ClientService_checkNamespaceClass_result&);
  ClientService_checkNamespaceClass_result& operator=(const ClientService_checkNamespaceClass_result&);
  ClientService_checkNamespaceClass_result() : success(0) {
  }

  virtual ~ClientService_checkNamespaceClass_result() throw();
  bool success;
  ThriftSecurityException sec;
  ThriftTableOperationException tope;

  _ClientService_checkNamespaceClass_result__isset __isset;

  void __set_success(const bool val);

  void __set_sec(const ThriftSecurityException& val);

  void __set_tope(const ThriftTableOperationException& val);

  bool operator == (const ClientService_checkNamespaceClass_result & rhs) const
  {
    if (!(success == rhs.success))
      return false;
    if (!(sec == rhs.sec))
      return false;
    if (!(tope == rhs.tope))
      return false;
    return true;
  }
  bool operator != (const ClientService_checkNamespaceClass_result &rhs) const {
    return !(*this == rhs);
  }

  bool operator < (const ClientService_checkNamespaceClass_result & ) const;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;

};

typedef struct _ClientService_checkNamespaceClass_presult__isset {
  _ClientService_checkNamespaceClass_presult__isset() : success(false), sec(false), tope(false) {}
  bool success :1;
  bool sec :1;
  bool tope :1;
} _ClientService_checkNamespaceClass_presult__isset;

class ClientService_checkNamespaceClass_presult {
 public:

  virtual ~ClientService_checkNamespaceClass_presult() throw();
  bool* success;
  ThriftSecurityException sec;
  ThriftTableOperationException tope;

  _ClientService_checkNamespaceClass_presult__isset __isset;

  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);

};

class ClientServiceClient : virtual public ClientServiceIf {
 public:
  ClientServiceClient(std::shared_ptr< ::apache::thrift::protocol::TProtocol> prot) {
    setProtocol(prot);
  }
  ClientServiceClient(std::shared_ptr< ::apache::thrift::protocol::TProtocol> iprot, std::shared_ptr< ::apache::thrift::protocol::TProtocol> oprot) {
    setProtocol(iprot,oprot);
  }
 private:
  void setProtocol(std::shared_ptr< ::apache::thrift::protocol::TProtocol> prot) {
  setProtocol(prot,prot);
  }
  void setProtocol(std::shared_ptr< ::apache::thrift::protocol::TProtocol> iprot, std::shared_ptr< ::apache::thrift::protocol::TProtocol> oprot) {
    piprot_=iprot;
    poprot_=oprot;
    iprot_ = iprot.get();
    oprot_ = oprot.get();
  }
 public:
  std::shared_ptr< ::apache::thrift::protocol::TProtocol> getInputProtocol() {
    return piprot_;
  }
  std::shared_ptr< ::apache::thrift::protocol::TProtocol> getOutputProtocol() {
    return poprot_;
  }
  void getRootTabletLocation(std::string& _return);
  void send_getRootTabletLocation();
  void recv_getRootTabletLocation(std::string& _return);
  void getInstanceId(std::string& _return);
  void send_getInstanceId();
  void recv_getInstanceId(std::string& _return);
  void getZooKeepers(std::string& _return);
  void send_getZooKeepers();
  void recv_getZooKeepers(std::string& _return);
  void bulkImportFiles(std::vector<std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const int64_t tid, const std::string& tableId, const std::vector<std::string> & files, const std::string& errorDir, const bool setTime);
  void send_bulkImportFiles(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const int64_t tid, const std::string& tableId, const std::vector<std::string> & files, const std::string& errorDir, const bool setTime);
  void recv_bulkImportFiles(std::vector<std::string> & _return);
  bool isActive(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const int64_t tid);
  void send_isActive(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const int64_t tid);
  bool recv_isActive();
  void ping(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials);
  void send_ping(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials);
  void recv_ping();
  void getDiskUsage(std::vector<TDiskUsage> & _return, const std::set<std::string> & tables, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials);
  void send_getDiskUsage(const std::set<std::string> & tables, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials);
  void recv_getDiskUsage(std::vector<TDiskUsage> & _return);
  void listLocalUsers(std::set<std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials);
  void send_listLocalUsers(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials);
  void recv_listLocalUsers(std::set<std::string> & _return);
  void createLocalUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& password);
  void send_createLocalUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& password);
  void recv_createLocalUser();
  void dropLocalUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal);
  void send_dropLocalUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal);
  void recv_dropLocalUser();
  void changeLocalUserPassword(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& password);
  void send_changeLocalUserPassword(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& password);
  void recv_changeLocalUserPassword();
  bool authenticate(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials);
  void send_authenticate(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials);
  bool recv_authenticate();
  bool authenticateUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& toAuth);
  void send_authenticateUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& toAuth);
  bool recv_authenticateUser();
  void changeAuthorizations(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::vector<std::string> & authorizations);
  void send_changeAuthorizations(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::vector<std::string> & authorizations);
  void recv_changeAuthorizations();
  void getUserAuthorizations(std::vector<std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal);
  void send_getUserAuthorizations(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal);
  void recv_getUserAuthorizations(std::vector<std::string> & _return);
  bool hasSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const int8_t sysPerm);
  void send_hasSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const int8_t sysPerm);
  bool recv_hasSystemPermission();
  bool hasTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& tableName, const int8_t tblPerm);
  void send_hasTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& tableName, const int8_t tblPerm);
  bool recv_hasTablePermission();
  bool hasNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& ns, const int8_t tblNspcPerm);
  void send_hasNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& ns, const int8_t tblNspcPerm);
  bool recv_hasNamespacePermission();
  void grantSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const int8_t permission);
  void send_grantSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const int8_t permission);
  void recv_grantSystemPermission();
  void revokeSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const int8_t permission);
  void send_revokeSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const int8_t permission);
  void recv_revokeSystemPermission();
  void grantTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& tableName, const int8_t permission);
  void send_grantTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& tableName, const int8_t permission);
  void recv_grantTablePermission();
  void revokeTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& tableName, const int8_t permission);
  void send_revokeTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& tableName, const int8_t permission);
  void recv_revokeTablePermission();
  void grantNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& ns, const int8_t permission);
  void send_grantNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& ns, const int8_t permission);
  void recv_grantNamespacePermission();
  void revokeNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& ns, const int8_t permission);
  void send_revokeNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& ns, const int8_t permission);
  void recv_revokeNamespacePermission();
  void getConfiguration(std::map<std::string, std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const ConfigurationType::type type);
  void send_getConfiguration(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const ConfigurationType::type type);
  void recv_getConfiguration(std::map<std::string, std::string> & _return);
  void getTableConfiguration(std::map<std::string, std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& tableName);
  void send_getTableConfiguration(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& tableName);
  void recv_getTableConfiguration(std::map<std::string, std::string> & _return);
  void getNamespaceConfiguration(std::map<std::string, std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& ns);
  void send_getNamespaceConfiguration(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& ns);
  void recv_getNamespaceConfiguration(std::map<std::string, std::string> & _return);
  bool checkClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& className, const std::string& interfaceMatch);
  void send_checkClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& className, const std::string& interfaceMatch);
  bool recv_checkClass();
  bool checkTableClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& tableId, const std::string& className, const std::string& interfaceMatch);
  void send_checkTableClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& tableId, const std::string& className, const std::string& interfaceMatch);
  bool recv_checkTableClass();
  bool checkNamespaceClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& namespaceId, const std::string& className, const std::string& interfaceMatch);
  void send_checkNamespaceClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& namespaceId, const std::string& className, const std::string& interfaceMatch);
  bool recv_checkNamespaceClass();
 protected:
  std::shared_ptr< ::apache::thrift::protocol::TProtocol> piprot_;
  std::shared_ptr< ::apache::thrift::protocol::TProtocol> poprot_;
  ::apache::thrift::protocol::TProtocol* iprot_;
  ::apache::thrift::protocol::TProtocol* oprot_;
};

class ClientServiceProcessor : public ::apache::thrift::TDispatchProcessor {
 protected:
  std::shared_ptr<ClientServiceIf> iface_;
  virtual bool dispatchCall(::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, const std::string& fname, int32_t seqid, void* callContext);
 private:
  typedef  void (ClientServiceProcessor::*ProcessFunction)(int32_t, ::apache::thrift::protocol::TProtocol*, ::apache::thrift::protocol::TProtocol*, void*);
  typedef std::map<std::string, ProcessFunction> ProcessMap;
  ProcessMap processMap_;
  void process_getRootTabletLocation(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_getInstanceId(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_getZooKeepers(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_bulkImportFiles(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_isActive(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_ping(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_getDiskUsage(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_listLocalUsers(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_createLocalUser(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_dropLocalUser(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_changeLocalUserPassword(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_authenticate(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_authenticateUser(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_changeAuthorizations(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_getUserAuthorizations(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_hasSystemPermission(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_hasTablePermission(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_hasNamespacePermission(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_grantSystemPermission(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_revokeSystemPermission(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_grantTablePermission(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_revokeTablePermission(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_grantNamespacePermission(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_revokeNamespacePermission(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_getConfiguration(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_getTableConfiguration(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_getNamespaceConfiguration(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_checkClass(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_checkTableClass(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  void process_checkNamespaceClass(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
 public:
  ClientServiceProcessor(std::shared_ptr<ClientServiceIf> iface) :
    iface_(iface) {
    processMap_["getRootTabletLocation"] = &ClientServiceProcessor::process_getRootTabletLocation;
    processMap_["getInstanceId"] = &ClientServiceProcessor::process_getInstanceId;
    processMap_["getZooKeepers"] = &ClientServiceProcessor::process_getZooKeepers;
    processMap_["bulkImportFiles"] = &ClientServiceProcessor::process_bulkImportFiles;
    processMap_["isActive"] = &ClientServiceProcessor::process_isActive;
    processMap_["ping"] = &ClientServiceProcessor::process_ping;
    processMap_["getDiskUsage"] = &ClientServiceProcessor::process_getDiskUsage;
    processMap_["listLocalUsers"] = &ClientServiceProcessor::process_listLocalUsers;
    processMap_["createLocalUser"] = &ClientServiceProcessor::process_createLocalUser;
    processMap_["dropLocalUser"] = &ClientServiceProcessor::process_dropLocalUser;
    processMap_["changeLocalUserPassword"] = &ClientServiceProcessor::process_changeLocalUserPassword;
    processMap_["authenticate"] = &ClientServiceProcessor::process_authenticate;
    processMap_["authenticateUser"] = &ClientServiceProcessor::process_authenticateUser;
    processMap_["changeAuthorizations"] = &ClientServiceProcessor::process_changeAuthorizations;
    processMap_["getUserAuthorizations"] = &ClientServiceProcessor::process_getUserAuthorizations;
    processMap_["hasSystemPermission"] = &ClientServiceProcessor::process_hasSystemPermission;
    processMap_["hasTablePermission"] = &ClientServiceProcessor::process_hasTablePermission;
    processMap_["hasNamespacePermission"] = &ClientServiceProcessor::process_hasNamespacePermission;
    processMap_["grantSystemPermission"] = &ClientServiceProcessor::process_grantSystemPermission;
    processMap_["revokeSystemPermission"] = &ClientServiceProcessor::process_revokeSystemPermission;
    processMap_["grantTablePermission"] = &ClientServiceProcessor::process_grantTablePermission;
    processMap_["revokeTablePermission"] = &ClientServiceProcessor::process_revokeTablePermission;
    processMap_["grantNamespacePermission"] = &ClientServiceProcessor::process_grantNamespacePermission;
    processMap_["revokeNamespacePermission"] = &ClientServiceProcessor::process_revokeNamespacePermission;
    processMap_["getConfiguration"] = &ClientServiceProcessor::process_getConfiguration;
    processMap_["getTableConfiguration"] = &ClientServiceProcessor::process_getTableConfiguration;
    processMap_["getNamespaceConfiguration"] = &ClientServiceProcessor::process_getNamespaceConfiguration;
    processMap_["checkClass"] = &ClientServiceProcessor::process_checkClass;
    processMap_["checkTableClass"] = &ClientServiceProcessor::process_checkTableClass;
    processMap_["checkNamespaceClass"] = &ClientServiceProcessor::process_checkNamespaceClass;
  }

  virtual ~ClientServiceProcessor() {}
};

class ClientServiceProcessorFactory : public ::apache::thrift::TProcessorFactory {
 public:
  ClientServiceProcessorFactory(const std::shared_ptr< ClientServiceIfFactory >& handlerFactory) :
      handlerFactory_(handlerFactory) {}

  std::shared_ptr< ::apache::thrift::TProcessor > getProcessor(const ::apache::thrift::TConnectionInfo& connInfo);

 protected:
  std::shared_ptr< ClientServiceIfFactory > handlerFactory_;
};

class ClientServiceMultiface : virtual public ClientServiceIf {
 public:
  ClientServiceMultiface(std::vector<std::shared_ptr<ClientServiceIf> >& ifaces) : ifaces_(ifaces) {
  }
  virtual ~ClientServiceMultiface() {}
 protected:
  std::vector<std::shared_ptr<ClientServiceIf> > ifaces_;
  ClientServiceMultiface() {}
  void add(std::shared_ptr<ClientServiceIf> iface) {
    ifaces_.push_back(iface);
  }
 public:
  void getRootTabletLocation(std::string& _return) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->getRootTabletLocation(_return);
    }
    ifaces_[i]->getRootTabletLocation(_return);
    return;
  }

  void getInstanceId(std::string& _return) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->getInstanceId(_return);
    }
    ifaces_[i]->getInstanceId(_return);
    return;
  }

  void getZooKeepers(std::string& _return) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->getZooKeepers(_return);
    }
    ifaces_[i]->getZooKeepers(_return);
    return;
  }

  void bulkImportFiles(std::vector<std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const int64_t tid, const std::string& tableId, const std::vector<std::string> & files, const std::string& errorDir, const bool setTime) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->bulkImportFiles(_return, tinfo, credentials, tid, tableId, files, errorDir, setTime);
    }
    ifaces_[i]->bulkImportFiles(_return, tinfo, credentials, tid, tableId, files, errorDir, setTime);
    return;
  }

  bool isActive(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const int64_t tid) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->isActive(tinfo, tid);
    }
    return ifaces_[i]->isActive(tinfo, tid);
  }

  void ping(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->ping(credentials);
    }
    ifaces_[i]->ping(credentials);
  }

  void getDiskUsage(std::vector<TDiskUsage> & _return, const std::set<std::string> & tables, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->getDiskUsage(_return, tables, credentials);
    }
    ifaces_[i]->getDiskUsage(_return, tables, credentials);
    return;
  }

  void listLocalUsers(std::set<std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->listLocalUsers(_return, tinfo, credentials);
    }
    ifaces_[i]->listLocalUsers(_return, tinfo, credentials);
    return;
  }

  void createLocalUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& password) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->createLocalUser(tinfo, credentials, principal, password);
    }
    ifaces_[i]->createLocalUser(tinfo, credentials, principal, password);
  }

  void dropLocalUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->dropLocalUser(tinfo, credentials, principal);
    }
    ifaces_[i]->dropLocalUser(tinfo, credentials, principal);
  }

  void changeLocalUserPassword(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& password) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->changeLocalUserPassword(tinfo, credentials, principal, password);
    }
    ifaces_[i]->changeLocalUserPassword(tinfo, credentials, principal, password);
  }

  bool authenticate(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->authenticate(tinfo, credentials);
    }
    return ifaces_[i]->authenticate(tinfo, credentials);
  }

  bool authenticateUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& toAuth) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->authenticateUser(tinfo, credentials, toAuth);
    }
    return ifaces_[i]->authenticateUser(tinfo, credentials, toAuth);
  }

  void changeAuthorizations(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::vector<std::string> & authorizations) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->changeAuthorizations(tinfo, credentials, principal, authorizations);
    }
    ifaces_[i]->changeAuthorizations(tinfo, credentials, principal, authorizations);
  }

  void getUserAuthorizations(std::vector<std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->getUserAuthorizations(_return, tinfo, credentials, principal);
    }
    ifaces_[i]->getUserAuthorizations(_return, tinfo, credentials, principal);
    return;
  }

  bool hasSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const int8_t sysPerm) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->hasSystemPermission(tinfo, credentials, principal, sysPerm);
    }
    return ifaces_[i]->hasSystemPermission(tinfo, credentials, principal, sysPerm);
  }

  bool hasTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& tableName, const int8_t tblPerm) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->hasTablePermission(tinfo, credentials, principal, tableName, tblPerm);
    }
    return ifaces_[i]->hasTablePermission(tinfo, credentials, principal, tableName, tblPerm);
  }

  bool hasNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& ns, const int8_t tblNspcPerm) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->hasNamespacePermission(tinfo, credentials, principal, ns, tblNspcPerm);
    }
    return ifaces_[i]->hasNamespacePermission(tinfo, credentials, principal, ns, tblNspcPerm);
  }

  void grantSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const int8_t permission) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->grantSystemPermission(tinfo, credentials, principal, permission);
    }
    ifaces_[i]->grantSystemPermission(tinfo, credentials, principal, permission);
  }

  void revokeSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const int8_t permission) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->revokeSystemPermission(tinfo, credentials, principal, permission);
    }
    ifaces_[i]->revokeSystemPermission(tinfo, credentials, principal, permission);
  }

  void grantTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& tableName, const int8_t permission) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->grantTablePermission(tinfo, credentials, principal, tableName, permission);
    }
    ifaces_[i]->grantTablePermission(tinfo, credentials, principal, tableName, permission);
  }

  void revokeTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& tableName, const int8_t permission) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->revokeTablePermission(tinfo, credentials, principal, tableName, permission);
    }
    ifaces_[i]->revokeTablePermission(tinfo, credentials, principal, tableName, permission);
  }

  void grantNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& ns, const int8_t permission) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->grantNamespacePermission(tinfo, credentials, principal, ns, permission);
    }
    ifaces_[i]->grantNamespacePermission(tinfo, credentials, principal, ns, permission);
  }

  void revokeNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& ns, const int8_t permission) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->revokeNamespacePermission(tinfo, credentials, principal, ns, permission);
    }
    ifaces_[i]->revokeNamespacePermission(tinfo, credentials, principal, ns, permission);
  }

  void getConfiguration(std::map<std::string, std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const ConfigurationType::type type) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->getConfiguration(_return, tinfo, credentials, type);
    }
    ifaces_[i]->getConfiguration(_return, tinfo, credentials, type);
    return;
  }

  void getTableConfiguration(std::map<std::string, std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& tableName) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->getTableConfiguration(_return, tinfo, credentials, tableName);
    }
    ifaces_[i]->getTableConfiguration(_return, tinfo, credentials, tableName);
    return;
  }

  void getNamespaceConfiguration(std::map<std::string, std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& ns) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->getNamespaceConfiguration(_return, tinfo, credentials, ns);
    }
    ifaces_[i]->getNamespaceConfiguration(_return, tinfo, credentials, ns);
    return;
  }

  bool checkClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& className, const std::string& interfaceMatch) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->checkClass(tinfo, credentials, className, interfaceMatch);
    }
    return ifaces_[i]->checkClass(tinfo, credentials, className, interfaceMatch);
  }

  bool checkTableClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& tableId, const std::string& className, const std::string& interfaceMatch) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->checkTableClass(tinfo, credentials, tableId, className, interfaceMatch);
    }
    return ifaces_[i]->checkTableClass(tinfo, credentials, tableId, className, interfaceMatch);
  }

  bool checkNamespaceClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& namespaceId, const std::string& className, const std::string& interfaceMatch) {
    size_t sz = ifaces_.size();
    size_t i = 0;
    for (; i < (sz - 1); ++i) {
      ifaces_[i]->checkNamespaceClass(tinfo, credentials, namespaceId, className, interfaceMatch);
    }
    return ifaces_[i]->checkNamespaceClass(tinfo, credentials, namespaceId, className, interfaceMatch);
  }

};

// The 'concurrent' client is a thread safe client that correctly handles
// out of order responses.  It is slower than the regular client, so should
// only be used when you need to share a connection among multiple threads
class ClientServiceConcurrentClient : virtual public ClientServiceIf {
 public:
  ClientServiceConcurrentClient(std::shared_ptr< ::apache::thrift::protocol::TProtocol> prot) {
    setProtocol(prot);
  }
  ClientServiceConcurrentClient(std::shared_ptr< ::apache::thrift::protocol::TProtocol> iprot, std::shared_ptr< ::apache::thrift::protocol::TProtocol> oprot) {
    setProtocol(iprot,oprot);
  }
 private:
  void setProtocol(std::shared_ptr< ::apache::thrift::protocol::TProtocol> prot) {
  setProtocol(prot,prot);
  }
  void setProtocol(std::shared_ptr< ::apache::thrift::protocol::TProtocol> iprot, std::shared_ptr< ::apache::thrift::protocol::TProtocol> oprot) {
    piprot_=iprot;
    poprot_=oprot;
    iprot_ = iprot.get();
    oprot_ = oprot.get();
  }
 public:
  std::shared_ptr< ::apache::thrift::protocol::TProtocol> getInputProtocol() {
    return piprot_;
  }
  std::shared_ptr< ::apache::thrift::protocol::TProtocol> getOutputProtocol() {
    return poprot_;
  }
  void getRootTabletLocation(std::string& _return);
  int32_t send_getRootTabletLocation();
  void recv_getRootTabletLocation(std::string& _return, const int32_t seqid);
  void getInstanceId(std::string& _return);
  int32_t send_getInstanceId();
  void recv_getInstanceId(std::string& _return, const int32_t seqid);
  void getZooKeepers(std::string& _return);
  int32_t send_getZooKeepers();
  void recv_getZooKeepers(std::string& _return, const int32_t seqid);
  void bulkImportFiles(std::vector<std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const int64_t tid, const std::string& tableId, const std::vector<std::string> & files, const std::string& errorDir, const bool setTime);
  int32_t send_bulkImportFiles(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const int64_t tid, const std::string& tableId, const std::vector<std::string> & files, const std::string& errorDir, const bool setTime);
  void recv_bulkImportFiles(std::vector<std::string> & _return, const int32_t seqid);
  bool isActive(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const int64_t tid);
  int32_t send_isActive(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const int64_t tid);
  bool recv_isActive(const int32_t seqid);
  void ping(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials);
  int32_t send_ping(const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials);
  void recv_ping(const int32_t seqid);
  void getDiskUsage(std::vector<TDiskUsage> & _return, const std::set<std::string> & tables, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials);
  int32_t send_getDiskUsage(const std::set<std::string> & tables, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials);
  void recv_getDiskUsage(std::vector<TDiskUsage> & _return, const int32_t seqid);
  void listLocalUsers(std::set<std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials);
  int32_t send_listLocalUsers(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials);
  void recv_listLocalUsers(std::set<std::string> & _return, const int32_t seqid);
  void createLocalUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& password);
  int32_t send_createLocalUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& password);
  void recv_createLocalUser(const int32_t seqid);
  void dropLocalUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal);
  int32_t send_dropLocalUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal);
  void recv_dropLocalUser(const int32_t seqid);
  void changeLocalUserPassword(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& password);
  int32_t send_changeLocalUserPassword(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& password);
  void recv_changeLocalUserPassword(const int32_t seqid);
  bool authenticate(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials);
  int32_t send_authenticate(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials);
  bool recv_authenticate(const int32_t seqid);
  bool authenticateUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& toAuth);
  int32_t send_authenticateUser(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& toAuth);
  bool recv_authenticateUser(const int32_t seqid);
  void changeAuthorizations(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::vector<std::string> & authorizations);
  int32_t send_changeAuthorizations(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::vector<std::string> & authorizations);
  void recv_changeAuthorizations(const int32_t seqid);
  void getUserAuthorizations(std::vector<std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal);
  int32_t send_getUserAuthorizations(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal);
  void recv_getUserAuthorizations(std::vector<std::string> & _return, const int32_t seqid);
  bool hasSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const int8_t sysPerm);
  int32_t send_hasSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const int8_t sysPerm);
  bool recv_hasSystemPermission(const int32_t seqid);
  bool hasTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& tableName, const int8_t tblPerm);
  int32_t send_hasTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& tableName, const int8_t tblPerm);
  bool recv_hasTablePermission(const int32_t seqid);
  bool hasNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& ns, const int8_t tblNspcPerm);
  int32_t send_hasNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& ns, const int8_t tblNspcPerm);
  bool recv_hasNamespacePermission(const int32_t seqid);
  void grantSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const int8_t permission);
  int32_t send_grantSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const int8_t permission);
  void recv_grantSystemPermission(const int32_t seqid);
  void revokeSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const int8_t permission);
  int32_t send_revokeSystemPermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const int8_t permission);
  void recv_revokeSystemPermission(const int32_t seqid);
  void grantTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& tableName, const int8_t permission);
  int32_t send_grantTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& tableName, const int8_t permission);
  void recv_grantTablePermission(const int32_t seqid);
  void revokeTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& tableName, const int8_t permission);
  int32_t send_revokeTablePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& tableName, const int8_t permission);
  void recv_revokeTablePermission(const int32_t seqid);
  void grantNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& ns, const int8_t permission);
  int32_t send_grantNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& ns, const int8_t permission);
  void recv_grantNamespacePermission(const int32_t seqid);
  void revokeNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& ns, const int8_t permission);
  int32_t send_revokeNamespacePermission(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& principal, const std::string& ns, const int8_t permission);
  void recv_revokeNamespacePermission(const int32_t seqid);
  void getConfiguration(std::map<std::string, std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const ConfigurationType::type type);
  int32_t send_getConfiguration(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const ConfigurationType::type type);
  void recv_getConfiguration(std::map<std::string, std::string> & _return, const int32_t seqid);
  void getTableConfiguration(std::map<std::string, std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& tableName);
  int32_t send_getTableConfiguration(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& tableName);
  void recv_getTableConfiguration(std::map<std::string, std::string> & _return, const int32_t seqid);
  void getNamespaceConfiguration(std::map<std::string, std::string> & _return, const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& ns);
  int32_t send_getNamespaceConfiguration(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& ns);
  void recv_getNamespaceConfiguration(std::map<std::string, std::string> & _return, const int32_t seqid);
  bool checkClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& className, const std::string& interfaceMatch);
  int32_t send_checkClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& className, const std::string& interfaceMatch);
  bool recv_checkClass(const int32_t seqid);
  bool checkTableClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& tableId, const std::string& className, const std::string& interfaceMatch);
  int32_t send_checkTableClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& tableId, const std::string& className, const std::string& interfaceMatch);
  bool recv_checkTableClass(const int32_t seqid);
  bool checkNamespaceClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& namespaceId, const std::string& className, const std::string& interfaceMatch);
  int32_t send_checkNamespaceClass(const  ::org::apache::accumulov2::core::trace::thrift::TInfo& tinfo, const  ::org::apache::accumulov2::core::securityImpl::thrift::TCredentials& credentials, const std::string& namespaceId, const std::string& className, const std::string& interfaceMatch);
  bool recv_checkNamespaceClass(const int32_t seqid);
 protected:
  std::shared_ptr< ::apache::thrift::protocol::TProtocol> piprot_;
  std::shared_ptr< ::apache::thrift::protocol::TProtocol> poprot_;
  ::apache::thrift::protocol::TProtocol* iprot_;
  ::apache::thrift::protocol::TProtocol* oprot_;
  ::apache::thrift::async::TConcurrentClientSyncInfo sync_;
};

#ifdef _MSC_VER
  #pragma warning( pop )
#endif

}}}}}} // namespace

#endif