-int init_recordGroup (struct recordGroup *rg)
-{
- assert(rg);
- yaz_log(LOG_API,"init_recordGroup");
- rg->groupName = NULL;
- rg->databaseName = NULL;
- rg->path = NULL;
- rg->recordId = NULL;
- rg->recordType = NULL;
- rg->flagStoreData = -1;
- rg->flagStoreKeys = -1;
- rg->flagRw = 1;
- rg->databaseNamePath = 0;
- rg->explainDatabase = 0;
- rg->fileVerboseLimit = 100000;
- rg->followLinks = -1;
- return 0;
-}
-
-
-/* This is from extract.c... it seems useful, when extract_rec_in mem is
- called... and in general... Should be moved to somewhere else */
-void res_get_recordGroup (ZebraHandle zh,
- struct recordGroup *rGroup,
- const char *ext)
-{
- char gprefix[128];
- char ext_res[128];
-
- yaz_log(LOG_API,"res_get_recordGroup e=%s",ext);
- if (!rGroup->groupName || !*rGroup->groupName)
- *gprefix = '\0';
- else
- sprintf (gprefix, "%s.", rGroup->groupName);
-
- /* determine file type - depending on extension */
- if (!rGroup->recordType) {
- sprintf (ext_res, "%srecordType.%s", gprefix, ext);
- if (!(rGroup->recordType = res_get (zh->res, ext_res))) {
- sprintf (ext_res, "%srecordType", gprefix);
- rGroup->recordType = res_get (zh->res, ext_res);
- }
- }
- /* determine match criteria */
- if (!rGroup->recordId) {
- sprintf (ext_res, "%srecordId.%s", gprefix, ext);
- if (!(rGroup->recordId = res_get (zh->res, ext_res))) {
- sprintf (ext_res, "%srecordId", gprefix);
- rGroup->recordId = res_get (zh->res, ext_res);
- }
- }
-
- /* determine database name */
- if (!rGroup->databaseName) {
- sprintf (ext_res, "%sdatabase.%s", gprefix, ext);
- if (!(rGroup->databaseName = res_get (zh->res, ext_res))) {
- sprintf (ext_res, "%sdatabase", gprefix);
- rGroup->databaseName = res_get (zh->res, ext_res);
- }
- }
- if (!rGroup->databaseName)
- rGroup->databaseName = "Default";
-
- /* determine if explain database */
- sprintf (ext_res, "%sexplainDatabase", gprefix);
- rGroup->explainDatabase =
- atoi (res_get_def (zh->res, ext_res, "0"));
-
- /* storeData */
- if (rGroup->flagStoreData == -1)
- {
- const char *sval;
- sprintf (ext_res, "%sstoreData.%s", gprefix, ext);
- if (!(sval = res_get (zh->res, ext_res)))
- {
- sprintf (ext_res, "%sstoreData", gprefix);
- sval = res_get (zh->res, ext_res);
- }
- if (sval)
- rGroup->flagStoreData = atoi (sval);
- }
- if (rGroup->flagStoreData == -1)
- rGroup->flagStoreData = 0;
-
- /* storeKeys */
- if (rGroup->flagStoreKeys == -1)
- {
- const char *sval;
-
- sprintf (ext_res, "%sstoreKeys.%s", gprefix, ext);
- sval = res_get (zh->res, ext_res);
- if (!sval)
- {
- sprintf (ext_res, "%sstoreKeys", gprefix);
- sval = res_get (zh->res, ext_res);
- }
- if (!sval)
- sval = res_get (zh->res, "storeKeys");
- if (sval)
- rGroup->flagStoreKeys = atoi (sval);
- }
- if (rGroup->flagStoreKeys == -1)
- rGroup->flagStoreKeys = 0;
-}
-
-