• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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.
4
5// This file is autogenerated by
6//     base/android/jni_generator/jni_generator.py
7// For
8//     org/chromium/TestJni
9
10#ifndef org_chromium_TestJni_JNI
11#define org_chromium_TestJni_JNI
12
13#include <jni.h>
14
15#include "base/android/jni_generator/jni_generator_helper.h"
16
17#include "base/android/jni_int_wrapper.h"
18
19// Step 1: forward declarations.
20namespace {
21const char kTestJniClassPath[] = "org/chromium/TestJni";
22// Leaking this jclass as we cannot use LazyInstance from some threads.
23jclass g_TestJni_clazz = NULL;
24#define TestJni_clazz(env) g_TestJni_clazz
25
26}  // namespace
27
28// Step 2: method stubs.
29
30static jint Init(JNIEnv* env, const JavaParamRef<jobject>& jcaller);
31
32static jint Java_org_chromium_TestJni_nativeInit(JNIEnv* env, jobject jcaller) {
33  return Init(env, JavaParamRef<jobject>(env, jcaller));
34}
35
36static void Java_org_chromium_TestJni_nativeDestroy(JNIEnv* env,
37    jobject jcaller,
38    jint nativeChromeBrowserProvider) {
39  ChromeBrowserProvider* native =
40      reinterpret_cast<ChromeBrowserProvider*>(nativeChromeBrowserProvider);
41  CHECK_NATIVE_PTR(env, jcaller, native, "Destroy");
42  return native->Destroy(env, JavaParamRef<jobject>(env, jcaller));
43}
44
45static jlong Java_org_chromium_TestJni_nativeAddBookmark(JNIEnv* env,
46    jobject jcaller,
47    jint nativeChromeBrowserProvider,
48    jstring url,
49    jstring title,
50    jboolean isFolder,
51    jlong parentId) {
52  ChromeBrowserProvider* native =
53      reinterpret_cast<ChromeBrowserProvider*>(nativeChromeBrowserProvider);
54  CHECK_NATIVE_PTR(env, jcaller, native, "AddBookmark", 0);
55  return native->AddBookmark(env, JavaParamRef<jobject>(env, jcaller),
56      JavaParamRef<jstring>(env, url), JavaParamRef<jstring>(env, title),
57      isFolder, parentId);
58}
59
60static ScopedJavaLocalRef<jstring> GetDomainAndRegistry(JNIEnv* env, const
61    JavaParamRef<jclass>& jcaller,
62    const JavaParamRef<jstring>& url);
63
64static jstring Java_org_chromium_TestJni_nativeGetDomainAndRegistry(JNIEnv* env,
65    jclass jcaller,
66    jstring url) {
67  return GetDomainAndRegistry(env, JavaParamRef<jclass>(env, jcaller),
68      JavaParamRef<jstring>(env, url)).Release();
69}
70
71static void CreateHistoricalTabFromState(JNIEnv* env, const
72    JavaParamRef<jclass>& jcaller,
73    const JavaParamRef<jbyteArray>& state,
74    jint tab_index);
75
76static void Java_org_chromium_TestJni_nativeCreateHistoricalTabFromState(JNIEnv*
77    env, jclass jcaller,
78    jbyteArray state,
79    jint tab_index) {
80  return CreateHistoricalTabFromState(env, JavaParamRef<jclass>(env, jcaller),
81      JavaParamRef<jbyteArray>(env, state), tab_index);
82}
83
84static ScopedJavaLocalRef<jbyteArray> GetStateAsByteArray(JNIEnv* env, const
85    JavaParamRef<jobject>& jcaller,
86    const JavaParamRef<jobject>& view);
87
88static jbyteArray Java_org_chromium_TestJni_nativeGetStateAsByteArray(JNIEnv*
89    env, jobject jcaller,
90    jobject view) {
91  return GetStateAsByteArray(env, JavaParamRef<jobject>(env, jcaller),
92      JavaParamRef<jobject>(env, view)).Release();
93}
94
95static ScopedJavaLocalRef<jobjectArray> GetAutofillProfileGUIDs(JNIEnv* env,
96    const JavaParamRef<jclass>& jcaller);
97
98static jobjectArray
99    Java_org_chromium_TestJni_nativeGetAutofillProfileGUIDs(JNIEnv* env, jclass
100    jcaller) {
101  return GetAutofillProfileGUIDs(env, JavaParamRef<jclass>(env,
102      jcaller)).Release();
103}
104
105static void SetRecognitionResults(JNIEnv* env, const JavaParamRef<jobject>&
106    jcaller,
107    jint sessionId,
108    const JavaParamRef<jobjectArray>& results);
109
110static void Java_org_chromium_TestJni_nativeSetRecognitionResults(JNIEnv* env,
111    jobject jcaller,
112    jint sessionId,
113    jobjectArray results) {
114  return SetRecognitionResults(env, JavaParamRef<jobject>(env, jcaller),
115      sessionId, JavaParamRef<jobjectArray>(env, results));
116}
117
118static jlong Java_org_chromium_TestJni_nativeAddBookmarkFromAPI(JNIEnv* env,
119    jobject jcaller,
120    jint nativeChromeBrowserProvider,
121    jstring url,
122    jobject created,
123    jobject isBookmark,
124    jobject date,
125    jbyteArray favicon,
126    jstring title,
127    jobject visits) {
128  ChromeBrowserProvider* native =
129      reinterpret_cast<ChromeBrowserProvider*>(nativeChromeBrowserProvider);
130  CHECK_NATIVE_PTR(env, jcaller, native, "AddBookmarkFromAPI", 0);
131  return native->AddBookmarkFromAPI(env, JavaParamRef<jobject>(env, jcaller),
132      JavaParamRef<jstring>(env, url), JavaParamRef<jobject>(env, created),
133      JavaParamRef<jobject>(env, isBookmark), JavaParamRef<jobject>(env, date),
134      JavaParamRef<jbyteArray>(env, favicon), JavaParamRef<jstring>(env, title),
135      JavaParamRef<jobject>(env, visits));
136}
137
138static jint FindAll(JNIEnv* env, const JavaParamRef<jobject>& jcaller,
139    const JavaParamRef<jstring>& find);
140
141static jint Java_org_chromium_TestJni_nativeFindAll(JNIEnv* env, jobject
142    jcaller,
143    jstring find) {
144  return FindAll(env, JavaParamRef<jobject>(env, jcaller),
145      JavaParamRef<jstring>(env, find));
146}
147
148static ScopedJavaLocalRef<jobject> GetInnerClass(JNIEnv* env, const
149    JavaParamRef<jclass>& jcaller);
150
151static jobject Java_org_chromium_TestJni_nativeGetInnerClass(JNIEnv* env, jclass
152    jcaller) {
153  return GetInnerClass(env, JavaParamRef<jclass>(env, jcaller)).Release();
154}
155
156static jobject Java_org_chromium_TestJni_nativeQueryBitmap(JNIEnv* env,
157    jobject jcaller,
158    jint nativeChromeBrowserProvider,
159    jobjectArray projection,
160    jstring selection,
161    jobjectArray selectionArgs,
162    jstring sortOrder) {
163  ChromeBrowserProvider* native =
164      reinterpret_cast<ChromeBrowserProvider*>(nativeChromeBrowserProvider);
165  CHECK_NATIVE_PTR(env, jcaller, native, "QueryBitmap", NULL);
166  return native->QueryBitmap(env, JavaParamRef<jobject>(env, jcaller),
167      JavaParamRef<jobjectArray>(env, projection), JavaParamRef<jstring>(env,
168      selection), JavaParamRef<jobjectArray>(env, selectionArgs),
169      JavaParamRef<jstring>(env, sortOrder)).Release();
170}
171
172static void Java_org_chromium_TestJni_nativeGotOrientation(JNIEnv* env,
173    jobject jcaller,
174    jint nativeDataFetcherImplAndroid,
175    jdouble alpha,
176    jdouble beta,
177    jdouble gamma) {
178  DataFetcherImplAndroid* native =
179      reinterpret_cast<DataFetcherImplAndroid*>(nativeDataFetcherImplAndroid);
180  CHECK_NATIVE_PTR(env, jcaller, native, "GotOrientation");
181  return native->GotOrientation(env, JavaParamRef<jobject>(env, jcaller), alpha,
182      beta, gamma);
183}
184
185static ScopedJavaLocalRef<jthrowable> MessWithJavaException(JNIEnv* env, const
186    JavaParamRef<jclass>& jcaller,
187    const JavaParamRef<jthrowable>& e);
188
189static jthrowable Java_org_chromium_TestJni_nativeMessWithJavaException(JNIEnv*
190    env, jclass jcaller,
191    jthrowable e) {
192  return MessWithJavaException(env, JavaParamRef<jclass>(env, jcaller),
193      JavaParamRef<jthrowable>(env, e)).Release();
194}
195
196// Step 3: RegisterNatives.
197
198static const JNINativeMethod kMethodsTestJni[] = {
199    { "nativeInit",
200"("
201")"
202"I", reinterpret_cast<void*>(Java_org_chromium_TestJni_nativeInit) },
203    { "nativeDestroy",
204"("
205"I"
206")"
207"V", reinterpret_cast<void*>(Java_org_chromium_TestJni_nativeDestroy) },
208    { "nativeAddBookmark",
209"("
210"I"
211"Ljava/lang/String;"
212"Ljava/lang/String;"
213"Z"
214"J"
215")"
216"J", reinterpret_cast<void*>(Java_org_chromium_TestJni_nativeAddBookmark) },
217    { "nativeGetDomainAndRegistry",
218"("
219"Ljava/lang/String;"
220")"
221"Ljava/lang/String;",
222    reinterpret_cast<void*>(Java_org_chromium_TestJni_nativeGetDomainAndRegistry)
223    },
224    { "nativeCreateHistoricalTabFromState",
225"("
226"[B"
227"I"
228")"
229"V",
230    reinterpret_cast<void*>(Java_org_chromium_TestJni_nativeCreateHistoricalTabFromState)
231    },
232    { "nativeGetStateAsByteArray",
233"("
234"Landroid/view/View;"
235")"
236"[B",
237    reinterpret_cast<void*>(Java_org_chromium_TestJni_nativeGetStateAsByteArray)
238    },
239    { "nativeGetAutofillProfileGUIDs",
240"("
241")"
242"[Ljava/lang/String;",
243    reinterpret_cast<void*>(Java_org_chromium_TestJni_nativeGetAutofillProfileGUIDs)
244    },
245    { "nativeSetRecognitionResults",
246"("
247"I"
248"[Ljava/lang/String;"
249")"
250"V",
251    reinterpret_cast<void*>(Java_org_chromium_TestJni_nativeSetRecognitionResults)
252    },
253    { "nativeAddBookmarkFromAPI",
254"("
255"I"
256"Ljava/lang/String;"
257"Ljava/lang/Long;"
258"Ljava/lang/Boolean;"
259"Ljava/lang/Long;"
260"[B"
261"Ljava/lang/String;"
262"Ljava/lang/Integer;"
263")"
264"J", reinterpret_cast<void*>(Java_org_chromium_TestJni_nativeAddBookmarkFromAPI)
265    },
266    { "nativeFindAll",
267"("
268"Ljava/lang/String;"
269")"
270"I", reinterpret_cast<void*>(Java_org_chromium_TestJni_nativeFindAll) },
271    { "nativeGetInnerClass",
272"("
273")"
274"Lorg/chromium/example/jni_generator/SampleForTests$OnFrameAvailableListener;",
275    reinterpret_cast<void*>(Java_org_chromium_TestJni_nativeGetInnerClass) },
276    { "nativeQueryBitmap",
277"("
278"I"
279"[Ljava/lang/String;"
280"Ljava/lang/String;"
281"[Ljava/lang/String;"
282"Ljava/lang/String;"
283")"
284"Landroid/graphics/Bitmap;",
285    reinterpret_cast<void*>(Java_org_chromium_TestJni_nativeQueryBitmap) },
286    { "nativeGotOrientation",
287"("
288"I"
289"D"
290"D"
291"D"
292")"
293"V", reinterpret_cast<void*>(Java_org_chromium_TestJni_nativeGotOrientation) },
294    { "nativeMessWithJavaException",
295"("
296"Ljava/lang/Throwable;"
297")"
298"Ljava/lang/Throwable;",
299    reinterpret_cast<void*>(Java_org_chromium_TestJni_nativeMessWithJavaException)
300    },
301};
302
303static bool RegisterNativesImpl(JNIEnv* env) {
304
305  g_TestJni_clazz = reinterpret_cast<jclass>(env->NewGlobalRef(
306      base::android::GetClass(env, kTestJniClassPath).obj()));
307
308  const int kMethodsTestJniSize = arraysize(kMethodsTestJni);
309
310  if (env->RegisterNatives(TestJni_clazz(env),
311                           kMethodsTestJni,
312                           kMethodsTestJniSize) < 0) {
313    jni_generator::HandleRegistrationError(
314        env, TestJni_clazz(env), __FILE__);
315    return false;
316  }
317
318  return true;
319}
320
321#endif  // org_chromium_TestJni_JNI
322