107 return enabled;
108 }
109
110 jboolean enableClassUnloadEvent (jboolean enable) {
111 jint extCount, i;
112 jvmtiExtensionEventInfo* extList;
113 jboolean found = JNI_FALSE;
114
115 NSK_DISPLAY0("Get extension events list\n");
116 if (!NSK_JVMTI_VERIFY(jvmti->GetExtensionEvents(&extCount, &extList))) {
117 nsk_jvmti_setFailStatus();
118 return JNI_FALSE;
119 }
120
121 for (i = 0; i < extCount; i++) {
122 if (strcmp(extList[i].id, (char*)"com.sun.hotspot.events.ClassUnload") == 0) {
123 found = JNI_TRUE;
124
125 if (!NSK_JVMTI_VERIFY(
126 jvmti->SetExtensionEventCallback(extList[i].extension_event_index,
127 enable ? (jvmtiExtensionEvent)ClassUnload : NULL ))) {
128 nsk_jvmti_setFailStatus();
129 return JNI_FALSE;
130 }
131 eventEnabled = enable;
132 if (enable == JNI_TRUE) {
133 NSK_DISPLAY1("%s callback enabled\n", extList[i].id);
134 } else {
135 NSK_DISPLAY1("%s callback disabled\n", extList[i].id);
136 }
137 }
138 }
139 if (found == JNI_FALSE) {
140 NSK_COMPLAIN0("ClassUnload event was not found among extension events.\n");
141 nsk_jvmti_setFailStatus();
142 return JNI_FALSE;
143 }
144 return JNI_TRUE;
145 }
146
147
|
107 return enabled;
108 }
109
110 jboolean enableClassUnloadEvent (jboolean enable) {
111 jint extCount, i;
112 jvmtiExtensionEventInfo* extList;
113 jboolean found = JNI_FALSE;
114
115 NSK_DISPLAY0("Get extension events list\n");
116 if (!NSK_JVMTI_VERIFY(jvmti->GetExtensionEvents(&extCount, &extList))) {
117 nsk_jvmti_setFailStatus();
118 return JNI_FALSE;
119 }
120
121 for (i = 0; i < extCount; i++) {
122 if (strcmp(extList[i].id, (char*)"com.sun.hotspot.events.ClassUnload") == 0) {
123 found = JNI_TRUE;
124
125 if (!NSK_JVMTI_VERIFY(
126 jvmti->SetExtensionEventCallback(extList[i].extension_event_index,
127 enable ? (jvmtiExtensionEvent)ClassUnload : NULL))) {
128 nsk_jvmti_setFailStatus();
129 return JNI_FALSE;
130 }
131 eventEnabled = enable;
132 if (enable == JNI_TRUE) {
133 NSK_DISPLAY1("%s callback enabled\n", extList[i].id);
134 } else {
135 NSK_DISPLAY1("%s callback disabled\n", extList[i].id);
136 }
137 }
138 }
139 if (found == JNI_FALSE) {
140 NSK_COMPLAIN0("ClassUnload event was not found among extension events.\n");
141 nsk_jvmti_setFailStatus();
142 return JNI_FALSE;
143 }
144 return JNI_TRUE;
145 }
146
147
|