[jboss-cvs] JBossAS SVN: r98103 - in projects/kernel/trunk: dependency/src/test/java/org/jboss/test/dependency/controller/test and 9 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Dec 21 16:40:23 EST 2009


Author: kabir.khan at jboss.com
Date: 2009-12-21 16:40:22 -0500 (Mon, 21 Dec 2009)
New Revision: 98103

Added:
   projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ControllerStateTestCase.java
Modified:
   projects/kernel/trunk/dependency/src/main/java/org/jboss/dependency/spi/ControllerState.java
   projects/kernel/trunk/dependency/src/main/java/org/jboss/dependency/spi/ControllerStateValueAdapter.java
   projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ControllerReportingTestCase.java
   projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ControllerStateModelTestCase.java
   projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ControllerTestSuite.java
   projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/InitialStateTestCase.java
   projects/kernel/trunk/jmx-mc-int/src/main/java/org/jboss/system/metadata/ServiceMetaDataParser.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/api/model/QualifierContent.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/spi/builder/BeanMetaDataBuilder.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/DemandsAnnotationPlugin.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/ExternalInstallationAnnotationPlugin.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/InstallCallbackAnnotationPlugin.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/InstallFieldCallbackAnnotationPlugin.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/InstallMethodParameterAnnotationPlugin.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/UninstallCallbackAnnotationPlugin.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/UninstallFieldCallbackAnnotationPlugin.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/UninstallMethodParameterAnnotationPlugin.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/ValueUtil.java
   projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/dependency/ClassAndQualifierKey.java
   projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/controller/test/StateAfterInstalledTestCase.java
   projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/support/SuperDemandAnnotationPlugin.java
   projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/support/SuperDemandCreator.java
   projects/kernel/trunk/spring-int/src/main/java/org/jboss/kernel/plugins/deployment/xml/DemandHandler.java
   projects/kernel/trunk/spring-int/src/main/java/org/jboss/kernel/plugins/deployment/xml/DependencyHandler.java
   projects/kernel/trunk/spring-int/src/main/java/org/jboss/kernel/plugins/deployment/xml/FactoryHandler.java
   projects/kernel/trunk/spring-int/src/main/java/org/jboss/kernel/plugins/deployment/xml/ValueFactoryHandler.java
   projects/kernel/trunk/weld-int/src/main/java/org/jboss/kernel/weld/plugins/dependency/WeldPostConstructAction.java
   projects/kernel/trunk/weld-int/src/main/java/org/jboss/kernel/weld/plugins/dependency/WeldPreDestroyAction.java
Log:
[JBKERNEL-71] Make ControllerState constructor private and use static factories to get the instances, in order to limit the number of ControllerState instances

Modified: projects/kernel/trunk/dependency/src/main/java/org/jboss/dependency/spi/ControllerState.java
===================================================================
--- projects/kernel/trunk/dependency/src/main/java/org/jboss/dependency/spi/ControllerState.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/dependency/src/main/java/org/jboss/dependency/spi/ControllerState.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -23,8 +23,7 @@
 
 import java.io.ObjectStreamException;
 import java.io.Serializable;
-import java.util.HashMap;
-import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
 
 import javax.xml.bind.annotation.XmlType;
 
@@ -78,7 +77,7 @@
    /** The state string */
    protected final String stateString;
 
-   private static Map<String, ControllerState> values = new HashMap<String, ControllerState>();
+   private static ConcurrentHashMap<String, ControllerState> values = new ConcurrentHashMap<String, ControllerState>();
 
    static
    {
@@ -98,7 +97,7 @@
     * 
     * @param stateString the string representation
     */
-   public ControllerState(String stateString)
+   private ControllerState(String stateString)
    {
       if (stateString == null)
          throw new IllegalArgumentException("Null state string");
@@ -106,6 +105,30 @@
    }
    
    /**
+    * Get an existing state instance
+    * 
+    * @param the name of the state
+    * @return the state
+    * @throws IllegalArgumentException if no state exists with that name
+    */
+   public static ControllerState getInstance(String stateString)
+   {
+      return getOrCreateState(stateString, false);
+   }
+   
+   /**
+    * Create and register a new state instance. If a state instance already exists with the given name
+    * return that instance
+    * 
+    * @param the name of the state
+    * @return the state
+    */
+   public static ControllerState newState(String stateString)
+   {
+      return getOrCreateState(stateString, true);
+   }
+   
+   /**
     * Get the state string
     * 
     * @return the state string
@@ -147,4 +170,25 @@
    {
       return values.get(stateString);   
    }
+
+   private static ControllerState getOrCreateState(String stateString, boolean create)
+   {
+      if (stateString == null)
+         throw new IllegalArgumentException("Null state string");
+      if (stateString.trim().length() == 0)
+         throw new IllegalArgumentException("Empty state string");
+      
+      ControllerState state = values.get(stateString);
+      if (state == null)
+      {
+         if (!create)
+            throw new IllegalArgumentException("An invalid state was used: " + stateString);
+         
+         state = new ControllerState(stateString);
+         ControllerState old = values.putIfAbsent(stateString, state);
+         if (old != null)
+            state = old;
+      }
+      return state;
+   }
 }

Modified: projects/kernel/trunk/dependency/src/main/java/org/jboss/dependency/spi/ControllerStateValueAdapter.java
===================================================================
--- projects/kernel/trunk/dependency/src/main/java/org/jboss/dependency/spi/ControllerStateValueAdapter.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/dependency/src/main/java/org/jboss/dependency/spi/ControllerStateValueAdapter.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -36,6 +36,6 @@
    @SuppressWarnings("unchecked")
    public Object cast(Object o, Class c)
    {
-      return new ControllerState((String)o);
+      return ControllerState.getInstance((String)o);
    }
 }

Modified: projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ControllerReportingTestCase.java
===================================================================
--- projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ControllerReportingTestCase.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ControllerReportingTestCase.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -37,7 +37,7 @@
  */
 public class ControllerReportingTestCase extends AbstractDependencyTest
 {
-   ControllerState postInstall = new ControllerState("POST_INSTALL");
+   ControllerState postInstall = ControllerState.newState("POST_INSTALL");
    
    ControllerState[] states = new ControllerState[]{ControllerState.NOT_INSTALLED, 
       ControllerState.PRE_INSTALL,

Modified: projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ControllerStateModelTestCase.java
===================================================================
--- projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ControllerStateModelTestCase.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ControllerStateModelTestCase.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -21,9 +21,6 @@
 */
 package org.jboss.test.dependency.controller.test;
 
-import java.util.HashMap;
-import java.util.Map;
-
 import junit.framework.Test;
 
 import org.jboss.dependency.plugins.AbstractControllerStateModel;
@@ -226,12 +223,12 @@
       ControllerState[] states = new ControllerState[NUM_STATES];
       for (int i = 0 ; i < NUM_STATES ; i++)
       {
-         states[i] = new ControllerState("State" + i);
+         states[i] = ControllerState.newState("State" + i);
          model.addState(states[i], null);
       }
 
       //Just make sure things were added
-      assertEquals(new ControllerState("State" + (NUM_STATES - 2)), model.getPreviousState(new ControllerState("State" + (NUM_STATES -1))));
+      assertEquals(ControllerState.getInstance("State" + (NUM_STATES - 2)), model.getPreviousState(ControllerState.getInstance("State" + (NUM_STATES -1))));
       
       ControllerState[] input = new ControllerState[ITERATIONS]; 
       for (int i = 0 ; i < ITERATIONS ; i++)
@@ -273,7 +270,7 @@
       {
          public ControllerState getState(String state)
          {
-            return new ControllerState(state);
+            return ControllerState.getInstance(state);
          }
 
          @Override
@@ -281,31 +278,7 @@
          {
             return "New States";
          }
-      };
-      
-      @SuppressWarnings("unused")      
-      StateFactory CACHED_STATE = new StateFactory()
-      {
-         private Map<String, ControllerState> cachedStates = new HashMap<String, ControllerState>();
-         
-         public ControllerState getState(String state)
-         {
-            ControllerState cached = cachedStates.get(state);
-            if (cached == null)
-            {
-               cached = new ControllerState(state);
-               cachedStates.put(state, cached);
-            }
-            
-            return cached;
-         }
-         
-         @Override
-         public String toString()
-         {
-            return "Cached states";
-         }
-      };
+      };      
    }
    
    private interface ControllerStateModelFactory

Added: projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ControllerStateTestCase.java
===================================================================
--- projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ControllerStateTestCase.java	                        (rev 0)
+++ projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ControllerStateTestCase.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -0,0 +1,77 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.dependency.controller.test;
+
+import junit.framework.Test;
+
+import org.jboss.dependency.plugins.AbstractControllerStateModel;
+import org.jboss.dependency.plugins.ListControllerStateModel;
+import org.jboss.dependency.plugins.MapControllerStateModel;
+import org.jboss.dependency.spi.ControllerState;
+
+/**
+ * Test to try out a new ControllerStateModel implementation 
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 37459 $
+ */
+public class ControllerStateTestCase extends AbstractDependencyTest
+{
+   public static Test suite()
+   {
+      return suite(ControllerStateTestCase.class);
+   }
+   
+   public ControllerStateTestCase(String name)
+   {
+      super(name);
+   }
+
+   public void testExistingControllerState()
+   {
+      ControllerState state = ControllerState.getInstance(ControllerState.CONFIGURED.getStateString());
+   }
+   
+   public void testNonExistingControllerStata()
+   {
+      try
+      {
+         ControllerState.getInstance("Not there");
+         fail("Should have had an error");
+      }
+      catch (IllegalArgumentException expected)
+      {
+      }
+   }
+   
+   public void testNewControllerState()
+   {
+      ControllerState created = ControllerState.newState("Kabir");
+      assertNotNull(created);
+      assertEquals("Kabir", created.getStateString());
+
+      ControllerState existing = ControllerState.newState("Kabir");
+      assertSame(created, existing);
+      
+      existing = ControllerState.getInstance("Kabir");
+   }
+}

Modified: projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ControllerTestSuite.java
===================================================================
--- projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ControllerTestSuite.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ControllerTestSuite.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -73,6 +73,7 @@
       suite.addTest(ContextTrackerTestCase.suite());
       suite.addTest(ContextRegistryTestCase.suite());
       suite.addTest(ControllerAsRnQTestCase.suite());
+      suite.addTest(ControllerStateTestCase.suite());
 
       return suite;
    }

Modified: projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/InitialStateTestCase.java
===================================================================
--- projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/InitialStateTestCase.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/InitialStateTestCase.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -40,7 +40,7 @@
  */
 public class InitialStateTestCase extends AbstractDependencyTest
 {
-   final static ControllerState INITIAL_STATE = new ControllerState("The very very first");
+   final static ControllerState INITIAL_STATE = ControllerState.newState("The very very first");
 
    public static Test suite()
    {

Modified: projects/kernel/trunk/jmx-mc-int/src/main/java/org/jboss/system/metadata/ServiceMetaDataParser.java
===================================================================
--- projects/kernel/trunk/jmx-mc-int/src/main/java/org/jboss/system/metadata/ServiceMetaDataParser.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/jmx-mc-int/src/main/java/org/jboss/system/metadata/ServiceMetaDataParser.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -553,7 +553,7 @@
       ControllerState requiredState = ControllerState.INSTALLED;
       attr = el.getAttributeNode("state");
       if (attr != null)
-         requiredState = new ControllerState(attr.getValue());
+         requiredState = ControllerState.getInstance(attr.getValue());
       value = new ServiceInjectionValueMetaData(dependency, property, requiredState);
       return value;
    }
@@ -568,7 +568,7 @@
       ControllerState requiredState = ControllerState.INSTALLED;
       Attr attr = el.getAttributeNode("state");
       if (attr != null)
-         requiredState = new ControllerState(attr.getValue());
+         requiredState = ControllerState.getInstance(attr.getValue());
       
       List<ServiceValueFactoryParameterMetaData> parameters = new ArrayList<ServiceValueFactoryParameterMetaData>();
       attr = el.getAttributeNode("parameter");

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/api/model/QualifierContent.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/api/model/QualifierContent.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/api/model/QualifierContent.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -42,6 +42,8 @@
 @JBossXmlAdaptedType(valueAdapter=QualifierContentValueAdapter.class)
 public class QualifierContent extends JBossObject implements Serializable
 {
+   private static final long serialVersionUID = 1L;
+
    /** The qualifier is a simple string */
    public static QualifierContent STRING = new QualifierContent("STRING");
    

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/spi/builder/BeanMetaDataBuilder.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/spi/builder/BeanMetaDataBuilder.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/beans/metadata/spi/builder/BeanMetaDataBuilder.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -852,7 +852,7 @@
    {
       ControllerState whenRequiredState = null;
       if (whenRequired != null)
-         whenRequiredState = new ControllerState(whenRequired);
+         whenRequiredState = ControllerState.getInstance(whenRequired);
       return addDemand(demand, whenRequiredState, transformer);
    }
 

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/DemandsAnnotationPlugin.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/DemandsAnnotationPlugin.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/DemandsAnnotationPlugin.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -63,7 +63,7 @@
       for(Demand demand : annotation.value())
       {
          AbstractDemandMetaData admd = new AbstractDemandMetaData(demand.value());
-         admd.setWhenRequired(new ControllerState(demand.whenRequired()));
+         admd.setWhenRequired(ControllerState.getInstance(demand.whenRequired()));
          if (isAttributePresent(demand.transformer()))
             admd.setTransformer(demand.transformer());
          

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/ExternalInstallationAnnotationPlugin.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/ExternalInstallationAnnotationPlugin.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/ExternalInstallationAnnotationPlugin.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -94,9 +94,9 @@
       installMetaData.setBean(install.bean());
       installMetaData.setMethodName(install.method());
       if (isAttributePresent(install.whenRequired()))
-         installMetaData.setState(new ControllerState(install.whenRequired()));
+         installMetaData.setState(ControllerState.getInstance(install.whenRequired()));
       if (isAttributePresent(install.dependantState()))
-         installMetaData.setDependentState(new ControllerState(install.dependantState()));
+         installMetaData.setDependentState(ControllerState.getInstance(install.dependantState()));
       for (Value value : install.parameters())
       {
          List<ParameterMetaData> parameters = installMetaData.getParameters();

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/InstallCallbackAnnotationPlugin.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/InstallCallbackAnnotationPlugin.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/InstallCallbackAnnotationPlugin.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -57,8 +57,8 @@
    protected AbstractCallbackMetaData createCallback(T info, Install annotation)
    {
       InstallCallbackMetaData callback = new InstallCallbackMetaData();
-      callback.setState(new ControllerState(annotation.whenRequired()));
-      callback.setDependentState(new ControllerState(annotation.dependentState()));
+      callback.setState(ControllerState.getInstance(annotation.whenRequired()));
+      callback.setDependentState(ControllerState.getInstance(annotation.dependentState()));
       if (isAttributePresent(annotation.cardinality()))
          callback.setCardinality(Cardinality.fromString(annotation.cardinality()));
       applyInfo(callback, info);

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/InstallFieldCallbackAnnotationPlugin.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/InstallFieldCallbackAnnotationPlugin.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/InstallFieldCallbackAnnotationPlugin.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -74,8 +74,8 @@
    protected AbstractCallbackMetaData createCallback(FieldInfo info, Install annotation)
    {
       InstallCallbackMetaData callback = new InstallCallbackMetaData();
-      callback.setState(new ControllerState(annotation.whenRequired()));
-      callback.setDependentState(new ControllerState(annotation.dependentState()));
+      callback.setState(ControllerState.getInstance(annotation.whenRequired()));
+      callback.setDependentState(ControllerState.getInstance(annotation.dependentState()));
       if (isAttributePresent(annotation.cardinality()))
          callback.setCardinality(Cardinality.fromString(annotation.cardinality()));
       applyInfo(callback, info);

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/InstallMethodParameterAnnotationPlugin.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/InstallMethodParameterAnnotationPlugin.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/InstallMethodParameterAnnotationPlugin.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -56,9 +56,9 @@
       AbstractInstallMetaData install = new AbstractInstallMetaData();
       install.setMethodName(info.getName());
       if (isAttributePresent(annotation.whenRequired()))
-         install.setState(new ControllerState(annotation.whenRequired()));
+         install.setState(ControllerState.getInstance(annotation.whenRequired()));
       if (isAttributePresent(annotation.dependantState()))
-         install.setDependentState(new ControllerState(annotation.dependantState()));
+         install.setDependentState(ControllerState.getInstance(annotation.dependantState()));
       return install;
    }
 

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/UninstallCallbackAnnotationPlugin.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/UninstallCallbackAnnotationPlugin.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/UninstallCallbackAnnotationPlugin.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -57,8 +57,8 @@
    protected AbstractCallbackMetaData createCallback(T info, Uninstall annotation)
    {
       UninstallCallbackMetaData callback = new UninstallCallbackMetaData();
-      callback.setState(new ControllerState(annotation.whenRequired()));
-      callback.setDependentState(new ControllerState(annotation.dependentState()));
+      callback.setState(ControllerState.getInstance(annotation.whenRequired()));
+      callback.setDependentState(ControllerState.getInstance(annotation.dependentState()));
       if (isAttributePresent(annotation.cardinality()))
          callback.setCardinality(Cardinality.fromString(annotation.cardinality()));
       applyInfo(callback, info);

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/UninstallFieldCallbackAnnotationPlugin.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/UninstallFieldCallbackAnnotationPlugin.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/UninstallFieldCallbackAnnotationPlugin.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -74,8 +74,8 @@
    protected AbstractCallbackMetaData createCallback(FieldInfo info, Uninstall annotation)
    {
       UninstallCallbackMetaData callback = new UninstallCallbackMetaData();
-      callback.setState(new ControllerState(annotation.whenRequired()));
-      callback.setDependentState(new ControllerState(annotation.dependentState()));
+      callback.setState(ControllerState.getInstance(annotation.whenRequired()));
+      callback.setDependentState(ControllerState.getInstance(annotation.dependentState()));
       if (isAttributePresent(annotation.cardinality()))
          callback.setCardinality(Cardinality.fromString(annotation.cardinality()));
       applyInfo(callback, info);

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/UninstallMethodParameterAnnotationPlugin.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/UninstallMethodParameterAnnotationPlugin.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/UninstallMethodParameterAnnotationPlugin.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -56,9 +56,9 @@
       AbstractInstallMetaData uninstall = new AbstractInstallMetaData();
       uninstall.setMethodName(info.getName());
       if (isAttributePresent(annotation.whenRequired()))
-         uninstall.setState(new ControllerState(annotation.whenRequired()));
+         uninstall.setState(ControllerState.getInstance(annotation.whenRequired()));
       if (isAttributePresent(annotation.dependantState()))
-         uninstall.setDependentState(new ControllerState(annotation.dependantState()));
+         uninstall.setDependentState(ControllerState.getInstance(annotation.dependantState()));
       return uninstall;
    }
 

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/ValueUtil.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/ValueUtil.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/annotations/ValueUtil.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -204,9 +204,9 @@
       if (isAttributePresent(annotation.property()))
          injection.setProperty(annotation.property());
       if (isAttributePresent(annotation.dependentState()))
-         injection.setDependentState(new ControllerState(annotation.dependentState()));
+         injection.setDependentState(ControllerState.getInstance(annotation.dependentState()));
       if (isAttributePresent(annotation.whenRequired()))
-         injection.setWhenRequiredState(new ControllerState(annotation.whenRequired()));
+         injection.setWhenRequiredState(ControllerState.getInstance(annotation.whenRequired()));
       if (isAttributePresent(annotation.search()))
          injection.setSearch(org.jboss.dependency.plugins.graph.Search.getInstance(annotation.search()));
       injection.setIgnoreBeanQualifiers(annotation.ignoreBeanQualifiers());
@@ -244,8 +244,8 @@
          }
       }
       factory.setParameters(parameters);
-      factory.setDependentState(new ControllerState(annotation.dependantState()));
-      factory.setWhenRequiredState(new ControllerState(annotation.whenRequiredState()));
+      factory.setDependentState(ControllerState.getInstance(annotation.dependantState()));
+      factory.setWhenRequiredState(ControllerState.getInstance(annotation.whenRequiredState()));
       return factory;
    }
 
@@ -262,7 +262,7 @@
       SearchInfo type = org.jboss.dependency.plugins.graph.Search.getInstance(searchType);
       ControllerState state = null;
       if (isAttributePresent(annotation.dependentState()))
-         state = new ControllerState(annotation.dependentState());
+         state = ControllerState.getInstance(annotation.dependentState());
       String property = null;
       if (isAttributePresent(annotation.property()))
          property = annotation.property();

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/dependency/ClassAndQualifierKey.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/dependency/ClassAndQualifierKey.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/dependency/ClassAndQualifierKey.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -24,9 +24,7 @@
 import java.lang.annotation.Annotation;
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.HashMap;
 import java.util.HashSet;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
 
@@ -36,7 +34,6 @@
 import org.jboss.dependency.spi.ControllerState;
 import org.jboss.kernel.spi.dependency.KernelController;
 import org.jboss.kernel.spi.dependency.KernelControllerContext;
-import org.jboss.kernel.spi.qualifier.Matcher;
 import org.jboss.kernel.spi.qualifier.QualifierMatchers;
 import org.jboss.util.JBossObject;
 import org.jboss.util.JBossStringBuilder;

Modified: projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/controller/test/StateAfterInstalledTestCase.java
===================================================================
--- projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/controller/test/StateAfterInstalledTestCase.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/controller/test/StateAfterInstalledTestCase.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -52,7 +52,7 @@
    {
       BeanMetaDataBuilder builder = BeanMetaDataBuilder.createBuilder("Test", Object.class.getName());
       
-      ControllerState lastState = new ControllerState("Last State");
+      ControllerState lastState = ControllerState.newState("Last State");
       KernelControllerContext context = deploy(builder.getBeanMetaData());
       KernelController controller = null;
       try

Modified: projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/support/SuperDemandAnnotationPlugin.java
===================================================================
--- projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/support/SuperDemandAnnotationPlugin.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/support/SuperDemandAnnotationPlugin.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -46,7 +46,7 @@
    protected List<? extends MetaDataVisitorNode> internalApplyAnnotation(ClassInfo info, MetaData retrieval, SuperDemand annotation, KernelControllerContext context) throws Throwable
    {
       DependencyInfo di = context.getDependencyInfo();
-      DependencyItem item = new AbstractDependencyItem(context.getName(), annotation.demand(), new ControllerState(annotation.whenRequired()), new ControllerState(annotation.dependentState()));
+      DependencyItem item = new AbstractDependencyItem(context.getName(), annotation.demand(), ControllerState.getInstance(annotation.whenRequired()), ControllerState.getInstance(annotation.dependentState()));
       di.addIDependOn(item);
       return null;
    }

Modified: projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/support/SuperDemandCreator.java
===================================================================
--- projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/support/SuperDemandCreator.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/deployment/support/SuperDemandCreator.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -51,7 +51,7 @@
          throw new IllegalArgumentException("Cannot find context: " + name);
       
       DependencyInfo di = context.getDependencyInfo();
-      DependencyItem item = new AbstractDependencyItem(context.getName(), demand, new ControllerState(whenRequired), new ControllerState(dependentState));
+      DependencyItem item = new AbstractDependencyItem(context.getName(), demand, ControllerState.getInstance(whenRequired), ControllerState.getInstance(dependentState));
       di.addIDependOn(item);
    }
 }
\ No newline at end of file

Modified: projects/kernel/trunk/spring-int/src/main/java/org/jboss/kernel/plugins/deployment/xml/DemandHandler.java
===================================================================
--- projects/kernel/trunk/spring-int/src/main/java/org/jboss/kernel/plugins/deployment/xml/DemandHandler.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/spring-int/src/main/java/org/jboss/kernel/plugins/deployment/xml/DemandHandler.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -53,7 +53,7 @@
       {
          String localName = attrs.getLocalName(i);
          if ("state".equals(localName))
-            demand.setWhenRequired(new ControllerState(attrs.getValue(i)));
+            demand.setWhenRequired(ControllerState.getInstance(attrs.getValue(i)));
          else if ("transformer".equals(localName))
             demand.setTransformer(attrs.getValue(i));
       }

Modified: projects/kernel/trunk/spring-int/src/main/java/org/jboss/kernel/plugins/deployment/xml/DependencyHandler.java
===================================================================
--- projects/kernel/trunk/spring-int/src/main/java/org/jboss/kernel/plugins/deployment/xml/DependencyHandler.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/spring-int/src/main/java/org/jboss/kernel/plugins/deployment/xml/DependencyHandler.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -57,9 +57,9 @@
          else if ("property".equals(localName))
             dependency.setProperty(attrs.getValue(i));
          else if ("state".equals(localName))
-            dependency.setDependentState(new ControllerState(attrs.getValue(i)));
+            dependency.setDependentState(ControllerState.getInstance(attrs.getValue(i)));
          else if ("whenRequired".equals(localName))
-            dependency.setWhenRequiredState(new ControllerState(attrs.getValue(i)));
+            dependency.setWhenRequiredState(ControllerState.getInstance(attrs.getValue(i)));
       }
    }
    

Modified: projects/kernel/trunk/spring-int/src/main/java/org/jboss/kernel/plugins/deployment/xml/FactoryHandler.java
===================================================================
--- projects/kernel/trunk/spring-int/src/main/java/org/jboss/kernel/plugins/deployment/xml/FactoryHandler.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/spring-int/src/main/java/org/jboss/kernel/plugins/deployment/xml/FactoryHandler.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -59,9 +59,9 @@
          else if ("property".equals(localName))
             dependency.setProperty(attrs.getValue(i));
          else if ("state".equals(localName))
-            dependency.setDependentState(new ControllerState(attrs.getValue(i)));
+            dependency.setDependentState(ControllerState.getInstance(attrs.getValue(i)));
          else if ("whenRequired".equals(localName))
-            dependency.setWhenRequiredState(new ControllerState(attrs.getValue(i)));
+            dependency.setWhenRequiredState(ControllerState.getInstance(attrs.getValue(i)));
       }
    }
 

Modified: projects/kernel/trunk/spring-int/src/main/java/org/jboss/kernel/plugins/deployment/xml/ValueFactoryHandler.java
===================================================================
--- projects/kernel/trunk/spring-int/src/main/java/org/jboss/kernel/plugins/deployment/xml/ValueFactoryHandler.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/spring-int/src/main/java/org/jboss/kernel/plugins/deployment/xml/ValueFactoryHandler.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -60,9 +60,9 @@
          else if ("method".equals(localName))
             valueFactory.setMethod(attrs.getValue(i));
          else if ("state".equals(localName))
-            valueFactory.setDependentState(new ControllerState(attrs.getValue(i)));
+            valueFactory.setDependentState(ControllerState.getInstance(attrs.getValue(i)));
          else if ("whenRequired".equals(localName))
-            valueFactory.setWhenRequiredState(new ControllerState(attrs.getValue(i)));
+            valueFactory.setWhenRequiredState(ControllerState.getInstance(attrs.getValue(i)));
          else if ("parameter".equals(localName))
             valueFactory.setParameter(attrs.getValue(i));
          else if ("default".equals(localName))

Modified: projects/kernel/trunk/weld-int/src/main/java/org/jboss/kernel/weld/plugins/dependency/WeldPostConstructAction.java
===================================================================
--- projects/kernel/trunk/weld-int/src/main/java/org/jboss/kernel/weld/plugins/dependency/WeldPostConstructAction.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/weld-int/src/main/java/org/jboss/kernel/weld/plugins/dependency/WeldPostConstructAction.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -33,7 +33,7 @@
  */
 public class WeldPostConstructAction extends InstallsAwareAction
 {
-   final static ControllerState STATE = new ControllerState("POST_CONSTRUCT");
+   final static ControllerState STATE = ControllerState.newState("POST_CONSTRUCT");
    
    @Override
    protected ControllerState getState()

Modified: projects/kernel/trunk/weld-int/src/main/java/org/jboss/kernel/weld/plugins/dependency/WeldPreDestroyAction.java
===================================================================
--- projects/kernel/trunk/weld-int/src/main/java/org/jboss/kernel/weld/plugins/dependency/WeldPreDestroyAction.java	2009-12-21 21:20:28 UTC (rev 98102)
+++ projects/kernel/trunk/weld-int/src/main/java/org/jboss/kernel/weld/plugins/dependency/WeldPreDestroyAction.java	2009-12-21 21:40:22 UTC (rev 98103)
@@ -33,7 +33,7 @@
  */
 public class WeldPreDestroyAction extends InstallsAwareAction
 {
-   final static ControllerState STATE = new ControllerState("PRE_DESTROY");
+   final static ControllerState STATE = ControllerState.newState("PRE_DESTROY");
    
    @Override
    protected ControllerState getState()




More information about the jboss-cvs-commits mailing list