Roll src/third_party/WebKit d9c6159:8139f33 (svn 201974:201975)
[chromium-blink-merge.git] / base / android / base_jni_onload.h
blobdcc7756684eba733881b84f6891fe41f16d25ad6
1 // Copyright 2015 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.
5 #ifndef BASE_ANDROID_BASE_JNI_ONLOAD_H_
6 #define BASE_ANDROID_BASE_JNI_ONLOAD_H_
8 #include <jni.h>
9 #include <vector>
11 #include "base/base_export.h"
12 #include "base/callback.h"
14 namespace base {
15 namespace android {
17 // Returns whether JNI registration succeeded. Caller shall put the
18 // RegisterCallback into |callbacks| in reverse order.
19 typedef base::Callback<bool(JNIEnv*)> RegisterCallback;
20 BASE_EXPORT bool OnJNIOnLoadRegisterJNI(
21 JavaVM* vm,
22 std::vector<RegisterCallback> callbacks);
24 // Returns whether initialization succeeded. Caller shall put the
25 // InitCallback into |callbacks| in reverse order.
26 typedef base::Callback<bool(void)> InitCallback;
27 BASE_EXPORT bool OnJNIOnLoadInit(std::vector<InitCallback> callbacks);
29 } // namespace android
30 } // namespace base
32 #endif // BASE_ANDROID_BASE_JNI_ONLOAD_H_