public Object getResult()
      throws FunctionException {
    if (resultCollected) {
      if (exceptionThrown != null) {
        throw exceptionThrown;
      }
      return objectReturned;
    }
    resultCollected = true;
    try {
      objectReturned = rc.getResultInternal();
      return objectReturned;
    } catch (FunctionException e) {
      exceptionThrown = e;
      throw e;
    }
  }
This class is intended to be used by ResultCollector classes in order to make sure
that the result returned by the getResult method is only
computed once. Subsequent invocations to these methods return the result computed
in the first invocation.
geode-core/src/main/java/org/apache/geode/internal/cache/execute/ResultCollectorHolder.java