org.jboss.ejb.plugins.jrmp.server
Class JRMPContainerInvoker

java.lang.Object
  |
  +--java.rmi.server.RemoteObject
        |
        +--java.rmi.server.RemoteServer
              |
              +--org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker
All Implemented Interfaces:
ContainerInvoker, ContainerPlugin, ContainerRemote, java.rmi.Remote, java.io.Serializable, Service, XmlLoadable
Direct Known Subclasses:
JRMPContainerInvoker, JRMPContainerInvoker

public abstract class JRMPContainerInvoker
extends java.rmi.server.RemoteServer
implements ContainerRemote, ContainerInvoker, XmlLoadable

Version:
$Revision: 1.29 $
Author:
Rickard Öberg (rickard.oberg@telkel.com), Sebastien Alborini, Marc Fleury
See Also:
, Serialized Form

Field Summary
protected static int ANONYMOUS_PORT
           
protected  java.util.HashMap beanMethodInvokerMap
           
protected  Container container
           
protected  EJBMetaDataImpl ejbMetaData
           
protected  javax.ejb.EJBHome home
           
protected  java.util.HashMap homeMethodInvokerMap
           
protected  java.lang.String jndiName
           
protected  boolean optimize
           
protected  javax.ejb.EJBObject statelessObject
           
protected  int unicastObjectPort
           
 
Fields inherited from class java.rmi.server.RemoteObject
ref
 
Fields inherited from interface org.jboss.ejb.plugins.jrmp.interfaces.ContainerRemote
startup
 
Constructor Summary
JRMPContainerInvoker()
           
 
Method Summary
 void destroy()
           
abstract  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.
abstract  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.
abstract  javax.ejb.EJBObject getEntityEJBObject(java.lang.Object id)
          This method is called whenever an EJBObject implementation for an entitybean is needed.
abstract  javax.ejb.EJBObject getStatefulSessionEJBObject(java.lang.Object id)
          This method is called whenever an EJBObject implementation for a stateful session bean is needed.
abstract  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()
           
 java.rmi.MarshalledObject invoke(java.rmi.MarshalledObject mimo)
           
 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)
           
 java.rmi.MarshalledObject invokeHome(java.rmi.MarshalledObject mimo)
           
 java.lang.Object invokeHome(java.lang.reflect.Method m, java.lang.Object[] args, javax.transaction.Transaction tx, java.security.Principal identity, java.lang.Object credential)
           
 boolean isOptimized()
           
protected  void rebind(javax.naming.Context ctx, java.lang.String name, java.lang.Object val)
           
 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.rmi.server.RemoteServer
getClientHost, getLog, setLog
 
Methods inherited from class java.rmi.server.RemoteObject
equals, getRef, hashCode, toString, toStub
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

ANONYMOUS_PORT

protected static final int ANONYMOUS_PORT

optimize

protected boolean optimize

unicastObjectPort

protected int unicastObjectPort

container

protected Container container

jndiName

protected java.lang.String jndiName

ejbMetaData

protected EJBMetaDataImpl ejbMetaData

home

protected javax.ejb.EJBHome home

statelessObject

protected javax.ejb.EJBObject statelessObject

beanMethodInvokerMap

protected java.util.HashMap beanMethodInvokerMap

homeMethodInvokerMap

protected java.util.HashMap homeMethodInvokerMap
Constructor Detail

JRMPContainerInvoker

public JRMPContainerInvoker()
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 abstract 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 abstract 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 abstract 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 abstract 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 abstract 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

invokeHome

public java.rmi.MarshalledObject invokeHome(java.rmi.MarshalledObject mimo)
                                     throws java.lang.Exception
Specified by:
invokeHome in interface ContainerRemote

invoke

public java.rmi.MarshalledObject invoke(java.rmi.MarshalledObject mimo)
                                 throws java.lang.Exception
Specified by:
invoke in interface ContainerRemote

invokeHome

public java.lang.Object invokeHome(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
Specified by:
invokeHome in interface ContainerRemote

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
Specified by:
invoke in interface ContainerRemote

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

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

rebind

protected void rebind(javax.naming.Context ctx,
                      java.lang.String name,
                      java.lang.Object val)
               throws javax.naming.NamingException


Copyright © 2000 The jBoss Organization. All Rights Reserved.