[jboss-cvs] JBossAS SVN: r71557 - projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Apr 1 10:31:38 EDT 2008
Author: alesj
Date: 2008-04-01 10:31:37 -0400 (Tue, 01 Apr 2008)
New Revision: 71557
Modified:
projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/AbstractKernelDeployer.java
projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/AbstractKernelDeployment.java
Log:
[JBMICROCONT-280] moving defaults to AbstractKernelDeployment.
Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/AbstractKernelDeployer.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/AbstractKernelDeployer.java 2008-04-01 13:39:35 UTC (rev 71556)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/AbstractKernelDeployer.java 2008-04-01 14:31:37 UTC (rev 71557)
@@ -29,11 +29,7 @@
import java.util.ListIterator;
import java.util.Set;
-import org.jboss.beans.metadata.plugins.AbstractClassLoaderMetaData;
-import org.jboss.beans.metadata.plugins.AbstractDependencyValueMetaData;
import org.jboss.beans.metadata.spi.BeanMetaData;
-import org.jboss.beans.metadata.spi.ClassLoaderMetaData;
-import org.jboss.beans.metadata.spi.ValueMetaData;
import org.jboss.dependency.spi.ControllerContext;
import org.jboss.dependency.spi.ControllerMode;
import org.jboss.dependency.spi.ControllerState;
@@ -306,7 +302,7 @@
{
for (BeanMetaData metaData : beans)
{
- KernelControllerContext context = deployBean(controller, deployment, metaData);
+ KernelControllerContext context = deployBean(controller, metaData);
deployment.addInstalledContext(context);
}
}
@@ -316,39 +312,18 @@
* Deploy a bean
*
* @param controller the controller
- * @param deployment the deployment
* @param bean the bean metadata
* @return the KernelControllerContext
* @throws Throwable for any error
*/
- protected KernelControllerContext deployBean(KernelController controller, KernelDeployment deployment, BeanMetaData bean) throws Throwable
+ protected KernelControllerContext deployBean(KernelController controller, BeanMetaData bean) throws Throwable
{
KernelControllerContext context = new AbstractKernelControllerContext(null, bean, null);
if (requiredState != null)
context.setRequiredState(requiredState);
if (mode != null)
context.setMode(mode);
- // Use any deployment classloader if present and the bean doesn't have one
- ClassLoaderMetaData beanClassLoader = bean.getClassLoader();
- if (beanClassLoader == null && deployment != null)
- {
- ClassLoaderMetaData deploymentClassLoader = deployment.getClassLoader();
- if (deploymentClassLoader != null)
- {
- // If the deployment classloader is a bean, replace it with an injection
- ValueMetaData classLoader = deploymentClassLoader.getClassLoader();
- if (classLoader instanceof BeanMetaData)
- {
- classLoader = new AbstractDependencyValueMetaData(((BeanMetaData) classLoader).getName());
- beanClassLoader = new AbstractClassLoaderMetaData(classLoader);
- }
- else
- {
- beanClassLoader = deploymentClassLoader;
- }
- bean.setClassLoader(beanClassLoader);
- }
- }
+
controller.install(context);
return context;
}
Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/AbstractKernelDeployment.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/AbstractKernelDeployment.java 2008-04-01 13:39:35 UTC (rev 71556)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/AbstractKernelDeployment.java 2008-04-01 14:31:37 UTC (rev 71557)
@@ -28,7 +28,6 @@
import java.util.List;
import java.util.Set;
import java.util.concurrent.CopyOnWriteArrayList;
-
import javax.xml.bind.annotation.XmlAnyElement;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
@@ -45,6 +44,7 @@
import org.jboss.beans.metadata.plugins.AbstractNamedAliasMetaData;
import org.jboss.beans.metadata.plugins.AbstractValueMetaData;
import org.jboss.beans.metadata.plugins.MutableLifecycleHolder;
+import org.jboss.beans.metadata.plugins.AbstractDependencyValueMetaData;
import org.jboss.beans.metadata.spi.AnnotationMetaData;
import org.jboss.beans.metadata.spi.BeanMetaData;
import org.jboss.beans.metadata.spi.BeanMetaDataFactory;
@@ -219,55 +219,86 @@
}
List<BeanMetaDataFactory> factories = getBeanFactories();
-
if (factories != null && factories.isEmpty() == false)
{
for (BeanMetaDataFactory factory : factories)
{
+ if (factory == null)
+ throw new IllegalArgumentException("BeanMetaDataFactory cannot be null.");
+
List<BeanMetaData> beans = factory.getBeans();
- for (BeanMetaData bmd : beans)
+ if (beans != null && beans.isEmpty() == false)
{
- // check annotations
- if (annotations != null && annotations.isEmpty() == false)
+ for (BeanMetaData bmd : beans)
{
- Set<AnnotationMetaData> annotationsBMD = bmd.getAnnotations();
- if (annotationsBMD == null)
+ if (bmd == null)
+ throw new IllegalArgumentException("Bean meta data cannot be null.");
+
+ // check annotations
+ if (annotations != null && annotations.isEmpty() == false)
{
- annotationsBMD = new HashSet<AnnotationMetaData>();
- bmd.setAnnotations(annotationsBMD);
+ Set<AnnotationMetaData> annotationsBMD = bmd.getAnnotations();
+ if (annotationsBMD == null)
+ {
+ annotationsBMD = new HashSet<AnnotationMetaData>();
+ bmd.setAnnotations(annotationsBMD);
+ }
+ annotationsBMD.addAll(annotations);
}
- annotationsBMD.addAll(annotations);
- }
- // impl specific
- if (bmd instanceof AbstractBeanMetaData)
- {
- AbstractBeanMetaData bean = (AbstractBeanMetaData)bmd;
- // set deployment defaults, if not already set per bean
- if (bean.getCreate() == null && getCreate() != null)
+
+ // impl specific
+ if (bmd instanceof AbstractBeanMetaData)
{
- bean.setCreate(getCreate());
+ AbstractBeanMetaData bean = (AbstractBeanMetaData)bmd;
+ // set deployment defaults, if not already set per bean
+ if (bean.getCreate() == null && getCreate() != null)
+ {
+ bean.setCreate(getCreate());
+ }
+ if (bean.getStart() == null && getStart() != null)
+ {
+ bean.setStart(getStart());
+ }
+ if (bean.getStop() == null && getStop() != null)
+ {
+ bean.setStop(getStop());
+ }
+ if (bean.getDestroy() == null && getDestroy() != null)
+ {
+ bean.setDestroy(getDestroy());
+ }
+
+ // controller mode
+ if (bean.getMode() == null && getMode() != null)
+ {
+ bean.setMode(getMode());
+ }
}
- if (bean.getStart() == null && getStart() != null)
- {
- bean.setStart(getStart());
- }
- if (bean.getStop() == null && getStop() != null)
- {
- bean.setStop(getStop());
- }
- if (bean.getDestroy() == null && getDestroy() != null)
- {
- bean.setDestroy(getDestroy());
- }
- // controller mode
- if (bean.getMode() == null && getMode() != null)
+ // Use any deployment classloader if present and the bean doesn't have one
+ ClassLoaderMetaData beanClassLoader = bmd.getClassLoader();
+ if (beanClassLoader == null)
{
- bean.setMode(getMode());
+ ClassLoaderMetaData deploymentClassLoader = getClassLoader();
+ if (deploymentClassLoader != null)
+ {
+ // If the deployment classloader is a bean, replace it with an injection
+ ValueMetaData classLoader = deploymentClassLoader.getClassLoader();
+ if (classLoader instanceof BeanMetaData)
+ {
+ classLoader = new AbstractDependencyValueMetaData(((BeanMetaData) classLoader).getName());
+ beanClassLoader = new AbstractClassLoaderMetaData(classLoader);
+ }
+ else
+ {
+ beanClassLoader = deploymentClassLoader;
+ }
+ bmd.setClassLoader(beanClassLoader);
+ }
}
}
+ result.addAll(beans);
}
- result.addAll(beans);
}
}
// For backwards compatibility
More information about the jboss-cvs-commits
mailing list