< prev index next >

test/hotspot/jtreg/vmTestbase/nsk/jvmti/AttachOnDemand/attach002/attach002Agent00.cpp

Print this page
rev 52828 : 8213501: Deploy ExceptionJniWrapper for a few tests
Summary:
Reviewed-by:

*** 25,34 **** --- 25,35 ---- #include <string.h> #include <jni.h> #include <jvmti.h> #include <aod.h> #include <jvmti_aod.h> + #include "ExceptionCheckingJniEnv.hpp" extern "C" { /* * Expected agent work scenario:
*** 65,91 **** return agentGotCapabilities; } #define ATTACH002_TARGET_APP_CLASS_NAME "nsk/jvmti/AttachOnDemand/attach002/attach002Target" ! int registerNativeMethods(JNIEnv* jni) { jclass appClass; JNINativeMethod nativeMethods[] = { { (char*) "agentGotCapabilities", (char*) "()Z", (void*) Java_nsk_jvmti_AttachOnDemand_attach002_attach002Target_agentGotCapabilities } }; jint nativeMethodsNumber = 1; ! appClass = jni->FindClass(ATTACH002_TARGET_APP_CLASS_NAME); ! if (!NSK_JNI_VERIFY(jni, appClass != NULL)) { ! return NSK_FALSE; ! } ! ! if (!NSK_JNI_VERIFY(jni, ! (jni->RegisterNatives(appClass, nativeMethods, nativeMethodsNumber) == 0))) { ! return NSK_FALSE; ! } ! ! return NSK_TRUE; } void JNICALL classLoadHandler( jvmtiEnv *jvmti, JNIEnv* jni, --- 66,84 ---- return agentGotCapabilities; } #define ATTACH002_TARGET_APP_CLASS_NAME "nsk/jvmti/AttachOnDemand/attach002/attach002Target" ! void registerNativeMethods(JNIEnv* jni_env) { ! ExceptionCheckingJniEnvPtr jni(jni_env); jclass appClass; JNINativeMethod nativeMethods[] = { { (char*) "agentGotCapabilities", (char*) "()Z", (void*) Java_nsk_jvmti_AttachOnDemand_attach002_attach002Target_agentGotCapabilities } }; jint nativeMethodsNumber = 1; ! appClass = jni->FindClass(ATTACH002_TARGET_APP_CLASS_NAME, TRACE_JNI_CALL); ! jni->RegisterNatives(appClass, nativeMethods, nativeMethodsNumber, TRACE_JNI_CALL); } void JNICALL classLoadHandler( jvmtiEnv *jvmti, JNIEnv* jni,
*** 199,211 **** jvmti = nsk_jvmti_createJVMTIEnv(vm, reserved); if (!NSK_VERIFY(jvmti != NULL)) return JNI_ERR; ! if (!NSK_VERIFY(registerNativeMethods(jni))) { ! return JNI_ERR; ! } memset(&caps, 0, sizeof(caps)); caps.can_generate_all_class_hook_events = 1; caps.can_redefine_classes = 1; if (!NSK_JVMTI_VERIFY(jvmti->AddCapabilities(&caps))) { --- 192,202 ---- jvmti = nsk_jvmti_createJVMTIEnv(vm, reserved); if (!NSK_VERIFY(jvmti != NULL)) return JNI_ERR; ! registerNativeMethods(jni); memset(&caps, 0, sizeof(caps)); caps.can_generate_all_class_hook_events = 1; caps.can_redefine_classes = 1; if (!NSK_JVMTI_VERIFY(jvmti->AddCapabilities(&caps))) {
< prev index next >