(no commit message)
[utils] / security / src / main / java / org / wamblee / usermgt / hibernate / AuthorizationComponent.java
index 1cb21bcfdd4028b4df8b754ea06500a3b789ce35..941ecfe5898c4c37b6cff1c445500ced34d199cc 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright 2008 the original author or authors.
+ * Copyright 2005-2010 the original author or authors.
  * 
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -12,7 +12,7 @@
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
- */
+ */ 
 package org.wamblee.usermgt.hibernate;
 
 import java.io.IOException;
@@ -21,48 +21,67 @@ import javax.sql.DataSource;
 
 import org.springframework.orm.hibernate3.HibernateTemplate;
 import org.springframework.transaction.PlatformTransactionManager;
-import org.wamblee.cache.EhCache;
 import org.wamblee.security.authorization.AuthorizationService;
 import org.wamblee.security.authorization.hibernate.AuthorizationMappingFiles;
 import org.wamblee.system.adapters.DefaultContainer;
+import org.wamblee.system.adapters.ObjectConfiguration;
+import org.wamblee.system.components.ORMappingConfig;
 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.system.spring.component.HibernateComponent;
 import org.wamblee.usermgt.UserAccessor;
-import org.wamblee.usermgt.UserAdministration;
-import org.wamblee.usermgt.UserGroupRepositoryComponent;
 
+/**
+ * 
+ * @author $author$
+ * @version $Revision$
+ */
 public class AuthorizationComponent extends DefaultContainer {
+    private ProvidedInterface transactionMgr = new DefaultProvidedInterface(
+        "transactionManager", PlatformTransactionManager.class);
 
-    private ProvidedInterface TRANSACTION_MGR = new DefaultProvidedInterface(
-            "transactionManager", PlatformTransactionManager.class);
-    private ProvidedInterface HIBERNATE_TEMPLATE = new DefaultProvidedInterface(
-            "hibernateTemplate", HibernateTemplate.class);
-    private ProvidedInterface AUTHORIZATION_SERVICE = new DefaultProvidedInterface(
-            "authorizationService", AuthorizationService.class);
+    private ProvidedInterface hibernateTemplate = new DefaultProvidedInterface(
+        "hibernateTemplate", HibernateTemplate.class);
 
+    private ProvidedInterface authorizationService = new DefaultProvidedInterface(
+        "authorizationService", AuthorizationService.class);
+
+    /**
+     * Creates a new AuthorizationComponent object.
+     * 
+     * 
+     */
     public AuthorizationComponent(String aName, boolean aExposeInternals)
-            throws IOException {
+        throws IOException {
         super(aName);
-       
-        addComponent("mappingFiles", new AuthorizationMappingFiles()); 
+
+        ObjectConfiguration authConfig = new ObjectConfiguration(
+            AuthorizationMappingFiles.class);
+        authConfig.getSetterConfig().initAllSetters();
+        addComponent("mappingFiles", new AuthorizationMappingFiles(),
+            authConfig);
 
         Component<?> hibernate = new HibernateComponent("hibernate");
         addComponent(hibernate);
 
-        Component<?> authorization = new AuthorizationLightComponent("authorization");
+        Component<?> authorization = new AuthorizationLightComponent(
+            "authorization");
         addComponent(authorization);
 
-        addRequiredInterface(new DefaultRequiredInterface("datasource", DataSource.class));
+        addRequiredInterface(new DefaultRequiredInterface("datasource",
+            DataSource.class));
         addRequiredInterface(new DefaultRequiredInterface("userAccessor",
-                UserAccessor.class));
+            UserAccessor.class));
+        addRequiredInterface(new DefaultRequiredInterface("ormconfig",
+            ORMappingConfig.class));
 
         if (aExposeInternals) {
-            addProvidedInterface(TRANSACTION_MGR);
-            addProvidedInterface(HIBERNATE_TEMPLATE);
+            addProvidedInterface(transactionMgr);
+            addProvidedInterface(hibernateTemplate);
         }
-        addProvidedInterface(AUTHORIZATION_SERVICE);
+
+        addProvidedInterface(authorizationService);
     }
 }