Class DistributedSession
- java.lang.Object
-
- org.eclipse.persistence.internal.core.sessions.CoreAbstractSession<ClassDescriptor,Login,org.eclipse.persistence.internal.databaseaccess.Platform,Project,SessionEventManager>
-
- org.eclipse.persistence.internal.sessions.AbstractSession
-
- org.eclipse.persistence.internal.sessions.DatabaseSessionImpl
-
- org.eclipse.persistence.sessions.remote.DistributedSession
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,CoreSession<ClassDescriptor,Login,org.eclipse.persistence.internal.databaseaccess.Platform,Project,SessionEventManager>
,CommandProcessor
,DatabaseSession
,Session
- Direct Known Subclasses:
RemoteSession
public abstract class DistributedSession extends org.eclipse.persistence.internal.sessions.DatabaseSessionImpl
Purpose: Super class to all remote client session's.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected boolean
hasDefaultReadOnlyClasses
Cache if default classes have been read from server.protected boolean
isMetadataRemote
Define if meta-data is initialized locally, or serialized from the server.protected org.eclipse.persistence.internal.sessions.remote.RemoteConnection
remoteConnection
Connection to remote persistence service.-
Fields inherited from class org.eclipse.persistence.internal.sessions.DatabaseSessionImpl
connectedTime, databaseEventListener, isLoggedIn, sequencingHome, serverPlatform, tuner
-
Fields inherited from class org.eclipse.persistence.internal.sessions.AbstractSession
accessors, activeCommandThreads, attributeGroups, broker, commandManager, commitManager, defaultReferenceMode, deferredEvents, descriptors, eventManager, exceptionHandler, externalTransactionController, identityMapAccessor, injectionManager, integrityChecker, isConcurrent, isExecutingEvents, isFinalizersEnabled, isInBroker, isInProfile, isLoggingOff, isSynchronized, jpaQueriesProcessed, lastDescriptorAccessed, logSessionString, metadatalistener, multitenantContextProperties, name, numberOfActiveUnitsOfWork, objectsLockedForClone, partitioningPolicy, pessimisticLockTimeoutDefault, pessimisticLockTimeoutUnitDefault, platform, profiler, project, properties, queries, queryBuilder, queryTimeoutDefault, queryTimeoutUnitDefault, serializer, sessionLog, shouldCheckWriteLock, shouldOptimizeResultSetAccess, shouldPropagateChanges, staticMetamodelClasses, tablePerTenantDescriptors, tablePerTenantQueries, tolerateInvalidJPQL, transactionMutex, wasJTSTransactionInternallyStarted
-
Fields inherited from interface org.eclipse.persistence.sessions.coordination.CommandProcessor
LOG_DEBUG, LOG_ERROR, LOG_INFO, LOG_WARNING
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
DistributedSession(int nothing)
INTERNAL: Create a blank session, used for proxy session.DistributedSession(org.eclipse.persistence.internal.sessions.remote.RemoteConnection remoteConnection)
PUBLIC: Creates a DistributedSession.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract org.eclipse.persistence.internal.sessions.UnitOfWorkImpl
acquireUnitOfWork()
PUBLIC: Return a unit of work for this session.void
beginTransaction()
PUBLIC: Start a transaction on the server.void
commitTransaction()
PUBLIC: Commit a transaction on the server.void
connect()
INTERNAL: Connect not required.org.eclipse.persistence.internal.sessions.remote.RemoteCursoredStream
cursorSelectObjects(CursoredStreamPolicy policy)
INTERNAL: Return remote cursor stream.org.eclipse.persistence.internal.sessions.remote.RemoteScrollableCursor
cursorSelectObjects(ScrollableCursorPolicy policy)
INTERNAL: Return remote scrollable cursorvoid
disconnect()
INTERNAL: Disconnect not required.java.lang.Object
executeQuery(java.lang.String queryName)
PUBLIC: Execute the pre-defined query by name and return the result.java.lang.Object
executeQuery(java.lang.String queryName, java.lang.Class domainClass)
PUBLIC: Execute the pre-defined query by name and return the result.java.lang.Object
executeQuery(java.lang.String queryName, java.lang.Class domainClass, java.util.Vector argumentValues)
PUBLIC: Execute the pre-defined query by name and return the result.java.lang.Object
executeQuery(java.lang.String queryName, java.util.Vector argumentValues)
PUBLIC: Execute the pre-defined query by name and return the result.abstract java.lang.Object
executeQuery(DatabaseQuery query)
Execute the database query.java.lang.Object
executeQuery(DatabaseQuery query, org.eclipse.persistence.internal.sessions.AbstractRecord row)
INTERNAL: Execute the database query.java.util.Vector
getDefaultReadOnlyClasses()
INTERNAL: CR#2751 Returns the set of read-only classes for the receiver.ClassDescriptor
getDescriptor(java.lang.Class domainClass)
INTERNAL: Return the table descriptor specified for the class.ClassDescriptor
getDescriptorCorrespondingTo(ClassDescriptor descriptor)
INTERNAL: Return the descriptor.ClassDescriptor
getDescriptorForAlias(java.lang.String alias)
INTERNAL: Return the table descriptor specified for the class.abstract java.lang.Object
getObjectCorrespondingTo(java.lang.Object serverSideDomainObject, java.util.Map objectDescriptors, java.util.Map processedObjects, ObjectLevelReadQuery query)
INTERNAL: Return the corresponding objects from the remote session for the objects read from the server.abstract java.lang.Object
getObjectsCorrespondingToAll(java.lang.Object serverSideDomainObjects, java.util.Map objectDescriptors, java.util.Map processedObjects, ObjectLevelReadQuery query, org.eclipse.persistence.internal.queries.ContainerPolicy containerPolicy)
INTERNAL: Return the corresponding objects from the remote session for the objects read from the server.org.eclipse.persistence.internal.sessions.remote.RemoteConnection
getRemoteConnection()
INTERNAL: Return the remote connection.boolean
hasCorrespondingDescriptor(ClassDescriptor descriptor)
INTERNAL: Checks if the descriptor exists or not.void
initializeIdentityMapAccessor()
INTERNAL: Set up the IdentityMapManager.abstract java.lang.Object
instantiateRemoteValueHolderOnServer(org.eclipse.persistence.internal.sessions.remote.RemoteValueHolder remoteValueHolder)
INTERNAL: This will instantiate value holder on the server.boolean
isConnected()
PUBLIC: Return if this session is connected to the server.boolean
isDistributedSession()
INTERNAL: Return if this session is a distributed session.boolean
isMetadataRemote()
ADVANCED: Return if the descriptors and meta-data should be serialized from the server, or if they will be provided locally.boolean
isRemoteSession()
INTERNAL: Return if this session is a remote session.void
login()
PUBLIC: Connect to the database using the predefined login.void
loginAndDetectDatasource()
PUBLIC: Connect to the database using the predefined login.void
logout()
PUBLIC: Logout the session, close the remote connection and release the hold resourcesvoid
privilegedAddDescriptor(ClassDescriptor descriptor)
INTERNAL: You cannot add descriptors to a remote session.void
rollbackTransaction()
PUBLIC: Rollback a transaction on the server.void
setIsMetadataRemote(boolean isMetadataRemote)
ADVANCED: Set if the descriptors and meta-data should be serialized from the server, or if they will be provided locally.void
setRemoteConnection(org.eclipse.persistence.internal.sessions.remote.RemoteConnection remoteConnection)
INTERNAL: Set the remote connection.java.lang.String
toString()
PUBLIC: Avoid printing the accessor and platform.-
Methods inherited from class org.eclipse.persistence.internal.sessions.DatabaseSessionImpl
addDescriptor, addDescriptors, addDescriptors, addDescriptorsToSequencing, addSequence, finalize, getConnectedTime, getDatabaseEventListener, getDatasourcePlatform, getPlatform, getPlatform, getReadLogin, getSequencing, getSequencingControl, getSequencingHome, getServerPlatform, getTuner, initializeConnectedTime, initializeDescriptorIfSessionAlive, initializeDescriptors, initializeDescriptors, initializeDescriptors, initializeDescriptors, initializeDescriptors, initializeSequencing, isDatabaseSession, isLoggedIn, isProtectedSession, isSequencingCallbackRequired, login, login, postConnectDatasource, postLogin, preConnectDatasource, releaseJTSConnection, retryQuery, setDatabaseEventListener, setDatasourceAndInitialize, setOrDetectDatasource, setSequencingHome, setServerPlatform, setTuner, writeAllObjects, writeAllObjects
-
Methods inherited from class org.eclipse.persistence.internal.sessions.AbstractSession
acquireHistoricalSession, acquireNonSynchronizedUnitOfWork, acquireNonSynchronizedUnitOfWork, acquireRepeatableWriteUnitOfWork, acquireUnitOfWork, addAlias, addJPAQuery, addJPATablePerTenantQuery, addMultitenantContextProperty, addQuery, addQuery, addQuery, addStaticMetamodelClass, addTablePerTenantDescriptor, addTablePerTenantQuery, basicBeginTransaction, basicBeginTransaction, basicCommitTransaction, basicExecuteCall, basicRollbackTransaction, beginExternalTransaction, buildDefaultQueryBuilder, checkAndRefreshInvalidObject, checkHierarchyForDescriptor, cleanUpInjectionManager, clearDescriptors, clearIntegrityChecker, clearLastDescriptorAccessed, clearProfile, clone, commitExternalTransaction, compareObjects, compareObjectsDontMatch, config, containsQuery, copy, copy, copyDescriptorNamedQueries, copyDescriptorsFromProject, copyInternal, copyObject, copyObject, copyReadOnlyClasses, createCloneQueryValueHolder, createCloneTransformationValueHolder, createInjectionManager, createProtectedInstanceFromCachedData, deferEvent, deleteAllObjects, deleteAllObjects, deleteObject, doesObjectExist, dontLogMessages, endOperationProfile, endOperationProfile, executeCall, executeDeferredEvents, executeNonSelectingCall, executeNonSelectingSQL, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeSelectingCall, executeSQL, fine, finer, finest, getAccessor, getAccessors, getAccessors, getActiveCommandThreads, getActiveSession, getActiveUnitOfWork, getAliasDescriptors, getAllQueries, getAsOfClause, getAttributeGroups, getBroker, getCacheKeyFromTargetSessionForMerge, getClassDescriptor, getClassDescriptor, getClassDescriptorForAlias, getCommandManager, getCommitManager, getDatasourceLogin, getDefaultReferenceMode, getDescriptor, getDescriptors, getEventManager, getExceptionHandler, getExceptionHandlerClass, getExecutionSession, getExternalTransactionController, getId, getIdentityMapAccessor, getIdentityMapAccessorInstance, getInjectionManager, getIntegrityChecker, getJPAQueries, getJPATablePerTenantQueries, getLoader, getLog, getLogin, getLogLevel, getLogLevel, getLogSessionString, getMappedSuperclass, getMultitenantContextProperties, getName, getNextQueryId, getNextSequenceNumberValue, getNumberOfActiveUnitsOfWork, getParent, getParentIdentityMapSession, getParentIdentityMapSession, getParentIdentityMapSession, getPartitioningPolicy, getPessimisticLockTimeoutDefault, getPessimisticLockTimeoutUnitDefault, getProfiler, getProject, getProperties, getProperty, getQueries, getQuery, getQuery, getQuery, getQuery, getQueryBuilder, getQueryTimeoutDefault, getQueryTimeoutUnitDefault, getRefreshMetadataListener, getRootSession, getSerializer, getSessionForClass, getSessionForName, getSessionLog, getSessionTypeString, getStaticMetamodelClass, getTablePerTenantDescriptors, getTablePerTenantQueries, getTransactionMutex, handleException, handleSevere, hasBroker, hasCommitManager, hasDescriptor, hasEventManager, hasExceptionHandler, hasExternalTransactionController, hasProperties, hasTablePerTenantDescriptors, hasTablePerTenantQueries, incrementProfile, incrementProfile, info, insertObject, internalExecuteQuery, isBroker, isClassReadOnly, isClassReadOnly, isClientSession, isConcurrent, isConsideredInvalid, isExclusiveConnectionRequired, isExclusiveIsolatedClientSession, isFinalizersEnabled, isHistoricalSession, isInBroker, isInProfile, isInTransaction, isIsolatedClientSession, isJPAQueriesProcessed, isLoggingOff, isRemoteUnitOfWork, isServerSession, isSessionBroker, isSynchronized, isUnitOfWork, keyFromObject, keyFromObject, load, load, log, log, log, log, log, log, log, log, log, log, logMessage, logMessage, logThrowable, postAcquireConnection, prepareDatabaseQuery, preReleaseConnection, priviledgedExecuteNonSelectingCall, priviledgedExecuteSelectingCall, processCommand, processJPAQueries, processJPAQuery, readAllObjects, readAllObjects, readAllObjects, readAllObjects, readObject, readObject, readObject, readObject, readObject, refreshAndLockObject, refreshAndLockObject, refreshObject, registerFinalizer, release, releaseConnectionAfterCall, releaseReadConnection, releaseUnitOfWork, removeProperty, removeQuery, removeQuery, retrieveCacheKey, retryTransaction, rollbackExternalTransaction, setAccessor, setBroker, setCommandManager, setCommitManager, setDatasourceLogin, setDefaultReferenceMode, setEventManager, setExceptionHandler, setExternalTransactionController, setInjectionManager, setIntegrityChecker, setIsConcurrent, setIsFinalizersEnabled, setIsInBroker, setIsInProfile, setJPAQueriesProcessed, setLog, setLoggingOff, setLogin, setLogin, setLogLevel, setName, setNumberOfActiveUnitsOfWork, setPartitioningPolicy, setPessimisticLockTimeoutDefault, setPessimisticLockTimeoutUnitDefault, setProfiler, setProject, setProperties, setProperty, setQueries, setQueryBuilder, setQueryTimeoutDefault, setQueryTimeoutUnitDefault, setRefreshMetadataListener, setSerializer, setSessionLog, setShouldOptimizeResultSetAccess, setShouldPropagateChanges, setSynchronized, setTolerateInvalidJPQL, setTransactionMutex, setWasJTSTransactionInternallyStarted, severe, shouldDisplayData, shouldLog, shouldLogMessages, shouldLogMessages, shouldOptimizeResultSetAccess, shouldPropagateChanges, shouldTolerateInvalidJPQL, startOperationProfile, startOperationProfile, unwrapObject, updateObject, updateProfile, updateTablePerTenantDescriptors, validateCache, validateQuery, verifyDelete, warning, wasJTSTransactionInternallyStarted, wrapObject, writeAllObjectsWithChangeSet, writeObject, writesCompleted
-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.eclipse.persistence.sessions.DatabaseSession
deleteAllObjects, deleteObject, getCommandManager, insertObject, isInTransaction, refreshAndLockObject, refreshAndLockObject, setCommandManager, setDatasourceLogin, setExternalTransactionController, setLogin, setShouldPropagateChanges, shouldPropagateChanges, updateObject, writeObject
-
Methods inherited from interface org.eclipse.persistence.sessions.Session
acquireHistoricalSession, acquireUnitOfWork, addJPAQuery, addQuery, clearIntegrityChecker, clearProfile, containsQuery, copy, copy, copyObject, copyObject, doesObjectExist, dontLogMessages, executeNonSelectingCall, executeNonSelectingSQL, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeSelectingCall, executeSQL, getActiveSession, getActiveUnitOfWork, getAsOfClause, getClassDescriptor, getClassDescriptor, getClassDescriptorForAlias, getDatasourceLogin, getDefaultReferenceMode, getDescriptor, getDescriptors, getEventManager, getExceptionHandler, getExternalTransactionController, getId, getIdentityMapAccessor, getIntegrityChecker, getJPAQueries, getLog, getLogin, getLogLevel, getLogLevel, getName, getNextSequenceNumberValue, getPartitioningPolicy, getProfiler, getProject, getProperties, getProperty, getQueries, getQuery, getQuery, getSerializer, getSessionLog, handleException, handleSevere, hasDescriptor, hasExceptionHandler, hasExternalTransactionController, isClientSession, isFinalizersEnabled, isInProfile, isRemoteUnitOfWork, isServerSession, isSessionBroker, isUnitOfWork, keyFromObject, log, logMessage, readAllObjects, readAllObjects, readAllObjects, readObject, readObject, readObject, readObject, refreshObject, release, removeProperty, removeQuery, setDefaultReferenceMode, setExceptionHandler, setIntegrityChecker, setIsFinalizersEnabled, setLog, setLogLevel, setName, setPartitioningPolicy, setProfiler, setProperty, setQueryTimeoutDefault, setQueryTimeoutUnitDefault, setSerializer, setSessionLog, shouldLog, shouldLogMessages, validateCache
-
-
-
-
Field Detail
-
remoteConnection
protected transient org.eclipse.persistence.internal.sessions.remote.RemoteConnection remoteConnection
Connection to remote persistence service.
-
hasDefaultReadOnlyClasses
protected boolean hasDefaultReadOnlyClasses
Cache if default classes have been read from server.
-
isMetadataRemote
protected boolean isMetadataRemote
Define if meta-data is initialized locally, or serialized from the server.
-
-
Constructor Detail
-
DistributedSession
protected DistributedSession(int nothing)
INTERNAL: Create a blank session, used for proxy session.
-
DistributedSession
public DistributedSession(org.eclipse.persistence.internal.sessions.remote.RemoteConnection remoteConnection)
PUBLIC: Creates a DistributedSession.- Parameters:
remoteConnection
- remote session requires a remote connection. This must be accessed remotely from the client through RMI or CORBA.
-
-
Method Detail
-
acquireUnitOfWork
public abstract org.eclipse.persistence.internal.sessions.UnitOfWorkImpl acquireUnitOfWork()
PUBLIC: Return a unit of work for this session. The unit of work is an object level transaction that allows a group of changes to be applied as a unit.- Specified by:
acquireUnitOfWork
in interfaceSession
- Overrides:
acquireUnitOfWork
in classorg.eclipse.persistence.internal.sessions.AbstractSession
- See Also:
UnitOfWorkImpl
-
beginTransaction
public void beginTransaction()
PUBLIC: Start a transaction on the server. A unit of work should normally be used instead of transactions for the remote session.- Specified by:
beginTransaction
in interfaceDatabaseSession
- Overrides:
beginTransaction
in classorg.eclipse.persistence.internal.sessions.AbstractSession
- See Also:
DatabaseSession.isInTransaction()
-
commitTransaction
public void commitTransaction()
PUBLIC: Commit a transaction on the server. A unit of work should normally be used instead of transactions for the remote session.- Specified by:
commitTransaction
in interfaceDatabaseSession
- Overrides:
commitTransaction
in classorg.eclipse.persistence.internal.sessions.AbstractSession
-
cursorSelectObjects
public org.eclipse.persistence.internal.sessions.remote.RemoteCursoredStream cursorSelectObjects(CursoredStreamPolicy policy)
INTERNAL: Return remote cursor stream.
-
cursorSelectObjects
public org.eclipse.persistence.internal.sessions.remote.RemoteScrollableCursor cursorSelectObjects(ScrollableCursorPolicy policy)
INTERNAL: Return remote scrollable cursor
-
executeQuery
public java.lang.Object executeQuery(java.lang.String queryName) throws DatabaseException
PUBLIC: Execute the pre-defined query by name and return the result. Queries can be pre-defined and named to allow for their reuse. The named query can be defined on the remote session or the server-side session.- Specified by:
executeQuery
in interfaceSession
- Overrides:
executeQuery
in classorg.eclipse.persistence.internal.sessions.AbstractSession
- Throws:
DatabaseException
- See Also:
AbstractSession.addQuery(String, DatabaseQuery)
-
executeQuery
public java.lang.Object executeQuery(java.lang.String queryName, java.lang.Class domainClass) throws DatabaseException
PUBLIC: Execute the pre-defined query by name and return the result. Queries can be pre-defined and named to allow for their reuse. The class is the descriptor in which the query was pre-defined. The query is executed on the server-side session.- Specified by:
executeQuery
in interfaceSession
- Overrides:
executeQuery
in classorg.eclipse.persistence.internal.sessions.AbstractSession
- Throws:
DatabaseException
- See Also:
DescriptorQueryManager.addQuery(String, DatabaseQuery)
-
executeQuery
public java.lang.Object executeQuery(java.lang.String queryName, java.lang.Class domainClass, java.util.Vector argumentValues) throws DatabaseException
PUBLIC: Execute the pre-defined query by name and return the result. Queries can be pre-defined and named to allow for their reuse. The class is the descriptor in which the query was pre-defined.- Overrides:
executeQuery
in classorg.eclipse.persistence.internal.sessions.AbstractSession
- Throws:
DatabaseException
- See Also:
DescriptorQueryManager.addQuery(String, DatabaseQuery)
-
executeQuery
public java.lang.Object executeQuery(java.lang.String queryName, java.util.Vector argumentValues) throws DatabaseException
PUBLIC: Execute the pre-defined query by name and return the result. Queries can be pre-defined and named to allow for their reuse.- Overrides:
executeQuery
in classorg.eclipse.persistence.internal.sessions.AbstractSession
- Throws:
DatabaseException
- See Also:
AbstractSession.addQuery(String, DatabaseQuery)
-
executeQuery
public abstract java.lang.Object executeQuery(DatabaseQuery query)
Execute the database query.- Specified by:
executeQuery
in interfaceSession
- Overrides:
executeQuery
in classorg.eclipse.persistence.internal.sessions.AbstractSession
- See Also:
DatabaseQuery
-
executeQuery
public java.lang.Object executeQuery(DatabaseQuery query, org.eclipse.persistence.internal.sessions.AbstractRecord row)
INTERNAL: Execute the database query.- Overrides:
executeQuery
in classorg.eclipse.persistence.internal.sessions.AbstractSession
-
getDefaultReadOnlyClasses
public java.util.Vector getDefaultReadOnlyClasses()
INTERNAL: CR#2751 Returns the set of read-only classes for the receiver. These class come from the Remote connection- Overrides:
getDefaultReadOnlyClasses
in classorg.eclipse.persistence.internal.sessions.AbstractSession
- Returns:
- A Vector containing the Java Classes that are currently read-only.
-
getDescriptor
public ClassDescriptor getDescriptor(java.lang.Class domainClass)
INTERNAL: Return the table descriptor specified for the class.- Specified by:
getDescriptor
in interfaceCoreSession<ClassDescriptor,Login,org.eclipse.persistence.internal.databaseaccess.Platform,Project,SessionEventManager>
- Specified by:
getDescriptor
in interfaceSession
- Overrides:
getDescriptor
in classorg.eclipse.persistence.internal.sessions.AbstractSession
-
getDescriptorForAlias
public ClassDescriptor getDescriptorForAlias(java.lang.String alias)
INTERNAL: Return the table descriptor specified for the class.- Specified by:
getDescriptorForAlias
in interfaceSession
- Overrides:
getDescriptorForAlias
in classorg.eclipse.persistence.internal.sessions.AbstractSession
-
getDescriptorCorrespondingTo
public ClassDescriptor getDescriptorCorrespondingTo(ClassDescriptor descriptor)
INTERNAL: Return the descriptor.
-
getObjectCorrespondingTo
public abstract java.lang.Object getObjectCorrespondingTo(java.lang.Object serverSideDomainObject, java.util.Map objectDescriptors, java.util.Map processedObjects, ObjectLevelReadQuery query)
INTERNAL: Return the corresponding objects from the remote session for the objects read from the server.
-
getObjectsCorrespondingToAll
public abstract java.lang.Object getObjectsCorrespondingToAll(java.lang.Object serverSideDomainObjects, java.util.Map objectDescriptors, java.util.Map processedObjects, ObjectLevelReadQuery query, org.eclipse.persistence.internal.queries.ContainerPolicy containerPolicy)
INTERNAL: Return the corresponding objects from the remote session for the objects read from the server.
-
getRemoteConnection
public org.eclipse.persistence.internal.sessions.remote.RemoteConnection getRemoteConnection()
INTERNAL: Return the remote connection.
-
hasCorrespondingDescriptor
public boolean hasCorrespondingDescriptor(ClassDescriptor descriptor)
INTERNAL: Checks if the descriptor exists or not.
-
initializeIdentityMapAccessor
public void initializeIdentityMapAccessor()
INTERNAL: Set up the IdentityMapManager. Overrides the default IdentityMapManager- Overrides:
initializeIdentityMapAccessor
in classorg.eclipse.persistence.internal.sessions.AbstractSession
-
instantiateRemoteValueHolderOnServer
public abstract java.lang.Object instantiateRemoteValueHolderOnServer(org.eclipse.persistence.internal.sessions.remote.RemoteValueHolder remoteValueHolder)
INTERNAL: This will instantiate value holder on the server.
-
isConnected
public boolean isConnected()
PUBLIC: Return if this session is connected to the server.- Specified by:
isConnected
in interfaceSession
- Overrides:
isConnected
in classorg.eclipse.persistence.internal.sessions.AbstractSession
-
isDistributedSession
public boolean isDistributedSession()
INTERNAL: Return if this session is a distributed session.- Specified by:
isDistributedSession
in interfaceSession
- Overrides:
isDistributedSession
in classorg.eclipse.persistence.internal.sessions.AbstractSession
-
isRemoteSession
public boolean isRemoteSession()
INTERNAL: Return if this session is a remote session.- Specified by:
isRemoteSession
in interfaceSession
- Overrides:
isRemoteSession
in classorg.eclipse.persistence.internal.sessions.AbstractSession
-
privilegedAddDescriptor
public void privilegedAddDescriptor(ClassDescriptor descriptor)
INTERNAL: You cannot add descriptors to a remote session. This is a internal method used by TopLink
-
rollbackTransaction
public void rollbackTransaction()
PUBLIC: Rollback a transaction on the server. A unit of work should normally be used instead of transactions for the remote session.- Specified by:
rollbackTransaction
in interfaceDatabaseSession
- Overrides:
rollbackTransaction
in classorg.eclipse.persistence.internal.sessions.AbstractSession
-
setRemoteConnection
public void setRemoteConnection(org.eclipse.persistence.internal.sessions.remote.RemoteConnection remoteConnection)
INTERNAL: Set the remote connection.
-
toString
public java.lang.String toString()
PUBLIC: Avoid printing the accessor and platform.- Overrides:
toString
in classorg.eclipse.persistence.internal.sessions.AbstractSession
-
logout
public void logout()
PUBLIC: Logout the session, close the remote connection and release the hold resources- Specified by:
logout
in interfaceDatabaseSession
- Overrides:
logout
in classorg.eclipse.persistence.internal.sessions.DatabaseSessionImpl
-
isMetadataRemote
public boolean isMetadataRemote()
ADVANCED: Return if the descriptors and meta-data should be serialized from the server, or if they will be provided locally.
-
setIsMetadataRemote
public void setIsMetadataRemote(boolean isMetadataRemote)
ADVANCED: Set if the descriptors and meta-data should be serialized from the server, or if they will be provided locally.
-
connect
public void connect() throws DatabaseException
INTERNAL: Connect not required.- Overrides:
connect
in classorg.eclipse.persistence.internal.sessions.DatabaseSessionImpl
- Throws:
DatabaseException
-
disconnect
public void disconnect() throws DatabaseException
INTERNAL: Disconnect not required.- Overrides:
disconnect
in classorg.eclipse.persistence.internal.sessions.DatabaseSessionImpl
- Throws:
DatabaseException
-
loginAndDetectDatasource
public void loginAndDetectDatasource() throws DatabaseException
PUBLIC: Connect to the database using the predefined login. During connection, attempt to auto detect the required database platform. This method can be used in systems where for ease of use developers have EclipseLink autodetect the platform. To be safe, however, the platform should be configured directly. The login must have been assigned when or after creating the session.- Overrides:
loginAndDetectDatasource
in classorg.eclipse.persistence.internal.sessions.DatabaseSessionImpl
- Throws:
DatabaseException
-
login
public void login() throws DatabaseException
PUBLIC: Connect to the database using the predefined login. Obtain the login from the server, as it may have configuration initialized from the database meta-data.- Specified by:
login
in interfaceDatabaseSession
- Overrides:
login
in classorg.eclipse.persistence.internal.sessions.DatabaseSessionImpl
- Throws:
DatabaseException
- See Also:
DatabaseSession.login(Login)
-
-