+++ HibernatePersistenceManager.java 2005/03/21 19:55:01 @@ -58,18 +58,41 @@ private static Logger log = Logger.getLogger(HibernatePersistenceManager.class); private SessionFactory sessionFactory; + + /** + * An optional reference to a Hibernate configuration file. + */ + private String configurationFile = null; public HibernatePersistenceManager() { } /** + * @return Returns the configurationFile. + */ + public String getConfigurationFile() { + return configurationFile; + } + + /** + * @param configurationFile The configurationFile to set. + */ + public void setConfigurationFile(String configurationFile) { + this.configurationFile = configurationFile; + } + + /** * @see org.apache.jackrabbit.core.state.PersistenceManager#init */ public void init(PMContext context) throws Exception { try { // Create the SessionFactory - sessionFactory = new Configuration().configure(). - buildSessionFactory(); + if (configurationFile != null && configurationFile.length() > 0) { + sessionFactory = new Configuration().configure(configurationFile).buildSessionFactory(); + } else { + sessionFactory = new Configuration().configure(). + buildSessionFactory(); + } } catch (Throwable ex) { log.error("Initial SessionFactory creation failed.", ex); throw new ExceptionInInitializerError(ex);