< prev index next >

test/hotspot/jtreg/vmTestbase/nsk/jvmti/AttachOnDemand/attach022/attach022Agent00.cpp

Print this page
rev 52233 : 8212884: Remove the assignments in ifs for vmTestbase/[a-s]
Summary:
Reviewed-by:


  87     if (NSK_JVMTI_VERIFY(jvmti->RawMonitorEnter(objectFreeMonitor))) {
  88         freedObjectsCounter++;
  89 
  90         if (!NSK_JVMTI_VERIFY(jvmti->RawMonitorExit(objectFreeMonitor))) {
  91             success = 0;
  92         }
  93     } else {
  94         success = 0;
  95     }
  96 }
  97 
  98 #define ATTACH022_TARGET_APP_CLASS_NAME "nsk/jvmti/AttachOnDemand/attach022/attach022Target"
  99 
 100 int registerNativeMethods(JNIEnv* jni) {
 101     jclass appClass;
 102     JNINativeMethod nativeMethods[] = {
 103             {(char*)"shutdownAgent", (char*)"(I)Z",
 104             (void*) Java_nsk_jvmti_AttachOnDemand_attach022_attach022Target_shutdownAgent}};
 105     jint nativeMethodsNumber = 1;
 106 
 107     if (!NSK_JNI_VERIFY(jni, (appClass =
 108         jni->FindClass(ATTACH022_TARGET_APP_CLASS_NAME)) != NULL)) {
 109         return NSK_FALSE;
 110     }
 111 
 112     if (!NSK_JNI_VERIFY(jni,
 113             (jni->RegisterNatives(appClass, nativeMethods, nativeMethodsNumber) == 0))) {
 114         return NSK_FALSE;
 115     }
 116 
 117     return NSK_TRUE;
 118 }
 119 
 120 void JNICALL vmObjectAllocHandler(jvmtiEnv * jvmti,
 121         JNIEnv * jni,
 122         jthread thread,
 123         jobject object,
 124         jclass object_class,
 125         jlong size) {
 126     char className[MAX_STRING_LENGTH];
 127 
 128     if (!nsk_jvmti_aod_getClassName(jvmti, object_class, className)) {


 159     }
 160 }
 161 
 162 #ifdef STATIC_BUILD
 163 JNIEXPORT jint JNI_OnLoad_attach022Agent00(JavaVM *jvm, char *options, void *reserved) {
 164     return JNI_VERSION_1_8;
 165 }
 166 #endif
 167 
 168 JNIEXPORT jint JNICALL
 169 #ifdef STATIC_BUILD
 170 Agent_OnAttach_attach022Agent00(JavaVM *vm, char *optionsString, void *reserved)
 171 #else
 172 Agent_OnAttach(JavaVM *vm, char *optionsString, void *reserved)
 173 #endif
 174 {
 175     jvmtiEventCallbacks eventCallbacks;
 176     jvmtiCapabilities caps;
 177     JNIEnv* jni;
 178 
 179     if (!NSK_VERIFY((options = (Options*) nsk_aod_createOptions(optionsString)) != NULL))

 180         return JNI_ERR;
 181 
 182     agentName = nsk_aod_getOptionValue(options, NSK_AOD_AGENT_NAME_OPTION);
 183 
 184     if ((jni = (JNIEnv*) nsk_aod_createJNIEnv(vm)) == NULL)

 185         return JNI_ERR;
 186 
 187     if (!NSK_VERIFY((jvmti = nsk_jvmti_createJVMTIEnv(vm, reserved)) != NULL))

 188         return JNI_ERR;
 189 
 190     if (!NSK_VERIFY(registerNativeMethods(jni))) {
 191         return JNI_ERR;
 192     }
 193 
 194     if (!NSK_JVMTI_VERIFY(jvmti->CreateRawMonitor("ObjectTagMonitor", &objectTagMonitor))) {
 195         return JNI_ERR;
 196     }
 197 
 198     if (!NSK_JVMTI_VERIFY(jvmti->CreateRawMonitor("ObjectFreeMonitor", &objectFreeMonitor))) {
 199         return JNI_ERR;
 200     }
 201 
 202     memset(&caps, 0, sizeof(caps));
 203     caps.can_tag_objects = 1;
 204     caps.can_generate_object_free_events = 1;
 205     caps.can_generate_vm_object_alloc_events = 1;
 206     if (!NSK_JVMTI_VERIFY(jvmti->AddCapabilities(&caps))) {
 207         return JNI_ERR;




  87     if (NSK_JVMTI_VERIFY(jvmti->RawMonitorEnter(objectFreeMonitor))) {
  88         freedObjectsCounter++;
  89 
  90         if (!NSK_JVMTI_VERIFY(jvmti->RawMonitorExit(objectFreeMonitor))) {
  91             success = 0;
  92         }
  93     } else {
  94         success = 0;
  95     }
  96 }
  97 
  98 #define ATTACH022_TARGET_APP_CLASS_NAME "nsk/jvmti/AttachOnDemand/attach022/attach022Target"
  99 
 100 int registerNativeMethods(JNIEnv* jni) {
 101     jclass appClass;
 102     JNINativeMethod nativeMethods[] = {
 103             {(char*)"shutdownAgent", (char*)"(I)Z",
 104             (void*) Java_nsk_jvmti_AttachOnDemand_attach022_attach022Target_shutdownAgent}};
 105     jint nativeMethodsNumber = 1;
 106 
 107     appClass = jni->FindClass(ATTACH022_TARGET_APP_CLASS_NAME);
 108     if (!NSK_JNI_VERIFY(jni, appClass != NULL)) {
 109         return NSK_FALSE;
 110     }
 111 
 112     if (!NSK_JNI_VERIFY(jni,
 113             (jni->RegisterNatives(appClass, nativeMethods, nativeMethodsNumber) == 0))) {
 114         return NSK_FALSE;
 115     }
 116 
 117     return NSK_TRUE;
 118 }
 119 
 120 void JNICALL vmObjectAllocHandler(jvmtiEnv * jvmti,
 121         JNIEnv * jni,
 122         jthread thread,
 123         jobject object,
 124         jclass object_class,
 125         jlong size) {
 126     char className[MAX_STRING_LENGTH];
 127 
 128     if (!nsk_jvmti_aod_getClassName(jvmti, object_class, className)) {


 159     }
 160 }
 161 
 162 #ifdef STATIC_BUILD
 163 JNIEXPORT jint JNI_OnLoad_attach022Agent00(JavaVM *jvm, char *options, void *reserved) {
 164     return JNI_VERSION_1_8;
 165 }
 166 #endif
 167 
 168 JNIEXPORT jint JNICALL
 169 #ifdef STATIC_BUILD
 170 Agent_OnAttach_attach022Agent00(JavaVM *vm, char *optionsString, void *reserved)
 171 #else
 172 Agent_OnAttach(JavaVM *vm, char *optionsString, void *reserved)
 173 #endif
 174 {
 175     jvmtiEventCallbacks eventCallbacks;
 176     jvmtiCapabilities caps;
 177     JNIEnv* jni;
 178 
 179     options = (Options*) nsk_aod_createOptions(optionsString);
 180     if (!NSK_VERIFY(options != NULL))
 181         return JNI_ERR;
 182 
 183     agentName = nsk_aod_getOptionValue(options, NSK_AOD_AGENT_NAME_OPTION);
 184 
 185     jni = (JNIEnv*) nsk_aod_createJNIEnv(vm);
 186     if (jni == NULL)
 187         return JNI_ERR;
 188 
 189     jvmti = nsk_jvmti_createJVMTIEnv(vm, reserved);
 190     if (!NSK_VERIFY(jvmti != NULL))
 191         return JNI_ERR;
 192 
 193     if (!NSK_VERIFY(registerNativeMethods(jni))) {
 194         return JNI_ERR;
 195     }
 196 
 197     if (!NSK_JVMTI_VERIFY(jvmti->CreateRawMonitor("ObjectTagMonitor", &objectTagMonitor))) {
 198         return JNI_ERR;
 199     }
 200 
 201     if (!NSK_JVMTI_VERIFY(jvmti->CreateRawMonitor("ObjectFreeMonitor", &objectFreeMonitor))) {
 202         return JNI_ERR;
 203     }
 204 
 205     memset(&caps, 0, sizeof(caps));
 206     caps.can_tag_objects = 1;
 207     caps.can_generate_object_free_events = 1;
 208     caps.can_generate_vm_object_alloc_events = 1;
 209     if (!NSK_JVMTI_VERIFY(jvmti->AddCapabilities(&caps))) {
 210         return JNI_ERR;


< prev index next >