A platform for high-performance distributed tool and library development written in C++. It can be deployed in two different cluster modes: standalone or distributed. API for v0.5.0, released on June 13, 2018.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
pdb::QueryClient Class Reference

#include <QueryClient.h>

+ Collaboration diagram for pdb::QueryClient:

Public Member Functions

 QueryClient ()
 
 QueryClient (int portIn, std::string addressIn, PDBLoggerPtr myLoggerIn, bool useScheduler=false)
 
 ~QueryClient ()
 
template<class Type >
Handle< Set< Type > > getSet (std::string databaseName, std::string setName)
 
template<class Type >
SetIterator< Type > getSetIterator (std::string databaseName, std::string setName)
 
bool deleteSet (std::string databaseName, std::string setName)
 
void setQueryGraph (Handle< Computation > querySink)
 
std::string getTCAP (std::vector< Handle< Computation >> &computations)
 
bool registerReplica (std::pair< std::string, std::string > inputDatabaseAndSet, std::pair< std::string, std::string > outputDatabaseAndSet, int numPartitions, int numNodes, std::string type, std::string tcap, std::vector< Handle< Computation >> computations)
 
template<class... Types>
bool executeComputations (std::string &errMsg, Handle< Computation > firstParam, Handle< Types >...args)
 
bool executeComputations (std::string &errMsg)
 
bool executeComputations (std::string &errMsg, std::string tcapString, std::vector< Handle< Computation >> computations)
 
void setUseScheduler (bool useScheduler)
 

Private Attributes

CatalogClient myHelper
 
Handle< Vector< Handle
< QueryBase > > > 
runUs
 
Handle< Vector< Handle
< Computation > > > 
queryGraph
 
int port
 
std::string address
 
PDBLoggerPtr myLogger
 
bool useScheduler
 

Detailed Description

Definition at line 37 of file QueryClient.h.

Constructor & Destructor Documentation

pdb::QueryClient::QueryClient ( )
inline

Definition at line 40 of file QueryClient.h.

pdb::QueryClient::QueryClient ( int  portIn,
std::string  addressIn,
PDBLoggerPtr  myLoggerIn,
bool  useScheduler = false 
)
inline

Definition at line 43 of file QueryClient.h.

pdb::QueryClient::~QueryClient ( )
inline

Definition at line 56 of file QueryClient.h.

Member Function Documentation

bool pdb::QueryClient::deleteSet ( std::string  databaseName,
std::string  setName 
)
inline

Definition at line 116 of file QueryClient.h.

template<class... Types>
bool pdb::QueryClient::executeComputations ( std::string &  errMsg,
Handle< Computation firstParam,
Handle< Types >...  args 
)
inline

Definition at line 204 of file QueryClient.h.

+ Here is the caller graph for this function:

bool pdb::QueryClient::executeComputations ( std::string &  errMsg)
inline

Definition at line 211 of file QueryClient.h.

+ Here is the call graph for this function:

bool pdb::QueryClient::executeComputations ( std::string &  errMsg,
std::string  tcapString,
std::vector< Handle< Computation >>  computations 
)
inline

Definition at line 222 of file QueryClient.h.

+ Here is the call graph for this function:

template<class Type >
Handle<Set<Type> > pdb::QueryClient::getSet ( std::string  databaseName,
std::string  setName 
)
inline

Definition at line 63 of file QueryClient.h.

+ Here is the call graph for this function:

template<class Type >
SetIterator<Type> pdb::QueryClient::getSetIterator ( std::string  databaseName,
std::string  setName 
)
inline

Definition at line 90 of file QueryClient.h.

+ Here is the call graph for this function:

std::string pdb::QueryClient::getTCAP ( std::vector< Handle< Computation >> &  computations)
inline

Definition at line 154 of file QueryClient.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

bool pdb::QueryClient::registerReplica ( std::pair< std::string, std::string >  inputDatabaseAndSet,
std::pair< std::string, std::string >  outputDatabaseAndSet,
int  numPartitions,
int  numNodes,
std::string  type,
std::string  tcap,
std::vector< Handle< Computation >>  computations 
)
inline

Definition at line 163 of file QueryClient.h.

void pdb::QueryClient::setQueryGraph ( Handle< Computation querySink)
inline

Definition at line 146 of file QueryClient.h.

void pdb::QueryClient::setUseScheduler ( bool  useScheduler)
inline

Definition at line 277 of file QueryClient.h.

Member Data Documentation

std::string pdb::QueryClient::address
private

Definition at line 295 of file QueryClient.h.

CatalogClient pdb::QueryClient::myHelper
private

Definition at line 283 of file QueryClient.h.

PDBLoggerPtr pdb::QueryClient::myLogger
private

Definition at line 298 of file QueryClient.h.

int pdb::QueryClient::port
private

Definition at line 294 of file QueryClient.h.

Handle<Vector<Handle<Computation> > > pdb::QueryClient::queryGraph
private

Definition at line 290 of file QueryClient.h.

Handle<Vector<Handle<QueryBase> > > pdb::QueryClient::runUs
private

Definition at line 287 of file QueryClient.h.

bool pdb::QueryClient::useScheduler
private

Definition at line 301 of file QueryClient.h.


The documentation for this class was generated from the following file: