X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=security%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fusermgt%2FUserAdministrationComponent.java;h=e073442a7c2626d3800d54fccd4d8cbd43ba7416;hb=314065e6d9f9a964d2953e333aa1141b3c01e86d;hp=9c11c1b4d98c2ab1bb40f49c91985b6b758d544a;hpb=9180df3f3dae4a35f63c1b103dd502c8fbbaded0;p=utils diff --git a/security/src/main/java/org/wamblee/usermgt/UserAdministrationComponent.java b/security/src/main/java/org/wamblee/usermgt/UserAdministrationComponent.java index 9c11c1b4..e073442a 100644 --- a/security/src/main/java/org/wamblee/usermgt/UserAdministrationComponent.java +++ b/security/src/main/java/org/wamblee/usermgt/UserAdministrationComponent.java @@ -19,42 +19,58 @@ import java.io.IOException; import javax.sql.DataSource; -import org.hibernate.cache.EhCacheProvider; +import org.springframework.orm.hibernate3.HibernateTemplate; import org.springframework.transaction.PlatformTransactionManager; +import org.wamblee.cache.EhCache; import org.wamblee.system.adapters.DefaultContainer; import org.wamblee.system.core.Component; import org.wamblee.system.core.DefaultProvidedInterface; import org.wamblee.system.core.DefaultRequiredInterface; +import org.wamblee.system.core.ProvidedInterface; +import org.wamblee.system.core.Scope; import org.wamblee.usermgt.hibernate.UsermgtHibernateMappingFiles; public class UserAdministrationComponent extends DefaultContainer { + private ProvidedInterface TRANSACTION_MGR = new DefaultProvidedInterface( + "transactionManager", PlatformTransactionManager.class); + private ProvidedInterface USER_CACHE = new DefaultProvidedInterface( + "userCache", EhCache.class); + private ProvidedInterface HIBERNATE_TEMPLATE = new DefaultProvidedInterface( + "hibernateTemplate", HibernateTemplate.class); + private ProvidedInterface USER_MGT = new DefaultProvidedInterface( + "usermgt", UserAdministration.class); + + private Component _hibernate; + private Component _repository; + private Component _usermgt; + + private boolean _exposeInternals; + public UserAdministrationComponent(String aName, boolean aExposeInternals) throws IOException { super(aName); + _exposeInternals = aExposeInternals; + addComponent("mappingFiles", new UsermgtHibernateMappingFiles()); - Component hibernate = new HibernateComponent("hibernate"); - addComponent(hibernate); - Component repository = new UserGroupRepositoryComponent( - "usersgroups"); - addComponent(repository); + _hibernate = new HibernateComponent("hibernate"); + addComponent(_hibernate); + + _repository = new UserGroupRepositoryComponent("usersgroups"); + addComponent(_repository); - Component usermgt = new UserAdministrationLightComponent( - "usermgtlight"); - addComponent(usermgt); + _usermgt = new UserAdministrationLightComponent("usermgtlight"); + addComponent(_usermgt); addRequiredInterface(new DefaultRequiredInterface("datasource", DataSource.class)); if (aExposeInternals) { - addProvidedInterface(new DefaultProvidedInterface( - "transactionManager", PlatformTransactionManager.class)); - addProvidedInterface(new DefaultProvidedInterface("userCache", - EhCacheProvider.class)); + addProvidedInterface(TRANSACTION_MGR); + addProvidedInterface(USER_CACHE); + addProvidedInterface(HIBERNATE_TEMPLATE); } - addProvidedInterface(new DefaultProvidedInterface("usermgt", - UserAdministration.class)); - + addProvidedInterface(USER_MGT); } }