Module org.eclipse.persistence.core
Class ReplaceValueHoldersIterator
java.lang.Object
org.eclipse.persistence.internal.descriptors.DescriptorIterator
org.eclipse.persistence.internal.sessions.remote.ReplaceValueHoldersIterator
Helper class for RemoteSessionController.
This descriptor iterator will replace all the normal
value holders in an object with remote value holders
that can be serialized to the client.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.eclipse.persistence.internal.descriptors.DescriptorIterator
DescriptorIterator.CascadeCondition -
Field Summary
Fields inherited from class org.eclipse.persistence.internal.descriptors.DescriptorIterator
CascadeAllParts, cascadeCondition, cascadeDepth, CascadePrivateParts, currentDescriptor, currentGroup, currentItem, currentMapping, forDetach, NoCascading, result, session, shouldBreak, shouldIterateOnAggregates, shouldIterateOnFetchGroupAttributesOnly, shouldIterateOnIndirectionObjects, shouldIterateOnPrimitives, shouldIterateOverIndirectionObjects, shouldIterateOverUninstantiatedIndirectionObjects, shouldIterateOverWrappedObjects, shouldTrackCurrentGroup, usesGroup, visitedMappings, visitedObjects, visitedStack -
Constructor Summary
ConstructorsConstructorDescriptionReplaceValueHoldersIterator(RemoteSessionController controller) public constructor -
Method Summary
Modifier and TypeMethodDescriptionprotected ObjectDescriptorbuildObjectDescriptor(Object object) build and return an object descriptor for the specified objectprotected RemoteValueHolderbuildRemoteValueHolderFor(ValueHolderInterface valueHolder) build a properly initialized remote value holderprotected voidinitialize(RemoteSessionController controller) initialize instanceprotected voidIterate an indirect container.protected voidinternalIterateValueHolder(ValueHolderInterface originalValueHolder) Synchronously create a remote value holder.protected voidif we get here, it is a domain objectprotected voidsaveRemoteValueHolder(RemoteValueHolder remoteValueHolder) save the remote value holder for later useprotected voidsetOneToOneMappingSettingsIn(RemoteValueHolder remoteValueHolder) Set one-to-one mapping information.Methods inherited from class org.eclipse.persistence.internal.descriptors.DescriptorIterator
getCascadeDepth, getCurrentDescriptor, getCurrentGroup, getCurrentItem, getCurrentMapping, getDescriptorFor, getResult, getSession, getVisitedGrandparent, getVisitedMappings, getVisitedObjects, getVisitedParent, getVisitedStack, internalIterateAggregateObject, internalIteratePrimitive, internalIterateReferenceObject, internalIterateReferenceObjects, isForDetach, iterateForAggregateMapping, iterateIndirectContainerForMapping, iteratePrimitiveForMapping, iterateReferenceObjectForMapping, iterateReferenceObjects, iterateValueHolderForMapping, setCascadeCondition, setCascadeDepth, setCurrentDescriptor, setCurrentGroup, setCurrentItem, setCurrentMapping, setForDetach, setResult, setSession, setShouldBreak, setShouldIterateOnAggregates, setShouldIterateOnFetchGroupAttributesOnly, setShouldIterateOnIndirectionObjects, setShouldIterateOnPrimitives, setShouldIterateOverIndirectionObjects, setShouldIterateOverUninstantiatedIndirectionObjects, setShouldIterateOverWrappedObjects, setShouldTrackCurrentGroup, setVisitedObjects, setVisitedStack, shouldBreak, shouldCascadeAllParts, shouldCascadeNoParts, shouldCascadePrivateParts, shouldIterateOnAggregates, shouldIterateOnFetchGroupAttributesOnly, shouldIterateOnIndirectionObjects, shouldIterateOnPrimitives, shouldIterateOverIndirectionObjects, shouldIterateOverUninstantiatedIndirectionObjects, shouldIterateOverWrappedObjects, shouldTrackCurrentGroup, startIterationOn, startIterationOn, usesGroup
-
Constructor Details
-
ReplaceValueHoldersIterator
public constructor
-
-
Method Details
-
buildObjectDescriptor
build and return an object descriptor for the specified object -
buildRemoteValueHolderFor
build a properly initialized remote value holder -
initialize
initialize instance -
internalIterateIndirectContainer
Iterate an indirect container.- Overrides:
internalIterateIndirectContainerin classDescriptorIterator
-
internalIterateValueHolder
Synchronously create a remote value holder. The value holder passed in is ignored so that we can ensure that the value holder being held by the object is used instead of the one that was passed in.- Overrides:
internalIterateValueHolderin classDescriptorIterator
-
iterate
if we get here, it is a domain object- Specified by:
iteratein classDescriptorIterator
-
saveRemoteValueHolder
save the remote value holder for later use -
setOneToOneMappingSettingsIn
Set one-to-one mapping information. This allows us to look for a cache hit before going to the database.
-