Package org.apache.cayenne.util
Class ObjectDetachOperation
- java.lang.Object
-
- org.apache.cayenne.util.ObjectDetachOperation
-
public class ObjectDetachOperation extends Object
An operation that creates a subgraph of detached objects, using the PrefetchTree to delineate the graph boundaries. Target objects can be described by a different set of descriptors, thus allowing server-to-client conversion to happen in the process.- Since:
- 1.2
-
-
Field Summary
Fields Modifier and Type Field Description protected Map<ObjectId,Persistent>
seen
protected EntityResolver
targetResolver
-
Constructor Summary
Constructors Constructor Description ObjectDetachOperation(EntityResolver targetResolver)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Object
detach(Object object, ClassDescriptor descriptor, PrefetchTreeNode prefetchTree)
"Detaches" an object from its context by creating an unattached copy.void
reset()
-
-
-
Field Detail
-
targetResolver
protected EntityResolver targetResolver
-
seen
protected Map<ObjectId,Persistent> seen
-
-
Constructor Detail
-
ObjectDetachOperation
public ObjectDetachOperation(EntityResolver targetResolver)
-
-
Method Detail
-
reset
public void reset()
-
detach
public Object detach(Object object, ClassDescriptor descriptor, PrefetchTreeNode prefetchTree)
"Detaches" an object from its context by creating an unattached copy. The copy is created using target descriptor of this operation that may be different from the object descriptor passed to this method.
-
-