Java 类com.squareup.okhttp.OkResponseCache 实例源码

项目:LoRaWAN-Smart-Parking    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:LoRaWAN-Smart-Parking    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:smart-mirror-app    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:cordova-plugin-background-mode    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:multirotorstuff-vtx-calc    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:L.TileLayer.Cordova    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:cordova-android-tv    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:Cordova-Locale-Plugin    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:wototoplayer    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:pubnub-rpi-smart-parking    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:IoTgo_Android_App    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:CanDoVS2015    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:krakn    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:krakn    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:krakn    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:krakn    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:krakn    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:posjs2    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:hustElectricity    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:Wetube    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:DemoArduinoAndroidCordovaBT    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:cordova-muse    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:android-discourse    文件:HttpEngine.java   
private void maybeCache() throws IOException {
    // Are we caching at all?
    if (!policy.getUseCaches())
        return;
    OkResponseCache responseCache = client.getOkResponseCache();
    if (responseCache == null)
        return;

    HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

    // Should we cache this response for this request?
    if (!responseHeaders.isCacheable(requestHeaders)) {
        responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
        return;
    }

    // Offer this request to the cache.
    cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:MinWageCalc    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:hackmxdf-2015    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:bluemix-parking-meter    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:NgFileExplorer    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:CrossWalkAndroidStudio    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:gwt-material-phonegap    文件:HttpEngine.java   
private void maybeCache() throws IOException {
  // Are we caching at all?
  if (!policy.getUseCaches()) return;
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  HttpURLConnection connectionToCache = policy.getHttpConnectionToCache();

  // Should we cache this response for this request?
  if (!responseHeaders.isCacheable(requestHeaders)) {
    responseCache.maybeRemove(connectionToCache.getRequestMethod(), uri);
    return;
  }

  // Offer this request to the cache.
  cacheRequest = responseCache.put(uri, connectionToCache);
}
项目:LoRaWAN-Smart-Parking    文件:HttpEngine.java   
/**
 * Figures out what the response source will be, and opens a socket to that
 * source if necessary. Prepares the request headers and gets ready to start
 * writing the request body if it exists.
 */
public final void sendRequest() throws IOException {
  if (responseSource != null) {
    return;
  }

  prepareRawRequestHeaders();
  initResponseSource();
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache != null) {
    responseCache.trackResponse(responseSource);
  }

  // The raw response source may require the network, but the request
  // headers may forbid network use. In that case, dispose of the network
  // response and use a GATEWAY_TIMEOUT response instead, as specified
  // by http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.4.
  if (requestHeaders.isOnlyIfCached() && responseSource.requiresConnection()) {
    if (responseSource == ResponseSource.CONDITIONAL_CACHE) {
      Util.closeQuietly(cachedResponseBody);
    }
    this.responseSource = ResponseSource.CACHE;
    this.cacheResponse = GATEWAY_TIMEOUT_RESPONSE;
    RawHeaders rawResponseHeaders = RawHeaders.fromMultimap(cacheResponse.getHeaders(), true);
    setResponse(new ResponseHeaders(uri, rawResponseHeaders), cacheResponse.getBody());
  }

  if (responseSource.requiresConnection()) {
    sendSocketRequest();
  } else if (connection != null) {
    client.getConnectionPool().recycle(connection);
    connection = null;
  }
}
项目:LoRaWAN-Smart-Parking    文件:HttpEngine.java   
/**
 * Initialize the source for this response. It may be corrected later if the
 * request headers forbids network use.
 */
private void initResponseSource() throws IOException {
  responseSource = ResponseSource.NETWORK;
  if (!policy.getUseCaches()) return;

  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  CacheResponse candidate = responseCache.get(
      uri, method, requestHeaders.getHeaders().toMultimap(false));
  if (candidate == null) return;

  Map<String, List<String>> responseHeadersMap = candidate.getHeaders();
  cachedResponseBody = candidate.getBody();
  if (!acceptCacheResponseType(candidate)
      || responseHeadersMap == null
      || cachedResponseBody == null) {
    Util.closeQuietly(cachedResponseBody);
    return;
  }

  RawHeaders rawResponseHeaders = RawHeaders.fromMultimap(responseHeadersMap, true);
  cachedResponseHeaders = new ResponseHeaders(uri, rawResponseHeaders);
  long now = System.currentTimeMillis();
  this.responseSource = cachedResponseHeaders.chooseResponseSource(now, requestHeaders);
  if (responseSource == ResponseSource.CACHE) {
    this.cacheResponse = candidate;
    setResponse(cachedResponseHeaders, cachedResponseBody);
  } else if (responseSource == ResponseSource.CONDITIONAL_CACHE) {
    this.cacheResponse = candidate;
  } else if (responseSource == ResponseSource.NETWORK) {
    Util.closeQuietly(cachedResponseBody);
  } else {
    throw new AssertionError();
  }
}
项目:LoRaWAN-Smart-Parking    文件:HttpEngine.java   
/**
 * Figures out what the response source will be, and opens a socket to that
 * source if necessary. Prepares the request headers and gets ready to start
 * writing the request body if it exists.
 */
public final void sendRequest() throws IOException {
  if (responseSource != null) {
    return;
  }

  prepareRawRequestHeaders();
  initResponseSource();
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache != null) {
    responseCache.trackResponse(responseSource);
  }

  // The raw response source may require the network, but the request
  // headers may forbid network use. In that case, dispose of the network
  // response and use a GATEWAY_TIMEOUT response instead, as specified
  // by http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.4.
  if (requestHeaders.isOnlyIfCached() && responseSource.requiresConnection()) {
    if (responseSource == ResponseSource.CONDITIONAL_CACHE) {
      Util.closeQuietly(cachedResponseBody);
    }
    this.responseSource = ResponseSource.CACHE;
    this.cacheResponse = GATEWAY_TIMEOUT_RESPONSE;
    RawHeaders rawResponseHeaders = RawHeaders.fromMultimap(cacheResponse.getHeaders(), true);
    setResponse(new ResponseHeaders(uri, rawResponseHeaders), cacheResponse.getBody());
  }

  if (responseSource.requiresConnection()) {
    sendSocketRequest();
  } else if (connection != null) {
    client.getConnectionPool().recycle(connection);
    connection = null;
  }
}
项目:LoRaWAN-Smart-Parking    文件:HttpEngine.java   
/**
 * Initialize the source for this response. It may be corrected later if the
 * request headers forbids network use.
 */
private void initResponseSource() throws IOException {
  responseSource = ResponseSource.NETWORK;
  if (!policy.getUseCaches()) return;

  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  CacheResponse candidate = responseCache.get(
      uri, method, requestHeaders.getHeaders().toMultimap(false));
  if (candidate == null) return;

  Map<String, List<String>> responseHeadersMap = candidate.getHeaders();
  cachedResponseBody = candidate.getBody();
  if (!acceptCacheResponseType(candidate)
      || responseHeadersMap == null
      || cachedResponseBody == null) {
    Util.closeQuietly(cachedResponseBody);
    return;
  }

  RawHeaders rawResponseHeaders = RawHeaders.fromMultimap(responseHeadersMap, true);
  cachedResponseHeaders = new ResponseHeaders(uri, rawResponseHeaders);
  long now = System.currentTimeMillis();
  this.responseSource = cachedResponseHeaders.chooseResponseSource(now, requestHeaders);
  if (responseSource == ResponseSource.CACHE) {
    this.cacheResponse = candidate;
    setResponse(cachedResponseHeaders, cachedResponseBody);
  } else if (responseSource == ResponseSource.CONDITIONAL_CACHE) {
    this.cacheResponse = candidate;
  } else if (responseSource == ResponseSource.NETWORK) {
    Util.closeQuietly(cachedResponseBody);
  } else {
    throw new AssertionError();
  }
}
项目:smart-mirror-app    文件:HttpEngine.java   
/**
 * Figures out what the response source will be, and opens a socket to that
 * source if necessary. Prepares the request headers and gets ready to start
 * writing the request body if it exists.
 */
public final void sendRequest() throws IOException {
  if (responseSource != null) {
    return;
  }

  prepareRawRequestHeaders();
  initResponseSource();
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache != null) {
    responseCache.trackResponse(responseSource);
  }

  // The raw response source may require the network, but the request
  // headers may forbid network use. In that case, dispose of the network
  // response and use a GATEWAY_TIMEOUT response instead, as specified
  // by http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.4.
  if (requestHeaders.isOnlyIfCached() && responseSource.requiresConnection()) {
    if (responseSource == ResponseSource.CONDITIONAL_CACHE) {
      Util.closeQuietly(cachedResponseBody);
    }
    this.responseSource = ResponseSource.CACHE;
    this.cacheResponse = GATEWAY_TIMEOUT_RESPONSE;
    RawHeaders rawResponseHeaders = RawHeaders.fromMultimap(cacheResponse.getHeaders(), true);
    setResponse(new ResponseHeaders(uri, rawResponseHeaders), cacheResponse.getBody());
  }

  if (responseSource.requiresConnection()) {
    sendSocketRequest();
  } else if (connection != null) {
    client.getConnectionPool().recycle(connection);
    connection = null;
  }
}
项目:smart-mirror-app    文件:HttpEngine.java   
/**
 * Initialize the source for this response. It may be corrected later if the
 * request headers forbids network use.
 */
private void initResponseSource() throws IOException {
  responseSource = ResponseSource.NETWORK;
  if (!policy.getUseCaches()) return;

  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  CacheResponse candidate = responseCache.get(
      uri, method, requestHeaders.getHeaders().toMultimap(false));
  if (candidate == null) return;

  Map<String, List<String>> responseHeadersMap = candidate.getHeaders();
  cachedResponseBody = candidate.getBody();
  if (!acceptCacheResponseType(candidate)
      || responseHeadersMap == null
      || cachedResponseBody == null) {
    Util.closeQuietly(cachedResponseBody);
    return;
  }

  RawHeaders rawResponseHeaders = RawHeaders.fromMultimap(responseHeadersMap, true);
  cachedResponseHeaders = new ResponseHeaders(uri, rawResponseHeaders);
  long now = System.currentTimeMillis();
  this.responseSource = cachedResponseHeaders.chooseResponseSource(now, requestHeaders);
  if (responseSource == ResponseSource.CACHE) {
    this.cacheResponse = candidate;
    setResponse(cachedResponseHeaders, cachedResponseBody);
  } else if (responseSource == ResponseSource.CONDITIONAL_CACHE) {
    this.cacheResponse = candidate;
  } else if (responseSource == ResponseSource.NETWORK) {
    Util.closeQuietly(cachedResponseBody);
  } else {
    throw new AssertionError();
  }
}
项目:cordova-plugin-background-mode    文件:HttpEngine.java   
/**
 * Figures out what the response source will be, and opens a socket to that
 * source if necessary. Prepares the request headers and gets ready to start
 * writing the request body if it exists.
 */
public final void sendRequest() throws IOException {
  if (responseSource != null) {
    return;
  }

  prepareRawRequestHeaders();
  initResponseSource();
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache != null) {
    responseCache.trackResponse(responseSource);
  }

  // The raw response source may require the network, but the request
  // headers may forbid network use. In that case, dispose of the network
  // response and use a GATEWAY_TIMEOUT response instead, as specified
  // by http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.4.
  if (requestHeaders.isOnlyIfCached() && responseSource.requiresConnection()) {
    if (responseSource == ResponseSource.CONDITIONAL_CACHE) {
      Util.closeQuietly(cachedResponseBody);
    }
    this.responseSource = ResponseSource.CACHE;
    this.cacheResponse = GATEWAY_TIMEOUT_RESPONSE;
    RawHeaders rawResponseHeaders = RawHeaders.fromMultimap(cacheResponse.getHeaders(), true);
    setResponse(new ResponseHeaders(uri, rawResponseHeaders), cacheResponse.getBody());
  }

  if (responseSource.requiresConnection()) {
    sendSocketRequest();
  } else if (connection != null) {
    client.getConnectionPool().recycle(connection);
    connection = null;
  }
}
项目:cordova-plugin-background-mode    文件:HttpEngine.java   
/**
 * Initialize the source for this response. It may be corrected later if the
 * request headers forbids network use.
 */
private void initResponseSource() throws IOException {
  responseSource = ResponseSource.NETWORK;
  if (!policy.getUseCaches()) return;

  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  CacheResponse candidate = responseCache.get(
      uri, method, requestHeaders.getHeaders().toMultimap(false));
  if (candidate == null) return;

  Map<String, List<String>> responseHeadersMap = candidate.getHeaders();
  cachedResponseBody = candidate.getBody();
  if (!acceptCacheResponseType(candidate)
      || responseHeadersMap == null
      || cachedResponseBody == null) {
    Util.closeQuietly(cachedResponseBody);
    return;
  }

  RawHeaders rawResponseHeaders = RawHeaders.fromMultimap(responseHeadersMap, true);
  cachedResponseHeaders = new ResponseHeaders(uri, rawResponseHeaders);
  long now = System.currentTimeMillis();
  this.responseSource = cachedResponseHeaders.chooseResponseSource(now, requestHeaders);
  if (responseSource == ResponseSource.CACHE) {
    this.cacheResponse = candidate;
    setResponse(cachedResponseHeaders, cachedResponseBody);
  } else if (responseSource == ResponseSource.CONDITIONAL_CACHE) {
    this.cacheResponse = candidate;
  } else if (responseSource == ResponseSource.NETWORK) {
    Util.closeQuietly(cachedResponseBody);
  } else {
    throw new AssertionError();
  }
}
项目:multirotorstuff-vtx-calc    文件:HttpEngine.java   
/**
 * Figures out what the response source will be, and opens a socket to that
 * source if necessary. Prepares the request headers and gets ready to start
 * writing the request body if it exists.
 */
public final void sendRequest() throws IOException {
  if (responseSource != null) {
    return;
  }

  prepareRawRequestHeaders();
  initResponseSource();
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache != null) {
    responseCache.trackResponse(responseSource);
  }

  // The raw response source may require the network, but the request
  // headers may forbid network use. In that case, dispose of the network
  // response and use a GATEWAY_TIMEOUT response instead, as specified
  // by http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.4.
  if (requestHeaders.isOnlyIfCached() && responseSource.requiresConnection()) {
    if (responseSource == ResponseSource.CONDITIONAL_CACHE) {
      Util.closeQuietly(cachedResponseBody);
    }
    this.responseSource = ResponseSource.CACHE;
    this.cacheResponse = GATEWAY_TIMEOUT_RESPONSE;
    RawHeaders rawResponseHeaders = RawHeaders.fromMultimap(cacheResponse.getHeaders(), true);
    setResponse(new ResponseHeaders(uri, rawResponseHeaders), cacheResponse.getBody());
  }

  if (responseSource.requiresConnection()) {
    sendSocketRequest();
  } else if (connection != null) {
    client.getConnectionPool().recycle(connection);
    connection = null;
  }
}
项目:multirotorstuff-vtx-calc    文件:HttpEngine.java   
/**
 * Initialize the source for this response. It may be corrected later if the
 * request headers forbids network use.
 */
private void initResponseSource() throws IOException {
  responseSource = ResponseSource.NETWORK;
  if (!policy.getUseCaches()) return;

  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache == null) return;

  CacheResponse candidate = responseCache.get(
      uri, method, requestHeaders.getHeaders().toMultimap(false));
  if (candidate == null) return;

  Map<String, List<String>> responseHeadersMap = candidate.getHeaders();
  cachedResponseBody = candidate.getBody();
  if (!acceptCacheResponseType(candidate)
      || responseHeadersMap == null
      || cachedResponseBody == null) {
    Util.closeQuietly(cachedResponseBody);
    return;
  }

  RawHeaders rawResponseHeaders = RawHeaders.fromMultimap(responseHeadersMap, true);
  cachedResponseHeaders = new ResponseHeaders(uri, rawResponseHeaders);
  long now = System.currentTimeMillis();
  this.responseSource = cachedResponseHeaders.chooseResponseSource(now, requestHeaders);
  if (responseSource == ResponseSource.CACHE) {
    this.cacheResponse = candidate;
    setResponse(cachedResponseHeaders, cachedResponseBody);
  } else if (responseSource == ResponseSource.CONDITIONAL_CACHE) {
    this.cacheResponse = candidate;
  } else if (responseSource == ResponseSource.NETWORK) {
    Util.closeQuietly(cachedResponseBody);
  } else {
    throw new AssertionError();
  }
}
项目:L.TileLayer.Cordova    文件:HttpEngine.java   
/**
 * Figures out what the response source will be, and opens a socket to that
 * source if necessary. Prepares the request headers and gets ready to start
 * writing the request body if it exists.
 */
public final void sendRequest() throws IOException {
  if (responseSource != null) {
    return;
  }

  prepareRawRequestHeaders();
  initResponseSource();
  OkResponseCache responseCache = client.getOkResponseCache();
  if (responseCache != null) {
    responseCache.trackResponse(responseSource);
  }

  // The raw response source may require the network, but the request
  // headers may forbid network use. In that case, dispose of the network
  // response and use a GATEWAY_TIMEOUT response instead, as specified
  // by http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.4.
  if (requestHeaders.isOnlyIfCached() && responseSource.requiresConnection()) {
    if (responseSource == ResponseSource.CONDITIONAL_CACHE) {
      Util.closeQuietly(cachedResponseBody);
    }
    this.responseSource = ResponseSource.CACHE;
    this.cacheResponse = GATEWAY_TIMEOUT_RESPONSE;
    RawHeaders rawResponseHeaders = RawHeaders.fromMultimap(cacheResponse.getHeaders(), true);
    setResponse(new ResponseHeaders(uri, rawResponseHeaders), cacheResponse.getBody());
  }

  if (responseSource.requiresConnection()) {
    sendSocketRequest();
  } else if (connection != null) {
    client.getConnectionPool().recycle(connection);
    connection = null;
  }
}