< prev index next >
test/hotspot/jtreg/vmTestbase/nsk/jvmti/AttachOnDemand/attach002/attach002Agent00.cpp
Print this page
rev 52432 : 8213501: Deploy ExceptionJniWrapper for a few tests
Summary:
Reviewed-by:
@@ -25,10 +25,11 @@
#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,27 +66,19 @@
return agentGotCapabilities;
}
#define ATTACH002_TARGET_APP_CLASS_NAME "nsk/jvmti/AttachOnDemand/attach002/attach002Target"
-int registerNativeMethods(JNIEnv* jni) {
+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);
- 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;
+ 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,13 +192,11 @@
jvmti = nsk_jvmti_createJVMTIEnv(vm, reserved);
if (!NSK_VERIFY(jvmti != NULL))
return JNI_ERR;
- if (!NSK_VERIFY(registerNativeMethods(jni))) {
- 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 >