org.objectweb.speedo.runtime.mim
Class SpeedoMemoryInstanceManager

org.objectweb.speedo.runtime.mim.SpeedoMemoryInstanceManager
All Implemented Interfaces:
SpeedoMemoryInstanceManagerAttribute

public class SpeedoMemoryInstanceManager
implements SpeedoMemoryInstanceManagerAttribute

This class is an implementation of the MemoryInstanceManager provided by the persistence framwork availlable in perseus. This implementation depends on the identifier used, and the way to instanciate user objects. This implementation supports only the jorm object identifier: PName. This implementation supports also the instanciation of the Jorm generic class. To do this it is needed to specify for each jorm generic class used the name of the class which must be instanciated. This configuration is done via the GenClassNames attribute. This implementation does not used a pool, then the instance are created at each newInstance call.

Author:
S.Chassande-Barrioz

Constructor Summary
SpeedoMemoryInstanceManager()
           
 
Method Summary
 java.lang.String getGenClassNames()
           
 java.lang.Object newInstance(java.lang.Object oid, java.lang.Object context)
          It creates an instance since an identifier
 void releaseInstance(java.lang.Object obj)
          It notify that an instance is no more used.
 void setGenClassNames(java.lang.String gcname)
          It assignes a description of the gen class names.
 

Constructor Detail

SpeedoMemoryInstanceManager

public SpeedoMemoryInstanceManager()
Method Detail

getGenClassNames

public java.lang.String getGenClassNames()
Specified by:
getGenClassNames in interface SpeedoMemoryInstanceManagerAttribute
Returns:
a String describing the genclass names with the following format: "(jorm_name,java_name),(jorm_name,java_name),(jorm_name,java_name)}"

setGenClassNames

public void setGenClassNames(java.lang.String gcname)
It assignes a description of the gen class names.
Specified by:
setGenClassNames in interface SpeedoMemoryInstanceManagerAttribute
Parameters:
gcname - is the desciption which must follow this format: "(jorm_name,java_name),(jorm_name,java_name),(jorm_name,java_name)}"

newInstance

public java.lang.Object newInstance(java.lang.Object oid,
                                    java.lang.Object context)
                             throws org.objectweb.perseus.persistence.api.PersistenceException
It creates an instance since an identifier
Parameters:
oid - is the identifier of the futur object
Returns:
a memory instance

releaseInstance

public void releaseInstance(java.lang.Object obj)
It notify that an instance is no more used.
Parameters:
obj -