[jboss-cvs] JBossAS SVN: r64350 - in projects/microcontainer/trunk/kernel/src/main/org/jboss: kernel/plugins/annotations and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Mon Jul 30 10:54:00 EDT 2007
Author: alesj
Date: 2007-07-30 10:54:00 -0400 (Mon, 30 Jul 2007)
New Revision: 64350
Modified:
projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/ArrayValue.java
projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/CollectionValue.java
projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/Inject.java
projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/ListValue.java
projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/MapValue.java
projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/SetValue.java
projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/StringValue.java
projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/ValueFactory.java
projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/annotations/BasicBeanAnnotationAdapter.java
projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/annotations/ConstructorValueAnnotationPlugin.java
Log:
Eventually set ElementType.TYPE on Annotation at Value plugins - better fit.
Currently disabled, since they don't really bring any value (need reseting BeanInfo to work - see ConstructorValueAnnotationPlugin).
Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/ArrayValue.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/ArrayValue.java 2007-07-30 14:27:32 UTC (rev 64349)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/ArrayValue.java 2007-07-30 14:54:00 UTC (rev 64350)
@@ -30,7 +30,7 @@
* @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
*/
@Retention(RetentionPolicy.RUNTIME)
- at Target({ElementType.METHOD, ElementType.PARAMETER, ElementType.CONSTRUCTOR})
+ at Target({ElementType.METHOD, ElementType.PARAMETER})
public @interface ArrayValue
{
String clazz() default "";
Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/CollectionValue.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/CollectionValue.java 2007-07-30 14:27:32 UTC (rev 64349)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/CollectionValue.java 2007-07-30 14:54:00 UTC (rev 64350)
@@ -30,7 +30,7 @@
* @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
*/
@Retention(RetentionPolicy.RUNTIME)
- at Target({ElementType.METHOD, ElementType.PARAMETER, ElementType.CONSTRUCTOR})
+ at Target({ElementType.METHOD, ElementType.PARAMETER})
public @interface CollectionValue
{
String clazz() default "";
Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/Inject.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/Inject.java 2007-07-30 14:27:32 UTC (rev 64349)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/Inject.java 2007-07-30 14:54:00 UTC (rev 64350)
@@ -34,7 +34,7 @@
* @author <a href="mailto:ales.justin at genera-lynx.com">Ales Justin</a>
*/
@Retention(RetentionPolicy.RUNTIME)
- at Target({ElementType.METHOD, ElementType.PARAMETER, ElementType.CONSTRUCTOR})
+ at Target({ElementType.METHOD, ElementType.PARAMETER})
public @interface Inject
{
/**
Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/ListValue.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/ListValue.java 2007-07-30 14:27:32 UTC (rev 64349)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/ListValue.java 2007-07-30 14:54:00 UTC (rev 64350)
@@ -30,7 +30,7 @@
* @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
*/
@Retention(RetentionPolicy.RUNTIME)
- at Target({ElementType.METHOD, ElementType.PARAMETER, ElementType.CONSTRUCTOR})
+ at Target({ElementType.METHOD, ElementType.PARAMETER})
public @interface ListValue
{
String clazz() default "";
Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/MapValue.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/MapValue.java 2007-07-30 14:27:32 UTC (rev 64349)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/MapValue.java 2007-07-30 14:54:00 UTC (rev 64350)
@@ -30,7 +30,7 @@
* @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
*/
@Retention(RetentionPolicy.RUNTIME)
- at Target({ElementType.METHOD, ElementType.PARAMETER, ElementType.CONSTRUCTOR})
+ at Target({ElementType.METHOD, ElementType.PARAMETER})
public @interface MapValue
{
String clazz() default "";
Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/SetValue.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/SetValue.java 2007-07-30 14:27:32 UTC (rev 64349)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/SetValue.java 2007-07-30 14:54:00 UTC (rev 64350)
@@ -30,7 +30,7 @@
* @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
*/
@Retention(RetentionPolicy.RUNTIME)
- at Target({ElementType.METHOD, ElementType.PARAMETER, ElementType.CONSTRUCTOR})
+ at Target({ElementType.METHOD, ElementType.PARAMETER})
public @interface SetValue
{
String clazz() default "";
Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/StringValue.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/StringValue.java 2007-07-30 14:27:32 UTC (rev 64349)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/StringValue.java 2007-07-30 14:54:00 UTC (rev 64350)
@@ -30,7 +30,7 @@
* @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
*/
@Retention(RetentionPolicy.RUNTIME)
- at Target({ElementType.METHOD, ElementType.PARAMETER, ElementType.CONSTRUCTOR})
+ at Target({ElementType.METHOD, ElementType.PARAMETER})
public @interface StringValue
{
String value();
Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/ValueFactory.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/ValueFactory.java 2007-07-30 14:27:32 UTC (rev 64349)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/beans/metadata/plugins/annotations/ValueFactory.java 2007-07-30 14:54:00 UTC (rev 64350)
@@ -30,7 +30,7 @@
* @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
*/
@Retention(RetentionPolicy.RUNTIME)
- at Target({ElementType.METHOD, ElementType.PARAMETER, ElementType.CONSTRUCTOR})
+ at Target({ElementType.METHOD, ElementType.PARAMETER})
public @interface ValueFactory
{
String bean();
Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/annotations/BasicBeanAnnotationAdapter.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/annotations/BasicBeanAnnotationAdapter.java 2007-07-30 14:27:32 UTC (rev 64349)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/annotations/BasicBeanAnnotationAdapter.java 2007-07-30 14:54:00 UTC (rev 64350)
@@ -80,8 +80,7 @@
addAnnotationPlugin(new DemandsAnnotationPlugin());
addAnnotationPlugin(new DependsAnnotationPlugin());
addAnnotationPlugin(new SupplysAnnotationPlugin());
- // constructor
- addAnnotationPlugin(new ConstructorParameterAnnotationPlugin(adapters));
+/*
addAnnotationPlugin(new InjectConstructorValueAnnotationPlugin());
addAnnotationPlugin(new StringValueConstructorValueAnnotationPlugin());
addAnnotationPlugin(new ValueFactoryConstructorValueAnnotationPlugin());
@@ -90,6 +89,9 @@
addAnnotationPlugin(new SetConstructorValueAnnotationPlugin());
addAnnotationPlugin(new ArrayConstructorValueAnnotationPlugin());
addAnnotationPlugin(new MapConstructorValueAnnotationPlugin());
+*/
+ // constructor
+ addAnnotationPlugin(new ConstructorParameterAnnotationPlugin(adapters));
// property
addAnnotationPlugin(InjectAnnotationPlugin.INSTANCE);
addAnnotationPlugin(StringValueAnnotationPlugin.INSTANCE);
Modified: projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/annotations/ConstructorValueAnnotationPlugin.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/annotations/ConstructorValueAnnotationPlugin.java 2007-07-30 14:27:32 UTC (rev 64349)
+++ projects/microcontainer/trunk/kernel/src/main/org/jboss/kernel/plugins/annotations/ConstructorValueAnnotationPlugin.java 2007-07-30 14:54:00 UTC (rev 64350)
@@ -23,31 +23,37 @@
import java.lang.annotation.Annotation;
-import org.jboss.reflect.spi.ConstructorInfo;
+import org.jboss.beans.metadata.plugins.AbstractBeanMetaData;
+import org.jboss.beans.metadata.plugins.AbstractConstructorMetaData;
import org.jboss.beans.metadata.spi.BeanMetaData;
-import org.jboss.beans.metadata.plugins.AbstractConstructorMetaData;
-import org.jboss.beans.metadata.plugins.AbstractBeanMetaData;
+import org.jboss.reflect.spi.ClassInfo;
+import org.jboss.kernel.spi.dependency.KernelControllerContext;
/**
* @param <C> annotation type
* @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
*/
-public abstract class ConstructorValueAnnotationPlugin<C extends Annotation> extends ConstructorAnnotationPlugin<C> implements Annotation2ValueMetaDataAdapter<C>
+public abstract class ConstructorValueAnnotationPlugin<C extends Annotation> extends ClassAnnotationPlugin<C> implements Annotation2ValueMetaDataAdapter<C>
{
protected ConstructorValueAnnotationPlugin(Class<C> annotation)
{
super(annotation);
}
- protected boolean isMetaDataAlreadyPresent(ConstructorInfo info, C annotation, BeanMetaData beanMetaData)
+ protected boolean isMetaDataAlreadyPresent(ClassInfo info, C annotation, BeanMetaData beanMetaData)
{
return beanMetaData.getConstructor() != null;
}
- protected void internalApplyAnnotation(ConstructorInfo info, C annotation, BeanMetaData beanMetaData) throws Throwable
+ protected void internalApplyAnnotation(ClassInfo info, C annotation, KernelControllerContext context) throws Throwable
{
+ AbstractBeanMetaData beanMetaData = (AbstractBeanMetaData)context.getBeanMetaData();
AbstractConstructorMetaData constructor = new AbstractConstructorMetaData();
constructor.setValue(createValueMetaData(annotation));
- ((AbstractBeanMetaData)beanMetaData).setConstructor(constructor);
+ beanMetaData.setConstructor(constructor);
+ // reset, if present
+ beanMetaData.setBean(null);
+ context.setBeanInfo(null);
+ executeVisit(context, constructor);
}
}
More information about the jboss-cvs-commits
mailing list