00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef _EYEDB_KERNEL_H
00026 #define _EYEDB_KERNEL_H
00027
00028 namespace eyedb {
00029
00030 extern void
00031 IDB_init(const char *, const char *, void *, int);
00032
00033
00034 extern RPCStatus
00035 IDB_dbmCreate(ConnHandle *, const char *, const char *,
00036 const DbCreateDescription *);
00037
00038 extern RPCStatus
00039 IDB_dbmUpdate(ConnHandle *, const char *, const char *,
00040 const char *);
00041
00042 extern RPCStatus
00043 IDB_dbCreate(ConnHandle *, const char *, const char *,
00044 const char *, const char *,
00045 const DbCreateDescription *);
00046
00047 extern RPCStatus
00048 IDB_dbDelete(ConnHandle *, const char *, const char *,
00049 const char *, const char *);
00050
00051 extern RPCStatus
00052 IDB_dbInfo(ConnHandle *, const char *, const char *,
00053 const char *, const char *,
00054 int *, DbCreateDescription *);
00055
00056 extern RPCStatus
00057 IDB_dbMove(ConnHandle *, const char *, const char *,
00058 const char *, const char *,
00059 const DbCreateDescription *);
00060
00061 extern RPCStatus
00062 IDB_dbCopy(ConnHandle *, const char *, const char *, const char *,
00063 const char *, const char *,
00064 Bool, const DbCreateDescription *);
00065
00066 extern RPCStatus
00067 IDB_dbRename(ConnHandle *, const char *, const char *, const char *,
00068 const char *, const char *);
00069
00070 extern RPCStatus
00071 IDB_dbOpen(ConnHandle *, const char *, const char *,
00072 const char *, const char *, int,
00073 int, int, unsigned int, int *, int *, void *, char **, int *,
00074 unsigned int *, DbHandle **);
00075
00076 extern RPCStatus
00077 IDB_dbOpen_make(ConnHandle *, const char *, const char *,
00078 const char *, const char *,
00079 int, int, int, unsigned int, int *, int *, char **, int *,
00080 unsigned int *,
00081 DbHandle **);
00082
00083 extern RPCStatus
00084 IDB_dbClose(DbHandle *);
00085
00086 RPCStatus
00087 IDB_dbClose_make(DbHandle *dbh);
00088
00089 extern RPCStatus
00090 IDB_dbCloseLocal(DbHandle *);
00091
00092
00093 extern RPCStatus
00094 IDB_userAdd(ConnHandle *, const char *, const char *, const char *,
00095 const char *, const char *, int user_type);
00096
00097 extern RPCStatus
00098 IDB_userDelete(ConnHandle *, const char *, const char *, const char *,
00099 const char *);
00100
00101 extern RPCStatus
00102 IDB_userPasswdSet(ConnHandle *, const char *, const char *, const char *,
00103 const char *, const char *);
00104
00105 extern RPCStatus
00106 IDB_passwdSet(ConnHandle *, const char *, const char *, const char *,
00107 const char *);
00108
00109 extern RPCStatus
00110 IDB_defaultDBAccessSet(ConnHandle *, const char *, const char *,
00111 const char *, const char *, int);
00112
00113 extern RPCStatus
00114 IDB_userDBAccessSet(ConnHandle *, const char *,
00115 const char *, const char *,
00116 const char *, const char *, int);
00117
00118 extern RPCStatus
00119 IDB_userSysAccessSet(ConnHandle *, const char *,
00120 const char *, const char *,
00121 const char *, int);
00122
00123 extern RPCStatus
00124 IDB_backendInterrupt(ConnHandle *, int);
00125
00126 RPCStatus
00127 IDB_backendInterruptReset();
00128
00129
00130
00131 extern RPCStatus
00132 IDB_transactionBegin(DbHandle *,
00133 const TransactionParams *params,
00134 Bool local_call);
00135
00136 extern RPCStatus
00137 IDB_transactionCommit(DbHandle *, Bool local_call);
00138
00139 extern RPCStatus
00140 IDB_transactionAbort(DbHandle *, Bool local_call);
00141
00142 extern RPCStatus
00143 IDB_transactionParamsSet(DbHandle *,
00144 const TransactionParams *params);
00145
00146 extern RPCStatus
00147 IDB_transactionParamsGet(DbHandle *,
00148 TransactionParams *params);
00149
00150
00151
00152 extern RPCStatus
00153 IDB_objectCreate(DbHandle *, short dspid, const Data, eyedbsm::Oid *, void *,
00154 Data *, void *);
00155
00156 extern RPCStatus
00157 IDB_objectDelete(DbHandle *, const eyedbsm::Oid *, unsigned int,
00158 Data *, void *);
00159
00160 extern RPCStatus
00161 IDB_objectRead(DbHandle *, Data, Data *, short *, const eyedbsm::Oid *,
00162 LockMode lockmode, void *);
00163
00164 extern RPCStatus
00165 IDB_objectReadLocal(DbHandle *, Data, Data *, short *, const eyedbsm::Oid *,
00166 ObjectHeader *, LockMode lockmode, void **);
00167
00168 extern RPCStatus
00169 IDB_objectWrite(DbHandle *, const Data, const eyedbsm::Oid *, void *, Data *, void *);
00170
00171 extern RPCStatus
00172 IDB_objectHeaderRead(DbHandle *, const eyedbsm::Oid *, ObjectHeader *);
00173
00174 extern RPCStatus
00175 IDB_objectSizeModify(DbHandle *, unsigned int, const eyedbsm::Oid *);
00176
00177 extern RPCStatus
00178 IDB_objectCheck(DbHandle *, const eyedbsm::Oid *, int *, eyedbsm::Oid *);
00179
00180 extern RPCStatus
00181 IDB_objectCheckAccess(DbHandle *, Bool write, const eyedbsm::Oid *,
00182 Bool *);
00183
00184 extern RPCStatus
00185 IDB_objectProtectionSet(DbHandle *, const eyedbsm::Oid *, const eyedbsm::Oid *);
00186
00187 extern RPCStatus
00188 IDB_objectProtectionGet(DbHandle *, const eyedbsm::Oid *, eyedbsm::Oid *);
00189
00190 extern RPCStatus
00191 IDB_oidMake(DbHandle *, ObjectHeader *, short, unsigned int, eyedbsm::Oid *);
00192
00193
00194 extern RPCStatus
00195 IDB_dataCreate(DbHandle *, short, unsigned int, const Data, eyedbsm::Oid *, void *);
00196
00197 extern RPCStatus
00198 IDB_dataDelete(DbHandle *, const eyedbsm::Oid *);
00199
00200 extern RPCStatus
00201 IDB_dataRead(DbHandle *, int, unsigned int, Data, short *, const eyedbsm::Oid *, void *);
00202
00203 extern RPCStatus
00204 IDB_dataWrite(DbHandle *, int, unsigned int, const Data, const eyedbsm::Oid *, void *);
00205
00206 extern RPCStatus
00207 IDB_dataSizeGet(DbHandle *, const eyedbsm::Oid *, unsigned int *);
00208
00209 extern RPCStatus
00210 IDB_dataSizeModify(DbHandle *, unsigned int, const eyedbsm::Oid *);
00211
00212 extern RPCStatus
00213 IDB_schemaComplete(DbHandle *, const char *);
00214
00215
00216 extern RPCStatus
00217 IDB_VDdataCreate(DbHandle *, short, const eyedbsm::Oid *, const eyedbsm::Oid *,
00218 int, int, int, const Data,
00219 const eyedbsm::Oid *, eyedbsm::Oid *,
00220 const Data, int, void *, void *);
00221
00222 extern RPCStatus
00223 IDB_VDdataDelete(DbHandle *, const eyedbsm::Oid *, const eyedbsm::Oid *,
00224 int, const eyedbsm::Oid *, const eyedbsm::Oid *,
00225 const Data, int, void *);
00226
00227 extern RPCStatus
00228 IDB_VDdataWrite(DbHandle *, const eyedbsm::Oid *, const eyedbsm::Oid *,
00229 int, int, unsigned int, const Data,
00230 const eyedbsm::Oid *, const eyedbsm::Oid *,
00231 const Data, int, void *, void *);
00232
00233
00234 extern RPCStatus
00235 IDB_attributeIndexCreate(DbHandle *, const eyedbsm::Oid *, int, int,
00236 eyedbsm::Oid *, Data, Size, void *);
00237
00238 extern RPCStatus
00239 IDB_attributeIndexRemove(DbHandle *, const eyedbsm::Oid *, int, int,
00240 Data, Size, void *);
00241
00242 extern RPCStatus
00243 IDB_indexCreate(DbHandle *, bool index_move, const eyedbsm::Oid *);
00244
00245 extern RPCStatus
00246 IDB_indexRemove(DbHandle *, const eyedbsm::Oid *, int);
00247
00248 extern RPCStatus
00249 IDB_constraintCreate(DbHandle *, const eyedbsm::Oid *);
00250
00251 extern RPCStatus
00252 IDB_constraintDelete(DbHandle *, const eyedbsm::Oid *, int);
00253
00254
00255 extern RPCStatus
00256 IDB_collectionGetByInd(DbHandle *, const eyedbsm::Oid *, int, int *, Data,
00257 void *);
00258
00259 extern RPCStatus
00260 IDB_collectionGetByValue(DbHandle *, const eyedbsm::Oid *, Data, int *, int *);
00261
00262 extern RPCStatus
00263 IDB_setObjectLock(DbHandle *, const eyedbsm::Oid *, int, int *);
00264
00265 extern RPCStatus
00266 IDB_getObjectLock(DbHandle *, const eyedbsm::Oid *, int *);
00267
00268
00269 extern RPCStatus
00270 IDB_queryLangCreate(DbHandle *, const char *, int *, int *,
00271 void *, void *, void *);
00272
00273 extern RPCStatus
00274 IDB_queryDatabaseCreate(DbHandle *, int *);
00275
00276 extern RPCStatus
00277 IDB_queryClassCreate(DbHandle *, const eyedbsm::Oid *, int *);
00278
00279 extern RPCStatus
00280 IDB_queryCollectionCreate(DbHandle *, const eyedbsm::Oid *, int, int *);
00281
00282 extern RPCStatus
00283 IDB_queryAttributeCreate(DbHandle *, const eyedbsm::Oid *, int, int, Data,
00284 Data, int, int, int, int *);
00285
00286 extern RPCStatus
00287 IDB_queryDelete(DbHandle *, int);
00288
00289 extern RPCStatus
00290 IDB_queryScanNext(DbHandle *, int qid, int wanted, int *found,
00291 void *atom_array, void *);
00292
00293
00294 extern RPCStatus
00295 IDB_oqlCreate(DbHandle *, const char *, int *, void *, void *, void *);
00296
00297 extern RPCStatus
00298 IDB_oqlDelete(DbHandle *, int);
00299
00300 extern RPCStatus
00301 IDB_oqlGetResult(DbHandle *, int qid, void *atom_array, void *);
00302
00303
00304 extern RPCStatus
00305 IDB_execCheck(DbHandle *, const char *intname, const eyedbsm::Oid *oid,
00306 const char *extref);
00307
00308 extern RPCStatus
00309 IDB_execExecute(DbHandle *, const char *user, const char *passwd,
00310 const char *intname,
00311 const char *name, int exec_type,
00312 const eyedbsm::Oid *cloid, const char *extref,
00313 const void *xsign, const void *sign_data,
00314 const eyedbsm::Oid *execoid,
00315 const eyedbsm::Oid *objoid,
00316 void *o,
00317 const void *xargarray, void *argarray_data,
00318 void *xargret, void *argret_data);
00319
00320 extern RPCStatus
00321 IDB_execSetExtRefPath(const char *user, const char *passwd, const char *path);
00322
00323 extern RPCStatus
00324 IDB_execGetExtRefPath(const char *user, const char *passwd, void *path,
00325 unsigned int pathlen);
00326
00327 extern RPCStatus
00328 IDB_setConnInfo(const char *hostname, int uid, const char *username,
00329 const char *progname, int pid, int *sv_pid, int *sv_uid,
00330 int cli_version, char **challenge);
00331
00332 extern RPCStatus
00333 IDB_checkAuth(const char *);
00334
00335 extern RPCStatus
00336 IDB_setLogMask(eyedblib::int64);
00337
00338 extern RPCStatus
00339 IDB_indexGetCount(DbHandle *, const eyedbsm::Oid *, int *);
00340
00341 extern RPCStatus
00342 IDB_indexGetStats(DbHandle *, const eyedbsm::Oid *, Data *, void *);
00343
00344 extern RPCStatus
00345 IDB_indexSimulStats(DbHandle *, const eyedbsm::Oid *, const Data, void *,
00346 Data *, void *);
00347
00348 extern RPCStatus
00349 IDB_collectionGetImplStats(DbHandle *, int, const eyedbsm::Oid *,
00350 Data *, void *);
00351
00352 extern RPCStatus
00353 IDB_collectionSimulImplStats(DbHandle *, int, const eyedbsm::Oid *,
00354 const Data, void *, Data *, void *);
00355
00356 extern RPCStatus
00357 IDB_indexGetImplementation(DbHandle *, const eyedbsm::Oid *, Data *, void *);
00358
00359 extern RPCStatus
00360 IDB_collectionGetImplementation(DbHandle *, int, const eyedbsm::Oid *, Data *, void *);
00361
00362 extern RPCStatus
00363 IDB_getDefaultDataspace(DbHandle *, int *);
00364
00365 extern RPCStatus
00366 IDB_setDefaultDataspace(DbHandle *, int);
00367
00368 extern RPCStatus
00369 IDB_dataspaceSetCurrentDatafile(DbHandle *, int, int);
00370
00371 extern RPCStatus
00372 IDB_dataspaceGetCurrentDatafile(DbHandle *, int, int *);
00373
00374 extern RPCStatus
00375 IDB_getDefaultIndexDataspace(DbHandle *, const eyedbsm::Oid *, int, int *);
00376
00377 extern RPCStatus
00378 IDB_setDefaultIndexDataspace(DbHandle *, const eyedbsm::Oid *, int, int);
00379
00380 extern RPCStatus
00381 IDB_getIndexLocations(DbHandle *, const eyedbsm::Oid *, int, Data *, void *);
00382
00383 extern RPCStatus
00384 IDB_moveIndex(DbHandle *, const eyedbsm::Oid *, int, int);
00385
00386 extern RPCStatus
00387 IDB_getInstanceClassLocations(DbHandle *, const eyedbsm::Oid *, int,
00388 Data *, void *);
00389
00390 extern RPCStatus
00391 IDB_moveInstanceClass(DbHandle *, const eyedbsm::Oid *, int, int);
00392
00393 extern RPCStatus
00394 IDB_getObjectsLocations(DbHandle *, const eyedbsm::Oid *, unsigned int, void *, Data *, void *);
00395
00396 extern RPCStatus
00397 IDB_moveObjects(DbHandle *, const eyedbsm::Oid *, unsigned int, int, void *);
00398
00399 extern RPCStatus
00400 IDB_getAttributeLocations(DbHandle *, const eyedbsm::Oid *, int, Data *, void *);
00401
00402 extern RPCStatus
00403 IDB_moveAttribute(DbHandle *, const eyedbsm::Oid *, int, int);
00404
00405 extern RPCStatus
00406 IDB_createDatafile(DbHandle *, const char *, const char *, int, int, int);
00407
00408 extern RPCStatus
00409 IDB_deleteDatafile(DbHandle *, int);
00410
00411 extern RPCStatus
00412 IDB_moveDatafile(DbHandle *, int, const char *);
00413
00414 extern RPCStatus
00415 IDB_defragmentDatafile(DbHandle *, int);
00416
00417 extern RPCStatus
00418 IDB_resizeDatafile(DbHandle *, int, unsigned int);
00419
00420 extern RPCStatus
00421 IDB_getDatafileInfo(DbHandle *, int, Data *, void *);
00422
00423 extern RPCStatus
00424 IDB_renameDatafile(DbHandle *, int, const char *);
00425
00426 extern RPCStatus
00427 IDB_createDataspace(DbHandle *, const char *, void *, unsigned int, void *);
00428
00429 extern RPCStatus
00430 IDB_updateDataspace(DbHandle *, int, void *, unsigned int, void *, int, int);
00431
00432 extern RPCStatus
00433 IDB_deleteDataspace(DbHandle *, int);
00434
00435 extern RPCStatus
00436 IDB_renameDataspace(DbHandle *, int, const char *);
00437
00438 extern RPCStatus
00439 IDB_getServerOutOfBandData(ConnHandle *, int *, Data *,
00440 unsigned int *size, void *);
00441
00442 extern RPCStatus
00443 IDB_setMaxObjCount(DbHandle *, int);
00444
00445 extern RPCStatus
00446 IDB_getMaxObjCount(DbHandle *, int *);
00447
00448 extern RPCStatus
00449 IDB_setLogSize(DbHandle *, int);
00450
00451 extern RPCStatus
00452 IDB_getLogSize(DbHandle *, int *);
00453
00454
00455
00456 extern void
00457 IDB_getLocalInfo(DbHandle *dbh, rpcDB_LocalDBContext *, eyedbsm::Oid *);
00458
00459 extern RPCStatus
00460 IDB_collClassRegister(DbHandle *, const eyedbsm::Oid *, const eyedbsm::Oid *,
00461 Bool insert);
00462
00463 extern int
00464 IDB_getSeTrsCount(DbHandle *);
00465
00466 extern void
00467 object_epilogue(void *db, const eyedbsm::Oid *oid,
00468 Data data, Bool creating);
00469
00470 extern void
00471 decode_dbdescription(Data idr, void *xdata, DbCreateDescription *dbdesc);
00472
00473 }
00474
00475 #endif