public class RemoteUnitOfWork extends RepeatableWriteUnitOfWork
UnitOfWork.CommitOrderTypeAfterExternalTransactionRolledBack, Birth, CommitPending, CommitTransactionPending, Death, DO_NOT_THROW_CONFORM_EXCEPTIONS, Full, LOCK_QUERIES_PROPERTY, MergePending, None, Partial, ReadLockOnly, ReadLockUpdateVersion, THROW_ALL_CONFORM_EXCEPTIONS, WriteChangesFailedLOG_DEBUG, LOG_ERROR, LOG_INFO, LOG_WARNING| Constructor and Description |
|---|
RemoteUnitOfWork() |
RemoteUnitOfWork(DistributedSession parent) |
RemoteUnitOfWork(DistributedSession parent,
ReferenceMode referenceMode) |
RemoteUnitOfWork(RemoteUnitOfWork parent) |
RemoteUnitOfWork(RemoteUnitOfWork parent,
ReferenceMode referenceMode) |
| Modifier and Type | Method and Description |
|---|---|
UnitOfWorkImpl |
acquireUnitOfWork()
The nested unit of work must also be remote.
|
UnitOfWorkImpl |
acquireUnitOfWork(ReferenceMode referenceMode)
The nested unit of work must also be remote.
|
void |
beginEarlyTransaction()
PUBLIC:
Tell the unit of work to begin a transaction now.
|
UnitOfWorkChangeSet |
calculateChanges(java.util.Map registeredObjects,
UnitOfWorkChangeSet changeSet,
boolean assignSequences,
boolean shouldCloneMap)
INTERNAL:
Changes are calculated on the client, so avoid recalculating them on the server.
|
void |
commitRootUnitOfWork()
Starts committing the remote unit of work.
|
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.
|
Platform |
getDatasourcePlatform()
INTERNAL:
Return the database platform currently connected to.
|
ClassDescriptor |
getDescriptor(java.lang.Class domainClass)
Return the table descriptor specified for the class.
|
ClassDescriptor |
getDescriptorForAlias(java.lang.String alias)
Return the table descriptor specified for the class.
|
java.util.List |
getNewObjectsCache()
Returns a new object cache
|
RemoteSessionController |
getParentSessionController()
INTERNAL:
Method returns the parent RemoteSessionController for this Remote UnitOfWork
Used to retrieve Valueholders that were used on the client
|
DatabasePlatform |
getPlatform()
INTERNAL:
Return the database platform currently connected to.
|
java.util.List |
getUnregisteredNewObjectsCache()
Returns an unregistered new object cache
|
java.lang.Object |
internalExecuteQuery(DatabaseQuery query,
AbstractRecord Record)
INTERNAL:
Return the results from exeucting the database query.
|
boolean |
isFlush() |
boolean |
isRemoteUnitOfWork()
Return if this session is a unit of work.
|
void |
reinitializeForSession(AbstractSession session,
RemoteSessionController parentSessionController)
INTERNAL:
Re-initialize for the server-side session.
|
void |
resumeUnitOfWork()
INTERNAL:
Resume is not required on the server.
|
void |
setIsFlush(boolean isFlush) |
void |
setParentSessionController(RemoteSessionController parentSessionController)
INTERNAL:
Sets the parent RemoteSessionController for this Remote UnitOfWork
Used to retrieve Valueholders that were used on the client
|
java.lang.String |
toString()
Avoid the toString printing the accessor and platform.
|
boolean |
verifyDelete(java.lang.Object domainObject)
TESTING:
This is used by testing code to ensure that a deletion was successful.
|
void |
writeChanges()
Simulate a flush, current just begins a transaction and commits.
|
clear, clearFlushClearCache, clearForClose, commitTransaction, discoverUnregisteredNewObjects, getClassesToBeInvalidated, getCumulativeUOWChangeSet, getFlushClearCache, getUnregisteredDeletedCloneForOriginal, isAfterWriteChangesButBeforeCommit, isObjectDeleted, issueSQLbeforeCompletion, isWithinFlush, mergeCloneWithReferences, registerNewObject, rollbackTransaction, setCumulativeUOWChangeSet, setDiscoverUnregisteredNewObjectsWithoutPersist, setFlushClearCache, setShouldStoreByPassCache, setShouldTerminateTransaction, shouldClearForCloseOnRelease, shouldDiscoverUnregisteredNewObjectsWithoutPersist, shouldForceReadFromDB, shouldStoreBypassCache, synchronizeAndResume, updateChangeTrackersIfRequired, wasDeletedacquireHistoricalSession, addDeletedPrivateOwnedObjects, addDeletionDependency, addNewAggregate, addObjectDeletedDuringCommit, addPessimisticLockedClone, addPrivateOwnedObject, addReadOnlyClass, addReadOnlyClasses, addRemovedObject, addToChangeTrackedHardList, afterExternalTransactionRollback, assignSequenceNumber, assignSequenceNumber, assignSequenceNumbers, beginTransaction, buildOriginal, checkExistence, checkForUnregisteredExistingObject, checkIfAlreadyRegistered, cloneAndRegisterObject, cloneAndRegisterObject, collectAndPrepareObjectsForNestedMerge, commit, commitAndResume, commitAndResumeOnFailure, commitAndResumeWithPreBuiltChangeSet, commitRootUnitOfWorkWithPreBuiltChangeSet, commitTransactionAfterWriteChanges, copyReadOnlyClasses, createCloneQueryValueHolder, createCloneTransformationValueHolder, deepMergeClone, deepRevertObject, deepUnregisterObject, discoverAndPersistUnregisteredNewObjects, dontPerformValidation, executeCall, forceUpdateToVersionField, getAccessor, getAccessors, getAccessors, getActiveUnitOfWork, getAllFromNewObjects, getBackupClone, getBackupClone, getBackupCloneForCommit, getBackupCloneForCommit, getBatchQueries, getCascadeDeleteObjects, getChangeTrackedHardList, getCloneMapping, getCloneToOriginals, getCommitManager, getCommitOrder, getContainerBeans, getContainerUnitOfWork, getCurrentChanges, getDefaultReadOnlyClasses, getDeletedObjects, getDeletionDependencies, getDeletionDependencies, getExecutionSession, getLifecycle, getMergeManager, getNewAggregates, getNewObjectsCloneToMergeOriginal, getNewObjectsCloneToOriginal, getNewObjectsInParentOriginalToClone, getNewObjectsOriginalToClone, getObjectFromNewObjects, getObjectFromNewObjects, getObjectsDeletedDuringCommit, getOptimisticReadLockObjects, getOriginalVersionOfNewObject, getOriginalVersionOfObject, getOriginalVersionOfObjectOrNull, getOriginalVersionOfObjectOrNull, getParent, getParentIdentityMapSession, getPessimisticLockedObjects, getPlatform, getProperty, getQuery, getQuery, getReadOnlyClasses, getReference, getReferenceMode, getSequencing, getServerPlatform, getSessionTypeString, getShouldThrowConformExceptions, getState, getTransaction, getUnitOfWorkChangeSet, getUnregisteredExistingObjects, getValidationLevel, hasCascadeDeleteObjects, hasChanges, hasCloneMapping, hasContainerBeans, hasDeletedObjects, hasNewObjects, hasOptimisticReadLockObjects, hasPessimisticLockedObjects, hasPrivateOwnedObjects, hasUnregisteredNewObjects, initializeIdentityMapAccessor, internalRegisterObject, isActive, isClassReadOnly, isCloneNewObject, isCloneNewObjectFromParent, isCommitPending, isConsideredInvalid, isDead, isInTransaction, isMergePending, isNestedUnitOfWork, isNewObjectInParent, isObjectNew, isObjectRegistered, isOriginalNewObject, isPessimisticLocked, isPreDeleteComplete, isSmartMerge, issueSQLbeforeCompletion, isUnitOfWork, isUnregisteredExistingObject, isUnregisteredNewObjectInParent, mergeClone, mergeClone, mergeClonesAfterCompletion, mergeCloneWithReferences, mergeCloneWithReferences, mergeCloneWithReferences, newInstance, performFullValidation, performPartialValidation, performRemove, performRemovePrivateOwnedObjectFromChangeSet, printRegisteredObjects, processDeleteObjectQuery, registerAllObjects, registerAllObjects, registerExistingObject, registerExistingObject, registerExistingObject, registerNewContainerBean, registerNewContainerBeanForCMP, registerNewObjectForPersist, registerObject, registerOriginalNewObjectFromNestedUnitOfWork, registerWithTransactionIfRequired, release, releaseJTSConnection, releaseReadConnection, releaseWriteLocks, removeAllReadOnlyClasses, removeForceUpdateToVersionField, removePrivateOwnedObject, removeReadOnlyClass, retryQuery, revertAndResume, revertObject, revertObject, scanForConformingInstances, setBatchQueries, setCommitOrder, setDead, setMergeManager, setObjectsDeletedDuringCommit, setParent, setPendingMerge, setPreDeleteComplete, setReadOnlyClasses, setResumeUnitOfWorkOnTransactionCompletion, setShouldCascadeCloneToJoinedRelationship, setShouldDiscoverNewObjects, setShouldNewObjectsBeCached, setShouldOrderUpdates, setShouldPerformDeletesFirst, setShouldThrowConformExceptions, setShouldValidateExistence, setSmartMerge, setSynchronized, setTransaction, setUnitOfWorkChangeSet, setValidationLevel, setWasNonObjectLevelModifyQueryExecuted, setWasTransactionBegunPrematurely, shallowMergeClone, shallowRevertObject, shallowUnregisterObject, shouldCascadeCloneToJoinedRelationship, shouldDiscoverNewObjects, shouldNewObjectsBeCached, shouldOrderUpdates, shouldPerformDeletesFirst, shouldPerformFullValidation, shouldPerformNoValidation, shouldPerformPartialValidation, shouldReadFromDB, shouldResumeUnitOfWorkOnTransactionCompletion, shouldValidateExistence, storeDeferredModifyAllQuery, storeModifyAllQuery, unregisterObject, unregisterObject, unregisterObject, validateObjectSpace, verifyMutexThreadIntegrityBeforeRelease, wasNonObjectLevelModifyQueryExecuted, wasTransactionBegunPrematurely, writesCompletedacquireNonSynchronizedUnitOfWork, acquireNonSynchronizedUnitOfWork, acquireRepeatableWriteUnitOfWork, addAlias, addJPAQuery, addJPATablePerTenantQuery, addMultitenantContextProperty, addQuery, addQuery, addStaticMetamodelClass, basicExecuteCall, beginExternalTransaction, checkAndRefreshInvalidObject, cleanUpEntityListenerInjectionManager, clearDescriptors, clearIntegrityChecker, clearLastDescriptorAccessed, clearProfile, clone, commitExternalTransaction, compareObjects, compareObjectsDontMatch, config, containsQuery, copy, copy, copyDescriptorNamedQueries, copyDescriptorsFromProject, copyInternal, copyObject, copyObject, createEntityListenerInjectionManager, createProtectedInstanceFromCachedData, deferEvent, deleteAllObjects, deleteAllObjects, deleteObject, doesObjectExist, dontLogMessages, endOperationProfile, endOperationProfile, executeDeferredEvents, executeNonSelectingCall, executeNonSelectingSQL, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeSelectingCall, executeSQL, fine, finer, finest, getActiveCommandThreads, getActiveSession, getAliasDescriptors, getAllQueries, getAsOfClause, getAttributeGroups, getBroker, getClassDescriptor, getClassDescriptor, getClassDescriptorForAlias, getCommandManager, getDatasourceLogin, getDefaultReferenceMode, getDescriptor, getDescriptors, getEntityListenerInjectionManager, getEventManager, getExceptionHandler, getExceptionHandlerClass, getExternalTransactionController, getId, getIdentityMapAccessor, getIdentityMapAccessorInstance, getIntegrityChecker, getJPAQueries, getJPATablePerTenantQueries, getLoader, getLog, getLogin, getLogLevel, getLogLevel, getLogSessionString, getMappedSuperclass, getMultitenantContextProperties, getName, getNextQueryId, getNextSequenceNumberValue, getNumberOfActiveUnitsOfWork, getParentIdentityMapSession, getParentIdentityMapSession, getPartitioningPolicy, getPessimisticLockTimeoutDefault, getProfiler, getProject, getProperties, getQueries, getQuery, getQuery, getQueryBuilder, getQueryTimeoutDefault, getRefreshMetadataListener, getRootSession, getSerializer, getSessionForClass, getSessionForName, getSessionLog, getStaticMetamodelClass, getTablePerTenantDescriptors, getTablePerTenantQueries, getTransactionMutex, handleException, handleSevere, hasBroker, hasCommitManager, hasDescriptor, hasEventManager, hasExceptionHandler, hasExternalTransactionController, hasProperties, hasTablePerTenantDescriptors, hasTablePerTenantQueries, incrementProfile, incrementProfile, info, insertObject, isBroker, isClassReadOnly, isClientSession, isConcurrent, isConnected, isDatabaseSession, isDistributedSession, isExclusiveConnectionRequired, isExclusiveIsolatedClientSession, isFinalizersEnabled, isHistoricalSession, isInBroker, isInProfile, isIsolatedClientSession, isJPAQueriesProcessed, isLoggingOff, isProtectedSession, isRemoteSession, isServerSession, isSessionBroker, isSynchronized, keyFromObject, keyFromObject, load, load, log, log, log, log, log, log, log, log, log, log, logMessage, logMessage, logThrowable, postAcquireConnection, prepareDatabaseQuery, preReleaseConnection, priviledgedExecuteNonSelectingCall, priviledgedExecuteSelectingCall, processCommand, processJPAQueries, readAllObjects, readAllObjects, readAllObjects, readAllObjects, readObject, readObject, readObject, readObject, readObject, refreshAndLockObject, refreshAndLockObject, refreshObject, registerFinalizer, releaseConnectionAfterCall, releaseUnitOfWork, removeProperty, removeQuery, removeQuery, retrieveCacheKey, retryTransaction, setAccessor, setBroker, setCommandManager, setCommitManager, setDatasourceLogin, setDefaultReferenceMode, setEntityListenerInjectionManager, setEventManager, setExceptionHandler, setExternalTransactionController, setIntegrityChecker, setIsConcurrent, setIsFinalizersEnabled, setIsInBroker, setIsInProfile, setJPAQueriesProcessed, setLog, setLoggingOff, setLogin, setLogin, setLogLevel, setName, setPartitioningPolicy, setPessimisticLockTimeoutDefault, setProfiler, setProject, setProperties, setProperty, setQueries, setQueryBuilder, setQueryTimeoutDefault, setRefreshMetadataListener, setSerializer, setSessionLog, setShouldOptimizeResultSetAccess, setShouldPropagateChanges, setTolerateInvalidJPQL, setWasJTSTransactionInternallyStarted, severe, shouldDisplayData, shouldLog, shouldLogMessages, shouldLogMessages, shouldOptimizeResultSetAccess, shouldPropagateChanges, shouldTolerateInvalidJPQL, startOperationProfile, startOperationProfile, unwrapObject, updateObject, updateProfile, updateTablePerTenantDescriptors, validateCache, validateQuery, warning, wasJTSTransactionInternallyStarted, wrapObject, writeObjectequals, getClass, hashCode, notify, notifyAll, wait, wait, waitdeleteAllObjects, deleteObject, isClassReadOnly, refreshAndLockObject, refreshAndLockObjectaddJPAQuery, addQuery, clearIntegrityChecker, clearProfile, containsQuery, copy, copy, copyObject, copyObject, doesObjectExist, dontLogMessages, executeNonSelectingCall, executeNonSelectingSQL, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeSelectingCall, executeSQL, getActiveSession, 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, getQueries, getQuery, getSerializer, getSessionLog, handleException, handleSevere, hasDescriptor, hasExceptionHandler, hasExternalTransactionController, isClientSession, isConnected, isDatabaseSession, isDistributedSession, isFinalizersEnabled, isInProfile, isRemoteSession, isServerSession, isSessionBroker, keyFromObject, log, logMessage, readAllObjects, readAllObjects, readAllObjects, readObject, readObject, readObject, readObject, refreshObject, removeProperty, removeQuery, setDefaultReferenceMode, setExceptionHandler, setExternalTransactionController, setIntegrityChecker, setIsFinalizersEnabled, setLog, setLogLevel, setName, setPartitioningPolicy, setProfiler, setProperty, setQueryTimeoutDefault, setSerializer, setSessionLog, shouldLog, shouldLogMessages, validateCachepublic RemoteUnitOfWork()
public RemoteUnitOfWork(RemoteUnitOfWork parent)
public RemoteUnitOfWork(DistributedSession parent)
public RemoteUnitOfWork(RemoteUnitOfWork parent, ReferenceMode referenceMode)
public RemoteUnitOfWork(DistributedSession parent, ReferenceMode referenceMode)
public boolean isFlush()
public void setIsFlush(boolean isFlush)
public void beginEarlyTransaction()
throws DatabaseException
beginEarlyTransaction in interface UnitOfWorkbeginEarlyTransaction in class UnitOfWorkImplDatabaseExceptionUnitOfWorkImpl.commit(),
UnitOfWorkImpl.release()public UnitOfWorkImpl acquireUnitOfWork()
acquireUnitOfWork in interface SessionacquireUnitOfWork in class UnitOfWorkImplUnitOfWorkImplpublic UnitOfWorkImpl acquireUnitOfWork(ReferenceMode referenceMode)
acquireUnitOfWork in interface SessionacquireUnitOfWork in class AbstractSessionreferenceMode - The reference type the UOW should use internally when
referencing Working clones. Setting this to WEAK means the UOW will use
weak references to reference clones that support active object change
tracking and hard references for deferred change tracked objects.
Setting to FORCE_WEAK means that all objects will be referenced by weak
references and if the application no longer references the clone the
clone may be garbage collected. If the clone
has uncommitted changes then those changes will be lost.UnitOfWorkImplpublic void writeChanges()
writeChanges in interface UnitOfWorkwriteChanges in class RepeatableWriteUnitOfWorkpublic void commitRootUnitOfWork()
commitRootUnitOfWork in class RepeatableWriteUnitOfWorkpublic UnitOfWorkChangeSet calculateChanges(java.util.Map registeredObjects, UnitOfWorkChangeSet changeSet, boolean assignSequences, boolean shouldCloneMap)
calculateChanges in class UnitOfWorkImplpublic void resumeUnitOfWork()
resumeUnitOfWork in class UnitOfWorkImplpublic java.lang.Object executeQuery(java.lang.String queryName)
throws DatabaseException
executeQuery in interface SessionexecuteQuery in class AbstractSessionDatabaseExceptionAbstractSession.addQuery(String, DatabaseQuery)public java.lang.Object executeQuery(java.lang.String queryName,
java.lang.Class domainClass)
throws DatabaseException
executeQuery in interface SessionexecuteQuery in class AbstractSessionDatabaseExceptionDescriptorQueryManager.addQuery(String, DatabaseQuery)public java.lang.Object executeQuery(java.lang.String queryName,
java.lang.Class domainClass,
java.util.Vector argumentValues)
throws DatabaseException
executeQuery in class AbstractSessionDatabaseExceptionDescriptorQueryManager.addQuery(String, DatabaseQuery)public java.lang.Object executeQuery(java.lang.String queryName,
java.util.Vector argumentValues)
throws DatabaseException
executeQuery in class AbstractSessionDatabaseExceptionAbstractSession.addQuery(String, DatabaseQuery)public ClassDescriptor getDescriptor(java.lang.Class domainClass)
getDescriptor in interface CoreSession<ClassDescriptor,Login,Platform,Project,SessionEventManager>getDescriptor in interface SessiongetDescriptor in class AbstractSessionpublic ClassDescriptor getDescriptorForAlias(java.lang.String alias)
getDescriptorForAlias in interface SessiongetDescriptorForAlias in class AbstractSessionalias - The descriptor alias.public java.util.List getNewObjectsCache()
public RemoteSessionController getParentSessionController()
public DatabasePlatform getPlatform()
getPlatform in interface SessiongetPlatform in class AbstractSessionpublic Platform getDatasourcePlatform()
getDatasourcePlatform in interface CoreSession<ClassDescriptor,Login,Platform,Project,SessionEventManager>getDatasourcePlatform in interface SessiongetDatasourcePlatform in class AbstractSessionpublic java.util.List getUnregisteredNewObjectsCache()
public java.lang.Object internalExecuteQuery(DatabaseQuery query, AbstractRecord Record) throws DatabaseException, QueryException
internalExecuteQuery in class UnitOfWorkImplDatabaseExceptionQueryExceptionpublic boolean isRemoteUnitOfWork()
isRemoteUnitOfWork in interface SessionisRemoteUnitOfWork in class AbstractSessionpublic void reinitializeForSession(AbstractSession session, RemoteSessionController parentSessionController)
public void setParentSessionController(RemoteSessionController parentSessionController)
public java.lang.String toString()
toString in class AbstractSessionpublic boolean verifyDelete(java.lang.Object domainObject)
verifyDelete in class AbstractSessionEclipseLink 2.6.3, "build v20160428-59c81c5" API Reference