org.datanucleus.jdo
Class JDOPersistenceManagerProxy

java.lang.Object
  extended by org.datanucleus.jdo.JDOPersistenceManagerProxy
All Implemented Interfaces:
javax.jdo.PersistenceManager

public class JDOPersistenceManagerProxy
extends java.lang.Object
implements javax.jdo.PersistenceManager

Implementation of a JDO persistence manager proxy. JDO2.2 spec $11.3.1. Returning a thread-safe PM.

In JTA this delegates to an underlying PM, with the exception of close() which has no effect. If there is a PM associated with the (JTA) transaction the proxy just delegates to whichever PM is still associated. If there is no PM associated to the (JTA) transaction then a PM is created and associated to the (JTA) txn. If there is no (JTA) txn currently associated then a new PM is created

In RESOURCE_LOCAL, this delegates to the PM associated with an implementation defined thread-local variable. The close() on the proxy clears the thread-local, so subsequent calls to getPersistenceManagerProxy() will create a new PM.


Field Summary
protected  JDOPersistenceManagerFactory pmf
           
 
Constructor Summary
JDOPersistenceManagerProxy(JDOPersistenceManagerFactory pmf)
          Constructor for a PM proxy.
 
Method Summary
 void addInstanceLifecycleListener(javax.jdo.listener.InstanceLifecycleListener listener, java.lang.Class... classes)
           
 void checkConsistency()
           
 void close()
           
 javax.jdo.Transaction currentTransaction()
           
 void deletePersistent(java.lang.Object obj)
           
 void deletePersistentAll(java.util.Collection pcs)
           
 void deletePersistentAll(java.lang.Object... pcs)
           
<T> T
detachCopy(T pc)
           
<T> java.util.Collection<T>
detachCopyAll(java.util.Collection<T> pcs)
           
<T> T[]
detachCopyAll(T... pcs)
           
 void evict(java.lang.Object obj)
           
 void evictAll()
           
 void evictAll(boolean subclasses, java.lang.Class cls)
           
 void evictAll(java.util.Collection pcs)
           
 void evictAll(java.lang.Object... pcs)
           
 void flush()
           
 boolean getCopyOnAttach()
           
 javax.jdo.datastore.JDOConnection getDataStoreConnection()
           
 java.lang.Integer getDatastoreReadTimeoutMillis()
           
 java.lang.Integer getDatastoreWriteTimeoutMillis()
           
 boolean getDetachAllOnCommit()
           
<T> javax.jdo.Extent<T>
getExtent(java.lang.Class<T> pcClass)
           
<T> javax.jdo.Extent<T>
getExtent(java.lang.Class<T> pcClass, boolean subclasses)
           
 javax.jdo.FetchGroup getFetchGroup(java.lang.Class arg0, java.lang.String arg1)
           
 javax.jdo.FetchPlan getFetchPlan()
           
 boolean getIgnoreCache()
           
 java.util.Set getManagedObjects()
           
 java.util.Set getManagedObjects(java.lang.Class... classes)
           
 java.util.Set getManagedObjects(java.util.EnumSet<javax.jdo.ObjectState> states)
           
 java.util.Set getManagedObjects(java.util.EnumSet<javax.jdo.ObjectState> states, java.lang.Class... classes)
           
 boolean getMultithreaded()
           
<T> T
getObjectById(java.lang.Class<T> cls, java.lang.Object key)
           
 java.lang.Object getObjectById(java.lang.Object id)
           
 java.lang.Object getObjectById(java.lang.Object id, boolean validate)
           
 java.lang.Object getObjectId(java.lang.Object pc)
           
 java.lang.Class getObjectIdClass(java.lang.Class cls)
           
 java.lang.Object[] getObjectsById(boolean validate, java.lang.Object... oids)
           
 java.util.Collection getObjectsById(java.util.Collection oids)
           
 java.util.Collection getObjectsById(java.util.Collection oids, boolean validate)
           
 java.lang.Object[] getObjectsById(java.lang.Object... oids)
           
 java.lang.Object[] getObjectsById(java.lang.Object[] oids, boolean validate)
           
 javax.jdo.PersistenceManagerFactory getPersistenceManagerFactory()
           
protected  javax.jdo.PersistenceManager getPM()
          Accessor for the delegate PM that we hand off to.
 java.util.Map<java.lang.String,java.lang.Object> getProperties()
           
 javax.jdo.datastore.Sequence getSequence(java.lang.String sequenceName)
           
 java.util.Date getServerDate()
           
 java.util.Set<java.lang.String> getSupportedProperties()
           
 java.lang.Object getTransactionalObjectId(java.lang.Object pc)
           
 java.lang.Object getUserObject()
           
 java.lang.Object getUserObject(java.lang.Object key)
           
 boolean isClosed()
           
 void makeNontransactional(java.lang.Object pc)
           
 void makeNontransactionalAll(java.util.Collection arg0)
           
 void makeNontransactionalAll(java.lang.Object... pcs)
           
<T> T
makePersistent(T obj)
           
<T> java.util.Collection<T>
makePersistentAll(java.util.Collection<T> arg0)
           
<T> T[]
makePersistentAll(T... arg0)
           
 void makeTransactional(java.lang.Object arg0)
           
 void makeTransactionalAll(java.util.Collection arg0)
           
 void makeTransactionalAll(java.lang.Object... arg0)
           
 void makeTransient(java.lang.Object pc)
           
 void makeTransient(java.lang.Object pc, boolean useFetchPlan)
           
 void makeTransientAll(boolean includeFetchPlan, java.lang.Object... pcs)
           
 void makeTransientAll(java.util.Collection pcs)
           
 void makeTransientAll(java.util.Collection pcs, boolean useFetchPlan)
           
 void makeTransientAll(java.lang.Object... pcs)
           
 void makeTransientAll(java.lang.Object[] pcs, boolean includeFetchPlan)
           
<T> T
newInstance(java.lang.Class<T> pc)
           
 javax.jdo.Query newNamedQuery(java.lang.Class cls, java.lang.String filter)
           
 java.lang.Object newObjectIdInstance(java.lang.Class pcClass, java.lang.Object key)
           
 javax.jdo.Query newQuery()
           
 javax.jdo.Query newQuery(java.lang.Class cls)
           
 javax.jdo.Query newQuery(java.lang.Class cls, java.util.Collection cln)
           
 javax.jdo.Query newQuery(java.lang.Class cls, java.util.Collection cln, java.lang.String filter)
           
 javax.jdo.Query newQuery(java.lang.Class cls, java.lang.String filter)
           
 javax.jdo.Query newQuery(javax.jdo.Extent cln)
           
 javax.jdo.Query newQuery(javax.jdo.Extent cln, java.lang.String filter)
           
 javax.jdo.Query newQuery(java.lang.Object obj)
           
 javax.jdo.Query newQuery(java.lang.String query)
           
 javax.jdo.Query newQuery(java.lang.String language, java.lang.Object query)
           
 java.lang.Object putUserObject(java.lang.Object key, java.lang.Object value)
           
 void refresh(java.lang.Object obj)
           
 void refreshAll()
           
 void refreshAll(java.util.Collection pcs)
           
 void refreshAll(javax.jdo.JDOException exc)
           
 void refreshAll(java.lang.Object... pcs)
           
 void removeInstanceLifecycleListener(javax.jdo.listener.InstanceLifecycleListener listener)
           
 java.lang.Object removeUserObject(java.lang.Object key)
           
 void retrieve(java.lang.Object pc)
           
 void retrieve(java.lang.Object pc, boolean fgOnly)
           
 void retrieveAll(boolean fgOnly, java.lang.Object... pcs)
           
 void retrieveAll(java.util.Collection pcs)
           
 void retrieveAll(java.util.Collection pcs, boolean fgOnly)
           
 void retrieveAll(java.lang.Object... pcs)
           
 void retrieveAll(java.lang.Object[] pcs, boolean fgOnly)
           
 void setCopyOnAttach(boolean flag)
           
 void setDatastoreReadTimeoutMillis(java.lang.Integer intvl)
           
 void setDatastoreWriteTimeoutMillis(java.lang.Integer intvl)
           
 void setDetachAllOnCommit(boolean flag)
           
 void setIgnoreCache(boolean flag)
           
 void setMultithreaded(boolean flag)
           
 void setProperty(java.lang.String arg0, java.lang.Object arg1)
           
 void setUserObject(java.lang.Object userObject)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

pmf

protected JDOPersistenceManagerFactory pmf
Constructor Detail

JDOPersistenceManagerProxy

public JDOPersistenceManagerProxy(JDOPersistenceManagerFactory pmf)
Constructor for a PM proxy.

Method Detail

getPM

protected javax.jdo.PersistenceManager getPM()
Accessor for the delegate PM that we hand off to.

Returns:
The delegate PM (from the PMF thread-local store)

close

public void close()
Specified by:
close in interface javax.jdo.PersistenceManager

addInstanceLifecycleListener

public void addInstanceLifecycleListener(javax.jdo.listener.InstanceLifecycleListener listener,
                                         java.lang.Class... classes)
Specified by:
addInstanceLifecycleListener in interface javax.jdo.PersistenceManager

checkConsistency

public void checkConsistency()
Specified by:
checkConsistency in interface javax.jdo.PersistenceManager

currentTransaction

public javax.jdo.Transaction currentTransaction()
Specified by:
currentTransaction in interface javax.jdo.PersistenceManager

deletePersistent

public void deletePersistent(java.lang.Object obj)
Specified by:
deletePersistent in interface javax.jdo.PersistenceManager

deletePersistentAll

public void deletePersistentAll(java.lang.Object... pcs)
Specified by:
deletePersistentAll in interface javax.jdo.PersistenceManager

deletePersistentAll

public void deletePersistentAll(java.util.Collection pcs)
Specified by:
deletePersistentAll in interface javax.jdo.PersistenceManager

detachCopy

public <T> T detachCopy(T pc)
Specified by:
detachCopy in interface javax.jdo.PersistenceManager

detachCopyAll

public <T> java.util.Collection<T> detachCopyAll(java.util.Collection<T> pcs)
Specified by:
detachCopyAll in interface javax.jdo.PersistenceManager

detachCopyAll

public <T> T[] detachCopyAll(T... pcs)
Specified by:
detachCopyAll in interface javax.jdo.PersistenceManager

evict

public void evict(java.lang.Object obj)
Specified by:
evict in interface javax.jdo.PersistenceManager

evictAll

public void evictAll()
Specified by:
evictAll in interface javax.jdo.PersistenceManager

evictAll

public void evictAll(java.lang.Object... pcs)
Specified by:
evictAll in interface javax.jdo.PersistenceManager

evictAll

public void evictAll(java.util.Collection pcs)
Specified by:
evictAll in interface javax.jdo.PersistenceManager

evictAll

public void evictAll(boolean subclasses,
                     java.lang.Class cls)
Specified by:
evictAll in interface javax.jdo.PersistenceManager

flush

public void flush()
Specified by:
flush in interface javax.jdo.PersistenceManager

getCopyOnAttach

public boolean getCopyOnAttach()
Specified by:
getCopyOnAttach in interface javax.jdo.PersistenceManager

getDataStoreConnection

public javax.jdo.datastore.JDOConnection getDataStoreConnection()
Specified by:
getDataStoreConnection in interface javax.jdo.PersistenceManager

getDetachAllOnCommit

public boolean getDetachAllOnCommit()
Specified by:
getDetachAllOnCommit in interface javax.jdo.PersistenceManager

getExtent

public <T> javax.jdo.Extent<T> getExtent(java.lang.Class<T> pcClass)
Specified by:
getExtent in interface javax.jdo.PersistenceManager

getExtent

public <T> javax.jdo.Extent<T> getExtent(java.lang.Class<T> pcClass,
                                         boolean subclasses)
Specified by:
getExtent in interface javax.jdo.PersistenceManager

getFetchGroup

public javax.jdo.FetchGroup getFetchGroup(java.lang.Class arg0,
                                          java.lang.String arg1)
Specified by:
getFetchGroup in interface javax.jdo.PersistenceManager

getFetchPlan

public javax.jdo.FetchPlan getFetchPlan()
Specified by:
getFetchPlan in interface javax.jdo.PersistenceManager

getIgnoreCache

public boolean getIgnoreCache()
Specified by:
getIgnoreCache in interface javax.jdo.PersistenceManager

getManagedObjects

public java.util.Set getManagedObjects()
Specified by:
getManagedObjects in interface javax.jdo.PersistenceManager

getManagedObjects

public java.util.Set getManagedObjects(java.util.EnumSet<javax.jdo.ObjectState> states)
Specified by:
getManagedObjects in interface javax.jdo.PersistenceManager

getManagedObjects

public java.util.Set getManagedObjects(java.lang.Class... classes)
Specified by:
getManagedObjects in interface javax.jdo.PersistenceManager

getManagedObjects

public java.util.Set getManagedObjects(java.util.EnumSet<javax.jdo.ObjectState> states,
                                       java.lang.Class... classes)
Specified by:
getManagedObjects in interface javax.jdo.PersistenceManager

getMultithreaded

public boolean getMultithreaded()
Specified by:
getMultithreaded in interface javax.jdo.PersistenceManager

getObjectById

public java.lang.Object getObjectById(java.lang.Object id)
Specified by:
getObjectById in interface javax.jdo.PersistenceManager

getObjectById

public java.lang.Object getObjectById(java.lang.Object id,
                                      boolean validate)
Specified by:
getObjectById in interface javax.jdo.PersistenceManager

getObjectById

public <T> T getObjectById(java.lang.Class<T> cls,
                           java.lang.Object key)
Specified by:
getObjectById in interface javax.jdo.PersistenceManager

getObjectId

public java.lang.Object getObjectId(java.lang.Object pc)
Specified by:
getObjectId in interface javax.jdo.PersistenceManager

getObjectIdClass

public java.lang.Class getObjectIdClass(java.lang.Class cls)
Specified by:
getObjectIdClass in interface javax.jdo.PersistenceManager

getObjectsById

public java.util.Collection getObjectsById(java.util.Collection oids)
Specified by:
getObjectsById in interface javax.jdo.PersistenceManager

getObjectsById

public java.lang.Object[] getObjectsById(java.lang.Object... oids)
Specified by:
getObjectsById in interface javax.jdo.PersistenceManager

getObjectsById

public java.util.Collection getObjectsById(java.util.Collection oids,
                                           boolean validate)
Specified by:
getObjectsById in interface javax.jdo.PersistenceManager

getObjectsById

public java.lang.Object[] getObjectsById(java.lang.Object[] oids,
                                         boolean validate)
Specified by:
getObjectsById in interface javax.jdo.PersistenceManager

getObjectsById

public java.lang.Object[] getObjectsById(boolean validate,
                                         java.lang.Object... oids)
Specified by:
getObjectsById in interface javax.jdo.PersistenceManager

getPersistenceManagerFactory

public javax.jdo.PersistenceManagerFactory getPersistenceManagerFactory()
Specified by:
getPersistenceManagerFactory in interface javax.jdo.PersistenceManager

getSequence

public javax.jdo.datastore.Sequence getSequence(java.lang.String sequenceName)
Specified by:
getSequence in interface javax.jdo.PersistenceManager

getServerDate

public java.util.Date getServerDate()
Specified by:
getServerDate in interface javax.jdo.PersistenceManager

getTransactionalObjectId

public java.lang.Object getTransactionalObjectId(java.lang.Object pc)
Specified by:
getTransactionalObjectId in interface javax.jdo.PersistenceManager

getUserObject

public java.lang.Object getUserObject()
Specified by:
getUserObject in interface javax.jdo.PersistenceManager

getUserObject

public java.lang.Object getUserObject(java.lang.Object key)
Specified by:
getUserObject in interface javax.jdo.PersistenceManager

isClosed

public boolean isClosed()
Specified by:
isClosed in interface javax.jdo.PersistenceManager

makeNontransactional

public void makeNontransactional(java.lang.Object pc)
Specified by:
makeNontransactional in interface javax.jdo.PersistenceManager

makeNontransactionalAll

public void makeNontransactionalAll(java.lang.Object... pcs)
Specified by:
makeNontransactionalAll in interface javax.jdo.PersistenceManager

makeNontransactionalAll

public void makeNontransactionalAll(java.util.Collection arg0)
Specified by:
makeNontransactionalAll in interface javax.jdo.PersistenceManager

makePersistent

public <T> T makePersistent(T obj)
Specified by:
makePersistent in interface javax.jdo.PersistenceManager

makePersistentAll

public <T> T[] makePersistentAll(T... arg0)
Specified by:
makePersistentAll in interface javax.jdo.PersistenceManager

makePersistentAll

public <T> java.util.Collection<T> makePersistentAll(java.util.Collection<T> arg0)
Specified by:
makePersistentAll in interface javax.jdo.PersistenceManager

makeTransactional

public void makeTransactional(java.lang.Object arg0)
Specified by:
makeTransactional in interface javax.jdo.PersistenceManager

makeTransactionalAll

public void makeTransactionalAll(java.lang.Object... arg0)
Specified by:
makeTransactionalAll in interface javax.jdo.PersistenceManager

makeTransactionalAll

public void makeTransactionalAll(java.util.Collection arg0)
Specified by:
makeTransactionalAll in interface javax.jdo.PersistenceManager

makeTransient

public void makeTransient(java.lang.Object pc)
Specified by:
makeTransient in interface javax.jdo.PersistenceManager

makeTransient

public void makeTransient(java.lang.Object pc,
                          boolean useFetchPlan)
Specified by:
makeTransient in interface javax.jdo.PersistenceManager

makeTransientAll

public void makeTransientAll(java.lang.Object... pcs)
Specified by:
makeTransientAll in interface javax.jdo.PersistenceManager

makeTransientAll

public void makeTransientAll(java.util.Collection pcs)
Specified by:
makeTransientAll in interface javax.jdo.PersistenceManager

makeTransientAll

public void makeTransientAll(java.lang.Object[] pcs,
                             boolean includeFetchPlan)
Specified by:
makeTransientAll in interface javax.jdo.PersistenceManager

makeTransientAll

public void makeTransientAll(boolean includeFetchPlan,
                             java.lang.Object... pcs)
Specified by:
makeTransientAll in interface javax.jdo.PersistenceManager

makeTransientAll

public void makeTransientAll(java.util.Collection pcs,
                             boolean useFetchPlan)
Specified by:
makeTransientAll in interface javax.jdo.PersistenceManager

newInstance

public <T> T newInstance(java.lang.Class<T> pc)
Specified by:
newInstance in interface javax.jdo.PersistenceManager

newNamedQuery

public javax.jdo.Query newNamedQuery(java.lang.Class cls,
                                     java.lang.String filter)
Specified by:
newNamedQuery in interface javax.jdo.PersistenceManager

newObjectIdInstance

public java.lang.Object newObjectIdInstance(java.lang.Class pcClass,
                                            java.lang.Object key)
Specified by:
newObjectIdInstance in interface javax.jdo.PersistenceManager

newQuery

public javax.jdo.Query newQuery()
Specified by:
newQuery in interface javax.jdo.PersistenceManager

newQuery

public javax.jdo.Query newQuery(java.lang.Object obj)
Specified by:
newQuery in interface javax.jdo.PersistenceManager

newQuery

public javax.jdo.Query newQuery(java.lang.String query)
Specified by:
newQuery in interface javax.jdo.PersistenceManager

newQuery

public javax.jdo.Query newQuery(java.lang.Class cls)
Specified by:
newQuery in interface javax.jdo.PersistenceManager

newQuery

public javax.jdo.Query newQuery(javax.jdo.Extent cln)
Specified by:
newQuery in interface javax.jdo.PersistenceManager

newQuery

public javax.jdo.Query newQuery(java.lang.String language,
                                java.lang.Object query)
Specified by:
newQuery in interface javax.jdo.PersistenceManager

newQuery

public javax.jdo.Query newQuery(java.lang.Class cls,
                                java.util.Collection cln)
Specified by:
newQuery in interface javax.jdo.PersistenceManager

newQuery

public javax.jdo.Query newQuery(java.lang.Class cls,
                                java.lang.String filter)
Specified by:
newQuery in interface javax.jdo.PersistenceManager

newQuery

public javax.jdo.Query newQuery(javax.jdo.Extent cln,
                                java.lang.String filter)
Specified by:
newQuery in interface javax.jdo.PersistenceManager

newQuery

public javax.jdo.Query newQuery(java.lang.Class cls,
                                java.util.Collection cln,
                                java.lang.String filter)
Specified by:
newQuery in interface javax.jdo.PersistenceManager

putUserObject

public java.lang.Object putUserObject(java.lang.Object key,
                                      java.lang.Object value)
Specified by:
putUserObject in interface javax.jdo.PersistenceManager

refresh

public void refresh(java.lang.Object obj)
Specified by:
refresh in interface javax.jdo.PersistenceManager

refreshAll

public void refreshAll()
Specified by:
refreshAll in interface javax.jdo.PersistenceManager

refreshAll

public void refreshAll(java.lang.Object... pcs)
Specified by:
refreshAll in interface javax.jdo.PersistenceManager

refreshAll

public void refreshAll(java.util.Collection pcs)
Specified by:
refreshAll in interface javax.jdo.PersistenceManager

refreshAll

public void refreshAll(javax.jdo.JDOException exc)
Specified by:
refreshAll in interface javax.jdo.PersistenceManager

removeInstanceLifecycleListener

public void removeInstanceLifecycleListener(javax.jdo.listener.InstanceLifecycleListener listener)
Specified by:
removeInstanceLifecycleListener in interface javax.jdo.PersistenceManager

removeUserObject

public java.lang.Object removeUserObject(java.lang.Object key)
Specified by:
removeUserObject in interface javax.jdo.PersistenceManager

retrieve

public void retrieve(java.lang.Object pc)
Specified by:
retrieve in interface javax.jdo.PersistenceManager

retrieve

public void retrieve(java.lang.Object pc,
                     boolean fgOnly)
Specified by:
retrieve in interface javax.jdo.PersistenceManager

retrieveAll

public void retrieveAll(java.util.Collection pcs)
Specified by:
retrieveAll in interface javax.jdo.PersistenceManager

retrieveAll

public void retrieveAll(java.lang.Object... pcs)
Specified by:
retrieveAll in interface javax.jdo.PersistenceManager

retrieveAll

public void retrieveAll(java.util.Collection pcs,
                        boolean fgOnly)
Specified by:
retrieveAll in interface javax.jdo.PersistenceManager

retrieveAll

public void retrieveAll(java.lang.Object[] pcs,
                        boolean fgOnly)
Specified by:
retrieveAll in interface javax.jdo.PersistenceManager

retrieveAll

public void retrieveAll(boolean fgOnly,
                        java.lang.Object... pcs)
Specified by:
retrieveAll in interface javax.jdo.PersistenceManager

setCopyOnAttach

public void setCopyOnAttach(boolean flag)
Specified by:
setCopyOnAttach in interface javax.jdo.PersistenceManager

setDetachAllOnCommit

public void setDetachAllOnCommit(boolean flag)
Specified by:
setDetachAllOnCommit in interface javax.jdo.PersistenceManager

setIgnoreCache

public void setIgnoreCache(boolean flag)
Specified by:
setIgnoreCache in interface javax.jdo.PersistenceManager

setMultithreaded

public void setMultithreaded(boolean flag)
Specified by:
setMultithreaded in interface javax.jdo.PersistenceManager

setUserObject

public void setUserObject(java.lang.Object userObject)
Specified by:
setUserObject in interface javax.jdo.PersistenceManager

getDatastoreReadTimeoutMillis

public java.lang.Integer getDatastoreReadTimeoutMillis()
Specified by:
getDatastoreReadTimeoutMillis in interface javax.jdo.PersistenceManager

setDatastoreReadTimeoutMillis

public void setDatastoreReadTimeoutMillis(java.lang.Integer intvl)
Specified by:
setDatastoreReadTimeoutMillis in interface javax.jdo.PersistenceManager

getDatastoreWriteTimeoutMillis

public java.lang.Integer getDatastoreWriteTimeoutMillis()
Specified by:
getDatastoreWriteTimeoutMillis in interface javax.jdo.PersistenceManager

setDatastoreWriteTimeoutMillis

public void setDatastoreWriteTimeoutMillis(java.lang.Integer intvl)
Specified by:
setDatastoreWriteTimeoutMillis in interface javax.jdo.PersistenceManager

getProperties

public java.util.Map<java.lang.String,java.lang.Object> getProperties()
Specified by:
getProperties in interface javax.jdo.PersistenceManager

getSupportedProperties

public java.util.Set<java.lang.String> getSupportedProperties()
Specified by:
getSupportedProperties in interface javax.jdo.PersistenceManager

setProperty

public void setProperty(java.lang.String arg0,
                        java.lang.Object arg1)
Specified by:
setProperty in interface javax.jdo.PersistenceManager


Copyright © 2011. All Rights Reserved.