return proxy.copy(proxy);
} else {
// using a StateManager, so determine what DetachedState is being used
OpenJPAStateManager sm = proxy.getOwner(); // !null checked for above
ClassMetaData meta = sm.getMetaData(); // if null, no proxies?
if ((meta != null) && (!Boolean.TRUE.equals(meta.usesDetachedState()))) {
// configured to use transient (null) or no (FALSE) StateManger, so remove any $proxy
return proxy.copy(proxy);
} else {
// DetachedStateField==true, which means to keep the SM and $proxy in the serialized objects
return proxy;