org.jboss.ejb.plugins.jms
Class JMSContainerInvoker

java.lang.Object
  |
  +--org.jboss.ejb.plugins.jms.JMSContainerInvoker
All Implemented Interfaces:
ContainerInvoker, ContainerPlugin, Service, XmlLoadable

public class JMSContainerInvoker
extends java.lang.Object
implements ContainerInvoker, XmlLoadable

ContainerInvoker for JMS MessageDrivenBeans, based on JRMPContainerInvoker.

Version:
$Revision: 1.8 $
Author:
Peter Antman (peter.antman@tim.se), Rickard Öberg (rickard.oberg@telkel.com), Sebastien Alborini, Marc Fleury
See Also:

Field Summary
protected  int acknowledgeMode
           
protected  javax.jms.Connection connection
           
protected  javax.jms.ConnectionConsumer connectionConsumer
           
protected  Container container
           
protected  org.jboss.ejb.plugins.jms.JMSContainerInvoker.ExceptionListenerImpl exListener
           
protected  java.lang.String jMSProviderAdapterJNDI
           
protected  int maxMessagesNr
           
protected  int maxPoolSize
           
protected  boolean optimize
           
protected  javax.jms.ServerSessionPool pool
           
protected  java.lang.String serverSessionPoolFactoryJNDI
           
protected  TxManager tm
           
 
Constructor Summary
JMSContainerInvoker()
           
 
Method Summary
 void destroy()
           
 javax.ejb.EJBHome getEJBHome()
          This method is called whenever the EJBHome implementation for this container is needed.
 javax.ejb.EJBMetaData getEJBMetaData()
          This method is called whenever the metadata for this container is needed.
 java.util.Collection getEntityCollection(java.util.Collection ids)
          This method is called whenever a collection of EJBObjects for a collection of primary keys is needed.
 javax.ejb.EJBObject getEntityEJBObject(java.lang.Object id)
          This method is called whenever an EJBObject implementation for an entitybean is needed.
 javax.ejb.EJBObject getStatefulSessionEJBObject(java.lang.Object id)
          This method is called whenever an EJBObject implementation for a stateful session bean is needed.
 javax.ejb.EJBObject getStatelessSessionEJBObject()
          This method is called whenever an EJBObject implementation for a stateless session bean is needed.
 void importXml(org.w3c.dom.Element element)
           
 void init()
           
protected  void innerStop()
           
 java.lang.Object invoke(java.lang.Object id, java.lang.reflect.Method m, java.lang.Object[] args, javax.transaction.Transaction tx, java.security.Principal identity, java.lang.Object credential)
           
 boolean isOptimized()
           
 void setContainer(Container con)
          This callback is set by the container so that the plugin may access it
 void setOptimized(boolean optimize)
           
 void start()
           
 void stop()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

optimize

protected boolean optimize

maxMessagesNr

protected int maxMessagesNr

maxPoolSize

protected int maxPoolSize

jMSProviderAdapterJNDI

protected java.lang.String jMSProviderAdapterJNDI

serverSessionPoolFactoryJNDI

protected java.lang.String serverSessionPoolFactoryJNDI

acknowledgeMode

protected int acknowledgeMode

container

protected Container container

connection

protected javax.jms.Connection connection

connectionConsumer

protected javax.jms.ConnectionConsumer connectionConsumer

tm

protected TxManager tm

pool

protected javax.jms.ServerSessionPool pool

exListener

protected org.jboss.ejb.plugins.jms.JMSContainerInvoker.ExceptionListenerImpl exListener
Constructor Detail

JMSContainerInvoker

public JMSContainerInvoker()
Method Detail

setOptimized

public void setOptimized(boolean optimize)

isOptimized

public boolean isOptimized()

getEJBMetaData

public javax.ejb.EJBMetaData getEJBMetaData()
Description copied from interface: ContainerInvoker
This method is called whenever the metadata for this container is needed.
Specified by:
getEJBMetaData in interface ContainerInvoker
Following copied from interface: org.jboss.ejb.ContainerInvoker
Returns:
an implementation of the EJBMetaData interface

getEJBHome

public javax.ejb.EJBHome getEJBHome()
Description copied from interface: ContainerInvoker
This method is called whenever the EJBHome implementation for this container is needed.
Specified by:
getEJBHome in interface ContainerInvoker
Following copied from interface: org.jboss.ejb.ContainerInvoker
Returns:
an implementation of the home interface for this container

getStatelessSessionEJBObject

public javax.ejb.EJBObject getStatelessSessionEJBObject()
Description copied from interface: ContainerInvoker
This method is called whenever an EJBObject implementation for a stateless session bean is needed.
Specified by:
getStatelessSessionEJBObject in interface ContainerInvoker
Following copied from interface: org.jboss.ejb.ContainerInvoker
Returns:
an implementation of the remote interface for this container
Throws:
java.rmi.RemoteException - thrown if the EJBObject could not be created

getStatefulSessionEJBObject

public javax.ejb.EJBObject getStatefulSessionEJBObject(java.lang.Object id)
Description copied from interface: ContainerInvoker
This method is called whenever an EJBObject implementation for a stateful session bean is needed.
Specified by:
getStatefulSessionEJBObject in interface ContainerInvoker
Following copied from interface: org.jboss.ejb.ContainerInvoker
Parameters:
id - the id of the session
Returns:
an implementation of the remote interface for this container
Throws:
java.rmi.RemoteException - thrown if the EJBObject could not be created

getEntityEJBObject

public javax.ejb.EJBObject getEntityEJBObject(java.lang.Object id)
Description copied from interface: ContainerInvoker
This method is called whenever an EJBObject implementation for an entitybean is needed.
Specified by:
getEntityEJBObject in interface ContainerInvoker
Following copied from interface: org.jboss.ejb.ContainerInvoker
Parameters:
id - the primary key of the entity
Returns:
an implementation of the remote interface for this container
Throws:
java.rmi.RemoteException - thrown if the EJBObject could not be created

getEntityCollection

public java.util.Collection getEntityCollection(java.util.Collection ids)
Description copied from interface: ContainerInvoker
This method is called whenever a collection of EJBObjects for a collection of primary keys is needed.
Specified by:
getEntityCollection in interface ContainerInvoker
Following copied from interface: org.jboss.ejb.ContainerInvoker
Parameters:
enum - enumeration of primary keys
Returns:
a collection of EJBObjects implementing the remote interface for this container
Throws:
java.rmi.RemoteException - thrown if the EJBObjects could not be created

invoke

public java.lang.Object invoke(java.lang.Object id,
                               java.lang.reflect.Method m,
                               java.lang.Object[] args,
                               javax.transaction.Transaction tx,
                               java.security.Principal identity,
                               java.lang.Object credential)
                        throws java.lang.Exception

setContainer

public void setContainer(Container con)
Description copied from interface: ContainerPlugin
This callback is set by the container so that the plugin may access it
Specified by:
setContainer in interface ContainerPlugin
Following copied from interface: org.jboss.ejb.ContainerPlugin
Parameters:
con - the container using this plugin

init

public void init()
          throws java.lang.Exception
Specified by:
init in interface Service

start

public void start()
           throws java.lang.Exception
Specified by:
start in interface Service

stop

public void stop()
Specified by:
stop in interface Service

innerStop

protected void innerStop()

destroy

public void destroy()
Specified by:
destroy in interface Service

importXml

public void importXml(org.w3c.dom.Element element)
               throws DeploymentException
Specified by:
importXml in interface XmlLoadable


Copyright © 2000 The JBoss Organization. All Rights Reserved.