org.apache.cayenne.util
Class ObjectDetachOperation

java.lang.Object
  extended by 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
protected  Map<ObjectId,Persistent> seen
           
protected  EntityResolver targetResolver
           
 
Constructor Summary
ObjectDetachOperation(EntityResolver targetResolver)
           
 
Method Summary
 Object detach(Object object, ClassDescriptor descriptor, PrefetchTreeNode prefetchTree)
          "Detaches" an object from its context by creating an unattached copy.
 void reset()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

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.



Copyright © 2001-2011 Apache Cayenne. All Rights Reserved.