[weld-commits] Weld SVN: r5401 - in core/trunk: impl/src/main/java/org/jboss/weld/bean and 7 other directories.

weld-commits at lists.jboss.org weld-commits at lists.jboss.org
Fri Jan 8 12:04:16 EST 2010


Author: pete.muir at jboss.org
Date: 2010-01-08 12:04:14 -0500 (Fri, 08 Jan 2010)
New Revision: 5401

Added:
   core/trunk/impl/src/main/java/org/jboss/weld/ContainerState.java
   core/trunk/impl/src/main/java/org/jboss/weld/manager/BeanTransform.java
   core/trunk/impl/src/main/java/org/jboss/weld/manager/CurrentActivity.java
   core/trunk/impl/src/main/java/org/jboss/weld/manager/DecoratorTransform.java
   core/trunk/impl/src/main/java/org/jboss/weld/manager/DummyInjectionPoint.java
   core/trunk/impl/src/main/java/org/jboss/weld/manager/InterceptorTransform.java
   core/trunk/impl/src/main/java/org/jboss/weld/manager/NamespaceTransform.java
   core/trunk/impl/src/main/java/org/jboss/weld/manager/ObserverMethodTransform.java
   core/trunk/impl/src/main/java/org/jboss/weld/manager/Transform.java
Modified:
   core/trunk/impl/src/main/java/org/jboss/weld/Container.java
   core/trunk/impl/src/main/java/org/jboss/weld/bean/AbstractProducerBean.java
   core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/InstanceBean.java
   core/trunk/impl/src/main/java/org/jboss/weld/bootstrap/WeldBootstrap.java
   core/trunk/impl/src/main/java/org/jboss/weld/ejb/EjbDescriptors.java
   core/trunk/impl/src/main/java/org/jboss/weld/manager/BeanManagerImpl.java
   core/trunk/impl/src/main/java/org/jboss/weld/resolution/TypeSafeBeanResolver.java
   core/trunk/impl/src/main/java/org/jboss/weld/util/ApiAbstraction.java
   core/trunk/tests/src/test/java/org/jboss/weld/tests/unit/bootstrap/ContainerStatusTest.java
Log:
reduce usage of inner classes

Modified: core/trunk/impl/src/main/java/org/jboss/weld/Container.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/Container.java	2010-01-08 14:23:49 UTC (rev 5400)
+++ core/trunk/impl/src/main/java/org/jboss/weld/Container.java	2010-01-08 17:04:14 UTC (rev 5401)
@@ -41,52 +41,6 @@
 public class Container
 {
    
-   /**
-    * Container status
-    * @author pmuir
-    *
-    */
-   public enum Status
-   {
-      /**
-       * The container has not been started
-       */
-      STOPPED(false),
-      /**
-       * The container is starting
-       */
-      STARTING(false),
-      /**
-       * The container has started and beans have been deployed
-       */
-      INITIALIZED(true),
-      /**
-       * The deployment has been validated
-       */
-      VALIDATED(true),
-      /**
-       * The container has been shutdown
-       */
-      SHUTDOWN(false);
-      
-      private Status(boolean available)
-      {
-         this.available = available;
-      }
-      
-      final boolean available;
-      
-      /**
-       * Whether the container is available for use
-       * 
-       * @return
-       */
-      public boolean isAvailable()
-      {
-         return available;
-      }
-   }
-   
    private final static Singleton<Container> instance;
    
    static
@@ -132,7 +86,7 @@
    
    private final ServiceRegistry deploymentServices;
    
-   private Status status = Status.STOPPED;
+   private ContainerState status = ContainerState.STOPPED;
    
    public Container(BeanManagerImpl deploymentManager, ServiceRegistry deploymentServices)
    {
@@ -230,12 +184,12 @@
       }
    }
    
-   public Status getStatus()
+   public ContainerState getStatus()
    {
       return status;
    }
    
-   public void setStatus(Status status)
+   public void setStatus(ContainerState status)
    {
       this.status = status;
    }

Added: core/trunk/impl/src/main/java/org/jboss/weld/ContainerState.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/ContainerState.java	                        (rev 0)
+++ core/trunk/impl/src/main/java/org/jboss/weld/ContainerState.java	2010-01-08 17:04:14 UTC (rev 5401)
@@ -0,0 +1,47 @@
+package org.jboss.weld;
+
+/**
+ * Container status
+ * @author pmuir
+ *
+ */
+public enum ContainerState
+{
+   /**
+    * The container has not been started
+    */
+   STOPPED(false),
+   /**
+    * The container is starting
+    */
+   STARTING(false),
+   /**
+    * The container has started and beans have been deployed
+    */
+   INITIALIZED(true),
+   /**
+    * The deployment has been validated
+    */
+   VALIDATED(true),
+   /**
+    * The container has been shutdown
+    */
+   SHUTDOWN(false);
+   
+   private ContainerState(boolean available)
+   {
+      this.available = available;
+   }
+   
+   final boolean available;
+   
+   /**
+    * Whether the container is available for use
+    * 
+    * @return
+    */
+   public boolean isAvailable()
+   {
+      return available;
+   }
+}
\ No newline at end of file


Property changes on: core/trunk/impl/src/main/java/org/jboss/weld/ContainerState.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/AbstractProducerBean.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/AbstractProducerBean.java	2010-01-08 14:23:49 UTC (rev 5400)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/AbstractProducerBean.java	2010-01-08 17:04:14 UTC (rev 5401)
@@ -60,6 +60,7 @@
 import org.jboss.weld.exceptions.WeldException;
 import org.jboss.weld.introspector.WeldMember;
 import org.jboss.weld.manager.BeanManagerImpl;
+import org.jboss.weld.manager.DummyInjectionPoint;
 import org.jboss.weld.metadata.cache.MetaAnnotationStore;
 import org.jboss.weld.util.Beans;
 import org.jboss.weld.util.Names;
@@ -248,7 +249,7 @@
             throw new IllegalProductException(NON_SERIALIZABLE_PRODUCT_ERROR, getProducer());
          }
          InjectionPoint injectionPoint = manager.getCurrentInjectionPoint();
-         if (injectionPoint == null || injectionPoint.equals(BeanManagerImpl.DUMMY_INJECTION_POINT))
+         if (injectionPoint == null || injectionPoint.equals(DummyInjectionPoint.INSTANCE))
          {
             return;
          }

Modified: core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/InstanceBean.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/InstanceBean.java	2010-01-08 14:23:49 UTC (rev 5400)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bean/builtin/InstanceBean.java	2010-01-08 17:04:14 UTC (rev 5401)
@@ -30,19 +30,15 @@
 
 import org.jboss.weld.literal.AnyLiteral;
 import org.jboss.weld.manager.BeanManagerImpl;
-import org.jboss.weld.resolution.ResolvableTransformer;
 import org.jboss.weld.util.collections.Arrays2;
 
 public class InstanceBean extends AbstractFacadeBean<Instance<?>>
 {
-
    private static final Class<Instance<?>> INSTANCE_TYPE = new TypeLiteral<Instance<?>>() {}.getRawType();
    private static final Class<Provider<?>> PROVIDER_TYPE = new TypeLiteral<Provider<?>>() {}.getRawType();
    private static final Set<Type> DEFAULT_TYPES = Arrays2.<Type>asSet(INSTANCE_TYPE, PROVIDER_TYPE, Object.class);
    private static final Any ANY = new AnyLiteral();
    private static final Set<Annotation> DEFAULT_BINDINGS = new HashSet<Annotation>(Arrays.asList(ANY));
-   public static final ResolvableTransformer INSTANCE_TRANSFORMER = new FacadeBeanResolvableTransformer(INSTANCE_TYPE);
-   public static final ResolvableTransformer PROVIDER_TRANSFORMER = new FacadeBeanResolvableTransformer(PROVIDER_TYPE);
    
    public InstanceBean(BeanManagerImpl manager)
    {

Modified: core/trunk/impl/src/main/java/org/jboss/weld/bootstrap/WeldBootstrap.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/bootstrap/WeldBootstrap.java	2010-01-08 14:23:49 UTC (rev 5400)
+++ core/trunk/impl/src/main/java/org/jboss/weld/bootstrap/WeldBootstrap.java	2010-01-08 17:04:14 UTC (rev 5401)
@@ -40,7 +40,7 @@
 
 import org.jboss.weld.Container;
 import org.jboss.weld.ContextualStoreImpl;
-import org.jboss.weld.Container.Status;
+import org.jboss.weld.ContainerState;
 import org.jboss.weld.bean.builtin.BeanManagerBean;
 import org.jboss.weld.bootstrap.api.Bootstrap;
 import org.jboss.weld.bootstrap.api.Environment;
@@ -288,7 +288,7 @@
          this.deploymentManager = BeanManagerImpl.newRootManager("deployment", deploymentServices);
          
          Container.initialize(deploymentManager, ServiceRegistries.unmodifiableServiceRegistry(deployment.getServices()));
-         Container.instance().setStatus(Status.STARTING);
+         Container.instance().setStatus(ContainerState.STARTING);
          
          createContexts();
          initializeContexts();
@@ -381,7 +381,7 @@
          // Re-read the deployment structure, this will be the physical structure, extensions, classes, and any beans added using addBean outside the physical structure
          beanDeployments = deploymentVisitor.visit();
          Container.instance().putBeanDeployments(beanDeployments);
-         Container.instance().setStatus(Status.INITIALIZED);
+         Container.instance().setStatus(ContainerState.INITIALIZED);
       }
       return this;
    }
@@ -406,7 +406,7 @@
       synchronized (this)
       {
          // Register the managers so external requests can handle them
-         Container.instance().setStatus(Status.VALIDATED);
+         Container.instance().setStatus(ContainerState.VALIDATED);
       }
       return this;
    }
@@ -442,7 +442,7 @@
       }
       finally
       {
-         Container.instance().setStatus(Status.SHUTDOWN);
+         Container.instance().setStatus(ContainerState.SHUTDOWN);
          Container.instance().deploymentServices().get(ContextLifecycle.class).endApplication();
       }
    }

Modified: core/trunk/impl/src/main/java/org/jboss/weld/ejb/EjbDescriptors.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/ejb/EjbDescriptors.java	2010-01-08 14:23:49 UTC (rev 5400)
+++ core/trunk/impl/src/main/java/org/jboss/weld/ejb/EjbDescriptors.java	2010-01-08 17:04:14 UTC (rev 5401)
@@ -28,7 +28,6 @@
 import org.jboss.weld.bootstrap.api.Service;
 import org.jboss.weld.ejb.spi.EjbDescriptor;
 import org.jboss.weld.exceptions.ForbiddenStateException;
-import org.jboss.weld.exceptions.InvalidOperationException;
 
 import com.google.common.base.Supplier;
 import com.google.common.collect.Multimaps;
@@ -47,34 +46,7 @@
    
    private final SetMultimap<Class<?>, String> ejbByClass;
    
-   public static final EjbDescriptors EMPTY = new EjbDescriptors()
-   {
-      @Override
-      public <T> void add(EjbDescriptor<T> ejbDescriptor)
-      {
-         throw new InvalidOperationException();
-      }
-      
-      @Override
-      public void addAll(Iterable<EjbDescriptor<?>> ejbDescriptors)
-      {
-         throw new InvalidOperationException();
-      }
-      
-      @Override
-      public void cleanup()
-      {
-         throw new InvalidOperationException();
-      }
-      
-      @Override
-      public void clear()
-      {
-         throw new InvalidOperationException();
-      }
-      
-      
-   };
+   public static final EjbDescriptors EMPTY = new EjbDescriptors();
 
    /**
     * Constructor

Modified: core/trunk/impl/src/main/java/org/jboss/weld/manager/BeanManagerImpl.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/manager/BeanManagerImpl.java	2010-01-08 14:23:49 UTC (rev 5400)
+++ core/trunk/impl/src/main/java/org/jboss/weld/manager/BeanManagerImpl.java	2010-01-08 17:04:14 UTC (rev 5401)
@@ -37,7 +37,6 @@
 
 import java.io.Serializable;
 import java.lang.annotation.Annotation;
-import java.lang.reflect.Member;
 import java.lang.reflect.Type;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -60,7 +59,6 @@
 import javax.enterprise.context.spi.Context;
 import javax.enterprise.context.spi.Contextual;
 import javax.enterprise.context.spi.CreationalContext;
-import javax.enterprise.inject.spi.Annotated;
 import javax.enterprise.inject.spi.AnnotatedType;
 import javax.enterprise.inject.spi.Bean;
 import javax.enterprise.inject.spi.Decorator;
@@ -140,95 +138,7 @@
 public class BeanManagerImpl implements WeldManager, Serializable
 {
 
-
-   private static class CurrentActivity
-   {
-	
-      private final Context context;
-      private final BeanManagerImpl manager;
-		
-      public CurrentActivity(Context context, BeanManagerImpl manager)
-      {
-         this.context = context;
-         this.manager = manager;
-      }
-
-      public Context getContext()
-      {
-         return context;
-      }
-      
-      public BeanManagerImpl getManager()
-      {
-         return manager;
-      }
-      
-      @Override
-      public boolean equals(Object obj)
-      {
-         if (obj instanceof CurrentActivity)
-         {
-            return this.getContext().equals(((CurrentActivity) obj).getContext());
-         }
-         else
-         {
-            return false;
-         }
-      }
-      
-      @Override
-      public int hashCode()
-      {
-         return getContext().hashCode();
-      }
-      
-      @Override
-      public String toString()
-      {
-         return getContext() + " -> " + getManager();
-      }
-   }
-
    private static final long serialVersionUID = 3021562879133838561L;
-
-   public static final InjectionPoint DUMMY_INJECTION_POINT = new InjectionPoint()
-   {
-      
-      public boolean isTransient()
-      {
-         return true;
-      }
-      
-      public boolean isDelegate()
-      {
-         return false;
-      }
-      
-      public Type getType()
-      {
-         return InjectionPoint.class;
-      }
-      
-      public Set<Annotation> getQualifiers()
-      {
-         return Collections.emptySet();
-      }
-      
-      public Member getMember()
-      {
-         return null;
-      }
-      
-      public Bean<?> getBean()
-      {
-         return null;
-      }
-      
-      public Annotated getAnnotated()
-      {
-         return null;
-      }
-   };
    
    /*
     * Application scoped services 
@@ -486,11 +396,11 @@
       
 
       // TODO Currently we build the accessible bean list on the fly, we need to set it in stone once bootstrap is finished...
-      Transform<Bean<?>> beanTransform = new Transform.BeanTransform(this);
+      Transform<Bean<?>> beanTransform = new BeanTransform(this);
       this.beanResolver = new TypeSafeBeanResolver<Bean<?>>(this, createDynamicAccessibleIterable(beanTransform));
-      this.decoratorResolver = new TypeSafeDecoratorResolver(this, createDynamicAccessibleIterable(Transform.DECORATOR_BEAN));
-      this.interceptorResolver = new TypeSafeInterceptorResolver(this, createDynamicAccessibleIterable(Transform.INTERCEPTOR_BEAN));
-      this.observerResolver = new TypeSafeObserverResolver(this, createDynamicAccessibleIterable(Transform.EVENT_OBSERVER));
+      this.decoratorResolver = new TypeSafeDecoratorResolver(this, createDynamicAccessibleIterable(new DecoratorTransform()));
+      this.interceptorResolver = new TypeSafeInterceptorResolver(this, createDynamicAccessibleIterable(new InterceptorTransform()));
+      this.observerResolver = new TypeSafeObserverResolver(this, createDynamicAccessibleIterable(new ObserverMethodTransform()));
       this.nameBasedResolver = new NameBasedResolver(this, createDynamicAccessibleIterable(beanTransform));
       this.weldELResolver = new WeldELResolver(this);
       this.childActivities = new CopyOnWriteArraySet<BeanManagerImpl>();
@@ -551,78 +461,6 @@
       return Iterables.concat(iterable); 
    }
    
-   private static interface Transform<T>
-   {
-      
-      public static class BeanTransform implements Transform<Bean<?>>
-      {
-         
-         private final BeanManagerImpl declaringBeanManager;
-
-         public BeanTransform(BeanManagerImpl declaringBeanManager)
-         {
-            this.declaringBeanManager = declaringBeanManager;
-         }
-
-         public Iterable<Bean<?>> transform(BeanManagerImpl beanManager)
-         {
-            // New beans and built in beans aren't resolvable transitively
-            if (beanManager.equals(declaringBeanManager))
-            {
-               return beanManager.getBeans();
-            }
-            else
-            {
-               return beanManager.getTransitiveBeans();
-            }
-         }
-         
-      };
-      
-      public static Transform<Decorator<?>> DECORATOR_BEAN = new Transform<Decorator<?>>()
-      {
-
-         public Iterable<Decorator<?>> transform(BeanManagerImpl beanManager)
-         {
-            return beanManager.getDecorators();
-         }
-         
-      };
-
-      public static Transform<Interceptor<?>> INTERCEPTOR_BEAN = new Transform<Interceptor<?>>()
-      {
-
-         public Iterable<Interceptor<?>> transform(BeanManagerImpl beanManager)
-         {
-            return beanManager.getInterceptors();
-         }
-
-      };
-      
-      public static Transform<ObserverMethod<?>> EVENT_OBSERVER = new Transform<ObserverMethod<?>>()
-      {
-
-         public Iterable<ObserverMethod<?>> transform(BeanManagerImpl beanManager)
-         {
-            return beanManager.getObservers();
-         }
-         
-      };
-      
-      public static Transform<String> NAMESPACE = new Transform<String>()
-      {
-
-         public Iterable<String> transform(BeanManagerImpl beanManager)
-         {
-            return beanManager.getNamespaces();
-         }
-         
-      };
-      
-      public Iterable<T> transform(BeanManagerImpl beanManager);
-      
-   }
-   
    public void addAccessibleBeanManager(BeanManagerImpl accessibleBeanManager)
    {
       accessibleManagers.add(accessibleBeanManager);
@@ -860,7 +698,7 @@
       return Collections.unmodifiableList(beans);
    }
    
-   private List<Bean<?>> getTransitiveBeans()
+   List<Bean<?>> getTransitiveBeans()
    {
       return Collections.unmodifiableList(transitiveBeans);
    }
@@ -877,7 +715,7 @@
    
    public Iterable<Bean<?>> getAccessibleBeans()
    {
-      return createDynamicAccessibleIterable(new Transform.BeanTransform(this));
+      return createDynamicAccessibleIterable(new BeanTransform(this));
    }
 
    public void addContext(Context context)
@@ -1301,12 +1139,12 @@
    
    public void pushDummyInjectionPoint()
    {
-      currentInjectionPoint.get().push(DUMMY_INJECTION_POINT);
+      currentInjectionPoint.get().push(DummyInjectionPoint.INSTANCE);
    }
    
    public void popDummyInjectionPoint()
    {
-      if (!currentInjectionPoint.get().isEmpty() && DUMMY_INJECTION_POINT.equals(currentInjectionPoint.get().peek()))
+      if (!currentInjectionPoint.get().isEmpty() && DummyInjectionPoint.INSTANCE.equals(currentInjectionPoint.get().peek()))
       {
          currentInjectionPoint.get().pop();
       }
@@ -1350,7 +1188,7 @@
    public Iterable<String> getAccessibleNamespaces()
    {
       // TODO Cache this
-      return createDynamicAccessibleIterable(Transform.NAMESPACE);
+      return createDynamicAccessibleIterable(new NamespaceTransform());
    }
    
    private Set<CurrentActivity> getCurrentActivities()
@@ -1378,7 +1216,7 @@
       // TODO I don't like this lazy init
       if (rootNamespace == null)
       {
-         rootNamespace = new Namespace(createDynamicAccessibleIterable(Transform.NAMESPACE));
+         rootNamespace = new Namespace(createDynamicAccessibleIterable(new NamespaceTransform()));
       }
       return rootNamespace;
    }

Added: core/trunk/impl/src/main/java/org/jboss/weld/manager/BeanTransform.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/manager/BeanTransform.java	                        (rev 0)
+++ core/trunk/impl/src/main/java/org/jboss/weld/manager/BeanTransform.java	2010-01-08 17:04:14 UTC (rev 5401)
@@ -0,0 +1,31 @@
+/**
+ * 
+ */
+package org.jboss.weld.manager;
+
+import javax.enterprise.inject.spi.Bean;
+
+public class BeanTransform implements Transform<Bean<?>>
+{
+   
+   private final BeanManagerImpl declaringBeanManager;
+
+   public BeanTransform(BeanManagerImpl declaringBeanManager)
+   {
+      this.declaringBeanManager = declaringBeanManager;
+   }
+
+   public Iterable<Bean<?>> transform(BeanManagerImpl beanManager)
+   {
+      // New beans and built in beans aren't resolvable transitively
+      if (beanManager.equals(declaringBeanManager))
+      {
+         return beanManager.getBeans();
+      }
+      else
+      {
+         return beanManager.getTransitiveBeans();
+      }
+   }
+   
+}
\ No newline at end of file


Property changes on: core/trunk/impl/src/main/java/org/jboss/weld/manager/BeanTransform.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Added: core/trunk/impl/src/main/java/org/jboss/weld/manager/CurrentActivity.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/manager/CurrentActivity.java	                        (rev 0)
+++ core/trunk/impl/src/main/java/org/jboss/weld/manager/CurrentActivity.java	2010-01-08 17:04:14 UTC (rev 5401)
@@ -0,0 +1,54 @@
+/**
+ * 
+ */
+package org.jboss.weld.manager;
+
+import javax.enterprise.context.spi.Context;
+
+class CurrentActivity
+{
+
+   private final Context context;
+   private final BeanManagerImpl manager;
+	
+   public CurrentActivity(Context context, BeanManagerImpl manager)
+   {
+      this.context = context;
+      this.manager = manager;
+   }
+
+   public Context getContext()
+   {
+      return context;
+   }
+   
+   public BeanManagerImpl getManager()
+   {
+      return manager;
+   }
+   
+   @Override
+   public boolean equals(Object obj)
+   {
+      if (obj instanceof CurrentActivity)
+      {
+         return this.getContext().equals(((CurrentActivity) obj).getContext());
+      }
+      else
+      {
+         return false;
+      }
+   }
+   
+   @Override
+   public int hashCode()
+   {
+      return getContext().hashCode();
+   }
+   
+   @Override
+   public String toString()
+   {
+      return getContext() + " -> " + getManager();
+   }
+}
\ No newline at end of file


Property changes on: core/trunk/impl/src/main/java/org/jboss/weld/manager/CurrentActivity.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Added: core/trunk/impl/src/main/java/org/jboss/weld/manager/DecoratorTransform.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/manager/DecoratorTransform.java	                        (rev 0)
+++ core/trunk/impl/src/main/java/org/jboss/weld/manager/DecoratorTransform.java	2010-01-08 17:04:14 UTC (rev 5401)
@@ -0,0 +1,16 @@
+/**
+ * 
+ */
+package org.jboss.weld.manager;
+
+import javax.enterprise.inject.spi.Decorator;
+
+class DecoratorTransform implements Transform<Decorator<?>>
+{
+   
+   public Iterable<Decorator<?>> transform(BeanManagerImpl beanManager)
+   {
+      return beanManager.getDecorators();
+   }
+   
+}


Property changes on: core/trunk/impl/src/main/java/org/jboss/weld/manager/DecoratorTransform.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Added: core/trunk/impl/src/main/java/org/jboss/weld/manager/DummyInjectionPoint.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/manager/DummyInjectionPoint.java	                        (rev 0)
+++ core/trunk/impl/src/main/java/org/jboss/weld/manager/DummyInjectionPoint.java	2010-01-08 17:04:14 UTC (rev 5401)
@@ -0,0 +1,56 @@
+/**
+ * 
+ */
+package org.jboss.weld.manager;
+
+import java.lang.annotation.Annotation;
+import java.lang.reflect.Member;
+import java.lang.reflect.Type;
+import java.util.Collections;
+import java.util.Set;
+
+import javax.enterprise.inject.spi.Annotated;
+import javax.enterprise.inject.spi.Bean;
+import javax.enterprise.inject.spi.InjectionPoint;
+
+public class DummyInjectionPoint implements InjectionPoint
+{
+   
+   public static final DummyInjectionPoint INSTANCE = new DummyInjectionPoint();
+   
+   public boolean isTransient()
+   {
+      return true;
+   }
+
+   public boolean isDelegate()
+   {
+      return false;
+   }
+
+   public Type getType()
+   {
+      return InjectionPoint.class;
+   }
+
+   public Set<Annotation> getQualifiers()
+   {
+      return Collections.emptySet();
+   }
+
+   public Member getMember()
+   {
+      return null;
+   }
+
+   public Bean<?> getBean()
+   {
+      return null;
+   }
+
+   public Annotated getAnnotated()
+   {
+      return null;
+   }
+   
+}


Property changes on: core/trunk/impl/src/main/java/org/jboss/weld/manager/DummyInjectionPoint.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Added: core/trunk/impl/src/main/java/org/jboss/weld/manager/InterceptorTransform.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/manager/InterceptorTransform.java	                        (rev 0)
+++ core/trunk/impl/src/main/java/org/jboss/weld/manager/InterceptorTransform.java	2010-01-08 17:04:14 UTC (rev 5401)
@@ -0,0 +1,16 @@
+/**
+ * 
+ */
+package org.jboss.weld.manager;
+
+import javax.enterprise.inject.spi.Interceptor;
+
+class InterceptorTransform implements Transform<Interceptor<?>>
+{
+   
+   public Iterable<Interceptor<?>> transform(BeanManagerImpl beanManager)
+   {
+      return beanManager.getInterceptors();
+   }
+   
+}


Property changes on: core/trunk/impl/src/main/java/org/jboss/weld/manager/InterceptorTransform.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Added: core/trunk/impl/src/main/java/org/jboss/weld/manager/NamespaceTransform.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/manager/NamespaceTransform.java	                        (rev 0)
+++ core/trunk/impl/src/main/java/org/jboss/weld/manager/NamespaceTransform.java	2010-01-08 17:04:14 UTC (rev 5401)
@@ -0,0 +1,14 @@
+/**
+ * 
+ */
+package org.jboss.weld.manager;
+
+class NamespaceTransform implements Transform<String>
+{
+   
+   public Iterable<String> transform(BeanManagerImpl beanManager)
+   {
+      return beanManager.getNamespaces();
+   }
+   
+}


Property changes on: core/trunk/impl/src/main/java/org/jboss/weld/manager/NamespaceTransform.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Added: core/trunk/impl/src/main/java/org/jboss/weld/manager/ObserverMethodTransform.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/manager/ObserverMethodTransform.java	                        (rev 0)
+++ core/trunk/impl/src/main/java/org/jboss/weld/manager/ObserverMethodTransform.java	2010-01-08 17:04:14 UTC (rev 5401)
@@ -0,0 +1,16 @@
+/**
+ * 
+ */
+package org.jboss.weld.manager;
+
+import javax.enterprise.inject.spi.ObserverMethod;
+
+class ObserverMethodTransform implements Transform<ObserverMethod<?>>
+{
+   
+   public Iterable<ObserverMethod<?>> transform(BeanManagerImpl beanManager)
+   {
+      return beanManager.getObservers();
+   }
+   
+}


Property changes on: core/trunk/impl/src/main/java/org/jboss/weld/manager/ObserverMethodTransform.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Added: core/trunk/impl/src/main/java/org/jboss/weld/manager/Transform.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/manager/Transform.java	                        (rev 0)
+++ core/trunk/impl/src/main/java/org/jboss/weld/manager/Transform.java	2010-01-08 17:04:14 UTC (rev 5401)
@@ -0,0 +1,11 @@
+/**
+ * 
+ */
+package org.jboss.weld.manager;
+
+interface Transform<T>
+{
+
+   public Iterable<T> transform(BeanManagerImpl beanManager);
+   
+}


Property changes on: core/trunk/impl/src/main/java/org/jboss/weld/manager/Transform.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Modified: core/trunk/impl/src/main/java/org/jboss/weld/resolution/TypeSafeBeanResolver.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/resolution/TypeSafeBeanResolver.java	2010-01-08 14:23:49 UTC (rev 5400)
+++ core/trunk/impl/src/main/java/org/jboss/weld/resolution/TypeSafeBeanResolver.java	2010-01-08 17:04:14 UTC (rev 5401)
@@ -21,10 +21,13 @@
 import java.util.Set;
 import java.util.concurrent.Callable;
 
+import javax.enterprise.event.Event;
+import javax.enterprise.inject.Instance;
 import javax.enterprise.inject.spi.Bean;
+import javax.enterprise.util.TypeLiteral;
+import javax.inject.Provider;
 
-import org.jboss.weld.bean.builtin.EventBean;
-import org.jboss.weld.bean.builtin.InstanceBean;
+import org.jboss.weld.bean.builtin.FacadeBeanResolvableTransformer;
 import org.jboss.weld.manager.BeanManagerImpl;
 import org.jboss.weld.util.Beans;
 import org.jboss.weld.util.collections.ConcurrentCache;
@@ -36,26 +39,25 @@
  */
 public class TypeSafeBeanResolver<T extends Bean<?>> extends TypeSafeResolver<Resolvable, T>
 {
+   
+   private static final Class<Instance<?>> INSTANCE_TYPE = new TypeLiteral<Instance<?>>() {}.getRawType();
+   private static final Class<Provider<?>> PROVIDER_TYPE = new TypeLiteral<Provider<?>>() {}.getRawType();
+   private static final Class<Event<?>> EVENT_TYPE = new TypeLiteral<Event<?>>() {}.getRawType();
 
-   public static final Set<ResolvableTransformer> TRANSFORMERS;
-   
+   private final Set<ResolvableTransformer> transformers;
    private final BeanManagerImpl manager;
    private final ConcurrentCache<Set<?>, Set<Bean<?>>> disambiguatedBeans; 
-   
-   static
-   {
-      TRANSFORMERS = new HashSet<ResolvableTransformer>();
-      TRANSFORMERS.add(EventBean.TRANSFORMER);
-      TRANSFORMERS.add(InstanceBean.INSTANCE_TRANSFORMER);
-      TRANSFORMERS.add(InstanceBean.PROVIDER_TRANSFORMER);
-      TRANSFORMERS.add(new NewResolvableTransformer());
-   }
 
    public TypeSafeBeanResolver(BeanManagerImpl manager, Iterable<T> beans)
    {
       super(beans);
       this.manager = manager;
       this.disambiguatedBeans = new ConcurrentCache<Set<?>, Set<Bean<?>>>();
+      transformers = new HashSet<ResolvableTransformer>();
+      transformers.add(new FacadeBeanResolvableTransformer(EVENT_TYPE));
+      transformers.add(new FacadeBeanResolvableTransformer(INSTANCE_TYPE));
+      transformers.add(new FacadeBeanResolvableTransformer(PROVIDER_TYPE));
+      transformers.add(new NewResolvableTransformer());
    }
 
    @Override
@@ -81,7 +83,7 @@
    @Override
    protected Iterable<ResolvableTransformer> getTransformers()
    {
-      return TRANSFORMERS;
+      return transformers;
    }
 
    @Override

Modified: core/trunk/impl/src/main/java/org/jboss/weld/util/ApiAbstraction.java
===================================================================
--- core/trunk/impl/src/main/java/org/jboss/weld/util/ApiAbstraction.java	2010-01-08 14:23:49 UTC (rev 5400)
+++ core/trunk/impl/src/main/java/org/jboss/weld/util/ApiAbstraction.java	2010-01-08 17:04:14 UTC (rev 5401)
@@ -57,7 +57,7 @@
    /**
     * "Not found" enumeration value.
     */
-   public enum DummyEnum
+   public static enum DummyEnum
    {
        DUMMY_VALUE
    }

Modified: core/trunk/tests/src/test/java/org/jboss/weld/tests/unit/bootstrap/ContainerStatusTest.java
===================================================================
--- core/trunk/tests/src/test/java/org/jboss/weld/tests/unit/bootstrap/ContainerStatusTest.java	2010-01-08 14:23:49 UTC (rev 5400)
+++ core/trunk/tests/src/test/java/org/jboss/weld/tests/unit/bootstrap/ContainerStatusTest.java	2010-01-08 17:04:14 UTC (rev 5401)
@@ -1,7 +1,7 @@
 package org.jboss.weld.tests.unit.bootstrap;
 
 import org.jboss.weld.Container;
-import org.jboss.weld.Container.Status;
+import org.jboss.weld.ContainerState;
 import org.jboss.weld.mock.MockServletLifecycle;
 import org.jboss.weld.mock.TestContainer;
 import org.testng.annotations.Test;
@@ -16,16 +16,16 @@
       assert !Container.available();
       container.getLifecycle().initialize();
       assert !Container.available();
-      assert Container.instance().getStatus().equals(Status.STARTING);
+      assert Container.instance().getStatus().equals(ContainerState.STARTING);
       container.getLifecycle().getBootstrap().startInitialization();
       assert !Container.available();
-      assert Container.instance().getStatus().equals(Status.STARTING);
+      assert Container.instance().getStatus().equals(ContainerState.STARTING);
       container.getLifecycle().getBootstrap().deployBeans();
       assert Container.available();
-      assert Container.instance().getStatus().equals(Status.INITIALIZED);
+      assert Container.instance().getStatus().equals(ContainerState.INITIALIZED);
       container.getLifecycle().getBootstrap().validateBeans().endInitialization();
       assert Container.available();
-      assert Container.instance().getStatus().equals(Status.VALIDATED);
+      assert Container.instance().getStatus().equals(ContainerState.VALIDATED);
       container.stopContainer();
       assert !Container.available();
    }



More information about the weld-commits mailing list