Google is committed to advancing racial equity for Black communities. See how.

nl::Weave::JNIUtils

Summary

Public static attributes

sJVM
JavaVM *
sJavaObjectClass
jclass

Public static functions

GetGlobalClassRef(JNIEnv *env, const char *clsType, jclass & outCls)
Init(JavaVM *jvm, JNIEnv *env, const char *weaveErrorClassName)
J2N_ByteArray(JNIEnv *env, jbyteArray inArray, uint8_t *& outArray, uint32_t & outArrayLen)
J2N_ByteArrayFieldVal(JNIEnv *env, jobject obj, const char *fieldName, uint8_t *& outArray, uint32_t & outArrayLen)
J2N_ByteArrayInPlace(JNIEnv *env, jbyteArray inArray, uint8_t *outArray, uint32_t maxArrayLen)
J2N_EnumFieldVal(JNIEnv *env, jobject obj, const char *fieldName, const char *fieldType, int & outVal)
J2N_EnumVal(JNIEnv *env, jobject enumObj, int & outVal)
J2N_IntFieldVal(JNIEnv *env, jobject obj, const char *fieldName, jint & outVal)
J2N_LongFieldVal(JNIEnv *env, jobject obj, const char *fieldName, jlong & outVal)
J2N_ShortFieldVal(JNIEnv *env, jobject obj, const char *fieldName, jshort & outVal)
J2N_StringFieldVal(JNIEnv *env, jobject obj, const char *fieldName, char *& outVal)
N2J_ByteArray(JNIEnv *env, const uint8_t *inArray, uint32_t inArrayLen, jbyteArray & outArray)
N2J_Error(JNIEnv *env, WEAVE_ERROR inErr, jthrowable & outEx)
RegisterLibraryMethods(JNIEnv *env, const char *basePackageName, const JNILibraryMethod *libMethods, size_t numLibMethods)
Shutdown(JNIEnv *env)
void
ThrowError(JNIEnv *env, WEAVE_ERROR errToThrow)
void

Public static attributes

sJVM

JavaVM * sJVM

sJavaObjectClass

jclass sJavaObjectClass

Public static functions

GetGlobalClassRef

WEAVE_ERROR GetGlobalClassRef(
  JNIEnv *env,
  const char *clsType,
  jclass & outCls
)

Init

WEAVE_ERROR Init(
  JavaVM *jvm,
  JNIEnv *env,
  const char *weaveErrorClassName
)

J2N_ByteArray

WEAVE_ERROR J2N_ByteArray(
  JNIEnv *env,
  jbyteArray inArray,
  uint8_t *& outArray,
  uint32_t & outArrayLen
)

J2N_ByteArrayFieldVal

WEAVE_ERROR J2N_ByteArrayFieldVal(
  JNIEnv *env,
  jobject obj,
  const char *fieldName,
  uint8_t *& outArray,
  uint32_t & outArrayLen
)

J2N_ByteArrayInPlace

WEAVE_ERROR J2N_ByteArrayInPlace(
  JNIEnv *env,
  jbyteArray inArray,
  uint8_t *outArray,
  uint32_t maxArrayLen
)

J2N_EnumFieldVal

WEAVE_ERROR J2N_EnumFieldVal(
  JNIEnv *env,
  jobject obj,
  const char *fieldName,
  const char *fieldType,
  int & outVal
)

J2N_EnumVal

WEAVE_ERROR J2N_EnumVal(
  JNIEnv *env,
  jobject enumObj,
  int & outVal
)

J2N_IntFieldVal

WEAVE_ERROR J2N_IntFieldVal(
  JNIEnv *env,
  jobject obj,
  const char *fieldName,
  jint & outVal
)

J2N_LongFieldVal

WEAVE_ERROR J2N_LongFieldVal(
  JNIEnv *env,
  jobject obj,
  const char *fieldName,
  jlong & outVal
)

J2N_ShortFieldVal

WEAVE_ERROR J2N_ShortFieldVal(
  JNIEnv *env,
  jobject obj,
  const char *fieldName,
  jshort & outVal
)

J2N_StringFieldVal

WEAVE_ERROR J2N_StringFieldVal(
  JNIEnv *env,
  jobject obj,
  const char *fieldName,
  char *& outVal
)

N2J_ByteArray

WEAVE_ERROR N2J_ByteArray(
  JNIEnv *env,
  const uint8_t *inArray,
  uint32_t inArrayLen,
  jbyteArray & outArray
)

N2J_Error

WEAVE_ERROR N2J_Error(
  JNIEnv *env,
  WEAVE_ERROR inErr,
  jthrowable & outEx
)

RegisterLibraryMethods

WEAVE_ERROR RegisterLibraryMethods(
  JNIEnv *env,
  const char *basePackageName,
  const JNILibraryMethod *libMethods,
  size_t numLibMethods
)

Shutdown

void Shutdown(
  JNIEnv *env
)

ThrowError

void ThrowError(
  JNIEnv *env,
  WEAVE_ERROR errToThrow
)