@Override
  public void onResponse(Call call, Response response) throws IOException {
    metrics.endNetwork();
    if (callback != null) {
      try {
        callback.onResult(parseResponse(this, response));
      } catch (Exception e) {
        callback.onFailure(e);
      }
    }
  }
Preserve a request/response pair through an asynchronous callback.
src/main/java/com/google/maps/internal/OkHttpPendingResult.java