[jboss-cvs] JBossAS SVN: r83600 - in projects/webbeans-ri-int/trunk/ejb/src/main/java/org/jboss/webbeans/integration/ejb: util and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Jan 29 03:22:11 EST 2009


Author: alesj
Date: 2009-01-29 03:22:11 -0500 (Thu, 29 Jan 2009)
New Revision: 83600

Modified:
   projects/webbeans-ri-int/trunk/ejb/src/main/java/org/jboss/webbeans/integration/ejb/JBossEjbResolver.java
   projects/webbeans-ri-int/trunk/ejb/src/main/java/org/jboss/webbeans/integration/ejb/util/JBossEjb.java
Log:
[WBRI-121]; fix resolver injection.

Modified: projects/webbeans-ri-int/trunk/ejb/src/main/java/org/jboss/webbeans/integration/ejb/JBossEjbResolver.java
===================================================================
--- projects/webbeans-ri-int/trunk/ejb/src/main/java/org/jboss/webbeans/integration/ejb/JBossEjbResolver.java	2009-01-29 06:50:52 UTC (rev 83599)
+++ projects/webbeans-ri-int/trunk/ejb/src/main/java/org/jboss/webbeans/integration/ejb/JBossEjbResolver.java	2009-01-29 08:22:11 UTC (rev 83600)
@@ -39,6 +39,7 @@
    protected KernelController controller;
    protected EjbReferenceResolver resolver;
    protected PersistenceUnitDependencyResolver persistenceUnitDependencyResolver;
+   protected JBossEjb jbossEjb;
 
    public void setDeploymentUnit(DeploymentUnit du)
    {
@@ -63,6 +64,11 @@
       this.persistenceUnitDependencyResolver = persistenceUnitDependencyResolver;
    }
 
+   public void setJbossEjb(JBossEjb jbossEjb)
+   {
+      this.jbossEjb = jbossEjb;
+   }
+
    private static String getPersistenceUnitSupplier(DeploymentUnit deploymentUnit, PersistenceUnitDependencyResolver persistenceUnitDependencyResolver, String persistenceUnitName)
    {
       if ((deploymentUnit.getAttachment(AttachmentNames.PROCESSED_METADATA, JBossMetaData.class) != null && deploymentUnit.getAttachment(JBossMetaData.class).isEJB3x()) || (deploymentUnit.getAttachment(JBossWebMetaData.class) != null))
@@ -141,7 +147,7 @@
       {
          throw new IllegalStateException("No persistence unit available which can be injected into " + injectionPoint);
       }
-      PersistenceUnitDeployment deployment = JBossEjb.lookupPersistenceUnitDeployment(beanName, controller);
+      PersistenceUnitDeployment deployment = jbossEjb.lookupPersistenceUnitDeployment(beanName);
       ManagedEntityManagerFactory managedFactory = deployment.getManagedFactory();
       return new InjectedEntityManagerFactory(managedFactory).createEntityManager();
    }

Modified: projects/webbeans-ri-int/trunk/ejb/src/main/java/org/jboss/webbeans/integration/ejb/util/JBossEjb.java
===================================================================
--- projects/webbeans-ri-int/trunk/ejb/src/main/java/org/jboss/webbeans/integration/ejb/util/JBossEjb.java	2009-01-29 06:50:52 UTC (rev 83599)
+++ projects/webbeans-ri-int/trunk/ejb/src/main/java/org/jboss/webbeans/integration/ejb/util/JBossEjb.java	2009-01-29 08:22:11 UTC (rev 83600)
@@ -1,8 +1,11 @@
 package org.jboss.webbeans.integration.ejb.util;
 
+import org.jboss.beans.metadata.api.annotations.Inject;
 import org.jboss.dependency.spi.ControllerContext;
+import org.jboss.ejb3.common.resolvers.spi.EjbReferenceResolver;
 import org.jboss.jpa.deployment.PersistenceUnitDeployment;
 import org.jboss.kernel.spi.dependency.KernelController;
+import org.jboss.kernel.plugins.bootstrap.basic.KernelConstants;
 
 /**
  * Utitlies for use with JBoss EJB implementation
@@ -13,41 +16,37 @@
  */
 public class JBossEjb
 {
-   private static class NoSuchInstantiatedBeanException extends IllegalArgumentException 
+   private KernelController controller;
+   private EjbReferenceResolver resolver;
+
+   @Inject
+   public void setResolver(EjbReferenceResolver resolver)
    {
-      public NoSuchInstantiatedBeanException()
-      {
-         super();
-      }
+      this.resolver = resolver;
+   }
 
-      public NoSuchInstantiatedBeanException(String arg0, Throwable arg1)
-      {
-         super(arg0, arg1);
-      }
+   public EjbReferenceResolver getResolver()
+   {
+      return resolver;
+   }
 
-      public NoSuchInstantiatedBeanException(String arg0)
-      {
-         super(arg0);
-      }
+   @Inject(bean = KernelConstants.KERNEL_CONTROLLER_NAME)
+   public void setController(KernelController controller)
+   {
+      this.controller = controller;
+   }
 
-      public NoSuchInstantiatedBeanException(Throwable arg0)
-      {
-         super(arg0);
-      }
-   }
-   
    /**
     * Get the EjbReferenceResolver from the MC controller.
     *
     * @param name the bean name
-    * @param controller the controller
     * @return the EjbReferenceResolver
     */
-   public static PersistenceUnitDeployment lookupPersistenceUnitDeployment(String name, KernelController controller)
+   public PersistenceUnitDeployment lookupPersistenceUnitDeployment(String name)
    {
       try
       {
-         return (PersistenceUnitDeployment) lookup(name, false, controller);
+         return (PersistenceUnitDeployment) lookup(name, false);
       }
       catch (NoSuchInstantiatedBeanException e) 
       {
@@ -60,10 +59,9 @@
     *
     * @param name the bean name
     * @param shouldExist must the bean be present
-    * @param controller the controller
     * @return the bean
     */
-   public static Object lookup(final Object name, boolean shouldExist, KernelController controller)
+   public Object lookup(final Object name, boolean shouldExist)
    {
       // Get Controller Context
       ControllerContext context = controller.getInstalledContext(name);
@@ -89,4 +87,27 @@
       // Return
       return context.getTarget();
    }
+
+   private static class NoSuchInstantiatedBeanException extends IllegalArgumentException
+   {
+      public NoSuchInstantiatedBeanException()
+      {
+         super();
+      }
+
+      public NoSuchInstantiatedBeanException(String arg0, Throwable arg1)
+      {
+         super(arg0, arg1);
+      }
+
+      public NoSuchInstantiatedBeanException(String arg0)
+      {
+         super(arg0);
+      }
+
+      public NoSuchInstantiatedBeanException(Throwable arg0)
+      {
+         super(arg0);
+      }
+   }
 }




More information about the jboss-cvs-commits mailing list