blob: 6a50619180529d001dca86eae548fe800e027fab [file] [log] [blame]
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// base/android/jni_generator/jni_generator.py
// For
// org/chromium/example/jni_generator/SampleForTests
#ifndef org_chromium_example_jni_generator_SampleForTests_JNI
#define org_chromium_example_jni_generator_SampleForTests_JNI
#include <jni.h>
#include "base/android/jni_generator/jni_generator_helper.h"
#include "base/android/jni_int_wrapper.h"
// Step 1: forward declarations.
namespace {
const char kSampleForTestsClassPath[] =
"org/chromium/example/jni_generator/SampleForTests";
// Leaking this jclass as we cannot use LazyInstance from some threads.
base::subtle::AtomicWord g_SampleForTests_clazz __attribute__((unused)) = 0;
#define SampleForTests_clazz(env) base::android::LazyGetClass(env, kSampleForTestsClassPath, &g_SampleForTests_clazz)
} // namespace
// Step 2: method stubs.
JNI_GENERATOR_EXPORT jint
Java_org_chromium_example_jni_1generator_SampleForTests_nativeStaticMethod(JNIEnv*
env, jobject jcaller,
jlong nativeTest,
jint arg1) {
Test* native = reinterpret_cast<Test*>(nativeTest);
CHECK_NATIVE_PTR(env, jcaller, native, "StaticMethod", 0);
return native->StaticMethod(env, base::android::JavaParamRef<jobject>(env,
jcaller), arg1);
}
JNI_GENERATOR_EXPORT jint
Java_org_chromium_example_jni_1generator_SampleForTests_nativeMethod(JNIEnv*
env, jobject jcaller,
jlong nativeTest,
jint arg1) {
Test* native = reinterpret_cast<Test*>(nativeTest);
CHECK_NATIVE_PTR(env, jcaller, native, "Method", 0);
return native->Method(env, base::android::JavaParamRef<jobject>(env, jcaller),
arg1);
}
static jint Init(JNIEnv* env, const base::android::JavaParamRef<jobject>&
jcaller);
JNI_GENERATOR_EXPORT jint
Java_org_chromium_example_jni_1generator_SampleForTests_00024MyInnerClass_nativeInit(JNIEnv*
env, jobject jcaller) {
return Init(env, base::android::JavaParamRef<jobject>(env, jcaller));
}
static jint Init(JNIEnv* env, const base::android::JavaParamRef<jobject>&
jcaller);
JNI_GENERATOR_EXPORT jint
Java_org_chromium_example_jni_1generator_SampleForTests_00024MyOtherInnerClass_nativeInit(JNIEnv*
env, jobject jcaller) {
return Init(env, base::android::JavaParamRef<jobject>(env, jcaller));
}
static base::subtle::AtomicWord g_SampleForTests_testMethodWithParam = 0;
static void Java_SampleForTests_testMethodWithParam(JNIEnv* env, const
base::android::JavaRefOrBare<jobject>& obj, JniIntWrapper iParam) {
CHECK_CLAZZ(env, obj.obj(),
SampleForTests_clazz(env));
jmethodID method_id =
base::android::MethodID::LazyGet<
base::android::MethodID::TYPE_INSTANCE>(
env, SampleForTests_clazz(env),
"testMethodWithParam",
"("
"I"
")"
"V",
&g_SampleForTests_testMethodWithParam);
env->CallVoidMethod(obj.obj(),
method_id, as_jint(iParam));
jni_generator::CheckException(env);
}
static base::subtle::AtomicWord g_SampleForTests_testMethodWithParamAndReturn =
0;
static base::android::ScopedJavaLocalRef<jstring>
Java_SampleForTests_testMethodWithParamAndReturn(JNIEnv* env, const
base::android::JavaRefOrBare<jobject>& obj, JniIntWrapper iParam) {
CHECK_CLAZZ(env, obj.obj(),
SampleForTests_clazz(env), NULL);
jmethodID method_id =
base::android::MethodID::LazyGet<
base::android::MethodID::TYPE_INSTANCE>(
env, SampleForTests_clazz(env),
"testMethodWithParamAndReturn",
"("
"I"
")"
"Ljava/lang/String;",
&g_SampleForTests_testMethodWithParamAndReturn);
jstring ret =
static_cast<jstring>(env->CallObjectMethod(obj.obj(),
method_id, as_jint(iParam)));
jni_generator::CheckException(env);
return base::android::ScopedJavaLocalRef<jstring>(env, ret);
}
static base::subtle::AtomicWord g_SampleForTests_testStaticMethodWithParam = 0;
static jint Java_SampleForTests_testStaticMethodWithParam(JNIEnv* env,
JniIntWrapper iParam) {
CHECK_CLAZZ(env, SampleForTests_clazz(env),
SampleForTests_clazz(env), 0);
jmethodID method_id =
base::android::MethodID::LazyGet<
base::android::MethodID::TYPE_STATIC>(
env, SampleForTests_clazz(env),
"testStaticMethodWithParam",
"("
"I"
")"
"I",
&g_SampleForTests_testStaticMethodWithParam);
jint ret =
env->CallStaticIntMethod(SampleForTests_clazz(env),
method_id, as_jint(iParam));
jni_generator::CheckException(env);
return ret;
}
static base::subtle::AtomicWord g_SampleForTests_testMethodWithNoParam = 0;
static jdouble Java_SampleForTests_testMethodWithNoParam(JNIEnv* env) {
CHECK_CLAZZ(env, SampleForTests_clazz(env),
SampleForTests_clazz(env), 0);
jmethodID method_id =
base::android::MethodID::LazyGet<
base::android::MethodID::TYPE_STATIC>(
env, SampleForTests_clazz(env),
"testMethodWithNoParam",
"("
")"
"D",
&g_SampleForTests_testMethodWithNoParam);
jdouble ret =
env->CallStaticDoubleMethod(SampleForTests_clazz(env),
method_id);
jni_generator::CheckException(env);
return ret;
}
static base::subtle::AtomicWord g_SampleForTests_testStaticMethodWithNoParam =
0;
static base::android::ScopedJavaLocalRef<jstring>
Java_SampleForTests_testStaticMethodWithNoParam(JNIEnv* env) {
CHECK_CLAZZ(env, SampleForTests_clazz(env),
SampleForTests_clazz(env), NULL);
jmethodID method_id =
base::android::MethodID::LazyGet<
base::android::MethodID::TYPE_STATIC>(
env, SampleForTests_clazz(env),
"testStaticMethodWithNoParam",
"("
")"
"Ljava/lang/String;",
&g_SampleForTests_testStaticMethodWithNoParam);
jstring ret =
static_cast<jstring>(env->CallStaticObjectMethod(SampleForTests_clazz(env),
method_id));
jni_generator::CheckException(env);
return base::android::ScopedJavaLocalRef<jstring>(env, ret);
}
// Step 3: RegisterNatives.
#endif // org_chromium_example_jni_generator_SampleForTests_JNI