OLD | NEW |
| (Empty) |
1 // Copyright (c) 2012 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. | |
4 | |
5 #include "android_webview/native/intercepted_request_data_impl.h" | |
6 | |
7 #include "android_webview/native/input_stream_impl.h" | |
8 #include "base/android/jni_android.h" | |
9 #include "base/android/jni_string.h" | |
10 #include "jni/InterceptedRequestData_jni.h" | |
11 #include "net/url_request/url_request.h" | |
12 #include "net/url_request/url_request_job.h" | |
13 | |
14 using base::android::ScopedJavaLocalRef; | |
15 | |
16 namespace android_webview { | |
17 | |
18 InterceptedRequestDataImpl::InterceptedRequestDataImpl( | |
19 const base::android::JavaRef<jobject>& obj) | |
20 : java_object_(obj) { | |
21 } | |
22 | |
23 InterceptedRequestDataImpl::~InterceptedRequestDataImpl() { | |
24 } | |
25 | |
26 scoped_ptr<InputStream> | |
27 InterceptedRequestDataImpl::GetInputStream(JNIEnv* env) const { | |
28 ScopedJavaLocalRef<jobject> jstream = | |
29 Java_InterceptedRequestData_getData(env, java_object_.obj()); | |
30 if (jstream.is_null()) | |
31 return scoped_ptr<InputStream>(); | |
32 return make_scoped_ptr<InputStream>(new InputStreamImpl(jstream)); | |
33 } | |
34 | |
35 bool InterceptedRequestDataImpl::GetMimeType(JNIEnv* env, | |
36 std::string* mime_type) const { | |
37 ScopedJavaLocalRef<jstring> jstring_mime_type = | |
38 Java_InterceptedRequestData_getMimeType(env, java_object_.obj()); | |
39 if (jstring_mime_type.is_null()) | |
40 return false; | |
41 *mime_type = ConvertJavaStringToUTF8(jstring_mime_type); | |
42 return true; | |
43 } | |
44 | |
45 bool InterceptedRequestDataImpl::GetCharset( | |
46 JNIEnv* env, std::string* charset) const { | |
47 ScopedJavaLocalRef<jstring> jstring_charset = | |
48 Java_InterceptedRequestData_getCharset(env, java_object_.obj()); | |
49 if (jstring_charset.is_null()) | |
50 return false; | |
51 *charset = ConvertJavaStringToUTF8(jstring_charset); | |
52 return true; | |
53 } | |
54 | |
55 bool RegisterInterceptedRequestData(JNIEnv* env) { | |
56 return RegisterNativesImpl(env); | |
57 } | |
58 | |
59 } // namespace android_webview | |
OLD | NEW |