@Retained
  Object nonTxnFindObject(KeyInfo keyInfo, boolean isCreate, boolean generateCallbacks,
      Object localValue, boolean disableCopyOnRead, boolean preferCD,
      ClientProxyMembershipID requestingClient, EntryEventImpl clientEvent,
      boolean returnTombstones) throws TimeoutException, CacheLoaderException {
    @Retained
    Object result;
    if (isProxy()) {
      result =
          getObject(keyInfo, isCreate, generateCallbacks, localValue, disableCopyOnRead, preferCD,
              requestingClient, clientEvent, returnTombstones);
    } else {
      result = optimizedGetObject(keyInfo, isCreate, generateCallbacks, localValue,
          disableCopyOnRead, preferCD,
          requestingClient, clientEvent, returnTombstones);
    }
    return result;
  }
@param isCreate true if call found no entry; false if updating an existing entry
@param localValue the value retrieved from the region for this object.
@param disableCopyOnRead if true then do not make a copy
@param preferCD true if the preferred result form is CachedDeserializable
@param clientEvent the client event, if any
@param returnTombstones whether to return tombstones
geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java