Merge tizen_5.0 codes into tizen_4.0
[platform/upstream/iotivity.git] / android / android_api / base / jni / JniOcResource.h
index e05da82..5ed1e39 100644 (file)
 
 using namespace OC;
 
+class JniOcResourceImpl;
 class JniOcResource
 {
 public:
-    JniOcResource(std::shared_ptr<OCResource> resource);
-    ~JniOcResource();
+    JniOcResource(std::shared_ptr<OCResource> &resource);
+    ~JniOcResource() = default;
 
     OCStackResult get(JNIEnv* env, const QueryParamsMap &queryParametersMap, jobject jListener);
     OCStackResult get(JNIEnv* env, const QueryParamsMap &queryParametersMap, jobject jListener,
@@ -94,29 +95,11 @@ public:
     std::string sid() const;
     std::string deviceName() const;
 
-    JniOnGetListener* addOnGetListener(JNIEnv* env, jobject jListener);
-    JniOnPutListener* addOnPutListener(JNIEnv* env, jobject jListener);
-    JniOnPostListener* addOnPostListener(JNIEnv* env, jobject jListener);
-    JniOnDeleteListener* addOnDeleteListener(JNIEnv* env, jobject jListener);
-    JniOnObserveListener* addOnObserveListener(JNIEnv* env, jobject jListener);
-
-    void removeOnGetListener(JNIEnv* env, jobject jListener);
-    void removeOnPutListener(JNIEnv* env, jobject jListener);
-    void removeOnPostListener(JNIEnv* env, jobject jListener);
-    void removeOnDeleteListener(JNIEnv* env, jobject jListener);
-    void removeOnObserveListener(JNIEnv* env, jobject jListener);
-
     std::shared_ptr<OCResource> getOCResource();
 
     static JniOcResource* getJniOcResourcePtr(JNIEnv *env, jobject thiz);
 
 #ifdef WITH_MQ
-    JniOnMQTopicFoundListener* addOnTopicFoundListener(JNIEnv* env, jobject jListener);
-    void removeOnTopicFoundListener(JNIEnv* env, jobject jListener);
-
-    JniOnMQSubscribeListener* addOnMQTopicSubscribeListener(JNIEnv* env, jobject jListener);
-    void removeOnMQTopicSubscribeListener(JNIEnv* env, jobject jListener);
-
     OCStackResult discoveryMQTopics(JNIEnv* env, const QueryParamsMap &queryParametersMap,
                                     jobject jListener, QualityOfService QoS);
     OCStackResult createMQTopic(JNIEnv* env, const OCRepresentation &representation,
@@ -138,17 +121,7 @@ public:
 #endif
 
 private:
-    JniListenerManager<JniOnGetListener> m_onGetManager;
-    JniListenerManager<JniOnPutListener> m_onPutManager;
-    JniListenerManager<JniOnPostListener> m_onPostManager;
-    JniListenerManager<JniOnDeleteListener> m_onDeleteManager;
-    JniListenerManager<JniOnObserveListener> m_onObserveManager;
-#ifdef WITH_MQ
-    JniListenerManager<JniOnMQTopicFoundListener> m_onFoundTopicResourceManager;
-    JniListenerManager<JniOnMQSubscribeListener> m_onSubcribeTopicManager;
-#endif
-
-    std::shared_ptr<OCResource> m_sharedResource;
+    std::shared_ptr<JniOcResourceImpl> m_impl;
 };
 
 /* DO NOT EDIT THIS FILE BEYOND THIS LINE - it is machine generated */