[jboss-cvs] JBossAS SVN: r87384 - projects/webbeans-ri-int/trunk/ejb/src/main/java/org/jboss/webbeans/integration/messaging.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Apr 15 14:36:12 EDT 2009


Author: petemuir
Date: 2009-04-15 14:36:12 -0400 (Wed, 15 Apr 2009)
New Revision: 87384

Modified:
   projects/webbeans-ri-int/trunk/ejb/src/main/java/org/jboss/webbeans/integration/messaging/JBossJmsServices.java
Log:
Add JMS lifecycle

Modified: projects/webbeans-ri-int/trunk/ejb/src/main/java/org/jboss/webbeans/integration/messaging/JBossJmsServices.java
===================================================================
--- projects/webbeans-ri-int/trunk/ejb/src/main/java/org/jboss/webbeans/integration/messaging/JBossJmsServices.java	2009-04-15 16:54:04 UTC (rev 87383)
+++ projects/webbeans-ri-int/trunk/ejb/src/main/java/org/jboss/webbeans/integration/messaging/JBossJmsServices.java	2009-04-15 18:36:12 UTC (rev 87384)
@@ -1,5 +1,9 @@
 package org.jboss.webbeans.integration.messaging;
 
+import javax.inject.ExecutionException;
+import javax.jms.Destination;
+import javax.jms.QueueConnectionFactory;
+import javax.jms.TopicConnectionFactory;
 import javax.naming.Context;
 import javax.naming.InitialContext;
 import javax.naming.NamingException;
@@ -10,6 +14,8 @@
 public class JBossJmsServices extends AbstractResourceServices implements JmsServices
 {
    
+   private static final String CONNECTION_FACTORY_NAME = "ConnectionFactory";
+   
    private final Context context;
    
    public JBossJmsServices() throws NamingException
@@ -17,11 +23,36 @@
       this.context = new InitialContext();
    }
    
-   public Object resolveDestination(String jndiName, String mappedName)
+   @SuppressWarnings("unchecked")
+   public <T extends Destination> T resolveDestination(String jndiName, String mappedName)
    {
-      return resolveResource(jndiName, mappedName);
+      return (T) resolveResource(jndiName, mappedName);
    }
    
+   public QueueConnectionFactory getQueueConnectionFactory()
+   {
+      try
+      {
+         return (QueueConnectionFactory) context.lookup(CONNECTION_FACTORY_NAME);
+      }
+      catch (NamingException e)
+      {
+         throw new ExecutionException("Error looking up connection factory in JNDI " + CONNECTION_FACTORY_NAME, e);
+      }
+   }
+   
+   public TopicConnectionFactory getTopicConnectionFactory()
+   {
+      try
+      {
+         return (TopicConnectionFactory) context.lookup(CONNECTION_FACTORY_NAME);
+      }
+      catch (NamingException e)
+      {
+         throw new ExecutionException("Error looking up connection factory in JNDI " + CONNECTION_FACTORY_NAME, e);
+      }
+   }
+   
    @Override
    protected Context getContext()
    {




More information about the jboss-cvs-commits mailing list