Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(138)

Side by Side Diff: base/android/jni_generator/testJNIInitNativeNameOption.golden

Issue 1279163006: jni_generator: Wrap all native methods in stubs. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove separate forward declaration section entirely Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 // This file is autogenerated by 5 // This file is autogenerated by
6 // base/android/jni_generator/jni_generator.py 6 // base/android/jni_generator/jni_generator.py
7 // For 7 // For
8 // org/chromium/example/jni_generator/Test 8 // org/chromium/example/jni_generator/Test
9 9
10 #ifndef org_chromium_example_jni_generator_Test_JNI 10 #ifndef org_chromium_example_jni_generator_Test_JNI
11 #define org_chromium_example_jni_generator_Test_JNI 11 #define org_chromium_example_jni_generator_Test_JNI
12 12
13 #include <jni.h> 13 #include <jni.h>
14 14
15 #include "base/android/jni_generator/jni_generator_helper.h" 15 #include "base/android/jni_generator/jni_generator_helper.h"
16 16
17 #include "base/android/jni_int_wrapper.h" 17 #include "base/android/jni_int_wrapper.h"
18 18
19 // Step 1: forward declarations. 19 // Step 1: forward declarations.
20 namespace { 20 namespace {
21 const char kTestClassPath[] = "org/chromium/example/jni_generator/Test"; 21 const char kTestClassPath[] = "org/chromium/example/jni_generator/Test";
22 // Leaking this jclass as we cannot use LazyInstance from some threads. 22 // Leaking this jclass as we cannot use LazyInstance from some threads.
23 jclass g_Test_clazz = NULL; 23 jclass g_Test_clazz = NULL;
24 #define Test_clazz(env) g_Test_clazz 24 #define Test_clazz(env) g_Test_clazz
25 25
26 } // namespace 26 } // namespace
27 27
28 // Step 2: method stubs. 28 // Step 2: method stubs.
29 static jint Method(JNIEnv* env, jobject jcaller, 29 static jint Java_org_chromium_example_jni_1generator_Test_nativeMethod(JNIEnv*
30 env,
31 jobject jcaller,
30 jlong nativeTest, 32 jlong nativeTest,
31 jint arg1) { 33 jint arg1) {
32 Test* native = reinterpret_cast<Test*>(nativeTest); 34 Test* native = reinterpret_cast<Test*>(nativeTest);
33 CHECK_NATIVE_PTR(env, jcaller, native, "Method", 0); 35 CHECK_NATIVE_PTR(env, jcaller, native, "Method", 0);
34 return native->Method(env, jcaller, arg1); 36 return native->Method(env, jcaller, arg1);
35 } 37 }
36 38
37 // Step 3: RegisterNatives. 39 // Step 3: RegisterNatives.
38 40
39 static const JNINativeMethod kMethodsTest[] = { 41 static const JNINativeMethod kMethodsTest[] = {
40 { "nativeMethod", 42 { "nativeMethod",
41 "(" 43 "("
42 "J" 44 "J"
43 "I" 45 "I"
44 ")" 46 ")"
45 "I", reinterpret_cast<void*>(Method) }, 47 "I",
48 reinterpret_cast<void*>(Java_org_chromium_example_jni_1generator_Test_native Method)
49 },
46 }; 50 };
47 51
48 static bool RegisterNativesImpl(JNIEnv* env, jclass clazz) { 52 static bool RegisterNativesImpl(JNIEnv* env, jclass clazz) {
49 53
50 g_Test_clazz = static_cast<jclass>(env->NewWeakGlobalRef(clazz)); 54 g_Test_clazz = static_cast<jclass>(env->NewWeakGlobalRef(clazz));
51 55
52 const int kMethodsTestSize = arraysize(kMethodsTest); 56 const int kMethodsTestSize = arraysize(kMethodsTest);
53 57
54 if (env->RegisterNatives(Test_clazz(env), 58 if (env->RegisterNatives(Test_clazz(env),
55 kMethodsTest, 59 kMethodsTest,
56 kMethodsTestSize) < 0) { 60 kMethodsTestSize) < 0) {
57 jni_generator::HandleRegistrationError( 61 jni_generator::HandleRegistrationError(
58 env, Test_clazz(env), __FILE__); 62 env, Test_clazz(env), __FILE__);
59 return false; 63 return false;
60 } 64 }
61 65
62 return true; 66 return true;
63 } 67 }
64 68
65 extern "C" JNIEXPORT bool JNICALL 69 extern "C" JNIEXPORT bool JNICALL
66 Java_org_chromium_example_jni_generator_Test_nativeInitNativeClass(JNIEnv* env, 70 Java_org_chromium_example_jni_generator_Test_nativeInitNativeClass(JNIEnv* env,
67 jclass clazz) { 71 jclass clazz) {
68 return RegisterNativesImpl(env, clazz); 72 return RegisterNativesImpl(env, clazz);
69 } 73 }
70 74
71 #endif // org_chromium_example_jni_generator_Test_JNI 75 #endif // org_chromium_example_jni_generator_Test_JNI
OLDNEW
« no previous file with comments | « base/android/jni_generator/testInnerClassNativesMultiple.golden ('k') | base/android/jni_generator/testJarJarRemapping.golden » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698