## org.jboss.ejb
Interface EntityPersistenceManager

All Superinterfaces:
  ContainerPlugin, Service

All Known Implementing Classes:
  CMPPersistenceManager, BMPPersistenceManager

public interface EntityPersistenceManager
extends ContainerPlugin

This interface is implemented by any EntityBean persistence managers plugins. Implementations of this interface are called by other plugins in the container. If the persistence manager wants to, it may attach any instance specific metadata to the EntityEnterpriseContext that is passed in method calls.

Version:
  $Revision: 1.5 $
Author:
  Rickard Öberg (rickard.oberg@telkel.com)
See Also:
  `EntityContainer`

Method Summary
`void` `activateEntity(EntityEnterpriseContext instance)` This method is called when an entity shall be activated.
`void` `createEntity(java.lang.reflect.Method m, java.lang.Object[] args, EntityEnterpriseContext instance)` This method is called whenever an entity is to be created.
`java.util.Collection` `findEntities(java.lang.reflect.Method finderMethod, java.lang.Object[] args, EntityEnterpriseContext instance)` This method is called when collections of entities are to be found.
`java.lang.Object` `findEntity(java.lang.reflect.Method finderMethod, java.lang.Object[] args, EntityEnterpriseContext instance)` This method is called when single entities are to be found.
`void` `loadEntity(EntityEnterpriseContext instance)` 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.
`void` `removeEntity(EntityEnterpriseContext instance)` This method is called when an entity shall be removed from the underlying storage.
`void` `storeEntity(EntityEnterpriseContext instance)` This method is called whenever an entity shall be stored to the underlying storage.

Methods inherited from interface org.jboss.ejb.ContainerPlugin
`setContainer`

Methods inherited from interface org.jboss.util.Service
`destroy, init, start, stop`

Method Detail

### createEntity

    public void createEntity(java.lang.reflect.Method m,
                             java.lang.Object[] args,
                             EntityEnterpriseContext instance)
                      throws java.lang.Exception

  This method is called whenever an entity is to be created. The persistence manager is responsible for calling the ejbCreate methods on the instance and to handle the results properly wrt the persistent store.
  Parameters:
    `m` - the create method in the home interface that was called
    `args` - any create parameters
    `instance` - the instance being used for this create call

### findEntity

    public java.lang.Object findEntity(java.lang.reflect.Method finderMethod,
                                       java.lang.Object[] args,
                                       EntityEnterpriseContext instance)
                                throws java.lang.Exception

  This method is called when single entities are to be found. The persistence manager must find out whether the wanted instance is available in the persistence store, and if so it shall use the ContainerInvoker plugin to create an EJBObject to the instance, which is to be returned as result.
  Parameters:
    `finderMethod` - the find method in the home interface that was called
    `args` - any finder parameters
    `instance` - the instance to use for the finder call
  Returns:
    an EJBObject representing the found entity

### findEntities

    public java.util.Collection findEntities(java.lang.reflect.Method finderMethod,
                                             java.lang.Object[] args,
                                             EntityEnterpriseContext instance)
                                      throws java.lang.Exception

  This method is called when collections of entities are to be found. The persistence manager must find out whether the wanted instances are available in the persistence store, and if so it shall use the ContainerInvoker plugin to create EJBObjects to the instances, which are to be returned as result.
  Parameters:
    `finderMethod` - the find method in the home interface that was called
    `args` - any finder parameters
    `instance` - the instance to use for the finder call
  Returns:
    an EJBObject collection representing the found entities

### activateEntity

    public void activateEntity(EntityEnterpriseContext instance)
                        throws java.rmi.RemoteException

  This method is called when an entity shall be activated. The persistence manager must call the ejbActivate method on the instance.
  Parameters:
    `instance` - the instance to use for the activation
  Throws:
    `java.rmi.RemoteException` - thrown if some system exception occurs

### loadEntity

    public void loadEntity(EntityEnterpriseContext instance)
                    throws java.rmi.RemoteException

  This method is called whenever an entity shall be load from the underlying storage. The persistence manager must load the state from the underlying storage and then call ejbLoad on the supplied instance.
  Parameters:
    `instance` - the instance to synchronize
  Throws:
    `java.rmi.RemoteException` - thrown if some system exception occurs

### storeEntity

    public void storeEntity(EntityEnterpriseContext instance)
                     throws java.rmi.RemoteException

  This method is called whenever an entity shall be stored to the underlying storage. The persistence manager must call ejbStore on the supplied instance and then store the state to the underlying storage.
  Parameters:
    `instance` - the instance to synchronize
  Throws:
    `java.rmi.RemoteException` - thrown if some system exception occurs

### passivateEntity

    public void passivateEntity(EntityEnterpriseContext instance)
                         throws java.rmi.RemoteException

  This method is called when an entity shall be passivate. The persistence manager must call the ejbPassivate method on the instance.
  Parameters:
    `instance` - the instance to passivate
  Throws:
    `java.rmi.RemoteException` - thrown if some system exception occurs

### removeEntity

    public void removeEntity(EntityEnterpriseContext instance)
                      throws java.rmi.RemoteException,
                             javax.ejb.RemoveException

  This method is called when an entity shall be removed from the underlying storage. The persistence manager must call ejbRemove on the instance and then remove its state from the underlying storage.
  Parameters:
    `instance` - the instance to remove
  Throws:
    `java.rmi.RemoteException` - thrown if some system exception occurs
    `javax.ejb.RemoveException` - thrown if the instance could not be removed

Copyright © 2000 The JBoss Organization. All Rights Reserved.