|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jboss.ejb.plugins.CMPClusteredInMemoryPersistenceManager
public class CMPClusteredInMemoryPersistenceManager
EntityPersistenceStore implementation storing values in-memory and shared accross the cluster through the DistributedState service from the clustering framework. It always uses the DefaultPartition.
EntityPersistenceStore
,
CMPInMemoryPersistenceManager
,
DistributedState
Field Summary | |
---|---|
protected EntityContainer |
con
|
protected org.jboss.ha.framework.interfaces.DistributedState |
ds
|
protected String |
DS_CATEGORY
|
protected Field |
idField
|
protected Method |
isModified
Optional isModified method used by storeEntity |
Constructor Summary | |
---|---|
CMPClusteredInMemoryPersistenceManager()
|
Method Summary | |
---|---|
void |
activateEntity(EntityEnterpriseContext instance)
This method is called when an entity shall be activated. |
void |
create()
create the service, do expensive operations etc |
Object |
createBeanClassInstance()
Returns a new instance of the bean class or a subclass of the bean class. |
Object |
createEntity(Method m,
Object[] args,
EntityEnterpriseContext ctx)
This method is called whenever an entity is to be created. |
void |
destroy()
destroy the service, tear down |
Collection |
findEntities(Method finderMethod,
Object[] args,
EntityEnterpriseContext instance,
GenericEntityObjectFactory factory)
This method is called when collections of entities are to be found. |
Object |
findEntity(Method finderMethod,
Object[] args,
EntityEnterpriseContext instance,
GenericEntityObjectFactory factory)
This method is called when single entities are to be found. |
void |
initEntity(EntityEnterpriseContext ctx)
Initializes the instance context. |
boolean |
isModified(EntityEnterpriseContext ctx)
|
boolean |
isStoreRequired(EntityEnterpriseContext ctx)
This method is used to determine if an entity should be stored. |
void |
loadEntity(EntityEnterpriseContext ctx)
This method is called whenever an entity shall be load from the underlying storage. |
void |
passivateEntity(EntityEnterpriseContext instance)
This method is called when an entity shall be passivate. |
Object |
postCreateEntity(Method m,
Object[] args,
EntityEnterpriseContext ctx)
This method is called after the ejbCreate. |
void |
removeEntity(EntityEnterpriseContext ctx)
This method is called when an entity shall be removed from the underlying storage. |
void |
setContainer(Container con)
This callback is set by the container so that the plugin may access it |
void |
start()
start the service, create is already called |
void |
stop()
stop the service |
void |
storeEntity(EntityEnterpriseContext ctx)
This method is called whenever an entity shall be stored to the underlying storage. |
protected void |
storeEntity(Object id,
Object obj)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected EntityContainer con
protected Field idField
protected org.jboss.ha.framework.interfaces.DistributedState ds
protected String DS_CATEGORY
protected Method isModified
Constructor Detail |
---|
public CMPClusteredInMemoryPersistenceManager()
Method Detail |
---|
public void setContainer(Container con)
setContainer
in interface ContainerPlugin
con
- The container using this plugin.public void create() throws Exception
create
in interface Service
Exception
public void start() throws Exception
start
in interface Service
Exception
public void stop()
stop
in interface Service
public void destroy()
destroy
in interface Service
public Object createBeanClassInstance() throws Exception
createBeanClassInstance
in interface EntityPersistenceStore
Exception
public void initEntity(EntityEnterpriseContext ctx)
This method is called before createEntity, and should reset the value of all cmpFields to 0 or null.
initEntity
in interface EntityPersistenceStore
ctx
- public Object createEntity(Method m, Object[] args, EntityEnterpriseContext ctx) throws Exception
createEntity
in interface EntityPersistenceStore
m
- the create method in the home interface that was
calledargs
- any create parametersctx
- the instance ctx being used for this create call
Exception
public Object postCreateEntity(Method m, Object[] args, EntityEnterpriseContext ctx) throws Exception
postCreateEntity
in interface EntityPersistenceStore
m
- the ejbPostCreate method in the bean class that was
calledargs
- any create parametersctx
- the instance being used for this create call
Exception
public Object findEntity(Method finderMethod, Object[] args, EntityEnterpriseContext instance, GenericEntityObjectFactory factory) throws Exception
findEntity
in interface EntityPersistenceStore
finderMethod
- the find method in the home interface that was
calledargs
- any finder parametersinstance
- the instance to use for the finder call
RemoteException
- thrown if some system exception occurs
javax.ejb.FinderException
- thrown if some heuristic problem occurs
Exception
public Collection findEntities(Method finderMethod, Object[] args, EntityEnterpriseContext instance, GenericEntityObjectFactory factory) throws Exception
findEntities
in interface EntityPersistenceStore
finderMethod
- the find method in the home interface that was
calledargs
- any finder parametersinstance
- the instance to use for the finder call
RemoteException
- thrown if some system exception occurs
javax.ejb.FinderException
- thrown if some heuristic problem occurs
Exception
public void activateEntity(EntityEnterpriseContext instance)
With the PersistenceManager factorization most EJB calls should not exists However this calls permits us to introduce optimizations in the persistence store. Particularly the context has a "PersistenceContext" that a PersistenceStore can use (JAWS does for smart updates) and this is as good a callback as any other to set it up.
activateEntity
in interface EntityPersistenceStore
instance
- the instance to use for the activation
RemoteException
- thrown if some system exception occurspublic void loadEntity(EntityEnterpriseContext ctx)
loadEntity
in interface EntityPersistenceStore
ctx
- the instance to synchronize
RemoteException
- thrown if some system exception occurspublic boolean isStoreRequired(EntityEnterpriseContext ctx) throws Exception
isStoreRequired
in interface EntityPersistenceStore
ctx
- the instance to check
Exception
- thrown if some system exception occurspublic boolean isModified(EntityEnterpriseContext ctx) throws Exception
isModified
in interface EntityPersistenceStore
Exception
public void storeEntity(EntityEnterpriseContext ctx) throws RemoteException
storeEntity
in interface EntityPersistenceStore
ctx
- the instance to synchronize
RemoteException
- thrown if some system exception occurspublic void passivateEntity(EntityEnterpriseContext instance)
See the activate discussion for the reason for exposing EJB callback calls to the store.
passivateEntity
in interface EntityPersistenceStore
instance
- the instance to passivate
RemoteException
- thrown if some system exception occurspublic void removeEntity(EntityEnterpriseContext ctx) throws javax.ejb.RemoveException
removeEntity
in interface EntityPersistenceStore
ctx
- the instance to remove
RemoteException
- thrown if some system exception occurs
javax.ejb.RemoveException
- thrown if the instance could not be removedprotected void storeEntity(Object id, Object obj) throws Exception
Exception
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |