[jboss-cvs] JBossAS SVN: r72180 - projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/annotations/support.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Mon Apr 14 10:30:52 EDT 2008
Author: alesj
Date: 2008-04-14 10:30:52 -0400 (Mon, 14 Apr 2008)
New Revision: 72180
Modified:
projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/annotations/support/SecurityDomainAnnotationPlugin.java
Log:
Expanding the example test.
Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/annotations/support/SecurityDomainAnnotationPlugin.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/annotations/support/SecurityDomainAnnotationPlugin.java 2008-04-14 14:25:23 UTC (rev 72179)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/annotations/support/SecurityDomainAnnotationPlugin.java 2008-04-14 14:30:52 UTC (rev 72180)
@@ -25,9 +25,11 @@
import org.jboss.beans.metadata.api.annotations.Dependency;
import org.jboss.beans.metadata.spi.MetaDataVisitorNode;
+import org.jboss.dependency.spi.ControllerContext;
import org.jboss.dependency.spi.DependencyInfo;
import org.jboss.dependency.spi.DependencyItem;
import org.jboss.kernel.plugins.annotations.ClassAnnotationPlugin;
+import org.jboss.kernel.spi.dependency.KernelController;
import org.jboss.kernel.spi.dependency.KernelControllerContext;
import org.jboss.metadata.spi.MetaData;
import org.jboss.reflect.spi.ClassInfo;
@@ -49,7 +51,22 @@
throw new IllegalArgumentException("Null @Dependency.");
DependencyInfo dependencies = context.getDependencyInfo();
- SecurityDomainDependencyFactory factory = (SecurityDomainDependencyFactory)dependency.factory().newInstance();
+
+ SecurityDomainDependencyFactory factory = null;
+ // try to find existing security domain dependency factory
+ // or what ever kind of lookup
+ KernelController controller = context.getKernel().getController();
+ ControllerContext smCC = controller.getInstalledContext(annotation.securityManagerName());
+ if (smCC != null)
+ {
+ Object target = smCC.getTarget();
+ if (target != null && target instanceof SecurityDomainDependencyFactory)
+ factory = SecurityDomainDependencyFactory.class.cast(target);
+ }
+
+ if (factory == null)
+ factory = (SecurityDomainDependencyFactory)dependency.factory().newInstance();
+
DependencyItem item = factory.createDependencyItem(annotation, dependency);
dependencies.addIDependOn(item);
More information about the jboss-cvs-commits
mailing list