001: /*
002: * Jalisto - JAva LIght STOrage
003: * Copyright (C) 2000-2005 Xcalia http://www.xcalia.com
004: *
005: * This library is free software; you can redistribute it and/or
006: * modify it under the terms of the GNU Lesser General Public
007: * License as published by the Free Software Foundation; either
008: * version 2.1 of the License, or (at your option) any later version.
009: *
010: * This library is distributed in the hope that it will be useful,
011: * but WITHOUT ANY WARRANTY; without even the implied warranty of
012: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
013: * Lesser General Public License for more details.
014: *
015: * You should have received a copy of the GNU Lesser General Public
016: * License along with this library; if not, write to the Free Software
017: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
018: *
019: * Xcalia
020: * 71, rue Desnouettes
021: * 75014 Paris - France
022: * http://www.xcalia.com
023: */
024: package org.objectweb.jalisto.se.api;
025:
026: import java.util.Collection;
027: import java.io.Serializable;
028:
029: public interface JalistoProperties extends Serializable {
030: String getName();
031:
032: String getProperty(String key);
033:
034: Collection getTraceModuleNames();
035:
036: String getPropertiesPath();
037:
038: int getInitialSize();
039:
040: int getOidPageSize();
041:
042: int getOidTableSize();
043:
044: int getAdditionalSpace();
045:
046: int getObjectCacheSize();
047:
048: int getPageCacheSize();
049:
050: int getMBeanJmxPort();
051:
052: double getCacheClearPourcent();
053:
054: short getClassPageSize();
055:
056: short getSystemPageSize();
057:
058: String getImplementation();
059:
060: boolean isMonoImplementation();
061:
062: boolean isReadOnlyImplementation();
063:
064: boolean isMultiImplementation();
065:
066: boolean isKeepingInMemory();
067:
068: boolean isCleanLog();
069:
070: boolean allowsSpecialFunctionnalities();
071:
072: short getInstancePageSize();
073:
074: int getKeyLength();
075:
076: String getCommunicationFactoryClassName();
077:
078: String getLogFileName();
079:
080: boolean isTraceEnable();
081:
082: JalistoProperties getClone();
083:
084: String getDbFileFullName();
085:
086: String getOidDbFilePath();
087:
088: String getSystemDbFilePath();
089:
090: int getInstanceDbFileNumber();
091:
092: String getInstanceDbFilePathAt(int index);
093:
094: Collection getKeys();
095:
096: void compareProperties(JalistoProperties oldProps);
097:
098: void checkProperty(JalistoProperties oldProps, String property);
099:
100: String[] getPathes();
101:
102: void setProperty(String key, String property);
103:
104: String getServerPropertiesPath();
105:
106: String getHost();
107:
108: int getPort();
109:
110: String getInternalFactoryClass();
111:
112: public final static int SYSTEM_INDEX = 0;
113: public final static int OID_INDEX = 1;
114: public final static int INDEXES_INDEX = 1;
115:
116: public final static String MONO_IMPLEMENTATION = "mono";
117: public final static String READONLY_IMPLEMENTATION = "readonly";
118: public final static String MULTI_IMPLEMENTATION = "multi";
119: public final static String REMOTE_IMPLEMENTATION = "remote";
120:
121: public final static String NAME_KEY = "name";
122: public final static String IMPLEMENTATION_KEY = "userMode";
123: public final static String DATABASE_FILES_PATHS_KEY = "dbFilesPaths";
124: public final static String DATABASE_INITIAL_SIZE_KEY = "dbInitialSize";
125: public final static String CACHE_IMPLEMENTATION_KEY = "cacheClass";
126: public final static String OBJECT_CACHE_SIZE_KEY = "objectCacheSize";
127: public final static String PAGE_CACHE_SIZE_KEY = "pageCacheSize";
128: public final static String CACHE_CLEAR_POURCENT_KEY = "cacheClearPourcent";
129: public final static String OIDTABLE_SIZE_KEY = "oidTableSize";
130: public final static String OBJECT_INST_PAGE_SIZE_KEY = "instancePageSize";
131: public final static String OBJECT_SYST_PAGE_SIZE_KEY = "systemPageSize";
132: public final static String OBJECT_CLASS_PAGE_SIZE_KEY = "classPageSize";
133: public final static String OBJECT_OID_PAGE_SIZE_KEY = "oidPageSize";
134: public final static String CONCURRENCY_MODE_KEY = "concurrencyMode";
135: public final static String TIME_OUT_KEY = "timeOut"; // not documented
136: public final static String ADD_SPACE_KEY = "addSpace"; // not documented
137: public final static String INTERNAL_KEY_MAX_SIZE_KEY = "internalKeyMaxSize"; // not documented
138: public final static String ALLOWS_SPECIAL_FUNCTIONNALITIES_KEY = "allowsSpecialFunctionnalities"; // not documented
139: public final static String PHYSICAL_ACCESS_CLASS_KEY = "physicalClass";
140: public final static String INTERNAL_FACTORY_CLASS_KEY = "internalFactoryClass"; // not documented
141: public final static String COMMUNICATION_FACTORY_CLASS_KEY = "communicationFactoryClass";
142: public final static String QUERY_MANAGER_CLASS_KEY = "queryManagerClass";
143: public final static String MBEAN_SERVER_CLASS_KEY = "jalistoMBeanServerClass"; // not documented
144: public final static String MBEAN_JMX_SERVER_PORT_KEY = "MBeanHtmlServerPort"; // not documented
145: public final static String KEEP_IN_MEMORY_KEY = "keepInMemory";
146: public final static String CLEAN_LOG_KEY = "cleanLog"; // not documented
147: public final static String LOG_FILE_KEY = "logFile";
148: public final static String TRACE_KEY = "trace";
149: }
|