90 ClientTblElt(
const char* clientIdText,
unsigned long clientId );
110 void releaseTransferStructures();
117 unsigned long clientId;
121 unsigned int currentUsers;
133 unsigned long creationTime;
136 unsigned long lastActionTime;
139 r_Data_Format transferFormat;
140 char* transferFormatParams;
144 r_Data_Format storageFormat;
145 char* storageFormatParams;
149 unsigned long encodedSize;
151 unsigned long totalRawSize;
152 unsigned long totalTransferedSize;
155 MDDColl* transferColl;
160 MDDCollIter* transferCollIter;
164 std::vector<QtData*>* transferData;
169 std::vector<QtData*>::iterator* transferDataIter;
179 std::vector< Tile* >* transTiles;
182 std::vector< Tile* >::iterator* tileIter;
185 std::vector< Tile* >* deletableTiles;
191 unsigned long bytesToTransfer;
195 std::vector< MDDColl* >* persMDDCollections;
213 r_Parse_Params *clientParams;
217 ClientTblElt(
const ClientTblElt& ) {};
224 ServerComm(
unsigned long timeOut,
unsigned long managementInterval ,
unsigned long listenPort,
char* rasmgrHost,
unsigned int rasmgrPort,
char* serverName);
227 virtual ~ServerComm();
230 virtual void startRpcServer() throw( r_Error );
233 virtual
void stopRpcServer();
236 void informRasMGR(
int);
237 #define SERVER_DOWN 0
238 #define SERVER_AVAILABLE 1
241 #define SERVER_REGULARSIG 3
244 void addClientTblEntry( ClientTblElt *context )
throw ( r_Error );
250 unsigned short deleteClientTblEntry(
unsigned long ClientId );
258 void abortEveryThingNow();
261 virtual void printServerStatus( ostream& s=cout );
267 static std::list<ClientTblElt*> clientTbl;
270 static unsigned long clientCount;
273 const unsigned long clientTimeout;
276 const unsigned long garbageCollectionInterval;
279 unsigned long transactionActive;
285 static ServerComm* actual_servercomm;
291 CallBackManager callback_mgr;
298 virtual unsigned short aliveSignal(
unsigned long client );
309 virtual unsigned short openDB(
unsigned long callingClientId,
const char* dbName,
const char* userName );
323 virtual unsigned short closeDB(
unsigned long callingClientId );
333 virtual unsigned short createDB(
char* name );
337 virtual unsigned short destroyDB(
char* name );
341 virtual unsigned short beginTA(
unsigned long callingClientId,
unsigned short readOnly=0 );
352 virtual unsigned short commitTA(
unsigned long callingClientId );
363 virtual unsigned short abortTA(
unsigned long callingClientId );
382 virtual bool isTAOpen(
unsigned long callingClientId );
386 virtual unsigned short executeQuery(
unsigned long callingClientId,
const char* query,
ExecuteQueryRes &returnStructure );
422 virtual unsigned short getNextMDD(
unsigned long callingClientId,
425 r_Minterval &mddDomain,
427 char* &typeStructure,
429 unsigned short ¤tFormat );
445 virtual unsigned short getNextElement(
unsigned long callingClientId,
448 unsigned int &bufferSize );
463 virtual unsigned short getMDDByOId(
unsigned long callingClientId,
466 r_Minterval &mddDomain,
468 char* &typeStructure,
469 unsigned short ¤tFormat );
494 virtual unsigned short getNextTile(
unsigned long callingClientId,
543 virtual unsigned short endTransfer(
unsigned long client );
555 virtual unsigned short initExecuteUpdate(
unsigned long callingClientId );
580 virtual unsigned short executeUpdate(
unsigned long callingClientId,
const char* query,
ExecuteUpdateRes &returnStructure );
597 virtual unsigned short startInsertTransMDD(
unsigned long callingClientId,
601 unsigned long typeLength,
602 const char* typeName );
621 virtual unsigned short startInsertPersMDD(
unsigned long callingClientId,
623 const char* collName,
625 unsigned long typeLength,
626 const char* typeName,
662 virtual unsigned short insertTile(
unsigned long callingClientId,
688 virtual unsigned short insertTileSplitted(
unsigned long callingClientId,
691 r_Minterval* tileSize );
711 virtual unsigned short endInsertMDD(
unsigned long callingClientId,
722 virtual unsigned short insertMDD(
unsigned long callingClientId,
725 const char* collName,
727 const char* typeName, r_OId& oid );
752 virtual unsigned short getCollByName(
unsigned long callingClientId,
755 const char* collName,
757 char* &typeStructure,
787 virtual unsigned short getCollByOId(
unsigned long callingClientId,
791 char* &typeStructure,
817 virtual unsigned short getCollOIdsByName(
unsigned long callingClientId,
819 const char* collName,
821 char* &typeStructure,
824 unsigned int &oidTableSize );
848 virtual unsigned short getCollOIdsByOId(
unsigned long callingClientId,
852 char* &typeStructure,
854 unsigned int &oidTableSize,
879 virtual unsigned short insertColl(
unsigned long callingClientId,
882 const char* collName,
883 const char* typeName,
905 virtual unsigned short deleteCollByName(
unsigned long callingClientId,
908 const char* collName );
922 virtual unsigned short deleteObjByOId(
unsigned long callingClientId, r_OId& oid );
937 virtual unsigned short removeObjFromColl(
unsigned long callingClientId,
940 const char* collName, r_OId& oid );
954 virtual unsigned short getNewOId(
unsigned long callingClientId,
957 unsigned short objType, r_OId& oid );
971 virtual unsigned short getObjectType(
unsigned long callingClientId,
973 r_OId& oid,
unsigned short &objType );
986 virtual unsigned short getTypeStructure(
unsigned long callingClientId,
988 const char* typeName,
989 unsigned short typeType,
990 char* &typeStructure);
1004 virtual unsigned short setTransferMode(
unsigned long callingClientId,
1006 unsigned short format,
const char* formatParams );
1019 virtual unsigned short setStorageMode(
unsigned long callingClientId,
1021 unsigned short format,
const char *formatParams );
1029 virtual ClientTblElt* getClientContext(
unsigned long ClientId );
1040 const char *getExtendedErrorInfo();
1042 void setExtendedErrorInfo(
const char*);
1044 void clearExtendedErrorInfo();
1046 void clientEndRequest();
1049 static const char* HTTPCLIENT;
1053 ServerComm(
const ServerComm& );
1057 static int ensureTileFormat( r_Data_Format &hasFmt, r_Data_Format needFmt,
1058 const r_Minterval &dom,
const BaseType *type,
1059 char *&data,
unsigned long &size,
int repack,
1060 int owner,
const char *params = NULL);
1062 static const int ENSURE_TILE_FORMAT_OK;
1063 static const int ENSURE_TILE_FORMAT_BAD;
1070 unsigned long listenPort;
1072 unsigned int rasmgrPort;
1082 void rpcif_1_caller(
struct svc_req *rqstp,SVCXPRT *transp);
1095 void initSyncro(
const char *);
1096 void setServerName(
const char *serverName);
1098 void resetForNewClient();
1099 int crunchCapability(
const char*);
1108 int messageDigest(
const char *input,
char *output,
const char *mdName);
1110 char serverName[100];
1116 extern AccessControl accessControl;
1118 #include "servercomm.icc"
Definition: databaseif.hh:66
Definition: adminif.hh:81
Definition: transactionif.hh:52
Definition: relcatalogif/basetype.hh:66
Module: { raslib}.
Definition: rmdebug.hh:298