OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include <jni.h> | 5 #include <jni.h> |
6 | 6 |
7 #include "base/android/base_jni_registrar.h" | 7 #include "base/android/base_jni_registrar.h" |
8 #include "base/android/jni_android.h" | 8 #include "base/android/jni_android.h" |
9 #include "base/android/jni_registrar.h" | 9 #include "base/android/jni_registrar.h" |
10 #include "components/cronet/android/cronet_library_loader.h" | 10 #include "components/cronet/android/cronet_library_loader.h" |
11 #include "cronet_url_request_context_config_test.h" | |
12 #include "mock_cert_verifier.h" | 11 #include "mock_cert_verifier.h" |
13 #include "mock_url_request_job_factory.h" | 12 #include "mock_url_request_job_factory.h" |
14 #include "native_test_server.h" | 13 #include "native_test_server.h" |
15 #include "network_change_notifier_util.h" | 14 #include "network_change_notifier_util.h" |
16 #include "quic_test_server.h" | 15 #include "quic_test_server.h" |
17 #include "sdch_test_util.h" | 16 #include "sdch_test_util.h" |
18 #include "test_upload_data_stream_handler.h" | 17 #include "test_upload_data_stream_handler.h" |
19 | 18 |
20 namespace { | 19 namespace { |
21 | 20 |
22 const base::android::RegistrationMethod kCronetTestsRegisteredMethods[] = { | 21 const base::android::RegistrationMethod kCronetTestsRegisteredMethods[] = { |
23 {"MockCertVerifier", cronet::RegisterMockCertVerifier}, | 22 {"MockCertVerifier", cronet::RegisterMockCertVerifier}, |
24 {"MockUrlRequestJobFactory", cronet::RegisterMockUrlRequestJobFactory}, | 23 {"MockUrlRequestJobFactory", cronet::RegisterMockUrlRequestJobFactory}, |
25 {"NativeTestServer", cronet::RegisterNativeTestServer}, | 24 {"NativeTestServer", cronet::RegisterNativeTestServer}, |
26 {"NetworkChangeNotifierUtil", cronet::RegisterNetworkChangeNotifierUtil}, | 25 {"NetworkChangeNotifierUtil", cronet::RegisterNetworkChangeNotifierUtil}, |
27 {"QuicTestServer", cronet::RegisterQuicTestServer}, | 26 {"QuicTestServer", cronet::RegisterQuicTestServer}, |
28 {"SdchTestUtil", cronet::RegisterSdchTestUtil}, | 27 {"SdchTestUtil", cronet::RegisterSdchTestUtil}, |
29 {"TestUploadDataStreamHandlerRegisterJni", | 28 {"TestUploadDataStreamHandlerRegisterJni", |
30 cronet::TestUploadDataStreamHandlerRegisterJni}, | 29 cronet::TestUploadDataStreamHandlerRegisterJni}, |
31 {"CronetUrlRequestContextConfigTest", | |
32 cronet::RegisterCronetUrlRequestContextConfigTest}, | |
33 }; | 30 }; |
34 | 31 |
35 } // namespace | 32 } // namespace |
36 | 33 |
37 // This is called by the VM when the shared library is first loaded. | 34 // This is called by the VM when the shared library is first loaded. |
38 // Checks the available version of JNI. Also, caches Java reflection artifacts. | 35 // Checks the available version of JNI. Also, caches Java reflection artifacts. |
39 extern "C" jint JNI_OnLoad(JavaVM* vm, void* reserved) { | 36 extern "C" jint JNI_OnLoad(JavaVM* vm, void* reserved) { |
40 JNIEnv* env; | 37 JNIEnv* env; |
41 if (vm->GetEnv(reinterpret_cast<void**>(&env), JNI_VERSION_1_6) != JNI_OK) { | 38 if (vm->GetEnv(reinterpret_cast<void**>(&env), JNI_VERSION_1_6) != JNI_OK) { |
42 return -1; | 39 return -1; |
43 } | 40 } |
44 | 41 |
45 jint cronet_onload = cronet::CronetOnLoad(vm, reserved); | 42 jint cronet_onload = cronet::CronetOnLoad(vm, reserved); |
46 if (cronet_onload == -1) | 43 if (cronet_onload == -1) |
47 return cronet_onload; | 44 return cronet_onload; |
48 | 45 |
49 if (!base::android::RegisterNativeMethods( | 46 if (!base::android::RegisterNativeMethods( |
50 env, | 47 env, |
51 kCronetTestsRegisteredMethods, | 48 kCronetTestsRegisteredMethods, |
52 arraysize(kCronetTestsRegisteredMethods))) { | 49 arraysize(kCronetTestsRegisteredMethods))) { |
53 return -1; | 50 return -1; |
54 } | 51 } |
55 return cronet_onload; | 52 return cronet_onload; |
56 } | 53 } |
57 | 54 |
58 extern "C" void JNI_OnUnLoad(JavaVM* vm, void* reserved) { | 55 extern "C" void JNI_OnUnLoad(JavaVM* vm, void* reserved) { |
59 cronet::CronetOnUnLoad(vm, reserved); | 56 cronet::CronetOnUnLoad(vm, reserved); |
60 } | 57 } |
61 | 58 |
OLD | NEW |