org.objectweb.speedo.mapper.lib
Class JormStorageManager

java.lang.Object
  extended by org.objectweb.speedo.mapper.lib.JormStorageManager
All Implemented Interfaces:
BindingController, StorageManager

public class JormStorageManager
extends java.lang.Object
implements StorageManager, BindingController

This class is an implementation of the StorageManager interface based on Jorm.The single hypothesis concerns the architecture of the CacheEntry: - the CacheEntry implements the PBinding interface - the obj parameters implement StateItf and PAceessor.

Author:
S.Chassande-Barrioz

Field Summary
static java.lang.String JORM_FACTORY_BINDING
           
protected  JormFactory jormFactory
           
protected  org.objectweb.util.monolog.api.Logger logger
           
static java.lang.String LOGGER_NAME
           
protected  java.util.Map ws2removedpo
          listes for each working set the persistent object removed in other working set.
 
Constructor Summary
JormStorageManager()
           
 
Method Summary
 void beginWS(WorkingSet ws)
           
 void bindFc(java.lang.String s, java.lang.Object o)
           
 void endWS(WorkingSet ws)
          forget the working set
 java.lang.Object export(ConnectionHolder context, java.lang.Object obj)
           
 java.lang.Object export(ConnectionHolder context, java.lang.Object obj, java.lang.Object hints)
           
 java.lang.String[] listFc()
           
 java.lang.Object lookupFc(java.lang.String s)
           
 void read(ConnectionHolder context, java.lang.Object oid, State obj)
           
 void read(WorkingSet ws, java.lang.Object oid, State obj, boolean forUpdate)
           
 void unbindFc(java.lang.String s)
           
 void unexport(ConnectionHolder context, java.lang.Object oid)
           
 void unexport(ConnectionHolder context, java.lang.Object oid, java.lang.Object hints)
           
 void write(ConnectionHolder context, java.lang.Object oid, State obj)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

JORM_FACTORY_BINDING

public static final java.lang.String JORM_FACTORY_BINDING
See Also:
Constant Field Values

LOGGER_NAME

public static final java.lang.String LOGGER_NAME
See Also:
Constant Field Values

jormFactory

protected JormFactory jormFactory

logger

protected org.objectweb.util.monolog.api.Logger logger

ws2removedpo

protected java.util.Map ws2removedpo
listes for each working set the persistent object removed in other working set. When a working set want to read a persistent object from the data support, a prefetch buffer can be used. But the prefetch buffer can contains a removed object.

Constructor Detail

JormStorageManager

public JormStorageManager()
Method Detail

listFc

public java.lang.String[] listFc()
Specified by:
listFc in interface BindingController

lookupFc

public java.lang.Object lookupFc(java.lang.String s)
Specified by:
lookupFc in interface BindingController

bindFc

public void bindFc(java.lang.String s,
                   java.lang.Object o)
Specified by:
bindFc in interface BindingController

unbindFc

public void unbindFc(java.lang.String s)
Specified by:
unbindFc in interface BindingController

export

public java.lang.Object export(ConnectionHolder context,
                               java.lang.Object obj)
                        throws PersistenceException
Specified by:
export in interface StorageManager
Throws:
PersistenceException

export

public java.lang.Object export(ConnectionHolder context,
                               java.lang.Object obj,
                               java.lang.Object hints)
                        throws PersistenceException
Specified by:
export in interface StorageManager
Throws:
PersistenceException

unexport

public void unexport(ConnectionHolder context,
                     java.lang.Object oid)
              throws PersistenceException
Specified by:
unexport in interface StorageManager
Throws:
PersistenceException

unexport

public void unexport(ConnectionHolder context,
                     java.lang.Object oid,
                     java.lang.Object hints)
              throws PersistenceException
Specified by:
unexport in interface StorageManager
Throws:
PersistenceException

read

public void read(ConnectionHolder context,
                 java.lang.Object oid,
                 State obj)
          throws PersistenceException
Specified by:
read in interface StorageManager
Throws:
PersistenceException

read

public void read(WorkingSet ws,
                 java.lang.Object oid,
                 State obj,
                 boolean forUpdate)
          throws PersistenceException
Specified by:
read in interface StorageManager
Throws:
PersistenceException

write

public void write(ConnectionHolder context,
                  java.lang.Object oid,
                  State obj)
           throws PersistenceException
Specified by:
write in interface StorageManager
Throws:
PersistenceException

beginWS

public void beginWS(WorkingSet ws)
Specified by:
beginWS in interface StorageManager

endWS

public void endWS(WorkingSet ws)
forget the working set

Specified by:
endWS in interface StorageManager