1 /***************************************************************************
2 * Copyright (C) 2007 by www.databasecache.com *
3 * Contact: praba_tuty@databasecache.com *
5 * This program is free software; you can redistribute it and/or modify *
6 * it under the terms of the GNU General Public License as published by *
7 * the Free Software Foundation; either version 2 of the License, or *
8 * (at your option) any later version. *
10 * This program is distributed in the hope that it will be useful, *
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 * GNU General Public License for more details. *
15 ***************************************************************************/
22 //All the members of the configuration file
29 char logFile
[MAX_FILE_PATH_LEN
];
30 char dbFile
[MAX_FILE_PATH_LEN
];
41 char dsn
[IDENTIFIER_LENGTH
];
42 char tableConfigFile
[MAX_FILE_PATH_LEN
];
47 char replConfigFile
[MAX_FILE_PATH_LEN
];
52 int nwResponseTimeout
;
59 maxSysSize
= 10485760;
60 maxDbSize
= 104857600;
63 strcpy(logFile
, "/tmp/log/log.out");
64 strcpy(dbFile
, "/tmp/csql/csql.db");
75 strcpy(dsn
, "myodbc3");
76 strcpy(tableConfigFile
, "/tmp/csql/csqltable.conf");
77 isReplication
= false;
78 strcpy(replConfigFile
, "/tmp/csql/csqlnw.conf");
79 logStoreSize
= 10485760;
91 int readLine(FILE *fp
, char * buffer
);
92 int storeKeyVal(char *key
, char *val
);
96 int readAllValues(char *filename
);
98 inline int getPageSize() { return cVal
.pageSize
; }
99 inline int getMaxProcs() { return cVal
.maxProcs
; }
100 inline long getMaxSysDbSize() { return cVal
.maxSysSize
; }
101 inline long getMaxDbSize() { return cVal
.maxDbSize
; }
102 inline int getSysDbKey() { return cVal
.sysDbKey
; }
103 inline int getUserDbKey() { return cVal
.userDbKey
; }
104 inline char* getLogFile() { return cVal
.logFile
; }
105 inline char* getDbFile() { return cVal
.dbFile
; }
106 inline long getMapAddress() { return cVal
.mapAddr
; }
107 inline int getMutexSecs() { return cVal
.mutexSecs
; }
108 inline int getMutexUSecs() { return cVal
.mutexUSecs
; }
109 inline int getMutexRetries() { return cVal
.mutexRetries
; }
110 inline int getLockSecs() { return cVal
.lockSecs
; }
111 inline int getLockUSecs() { return cVal
.lockUSecs
; }
112 inline int getLockRetries() { return cVal
.lockRetries
; }
113 inline int getCacheID(){ return cVal
.cacheId
;}
114 inline bool useCache() { return cVal
.isCache
; }
115 inline char* getDSN() { return cVal
.dsn
; }
116 inline char* getTableConfigFile() { return cVal
.tableConfigFile
; }
117 inline bool useReplication() { return cVal
.isReplication
; }
118 inline char* getReplConfigFile() { return cVal
.replConfigFile
; }
119 inline long getMaxLogStoreSize() { return cVal
.logStoreSize
; }
120 inline int getNetworkID() { return cVal
.networkID
; }
121 inline int getCacheNetworkID() { return cVal
.cacheNetworkID
; }
122 inline int getNetworkResponseTimeout() { return cVal
.nwResponseTimeout
; }
123 inline int getNetworkConnectTimeout() { return cVal
.nwConnectTimeout
; }
124 inline bool useTwoWayCache() { return cVal
.isTwoWay
; }
125 inline int getCacheWaitSecs() { return cVal
.cacheWaitSecs
; }
131 static Config config
;