[jboss-cvs] JBossAS SVN: r79219 - projects/jboss-deployers/trunk/deployers-vfs/src/main/java/org/jboss/deployers/vfs/deployer/kernel.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Oct 7 09:09:11 EDT 2008
Author: alesj
Date: 2008-10-07 09:09:11 -0400 (Tue, 07 Oct 2008)
New Revision: 79219
Modified:
projects/jboss-deployers/trunk/deployers-vfs/src/main/java/org/jboss/deployers/vfs/deployer/kernel/BeanMetaDataFactoryDeployer.java
projects/jboss-deployers/trunk/deployers-vfs/src/main/java/org/jboss/deployers/vfs/deployer/kernel/BeanMetaDataFactoryVisitor.java
projects/jboss-deployers/trunk/deployers-vfs/src/main/java/org/jboss/deployers/vfs/deployer/kernel/KernelDeploymentDeployer.java
Log:
Move BeanMDFVisitor to new AbstractDeploymentVisitor (JBDEPLOY-101).
Modified: projects/jboss-deployers/trunk/deployers-vfs/src/main/java/org/jboss/deployers/vfs/deployer/kernel/BeanMetaDataFactoryDeployer.java
===================================================================
--- projects/jboss-deployers/trunk/deployers-vfs/src/main/java/org/jboss/deployers/vfs/deployer/kernel/BeanMetaDataFactoryDeployer.java 2008-10-07 12:45:01 UTC (rev 79218)
+++ projects/jboss-deployers/trunk/deployers-vfs/src/main/java/org/jboss/deployers/vfs/deployer/kernel/BeanMetaDataFactoryDeployer.java 2008-10-07 13:09:11 UTC (rev 79219)
@@ -56,7 +56,7 @@
return clazz;
}
- protected List<BeanMetaData> getBeans(T deployment)
+ protected List<? extends BeanMetaData> getComponents(T deployment)
{
return deployment.getBeans();
}
Modified: projects/jboss-deployers/trunk/deployers-vfs/src/main/java/org/jboss/deployers/vfs/deployer/kernel/BeanMetaDataFactoryVisitor.java
===================================================================
--- projects/jboss-deployers/trunk/deployers-vfs/src/main/java/org/jboss/deployers/vfs/deployer/kernel/BeanMetaDataFactoryVisitor.java 2008-10-07 12:45:01 UTC (rev 79218)
+++ projects/jboss-deployers/trunk/deployers-vfs/src/main/java/org/jboss/deployers/vfs/deployer/kernel/BeanMetaDataFactoryVisitor.java 2008-10-07 13:09:11 UTC (rev 79219)
@@ -21,14 +21,8 @@
*/
package org.jboss.deployers.vfs.deployer.kernel;
-import java.util.ArrayList;
-import java.util.List;
-
import org.jboss.beans.metadata.spi.BeanMetaData;
-import org.jboss.deployers.spi.DeploymentException;
-import org.jboss.deployers.spi.deployer.helpers.DeploymentVisitor;
-import org.jboss.deployers.structure.spi.DeploymentUnit;
-import org.jboss.logging.Logger;
+import org.jboss.deployers.spi.deployer.helpers.AbstractDeploymentVisitor;
/**
* BeanMetaDataVisitor.<p>
@@ -36,94 +30,15 @@
* @param <T> exact attachment type
* @author <a href="ales.justin at jboss.com">Ales Justin</a>
*/
-public abstract class BeanMetaDataFactoryVisitor<T> implements DeploymentVisitor<T>
+public abstract class BeanMetaDataFactoryVisitor<T> extends AbstractDeploymentVisitor<BeanMetaData, T>
{
- private Logger log = Logger.getLogger(getClass());
-
- /**
- * Add bean component.
- *
- * @param unit the deployment unit
- * @param bean the bean metadata
- */
- protected static void addBeanComponent(DeploymentUnit unit, BeanMetaData bean)
+ protected Class<BeanMetaData> getComponentType()
{
- DeploymentUnit component = unit.addComponent(bean.getName());
- component.addAttachment(BeanMetaData.class.getName(), bean);
+ return BeanMetaData.class;
}
- /**
- * Remove bean component.
- *
- * @param unit the deployment unit
- * @param bean the bean metadata
- */
-
- protected static void removeBeanComponent(DeploymentUnit unit, BeanMetaData bean)
+ protected String getComponentName(BeanMetaData attachment)
{
- unit.removeComponent(bean.getName());
+ return attachment.getName();
}
-
- /**
- * Ignore all error during component removal.
- *
- * @param unit the deployment unit
- * @param bean the bean metadata
- */
- protected void safeRemoveBeanComponent(DeploymentUnit unit, BeanMetaData bean)
- {
- try
- {
- removeBeanComponent(unit, bean);
- }
- catch (Throwable ignored)
- {
- log.warn("Error during component removal: " + unit.getName(), ignored);
- }
- }
-
- /**
- * Get beans from deployment.
- *
- * @param deployment the deployment
- * @return list of beans
- */
- protected abstract List<BeanMetaData> getBeans(T deployment);
-
- public void deploy(DeploymentUnit unit, T deployment) throws DeploymentException
- {
- List<BeanMetaData> beans = getBeans(deployment);
- if (beans != null && beans.isEmpty() == false)
- {
- List<BeanMetaData> visited = new ArrayList<BeanMetaData>();
- try
- {
- for (BeanMetaData bean : beans)
- {
- addBeanComponent(unit, bean);
- visited.add(bean);
- }
- }
- catch (Throwable t)
- {
- for (int i = visited.size()-1; i >= 0; --i)
- {
- safeRemoveBeanComponent(unit, visited.get(i));
- }
- throw DeploymentException.rethrowAsDeploymentException("Error deploying: " + unit.getName(), t);
- }
- }
- }
-
- public void undeploy(DeploymentUnit unit, T deployment)
- {
- List<BeanMetaData> beans = getBeans(deployment);
- if (beans != null && beans.isEmpty() == false)
- {
- for (BeanMetaData bean : beans)
- {
- safeRemoveBeanComponent(unit, bean);
- }
- }
- }
}
Modified: projects/jboss-deployers/trunk/deployers-vfs/src/main/java/org/jboss/deployers/vfs/deployer/kernel/KernelDeploymentDeployer.java
===================================================================
--- projects/jboss-deployers/trunk/deployers-vfs/src/main/java/org/jboss/deployers/vfs/deployer/kernel/KernelDeploymentDeployer.java 2008-10-07 12:45:01 UTC (rev 79218)
+++ projects/jboss-deployers/trunk/deployers-vfs/src/main/java/org/jboss/deployers/vfs/deployer/kernel/KernelDeploymentDeployer.java 2008-10-07 13:09:11 UTC (rev 79219)
@@ -49,7 +49,7 @@
return KernelDeployment.class;
}
- protected List<BeanMetaData> getBeans(KernelDeployment deployment)
+ protected List<? extends BeanMetaData> getComponents(KernelDeployment deployment)
{
return deployment.getBeans();
}
@@ -65,7 +65,7 @@
return BeanMetaData.class;
}
- protected List<BeanMetaData> getBeans(BeanMetaData deployment)
+ protected List<? extends BeanMetaData> getComponents(BeanMetaData deployment)
{
return Collections.singletonList(deployment);
}
More information about the jboss-cvs-commits
mailing list