org.objectweb.jonas_ejb.container
Class JStatelessFactory

java.lang.Object
  extended byorg.objectweb.jonas_ejb.container.JFactory
      extended byorg.objectweb.jonas_ejb.container.JSessionFactory
          extended byorg.objectweb.jonas_ejb.container.JStatelessFactory
All Implemented Interfaces:
BeanFactory

public class JStatelessFactory
extends JSessionFactory

This class is a factory for a Session Stateless Bean.

Author:
Philippe Durieux

Field Summary
protected  java.util.List bctxlist
           
protected  int instanceCount
           
protected  int maxCacheSize
           
protected  int minPoolSize
           
protected  JServiceEndpoint serviceEndpoint
           
 
Fields inherited from class org.objectweb.jonas_ejb.container.JSessionFactory
home, isStateful, isSynchro, localhome, sessionList
 
Fields inherited from class org.objectweb.jonas_ejb.container.JFactory
beanclass, cont, dd, ejb10Env, ejbname, JNDICtx, myTimerService, naming, tm, txbeanmanaged
 
Constructor Summary
JStatelessFactory(SessionStatelessDesc dd, JContainer cont)
          constructor
 
Method Summary
 JSessionSwitch createNewSession()
          Creates a new Session Stateless
 int getCacheSize()
           
 JSessionContext getJContext()
           
 int getMaxCacheSize()
           
 int getMinPoolSize()
           
 int getPoolSize()
          Get the size of the instance pool for this bean
 javax.ejb.TimerService getTimerService()
          Obtains the TimerService associated for this Bean
 void notifyTimeout(javax.ejb.Timer timer)
          Notify a timeout for this bean
 void reduceCache()
          Reduce number of instances in memory in the free list we reduce to the minPoolSize
 void releaseJContext(JContext ctx)
          Called after each method call
 
Methods inherited from class org.objectweb.jonas_ejb.container.JSessionFactory
checkTransaction, createEJB, getHome, getLocalHome, getTimeout, isSessionSynchro, isStateful, removeEJB, setTimeout, stop, sync
 
Methods inherited from class org.objectweb.jonas_ejb.container.JFactory
checkJonasVersion, checkSecurity, checkTransactionContainer, getContainer, getDeploymentDescriptor, getEjb10Environment, getEJBName, getEnv, getInitialContext, getTransactionManager, init, isClassAvailable, isTxBeanManaged, myClassLoader, postInvoke, postInvokeRemote, preInvoke, preInvokeRemote, resetComponentContext, setComponentContext
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

bctxlist

protected java.util.List bctxlist

serviceEndpoint

protected JServiceEndpoint serviceEndpoint

instanceCount

protected int instanceCount

minPoolSize

protected int minPoolSize

maxCacheSize

protected int maxCacheSize
Constructor Detail

JStatelessFactory

public JStatelessFactory(SessionStatelessDesc dd,
                         JContainer cont)
constructor

Parameters:
dd - Session Stateless Deployment Descriptor
Method Detail

getPoolSize

public int getPoolSize()
Description copied from interface: BeanFactory
Get the size of the instance pool for this bean

Specified by:
getPoolSize in interface BeanFactory
Specified by:
getPoolSize in class JFactory
Returns:
the Instance pool size for this Ejb

reduceCache

public void reduceCache()
Reduce number of instances in memory in the free list we reduce to the minPoolSize


getTimerService

public javax.ejb.TimerService getTimerService()
Obtains the TimerService associated for this Bean

Specified by:
getTimerService in class JFactory
Returns:
a JTimerService instance.

createNewSession

public JSessionSwitch createNewSession()
                                throws java.rmi.RemoteException
Creates a new Session Stateless

Specified by:
createNewSession in class JSessionFactory
Returns:
the new JSessionSwitch
Throws:
java.rmi.RemoteException

getJContext

public JSessionContext getJContext()
Specified by:
getJContext in class JSessionFactory
Returns:
a SessionContext for Stateless Session Bean

releaseJContext

public void releaseJContext(JContext ctx)
Called after each method call

Parameters:
ctx - the Session Context

notifyTimeout

public void notifyTimeout(javax.ejb.Timer timer)
Notify a timeout for this bean

Parameters:
timer - timer whose expiration caused this notification.

getMinPoolSize

public int getMinPoolSize()
Returns:
min pool size for Jmx

getMaxCacheSize

public int getMaxCacheSize()
Returns:
max cache size for Jmx

getCacheSize

public int getCacheSize()
Returns:
current cache size ( = nb of instance created) for Jmx