[webbeans-commits] Webbeans SVN: r2738 - in ri/trunk: impl/src/main/java/org/jboss/webbeans and 6 other directories.

webbeans-commits at lists.jboss.org webbeans-commits at lists.jboss.org
Mon Jun 1 05:35:12 EDT 2009


Author: dallen6
Date: 2009-06-01 05:35:12 -0400 (Mon, 01 Jun 2009)
New Revision: 2738

Added:
   ri/trunk/impl/src/main/java/org/jboss/webbeans/literal/AnyLiteral.java
Removed:
   ri/trunk/api/src/main/java/javax/event/Fires.java
   ri/trunk/impl/src/main/java/org/jboss/webbeans/literal/FiresLiteral.java
Modified:
   ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanValidator.java
   ri/trunk/impl/src/main/java/org/jboss/webbeans/ManagerImpl.java
   ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/AbstractBean.java
   ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/DisposalMethodBean.java
   ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/standard/AbstractStandardBean.java
   ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/standard/EventBean.java
   ri/trunk/impl/src/main/java/org/jboss/webbeans/event/EventImpl.java
   ri/trunk/impl/src/main/java/org/jboss/webbeans/introspector/AnnotatedMethod.java
   ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/event/SimpleEventTest.java
Log:
Removed @Fires annotation and added/implemented use of @Any

Deleted: ri/trunk/api/src/main/java/javax/event/Fires.java
===================================================================
--- ri/trunk/api/src/main/java/javax/event/Fires.java	2009-06-01 09:15:59 UTC (rev 2737)
+++ ri/trunk/api/src/main/java/javax/event/Fires.java	2009-06-01 09:35:12 UTC (rev 2738)
@@ -1,45 +0,0 @@
-/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, Red Hat Middleware LLC, and individual contributors
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-* http://www.apache.org/licenses/LICENSE-2.0
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,  
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-package javax.event;
-
-import static java.lang.annotation.ElementType.FIELD;
-import static java.lang.annotation.ElementType.METHOD;
-import static java.lang.annotation.ElementType.PARAMETER;
-import static java.lang.annotation.ElementType.TYPE;
-import static java.lang.annotation.RetentionPolicy.RUNTIME;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.Retention;
-import java.lang.annotation.Target;
-
-import javax.enterprise.inject.BindingType;
-
-/**
- * Annotates a variable to be injected with an Event object that can be fired and 
- * observed by observer methods
- * 
- * @author David Allen
- * @author Gavin King
- */
-
- at BindingType
- at Retention(RUNTIME)
- at Target( { TYPE, METHOD, FIELD, PARAMETER })
- at Documented
-public @interface Fires
-{
-}

Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanValidator.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanValidator.java	2009-06-01 09:15:59 UTC (rev 2737)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/BeanValidator.java	2009-06-01 09:35:12 UTC (rev 2738)
@@ -35,7 +35,7 @@
 import javax.enterprise.inject.spi.Bean;
 import javax.enterprise.inject.spi.InjectionPoint;
 import javax.event.Event;
-import javax.event.Fires;
+import javax.enterprise.inject.Any;
 import javax.inject.DefinitionException;
 import javax.inject.InconsistentSpecializationException;
 import javax.inject.NullableDependencyException;
@@ -103,7 +103,7 @@
                }
             }
             checkFacadeInjectionPoint(injectionPoint, Obtains.class, Instance.class);
-            checkFacadeInjectionPoint(injectionPoint, Fires.class, Event.class);
+            checkFacadeInjectionPoint(injectionPoint, Any.class, Event.class);
             Annotation[] bindings = injectionPoint.getBindings().toArray(new Annotation[0]);
             AnnotatedItem<?, ?> annotatedItem = ResolvableAnnotatedClass.of(injectionPoint.getType(), bindings);
             Set<?> resolvedBeans = manager.resolveByType(annotatedItem, injectionPoint, bindings);

Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/ManagerImpl.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/ManagerImpl.java	2009-06-01 09:15:59 UTC (rev 2737)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/ManagerImpl.java	2009-06-01 09:35:12 UTC (rev 2738)
@@ -60,8 +60,6 @@
 import javax.inject.DeploymentException;
 import javax.inject.DuplicateBindingTypeException;
 
-import org.jboss.webbeans.bean.AbstractDecorator;
-import org.jboss.webbeans.bean.AbstractInterceptor;
 import org.jboss.webbeans.bean.DisposalMethodBean;
 import org.jboss.webbeans.bean.EnterpriseBean;
 import org.jboss.webbeans.bean.NewEnterpriseBean;

Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/AbstractBean.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/AbstractBean.java	2009-06-01 09:15:59 UTC (rev 2737)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/AbstractBean.java	2009-06-01 09:35:12 UTC (rev 2738)
@@ -42,6 +42,7 @@
 import org.jboss.webbeans.introspector.AnnotatedField;
 import org.jboss.webbeans.introspector.AnnotatedItem;
 import org.jboss.webbeans.introspector.AnnotatedParameter;
+import org.jboss.webbeans.literal.AnyLiteral;
 import org.jboss.webbeans.literal.CurrentLiteral;
 import org.jboss.webbeans.log.LogProvider;
 import org.jboss.webbeans.log.Logging;
@@ -60,6 +61,8 @@
 public abstract class AbstractBean<T, E> extends RIBean<T>
 {
 
+   private static final Annotation ANY_BINDING = new AnyLiteral();
+
    @SuppressWarnings("unchecked")
    private static Set<Class<?>> STANDARD_WEB_BEAN_CLASSES = new HashSet<Class<?>>(Arrays.asList(Event.class, ManagerImpl.class, ConversationImpl.class));
 
@@ -176,6 +179,7 @@
    {
       this.bindings = new HashSet<Annotation>();
       this.bindings.addAll(getAnnotatedItem().getMetaAnnotations(BindingType.class));
+      initDefaultBindings();
    }
 
    protected void initDefaultBindings()
@@ -184,9 +188,14 @@
       {
          log.trace("Adding default @Current binding type");
          this.bindings.add(new CurrentLiteral());
+         this.bindings.add(ANY_BINDING);
       }
       else
       {
+         if (!bindings.contains(ANY_BINDING))
+         {
+            bindings.add(ANY_BINDING);
+         }
          if (log.isTraceEnabled())
             log.trace("Using binding types " + bindings + " specified by annotations");
       }

Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/DisposalMethodBean.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/DisposalMethodBean.java	2009-06-01 09:15:59 UTC (rev 2737)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/DisposalMethodBean.java	2009-06-01 09:35:12 UTC (rev 2738)
@@ -48,6 +48,13 @@
 public class DisposalMethodBean<T> extends AbstractBean<T, Method>
 {
 
+   private static final LogProvider log = Logging.getLogProvider(AbstractProducerBean.class);
+   protected AbstractClassBean<?> declaringBean;
+   private DisposalMethodBean<?> specializedBean;
+   protected MethodInjectionPoint<T> disposalMethodInjectionPoint;
+   protected Set<AnnotatedInjectionPoint<?, ?>> disposalInjectionPoints;
+   private final String id;
+
    protected DisposalMethodBean(ManagerImpl manager, AnnotatedMethod<T> disposalMethod, AbstractClassBean<?> declaringBean)
    {
       super(manager);
@@ -55,19 +62,12 @@
       this.declaringBean = declaringBean;
       checkDisposalMethod();
       initInjectionPoints();
+      initBindings();
       initType();
       initTypes();
       this.id = createId("DisposalMethod-" + declaringBean.getName() + "-" + disposalMethod.getSignature().toString());
 
    }
-
-   private static final LogProvider log = Logging.getLogProvider(AbstractProducerBean.class);
-   protected AbstractClassBean<?> declaringBean;
-   private DisposalMethodBean<?> specializedBean;
-   protected MethodInjectionPoint<T> disposalMethodInjectionPoint;
-   protected Set<AnnotatedInjectionPoint<?, ?>> disposalInjectionPoints;
-   private final String id;
-
    
    @SuppressWarnings("unchecked")
    protected void initType()
@@ -107,10 +107,12 @@
    }
 
    @Override
-   public Set<Annotation> getBindings()
+   protected void initBindings()
    {
       // At least 1 parameter exists, already checked in constructor
-      return disposalMethodInjectionPoint.getParameters().get(0).getBindings();
+      this.bindings = new HashSet<Annotation>();
+      this.bindings.addAll(disposalMethodInjectionPoint.getParameters().get(0).getBindings());
+      initDefaultBindings();
    }
 
    @Override

Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/standard/AbstractStandardBean.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/standard/AbstractStandardBean.java	2009-06-01 09:15:59 UTC (rev 2737)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/standard/AbstractStandardBean.java	2009-06-01 09:35:12 UTC (rev 2738)
@@ -29,12 +29,13 @@
 import org.jboss.webbeans.bean.RIBean;
 import org.jboss.webbeans.bootstrap.BeanDeployerEnvironment;
 import org.jboss.webbeans.injection.AnnotatedInjectionPoint;
+import org.jboss.webbeans.literal.AnyLiteral;
 import org.jboss.webbeans.literal.CurrentLiteral;
 
 public abstract class AbstractStandardBean<T> extends RIBean<T>
 {
    
-   private static final Annotation[] DEFAULT_BINDING_ARRAY = { new CurrentLiteral() };
+   private static final Annotation[] DEFAULT_BINDING_ARRAY = { new CurrentLiteral(), new AnyLiteral() };
    private static final Set<Annotation> DEFAULT_BINDING = new HashSet<Annotation>(Arrays.asList(DEFAULT_BINDING_ARRAY));
    
    private final String id;

Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/standard/EventBean.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/standard/EventBean.java	2009-06-01 09:15:59 UTC (rev 2737)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/bean/standard/EventBean.java	2009-06-01 09:35:12 UTC (rev 2738)
@@ -24,22 +24,22 @@
 
 import javax.enterprise.inject.TypeLiteral;
 import javax.event.Event;
-import javax.event.Fires;
+import javax.enterprise.inject.Any;
 import javax.inject.Obtains;
 
 import org.jboss.webbeans.ManagerImpl;
 import org.jboss.webbeans.event.EventImpl;
 import org.jboss.webbeans.injection.resolution.AnnotatedItemTransformer;
-import org.jboss.webbeans.literal.FiresLiteral;
+import org.jboss.webbeans.literal.AnyLiteral;
 
 public class EventBean extends AbstractFacadeBean<Event<?>>
 {
 
-   private static final Class<Event<?>> TYPE = new TypeLiteral<Event<?>>() {}.getRawType();
-   private static final Set<Type> DEFAULT_TYPES = new HashSet<Type>(Arrays.asList(TYPE, Object.class));
-   private static final Fires FIRES = new FiresLiteral();
-   private static final Set<Annotation> DEFAULT_BINDINGS = new HashSet<Annotation>(Arrays.asList(FIRES));
-   public static final AnnotatedItemTransformer TRANSFORMER = new FacadeBeanAnnotatedItemTransformer(Event.class, FIRES);
+   private static final Class<Event<?>>                  TYPE                      = new TypeLiteral<Event<?>>(){}.getRawType();
+   private static final Set<Type>                        DEFAULT_TYPES             = new HashSet<Type>(Arrays.asList(TYPE, Object.class));
+   private static final Annotation                       ANY                       = new AnyLiteral();
+   private static final Set<Annotation>                  DEFAULT_BINDINGS          = new HashSet<Annotation>(Arrays.asList(ANY));
+   public static final AnnotatedItemTransformer          TRANSFORMER               = new FacadeBeanAnnotatedItemTransformer(Event.class, ANY);
    private static final Set<Class<? extends Annotation>> FILTERED_ANNOTATION_TYPES = new HashSet<Class<? extends Annotation>>(Arrays.asList(Obtains.class));
    
    

Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/event/EventImpl.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/event/EventImpl.java	2009-06-01 09:15:59 UTC (rev 2737)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/event/EventImpl.java	2009-06-01 09:35:12 UTC (rev 2738)
@@ -26,7 +26,7 @@
 
 import org.jboss.webbeans.FacadeImpl;
 import org.jboss.webbeans.ManagerImpl;
-import org.jboss.webbeans.literal.FiresLiteral;
+import org.jboss.webbeans.literal.AnyLiteral;
 import org.jboss.webbeans.util.Strings;
 
 /**
@@ -58,7 +58,7 @@
    public EventImpl(Type eventType, ManagerImpl manager, Set<Annotation> bindings)
    {
       super(eventType, manager, bindings);
-      this.bindings.remove(new FiresLiteral());
+      this.bindings.remove(new AnyLiteral());
    }
 
    /**

Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/introspector/AnnotatedMethod.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/introspector/AnnotatedMethod.java	2009-06-01 09:15:59 UTC (rev 2737)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/introspector/AnnotatedMethod.java	2009-06-01 09:35:12 UTC (rev 2738)
@@ -30,7 +30,7 @@
 import javax.event.AfterTransactionSuccess;
 import javax.event.Asynchronously;
 import javax.event.BeforeTransactionCompletion;
-import javax.event.Fires;
+import javax.enterprise.inject.Any;
 import javax.event.IfExists;
 import javax.event.Observes;
 
@@ -44,7 +44,7 @@
 public interface AnnotatedMethod<T> extends AnnotatedMember<T, Method>
 {
    @SuppressWarnings("unchecked")
-   public static final Set<Class<? extends Annotation>> MAPPED_PARAMETER_ANNOTATIONS = new HashSet<Class<? extends Annotation>>(Arrays.asList(Disposes.class, Observes.class, Fires.class, IfExists.class, BeforeTransactionCompletion.class, AfterTransactionCompletion.class, AfterTransactionFailure.class, AfterTransactionSuccess.class, Asynchronously.class));
+   public static final Set<Class<? extends Annotation>> MAPPED_PARAMETER_ANNOTATIONS = new HashSet<Class<? extends Annotation>>(Arrays.asList(Disposes.class, Observes.class, IfExists.class, BeforeTransactionCompletion.class, AfterTransactionCompletion.class, AfterTransactionFailure.class, AfterTransactionSuccess.class, Asynchronously.class));
 
    /**
     * Gets the abstracted parameters of the method

Copied: ri/trunk/impl/src/main/java/org/jboss/webbeans/literal/AnyLiteral.java (from rev 2719, ri/trunk/impl/src/main/java/org/jboss/webbeans/literal/FiresLiteral.java)
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/literal/AnyLiteral.java	                        (rev 0)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/literal/AnyLiteral.java	2009-06-01 09:35:12 UTC (rev 2738)
@@ -0,0 +1,25 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,  
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jboss.webbeans.literal;
+
+import javax.enterprise.inject.AnnotationLiteral;
+import javax.enterprise.inject.Any;
+
+public class AnyLiteral extends AnnotationLiteral<Any> implements Any
+{
+   
+}


Property changes on: ri/trunk/impl/src/main/java/org/jboss/webbeans/literal/AnyLiteral.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Deleted: ri/trunk/impl/src/main/java/org/jboss/webbeans/literal/FiresLiteral.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/literal/FiresLiteral.java	2009-06-01 09:15:59 UTC (rev 2737)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/literal/FiresLiteral.java	2009-06-01 09:35:12 UTC (rev 2738)
@@ -1,25 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,  
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jboss.webbeans.literal;
-
-import javax.enterprise.inject.AnnotationLiteral;
-import javax.event.Fires;
-
-public class FiresLiteral extends AnnotationLiteral<Fires> implements Fires
-{
-   
-}

Modified: ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/event/SimpleEventTest.java
===================================================================
--- ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/event/SimpleEventTest.java	2009-06-01 09:15:59 UTC (rev 2737)
+++ ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/event/SimpleEventTest.java	2009-06-01 09:35:12 UTC (rev 2738)
@@ -1,8 +1,8 @@
 package org.jboss.webbeans.test.unit.implementation.event;
 
 import javax.enterprise.inject.AnnotationLiteral;
+import javax.enterprise.inject.Any;
 import javax.event.Event;
-import javax.event.Fires;
 import javax.event.Observes;
 
 import org.jboss.testharness.impl.packaging.Artifact;
@@ -87,14 +87,13 @@
 
    public static class App
    {
-      @Fires
+      @Any
       Event<String> event1;
       
-      @Fires
-      @Updated
+      @Updated @Any
       Event<String> event2;
 
-      @Fires
+      @Any
       Event<String> event3;
 
       public void fireEventByAnnotationLiteral()




More information about the weld-commits mailing list