2 * //******************************************************************
\r
4 * // Copyright 2015 Intel Corporation.
\r
6 * //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
\r
8 * // Licensed under the Apache License, Version 2.0 (the "License");
\r
9 * // you may not use this file except in compliance with the License.
\r
10 * // You may obtain a copy of the License at
\r
12 * // http://www.apache.org/licenses/LICENSE-2.0
\r
14 * // Unless required by applicable law or agreed to in writing, software
\r
15 * // distributed under the License is distributed on an "AS IS" BASIS,
\r
16 * // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
\r
17 * // See the License for the specific language governing permissions and
\r
18 * // limitations under the License.
\r
20 * //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
\r
22 #include "JniOcStack.h"
\r
23 #include "JniOnResourceFoundListener.h"
\r
24 #include "JniOnDeviceInfoListener.h"
\r
25 #include "JniOnPresenceListener.h"
\r
28 #ifndef _Included_org_iotivity_base_OcPlatform
\r
29 #define _Included_org_iotivity_base_OcPlatform
\r
33 JniOnResourceFoundListener* AddOnResourceFoundListener(JNIEnv* env, jobject jListener);
\r
34 void RemoveOnResourceFoundListener(JNIEnv* env, jobject jListener);
\r
36 JniOnDeviceInfoListener* AddOnDeviceInfoListener(JNIEnv* env, jobject jListener);
\r
37 void RemoveOnDeviceInfoListener(JNIEnv* env, jobject jListener);
\r
39 JniOnPresenceListener* AddOnPresenceListener(JNIEnv* env, jobject jListener);
\r
40 void RemoveOnPresenceListener(JNIEnv* env, jobject jListener);
\r
42 std::map<jobject, std::pair<JniOnResourceFoundListener*, int>> onResourceFoundListenerMap;
\r
43 std::map<jobject, std::pair<JniOnDeviceInfoListener*, int>> onDeviceInfoListenerMap;
\r
44 std::map<jobject, std::pair<JniOnPresenceListener*, int>> onPresenceListenerMap;
\r
46 std::mutex resourceFoundMapLock;
\r
47 std::mutex deviceInfoMapLock;
\r
48 std::mutex presenceMapLock;
\r
54 * Class: org_iotivity_base_OcPlatform
\r
56 * Signature: (IILjava/lang/String;II)V
\r
58 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_configure
\r
59 (JNIEnv *, jclass, jint, jint, jstring, jint, jint, jstring);
62 * Class: org_iotivity_base_OcPlatform
\r
63 * Method: notifyAllObservers0
\r
64 * Signature: (Lorg/iotivity/base/OcResourceHandle;)V
\r
66 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_notifyAllObservers0
\r
67 (JNIEnv *, jclass, jobject);
\r
70 * Class: org_iotivity_base_OcPlatform
\r
71 * Method: notifyAllObservers1
\r
72 * Signature: (Lorg/iotivity/base/OcResourceHandle;I)V
\r
74 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_notifyAllObservers1
\r
75 (JNIEnv *, jclass, jobject, jint);
\r
78 * Class: org_iotivity_base_OcPlatform
\r
79 * Method: notifyListOfObservers2
\r
80 * Signature: (Lorg/iotivity/base/OcResourceHandle;[BLorg/iotivity/base/OcResourceResponse;)V
\r
82 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_notifyListOfObservers2
\r
83 (JNIEnv *, jclass, jobject, jbyteArray, jobject);
\r
86 * Class: org_iotivity_base_OcPlatform
\r
87 * Method: notifyListOfObservers3
\r
88 * Signature: (Lorg/iotivity/base/OcResourceHandle;[BLorg/iotivity/base/OcResourceResponse;I)V
\r
90 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_notifyListOfObservers3
\r
91 (JNIEnv *, jclass, jobject, jbyteArray, jobject, jint);
\r
94 * Class: org_iotivity_base_OcPlatform
\r
95 * Method: findResource0
\r
96 * Signature: (Ljava/lang/String;Ljava/lang/String;ILorg/iotivity/base/OcPlatform/OnResourceFoundListener;)V
\r
98 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_findResource0
\r
99 (JNIEnv *, jclass, jstring, jstring, jint, jobject);
\r
102 * Class: org_iotivity_base_OcPlatform
\r
103 * Method: findResource1
\r
104 * Signature: (Ljava/lang/String;Ljava/lang/String;ILorg/iotivity/base/OcPlatform/OnResourceFoundListener;I)V
\r
106 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_findResource1
\r
107 (JNIEnv *, jclass, jstring, jstring, jint, jobject, jint);
\r
110 * Class: org_iotivity_base_OcPlatform
\r
111 * Method: getDeviceInfo0
\r
112 * Signature: (Ljava/lang/String;Ljava/lang/String;ILorg/iotivity/base/OcPlatform/OnDeviceFoundListener;)V
\r
114 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_getDeviceInfo0
\r
115 (JNIEnv *, jclass, jstring, jstring, jint, jobject);
\r
118 * Class: org_iotivity_base_OcPlatform
\r
119 * Method: getDeviceInfo1
\r
120 * Signature: (Ljava/lang/String;Ljava/lang/String;ILorg/iotivity/base/OcPlatform/OnDeviceFoundListener;I)V
\r
122 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_getDeviceInfo1
\r
123 (JNIEnv *, jclass, jstring, jstring, jint, jobject, jint);
\r
126 * Class: org_iotivity_base_OcPlatform
\r
127 * Method: registerResource0
\r
128 * Signature: (Lorg/iotivity/base/OcResource;)Lorg/iotivity/base/OcResourceHandle;
\r
130 JNIEXPORT jobject JNICALL Java_org_iotivity_base_OcPlatform_registerResource0
\r
131 (JNIEnv *, jclass, jobject);
\r
134 * Class: org_iotivity_base_OcPlatform
\r
135 * Method: registerResource1
\r
136 * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/iotivity/base/OcPlatform/EntityHandler;I)Lorg/iotivity/base/OcResourceHandle;
\r
138 JNIEXPORT jobject JNICALL Java_org_iotivity_base_OcPlatform_registerResource1
\r
139 (JNIEnv *, jclass, jstring, jstring, jstring, jobject, jint);
\r
142 * Class: org_iotivity_base_OcPlatform
\r
143 * Method: registerDeviceInfo0
\r
144 * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
\r
146 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_registerDeviceInfo0
\r
147 (JNIEnv *, jclass, jstring, jstring, jstring, jstring, jstring, jstring, jstring, jstring, jstring, jstring, jstring, jstring);
\r
150 * Class: org_iotivity_base_OcPlatform
\r
151 * Method: unregisterResource0
\r
152 * Signature: (Lorg/iotivity/base/OcResourceHandle;)V
\r
154 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_unregisterResource0
\r
155 (JNIEnv *, jclass, jobject);
\r
158 * Class: org_iotivity_base_OcPlatform
\r
159 * Method: bindResource0
\r
160 * Signature: (Lorg/iotivity/base/OcResourceHandle;Lorg/iotivity/base/OcResourceHandle;)V
\r
162 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_bindResource0
\r
163 (JNIEnv *, jclass, jobject, jobject);
\r
166 * Class: org_iotivity_base_OcPlatform
\r
167 * Method: bindResources0
\r
168 * Signature: (Lorg/iotivity/base/OcResourceHandle;[Lorg/iotivity/base/OcResourceHandle;)V
\r
170 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_bindResources0
\r
171 (JNIEnv *, jclass, jobject, jobjectArray);
\r
174 * Class: org_iotivity_base_OcPlatform
\r
175 * Method: unbindResource0
\r
176 * Signature: (Lorg/iotivity/base/OcResourceHandle;Lorg/iotivity/base/OcResourceHandle;)V
\r
178 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_unbindResource0
\r
179 (JNIEnv *, jclass, jobject, jobject);
\r
182 * Class: org_iotivity_base_OcPlatform
\r
183 * Method: unbindResources0
\r
184 * Signature: (Lorg/iotivity/base/OcResourceHandle;[Lorg/iotivity/base/OcResourceHandle;)V
\r
186 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_unbindResources0
\r
187 (JNIEnv *, jclass, jobject, jobjectArray);
\r
190 * Class: org_iotivity_base_OcPlatform
\r
191 * Method: bindTypeToResource0
\r
192 * Signature: (Lorg/iotivity/base/OcResourceHandle;Ljava/lang/String;)V
\r
194 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_bindTypeToResource0
\r
195 (JNIEnv *, jclass, jobject, jstring);
\r
198 * Class: org_iotivity_base_OcPlatform
\r
199 * Method: bindInterfaceToResource0
\r
200 * Signature: (Lorg/iotivity/base/OcResourceHandle;Ljava/lang/String;)V
\r
202 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_bindInterfaceToResource0
\r
203 (JNIEnv *, jclass, jobject, jstring);
\r
206 * Class: org_iotivity_base_OcPlatform
\r
207 * Method: startPresence0
\r
210 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_startPresence0
\r
211 (JNIEnv *, jclass, jint);
\r
214 * Class: org_iotivity_base_OcPlatform
\r
215 * Method: stopPresence0
\r
218 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_stopPresence0
\r
219 (JNIEnv *, jclass);
\r
222 * Class: org_iotivity_base_OcPlatform
\r
223 * Method: subscribePresence0
\r
224 * Signature: (Ljava/lang/String;ILorg/iotivity/base/OcPlatform/OnPresenceListener;)Lorg/iotivity/base/OcPresenceHandle;
\r
226 JNIEXPORT jobject JNICALL Java_org_iotivity_base_OcPlatform_subscribePresence0
\r
227 (JNIEnv *, jclass, jstring, jint, jobject);
\r
230 * Class: org_iotivity_base_OcPlatform
\r
231 * Method: subscribePresence1
\r
232 * Signature: (Ljava/lang/String;Ljava/lang/String;ILorg/iotivity/base/OcPlatform/OnPresenceListener;)Lorg/iotivity/base/OcPresenceHandle;
\r
234 JNIEXPORT jobject JNICALL Java_org_iotivity_base_OcPlatform_subscribePresence1
\r
235 (JNIEnv *, jclass, jstring, jstring, jint, jobject);
\r
238 * Class: org_iotivity_base_OcPlatform
\r
239 * Method: unsubscribePresence0
\r
240 * Signature: (Lorg/iotivity/base/OcPresenceHandle;)V
\r
242 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_unsubscribePresence0
\r
243 (JNIEnv *, jclass, jobject);
\r
246 * Class: org_iotivity_base_OcPlatform
\r
247 * Method: constructResourceObject0
\r
248 * Signature: (Ljava/lang/String;Ljava/lang/String;IZ[Ljava/lang/String;[Ljava/lang/String;)Lorg/iotivity/base/OcResource;
\r
250 JNIEXPORT jobject JNICALL Java_org_iotivity_base_OcPlatform_constructResourceObject0
\r
251 (JNIEnv *, jclass, jstring, jstring, jint, jboolean, jobjectArray, jobjectArray);
\r
254 * Class: org_iotivity_base_OcPlatform0
\r
255 * Method: sendResponse0
\r
256 * Signature: (Lorg/iotivity/base/OcResourceResponse;)V
\r
258 JNIEXPORT void JNICALL Java_org_iotivity_base_OcPlatform_sendResponse0
\r
259 (JNIEnv *, jclass, jobject);
\r