}\r
}\r
\r
+static jlong getNativeProvider(JNIEnv *env, jobject jObj)\r
+{\r
+\r
+ jclass providerClass = env->GetObjectClass(jObj);\r
+ if (!providerClass)\r
+ {\r
+ ThrowNSException(JNI_INVALID_VALUE, "Failed to Get ObjectClass for Provider");\r
+ return 0;\r
+ }\r
+ jfieldID nativeHandle = env->GetFieldID(providerClass, "mNativeHandle", "J");\r
+ if (!nativeHandle)\r
+ {\r
+ ThrowNSException(JNI_INVALID_VALUE, "Failed to get nativeHandle for Provider");\r
+ return 0;\r
+ }\r
+ return (env->GetLongField(jObj, nativeHandle));\r
+}\r
+\r
jobject getJavaProviderState(JNIEnv *env, OIC::Service::NSProviderState state)\r
{\r
NS_LOGD ("ConsumerService_getJavaProviderState - IN");\r
}\r
else\r
{\r
- NS_LOGI (TAG, "Info: topicName is null");\r
+ NS_LOGI ("topicName is null");\r
}\r
NS_LOGD ("ConsumerService_getNativeTopicName - OUT");\r
return topicName;\r
if (!cls_provider)\r
{\r
NS_LOGE ("Failed to Get ObjectClass for Provider");\r
+ delete objectHolder;\r
return NULL;\r
}\r
jmethodID mid_provider = env->GetMethodID(\r
if (!mid_provider)\r
{\r
NS_LOGE ("Failed to Get MethodID for Provider<init>");\r
+ delete objectHolder;\r
return NULL;\r
}\r
jobject obj_provider = env->NewObject(cls_provider, mid_provider, jProviderId);\r
if (!obj_provider)\r
{\r
NS_LOGE ("Failed to create new Object for Provider");\r
+ delete objectHolder;\r
return NULL;\r
}\r
\r
if (!nativeHandle)\r
{\r
NS_LOGE ("Failed to get nativeHandle for Provider");\r
+ delete objectHolder;\r
return NULL;\r
}\r
env->SetLongField(obj_provider, nativeHandle, pProvider);\r
{\r
NS_LOGD ("Provider_Subscribe -IN");\r
OIC::Service::NSResult result = OIC::Service::NSResult::ERROR;\r
- jclass providerClass = env->GetObjectClass(jObj);\r
- if (!providerClass)\r
- {\r
- ThrowNSException(JNI_INVALID_VALUE, "Failed to Get ObjectClass for Provider");\r
- return ;\r
- }\r
\r
- jfieldID nativeHandle = env->GetFieldID(providerClass, "mNativeHandle", "J");\r
- if (!nativeHandle)\r
- {\r
- ThrowNSException(JNI_INVALID_VALUE, "Failed to get nativeHandle for Provider");\r
- return ;\r
- }\r
- jlong jProvider = env->GetLongField(jObj, nativeHandle);\r
+ jlong jProvider = getNativeProvider(env, jObj);\r
if (jProvider)\r
{\r
NS_LOGD ("calling subscribe on mNativeHandle");\r
{\r
NS_LOGD ("Provider_UnSubscribe -IN");\r
OIC::Service::NSResult result = OIC::Service::NSResult::ERROR;\r
- jclass providerClass = env->GetObjectClass(jObj);\r
- if (!providerClass)\r
- {\r
- ThrowNSException(JNI_INVALID_VALUE, "Failed to Get ObjectClass for Provider");\r
- return ;\r
- }\r
-\r
- jfieldID nativeHandle = env->GetFieldID(providerClass, "mNativeHandle", "J");\r
- if (!nativeHandle)\r
- {\r
- ThrowNSException(JNI_INVALID_VALUE, "Failed to get nativeHandle for Provider");\r
- return ;\r
- }\r
- jlong jProvider = env->GetLongField(jObj, nativeHandle);\r
+ jlong jProvider = getNativeProvider(env, jObj);\r
if (jProvider)\r
{\r
NS_LOGD ("calling subscribe on mNativeHandle");\r
return ;\r
}\r
\r
- jclass providerClass = env->GetObjectClass(jObj);\r
- if (!providerClass)\r
- {\r
- ThrowNSException(JNI_INVALID_VALUE, "Failed to Get ObjectClass for Provider");\r
- return ;\r
- }\r
-\r
- jfieldID nativeHandle = env->GetFieldID(providerClass, "mNativeHandle", "J");\r
- if (!nativeHandle)\r
- {\r
- ThrowNSException(JNI_INVALID_VALUE, "Failed to get nativeHandle for Provider");\r
- return ;\r
- }\r
uint64_t messageId = (uint64_t) jMessageId;\r
\r
NS_LOGD ("!!!!!!jMessageId: %lld", jMessageId);\r
NS_LOGD ("!!!!!!messageId: %lld", messageId);\r
\r
- jlong jProvider = env->GetLongField(jObj, nativeHandle);\r
+ jlong jProvider = getNativeProvider(env, jObj);\r
if (jProvider)\r
{\r
NS_LOGD ("calling SendSyncInfo on mNativeHandle");\r
return ;\r
}\r
\r
- jclass providerClass = env->GetObjectClass(jObj);\r
- if (!providerClass)\r
- {\r
- ThrowNSException(JNI_INVALID_VALUE, "Failed to Get ObjectClass for Provider");\r
- return ;\r
- }\r
-\r
- jfieldID nativeHandle = env->GetFieldID(providerClass, "mNativeHandle", "J");\r
- if (!nativeHandle)\r
- {\r
- ThrowNSException(JNI_INVALID_VALUE, "Failed to get nativeHandle for Provider");\r
- return ;\r
- }\r
- jlong jProvider = env->GetLongField(jObj, nativeHandle);\r
+ jlong jProvider = getNativeProvider(env, jObj);\r
if (jProvider)\r
{\r
NS_LOGD ("calling SetListener on mNativeHandle");\r
(JNIEnv *env, jobject jObj)\r
{\r
NS_LOGD ("Provider_nativeGetTopicList - IN");\r
- jclass providerClass = env->GetObjectClass(jObj);\r
- if (!providerClass)\r
- {\r
- ThrowNSException(JNI_INVALID_VALUE, "Failed to Get ObjectClass for Provider");\r
- return NULL;\r
- }\r
-\r
- jfieldID nativeHandle = env->GetFieldID(providerClass, "mNativeHandle", "J");\r
- if (!nativeHandle)\r
- {\r
- ThrowNSException(JNI_INVALID_VALUE, "Failed to get nativeHandle for Provider");\r
- return NULL;\r
- }\r
- jlong jProvider = env->GetLongField(jObj, nativeHandle);\r
+ jlong jProvider = getNativeProvider(env, jObj);\r
std::shared_ptr<OIC::Service::NSTopicsList> topicList = nullptr;\r
if (jProvider)\r
{\r
return;\r
}\r
\r
- jclass providerClass = env->GetObjectClass(jObj);\r
- if (!providerClass)\r
- {\r
- ThrowNSException(JNI_INVALID_VALUE, "Failed to Get ObjectClass for Provider");\r
- return;\r
- }\r
-\r
- jfieldID nativeHandle = env->GetFieldID(providerClass, "mNativeHandle", "J");\r
- if (!nativeHandle)\r
- {\r
- ThrowNSException(JNI_INVALID_VALUE, "Failed to get nativeHandle for Provider");\r
- return;\r
- }\r
- jlong jProvider = env->GetLongField(jObj, nativeHandle);\r
+ jlong jProvider = getNativeProvider(env, jObj);\r
OIC::Service::NSResult result = OIC::Service::NSResult::ERROR;\r
if (jProvider)\r
{\r
(JNIEnv *env, jobject jObj)\r
{\r
NS_LOGD ("Provider_nativeGetProviderState - IN");\r
- jclass providerClass = env->GetObjectClass(jObj);\r
- if (!providerClass)\r
- {\r
- ThrowNSException(JNI_INVALID_VALUE, "Failed to Get ObjectClass for Provider");\r
- return NULL;\r
- }\r
-\r
- jfieldID nativeHandle = env->GetFieldID(providerClass, "mNativeHandle", "J");\r
- if (!nativeHandle)\r
- {\r
- ThrowNSException(JNI_INVALID_VALUE, "Failed to get nativeHandle for Provider");\r
- return NULL;\r
- }\r
- jlong jProvider = env->GetLongField(jObj, nativeHandle);\r
+ jlong jProvider = getNativeProvider(env, jObj);\r
OIC::Service::NSProviderState state = OIC::Service::NSProviderState::DENY;\r
if (jProvider)\r
{\r
(JNIEnv *env, jobject jObj)\r
{\r
NS_LOGD ("nativeIsSubscribed - IN");\r
- jclass providerClass = env->GetObjectClass(jObj);\r
- if (!providerClass)\r
- {\r
- ThrowNSException(JNI_INVALID_VALUE, "Failed to Get ObjectClass for Provider");\r
- return (jboolean)false;\r
- }\r
+ jboolean subscribedState = false;\r
\r
- jfieldID nativeHandle = env->GetFieldID(providerClass, "mNativeHandle", "J");\r
- if (!nativeHandle)\r
- {\r
- ThrowNSException(JNI_INVALID_VALUE, "Failed to get nativeHandle for Provider");\r
- return (jboolean)false;\r
- }\r
- jlong jProvider = env->GetLongField(jObj, nativeHandle);\r
+ jlong jProvider = getNativeProvider(env, jObj);\r
if (jProvider)\r
{\r
NS_LOGD ("calling isSubscribe on mNativeHandle");\r
reinterpret_cast<JniSharedObjectHolder<OIC::Service::NSProvider> *>(jProvider);\r
try\r
{\r
- return (jboolean) objectHolder->get()->isSubscribed();\r
+ subscribedState = (jboolean)objectHolder->get()->isSubscribed();\r
}\r
catch (OIC::Service::NSException ex)\r
{\r
ThrowNSException(NATIVE_EXCEPTION, ex.what());\r
return (jboolean)false;\r
}\r
+ return subscribedState;\r
}\r
else\r
{\r