125 JNIEnv* jni;
126
127 if (!NSK_VERIFY((options = (Options*) nsk_aod_createOptions(optionsString)) != NULL))
128 return JNI_ERR;
129
130 agentName = nsk_aod_getOptionValue(options, NSK_AOD_AGENT_NAME_OPTION);
131
132 if ((jni = (JNIEnv*) nsk_aod_createJNIEnv(vm)) == NULL)
133 return JNI_ERR;
134
135 if (!NSK_VERIFY((jvmti = nsk_jvmti_createJVMTIEnv(vm, reserved)) != NULL))
136 return JNI_ERR;
137
138 if (!NSK_VERIFY(registerNativeMethods(jni))) {
139 return JNI_ERR;
140 }
141
142 memset(&caps, 0, sizeof(caps));
143 caps.can_tag_objects = 1;
144 caps.can_generate_object_free_events = 1;
145 if (!NSK_JVMTI_VERIFY(jvmti->AddCapabilities(&caps)) ) {
146 return JNI_ERR;
147 }
148
149 memset(&eventCallbacks,0, sizeof(eventCallbacks));
150 eventCallbacks.ObjectFree = objectFreeHandler;
151 if (!NSK_JVMTI_VERIFY(jvmti->SetEventCallbacks(&eventCallbacks, sizeof(eventCallbacks))) ) {
152 return JNI_ERR;
153 }
154
155 if (!(nsk_jvmti_aod_enableEvent(jvmti, JVMTI_EVENT_OBJECT_FREE))) {
156 return JNI_ERR;
157 }
158
159 NSK_DISPLAY1("%s: initialization was done\n", agentName);
160
161 if (!NSK_VERIFY(nsk_aod_agentLoaded(jni, agentName)))
162 return JNI_ERR;
163
164 return JNI_OK;
165 }
166
167 }
|
125 JNIEnv* jni;
126
127 if (!NSK_VERIFY((options = (Options*) nsk_aod_createOptions(optionsString)) != NULL))
128 return JNI_ERR;
129
130 agentName = nsk_aod_getOptionValue(options, NSK_AOD_AGENT_NAME_OPTION);
131
132 if ((jni = (JNIEnv*) nsk_aod_createJNIEnv(vm)) == NULL)
133 return JNI_ERR;
134
135 if (!NSK_VERIFY((jvmti = nsk_jvmti_createJVMTIEnv(vm, reserved)) != NULL))
136 return JNI_ERR;
137
138 if (!NSK_VERIFY(registerNativeMethods(jni))) {
139 return JNI_ERR;
140 }
141
142 memset(&caps, 0, sizeof(caps));
143 caps.can_tag_objects = 1;
144 caps.can_generate_object_free_events = 1;
145 if (!NSK_JVMTI_VERIFY(jvmti->AddCapabilities(&caps))) {
146 return JNI_ERR;
147 }
148
149 memset(&eventCallbacks,0, sizeof(eventCallbacks));
150 eventCallbacks.ObjectFree = objectFreeHandler;
151 if (!NSK_JVMTI_VERIFY(jvmti->SetEventCallbacks(&eventCallbacks, sizeof(eventCallbacks)))) {
152 return JNI_ERR;
153 }
154
155 if (!(nsk_jvmti_aod_enableEvent(jvmti, JVMTI_EVENT_OBJECT_FREE))) {
156 return JNI_ERR;
157 }
158
159 NSK_DISPLAY1("%s: initialization was done\n", agentName);
160
161 if (!NSK_VERIFY(nsk_aod_agentLoaded(jni, agentName)))
162 return JNI_ERR;
163
164 return JNI_OK;
165 }
166
167 }
|