Ignore:
Timestamp:
2010-05-07T21:11:22+12:00 (14 years ago)
Author:
ak19
Message:
  1. More changes to makefiles: rm JDBMWrapper.jar and jdbm.jar on clean. 2. DB files (argdb, users, key, history) now not only for gdbm but to work with other db types like jdbm, sqlite and mssql.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/trunk/greenstone2/runtime-src/src/recpt/userdb.cpp

    r21489 r22067  
    3030#include <stdlib.h>
    3131
    32 #ifdef USE_GDBM
     32
     33#if defined(USE_GDBM)
    3334#include "gdbmclass.h"
     35#define DBCLASS gdbmclass
     36#define USERDBFNAME "users.gdb"
     37#define KEYDBFNAME "key.gdb"
     38
     39#elif defined(USE_JDBM)
     40#include "jdbmnaiveclass.h"
     41#define DBCLASS jdbmnaiveclass
     42#define USERDBFNAME "users.jdb"
     43#define KEYDBFNAME "key.jdb"
     44
     45#elif defined(USE_SQLITE)
     46#include "sqlitedbclass.h"
     47#define DBCLASS sqlitedbclass
     48#define USERDBFNAME "users.litedb"
     49#define KEYDBFNAME "key.litedb"
     50
     51#elif defined(USE_MSSQL)
     52#include "mssqldbclass.h"
     53#define DBCLASS mssqldbclass
     54#define USERDBFNAME "users.msdb"
     55#define KEYDBFNAME "key.msdb"
     56
     57#else
     58#error "Unable to compile Greenstone. Need at least one database backend enabled."
    3459#endif
     60
    3561
    3662// include crypt
     
    4571#endif
    4672
     73
    4774//==========================================//
    4875//      userinfo_t functions (Start)        //
     
    79106//      userdbclass functions (Start)       //
    80107//==========================================//
    81 userdbclass::userdbclass(const text_t &userdbfilename)
    82 {
    83   storeduserdbfilename = userdbfilename;
     108userdbclass::userdbclass(const text_t &gsdlhome)
     109{
     110
     111  storeduserdbfilename = filename_cat(gsdlhome, "etc", USERDBFNAME);
    84112
    85113  // Create a dbclass of the correct type
    86114  userdb = NULL;
    87115
    88   // Use GDBM only at this stage
    89 #ifdef USE_GDBM
    90   userdb = new gdbmclass();
    91 #endif
     116  // Use the correct database type
     117  userdb = new DBCLASS(gsdlhome);
    92118
    93119  // Check a dbclass of some type has been created
     
    385411//      keydbclass functions (Start)        //
    386412//==========================================//
    387 keydbclass::keydbclass(const text_t &keydbfilename)
    388 {
    389   storedkeydbfilename = keydbfilename;
     413keydbclass::keydbclass(const text_t &gsdlhome)
     414{
     415  storedkeydbfilename = filename_cat(gsdlhome, "etc", KEYDBFNAME);
    390416
    391417  // Create a dbclass of the correct type
    392418  keydb = NULL;
    393419
    394   // Use GDBM only at this stage
    395 #ifdef USE_GDBM
    396   keydb = new gdbmclass();
    397 #endif
     420  // Use the correct DB class type at this stage
     421  keydb = new DBCLASS(gsdlhome);
    398422
    399423  // Check a dbclass of some type has been created
Note: See TracChangeset for help on using the changeset viewer.