1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 package org.chromium.android_webview;
7 import org.chromium.base.CalledByNative;
8 import org.chromium.base.JNINamespace;
9 import org.chromium.base.VisibleForTesting;
11 import java.io.InputStream;
15 * The response information that is to be returned for a particular resource fetch.
17 @JNINamespace("android_webview")
18 public class AwWebResourceResponse {
19 private String mMimeType;
20 private String mCharset;
21 private InputStream mData;
22 private int mStatusCode;
23 private String mReasonPhrase;
24 private String[] mResponseHeaderNames;
25 private String[] mResponseHeaderValues;
27 public AwWebResourceResponse(String mimeType, String encoding, InputStream data) {
33 public AwWebResourceResponse(String mimeType, String encoding, InputStream data,
34 int statusCode, String reasonPhrase, Map<String, String> responseHeaders) {
35 this(mimeType, encoding, data);
37 mStatusCode = statusCode;
38 mReasonPhrase = reasonPhrase;
40 if (responseHeaders != null) {
41 mResponseHeaderNames = new String[responseHeaders.size()];
42 mResponseHeaderValues = new String[responseHeaders.size()];
44 for (Map.Entry<String, String> entry : responseHeaders.entrySet()) {
45 mResponseHeaderNames[i] = entry.getKey();
46 mResponseHeaderValues[i] = entry.getValue();
54 public String getMimeType() {
59 private String getCharset() {
65 public InputStream getData() {
70 private int getStatusCode() {
75 private String getReasonPhrase() {
80 private String[] getResponseHeaderNames() {
81 return mResponseHeaderNames;
85 private String[] getResponseHeaderValues() {
86 return mResponseHeaderValues;