29 : port(portIn), address(addressIn) {
31 logger = make_shared<PDBLogger>(
"clientLog");
34 std::make_shared<pdb::CatalogClient>(
37 make_shared<pdb::PDBLogger>(
"catalogClientLog"));
40 std::make_shared<pdb::DispatcherClient>(
43 make_shared<pdb::PDBLogger>(
"dispatcherClientLog"));
46 std::make_shared<pdb::DistributedStorageManagerClient>(
49 make_shared<pdb::PDBLogger>(
"distributedStorageClientLog"));
52 std::make_shared<pdb::QueryClient>(
55 make_shared<pdb::PDBLogger>(
"queryClientLog"),
77 cout <<
"Created database.\n";
83 const std::string &setName,
84 const std::string &typeName) {
94 cout <<
"Created set.\n";
100 const std::string &setName,
101 const std::string &typeName,
111 cout <<
"Created set.\n";
117 const std::string &setName,
118 const std::string &typeName,
128 cout <<
"Created temp set.\n";
140 cout <<
"Database has been removed.\n";
146 const std::string &setName) {
152 cout <<
"Set has been removed.\n";
158 const std::string &setName,
159 const std::string &typeName) {
166 cout <<
"Temp set removed.\n";
172 const std::string &setName,
173 const std::string &outputFilePath,
174 const std::string &format) {
182 cout <<
"Set has been exported.\n";
188 const std::string &setName,
189 const std::string &typeName) {
196 cout <<
"Set has been cleared.\n";
208 cout <<
"Data has been flushed.\n";
213 std::function<bool(Handle<SimpleRequestResult>)>
217 if (result !=
nullptr) {
218 if (!result->getRes().first) {
219 errorMsg = description + result->getRes().second;
220 logger->error(description +
": " + result->getRes().second);
225 errorMsg =
"Received nullptr as response";
226 logger->error(description +
": received nullptr as response");
236 string &nodeType,
int nodeStatus) {
241 pdb::makeObject<pdb::CatalogNodeMetadata>(
242 String(localIP +
":" + std::to_string(localPort)),
String(localIP),
246 bool result =
catalogClient->registerNodeMetadata(nodeInfo, returnedMsg);
251 cout <<
"Node has been registered.\n";
259 bool result =
catalogClient->registerType(fileContainingSharedLib, returnedMsg);
264 cout <<
"Type has been registered.\n";
277 cout <<
catalogClient->listAllRegisteredMetadata(returnedMsg);
285 cout <<
catalogClient->listRegisteredSetsForADatabase(databaseName, returnedMsg);
303 bool result =
dispatcherClient->registerSet(setAndDatabase, policy, returnedMsg);
308 cout <<
"Set has been registered.\n";
318 bool result =
queryClient->deleteSet(databaseName, setName);
321 errorMsg =
"Not able to delete set: ";
324 cout <<
"Set has been deleted.\n";
void listRegisteredDatabases()
bool removeTempSet(const std::string &databaseName, const std::string &setName, const std::string &typeName)
bool createDatabase(const std::string &databaseName)
std::function< bool(Handle< SimpleRequestResult >)> generateResponseHandler(std::string description, std::string &errMsg)
void listUserDefinedTypes()
std::shared_ptr< pdb::DistributedStorageManagerClient > distributedStorageClient
bool registerSet(std::pair< std::string, std::string > setAndDatabase, PartitionPolicy::Policy policy)
bool removeDatabase(const std::string &databaseName)
void listRegisteredSetsForADatabase(std::string databaseName)
std::shared_ptr< pdb::DispatcherClient > dispatcherClient
bool deleteSet(std::string databaseName, std::string setName)
bool clearSet(const std::string &databaseName, const std::string &setName, const std::string &typeName)
bool exportSet(const std::string &databaseName, const std::string &setName, const std::string &outputFilePath, const std::string &format)
std::shared_ptr< pdb::CatalogClient > catalogClient
bool removeSet(const std::string &databaseName, const std::string &setName)
void listAllRegisteredMetadata()
void listNodesInCluster()
void printCatalogMetadata(pdb::Handle< pdb::CatalogPrintMetadata > itemToSearch)
bool createSet(const std::string &databaseName, const std::string &setName, const std::string &typeName)
std::shared_ptr< pdb::QueryClient > queryClient
bool registerType(std::string fileContainingSharedLib)
#define DEFAULT_PAGE_SIZE
bool registerNode(string &localIP, int localPort, string &nodeName, string &nodeType, int nodeStatus)
void registerHandlers(PDBServer &forMe)
bool createTempSet(const std::string &databaseName, const std::string &setName, const std::string &typeName, size_t pageSize=DEFAULT_PAGE_SIZE)
void makeObjectAllocatorBlock(size_t numBytesIn, bool throwExceptionOnFail)