mirror of
https://github.com/zerotier/ZeroTierOne.git
synced 2024-12-22 22:32:22 +00:00
61 lines
1.7 KiB
C++
61 lines
1.7 KiB
C++
//
|
|
// Created by Grant Limberg on 10/21/20.
|
|
//
|
|
|
|
#ifndef ZEROTIERANDROID_ZT_JNIARRAY_H
|
|
#define ZEROTIERANDROID_ZT_JNIARRAY_H
|
|
|
|
#include <jni.h>
|
|
#include <vector>
|
|
#include <string>
|
|
|
|
extern jclass java_util_ArrayList;
|
|
extern jmethodID java_util_ArrayList_;
|
|
extern jmethodID java_util_ArrayList_size;
|
|
extern jmethodID java_util_ArrayList_get;
|
|
extern jmethodID java_util_ArrayList_add;
|
|
|
|
void InitListJNI(JNIEnv* env);
|
|
|
|
class ListJNI {
|
|
public:
|
|
// Get the java class id of java.util.List.
|
|
static jclass getListClass(JNIEnv* env);
|
|
|
|
// Get the java class id of java.util.ArrayList.
|
|
static jclass getArrayListClass(JNIEnv* env);
|
|
|
|
// Get the java class id of java.util.Iterator.
|
|
static jclass getIteratorClass(JNIEnv* env);
|
|
|
|
// Get the java method id of java.util.List.iterator().
|
|
static jmethodID getIteratorMethod(JNIEnv* env);
|
|
|
|
// Get the java method id of java.util.Iterator.hasNext().
|
|
static jmethodID getHasNextMethod(JNIEnv* env);
|
|
|
|
// Get the java method id of java.util.Iterator.next().
|
|
static jmethodID getNextMethod(JNIEnv* env);
|
|
|
|
// Get the java method id of arrayList constructor.
|
|
static jmethodID getArrayListConstructorMethodId(JNIEnv* env, jclass jclazz);
|
|
|
|
// Get the java method id of java.util.List.add().
|
|
static jmethodID getListAddMethodId(JNIEnv* env);
|
|
};
|
|
|
|
class ByteJNI {
|
|
public:
|
|
// Get the java class id of java.lang.Byte.
|
|
static jclass getByteClass(JNIEnv* env);
|
|
|
|
// Get the java method id of java.lang.Byte.byteValue.
|
|
static jmethodID getByteValueMethod(JNIEnv* env);
|
|
};
|
|
|
|
jobject cppToJava(JNIEnv* env, std::vector<std::string> vector);
|
|
|
|
std::vector<std::string> javaToCpp(JNIEnv* env, jobject arrayList);
|
|
|
|
#endif //ZEROTIERANDROID_ZT_JNIARRAY_H
|