|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.jboss.mx.util.JBossNotificationBroadcasterSupport org.jboss.system.ServiceMBeanSupport org.jboss.ejb.Container org.jboss.ejb.SessionContainer
Container dedicated to session beans. Contains factored out redundancies between stateless and stateful treatments, because (extending the spec) we would like to also support stateful web services.
Nested Class Summary |
Nested classes inherited from class org.jboss.ejb.Container |
Container.AbstractContainerInterceptor |
Field Summary | |
protected Map |
beanMapping
These are the mappings between the remote interface methods and the bean methods. |
protected Map |
homeMapping
These are the mappings between the home interface methods and the container methods. |
protected InstancePool |
instancePool
This is the instancepool that is to be used |
protected Interceptor |
interceptor
This is the first interceptor in the chain. |
protected Class |
serviceEndpoint
this is the service endpoint class |
Fields inherited from class org.jboss.ejb.Container |
BASE_EJB_CONTAINER_NAME, beanClass, classLoader, createCount, EJB_CONTAINER_QUERY_NAME, EJB_TIMEOUT, ejbModule, EJBOBJECT_REMOVE, homeInterface, invokeStats, jaccContextID, localClassLoader, localHomeInterface, localInterface, localProxyFactory, lockManager, marshalledInvocationMapping, metaData, ORB_NAME, proxyFactories, proxyFactoryTL, remoteInterface, removeCount, rm, securityProxy, sm, tm, webClassLoader |
Fields inherited from class org.jboss.system.ServiceMBeanSupport |
log, server, SERVICE_CONTROLLER_SIG, serviceName |
Fields inherited from interface org.jboss.system.ServiceMBean |
CREATE_EVENT, CREATED, DESTROY_EVENT, DESTROYED, FAILED, REGISTERED, START_EVENT, STARTED, STARTING, states, STOP_EVENT, STOPPED, STOPPING, UNREGISTERED |
Constructor Summary | |
SessionContainer()
|
Method Summary | |
void |
addInterceptor(Interceptor in)
add an additional interceptor to the chain |
protected void |
checkCoherency()
|
protected void |
createInstanceCache()
no instance cache per default |
protected void |
createInstancePool()
creates a new instance pool |
protected void |
createInterceptors()
Initialize the interceptors by calling the chain |
protected void |
createInvokers()
creates the invokers |
protected void |
createPersistenceManager()
no persistence manager per default |
protected void |
createService()
The EJBDeployer calls this method. |
protected void |
destroyInstanceCache()
|
protected void |
destroyInstancePool()
|
protected void |
destroyInterceptors()
|
protected void |
destroyInvokers()
|
protected void |
destroyMarshalledInvocationMapping()
|
protected void |
destroyPersistenceManager()
|
protected void |
destroyService()
A default implementation of destroying the container service (no-op). |
protected Map |
getBeanMapping()
needed for sub-inner-class access (old jdk compiler bug) |
javax.ejb.EJBHome |
getEJBHome(Invocation mi)
|
javax.ejb.EJBLocalHome |
getEJBLocalHome(Invocation mi)
|
javax.ejb.EJBMetaData |
getEJBMetaDataHome()
|
javax.ejb.EJBMetaData |
getEJBMetaDataHome(Invocation mi)
|
javax.ejb.Handle |
getHandle(Invocation mi)
While the following methods are implemented in the client in the case of JRMP we would need to implement them to fully support other transport protocols |
javax.ejb.HomeHandle |
getHomeHandleHome()
|
javax.ejb.HomeHandle |
getHomeHandleHome(Invocation mi)
|
protected Map |
getHomeMapping()
needed for sub-inner-class access (old jdk compiler bug) |
InstancePool |
getInstancePool()
return instance pool |
Interceptor |
getInterceptor()
return first interceptor |
LocalProxyFactory |
getLocalProxyFactory()
return local proxy factory |
Object |
getPrimaryKey()
|
Object |
getPrimaryKey(Invocation mi)
|
Class |
getServiceEndpoint()
return service endpoint |
Object |
internalInvoke(Invocation mi)
This method does invocation interpositioning of tx and security, retrieves the instance from an object table, and invokes the method on the particular instance |
Object |
internalInvokeHome(Invocation mi)
This method is called when a method call comes in on the Home object. |
boolean |
isIdentical(Invocation mi)
|
void |
setInstancePool(InstancePool ip)
set the instance pool |
protected void |
setupBeanMapping()
build bean mappings for application logic |
protected void |
setUpBeanMappingImpl(Map map,
Method[] methods,
String declaringClass)
loop through methods and setup mapping |
protected abstract void |
setupHomeMapping()
how home methods are treated by container |
protected void |
setupMarshalledInvocationMapping()
sets up marshalled invocation mappings |
protected void |
startInstanceCache()
no instance cache per default |
protected void |
startInstancePool()
Start pool |
protected void |
startInterceptors()
Start all interceptors in the chain |
protected void |
startInvokers()
Start container invokers |
protected void |
startPersistenceManager()
no persistence manager per default |
protected void |
startService()
A default implementation of starting the container service. |
protected void |
stopInstanceCache()
no instance cache |
protected void |
stopInstancePool()
Stop pool |
protected void |
stopInterceptors()
Stop all interceptors in the chain |
protected void |
stopInvokers()
Stop container invoker |
protected void |
stopPersistenceManager()
no persistence |
protected void |
stopService()
A default implementation of stopping the container service (no-op). |
Methods inherited from class org.jboss.system.ServiceMBeanSupport |
create, destroy, getLog, getName, getNextNotificationSequenceNumber, getObjectName, getServer, getServiceName, getState, getStateString, jbossInternalCreate, jbossInternalDescription, jbossInternalDestroy, jbossInternalLifecycle, jbossInternalStart, jbossInternalStop, postDeregister, postRegister, preDeregister, preRegister, start, stop |
Methods inherited from class org.jboss.mx.util.JBossNotificationBroadcasterSupport |
addNotificationListener, getNotificationInfo, handleNotification, removeNotificationListener, removeNotificationListener, sendNotification |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.jboss.system.ServiceMBean |
getName, getState, getStateString, jbossInternalLifecycle |
Methods inherited from interface org.jboss.system.Service |
create, destroy, start, stop |
Field Detail |
protected Map homeMapping
protected Map beanMapping
protected Interceptor interceptor
protected Class serviceEndpoint
protected InstancePool instancePool
Constructor Detail |
public SessionContainer()
Method Detail |
public void setInstancePool(InstancePool ip)
public InstancePool getInstancePool()
public LocalProxyFactory getLocalProxyFactory()
public void addInterceptor(Interceptor in)
addInterceptor
in class Container
public Interceptor getInterceptor()
public Class getServiceEndpoint()
protected void createService() throws Exception
Container
createService
in class Container
Exception
- if loading the bean class failed
(ClassNotFoundException) or setting up "java:"
naming environment failed (DeploymentException)protected abstract void setupHomeMapping() throws Exception
Exception
protected void setUpBeanMappingImpl(Map map, Method[] methods, String declaringClass) throws NoSuchMethodException
NoSuchMethodException
protected void setupBeanMapping() throws NoSuchMethodException
NoSuchMethodException
protected void setupMarshalledInvocationMapping() throws Exception
Exception
protected void checkCoherency() throws Exception
Exception
protected void createInstancePool() throws Exception
Exception
protected void createInstanceCache() throws Exception
Exception
protected void createInvokers() throws Exception
Exception
protected void createInterceptors() throws Exception
Exception
protected void createPersistenceManager() throws Exception
Exception
protected void startService() throws Exception
Container
startService
in class Container
Exception
- An exception that occured during startprotected void startPersistenceManager() throws Exception
Exception
protected void startInstanceCache() throws Exception
Exception
protected void startInvokers() throws Exception
Exception
protected void startInstancePool() throws Exception
Exception
protected void startInterceptors() throws Exception
Exception
protected void stopService() throws Exception
Container
stopService
in class Container
Exception
protected void stopInterceptors()
protected void stopPersistenceManager()
protected void stopInstancePool()
protected void stopInstanceCache()
protected void stopInvokers()
protected void destroyService() throws Exception
Container
destroyService
in class Container
Exception
protected void destroyMarshalledInvocationMapping()
protected void destroyInterceptors()
protected void destroyPersistenceManager()
protected void destroyInstancePool()
protected void destroyInstanceCache()
protected void destroyInvokers()
public Object internalInvokeHome(Invocation mi) throws Exception
Container
internalInvokeHome
in class Container
mi
- the object holding all info about this invocation
Exception
public Object internalInvoke(Invocation mi) throws Exception
internalInvoke
in class Container
Exception
public javax.ejb.Handle getHandle(Invocation mi) throws RemoteException
RemoteException
public Object getPrimaryKey(Invocation mi) throws RemoteException
RemoteException
public Object getPrimaryKey() throws RemoteException
RemoteException
public javax.ejb.EJBHome getEJBHome(Invocation mi) throws RemoteException
RemoteException
public boolean isIdentical(Invocation mi) throws RemoteException
RemoteException
public javax.ejb.EJBMetaData getEJBMetaDataHome(Invocation mi) throws RemoteException
RemoteException
public javax.ejb.EJBMetaData getEJBMetaDataHome() throws RemoteException
RemoteException
public javax.ejb.HomeHandle getHomeHandleHome(Invocation mi) throws RemoteException
RemoteException
public javax.ejb.HomeHandle getHomeHandleHome() throws RemoteException
RemoteException
public javax.ejb.EJBLocalHome getEJBLocalHome(Invocation mi)
protected Map getHomeMapping()
protected Map getBeanMapping()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |