Here are the examples of the java api class java.net.CacheResponse taken from open source projects.
1. JavaApiConverterTest#createJavaCacheResponse_httpPost()
Project: okhttp
File: JavaApiConverterTest.java
File: JavaApiConverterTest.java
@Test public void createJavaCacheResponse_httpPost() throws Exception { Request okRequest = createArbitraryOkRequest().newBuilder().url("http://insecure/request").post(createRequestBody("RequestBody")).build(); ResponseBody responseBody = createResponseBody("ResponseBody"); Response okResponse = createArbitraryOkResponse(okRequest).newBuilder().protocol(Protocol.HTTP_1_1).code(200).message("Fantastic").addHeader("key1", "value1_1").addHeader("key2", "value2").addHeader("key1", "value1_2").body(responseBody).build(); CacheResponse javaCacheResponse = JavaApiConverter.createJavaCacheResponse(okResponse); assertFalse(javaCacheResponse instanceof SecureCacheResponse); Map<String, List<String>> javaHeaders = javaCacheResponse.getHeaders(); assertEquals(Arrays.asList("value1_1", "value1_2"), javaHeaders.get("key1")); assertEquals(Arrays.asList("HTTP/1.1 200 Fantastic"), javaHeaders.get(null)); assertEquals("ResponseBody", readAll(javaCacheResponse.getBody())); }
2. JavaApiConverterTest#createJavaCacheResponse_httpGet()
Project: okhttp
File: JavaApiConverterTest.java
File: JavaApiConverterTest.java
@Test public void createJavaCacheResponse_httpGet() throws Exception { Request okRequest = createArbitraryOkRequest().newBuilder().url("http://insecure/request").get().build(); Response okResponse = createArbitraryOkResponse(okRequest).newBuilder().protocol(Protocol.HTTP_1_1).code(200).message("Fantastic").addHeader("key1", "value1_1").addHeader("key2", "value2").addHeader("key1", "value1_2").body(null).build(); CacheResponse javaCacheResponse = JavaApiConverter.createJavaCacheResponse(okResponse); assertFalse(javaCacheResponse instanceof SecureCacheResponse); Map<String, List<String>> javaHeaders = javaCacheResponse.getHeaders(); assertEquals(Arrays.asList("value1_1", "value1_2"), javaHeaders.get("key1")); assertEquals(Arrays.asList("HTTP/1.1 200 Fantastic"), javaHeaders.get(null)); assertNull(javaCacheResponse.getBody()); }
3. JavaApiConverterTest#createOkResponseForCacheGet_withMissingStatusLine()
Project: okhttp
File: JavaApiConverterTest.java
File: JavaApiConverterTest.java
/** Test for https://code.google.com/p/android/issues/detail?id=160522 */ @Test public void createOkResponseForCacheGet_withMissingStatusLine() throws Exception { URI uri = new URI("http://foo/bar"); Request request = new Request.Builder().url(uri.toURL()).build(); CacheResponse cacheResponse = new CacheResponse() { @Override public Map<String, List<String>> getHeaders() throws IOException { Map<String, List<String>> headers = new HashMap<>(); // Headers is deliberately missing an entry with a null key. headers.put("xyzzy", Arrays.asList("bar", "baz")); return headers; } @Override public InputStream getBody() throws IOException { // Should never be called return null; } }; try { JavaApiConverter.createOkResponseForCacheGet(request, cacheResponse); fail(); } catch (IOException expected) { } }
4. ResponseCacheTest#assertCached()
Project: okhttp
File: ResponseCacheTest.java
File: ResponseCacheTest.java
private void assertCached(boolean shouldPut, int responseCode) throws Exception { int expectedResponseCode = responseCode; server = new MockWebServer(); MockResponse mockResponse = new MockResponse().addHeader("Last-Modified: " + formatDate(-1, TimeUnit.HOURS)).addHeader("Expires: " + formatDate(1, TimeUnit.HOURS)).setResponseCode(responseCode).setBody("ABCDE").addHeader("WWW-Authenticate: challenge"); if (responseCode == HttpURLConnection.HTTP_PROXY_AUTH) { mockResponse.addHeader("Proxy-Authenticate: Basic realm=\"protected area\""); } else if (responseCode == HttpURLConnection.HTTP_UNAUTHORIZED) { mockResponse.addHeader("WWW-Authenticate: Basic realm=\"protected area\""); } else if (responseCode == HttpURLConnection.HTTP_NO_CONTENT || responseCode == HttpURLConnection.HTTP_RESET) { // We forbid bodies for 204 and 205. mockResponse.setBody(""); } server.enqueue(mockResponse); if (responseCode == HttpURLConnection.HTTP_CLIENT_TIMEOUT) { // 408's are a bit of an outlier because we may repeat the request if we encounter this // response code. In this scenario, there are 2 responses: the initial 408 and then the 200 // because of the retry. We just want to ensure the initial 408 isn't cached. expectedResponseCode = 200; server.enqueue(new MockResponse().setHeader("Cache-Control", "no-store").setBody("FGHIJ")); } server.start(); URL url = server.url("/").url(); HttpURLConnection connection = openConnection(url); assertEquals(expectedResponseCode, connection.getResponseCode()); // Exhaust the content stream. readAscii(connection); CacheResponse cached = cache.get(url.toURI(), "GET", null); if (shouldPut) { assertNotNull(Integer.toString(responseCode), cached); } else { assertNull(Integer.toString(responseCode), cached); } // tearDown() isn't sufficient; this test starts multiple servers server.shutdown(); }
5. JavaApiConverterTest#createOkResponseForCacheGet()
Project: okhttp
File: JavaApiConverterTest.java
File: JavaApiConverterTest.java
@Test public void createOkResponseForCacheGet() throws Exception { final String statusLine = "HTTP/1.1 200 Fantastic"; URI uri = new URI("http://foo/bar"); Request request = new Request.Builder().url(uri.toURL()).build(); CacheResponse cacheResponse = new CacheResponse() { @Override public Map<String, List<String>> getHeaders() throws IOException { Map<String, List<String>> headers = new HashMap<>(); headers.put(null, Collections.singletonList(statusLine)); headers.put("xyzzy", Arrays.asList("bar", "baz")); return headers; } @Override public InputStream getBody() throws IOException { return new ByteArrayInputStream("HelloWorld".getBytes(StandardCharsets.UTF_8)); } }; Response response = JavaApiConverter.createOkResponseForCacheGet(request, cacheResponse); Request cacheRequest = response.request(); assertEquals(request.url(), cacheRequest.url()); assertEquals(request.method(), cacheRequest.method()); assertEquals(0, request.headers().size()); assertEquals(Protocol.HTTP_1_1, response.protocol()); assertEquals(200, response.code()); assertEquals("Fantastic", response.message()); Headers okResponseHeaders = response.headers(); assertEquals("baz", okResponseHeaders.get("xyzzy")); assertEquals("HelloWorld", response.body().string()); assertNull(response.handshake()); }
6. CacheAdapter#get()
Project: okhttp
File: CacheAdapter.java
File: CacheAdapter.java
@Override public Response get(Request request) throws IOException { CacheResponse javaResponse = getJavaCachedResponse(request); if (javaResponse == null) { return null; } return JavaApiConverter.createOkResponseForCacheGet(request, javaResponse); }
7. HttpEngine#initResponseSource()
Project: crosswalk-cordova-android
File: HttpEngine.java
File: 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(); } }
8. HttpEngine#initResponseSource()
Project: cordova-android-chromeview
File: HttpEngine.java
File: 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() || policy.responseCache == null) { return; } CacheResponse candidate = policy.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(); } }
9. HttpEngine#initResponseSource()
Project: cordova-amazon-fireos
File: HttpEngine.java
File: 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(); } }