[jboss-cvs] JBossAS SVN: r70559 - in projects/microcontainer/trunk: dependency/src/main/org/jboss/dependency/spi and 20 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Mar 7 12:43:07 EST 2008


Author: alesj
Date: 2008-03-07 12:43:07 -0500 (Fri, 07 Mar 2008)
New Revision: 70559

Added:
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/AutowireType.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/AutowireTypeValueAdapter.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/FromContext.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/FromContextDelegate.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/FromContextValueAdapter.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/InjectOption.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/InjectionOptionValueAdapter.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/MicrocontainerConstants.java
Removed:
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/annotations/FromContext.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/annotations/InjectOption.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/annotations/InjectType.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/AutowireTypeValueAdapter.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/FromContext.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/FromContextValueAdapter.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/InjectionOption.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/InjectionOptionValueAdapter.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/spi/AutowireType.java
Modified:
   projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/package-info.java
   projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/spi/ControllerMode.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/annotations/Inject.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/AbstractBeanMetaData.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/AbstractInjectionValueMetaData.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/spi/BeanMetaData.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/spi/builder/BeanMetaDataBuilder.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/annotations/InjectAnnotationPlugin.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/dependency/DescribeAction.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/package-info.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/BeanFactoryHandler.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/BeanHandler.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/BeanSchemaBinding.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/DeploymentHandler.java
   projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/InjectionHandler.java
   projects/microcontainer/trunk/kernel/src/resources/tests/org/jboss/test/kernel/dependency/test/FromContextXMLTestCase0.xml
   projects/microcontainer/trunk/kernel/src/resources/tests/org/jboss/test/kernel/deployment/test/FromContextUnsupportedTestCase.xml
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/support/AnnotatedSimpleBeanInstallsAware.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/support/AnnotatedSimpleBeanWithKernelControllerContextAware.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/support/ExternalInstallWithStateSimpleBeanImpl.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/test/FromContextAnnotationTestCase.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/test/FromContextTestCase.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/test/InstallDependencyTestCase.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/test/InstallSelfDependencyTestCase.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/AliasesAwareBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/BeanInfoAwareBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/BeanNameAwareBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/ContextAwareBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/MetaDataAwareBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/OtherAwareBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/ScopeAwareBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/StateAwareBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/test/FromContextUnsupportedTestCase.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/xml/test/BeanTestCase.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/xml/test/InjectionTestCase.java
   projects/microcontainer/trunk/reliance-rules/src/main/org/jboss/reliance/drools/core/RuleBaseBean.java
   projects/microcontainer/trunk/spring-int/src/main/org/jboss/spring/annotations/SpringBeanAnnotationPlugin.java
   projects/microcontainer/trunk/spring-int/src/main/org/jboss/spring/deployment/xml/SpringBeanHandler.java
Log:
Initial enums introduction.

Modified: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/package-info.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/package-info.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/beans/metadata/package-info.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -22,23 +22,23 @@
 @JBossXmlAdaptedTypes
 ({
    @JBossXmlAdaptedType(type=Cardinality.class, valueAdapter=CardinalityValueAdapter.class),
-   @JBossXmlAdaptedType(type=ControllerMode.class, valueAdapter=ControllerModeValueAdapter.class),
+   @JBossXmlAdaptedType(type=ControllerMode.class, valueAdapter= ControllerModeValueAdapter.class),
    @JBossXmlAdaptedType(type=ControllerState.class, valueAdapter=ControllerStateValueAdapter.class),
    @JBossXmlAdaptedType(type=FromContext.class, valueAdapter=FromContextValueAdapter.class),
-   @JBossXmlAdaptedType(type=InjectionOption.class, valueAdapter=InjectionOptionValueAdapter.class),
-   @JBossXmlAdaptedType(type=AutowireType.class, valueAdapter=AutowireTypeValueAdapter.class)
+   @JBossXmlAdaptedType(type= InjectOption.class, valueAdapter=InjectionOptionValueAdapter.class),
+   @JBossXmlAdaptedType(type=AutowireType.class, valueAdapter= AutowireTypeValueAdapter.class)
 })
 package org.jboss.aop.microcontainer.beans.metadata;
 
-import org.jboss.beans.metadata.plugins.AutowireTypeValueAdapter;
+import org.jboss.beans.metadata.api.enums.AutowireTypeValueAdapter;
 import org.jboss.beans.metadata.plugins.CardinalityValueAdapter;
 import org.jboss.beans.metadata.plugins.ControllerModeValueAdapter;
 import org.jboss.beans.metadata.plugins.ControllerStateValueAdapter;
-import org.jboss.beans.metadata.plugins.FromContext;
-import org.jboss.beans.metadata.plugins.FromContextValueAdapter;
-import org.jboss.beans.metadata.plugins.InjectionOption;
-import org.jboss.beans.metadata.plugins.InjectionOptionValueAdapter;
-import org.jboss.beans.metadata.spi.AutowireType;
+import org.jboss.beans.metadata.api.enums.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContextValueAdapter;
+import org.jboss.beans.metadata.api.enums.InjectOption;
+import org.jboss.beans.metadata.api.enums.InjectionOptionValueAdapter;
+import org.jboss.beans.metadata.api.enums.AutowireType;
 import org.jboss.dependency.spi.Cardinality;
 import org.jboss.dependency.spi.ControllerMode;
 import org.jboss.dependency.spi.ControllerState;

Modified: projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/spi/ControllerMode.java
===================================================================
--- projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/spi/ControllerMode.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/dependency/src/main/org/jboss/dependency/spi/ControllerMode.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -21,61 +21,50 @@
 */
 package org.jboss.dependency.spi;
 
-import org.jboss.util.JBossObject;
 import org.jboss.util.JBossStringBuilder;
 
-import java.util.Map;
-import java.util.HashMap;
-import java.io.ObjectStreamException;
-import java.io.Serializable;
-
 /**
  * Mode of the context.
  * 
  * @author <a href="adrian at jboss.com">Adrian Brock</a>
  * @version $Revision$
  */
-public class ControllerMode extends JBossObject implements Serializable
+public enum ControllerMode
 {
-   private static final long serialVersionUID = 1L;
-   
-   /** Automatic */
-   public static final ControllerMode AUTOMATIC = new ControllerMode("Automatic");
+   AUTOMATIC("Automatic"),
+   ON_DEMAND("On Demand"),
+   MANUAL("Manual"),
+   DISABLED("Disabled");
 
-   /** On demand */
-   public static final ControllerMode ON_DEMAND = new ControllerMode("On Demand");
-
-   /** Manual */
-   public static final ControllerMode MANUAL = new ControllerMode("Manual");
-
-   /** Disabled */
-   public static final ControllerMode DISABLED = new ControllerMode("Disabled");
-
    /** The mode string */
-   protected final String modeString;
-   
-   private static Map<String, ControllerMode> values = new HashMap<String, ControllerMode>();
+   private final String modeString;
 
-   static
-   {
-      values.put(AUTOMATIC.getModeString(), AUTOMATIC);
-      values.put(ON_DEMAND.getModeString(), ON_DEMAND);
-      values.put(MANUAL.getModeString(), MANUAL);
-      values.put(DISABLED.getModeString(), DISABLED);
-   }
-
    /**
     * Create a new mode
     * 
     * @param modeString the mode representation
     */
-   public ControllerMode(String modeString)
+   private ControllerMode(String modeString)
    {
       if (modeString == null)
          throw new IllegalArgumentException("Null mode string");
       this.modeString = modeString;
    }
-   
+
+   // TODO - remove this once JBMICROCONT-219 is done
+   public static ControllerMode getInstance(String modeString)
+   {
+      if (modeString == null)
+         throw new IllegalArgumentException("Null mode string.");
+
+      for(ControllerMode cm : values())
+      {
+         if (modeString.equalsIgnoreCase(cm.getModeString()))
+            return cm;
+      }
+      throw new IllegalArgumentException("No such controller mode: " + modeString);
+   }
+
    /**
     * Get the mode string
     * 
@@ -85,28 +74,9 @@
    {
       return modeString;
    }
-   
-   public boolean equals(Object object)
-   {
-      if (object == null || object instanceof ControllerMode == false)
-         return false;
-      ControllerMode other = (ControllerMode) object;
-      return modeString.equals(other.modeString);
-   }
-   
+
    public void toString(JBossStringBuilder buffer)
    {
       buffer.append(modeString);
    }
-
-   protected int getHashCode()
-   {
-      return modeString.hashCode();
-   }
-
-   protected Object readResolve() throws ObjectStreamException
-   {
-      return values.get(modeString);   
-   }
-
 }

Deleted: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/annotations/FromContext.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/annotations/FromContext.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/annotations/FromContext.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -1,54 +0,0 @@
-/*
-* JBoss, Home of Professional Open Source
-* Copyright 2006, 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.beans.metadata.api.annotations;
-
-/**
- * FromContext.
- * @see org.jboss.beans.metadata.plugins.FromContext
- *
- * @author <a href="mailto:ales.justin at gmail.com">Ales Justin</a>
- */
-public enum FromContext
-{
-   NONE("[blank]"),
-   NAME("name"),
-   ALIASES("aliases"),
-   METADATA("metadata"),
-   BEANINFO("beaninfo"),
-   SCOPE("scope"),
-   STATE("state"),
-   ID("id"),
-   CONTEXT("context");
-
-   private String typeString;
-
-   FromContext(String optionString)
-   {
-      this.typeString = optionString;
-   }
-
-   public String toString()
-   {
-      return typeString;
-   }
-
-}

Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/annotations/Inject.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/annotations/Inject.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/annotations/Inject.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -26,6 +26,10 @@
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
 
+import org.jboss.beans.metadata.api.enums.FromContext;
+import org.jboss.beans.metadata.api.enums.InjectOption;
+import org.jboss.beans.metadata.api.enums.AutowireType;
+
 /**
  * Beans when injected by class type are by default changed to configured
  * state - if not yet configured.
@@ -69,12 +73,12 @@
    String dependentState() default "Installed";
 
    /**
-    * Get injection type.
+    * Get autowire type.
     * Default is by class.
     *
     * @return injection type
     */
-   InjectType type() default InjectType.BY_CLASS;
+   AutowireType type() default AutowireType.BY_CLASS;
 
    /**
     * Get injection option.
@@ -89,7 +93,7 @@
     *
     * @return from context type
     */
-   FromContext fromContext() default FromContext.NONE;
+   FromContext fromContext() default FromContext.NOOP;
 
    /**
     * Is this @Inject valid.

Deleted: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/annotations/InjectOption.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/annotations/InjectOption.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/annotations/InjectOption.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -1,46 +0,0 @@
-/*
-* JBoss, Home of Professional Open Source
-* Copyright 2006, 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.beans.metadata.api.annotations;
-
-/**
- * Injection option - strict or optional / callback.
- *
- * @author <a href="mailto:ales.justin at gmail.com">Ales Justin</a>
- */
-public enum InjectOption
-{
-   STRICT("Strict"),
-   CALLBACK("Callback");
-
-   private String optionString;
-
-   InjectOption(String optionString)
-   {
-      this.optionString = optionString;
-   }
-
-   public String toString()
-   {
-      return optionString;
-   }
-
-}

Deleted: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/annotations/InjectType.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/annotations/InjectType.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/annotations/InjectType.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -1,46 +0,0 @@
-/*
-* 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.beans.metadata.api.annotations;
-
-/**
- * Injection type - by class or by property name.
- *
- * @author <a href="mailto:ales.justin at gmail.com">Ales Justin</a>
- */
-public enum InjectType
-{
-   BY_CLASS("ByClass"),
-   BY_NAME("ByName");
-
-   private String typeString;
-
-   InjectType(String modeString)
-   {
-      this.typeString = modeString;
-   }
-
-   public String toString()
-   {
-      return typeString;
-   }
-
-}

Copied: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/AutowireType.java (from rev 70542, projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/spi/AutowireType.java)
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/AutowireType.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/AutowireType.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -0,0 +1,94 @@
+/*
+* 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.beans.metadata.api.enums;
+
+import org.jboss.util.JBossStringBuilder;
+
+/**
+ * Autowire type:
+ *  * ByClass - matching the class type of value (default)
+ *  * ByName - matching the property name
+ *  * Constructor - matching the constructor args
+ *  * Auto - matching constructor or by type
+ *  * None - do not autowire
+ *
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public enum AutowireType
+{
+   NONE(MicrocontainerConstants.NONE),
+   BY_CLASS(MicrocontainerConstants.BY_CLASS),
+   BY_NAME(MicrocontainerConstants.BY_NAME),
+   CONSTRUCTOR(MicrocontainerConstants.CONSTRUCTOR),
+   AUTO(MicrocontainerConstants.AUTO);
+
+   /** The type string */
+   private final String typeString;
+
+   /**
+    * Create a new state
+    *
+    * @param typeString the string representation
+    */
+   private AutowireType(String typeString)
+   {
+      if (typeString == null)
+         throw new IllegalArgumentException("Null type string");
+      this.typeString = typeString;
+   }
+
+   /**
+    * Return injection type.
+    * Or NONE if no matching type.
+    *
+    * @param typeString type
+    * @return AutowireType instance
+    */
+   // TODO - remove this once JBMICROCONT-219 is done
+   public static AutowireType getInstance(String typeString)
+   {
+      if (typeString == null)
+         throw new IllegalArgumentException("Null type string.");
+
+      for(AutowireType type : values())
+      {
+         if (typeString.equalsIgnoreCase(type.getTypeString()))
+            return type;
+      }
+      return NONE;
+   }
+
+   /**
+    * Get the state string
+    *
+    * @return the state string
+    */
+   public String getTypeString()
+   {
+      return typeString;
+   }
+
+   public void toString(JBossStringBuilder buffer)
+   {
+      buffer.append(typeString);
+   }
+}

Copied: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/AutowireTypeValueAdapter.java (from rev 70542, projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/AutowireTypeValueAdapter.java)
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/AutowireTypeValueAdapter.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/AutowireTypeValueAdapter.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -0,0 +1,39 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, 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.beans.metadata.api.enums;
+
+import org.jboss.xb.binding.sunday.unmarshalling.ValueAdapter;
+
+/**
+ * AutowireTypeValueAdapter.
+ *
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ * @version $Revision: 1.1 $
+ */
+public class AutowireTypeValueAdapter implements ValueAdapter
+{
+   @SuppressWarnings("unchecked")
+   public Object cast(Object o, Class c)
+   {
+      return AutowireType.getInstance((String)o);
+   }
+}

Copied: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/FromContext.java (from rev 70534, projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/FromContext.java)
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/FromContext.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/FromContext.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -0,0 +1,97 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, 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.beans.metadata.api.enums;
+
+import org.jboss.dependency.spi.ControllerContext;
+
+/**
+ * Inject from controller context:
+ *  * name - controller context name
+ *  * aliases - aliases
+ *  * metadata - inject MetaData
+ *  * beaninfo - BeanInfo
+ *  * scope - ScopeKey
+ *  * id - identifier
+ *  * dynamic - method specific
+ *  * ...
+ *
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public enum FromContext
+{
+   NOOP(FromContextDelegate.NOOP),
+   NAME(FromContextDelegate.NAME),
+   ALIASES(FromContextDelegate.ALIASES),
+   METADATA(FromContextDelegate.METADATA),
+   BEANINFO(FromContextDelegate.BEANINFO),
+   SCOPE(FromContextDelegate.SCOPE),
+   STATE(FromContextDelegate.STATE),
+   ID(FromContextDelegate.ID),
+   CONTEXT(FromContextDelegate.CONTEXT);
+
+   /** The delegate */
+   private final FromContextDelegate delegate;
+
+   /**
+    * Create a new state
+    *
+    * @param delegate the delegate
+    */
+   private FromContext(FromContextDelegate delegate)
+   {
+      if (delegate == null)
+         throw new IllegalArgumentException("Null delegate");
+      this.delegate = delegate;
+   }
+
+   /**
+    * Execute injection on context.
+    *
+    * @param context the target context
+    * @return lookup value
+    * @throws Throwable for any error
+    */
+   public Object executeLookup(ControllerContext context) throws Throwable
+   {
+      return delegate.executeLookup(context);
+   }
+
+   /**
+    * Get the enum instance from string.
+    *
+    * @param fromString the type string
+    * @return from context enum instance
+    */
+   // TODO - remove this once JBMICROCONT-219 is done
+   public static FromContext getInstance(String fromString)
+   {
+      if (fromString == null)
+         throw new IllegalArgumentException("Null from string.");
+      
+      for(FromContext fromContext : values())
+      {
+         if (fromString.equalsIgnoreCase(fromContext.delegate.getFromString()))
+            return fromContext;
+      }
+      throw new IllegalArgumentException("No such FromContext for from string: " + fromString);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/FromContextDelegate.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/FromContextDelegate.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/FromContextDelegate.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -0,0 +1,340 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, 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.beans.metadata.api.enums;
+
+import java.io.Serializable;
+import java.io.ObjectStreamException;
+import java.util.Collections;
+import java.util.Set;
+import java.util.Map;
+import java.util.HashMap;
+
+import org.jboss.beans.info.spi.BeanInfo;
+import org.jboss.beans.info.spi.helpers.UnmodifiableBeanInfo;
+import org.jboss.dependency.spi.ControllerContext;
+import org.jboss.dependency.spi.ControllerState;
+import org.jboss.dependency.spi.helpers.UnmodifiableControllerContext;
+import org.jboss.kernel.spi.dependency.KernelControllerContext;
+import org.jboss.kernel.spi.dependency.helpers.UnmodifiableKernelControllerContext;
+import org.jboss.metadata.spi.MetaData;
+import org.jboss.metadata.spi.scope.ScopeKey;
+import org.jboss.util.JBossObject;
+import org.jboss.util.JBossStringBuilder;
+
+/**
+ * Inject from controller context:
+ *  * name - controller context name
+ *  * aliases - aliases
+ *  * metadata - inject MetaData
+ *  * beaninfo - BeanInfo
+ *  * scope - ScopeKey
+ *  * id - identifier
+ *  * dynamic - method specific
+ *  * ...
+ *
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+abstract class FromContextDelegate extends JBossObject implements Serializable
+{
+   private static final long serialVersionUID = 1L;
+
+   /** name */
+   static final FromContextDelegate NOOP = new NoopFromContext("noop");
+
+   /** name */
+   static final FromContextDelegate NAME = new NameFromContext(MicrocontainerConstants.NAME);
+
+   /** alias */
+   static final FromContextDelegate ALIASES = new AliasesFromContext(MicrocontainerConstants.ALIASES);
+
+   /** metadata */
+   static final FromContextDelegate METADATA = new MetaDataFromContext(MicrocontainerConstants.METADATA);
+
+   /** beaninfo */
+   static final FromContextDelegate BEANINFO = new BeanInfoFromContext(MicrocontainerConstants.BEANINFO);
+
+   /** scope */
+   static final FromContextDelegate SCOPE = new ScopeFromContext(MicrocontainerConstants.SCOPE);
+
+   /** state */
+   static final FromContextDelegate STATE = new StateFromContext(MicrocontainerConstants.STATE);
+
+   /** id */
+   static final FromContextDelegate ID = new IdFromContext(MicrocontainerConstants.ID);
+
+   /** context */
+   static final FromContextDelegate CONTEXT = new ThisContext(MicrocontainerConstants.CONTEXT);
+
+   /** The type string */
+   protected final String fromString;
+
+   /** The values */
+   private static Map<String, FromContextDelegate> values = new HashMap<String, FromContextDelegate>();
+
+   static
+   {
+      values.put(NOOP.getFromString(), NOOP);
+      values.put(NAME.getFromString(), NAME);
+      values.put(ALIASES.getFromString(), ALIASES);
+      values.put(METADATA.getFromString(), METADATA);
+      values.put(BEANINFO.getFromString(), BEANINFO);
+      values.put(SCOPE.getFromString(), SCOPE);
+      values.put(STATE.getFromString(), STATE);
+      values.put(ID.getFromString(), ID);
+      values.put(CONTEXT.getFromString(), CONTEXT);
+   }
+
+   /**
+    * Create a new state
+    *
+    * @param fromString the string representation
+    */
+   protected FromContextDelegate(String fromString)
+   {
+      if (fromString == null)
+         throw new IllegalArgumentException("Null from string");
+      this.fromString = fromString;
+   }
+
+   /**
+    * Validate context before execution.
+    * After validation we must be able to cast context to T instance.
+    *
+    * @param context the context
+    */
+   protected void validate(ControllerContext context)
+   {
+   }
+
+   /**
+    * Execute injection on context.
+    *
+    * @param context the target context
+    * @return lookup value
+    * @throws Throwable for any error
+    */
+   @SuppressWarnings("unchecked")
+   public Object executeLookup(ControllerContext context) throws Throwable
+   {
+      validate(context);
+      return internalExecute(context);
+   }
+
+   /**
+    * Execute internal lookup on context.
+    *
+    * @param context the target context
+    * @return lookup value
+    * @throws Throwable for any error
+    */
+   public abstract Object internalExecute(ControllerContext context) throws Throwable;
+
+   /**
+    * Get the from string
+    *
+    * @return the state string
+    */
+   public String getFromString()
+   {
+      return fromString;
+   }
+
+   @SuppressWarnings("unchecked")
+   public boolean equals(Object object)
+   {
+      if (object == null || object instanceof FromContextDelegate == false)
+         return false;
+      FromContextDelegate other = (FromContextDelegate) object;
+      return fromString.equals(other.getFromString());
+   }
+
+   public void toString(JBossStringBuilder buffer)
+   {
+      buffer.append(fromString);
+   }
+
+   protected int getHashCode()
+   {
+      return fromString.hashCode();
+   }
+
+   protected Object readResolve() throws ObjectStreamException
+   {
+      return values.get(fromString);
+   }
+
+   private static abstract class KernelFromContextDelegate extends FromContextDelegate
+   {
+      private static final long serialVersionUID = 1L;
+
+      protected KernelFromContextDelegate(String fromString)
+      {
+         super(fromString);
+      }
+
+      protected void validate(ControllerContext context)
+      {
+         if (context instanceof KernelControllerContext == false)
+            throw new UnsupportedOperationException("Cannot execute " + getFromString() + " on underlying context: " + context);
+      }
+   }
+
+   private static class NoopFromContext extends FromContextDelegate
+   {
+      private static final long serialVersionUID = 1L;
+
+      public NoopFromContext(String fromString)
+      {
+         super(fromString);
+      }
+
+      public Object internalExecute(ControllerContext context)
+      {
+         throw new UnsupportedOperationException("Noop from context.");
+      }
+   }
+
+   private static class NameFromContext extends FromContextDelegate
+   {
+      private static final long serialVersionUID = 1L;
+
+      public NameFromContext(String fromString)
+      {
+         super(fromString);
+      }
+
+      public Object internalExecute(ControllerContext context)
+      {
+         return context.getName();
+      }
+   }
+
+   private static class AliasesFromContext extends FromContextDelegate
+   {
+      private static final long serialVersionUID = 1L;
+
+      public AliasesFromContext(String fromString)
+      {
+         super(fromString);
+      }
+
+      public Set<Object> internalExecute(ControllerContext context)
+      {
+         Set<Object> aliases = context.getAliases();
+         return aliases != null ? Collections.unmodifiableSet(aliases) : null;
+      }
+   }
+
+   private static class MetaDataFromContext extends FromContextDelegate
+   {
+      private static final long serialVersionUID = 1L;
+
+      public MetaDataFromContext(String fromString)
+      {
+         super(fromString);
+      }
+
+      public MetaData internalExecute(ControllerContext context)
+      {
+         return context.getScopeInfo().getMetaData();
+      }
+   }
+
+   private static class BeanInfoFromContext extends KernelFromContextDelegate
+   {
+      private static final long serialVersionUID = 1L;
+
+      public BeanInfoFromContext(String fromString)
+      {
+         super(fromString);
+      }
+
+      public BeanInfo internalExecute(ControllerContext context)
+      {
+         BeanInfo info = ((KernelControllerContext)context).getBeanInfo();
+         return info != null ? new UnmodifiableBeanInfo(info) : null;
+      }
+   }
+
+   private static class ScopeFromContext extends FromContextDelegate
+   {
+      private static final long serialVersionUID = 1L;
+
+      public ScopeFromContext(String fromString)
+      {
+         super(fromString);
+      }
+
+      public ScopeKey internalExecute(ControllerContext context)
+      {
+         return context.getScopeInfo().getScope();
+      }
+   }
+
+   private static class StateFromContext extends FromContextDelegate
+   {
+      private static final long serialVersionUID = 1L;
+
+      public StateFromContext(String fromString)
+      {
+         super(fromString);
+      }
+
+      public ControllerState internalExecute(ControllerContext context)
+      {
+         return context.getState();
+      }
+   }
+
+   private static class IdFromContext extends FromContextDelegate
+   {
+      private static final long serialVersionUID = 1L;
+
+      public IdFromContext(String fromString)
+      {
+         super(fromString);
+      }
+
+      public Object internalExecute(ControllerContext context)
+      {
+         // todo - change to actual id when impl
+         return context.getName();
+      }
+   }
+
+   private static class ThisContext extends FromContextDelegate
+   {
+      private static final long serialVersionUID = 1L;
+
+      public ThisContext(String fromString)
+      {
+         super(fromString);
+      }
+
+      public ControllerContext internalExecute(ControllerContext context)
+      {
+         if (context instanceof KernelControllerContext)
+            return new UnmodifiableKernelControllerContext((KernelControllerContext)context);
+         return new UnmodifiableControllerContext<ControllerContext>(context);
+      }
+   }
+}

Copied: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/FromContextValueAdapter.java (from rev 70534, projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/FromContextValueAdapter.java)
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/FromContextValueAdapter.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/FromContextValueAdapter.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -0,0 +1,39 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, 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.beans.metadata.api.enums;
+
+import org.jboss.xb.binding.sunday.unmarshalling.ValueAdapter;
+
+/**
+ * FromContextValueAdapter.
+ *
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ * @version $Revision: 1.1 $
+ */
+public class FromContextValueAdapter implements ValueAdapter
+{
+   @SuppressWarnings("unchecked")
+   public Object cast(Object o, Class c)
+   {
+      return FromContext.getInstance((String)o);
+   }
+}

Copied: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/InjectOption.java (from rev 70534, projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/InjectionOption.java)
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/InjectOption.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/InjectOption.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -0,0 +1,65 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, 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.beans.metadata.api.enums;
+
+/**
+ * Injection option - strict or optional / callback.
+ *
+ * @author <a href="mailto:ales.justin at gmail.com">Ales Justin</a>
+ */
+public enum InjectOption
+{
+   STRICT(MicrocontainerConstants.STRICT),
+   CALLBACK(MicrocontainerConstants.CALLBACK);
+
+   private String optionString;
+
+   InjectOption(String optionString)
+   {
+      this.optionString = optionString;
+   }
+
+   public String toString()
+   {
+      return optionString;
+   }
+
+   /**
+    * Get the option enum.
+    *
+    * @param optionString the option string
+    * @return the inject option enum instance
+    */
+   // TODO - remove this once JBMICROCONT-219 is done
+   public static InjectOption getInstance(String optionString)
+   {
+      if (optionString == null)
+         throw new IllegalArgumentException("Null option string.");
+
+      for (InjectOption io : values())
+      {
+         if (optionString.equalsIgnoreCase(io.optionString))
+            return io;
+      }
+      throw new IllegalArgumentException("No such option string: " + optionString);
+   }
+}

Copied: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/InjectionOptionValueAdapter.java (from rev 70534, projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/InjectionOptionValueAdapter.java)
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/InjectionOptionValueAdapter.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/InjectionOptionValueAdapter.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -0,0 +1,39 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, 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.beans.metadata.api.enums;
+
+import org.jboss.xb.binding.sunday.unmarshalling.ValueAdapter;
+
+/**
+ * InjectionOptionValueAdapter.
+ *
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ * @version $Revision: 1.1 $
+ */
+public class InjectionOptionValueAdapter implements ValueAdapter
+{
+   @SuppressWarnings("unchecked")
+   public Object cast(Object o, Class c)
+   {
+      return InjectOption.getInstance((String)o);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/MicrocontainerConstants.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/MicrocontainerConstants.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/api/enums/MicrocontainerConstants.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -0,0 +1,70 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, 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.beans.metadata.api.enums;
+
+/**
+ * Microcontainer constants.
+ *
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public interface MicrocontainerConstants
+{
+   // Controller states
+   // POJO
+   String NOT_INSTALLED = "Not Installed";
+   String PRE_INSTALL = "PreInstall";
+   String DESCRIBED = "Described";
+   String INSTANTIATED = "Instantiated";
+   String CONFIGURED = "Configured";
+   String CREATE = "Create";
+   String START = "Start";
+   String INSTALLED = "Installed";
+   // Deployment stages
+   String PARSE = "Parse";
+   String POST_PARSE = "PostParse";
+   String PRE_DESCRIBE = "PreDescribe";
+   String CLASSLOADER = "ClassLoader";
+   String POST_CLASSLOADER = "PostClassLoader";
+   String PRE_REAL = "PreReal";
+   String REAL = "Real";
+
+   // Inject Option
+   String STRICT = "Strict";
+   String CALLBACK = "Callback";
+
+   // Autowire
+   String NONE = "None";
+   String BY_CLASS = "ByClass";
+   String BY_NAME = "ByName";
+   String CONSTRUCTOR = "Constructor";
+   String AUTO = "Auto";
+
+   // FromContext
+   String NAME = "name";
+   String ALIASES = "aliases";
+   String METADATA = "metadata";
+   String BEANINFO = "beaninfo";
+   String SCOPE = "scope";
+   String STATE = "state";
+   String ID = "id";
+   String CONTEXT = "context";   
+}

Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/AbstractBeanMetaData.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/AbstractBeanMetaData.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/AbstractBeanMetaData.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -28,13 +28,12 @@
 import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
-
 import javax.xml.bind.annotation.XmlAttribute;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlRootElement;
 import javax.xml.bind.annotation.XmlType;
 
-import org.jboss.beans.metadata.spi.AutowireType;
+import org.jboss.beans.metadata.api.enums.AutowireType;
 import org.jboss.beans.metadata.spi.BeanMetaData;
 import org.jboss.beans.metadata.spi.BeanMetaDataFactory;
 import org.jboss.beans.metadata.spi.CallbackMetaData;

Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/AbstractInjectionValueMetaData.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/AbstractInjectionValueMetaData.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/AbstractInjectionValueMetaData.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -26,9 +26,11 @@
 import javax.xml.bind.annotation.XmlTransient;
 import javax.xml.bind.annotation.XmlType;
 
-import org.jboss.beans.metadata.spi.AutowireType;
+import org.jboss.beans.metadata.api.enums.AutowireType;
 import org.jboss.beans.metadata.spi.MetaDataVisitor;
 import org.jboss.beans.metadata.spi.MetaDataVisitorNode;
+import org.jboss.beans.metadata.api.enums.InjectOption;
+import org.jboss.beans.metadata.api.enums.FromContext;
 import org.jboss.dependency.plugins.AttributeCallbackItem;
 import org.jboss.dependency.spi.Controller;
 import org.jboss.dependency.spi.ControllerContext;
@@ -51,9 +53,9 @@
 
    protected AutowireType injectionType = AutowireType.BY_CLASS;
 
-   protected InjectionOption injectionOption = InjectionOption.STRICT;
+   protected InjectOption injectionOption = InjectOption.STRICT;
 
-   protected FromContext<? extends ControllerContext> fromContext;
+   protected FromContext fromContext;
 
    /**
     * Simplyifies things with AutowireType.BY_NAME
@@ -99,24 +101,24 @@
       this.injectionType = injectionType;
    }
 
-   public InjectionOption getInjectionOption()
+   public InjectOption getInjectionOption()
    {
       return injectionOption;
    }
 
    @XmlAttribute(name="option")
-   public void setInjectionOption(InjectionOption injectionOption)
+   public void setInjectionOption(InjectOption injectionOption)
    {
       this.injectionOption = injectionOption;
    }
 
-   public FromContext<? extends ControllerContext> getFromContext()
+   public FromContext getFromContext()
    {
       return fromContext;
    }
 
    @XmlAttribute(name="fromContext")
-   public void setFromContext(FromContext<? extends ControllerContext> fromContext)
+   public void setFromContext(FromContext fromContext)
    {
       this.fromContext = fromContext;
    }
@@ -142,7 +144,7 @@
    protected boolean isLookupValid(ControllerContext lookup)
    {
       boolean lookupExists = super.isLookupValid(lookup);
-      boolean isCallback = InjectionOption.CALLBACK.equals(injectionOption);
+      boolean isCallback = InjectOption.CALLBACK.equals(injectionOption);
       if (lookupExists == false && isCallback)
       {
          addInstallItem(getUnderlyingValue());
@@ -173,7 +175,7 @@
          ControllerContext lookup = controller.getInstalledContext(info.getType());
          if (lookup == null)
          {
-            if (InjectionOption.STRICT.equals(injectionOption))
+            if (InjectOption.STRICT.equals(injectionOption))
             {
                throw new IllegalArgumentException("Possible multiple matching beans, see log for info.");
             }
@@ -191,7 +193,7 @@
 
    protected boolean addDependencyItem()
    {
-      return InjectionOption.STRICT.equals(injectionOption) || fromContext != null;
+      return InjectOption.STRICT.equals(injectionOption) || fromContext != null;
    }
 
    public Object getUnderlyingValue()
@@ -275,7 +277,7 @@
             context = visitor.getControllerContext();
 
             // dependency item or install item
-            if (InjectionOption.STRICT.equals(injectionOption))
+            if (InjectOption.STRICT.equals(injectionOption))
             {
                // add dependency item only for strict inject behaviour
                // we pop it so that parent node has the same semantics as this one

Deleted: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/AutowireTypeValueAdapter.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/AutowireTypeValueAdapter.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/AutowireTypeValueAdapter.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -1,40 +0,0 @@
-/*
-* JBoss, Home of Professional Open Source
-* Copyright 2006, 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.beans.metadata.plugins;
-
-import org.jboss.beans.metadata.spi.AutowireType;
-import org.jboss.xb.binding.sunday.unmarshalling.ValueAdapter;
-
-/**
- * AutowireTypeValueAdapter.
- *
- * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
- * @version $Revision: 1.1 $
- */
-public class AutowireTypeValueAdapter implements ValueAdapter
-{
-   @SuppressWarnings("unchecked")
-   public Object cast(Object o, Class c)
-   {
-      return AutowireType.getInstance((String)o);
-   }
-}

Deleted: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/FromContext.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/FromContext.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/FromContext.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -1,430 +0,0 @@
-/*
-* JBoss, Home of Professional Open Source
-* Copyright 2006, 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.beans.metadata.plugins;
-
-import java.io.Serializable;
-import java.lang.reflect.InvocationHandler;
-import java.lang.reflect.Method;
-import java.lang.reflect.Proxy;
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.jboss.beans.info.spi.BeanInfo;
-import org.jboss.beans.info.spi.helpers.UnmodifiableBeanInfo;
-import org.jboss.dependency.spi.ControllerContext;
-import org.jboss.dependency.spi.ControllerState;
-import org.jboss.dependency.spi.helpers.UnmodifiableControllerContext;
-import org.jboss.kernel.spi.dependency.KernelControllerContext;
-import org.jboss.kernel.spi.dependency.helpers.UnmodifiableKernelControllerContext;
-import org.jboss.metadata.spi.MetaData;
-import org.jboss.metadata.spi.scope.ScopeKey;
-import org.jboss.reflect.plugins.introspection.ReflectionUtils;
-import org.jboss.util.JBossObject;
-import org.jboss.util.JBossStringBuilder;
-
-/**
- * Inject from controller context:
- *  * name - controller context name
- *  * aliases - aliases
- *  * metadata - inject MetaData
- *  * beaninfo - BeanInfo
- *  * scope - ScopeKey
- *  * id - identifier
- *  * dynamic - method specific
- *  * ...
- *
- * @param <T> exact controller context type
- * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
- */
-public abstract class FromContext<T extends ControllerContext> extends JBossObject
-      implements Serializable
-{
-   private static final long serialVersionUID = 1L;
-
-   /** name */
-   public static final FromContext<? extends ControllerContext> NAME = new NameFromContext("name");
-
-   /** alias */
-   public static final FromContext<? extends ControllerContext> ALIASES = new AliasesFromContext("aliases");
-
-   /** metadata */
-   public static final FromContext<? extends ControllerContext> METADATA = new MetaDataFromContext("metadata");
-
-   /** beaninfo */
-   public static final FromContext<? extends ControllerContext> BEANINFO = new BeanInfoFromContext("beaninfo");
-
-   /** scope */
-   public static final FromContext<? extends ControllerContext> SCOPE = new ScopeFromContext("scope");
-
-   /** state */
-   public static final FromContext<? extends ControllerContext> STATE = new StateFromContext("state");
-
-   /** id */
-   public static final FromContext<? extends ControllerContext> ID = new IdFromContext("id");
-
-   /** context */
-   public static final FromContext<? extends ControllerContext> CONTEXT = new ThisContext("context");
-
-   /** The type string */
-   protected final String fromString;
-
-   /**
-    * Create a new state
-    *
-    * @param fromString the string representation
-    */
-   protected FromContext(String fromString)
-   {
-      if (fromString == null)
-         throw new IllegalArgumentException("Null from string");
-      this.fromString = fromString;
-   }
-
-   /**
-    * Return from type.
-    *
-    * @param fromString type
-    * @return FromContext instance
-    */
-   public static FromContext<? extends ControllerContext> getInstance(String fromString)
-   {
-      if (NAME.getFromString().equalsIgnoreCase(fromString))
-         return NAME;
-      else if (ALIASES.getFromString().equalsIgnoreCase(fromString))
-         return ALIASES;
-      else if (METADATA.getFromString().equalsIgnoreCase(fromString))
-         return METADATA;
-      else if (BEANINFO.getFromString().equalsIgnoreCase(fromString))
-         return BEANINFO;
-      else if (SCOPE.getFromString().equalsIgnoreCase(fromString))
-         return SCOPE;
-      else if (STATE.getFromString().equalsIgnoreCase(fromString))
-         return STATE;
-      else if (ID.getFromString().equalsIgnoreCase(fromString))
-         return ID;
-      else if (CONTEXT.getFromString().equalsIgnoreCase(fromString))
-         return CONTEXT;
-      else
-         return new DynamicFromContext(fromString);
-   }
-
-   /**
-    * Validate context before execution.
-    * After validation we must be able to cast context to T instance.
-    *
-    * @param context the context
-    */
-   protected void validate(ControllerContext context)
-   {
-   }
-
-   /**
-    * Execute injection on context.
-    *
-    * @param context the target context
-    * @return lookup value
-    * @throws Throwable for any error
-    */
-   @SuppressWarnings("unchecked")
-   public Object executeLookup(ControllerContext context) throws Throwable
-   {
-      validate(context);
-      return internalExecute((T)context);
-   }
-
-   /**
-    * Execute internal lookup on context.
-    *
-    * @param context the target context
-    * @return lookup value
-    * @throws Throwable for any error
-    */
-   public abstract Object internalExecute(T context) throws Throwable;
-
-   /**
-    * Get the from string
-    *
-    * @return the state string
-    */
-   public String getFromString()
-   {
-      return fromString;
-   }
-
-   @SuppressWarnings("unchecked")
-   public boolean equals(Object object)
-   {
-      if (object == null || object instanceof FromContext == false)
-         return false;
-      FromContext other = (FromContext) object;
-      return fromString.equals(other.getFromString());
-   }
-
-   public void toString(JBossStringBuilder buffer)
-   {
-      buffer.append(fromString);
-   }
-
-   protected int getHashCode()
-   {
-      return fromString.hashCode();
-   }
-
-   private static abstract class KernelFromContext extends FromContext<KernelControllerContext>
-   {
-      private static final long serialVersionUID = 1L;
-
-      protected KernelFromContext(String fromString)
-      {
-         super(fromString);
-      }
-
-      protected void validate(ControllerContext context)
-      {
-         if (context instanceof KernelControllerContext == false)
-            throw new UnsupportedOperationException("Cannot execute " + getFromString() + " on underlying context: " + context);
-      }
-   }
-
-   private static class NameFromContext extends FromContext<ControllerContext>
-   {
-      private static final long serialVersionUID = 1L;
-
-      public NameFromContext(String fromString)
-      {
-         super(fromString);
-      }
-
-      public Object internalExecute(ControllerContext context)
-      {
-         return context.getName();
-      }
-   }
-
-   private static class AliasesFromContext extends FromContext<ControllerContext>
-   {
-      private static final long serialVersionUID = 1L;
-
-      public AliasesFromContext(String fromString)
-      {
-         super(fromString);
-      }
-
-      public Set<Object> internalExecute(ControllerContext context)
-      {
-         Set<Object> aliases = context.getAliases();
-         return aliases != null ? Collections.unmodifiableSet(aliases) : null;
-      }
-   }
-
-   private static class MetaDataFromContext extends KernelFromContext
-   {
-      private static final long serialVersionUID = 1L;
-
-      public MetaDataFromContext(String fromString)
-      {
-         super(fromString);
-      }
-
-      public MetaData internalExecute(KernelControllerContext context)
-      {
-         return context.getScopeInfo().getMetaData();
-      }
-   }
-
-   private static class BeanInfoFromContext extends KernelFromContext
-   {
-      private static final long serialVersionUID = 1L;
-
-      public BeanInfoFromContext(String fromString)
-      {
-         super(fromString);
-      }
-
-      public BeanInfo internalExecute(KernelControllerContext context)
-      {
-         BeanInfo info = context.getBeanInfo();
-         return info != null ? new UnmodifiableBeanInfo(info) : null;
-      }
-   }
-
-   private static class ScopeFromContext extends KernelFromContext
-   {
-      private static final long serialVersionUID = 1L;
-
-      public ScopeFromContext(String fromString)
-      {
-         super(fromString);
-      }
-
-      public ScopeKey internalExecute(KernelControllerContext context)
-      {
-         return context.getScopeInfo().getScope();
-      }
-   }
-
-   private static class StateFromContext extends FromContext<ControllerContext>
-   {
-      private static final long serialVersionUID = 1L;
-
-      public StateFromContext(String fromString)
-      {
-         super(fromString);
-      }
-
-      public ControllerState internalExecute(ControllerContext context)
-      {
-         return context.getState();
-      }
-   }
-
-   private static class IdFromContext extends FromContext<ControllerContext>
-   {
-      private static final long serialVersionUID = 1L;
-
-      public IdFromContext(String fromString)
-      {
-         super(fromString);
-      }
-
-      public Object internalExecute(ControllerContext context)
-      {
-         // todo - change to actual id when impl
-         return context.getName();
-      }
-   }
-
-   private static class ThisContext extends FromContext<ControllerContext>
-   {
-      private static final long serialVersionUID = 1L;
-
-      public ThisContext(String fromString)
-      {
-         super(fromString);
-      }
-
-      public ControllerContext internalExecute(ControllerContext context)
-      {
-         if (context instanceof KernelControllerContext)
-            return new UnmodifiableKernelControllerContext((KernelControllerContext)context);
-         return new UnmodifiableControllerContext<ControllerContext>(context);
-      }
-   }
-
-   private static class DynamicFromContext extends FromContext<ControllerContext>
-   {
-      private static final long serialVersionUID = 1L;
-
-      public DynamicFromContext(String fromString)
-      {
-         super(fromString);
-      }
-
-      protected Method findMethod(Class<?> clazz)
-      {
-         if (clazz == null || clazz == Object.class)
-            return null;
-
-         Method[] methods = clazz.getDeclaredMethods();
-         for(Method m : methods)
-         {
-            if (m.getName().equals(getFromString()) && m.getParameterTypes().length == 0)
-            {
-               return m;
-            }
-         }
-
-         Method method = findMethod(clazz.getSuperclass());
-         if (method != null)
-            return method;
-
-         for(Class<?> infc : clazz.getInterfaces())
-         {
-            Method m = findMethod(infc);
-            if (m != null)
-               return m;
-         }
-         return null;
-      }
-
-      protected void getInterfaces(Class<?> clazz, Set<Class<?>> interfaces)
-      {
-         if (clazz == Object.class || clazz == null)
-            return;
-         for (Class<?>  iface : clazz.getInterfaces())
-            interfaces.add(iface);
-         getInterfaces(clazz.getSuperclass(), interfaces);         
-      }
-
-      public Object internalExecute(ControllerContext context) throws Throwable
-      {
-         Method method = findMethod(context.getClass());
-         if (method == null)
-            throw new IllegalArgumentException("No such getter on context class or mistyped fromContext string: " + getFromString());
-         Object result = ReflectionUtils.invoke(method, context, new Object[]{});
-         if (result != null)
-         {
-            Set<Class<?>> interfaces = new HashSet<Class<?>>();
-            getInterfaces(result.getClass(), interfaces);
-            return Proxy.newProxyInstance(
-                     ControllerContext.class.getClassLoader(),
-                     interfaces.toArray(new Class[interfaces.size()]),
-                     new DynamicWrapper(result));
-         }
-         return null;
-      }
-
-      /**
-       * This warpper throws error on methods that start with set or add.
-       */
-      private class DynamicWrapper implements InvocationHandler
-      {
-         private Object target;
-
-         public DynamicWrapper(Object target)
-         {
-            this.target = target;
-         }
-
-         /**
-          * Check if the method is unsupported.
-          *
-          * @param method the executed method.
-          * @return true if unsupported, false otherwise
-          */
-         protected boolean isUnsupported(Method method)
-         {
-            String name = method.getName();
-            return (name.startsWith("set") || name.startsWith("add"));
-         }
-
-         public Object invoke(Object proxy, Method method, Object[] args) throws Throwable
-         {
-            if (isUnsupported(method))
-               throw new UnsupportedOperationException();
-            return ReflectionUtils.invoke(method, target, args);
-         }
-      }
-   }
-
-}

Deleted: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/FromContextValueAdapter.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/FromContextValueAdapter.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/FromContextValueAdapter.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -1,39 +0,0 @@
-/*
-* JBoss, Home of Professional Open Source
-* Copyright 2006, 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.beans.metadata.plugins;
-
-import org.jboss.xb.binding.sunday.unmarshalling.ValueAdapter;
-
-/**
- * FromContextValueAdapter.
- *
- * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
- * @version $Revision: 1.1 $
- */
-public class FromContextValueAdapter implements ValueAdapter
-{
-   @SuppressWarnings("unchecked")
-   public Object cast(Object o, Class c)
-   {
-      return FromContext.getInstance((String)o);
-   }
-}

Deleted: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/InjectionOption.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/InjectionOption.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/InjectionOption.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -1,107 +0,0 @@
-/*
-* JBoss, Home of Professional Open Source
-* Copyright 2006, 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.beans.metadata.plugins;
-
-import java.io.Serializable;
-
-import org.jboss.util.JBossObject;
-import org.jboss.util.JBossStringBuilder;
-
-/**
- * Injection option:
- *  * Strict - exactly one matching context (default)
- *  * Callback - issue callback once context with matching is present
- *
- * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
- */
-public class InjectionOption extends JBossObject
-      implements Serializable
-{
-   private static final long serialVersionUID = 1L;
-
-   /** Strict */
-   public static final InjectionOption STRICT = new InjectionOption("Strict");
-
-   /** Loose */
-   public static final InjectionOption CALLBACK = new InjectionOption("Callback");
-
-   /** The type string */
-   protected final String optionString;
-
-   /**
-    * Create a new state
-    *
-    * @param optionString the string representation
-    */
-   private InjectionOption(String optionString)
-   {
-      if (optionString == null)
-         throw new IllegalArgumentException("Null option string");
-      this.optionString = optionString;
-   }
-
-   /**
-    * Return injection type.
-    * Or exception if no matching type.
-    *
-    * @param optionString type
-    * @return InjectionOption instance
-    */
-   public static InjectionOption getInstance(String optionString)
-   {
-      if (STRICT.getOptionString().equalsIgnoreCase(optionString))
-         return STRICT;
-      else if (CALLBACK.getOptionString().equalsIgnoreCase(optionString))
-         return CALLBACK;
-      else
-         throw new IllegalArgumentException("No such option: " + optionString);
-   }
-
-   /**
-    * Get the state string
-    *
-    * @return the state string
-    */
-   public String getOptionString()
-   {
-      return optionString;
-   }
-
-   public boolean equals(Object object)
-   {
-      if (object == null || object instanceof InjectionOption == false)
-         return false;
-      InjectionOption other = (InjectionOption) object;
-      return optionString.equals(other.getOptionString());
-   }
-
-   public void toString(JBossStringBuilder buffer)
-   {
-      buffer.append(optionString);
-   }
-
-   protected int getHashCode()
-   {
-      return optionString.hashCode();
-   }
-
-}

Deleted: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/InjectionOptionValueAdapter.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/InjectionOptionValueAdapter.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/InjectionOptionValueAdapter.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -1,39 +0,0 @@
-/*
-* JBoss, Home of Professional Open Source
-* Copyright 2006, 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.beans.metadata.plugins;
-
-import org.jboss.xb.binding.sunday.unmarshalling.ValueAdapter;
-
-/**
- * InjectionOptionValueAdapter.
- *
- * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
- * @version $Revision: 1.1 $
- */
-public class InjectionOptionValueAdapter implements ValueAdapter
-{
-   @SuppressWarnings("unchecked")
-   public Object cast(Object o, Class c)
-   {
-      return InjectionOption.getInstance((String)o);
-   }
-}

Deleted: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/spi/AutowireType.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/spi/AutowireType.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/spi/AutowireType.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -1,128 +0,0 @@
-/*
-* 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.beans.metadata.spi;
-
-import java.io.Serializable;
-
-import org.jboss.util.JBossObject;
-import org.jboss.util.JBossStringBuilder;
-
-/**
- * Autowire type:
- *  * ByClass - matching the class type of value (default)
- *  * ByName - matching the property name
- *  * Constructor - matching the constructor args
- *  * Auto - matching constructor or by type
- *  * None - do not autowire
- *
- * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
- */
-public class AutowireType extends JBossObject
-   implements Serializable
-{
-   private static final long serialVersionUID = 1L;
-
-   /** None */
-   public static final AutowireType NONE = new AutowireType("None");
-
-   /** Strict */
-   public static final AutowireType BY_CLASS = new AutowireType("ByClass");
-
-   /** Loose */
-   public static final AutowireType BY_NAME = new AutowireType("ByName");
-
-   /** Constructor */
-   public static final AutowireType CONSTRUCTOR = new AutowireType("Constructor");
-
-   /** Auto */
-   public static final AutowireType AUTO = new AutowireType("Auto");
-
-   /** Array */
-   public static final AutowireType[] TYPES = new AutowireType[]{
-         NONE,
-         BY_CLASS,
-         BY_NAME,
-         CONSTRUCTOR,
-         AUTO,
-   };
-
-   /** The type string */
-   protected final String typeString;
-
-   /**
-    * Create a new state
-    *
-    * @param typeString the string representation
-    */
-   private AutowireType(String typeString)
-   {
-      if (typeString == null)
-         throw new IllegalArgumentException("Null type string");
-      this.typeString = typeString;
-   }
-
-   /**
-    * Return injection type.
-    * Or NONE if no matching type.
-    *
-    * @param typeString type
-    * @return AutowireType instance
-    */
-   public static AutowireType getInstance(String typeString)
-   {
-      for(AutowireType type : TYPES)
-      {
-         if (type.getTypeString().equalsIgnoreCase(typeString))
-            return type;
-      }
-      return NONE;
-   }
-
-   /**
-    * Get the state string
-    *
-    * @return the state string
-    */
-   public String getTypeString()
-   {
-      return typeString;
-   }
-
-   public boolean equals(Object object)
-   {
-      if (object == null || object instanceof AutowireType == false)
-         return false;
-      AutowireType other = (AutowireType) object;
-      return typeString.equals(other.getTypeString());
-   }
-
-   public void toString(JBossStringBuilder buffer)
-   {
-      buffer.append(typeString);
-   }
-
-   protected int getHashCode()
-   {
-      return typeString.hashCode();
-   }
-
-}

Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/spi/BeanMetaData.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/spi/BeanMetaData.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/spi/BeanMetaData.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -25,6 +25,7 @@
 import java.util.Set;
 
 import org.jboss.dependency.spi.ControllerMode;
+import org.jboss.beans.metadata.api.enums.AutowireType;
 
 /**
  * Metadata about a bean.

Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/spi/builder/BeanMetaDataBuilder.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/spi/builder/BeanMetaDataBuilder.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/spi/builder/BeanMetaDataBuilder.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -103,7 +103,7 @@
     */
    public BeanMetaDataBuilder setMode(String modeString)
    {
-      return setMode(new ControllerMode(modeString));
+      return setMode(ControllerMode.getInstance(modeString));
    }
 
    /**

Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/annotations/InjectAnnotationPlugin.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/annotations/InjectAnnotationPlugin.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/annotations/InjectAnnotationPlugin.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -22,11 +22,9 @@
 package org.jboss.kernel.plugins.annotations;
 
 import org.jboss.beans.metadata.api.annotations.Inject;
-import org.jboss.beans.metadata.api.annotations.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContext;
 import org.jboss.beans.metadata.plugins.AbstractInjectionValueMetaData;
-import org.jboss.beans.metadata.plugins.InjectionOption;
 import org.jboss.beans.metadata.spi.ValueMetaData;
-import org.jboss.beans.metadata.spi.AutowireType;
 import org.jboss.dependency.spi.ControllerState;
 
 /**
@@ -53,10 +51,10 @@
       injection.setDependentState(new ControllerState(annotation.dependentState()));
       if (isAttributePresent(annotation.whenRequired()))
          injection.setWhenRequiredState(new ControllerState(annotation.whenRequired()));
-      injection.setInjectionOption(InjectionOption.getInstance(annotation.option().toString()));
-      injection.setInjectionType(AutowireType.getInstance(annotation.type().toString()));
-      if (FromContext.NONE.equals(annotation.fromContext()) == false)
-         injection.setFromContext(org.jboss.beans.metadata.plugins.FromContext.getInstance(annotation.fromContext().toString()));
+      injection.setInjectionOption(annotation.option());
+      injection.setInjectionType(annotation.type());
+      if (FromContext.NOOP.equals(annotation.fromContext()) == false)
+         injection.setFromContext(annotation.fromContext());
       return injection;
    }
 }

Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/dependency/DescribeAction.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/dependency/DescribeAction.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/dependency/DescribeAction.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -56,7 +56,8 @@
          MetaData md = repository.getMetaData(context);
          // add custom dependencies (e.g. AOP layer).
          List<DependencyBuilderListItem> dependencies = dependencyBuilder.getDependencies(info, md);
-         log.trace("Extra dependencies for " + context.getName() + " " + dependencies);
+         if (log.isTraceEnabled())
+            log.trace("Extra dependencies for " + context.getName() + " " + dependencies);
          if (dependencies != null && dependencies.isEmpty() == false)
          {
             for (DependencyBuilderListItem dependencyItem : dependencies)
@@ -115,7 +116,8 @@
          MetaData md = repository.getMetaData(context);
          // add custom dependencies (e.g. AOP layer).
          List<DependencyBuilderListItem> dependencies = dependencyBuilder.getDependencies(info, md);
-         log.trace("Unwind extra dependencies for " + context.getName() + " " + dependencies);
+         if (log.isTraceEnabled())
+            log.trace("Unwind extra dependencies for " + context.getName() + " " + dependencies);
          if (dependencies != null && dependencies.isEmpty() == false)
          {
             for (DependencyBuilderListItem dependencyItem : dependencies)

Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/package-info.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/package-info.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/package-info.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -22,23 +22,23 @@
 @JBossXmlAdaptedTypes
 ({
    @JBossXmlAdaptedType(type=Cardinality.class, valueAdapter=CardinalityValueAdapter.class),
-   @JBossXmlAdaptedType(type=ControllerMode.class, valueAdapter=ControllerModeValueAdapter.class),
+   @JBossXmlAdaptedType(type=ControllerMode.class, valueAdapter= ControllerModeValueAdapter.class),
    @JBossXmlAdaptedType(type=ControllerState.class, valueAdapter=ControllerStateValueAdapter.class),
-   @JBossXmlAdaptedType(type=FromContext.class, valueAdapter=FromContextValueAdapter.class),
-   @JBossXmlAdaptedType(type=InjectionOption.class, valueAdapter=InjectionOptionValueAdapter.class),
-   @JBossXmlAdaptedType(type=AutowireType.class, valueAdapter=AutowireTypeValueAdapter.class)
+   @JBossXmlAdaptedType(type= FromContext.class, valueAdapter=FromContextValueAdapter.class),
+   @JBossXmlAdaptedType(type= InjectOption.class, valueAdapter=InjectionOptionValueAdapter.class),
+   @JBossXmlAdaptedType(type= AutowireType.class, valueAdapter= AutowireTypeValueAdapter.class)
 })
 package org.jboss.kernel.plugins.deployment;
 
-import org.jboss.beans.metadata.plugins.AutowireTypeValueAdapter;
+import org.jboss.beans.metadata.api.enums.AutowireTypeValueAdapter;
 import org.jboss.beans.metadata.plugins.CardinalityValueAdapter;
 import org.jboss.beans.metadata.plugins.ControllerModeValueAdapter;
 import org.jboss.beans.metadata.plugins.ControllerStateValueAdapter;
-import org.jboss.beans.metadata.plugins.FromContext;
-import org.jboss.beans.metadata.plugins.FromContextValueAdapter;
-import org.jboss.beans.metadata.plugins.InjectionOption;
-import org.jboss.beans.metadata.plugins.InjectionOptionValueAdapter;
-import org.jboss.beans.metadata.spi.AutowireType;
+import org.jboss.beans.metadata.api.enums.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContextValueAdapter;
+import org.jboss.beans.metadata.api.enums.InjectOption;
+import org.jboss.beans.metadata.api.enums.InjectionOptionValueAdapter;
+import org.jboss.beans.metadata.api.enums.AutowireType;
 import org.jboss.dependency.spi.Cardinality;
 import org.jboss.dependency.spi.ControllerMode;
 import org.jboss.dependency.spi.ControllerState;

Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/BeanFactoryHandler.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/BeanFactoryHandler.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/BeanFactoryHandler.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -60,7 +60,7 @@
          else if ("class".equals(localName))
             bean.setBeanClass(attrs.getValue(i));
          else if ("mode".equals(localName))
-            bean.setMode(new ControllerMode(attrs.getValue(i)));
+            bean.setMode(ControllerMode.getInstance(attrs.getValue(i)));
       }
    }
 

Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/BeanHandler.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/BeanHandler.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/BeanHandler.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -25,7 +25,7 @@
 import javax.xml.namespace.QName;
 
 import org.jboss.beans.metadata.plugins.AbstractBeanMetaData;
-import org.jboss.beans.metadata.spi.AutowireType;
+import org.jboss.beans.metadata.api.enums.AutowireType;
 import org.jboss.beans.metadata.spi.ConstructorMetaData;
 import org.jboss.dependency.spi.ControllerMode;
 import org.jboss.xb.binding.sunday.unmarshalling.DefaultElementHandler;
@@ -59,7 +59,7 @@
          else if ("class".equals(localName))
             bean.setBean(attrs.getValue(i));
          else if ("mode".equals(localName))
-            bean.setMode(new ControllerMode(attrs.getValue(i)));
+            bean.setMode(ControllerMode.getInstance(attrs.getValue(i)));
          else if ("parent".equals(localName))
             bean.setParent(attrs.getValue(i));
          else if ("abstract".equals(localName))

Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/BeanSchemaBinding.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/BeanSchemaBinding.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/BeanSchemaBinding.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -45,11 +45,11 @@
 import org.jboss.beans.metadata.plugins.AbstractSetMetaData;
 import org.jboss.beans.metadata.plugins.AbstractSupplyMetaData;
 import org.jboss.beans.metadata.plugins.AbstractValueMetaData;
-import org.jboss.beans.metadata.plugins.InjectionOption;
+import org.jboss.beans.metadata.api.enums.InjectOption;
+import org.jboss.beans.metadata.api.enums.FromContext;
+import org.jboss.beans.metadata.api.enums.AutowireType;
 import org.jboss.beans.metadata.plugins.StringValueMetaData;
-import org.jboss.beans.metadata.plugins.FromContext;
 import org.jboss.beans.metadata.plugins.factory.GenericBeanFactoryMetaData;
-import org.jboss.beans.metadata.spi.AutowireType;
 import org.jboss.beans.metadata.spi.BeanMetaDataFactory;
 import org.jboss.beans.metadata.spi.DemandMetaData;
 import org.jboss.beans.metadata.spi.DependencyMetaData;
@@ -351,7 +351,7 @@
                else if ("class".equals(localName))
                   bean.setBean(attrs.getValue(i));
                else if ("mode".equals(localName))
-                  bean.setMode(new ControllerMode(attrs.getValue(i)));
+                  bean.setMode(ControllerMode.getInstance(attrs.getValue(i)));
             }
          }
       });
@@ -376,7 +376,7 @@
                else if ("class".equals(localName))
                   bean.setBeanClass(attrs.getValue(i));
                else if ("mode".equals(localName))
-                  bean.setMode(new ControllerMode(attrs.getValue(i)));
+                  bean.setMode(ControllerMode.getInstance(attrs.getValue(i)));
             }
          }
       });
@@ -1062,7 +1062,7 @@
                else if ("type".equals(localName))
                   injection.setInjectionType(AutowireType.getInstance(attrs.getValue(i)));
                else if ("option".equals(localName))
-                  injection.setInjectionOption(InjectionOption.getInstance(attrs.getValue(i)));
+                  injection.setInjectionOption(InjectOption.getInstance(attrs.getValue(i)));
                else if ("fromContext".equals(localName))
                   injection.setFromContext(FromContext.getInstance(attrs.getValue(i)));
             }

Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/DeploymentHandler.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/DeploymentHandler.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/DeploymentHandler.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -57,7 +57,7 @@
          else if ("scoped".equals(localName))                       
             deployment.setScoped(Boolean.parseBoolean(attrs.getValue(i)));
          else if ("mode".equals(localName))
-            deployment.setMode(new ControllerMode(attrs.getValue(i)));
+            deployment.setMode(ControllerMode.getInstance(attrs.getValue(i)));
       }
    }
 

Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/InjectionHandler.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/InjectionHandler.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/deployment/xml/InjectionHandler.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -9,9 +9,9 @@
 
 import org.jboss.beans.metadata.plugins.AbstractInjectionValueMetaData;
 import org.jboss.beans.metadata.plugins.AbstractPropertyMetaData;
-import org.jboss.beans.metadata.plugins.InjectionOption;
-import org.jboss.beans.metadata.plugins.FromContext;
-import org.jboss.beans.metadata.spi.AutowireType;
+import org.jboss.beans.metadata.api.enums.InjectOption;
+import org.jboss.beans.metadata.api.enums.FromContext;
+import org.jboss.beans.metadata.api.enums.AutowireType;
 import org.jboss.dependency.spi.ControllerState;
 import org.jboss.xb.binding.sunday.unmarshalling.DefaultElementHandler;
 import org.jboss.xb.binding.sunday.unmarshalling.ElementBinding;
@@ -56,7 +56,7 @@
          else if ("type".equals(localName))
             injection.setInjectionType(AutowireType.getInstance(attrs.getValue(i)));
          else if ("option".equals(localName))
-            injection.setInjectionOption(InjectionOption.getInstance(attrs.getValue(i)));
+            injection.setInjectionOption(InjectOption.getInstance(attrs.getValue(i)));
          else if ("fromContext".equals(localName))
             injection.setFromContext(FromContext.getInstance(attrs.getValue(i)));
       }

Modified: projects/microcontainer/trunk/kernel/src/resources/tests/org/jboss/test/kernel/dependency/test/FromContextXMLTestCase0.xml
===================================================================
--- projects/microcontainer/trunk/kernel/src/resources/tests/org/jboss/test/kernel/dependency/test/FromContextXMLTestCase0.xml	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/resources/tests/org/jboss/test/kernel/dependency/test/FromContextXMLTestCase0.xml	2008-03-07 17:43:07 UTC (rev 70559)
@@ -29,10 +29,6 @@
       <property name="scopeKey"><inject fromContext="scope"/></property>
    </bean>
 
-   <bean name="dynamic" class="org.jboss.test.kernel.deployment.support.NameAwareBean">
-      <property name="dynamic"><inject fromContext="getBeanMetaData"/></property>
-   </bean>
-
    <bean name="other" class="org.jboss.test.kernel.deployment.support.NameAwareBean">
       <property name="name"><inject bean="set_name_bean" fromContext="name"/></property>
    </bean>

Modified: projects/microcontainer/trunk/kernel/src/resources/tests/org/jboss/test/kernel/deployment/test/FromContextUnsupportedTestCase.xml
===================================================================
--- projects/microcontainer/trunk/kernel/src/resources/tests/org/jboss/test/kernel/deployment/test/FromContextUnsupportedTestCase.xml	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/resources/tests/org/jboss/test/kernel/deployment/test/FromContextUnsupportedTestCase.xml	2008-03-07 17:43:07 UTC (rev 70559)
@@ -21,10 +21,6 @@
       <property name="scopeKey"><inject fromContext="scope"/></property>
    </bean>
 
-   <bean name="dynamic" class="org.jboss.test.kernel.deployment.support.NameAwareBean">
-      <property name="dynamic"><inject fromContext="getBeanMetaData"/></property>
-   </bean>
-
    <bean name="context" class="org.jboss.test.kernel.deployment.support.NameAwareBean">
       <property name="context"><inject fromContext="context"/></property>
    </bean>

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/support/AnnotatedSimpleBeanInstallsAware.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/support/AnnotatedSimpleBeanInstallsAware.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/support/AnnotatedSimpleBeanInstallsAware.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -21,7 +21,7 @@
 */
 package org.jboss.test.kernel.dependency.support;
 
-import org.jboss.beans.metadata.api.annotations.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContext;
 import org.jboss.beans.metadata.api.annotations.Inject;
 import org.jboss.beans.metadata.api.annotations.InstallMethod;
 import org.jboss.beans.metadata.api.annotations.UninstallMethod;
@@ -71,7 +71,7 @@
    }
 
    @UninstallMethod(whenRequired = "Create")
-   public void removeCreate(@Inject(fromContext=FromContext.STATE) ControllerState state)
+   public void removeCreate(@Inject(fromContext= FromContext.STATE) ControllerState state)
    {
       states.remove(state);
    }

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/support/AnnotatedSimpleBeanWithKernelControllerContextAware.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/support/AnnotatedSimpleBeanWithKernelControllerContextAware.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/support/AnnotatedSimpleBeanWithKernelControllerContextAware.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -23,7 +23,7 @@
 
 import org.jboss.kernel.spi.dependency.KernelControllerContext;
 import org.jboss.beans.metadata.api.annotations.Inject;
-import org.jboss.beans.metadata.api.annotations.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContext;
 
 /**
  * A simple bean that is kernel controllercontext aware

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/support/ExternalInstallWithStateSimpleBeanImpl.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/support/ExternalInstallWithStateSimpleBeanImpl.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/support/ExternalInstallWithStateSimpleBeanImpl.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -26,7 +26,7 @@
 import org.jboss.beans.metadata.api.annotations.ExternalInstall;
 import org.jboss.beans.metadata.api.annotations.ExternalInstalls;
 import org.jboss.beans.metadata.api.annotations.ExternalUninstalls;
-import org.jboss.beans.metadata.api.annotations.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContext;
 import org.jboss.beans.metadata.api.annotations.Inject;
 import org.jboss.beans.metadata.api.annotations.Value;
 

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/test/FromContextAnnotationTestCase.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/test/FromContextAnnotationTestCase.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/test/FromContextAnnotationTestCase.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -26,7 +26,7 @@
 import junit.framework.Test;
 import org.jboss.beans.metadata.plugins.AbstractInjectionValueMetaData;
 import org.jboss.beans.metadata.plugins.AbstractPropertyMetaData;
-import org.jboss.beans.metadata.plugins.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContext;
 import org.jboss.beans.metadata.plugins.builder.BeanMetaDataBuilderFactory;
 import org.jboss.beans.metadata.plugins.factory.GenericBeanFactoryMetaData;
 import org.jboss.beans.metadata.spi.BeanMetaData;
@@ -82,11 +82,6 @@
       BeanMetaDataBuilder b5 = BeanMetaDataBuilderFactory.createBuilder("beaninfo", BeanInfoAwareBean.class.getName());
       BeanMetaDataBuilder b6 = BeanMetaDataBuilderFactory.createBuilder("scopekey", ScopeAwareBean.class.getName());
 
-      BeanMetaDataBuilder b7 = BeanMetaDataBuilderFactory.createBuilder("dynamic", NameAwareBean.class.getName());
-      AbstractInjectionValueMetaData v7 = new AbstractInjectionValueMetaData();
-      v7.setFromContext(FromContext.getInstance("getBeanMetaData"));
-      b7.addPropertyMetaData("dynamic", v7);
-
       BeanMetaDataBuilder b8 = BeanMetaDataBuilderFactory.createBuilder("other", OtherAwareBean.class.getName());
       BeanMetaDataBuilder b9 = BeanMetaDataBuilderFactory.createBuilder("context", ContextAwareBean.class.getName());
       BeanMetaDataBuilder b10 = BeanMetaDataBuilderFactory.createBuilder("state", StateAwareBean.class.getName());
@@ -99,7 +94,6 @@
                b4.getBeanMetaData(),
                b5.getBeanMetaData(),
                b6.getBeanMetaData(),
-               b7.getBeanMetaData(),
                b8.getBeanMetaData(),
                b9.getBeanMetaData(),
                b10.getBeanMetaData(),

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/test/FromContextTestCase.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/test/FromContextTestCase.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/test/FromContextTestCase.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -27,7 +27,7 @@
 
 import junit.framework.Test;
 import org.jboss.beans.metadata.plugins.AbstractInjectionValueMetaData;
-import org.jboss.beans.metadata.plugins.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContext;
 import org.jboss.beans.metadata.plugins.AbstractPropertyMetaData;
 import org.jboss.beans.metadata.plugins.factory.GenericBeanFactoryMetaData;
 import org.jboss.beans.metadata.plugins.builder.BeanMetaDataBuilderFactory;
@@ -108,20 +108,15 @@
       assertNotNull(scopekey);
       assertNotNull(scopekey.getScopeKey());
 
-      NameAwareBean dynamic = (NameAwareBean)getBean(6, "dynamic");
-      assertNotNull(dynamic);
-      assertNotNull(dynamic.getDynamic());
-      assertInstanceOf(dynamic.getDynamic(), BeanMetaData.class);
-
-      NameAwareBean other = (NameAwareBean)getBean(7, "other");
+      NameAwareBean other = (NameAwareBean)getBean(6, "other");
       assertNotNull(other);
       assertEquals("set_name_bean", other.getName());
 
-      NameAwareBean context = (NameAwareBean)getBean(8, "context");
+      NameAwareBean context = (NameAwareBean)getBean(7, "context");
       assertNotNull(context);
       assertNotNull(context.getContext());
 
-      NameAwareBean state = (NameAwareBean)getBean(9, "state");
+      NameAwareBean state = (NameAwareBean)getBean(8, "state");
       assertNotNull(state);
       assertEquals(ControllerState.INSTANTIATED, state.getState());
    }
@@ -170,11 +165,6 @@
       v6.setFromContext(FromContext.SCOPE);
       b6.addPropertyMetaData("scopeKey", v6);
 
-      BeanMetaDataBuilder b7 = BeanMetaDataBuilderFactory.createBuilder("dynamic", NameAwareBean.class.getName());
-      AbstractInjectionValueMetaData v7 = new AbstractInjectionValueMetaData();
-      v7.setFromContext(FromContext.getInstance("getBeanMetaData"));
-      b7.addPropertyMetaData("dynamic", v7);
-
       BeanMetaDataBuilder b8 = BeanMetaDataBuilderFactory.createBuilder("other", NameAwareBean.class.getName());
       AbstractInjectionValueMetaData v8 = new AbstractInjectionValueMetaData();
       v8.setValue("set_name_bean");
@@ -199,7 +189,6 @@
                b4.getBeanMetaData(),
                b5.getBeanMetaData(),
                b6.getBeanMetaData(),
-               b7.getBeanMetaData(),
                b8.getBeanMetaData(),
                b9.getBeanMetaData(),
                b10.getBeanMetaData(),

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/test/InstallDependencyTestCase.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/test/InstallDependencyTestCase.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/test/InstallDependencyTestCase.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -33,7 +33,7 @@
 import org.jboss.beans.metadata.plugins.AbstractParameterMetaData;
 import org.jboss.beans.metadata.plugins.ThisValueMetaData;
 import org.jboss.beans.metadata.plugins.AbstractInjectionValueMetaData;
-import org.jboss.beans.metadata.plugins.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContext;
 import org.jboss.beans.metadata.spi.BeanMetaData;
 import org.jboss.beans.metadata.spi.InstallMetaData;
 import org.jboss.beans.metadata.spi.ParameterMetaData;

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/test/InstallSelfDependencyTestCase.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/test/InstallSelfDependencyTestCase.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/dependency/test/InstallSelfDependencyTestCase.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -32,7 +32,7 @@
 import org.jboss.beans.metadata.plugins.AbstractInstallMetaData;
 import org.jboss.beans.metadata.plugins.AbstractParameterMetaData;
 import org.jboss.beans.metadata.plugins.AbstractInjectionValueMetaData;
-import org.jboss.beans.metadata.plugins.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContext;
 import org.jboss.beans.metadata.spi.BeanMetaData;
 import org.jboss.beans.metadata.spi.InstallMetaData;
 import org.jboss.beans.metadata.spi.ParameterMetaData;

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/AliasesAwareBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/AliasesAwareBean.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/AliasesAwareBean.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -24,7 +24,7 @@
 import java.util.Set;
 
 import org.jboss.beans.metadata.api.annotations.Inject;
-import org.jboss.beans.metadata.api.annotations.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContext;
 import org.jboss.beans.metadata.api.annotations.Aliases;
 
 /**

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/BeanInfoAwareBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/BeanInfoAwareBean.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/BeanInfoAwareBean.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -23,7 +23,7 @@
 
 import org.jboss.beans.info.spi.BeanInfo;
 import org.jboss.beans.metadata.api.annotations.Inject;
-import org.jboss.beans.metadata.api.annotations.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContext;
 
 /**
  * A simple bean with awareness

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/BeanNameAwareBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/BeanNameAwareBean.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/BeanNameAwareBean.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -22,7 +22,7 @@
 package org.jboss.test.kernel.deployment.support;
 
 import org.jboss.beans.metadata.api.annotations.Inject;
-import org.jboss.beans.metadata.api.annotations.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContext;
 
 /**
  * A simple bean with awareness

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/ContextAwareBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/ContextAwareBean.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/ContextAwareBean.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -23,7 +23,7 @@
 
 import org.jboss.dependency.spi.ControllerContext;
 import org.jboss.beans.metadata.api.annotations.Inject;
-import org.jboss.beans.metadata.api.annotations.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContext;
 
 /**
  * A simple bean with awareness

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/MetaDataAwareBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/MetaDataAwareBean.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/MetaDataAwareBean.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -23,7 +23,7 @@
 
 import org.jboss.metadata.spi.MetaData;
 import org.jboss.beans.metadata.api.annotations.Inject;
-import org.jboss.beans.metadata.api.annotations.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContext;
 
 /**
  * A simple bean with awareness

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/OtherAwareBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/OtherAwareBean.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/OtherAwareBean.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -22,7 +22,7 @@
 package org.jboss.test.kernel.deployment.support;
 
 import org.jboss.beans.metadata.api.annotations.Inject;
-import org.jboss.beans.metadata.api.annotations.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContext;
 
 /**
  * A simple bean with awareness

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/ScopeAwareBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/ScopeAwareBean.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/ScopeAwareBean.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -23,7 +23,7 @@
 
 import org.jboss.metadata.spi.scope.ScopeKey;
 import org.jboss.beans.metadata.api.annotations.Inject;
-import org.jboss.beans.metadata.api.annotations.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContext;
 
 /**
  * A simple bean with awareness

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/StateAwareBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/StateAwareBean.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/support/StateAwareBean.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -21,7 +21,7 @@
 */
 package org.jboss.test.kernel.deployment.support;
 
-import org.jboss.beans.metadata.api.annotations.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContext;
 import org.jboss.beans.metadata.api.annotations.Inject;
 import org.jboss.dependency.spi.ControllerState;
 

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/test/FromContextUnsupportedTestCase.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/test/FromContextUnsupportedTestCase.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/test/FromContextUnsupportedTestCase.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -21,22 +21,21 @@
 */
 package org.jboss.test.kernel.deployment.test;
 
-import java.util.Set;
 import java.util.HashSet;
+import java.util.Set;
 
 import junit.framework.Test;
 import org.jboss.beans.info.spi.BeanInfo;
-import org.jboss.beans.metadata.spi.BeanMetaData;
+import org.jboss.dependency.plugins.AbstractDependencyItem;
+import org.jboss.dependency.spi.ControllerContext;
+import org.jboss.dependency.spi.ControllerMode;
+import org.jboss.dependency.spi.DependencyInfo;
+import org.jboss.kernel.spi.dependency.KernelControllerContext;
 import org.jboss.metadata.spi.MetaData;
 import org.jboss.metadata.spi.MutableMetaData;
 import org.jboss.metadata.spi.scope.ScopeKey;
-import org.jboss.test.kernel.deployment.support.NameAwareBean;
-import org.jboss.kernel.spi.dependency.KernelControllerContext;
 import org.jboss.reflect.spi.MethodInfo;
-import org.jboss.dependency.spi.ControllerContext;
-import org.jboss.dependency.spi.ControllerMode;
-import org.jboss.dependency.spi.DependencyInfo;
-import org.jboss.dependency.plugins.AbstractDependencyItem;
+import org.jboss.test.kernel.deployment.support.NameAwareBean;
 
 /**
  * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
@@ -100,21 +99,6 @@
       KernelControllerContext context = getControllerContext("scopekey");
       assertEquals(key, context.getScopeInfo().getScope());
 
-      NameAwareBean dynamic = (NameAwareBean)getBean("dynamic");
-      assertNotNull(dynamic);
-      Object dyna = dynamic.getDynamic();
-      assertNotNull(dyna);
-      assertInstanceOf(dyna, BeanMetaData.class);
-      BeanMetaData bmd = (BeanMetaData)dyna;
-      try
-      {
-         bmd.setName("failedName");   
-      }
-      catch(Throwable t)
-      {
-         assertUnsupported(t);
-      }
-
       NameAwareBean ctx = (NameAwareBean)getBean("context");
       assertNotNull(ctx);
       ControllerContext realCtx = ctx.getContext();

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/xml/test/BeanTestCase.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/xml/test/BeanTestCase.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/xml/test/BeanTestCase.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -26,7 +26,7 @@
 
 import junit.framework.Test;
 import org.jboss.beans.metadata.plugins.AbstractBeanMetaData;
-import org.jboss.beans.metadata.spi.AutowireType;
+import org.jboss.beans.metadata.api.enums.AutowireType;
 import org.jboss.dependency.spi.ControllerMode;
 
 /**

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/xml/test/InjectionTestCase.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/xml/test/InjectionTestCase.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/deployment/xml/test/InjectionTestCase.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -27,7 +27,7 @@
 
 import org.jboss.beans.metadata.plugins.AbstractBeanMetaData;
 import org.jboss.beans.metadata.plugins.AbstractDependencyValueMetaData;
-import org.jboss.beans.metadata.plugins.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContext;
 import org.jboss.beans.metadata.plugins.AbstractInjectionValueMetaData;
 import org.jboss.beans.metadata.spi.PropertyMetaData;
 import org.jboss.beans.metadata.spi.ValueMetaData;

Modified: projects/microcontainer/trunk/reliance-rules/src/main/org/jboss/reliance/drools/core/RuleBaseBean.java
===================================================================
--- projects/microcontainer/trunk/reliance-rules/src/main/org/jboss/reliance/drools/core/RuleBaseBean.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/reliance-rules/src/main/org/jboss/reliance/drools/core/RuleBaseBean.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -31,7 +31,7 @@
 import org.drools.StatelessSession;
 import org.drools.rule.Package;
 import org.jboss.beans.metadata.api.annotations.Constructor;
-import org.jboss.beans.metadata.api.annotations.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContext;
 import org.jboss.beans.metadata.api.annotations.Inject;
 import org.jboss.beans.metadata.api.annotations.Install;
 import org.jboss.beans.metadata.api.annotations.Uninstall;

Modified: projects/microcontainer/trunk/spring-int/src/main/org/jboss/spring/annotations/SpringBeanAnnotationPlugin.java
===================================================================
--- projects/microcontainer/trunk/spring-int/src/main/org/jboss/spring/annotations/SpringBeanAnnotationPlugin.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/spring-int/src/main/org/jboss/spring/annotations/SpringBeanAnnotationPlugin.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -29,7 +29,7 @@
 import org.jboss.beans.metadata.plugins.AbstractBeanMetaData;
 import org.jboss.beans.metadata.plugins.AbstractInjectionValueMetaData;
 import org.jboss.beans.metadata.plugins.AbstractPropertyMetaData;
-import org.jboss.beans.metadata.plugins.FromContext;
+import org.jboss.beans.metadata.api.enums.FromContext;
 import org.jboss.beans.metadata.spi.BeanMetaData;
 import org.jboss.beans.metadata.spi.MetaDataVisitorNode;
 import org.jboss.beans.metadata.spi.PropertyMetaData;

Modified: projects/microcontainer/trunk/spring-int/src/main/org/jboss/spring/deployment/xml/SpringBeanHandler.java
===================================================================
--- projects/microcontainer/trunk/spring-int/src/main/org/jboss/spring/deployment/xml/SpringBeanHandler.java	2008-03-07 17:20:06 UTC (rev 70558)
+++ projects/microcontainer/trunk/spring-int/src/main/org/jboss/spring/deployment/xml/SpringBeanHandler.java	2008-03-07 17:43:07 UTC (rev 70559)
@@ -36,7 +36,7 @@
 import org.jboss.beans.metadata.plugins.AbstractDependencyValueMetaData;
 import org.jboss.beans.metadata.plugins.AbstractLifecycleMetaData;
 import org.jboss.beans.metadata.spi.AnnotationMetaData;
-import org.jboss.beans.metadata.spi.AutowireType;
+import org.jboss.beans.metadata.api.enums.AutowireType;
 import org.jboss.beans.metadata.spi.ConstructorMetaData;
 import org.jboss.beans.metadata.spi.DemandMetaData;
 import org.jboss.beans.metadata.spi.ParameterMetaData;




More information about the jboss-cvs-commits mailing list