[webbeans-commits] Webbeans SVN: r281 - in ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans: ejb and 2 other directories.

webbeans-commits at lists.jboss.org webbeans-commits at lists.jboss.org
Sat Nov 8 13:01:05 EST 2008


Author: gavin.king at jboss.com
Date: 2008-11-08 13:01:05 -0500 (Sat, 08 Nov 2008)
New Revision: 281

Added:
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ejb/DefaultEnterpriseBeanLookup.java
Removed:
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ejb/EjbManager.java
Modified:
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ManagerImpl.java
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/injectable/EnterpriseConstructor.java
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/model/bean/AbstractEnterpriseBeanModel.java
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/model/bean/EnterpriseBeanModel.java
Log:
update to latest spec def of enterprise bean lookup algo

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ManagerImpl.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ManagerImpl.java	2008-11-07 18:34:54 UTC (rev 280)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ManagerImpl.java	2008-11-08 18:01:05 UTC (rev 281)
@@ -28,16 +28,20 @@
 import javax.webbeans.manager.Interceptor;
 import javax.webbeans.manager.Manager;
 
+import org.jboss.webbeans.bean.SimpleBean;
 import org.jboss.webbeans.contexts.ApplicationContext;
 import org.jboss.webbeans.contexts.DependentContext;
 import org.jboss.webbeans.contexts.RequestContext;
 import org.jboss.webbeans.contexts.SessionContext;
-import org.jboss.webbeans.ejb.EjbManager;
+import org.jboss.webbeans.ejb.DefaultEnterpriseBeanLookup;
 import org.jboss.webbeans.event.EventBus;
 import org.jboss.webbeans.exceptions.NameResolutionLocation;
 import org.jboss.webbeans.exceptions.TypesafeResolutionLocation;
 import org.jboss.webbeans.injectable.Injectable;
 import org.jboss.webbeans.injectable.ResolverInjectable;
+import org.jboss.webbeans.introspector.AnnotatedClass;
+import org.jboss.webbeans.introspector.impl.SimpleAnnotatedClass;
+import org.jboss.webbeans.model.bean.SimpleBeanModel;
 import org.jboss.webbeans.util.ClientProxy;
 import org.jboss.webbeans.util.ProxyPool;
 import org.jboss.webbeans.util.Reflections;
@@ -76,7 +80,6 @@
 
    private List<Class<? extends Annotation>> enabledDeploymentTypes;
    private ModelManager modelManager;
-   private EjbManager ejbLookupManager;
    private EventBus eventBus;
    private ResolutionManager resolutionManager;
    private ContextMap contextMap;
@@ -90,13 +93,14 @@
       initEnabledDeploymentTypes(null);
       initContexts(null);
       this.modelManager = new ModelManager();
-      this.ejbLookupManager = new EjbManager();
       this.beans = new CopyOnWriteArrayList<Bean<?>>();
       this.eventBus = new EventBus();
       this.resolutionManager = new ResolutionManager(this);
       this.proxyPool = new ProxyPool(this);
       this.decorators = new HashSet<Decorator>();
       this.interceptors = new HashSet<Interceptor>();
+      SimpleAnnotatedClass<DefaultEnterpriseBeanLookup> sc = new SimpleAnnotatedClass<DefaultEnterpriseBeanLookup>(DefaultEnterpriseBeanLookup.class, new HashMap<Class<? extends Annotation>, Annotation>());
+      addBean( new SimpleBean<DefaultEnterpriseBeanLookup>( new SimpleBeanModel<DefaultEnterpriseBeanLookup>(sc, null, this), this ) );
    }
 
    protected void initEnabledDeploymentTypes(List<Class<? extends Annotation>> enabledDeploymentTypes)
@@ -172,11 +176,6 @@
       return this.modelManager;
    }
 
-   public EjbManager getEjbManager()
-   {
-      return ejbLookupManager;
-   }
-
    public <T> Set<Bean<T>> resolveByType(Class<T> type, Annotation... bindingTypes)
    {
       return resolveByType(new ResolverInjectable<T>(type, bindingTypes, getModelManager()));

Added: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ejb/DefaultEnterpriseBeanLookup.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ejb/DefaultEnterpriseBeanLookup.java	                        (rev 0)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ejb/DefaultEnterpriseBeanLookup.java	2008-11-08 18:01:05 UTC (rev 281)
@@ -0,0 +1,55 @@
+package org.jboss.webbeans.ejb;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.webbeans.CreationException;
+import javax.webbeans.Standard;
+import javax.webbeans.manager.EnterpriseBeanLookup;
+
+import org.jboss.webbeans.util.JNDI;
+
+ at Standard
+public class DefaultEnterpriseBeanLookup implements EnterpriseBeanLookup
+{
+   public Object lookup(String ejbName)
+   {
+      // TODO Auto-generated method stub
+      return null;
+   }
+   private Map<String, EjbMetaData<?>> ejbMetaDataMap = new HashMap<String, EjbMetaData<?>>();
+     
+   // TODO Should this be static?
+   public <T> T lookup(EjbMetaData<T> ejb)
+   {
+      if (ejb.getEjbLinkJndiName() != null)
+      {
+         return JNDI.lookup(ejb.getEjbLinkJndiName(), ejb.getType());
+      }
+      try
+      {
+         return JNDI.lookup(ejb.getDefaultJndiName(), ejb.getType());
+      }
+      catch (Exception e) 
+      {
+         throw new CreationException("could not find the EJB in JNDI", e);
+      }
+   }
+   
+   @SuppressWarnings("unchecked")
+   public <T> EjbMetaData<T> registerEjbMetaData(Class<? extends T> clazz)
+   {
+      // TODO replace with an application lookup
+      if (!ejbMetaDataMap.containsKey(clazz))
+      {
+         EjbMetaData<T> ejbMetaData = new EjbMetaData<T>(clazz); 
+         ejbMetaDataMap.put(ejbMetaData.getEjbName(), ejbMetaData);
+         return ejbMetaData;
+      }
+      else
+      {
+         return (EjbMetaData<T>) ejbMetaDataMap.get(clazz);
+      }
+      
+   }
+}

Deleted: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ejb/EjbManager.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ejb/EjbManager.java	2008-11-07 18:34:54 UTC (rev 280)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ejb/EjbManager.java	2008-11-08 18:01:05 UTC (rev 281)
@@ -1,59 +0,0 @@
-package org.jboss.webbeans.ejb;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import javax.webbeans.manager.EnterpriseBeanLookup;
-
-import org.jboss.webbeans.util.JNDI;
-
-
-public class EjbManager
-{
-   
-   private Map<Class<?>, EjbMetaData<?>> ejbMetaDataMap = new HashMap<Class<?>, EjbMetaData<?>>();
-   
-   private EnterpriseBeanLookup enterpriseBeanLookup;
-   
-   public EjbManager()
-   {
-      // TODO Write enterpriseBeanLookup instantiation
-   }
-   
-   // TODO Should this be static?
-   public <T> T lookup(EjbMetaData<T> ejb)
-   {
-      if (ejb.getEjbLinkJndiName() != null)
-      {
-         return (T) JNDI.lookup(ejb.getEjbLinkJndiName(), ejb.getType());
-      }
-      try
-      {
-         // TODO How is a JNDI lookup failure shown to us?
-         return (T) JNDI.lookup(ejb.getDefaultJndiName(), ejb.getType());
-      }
-      catch (Exception e) 
-      {
-         
-      }
-      return (T) enterpriseBeanLookup.lookup(ejb.getEjbName());
-   }
-   
-   @SuppressWarnings("unchecked")
-   public <T> EjbMetaData<T> getEjbMetaData(Class<? extends T> clazz)
-   {
-      // TODO replace with an application lookup
-      if (!ejbMetaDataMap.containsKey(clazz))
-      {
-         EjbMetaData<T> ejbMetaData = new EjbMetaData<T>(clazz); 
-         ejbMetaDataMap.put(clazz, ejbMetaData);
-         return ejbMetaData;
-      }
-      else
-      {
-         return (EjbMetaData<T>) ejbMetaDataMap.get(clazz);
-      }
-      
-   }
-
-}

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/injectable/EnterpriseConstructor.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/injectable/EnterpriseConstructor.java	2008-11-07 18:34:54 UTC (rev 280)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/injectable/EnterpriseConstructor.java	2008-11-08 18:01:05 UTC (rev 281)
@@ -1,5 +1,7 @@
 package org.jboss.webbeans.injectable;
 
+import javax.webbeans.manager.EnterpriseBeanLookup;
+
 import org.jboss.webbeans.ManagerImpl;
 import org.jboss.webbeans.ejb.EjbMetaData;
 
@@ -20,7 +22,7 @@
       if (manager instanceof ManagerImpl)
       {
          ManagerImpl containerImpl = (ManagerImpl) manager;
-         return containerImpl.getEjbManager().lookup(ejbMetaData);
+         return (T) containerImpl.getInstanceByType(EnterpriseBeanLookup.class).lookup(ejbMetaData.getEjbName());
       }
       else
       {

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/model/bean/AbstractEnterpriseBeanModel.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/model/bean/AbstractEnterpriseBeanModel.java	2008-11-07 18:34:54 UTC (rev 280)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/model/bean/AbstractEnterpriseBeanModel.java	2008-11-08 18:01:05 UTC (rev 281)
@@ -28,7 +28,7 @@
    protected void init(ManagerImpl container)
    {
       super.init(container);
-      ejbMetaData = container.getEjbManager().getEjbMetaData(getType());
+      ejbMetaData = new EjbMetaData<T>(getType());
       checkEnterpriseBeanTypeAllowed();
       checkEnterpriseScopeAllowed();
       checkConflictingRoles();

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/model/bean/EnterpriseBeanModel.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/model/bean/EnterpriseBeanModel.java	2008-11-07 18:34:54 UTC (rev 280)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/model/bean/EnterpriseBeanModel.java	2008-11-08 18:01:05 UTC (rev 281)
@@ -79,7 +79,7 @@
    }
    
    
-// TODO loggigng
+// TODO logging
    protected void initRemoveMethod(ManagerImpl container)
    {
       if (getEjbMetaData().isStateful())




More information about the weld-commits mailing list