[jboss-cvs] JBossAS SVN: r85355 - in trunk: connector/src/main/org/jboss/resource/deployers/management and 2 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Mar 5 15:51:29 EST 2009


Author: scott.stark at jboss.org
Date: 2009-03-05 15:51:29 -0500 (Thu, 05 Mar 2009)
New Revision: 85355

Modified:
   trunk/component-matrix/pom.xml
   trunk/connector/src/main/org/jboss/resource/deployers/management/ConnectionFactoryTemplateInfo.java
   trunk/connector/src/main/org/jboss/resource/deployers/management/DsDataSourceTemplateInfo.java
   trunk/profileservice/src/main/org/jboss/profileservice/management/ManagementViewImpl.java
   trunk/profileservice/src/main/org/jboss/profileservice/management/templates/DsXmlDataSourceTemplateInfo.java
   trunk/profileservice/src/main/org/jboss/profileservice/management/templates/JmsDestinationTemplateInfo.java
Log:
JBAS-6219, ensure each deployment template returns a copy of the information


Modified: trunk/component-matrix/pom.xml
===================================================================
--- trunk/component-matrix/pom.xml	2009-03-05 20:22:47 UTC (rev 85354)
+++ trunk/component-matrix/pom.xml	2009-03-05 20:51:29 UTC (rev 85355)
@@ -73,7 +73,7 @@
     <version.org.jboss.jpa>1.0.0-CR1</version.org.jboss.jpa>
     <version.org.jboss.logbridge>1.0.0.CR1</version.org.jboss.logbridge>
     <version.org.jboss.logmanager>1.0.0.CR1</version.org.jboss.logmanager>
-    <version.org.jboss.man>2.1.0.CR2</version.org.jboss.man>
+    <version.org.jboss.man>2.1.0.CR3</version.org.jboss.man>
     <version.org.jboss.mdr>2.0.1.GA</version.org.jboss.mdr>
     <version.org.jboss.metadata>1.0.0.CR16</version.org.jboss.metadata>
     <version.org.jboss.microcontainer>2.0.4.GA</version.org.jboss.microcontainer>

Modified: trunk/connector/src/main/org/jboss/resource/deployers/management/ConnectionFactoryTemplateInfo.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/deployers/management/ConnectionFactoryTemplateInfo.java	2009-03-05 20:22:47 UTC (rev 85354)
+++ trunk/connector/src/main/org/jboss/resource/deployers/management/ConnectionFactoryTemplateInfo.java	2009-03-05 20:51:29 UTC (rev 85355)
@@ -24,6 +24,7 @@
 import java.util.HashSet;
 import java.util.Map;
 
+import org.jboss.managed.api.DeploymentTemplateInfo;
 import org.jboss.managed.api.Fields;
 import org.jboss.managed.plugins.BasicDeploymentTemplateInfo;
 import org.jboss.managed.plugins.DefaultFieldsImpl;
@@ -83,6 +84,21 @@
 
    public void start()
    {
+      populate();
+   }
+
+   @Override
+   public ConnectionFactoryTemplateInfo copy()
+   {
+      ConnectionFactoryTemplateInfo copy = new ConnectionFactoryTemplateInfo(getName(), getDescription(),
+            attachmentName, dsTypeAttachmentName);
+      copy.setPropertyNameMappings(propertyNameMappings);
+      copy(copy);
+      copy.populate();
+      return copy;
+   }
+   protected void populate()
+   {
       ManagedObjectImpl mo = new ManagedObjectImpl(attachmentName);
       // The jndi name field info
       DefaultFieldsImpl f0 = new DefaultFieldsImpl();

Modified: trunk/connector/src/main/org/jboss/resource/deployers/management/DsDataSourceTemplateInfo.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/deployers/management/DsDataSourceTemplateInfo.java	2009-03-05 20:22:47 UTC (rev 85354)
+++ trunk/connector/src/main/org/jboss/resource/deployers/management/DsDataSourceTemplateInfo.java	2009-03-05 20:51:29 UTC (rev 85355)
@@ -30,6 +30,7 @@
 import java.lang.reflect.UndeclaredThrowableException;
 
 import org.jboss.annotation.factory.AnnotationProxy;
+import org.jboss.managed.api.DeploymentTemplateInfo;
 import org.jboss.managed.api.Fields;
 import org.jboss.managed.api.ManagedProperty;
 import org.jboss.managed.api.annotation.ManagementObjectID;
@@ -70,7 +71,6 @@
    public DsDataSourceTemplateInfo(String arg0, String arg1, Map<String, ManagedProperty> arg2)
    {
       super(arg0, arg1, arg2);
-      // TODO Auto-generated constructor stub
    }
 
    public DsDataSourceTemplateInfo(String name, String description, String datasourceType)
@@ -101,31 +101,21 @@
 
    public void start()
    {
-/*
-      // The type of the datasource
-      ManagedObjectImpl mo2 = new ManagedObjectImpl(ManagedConnectionFactoryDeploymentGroup.class.getName());
-      DefaultFieldsImpl dsTypeField = new DefaultFieldsImpl();
-      setFieldName("datasource-type", dsTypeField);
-      dsTypeField.setDescription("The type of the DataSource");
-      dsTypeField.setMandatory(true);
-      dsTypeField.setValue("local-tx-datasource");
-      HashSet<MetaValue> values = new HashSet<MetaValue>();
-      values.add(SimpleValueSupport.wrap("local-tx-datasource"));
-      values.add(SimpleValueSupport.wrap("no-tx-datasource"));
-      values.add(SimpleValueSupport.wrap("xa-datasource"));
-      values.add(SimpleValueSupport.wrap("no-tx-connection-factory"));
-      values.add(SimpleValueSupport.wrap("tx-connection-factory"));
-      dsTypeField.setLegalValues(values);
-      dsTypeField.setMetaType(SimpleMetaType.STRING);
-      ManagedPropertyImpl dsTypeProp = new ManagedPropertyImpl(mo2, dsTypeField);
-      super.addProperty(dsTypeProp);
+      populate();
+   }
 
-      if(this.dsType != null)
-         dsTypeField.setValue(this.dsType);
-      else
-         this.dsType = (String)dsTypeField.getValue();
-*/
+   @Override
+   public DsDataSourceTemplateInfo copy()
+   {
+      DsDataSourceTemplateInfo copy = new DsDataSourceTemplateInfo(getName(), getDescription(), dsType);
+      copy.setPropertyNameMappings(propertyNameMappings);
+      super.copy(copy);
+      copy.populate();
+      return copy;
+   }
 
+   private void populate()
+   {
       // DataSource
       if("local-tx-datasource".equals(dsType))
          createLocalTxDsTemplate();

Modified: trunk/profileservice/src/main/org/jboss/profileservice/management/ManagementViewImpl.java
===================================================================
--- trunk/profileservice/src/main/org/jboss/profileservice/management/ManagementViewImpl.java	2009-03-05 20:22:47 UTC (rev 85354)
+++ trunk/profileservice/src/main/org/jboss/profileservice/management/ManagementViewImpl.java	2009-03-05 20:51:29 UTC (rev 85355)
@@ -186,6 +186,11 @@
       }
       this.forceReload = false;
       
+      // Clear any thread interrupt
+      boolean wasInterrupted = Thread.interrupted();
+      if(wasInterrupted)
+         log.debug("Cleared interrupted state of calling thread");
+
       // Cleanup
       release();
 
@@ -245,6 +250,12 @@
       {
          log.warn("Failed to process ManagedDeployments for the platform beans");
       }
+
+      if(wasInterrupted)
+      {
+         Thread.currentThread().interrupt();
+         log.debug("Restored interrupted state of calling thread");
+      }
    }
    
    public void reload()
@@ -454,7 +465,7 @@
       // Map any existing ManagedComponent types
       for(ManagedComponent comp : md.getComponents().values())
       {
-         log.debug("Processing ManagementComponent: "+comp);
+         log.debug("Updating ManagementComponent: "+comp);
          ComponentType type = comp.getType();
          Set<ManagedComponent> typeComps = compByCompType.get(type);
          if (typeComps == null)
@@ -472,7 +483,7 @@
          ComponentType type = new ComponentType(mc.type(), mc.subtype());
          ManagedComponentImpl comp = new ManagedComponentImpl(type, md, mo);
          md.addComponent(mo.getName(), comp);
-         log.debug("Processing ManagementComponent: "+comp);
+         log.debug("Processing ManagementComponent("+mo.getName()+"): "+comp);
          Set<ManagedComponent> typeComps = compByCompType.get(type);
          if (typeComps == null)
          {
@@ -593,7 +604,7 @@
    protected RunState updateRunState(ManagedObject runtimeMO, ManagedComponent comp)
    {
       RunState state = comp.getRunState();
-      if (state == RunState.UNKNOWN)
+      if (state == RunState.UNKNOWN && dispatcher != null)
       {
          //TODO, update RuntimeComponentDispatcher
          KernelBusRuntimeComponentDispatcher xdispatcher = (KernelBusRuntimeComponentDispatcher) dispatcher;
@@ -658,6 +669,7 @@
    public void setProfileService(ProfileService ps)
    {
       this.ps = ps;
+      log.debug("setProfileService: "+ps);
    }
 
    public InvokerLocator getLocator()
@@ -688,6 +700,7 @@
    public void setMainDeployer(MainDeployer mainDeployer)
    {
       this.mainDeployer = mainDeployer;
+      log.debug("setMainDeployer: "+mainDeployer);
    }
 
    public MetaValueFactory getMetaValueFactory()
@@ -946,7 +959,9 @@
          throw new IllegalStateException(msg);
       }
 
+      // Make sure to return a copy to avoid call by reference uses modifying the template values
       DeploymentTemplateInfo info = template.getInfo();
+      info = info.copy();
       log.debug("getTemplate, "+info);
       return info;
    }
@@ -1359,6 +1374,7 @@
 
    public class ManagedOperationDelegate implements ManagedOperation
    {
+      private static final long serialVersionUID = -775240509110032859L;
       private ManagedOperation delegate;
       private ManagedObject managedObject;
 

Modified: trunk/profileservice/src/main/org/jboss/profileservice/management/templates/DsXmlDataSourceTemplateInfo.java
===================================================================
--- trunk/profileservice/src/main/org/jboss/profileservice/management/templates/DsXmlDataSourceTemplateInfo.java	2009-03-05 20:22:47 UTC (rev 85354)
+++ trunk/profileservice/src/main/org/jboss/profileservice/management/templates/DsXmlDataSourceTemplateInfo.java	2009-03-05 20:51:29 UTC (rev 85355)
@@ -72,6 +72,11 @@
 
    public void start()
    {
+      populate();
+   }
+
+   protected void populate()
+   {
       ManagedObjectImpl mo = new ManagedObjectImpl(attachmentName);
       // The jndi name field info
       DefaultFieldsImpl f0 = new DefaultFieldsImpl();

Modified: trunk/profileservice/src/main/org/jboss/profileservice/management/templates/JmsDestinationTemplateInfo.java
===================================================================
--- trunk/profileservice/src/main/org/jboss/profileservice/management/templates/JmsDestinationTemplateInfo.java	2009-03-05 20:22:47 UTC (rev 85354)
+++ trunk/profileservice/src/main/org/jboss/profileservice/management/templates/JmsDestinationTemplateInfo.java	2009-03-05 20:51:29 UTC (rev 85355)
@@ -62,6 +62,20 @@
 
    public void start()
    {
+      populate();
+   }
+
+   @Override
+   public JmsDestinationTemplateInfo copy()
+   {
+      JmsDestinationTemplateInfo copy = new JmsDestinationTemplateInfo(getName(), getDescription(), destinationType);
+      super.copy(copy);
+      copy.populate();
+      return copy;
+   }
+
+   private void populate()
+   {
       ManagedObjectImpl mo;
       if("queue".equals(destinationType))
          mo = new ManagedObjectImpl("org.jboss.jms.server.destination.QueueServiceMO");




More information about the jboss-cvs-commits mailing list