rasdaman complete source
|
the class defines an entry of the client table More...
#include <servercomm.hh>
Public Member Functions | |
ClientTblElt (const char *clientIdText, unsigned long clientId) | |
default constructor More... | |
~ClientTblElt () | |
destructor More... | |
void | release () |
release client context More... | |
void | endRequest () |
void | releaseTransferStructures () |
releases transfer collection/iterator More... | |
Public Attributes | |
unsigned long | clientId |
unique client identification assigned by the server More... | |
unsigned int | currentUsers |
counter indicating the number of current users More... | |
char * | clientIdText |
binding information about the client (IP address and TCP port number) More... | |
char * | userName |
Name of the client user name (if available) More... | |
char * | baseName |
Name of the actual database (if one is open) More... | |
unsigned long | creationTime |
time when the database was opened (for curiosity purposes) More... | |
unsigned long | lastActionTime |
time of the client's last action (for garbage collection purposes) More... | |
r_Data_Format | transferFormat |
convert raw array data to this data format before transfer More... | |
char * | transferFormatParams |
int | exactFormat |
send data to client in the exact transfer format More... | |
r_Data_Format | storageFormat |
store array data in this data format in the database More... | |
char * | storageFormatParams |
void * | encodedData |
the tile data converted into the transfer format, if required More... | |
unsigned long | encodedSize |
unsigned long | totalRawSize |
for establishing the compression ratio More... | |
unsigned long | totalTransferedSize |
MDDColl * | transferColl |
pointer to an MDD collection More... | |
MDDCollIter * | transferCollIter |
pointer to an iterator for collection transferColl More... | |
std::vector< QtData * > * | transferData |
pointer to the query result which is currently in transfer More... | |
std::vector< QtData * >::iterator * | transferDataIter |
point to an iterator for transfer data More... | |
MDDObj * | assembleMDD |
pointer to a persistent MDD object for tile based transfers More... | |
MDDObj * | transferMDD |
pointer to an MDD object for tile base transfer More... | |
std::vector< Tile * > * | transTiles |
std::vector storing tiles of actual MDD for transfer More... | |
std::vector< Tile * >::iterator * | tileIter |
iterator for the std::vector above More... | |
std::vector< Tile * > * | deletableTiles |
std::vector storing pointers to transient tiles More... | |
unsigned long | bytesToTransfer |
bytes to transfer in actual tile (valid only if tile is larger than { MAXTRANSBYTES}) More... | |
std::vector< MDDColl * > * | persMDDCollections |
std::vector of persistent MDD collections in use More... | |
DatabaseIf | database |
object representing the actual database More... | |
TransactionIf | transaction |
object representing the actual transaction (only one at a time possible) More... | |
RMTimer * | taTimer |
pointer to a timer for recording transaction time More... | |
RMTimer * | transferTimer |
pointer to a timer for recording transfer time More... | |
RMTimer * | evaluationTimer |
pointer to a timer for recording evaluation time More... | |
r_Parse_Params * | clientParams |
parameter object More... | |
the class defines an entry of the client table
ServerComm::ClientTblElt::ClientTblElt | ( | const char * | clientIdText, |
unsigned long | clientId | ||
) |
default constructor
ServerComm::ClientTblElt::~ClientTblElt | ( | ) |
destructor
Default constructor that takes the information to be placed in the clientIdText field of the client table entry and the unique ID to be placed in the clientId field.
void ServerComm::ClientTblElt::endRequest | ( | ) |
Releasing the client context means to decrease the currentUsers counter and to update lastActionTime.
void ServerComm::ClientTblElt::release | ( | ) |
release client context
void ServerComm::ClientTblElt::releaseTransferStructures | ( | ) |
releases transfer collection/iterator
MDDObj* ServerComm::ClientTblElt::assembleMDD |
pointer to a persistent MDD object for tile based transfers
char* ServerComm::ClientTblElt::baseName |
Name of the actual database (if one is open)
unsigned long ServerComm::ClientTblElt::bytesToTransfer |
bytes to transfer in actual tile (valid only if tile is larger than { MAXTRANSBYTES})
The tiles referenced by these pointers are border tiles dynamically created in getNextMDD(). They do not belong to any MDD object, and, therefore, they have to be deleted explicitly.
unsigned long ServerComm::ClientTblElt::clientId |
unique client identification assigned by the server
The method releases transfer collection and iterator. As the collection is a persistent one, care has to be taken that creation and deletion is done within the same transaction.
char* ServerComm::ClientTblElt::clientIdText |
binding information about the client (IP address and TCP port number)
r_Parse_Params* ServerComm::ClientTblElt::clientParams |
parameter object
unsigned long ServerComm::ClientTblElt::creationTime |
time when the database was opened (for curiosity purposes)
unsigned int ServerComm::ClientTblElt::currentUsers |
counter indicating the number of current users
DatabaseIf ServerComm::ClientTblElt::database |
object representing the actual database
std::vector< Tile* >* ServerComm::ClientTblElt::deletableTiles |
std::vector storing pointers to transient tiles
void* ServerComm::ClientTblElt::encodedData |
the tile data converted into the transfer format, if required
unsigned long ServerComm::ClientTblElt::encodedSize |
RMTimer* ServerComm::ClientTblElt::evaluationTimer |
pointer to a timer for recording evaluation time
int ServerComm::ClientTblElt::exactFormat |
send data to client in the exact transfer format
unsigned long ServerComm::ClientTblElt::lastActionTime |
time of the client's last action (for garbage collection purposes)
std::vector< MDDColl* >* ServerComm::ClientTblElt::persMDDCollections |
std::vector of persistent MDD collections in use
r_Data_Format ServerComm::ClientTblElt::storageFormat |
store array data in this data format in the database
char* ServerComm::ClientTblElt::storageFormatParams |
RMTimer* ServerComm::ClientTblElt::taTimer |
pointer to a timer for recording transaction time
std::vector< Tile* >::iterator* ServerComm::ClientTblElt::tileIter |
iterator for the std::vector above
unsigned long ServerComm::ClientTblElt::totalRawSize |
for establishing the compression ratio
unsigned long ServerComm::ClientTblElt::totalTransferedSize |
TransactionIf ServerComm::ClientTblElt::transaction |
object representing the actual transaction (only one at a time possible)
MDDColl* ServerComm::ClientTblElt::transferColl |
pointer to an MDD collection
MDDCollIter* ServerComm::ClientTblElt::transferCollIter |
pointer to an iterator for collection transferColl
For collection of MDD constants with an update query.
std::vector<QtData*>* ServerComm::ClientTblElt::transferData |
pointer to the query result which is currently in transfer
std::vector<QtData*>::iterator* ServerComm::ClientTblElt::transferDataIter |
point to an iterator for transfer data
For the result of the last query (NULL if the result is completely delivered to the client).
r_Data_Format ServerComm::ClientTblElt::transferFormat |
convert raw array data to this data format before transfer
char* ServerComm::ClientTblElt::transferFormatParams |
MDDObj* ServerComm::ClientTblElt::transferMDD |
pointer to an MDD object for tile base transfer
RMTimer* ServerComm::ClientTblElt::transferTimer |
pointer to a timer for recording transfer time
std::vector< Tile* >* ServerComm::ClientTblElt::transTiles |
std::vector storing tiles of actual MDD for transfer
char* ServerComm::ClientTblElt::userName |
Name of the client user name (if available)