1 package com.atlassian.user.impl.hibernate.configuration;
2
3 import com.atlassian.cache.CacheFactory;
4 import com.atlassian.user.configuration.Configuration;
5 import com.atlassian.user.configuration.ConfigurationException;
6 import com.atlassian.user.configuration.RepositoryAccessor;
7 import com.atlassian.user.configuration.RepositoryConfiguration;
8 import com.atlassian.user.configuration.xml.XMLConfiguration;
9 import com.opensymphony.module.propertyset.hibernate.DefaultHibernateConfigurationProvider;
10 import com.opensymphony.module.propertyset.hibernate.HibernateConfigurationProvider;
11
12 import java.io.InputStream;
13
14
15
16
17 public class HibernateXMLConfiguration extends XMLConfiguration
18 {
19 private final CacheFactory cacheFactory;
20
21 public HibernateXMLConfiguration(InputStream is, CacheFactory cacheFactory) throws ConfigurationException
22 {
23 super(is);
24 this.cacheFactory = cacheFactory;
25 }
26
27 protected RepositoryAccessor configureRepository(RepositoryConfiguration config) throws ConfigurationException
28 {
29 config.addComponent(Configuration.CACHEFACTORY, cacheFactory);
30
31 HibernateConfigurationProvider provider = new DefaultHibernateConfigurationProvider();
32 config.addComponent(Configuration.HIBERNATE_CONFIGURATION_PROVIDER, provider);
33 return super.configureRepository(config);
34 }
35 }