- jint index;
- jint length = u_arraylist_length(g_deviceStateList);
- for (index = 0; index < length; index++)
- {
- jobject jarrayObj = (jobject) u_arraylist_get(g_deviceObjectList, index);
- if (!jarrayObj)
- {
- OIC_LOG(DEBUG, TAG, "[EDR][Native] jarrayObj is null");
- continue;
- }
-
- jstring jni_setAddress = CAEDRNativeGetAddressFromDeviceSocket(env, jarrayObj);
- if (!jni_setAddress)
- {
- OIC_LOG(DEBUG, TAG, "[EDR][Native] jni_setAddress is null");
- continue;
- }
-
- jstring jni_remoteAddress = CAEDRNativeGetAddressFromDeviceSocket(env, deviceSocket);
- if (!jni_remoteAddress)
- {
- OIC_LOG(DEBUG, TAG, "[EDR][Native] jni_remoteAddress is null");
- continue;
- }
-
- const char* setAddress = (*env)->GetStringUTFChars(env, jni_setAddress, NULL);
- const char* remoteAddress = (*env)->GetStringUTFChars(env, jni_remoteAddress, NULL);
-
- if (!strcmp(setAddress, remoteAddress))
- {
- OIC_LOG_V(DEBUG, TAG, "[EDR][Native] remove object : %s", remoteAddress);
- (*env)->DeleteGlobalRef(env, jarrayObj);
- (*env)->ReleaseStringUTFChars(env, jni_setAddress, setAddress);
- (*env)->ReleaseStringUTFChars(env, jni_remoteAddress, remoteAddress);
-
- CAEDRReorderingDeviceSocketList(index);
- break;
- }
- (*env)->ReleaseStringUTFChars(env, jni_setAddress, setAddress);
- (*env)->ReleaseStringUTFChars(env, jni_remoteAddress, remoteAddress);
- }