From: <bsc...@us...> - 2009-10-30 12:44:58
|
Revision: 5661 http://unicore.svn.sourceforge.net/unicore/?rev=5661&view=rev Author: bschuller Date: 2009-10-30 12:44:46 +0000 (Fri, 30 Oct 2009) Log Message: ----------- Modified Paths: -------------- persistence/trunk/src/main/java/de/fzj/unicore/persist/ConfigurationSource.java persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/H2Persist.java persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/HSQLPersist.java persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/PersistImpl.java persistence/trunk/src/site/apt/configuration.apt Modified: persistence/trunk/src/main/java/de/fzj/unicore/persist/ConfigurationSource.java =================================================================== --- persistence/trunk/src/main/java/de/fzj/unicore/persist/ConfigurationSource.java 2009-10-30 11:24:50 UTC (rev 5660) +++ persistence/trunk/src/main/java/de/fzj/unicore/persist/ConfigurationSource.java 2009-10-30 12:44:46 UTC (rev 5661) @@ -1,5 +1,5 @@ /********************************************************************************* - * Copyright (c) 2008 Forschungszentrum Juelich GmbH + * Copyright (c) 2008-2009 Forschungszentrum Juelich GmbH * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -39,33 +39,77 @@ */ public interface ConfigurationSource { + /** + * the concrete persistence class to use + */ public static final String DB_IMPL="persistence.class"; + /** + * the JDBC driver name (if not using the default for a given DB) + */ public static final String DB_DRIVER="persistence.driver"; + /** + * the name of the database to connect to + */ public static final String DB_DATABASE="persistence.database"; + /** + * the database user name + */ public static final String DB_USER="persistence.user"; + /** + * the database password + */ public static final String DB_PASSWORD="persistence.password"; + /** + * the host of the DB server + */ public static final String DB_HOST="persistence.host"; + /** + * the port where the DB server is listening + */ public static final String DB_PORT="persistence.port"; + /** + * enable caching + */ public static final String DB_CACHE_ENABLE="persistence.cache.enable"; + /** + * maximum number of cache entries + */ public static final String DB_CACHE_MAX_SIZE="persistence.cache.maxSize"; + /** + * enable write-behind, i.e. delay the actual writing of the data into the database + */ public static final String DB_WRITE_BEHIND_ENABLE="persistence.writebehind.enable"; + /** + * the write-behind delay + */ public static final String DB_WRITE_BEHIND_DELAY="persistence.writebehind.delay"; + /** + * control lock fairness + */ public static final String DB_LOCKS_FAIRNESS="persistence.locks.fair"; + /** + * whether data is stored in binary form (as SQL BLOB). Recommended!! + */ public static final String DB_STORE_BINARY="persistence.store_data_as_binary"; /** + * the directory (if appropriate) where to store the data + */ + public static final String DB_DIRECTORY="persistence.directory"; + + /** * get a property that is defined per table. As fallback, get the general property.<br/> * The lookup sequence to find the property is: * <ul> Modified: persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/H2Persist.java =================================================================== --- persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/H2Persist.java 2009-10-30 11:24:50 UTC (rev 5660) +++ persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/H2Persist.java 2009-10-30 12:44:46 UTC (rev 5661) @@ -40,6 +40,8 @@ import org.apache.log4j.Logger; +import de.fzj.unicore.persist.ConfigurationSource; + /** * H2 database based persistence * @@ -50,12 +52,6 @@ private static final Logger logger=Logger.getLogger("unicore.persistence."+H2Persist.class.getSimpleName()); /** - * directory for storing the H2 data files<br/> - * default: system temp dir - */ - public static String CONFIG_DATADIRECTORY="persistence.h2.directory"; - - /** * memory for caching in kilo bytes <br/> * default: 4096 kB */ @@ -115,14 +111,14 @@ protected String createConnString(){ String dir=null; if(config!=null){ - dir=config.getPerTableProperty(CONFIG_DATADIRECTORY,pd.getTableName(),null); + dir=config.getPerTableProperty(ConfigurationSource.DB_DIRECTORY,pd.getTableName(),null); } if(dir==null){ dir=System.getProperty("java.io.tmpdir"); logger.debug("Using fallback directory as storage: "+dir); } String id=getDatabaseName(); - String conn= "jdbc:h2:file:"+dir+File.separator+id; + String conn= "jdbc:h2:file:"+dir+File.separator+id+";DB_CLOSE_ON_EXIT=FALSE"; logger.info("Connecting to: "+conn); return conn; } Modified: persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/HSQLPersist.java =================================================================== --- persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/HSQLPersist.java 2009-10-30 11:24:50 UTC (rev 5660) +++ persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/HSQLPersist.java 2009-10-30 12:44:46 UTC (rev 5661) @@ -40,6 +40,8 @@ import org.apache.log4j.Logger; +import de.fzj.unicore.persist.ConfigurationSource; + /** * HSQLDB based persistence * @@ -50,12 +52,6 @@ private static final Logger logger=Logger.getLogger("unicore.persistence."+HSQLPersist.class.getSimpleName()); /** - * directory for storing the HSQLDB data files<br/> - * default: system temp dir - */ - public static String CONFIG_DATADIRECTORY="persistence.hsqldb.directory"; - - /** * limit on the log file size (in megabytes)<br/> * default: 50 */ @@ -197,7 +193,7 @@ protected String createConnString(){ String dir=null; if(config!=null){ - dir=config.getPerTableProperty(CONFIG_DATADIRECTORY,pd.getTableName(),null); + dir=config.getPerTableProperty(ConfigurationSource.DB_DIRECTORY,pd.getTableName(),null); } if(dir==null){ dir=System.getProperty("java.io.tmpdir"); Modified: persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/PersistImpl.java =================================================================== --- persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/PersistImpl.java 2009-10-30 11:24:50 UTC (rev 5660) +++ persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/PersistImpl.java 2009-10-30 12:44:46 UTC (rev 5661) @@ -95,7 +95,7 @@ private Cache cache; - private Boolean caching = Boolean.FALSE; + private Boolean caching = Boolean.TRUE; private Boolean writeBehind = Boolean.FALSE; Modified: persistence/trunk/src/site/apt/configuration.apt =================================================================== --- persistence/trunk/src/site/apt/configuration.apt 2009-10-30 11:24:50 UTC (rev 5660) +++ persistence/trunk/src/site/apt/configuration.apt 2009-10-30 12:44:46 UTC (rev 5661) @@ -11,7 +11,7 @@ *-----------------------------------+-------------------+-------------------+-------------------+ |<<property name>> |<<range of values>>|<<default value>> |<<description>> | *-----------------------------------+-------------------+-------------------+-------------------+ -|persistence.class |String | de.fzj.unicore.persist.impl.HSQLPersist | name of the Java class | +|persistence.class |String | de.fzj.unicore.persist.impl.H2Persist | name of the Java class | *-----------------------------------+-------------------+-------------------+-------------------+ |persistence.database |String | | name of the database to connect to | *-----------------------------------+-------------------+-------------------+-------------------+ @@ -19,10 +19,10 @@ *-----------------------------------+-------------------+-------------------+-------------------+ |persistence.password |String | | database password | *-----------------------------------+-------------------+-------------------+-------------------+ -|persistence.class |String | de.fzj.unicore.persist.impl.HSQLPersist |Java class name of the persistence implementation to use| -*-----------------------------------+-------------------+-------------------+-------------------+ |persistence.driver |String | (implemention class may provide their own) |Java class name of the JDBC driver | *-----------------------------------+-------------------+-------------------+-------------------+ +|persistence.directory |String | | name of the directory for storing data | +*-----------------------------------+-------------------+-------------------+-------------------+ * Caching @@ -49,18 +49,6 @@ +------------- -* HSQLDB configuration options - - These properties are only relevant if HSQLDB is used. - -*-----------------------------------+-------------------+-------------------+-------------------+ -|<<property name>> |<<range of values>>|<<default value>> |<<description>> | -*-----------------------------------+-------------------+-------------------+-------------------+ -|persistence.hsqldb.directory |String | | name of the database to connect to | -*-----------------------------------+-------------------+-------------------+-------------------+ - - - * MySQL configuration options These properties are only relevant if MySQL is used. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |