PeerNativeInterface::Info PeerNativeInterface::infoObject = {
.klass = nullptr,
.constructor = nullptr,
- .name = nullptr,
.host = nullptr,
.port = nullptr,
.uuid = nullptr,
env->SetObjectField(object, infoObject.uuid, static_cast<jobject>(uuid));
- if (info->name != nullptr) {
- jstring name = env->NewStringUTF(info->name);
- if (env->ExceptionCheck() == true) {
- JNIHelper::PrintException(env, __FUNCTION__, __LINE__);
- return nullptr;
- }
-
- if (name == nullptr) {
- ErrPrint("_name is not valid");
- return nullptr;
- }
-
- env->SetObjectField(object, infoObject.name, name);
- }
-
// TODO:
// Port array should be changed to a single value
// No more need to keep the multiple port information
.runtimes = nullptr,
};
- jobject name = env->GetObjectField(info, infoObject.name);
jobject host = env->GetObjectField(info, infoObject.host);
jobject uuid = env->GetObjectField(info, infoObject.uuid);
jint port = env->GetIntField(info, infoObject.port);
- if (name != nullptr) {
- peerInfo.name = const_cast<char *>(env->GetStringUTFChars(static_cast<jstring>(name), nullptr));
- }
-
if (host != nullptr) {
peerInfo.host = const_cast<char *>(env->GetStringUTFChars(static_cast<jstring>(host), nullptr));
}
int ret = peer_handle->peer->SetInfo(&peerInfo);
- if (peerInfo.name != nullptr) {
- env->ReleaseStringUTFChars(static_cast<jstring>(name), peerInfo.name);
- }
-
if (peerInfo.host != nullptr) {
env->ReleaseStringUTFChars(static_cast<jstring>(host), peerInfo.host);
}
return;
}
- infoObject.name = env->GetFieldID(infoObject.klass, "name", "Ljava/lang/String;");
- if (env->ExceptionCheck() == true) {
- JNIHelper::PrintException(env, __FUNCTION__, __LINE__);
- env->DeleteGlobalRef(infoObject.klass);
- infoObject.klass = nullptr;
- return;
- }
- if (infoObject.name == nullptr) {
- ErrPrint("Unable to get the name field from info");
- env->DeleteGlobalRef(infoObject.klass);
- infoObject.klass = nullptr;
- return;
- }
-
infoObject.host = env->GetFieldID(infoObject.klass, "host", "Ljava/lang/String;");
if (env->ExceptionCheck() == true) {
JNIHelper::PrintException(env, __FUNCTION__, __LINE__);