[jboss-cvs] JBossAS SVN: r64319 - in projects/microcontainer/trunk: deployers-impl/src/tests/org/jboss/test/deployers/deployer/support and 5 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Fri Jul 27 02:42:39 EDT 2007
Author: scott.stark at jboss.org
Date: 2007-07-27 02:42:39 -0400 (Fri, 27 Jul 2007)
New Revision: 64319
Modified:
projects/microcontainer/trunk/deployers-impl/src/main/org/jboss/deployers/plugins/main/MainDeployerImpl.java
projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/DSMetaData.java
projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/MCFDeployer.java
projects/microcontainer/trunk/deployers-spi/src/main/org/jboss/deployers/spi/deployer/managed/ManagedDeploymentCreator.java
projects/microcontainer/trunk/managed/src/main/org/jboss/managed/api/Fields.java
projects/microcontainer/trunk/managed/src/main/org/jboss/managed/api/annotation/ManagementComponent.java
projects/microcontainer/trunk/managed/src/main/org/jboss/managed/api/annotation/ManagementComponentRef.java
projects/microcontainer/trunk/managed/src/main/org/jboss/managed/plugins/ManagedDeploymentImpl.java
projects/microcontainer/trunk/managed/src/main/org/jboss/managed/plugins/factory/AbstractManagedObjectFactory.java
Log:
JBMICROCONT-181, leverage the existing ManagedObject work
Modified: projects/microcontainer/trunk/deployers-impl/src/main/org/jboss/deployers/plugins/main/MainDeployerImpl.java
===================================================================
--- projects/microcontainer/trunk/deployers-impl/src/main/org/jboss/deployers/plugins/main/MainDeployerImpl.java 2007-07-27 04:25:01 UTC (rev 64318)
+++ projects/microcontainer/trunk/deployers-impl/src/main/org/jboss/deployers/plugins/main/MainDeployerImpl.java 2007-07-27 06:42:39 UTC (rev 64319)
@@ -32,9 +32,11 @@
import org.jboss.deployers.client.spi.Deployment;
import org.jboss.deployers.client.spi.main.MainDeployer;
+import org.jboss.deployers.plugins.managed.DefaultManagedDeploymentCreator;
import org.jboss.deployers.spi.DeploymentException;
import org.jboss.deployers.spi.DeploymentState;
import org.jboss.deployers.spi.deployer.Deployers;
+import org.jboss.deployers.spi.deployer.managed.ManagedDeploymentCreator;
import org.jboss.deployers.structure.spi.DeploymentContext;
import org.jboss.deployers.structure.spi.DeploymentUnit;
import org.jboss.deployers.structure.spi.StructuralDeployers;
@@ -42,6 +44,7 @@
import org.jboss.logging.Logger;
import org.jboss.managed.api.ManagedDeployment;
import org.jboss.managed.api.ManagedObject;
+import org.jboss.managed.plugins.ManagedDeploymentImpl;
import org.jboss.util.graph.Graph;
import org.jboss.util.graph.Vertex;
@@ -65,6 +68,7 @@
/** The structural deployers */
private StructuralDeployers structuralDeployers;
+ private ManagedDeploymentCreator mgtDeploymentCreator = new DefaultManagedDeploymentCreator();
/** The deployments by name */
private Map<String, DeploymentContext> topLevelDeployments = new ConcurrentHashMap<String, DeploymentContext>();
@@ -412,7 +416,11 @@
*/
public ManagedDeployment getManagedDeployment(String name) throws DeploymentException
{
- ManagedDeployment md = null;
+ DeploymentContext context = getDeploymentContext(name);
+ if (context == null)
+ throw new IllegalArgumentException("Context not found: " + name);
+
+ ManagedDeployment md = mgtDeploymentCreator.build(context.getDeploymentUnit());
return md;
}
Modified: projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/DSMetaData.java
===================================================================
--- projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/DSMetaData.java 2007-07-27 04:25:01 UTC (rev 64318)
+++ projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/DSMetaData.java 2007-07-27 06:42:39 UTC (rev 64319)
@@ -27,6 +27,7 @@
import java.util.List;
import org.jboss.managed.api.annotation.ManagementComponent;
+import org.jboss.managed.api.annotation.ManagementObject;
import org.jboss.managed.api.annotation.ManagementProperty;
/**
@@ -35,6 +36,7 @@
* @author Scott.Stark at jboss.org
* @version $Revision$
*/
+ at ManagementObject
public class DSMetaData implements Serializable
{
private static final long serialVersionUID = 1;
Modified: projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/MCFDeployer.java
===================================================================
--- projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/MCFDeployer.java 2007-07-27 04:25:01 UTC (rev 64318)
+++ projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/MCFDeployer.java 2007-07-27 06:42:39 UTC (rev 64319)
@@ -24,8 +24,10 @@
{
}
- public void build(DeploymentUnit unit, ManagedDeployment md)
- {
+ public ManagedDeployment build(DeploymentUnit unit)
+ {
+ ManagedDeployment md = null;
+ return md;
}
}
Modified: projects/microcontainer/trunk/deployers-spi/src/main/org/jboss/deployers/spi/deployer/managed/ManagedDeploymentCreator.java
===================================================================
--- projects/microcontainer/trunk/deployers-spi/src/main/org/jboss/deployers/spi/deployer/managed/ManagedDeploymentCreator.java 2007-07-27 04:25:01 UTC (rev 64318)
+++ projects/microcontainer/trunk/deployers-spi/src/main/org/jboss/deployers/spi/deployer/managed/ManagedDeploymentCreator.java 2007-07-27 06:42:39 UTC (rev 64319)
@@ -41,5 +41,5 @@
* @param unit - the deployment unit to process
* @param md - the unit ManagedDeployment
*/
- public void build(DeploymentUnit unit, ManagedDeployment md);
+ public ManagedDeployment build(DeploymentUnit unit);
}
Modified: projects/microcontainer/trunk/managed/src/main/org/jboss/managed/api/Fields.java
===================================================================
--- projects/microcontainer/trunk/managed/src/main/org/jboss/managed/api/Fields.java 2007-07-27 04:25:01 UTC (rev 64318)
+++ projects/microcontainer/trunk/managed/src/main/org/jboss/managed/api/Fields.java 2007-07-27 06:42:39 UTC (rev 64319)
@@ -60,7 +60,9 @@
String MANDATORY = "mandatory";
// TODO other standard fields here
-
+ /** The PropertyInfo info for the ManagedObject attachment */
+ String PROPERTY_INFO = "propertyInfo";
+
/**
* Get a field with the given name
*
Modified: projects/microcontainer/trunk/managed/src/main/org/jboss/managed/api/annotation/ManagementComponent.java
===================================================================
--- projects/microcontainer/trunk/managed/src/main/org/jboss/managed/api/annotation/ManagementComponent.java 2007-07-27 04:25:01 UTC (rev 64318)
+++ projects/microcontainer/trunk/managed/src/main/org/jboss/managed/api/annotation/ManagementComponent.java 2007-07-27 06:42:39 UTC (rev 64319)
@@ -21,6 +21,11 @@
*/
package org.jboss.managed.api.annotation;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
/**
* An annotation that identifies property as metdata identifying
* a ManagedComponent
@@ -28,6 +33,8 @@
* @author Scott.Stark at jboss.org
* @version $Revision$
*/
+ at Target({ElementType.METHOD})
+ at Retention(RetentionPolicy.RUNTIME)
public @interface ManagementComponent
{
String name() default "";
Modified: projects/microcontainer/trunk/managed/src/main/org/jboss/managed/api/annotation/ManagementComponentRef.java
===================================================================
--- projects/microcontainer/trunk/managed/src/main/org/jboss/managed/api/annotation/ManagementComponentRef.java 2007-07-27 04:25:01 UTC (rev 64318)
+++ projects/microcontainer/trunk/managed/src/main/org/jboss/managed/api/annotation/ManagementComponentRef.java 2007-07-27 06:42:39 UTC (rev 64319)
@@ -21,11 +21,19 @@
*/
package org.jboss.managed.api.annotation;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
/**
- * Indicates a property
+ * Indicates a property that references another ManagedComponent
+ *
* @author Scott.Stark at jboss.org
* @version $Revision$
*/
+ at Target({ElementType.METHOD})
+ at Retention(RetentionPolicy.RUNTIME)
public @interface ManagementComponentRef
{
String name() default "";
Modified: projects/microcontainer/trunk/managed/src/main/org/jboss/managed/plugins/ManagedDeploymentImpl.java
===================================================================
--- projects/microcontainer/trunk/managed/src/main/org/jboss/managed/plugins/ManagedDeploymentImpl.java 2007-07-27 04:25:01 UTC (rev 64318)
+++ projects/microcontainer/trunk/managed/src/main/org/jboss/managed/plugins/ManagedDeploymentImpl.java 2007-07-27 06:42:39 UTC (rev 64319)
@@ -34,7 +34,7 @@
import org.jboss.managed.api.ManagedProperty;
/**
- * A simple
+ * A simple ManagedDeployment bean implementation
*
* @author Scott.Stark at jboss.org
* @version $Revision$
@@ -50,7 +50,7 @@
private Map<String, ManagedComponent> components = new HashMap<String, ManagedComponent>();
private ArrayList<ManagedDeployment> children = new ArrayList<ManagedDeployment>();
- ManagedDeploymentImpl(String name, DeploymentPhase phase,
+ public ManagedDeploymentImpl(String name, DeploymentPhase phase,
Map<String, ManagedProperty> properties,
ManagedDeployment parent)
{
Modified: projects/microcontainer/trunk/managed/src/main/org/jboss/managed/plugins/factory/AbstractManagedObjectFactory.java
===================================================================
--- projects/microcontainer/trunk/managed/src/main/org/jboss/managed/plugins/factory/AbstractManagedObjectFactory.java 2007-07-27 04:25:01 UTC (rev 64318)
+++ projects/microcontainer/trunk/managed/src/main/org/jboss/managed/plugins/factory/AbstractManagedObjectFactory.java 2007-07-27 06:42:39 UTC (rev 64319)
@@ -58,9 +58,11 @@
* AbstractManagedObjectFactory.
*
* @author <a href="adrian at jboss.com">Adrian Brock</a>
+ * @author Scott.Stark at jboss.org
* @version $Revision: 1.1 $
*/
-public class AbstractManagedObjectFactory extends ManagedObjectFactory implements ManagedObjectBuilder, ManagedObjectPopulator<Serializable>
+public class AbstractManagedObjectFactory extends ManagedObjectFactory
+ implements ManagedObjectBuilder, ManagedObjectPopulator<Serializable>
{
/** The configuration */
private static final Configuration configuration;
@@ -147,6 +149,7 @@
BeanInfo beanInfo = configuration.getBeanInfo(clazz);
ClassInfo classInfo = beanInfo.getClassInfo();
+ // TODO: should this be skipped if there is no ManagementObject annotation?
ManagementObject managementObject = classInfo.getUnderlyingAnnotation(ManagementObject.class);
String name = ManagementConstants.GENERATED;
@@ -180,9 +183,23 @@
{
Fields fields = new DefaultFieldsImpl();
- String propertyName = propertyInfo.getName();
+ if( propertyInfo instanceof Serializable )
+ {
+ Serializable info = Serializable.class.cast(propertyInfo);
+ fields.setField(Fields.PROPERTY_INFO, info);
+ }
+
+ String propertyName = managementProperty.name();
+ if( propertyName.length() == 0 )
+ propertyName = propertyInfo.getName();
fields.setField(Fields.NAME, propertyName);
+ // This should probably always the the propertyInfo name?
+ String mappedName = managementProperty.mappedName();
+ if( mappedName.length() == 0 )
+ mappedName = propertyInfo.getName();
+ fields.setField(Fields.MAPPED_NAME, mappedName);
+
String description = ManagementConstants.GENERATED;
if (managementProperty != null)
description = managementProperty.description();
More information about the jboss-cvs-commits
mailing list