replace : iotivity -> iotivity-sec
[platform/upstream/iotivity.git] / android / android_api / base / jni / JniOcAccountManager.h
1 /*
2  *******************************************************************
3  *
4  * Copyright 2016 Samsung Electronics All Rights Reserved.
5  *
6  *-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
7  *
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  *      http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  *
20  *-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
21  */
22
23 #ifndef _Included_org_iotivity_base_OcAccountManager
24 #define _Included_org_iotivity_base_OcAccountManager
25
26 #include "JniOcStack.h"
27 #include "OCAccountManager.h"
28 #include "JniListenerManager.h"
29 #include "JniOnGetListener.h"
30 #include "JniOnPostListener.h"
31 #include "JniOnDeleteListener.h"
32 #include "JniOnObserveListener.h"
33
34 using namespace OC;
35
36 class JniOcAccountManager
37 {
38 public:
39     JniOcAccountManager(std::shared_ptr<OCAccountManager> accountManager);
40     ~JniOcAccountManager();
41
42     std::string host();
43     OCConnectivityType connectivityType() const;
44
45     static JniOcAccountManager* getJniOcAccountManagerPtr(JNIEnv *env, jobject thiz);
46
47     OCStackResult signUp(JNIEnv* env, const std::string& authProvider, const std::string& authCode,
48                          jobject jListener);
49     OCStackResult signUp(JNIEnv* env, const std::string& authProvider, const std::string& authCode,
50                          const QueryParamsMap& options, jobject jListener);
51     OCStackResult signIn(JNIEnv* env, const std::string& userUuid, const std::string& accessToken,
52                          jobject jListener);
53     OCStackResult signOut(JNIEnv* env, const std::string& accessToken, jobject jListener);
54     OCStackResult refreshAccessToken(JNIEnv* env, const std::string& userUuid,
55                                      const std::string& refreshToken, jobject jListener);
56     OCStackResult searchUser(JNIEnv* env, const QueryParamsMap& queryMap, jobject jListener);
57     OCStackResult deleteDevice(JNIEnv* env, const std::string& accessToken,
58                                const std::string& deviceId, jobject jListener);
59     OCStackResult createGroup(JNIEnv* env, jobject jListener);
60     OCStackResult createGroup(JNIEnv* env, const QueryParamsMap& queryMap, jobject jListener);
61     OCStackResult deleteGroup(JNIEnv* env, const std::string& groupId, jobject jListener);
62     OCStackResult getGroupInfoAll(JNIEnv* env, jobject jListener);
63     OCStackResult getGroupInfo(JNIEnv* env, const std::string& groupId, jobject jListener);
64     OCStackResult addPropertyValueToGroup(JNIEnv* env, const std::string& groupId,
65                                           const OCRepresentation& propertyValue, jobject jListener);
66     OCStackResult deletePropertyValueFromGroup(JNIEnv* env, const std::string& groupId,
67                                                const OCRepresentation& propertyValue, jobject jListener);
68     OCStackResult updatePropertyValueOnGroup(JNIEnv* env, const std::string& groupId,
69                                              const OCRepresentation& propertyValue, jobject jListener);
70     OCStackResult observeGroup(JNIEnv* env, jobject jListener);
71     OCStackResult cancelObserveGroup();
72     OCStackResult observeInvitation(JNIEnv* env, jobject jListener);
73     OCStackResult cancelObserveInvitation();
74     OCStackResult sendInvitation(JNIEnv* env, const std::string& groupId,
75                                  const std::string& userUuid, jobject jListener);
76     OCStackResult cancelInvitation(JNIEnv* env, const std::string& groupId,
77                                    const std::string& userUuid, jobject jListener);
78     OCStackResult replyToInvitation(JNIEnv* env, const std::string& groupId, const bool accept,
79                                     jobject jListener);
80
81     JniOnGetListener* addOnGetListener(JNIEnv* env, jobject jListener);
82     JniOnPostListener* addOnPostListener(JNIEnv* env, jobject jListener);
83     JniOnDeleteListener* addOnDeleteListener(JNIEnv* env, jobject jListener);
84     JniOnObserveListener* addOnObserveListener(JNIEnv* env, jobject jListener);
85
86     void removeOnGetListener(JNIEnv* env, jobject jListener);
87     void removeOnPostListener(JNIEnv* env, jobject jListener);
88     void removeOnDeleteListener(JNIEnv* env, jobject jListener);
89     void removeOnObserveListener(JNIEnv* env, jobject jListener);
90
91 private:
92     JniListenerManager<JniOnGetListener> m_onGetManager;
93     JniListenerManager<JniOnPostListener> m_onPostManager;
94     JniListenerManager<JniOnDeleteListener> m_onDeleteManager;
95     JniListenerManager<JniOnObserveListener> m_onObserveManager;
96
97     std::shared_ptr<OCAccountManager> m_sharedAccountManager;
98 };
99
100 /* DO NOT EDIT THIS FILE BEYOND THIS LINE - it is machine generated */
101
102 #ifdef __cplusplus
103 extern "C" {
104 #endif
105
106     /*
107     * Class:     org_iotivity_base_OcAccountManager
108     * Method:    getHost
109     * Signature: ()Ljava/lang/String;
110     */
111     JNIEXPORT jstring JNICALL Java_org_iotivity_base_OcAccountManager_getHost
112         (JNIEnv *, jobject);
113
114     /*
115     * Class:     org_iotivity_base_OcAccountManager
116     * Method:    getConnectivityTypeN
117     * Signature: ()I
118     */
119     JNIEXPORT jint JNICALL Java_org_iotivity_base_OcAccountManager_getConnectivityTypeN
120         (JNIEnv *, jobject);
121
122     /*
123     * Class:     org_iotivity_base_OcAccountManager
124     * Method:    signUp0
125     * Signature: (Ljava/lang/String;Ljava/lang/String;Lorg/iotivity/base/OcAccountManager/OnPostListener;)V
126     */
127     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_signUp0
128         (JNIEnv *, jobject, jstring, jstring, jobject);
129
130     /*
131     * Class:     org_iotivity_base_OcAccountManager
132     * Method:    signUp1
133     * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Lorg/iotivity/base/OcAccountManager/OnPostListener;)V
134     */
135     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_signUp1
136         (JNIEnv *, jobject, jstring, jstring, jobject, jobject);
137
138     /*
139     * Class:     org_iotivity_base_OcAccountManager
140     * Method:    signIn0
141     * Signature: (Ljava/lang/String;Ljava/lang/String;Lorg/iotivity/base/OcAccountManager/OnPostListener;)V
142     */
143     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_signIn0
144         (JNIEnv *, jobject, jstring, jstring, jobject);
145
146     /*
147     * Class:     org_iotivity_base_OcAccountManager
148     * Method:    signOut0
149     * Signature: (Lorg/iotivity/base/OcAccountManager/OnPostListener;)V
150     */
151     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_signOut0
152         (JNIEnv *, jobject, jobject);
153
154     /*
155     * Class:     org_iotivity_base_OcAccountManager
156     * Method:    refreshAccessToken0
157     * Signature: (Ljava/lang/String;Ljava/lang/String;Lorg/iotivity/base/OcAccountManager/OnPostListener;)V
158     */
159     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_refreshAccessToken0
160         (JNIEnv *, jobject, jstring, jstring, jobject);
161
162     /*
163     * Class:     org_iotivity_base_OcAccountManager
164     * Method:    searchUser0
165     * Signature: (Ljava/util/Map;Lorg/iotivity/base/OcAccountManager/OnGetListener;)V
166     */
167     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_searchUser0
168         (JNIEnv *, jobject, jobject, jobject);
169
170     /*
171     * Class:     org_iotivity_base_OcAccountManager
172     * Method:    deleteDevice0
173     * Signature: (Ljava/lang/String;Ljava/lang/String;Lorg/iotivity/base/OcAccountManager/onDeleteListener;)V
174     */
175     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_deleteDevice0
176         (JNIEnv *, jobject, jstring, jstring, jobject);
177
178     /*
179     * Class:     org_iotivity_base_OcAccountManager
180     * Method:    createGroup0
181     * Signature: (Lorg/iotivity/base/OcAccountManager/OnPostListener;)V
182     */
183     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_createGroup0
184         (JNIEnv *, jobject, jobject);
185
186     /*
187     * Class:     org_iotivity_base_OcAccountManager
188     * Method:    createGroup1
189     * Signature: (Ljava/util/Map;Lorg/iotivity/base/OcAccountManager/OnPostListener;)V
190     */
191     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_createGroup1
192         (JNIEnv *, jobject, jobject, jobject);
193
194     /*
195     * Class:     org_iotivity_base_OcAccountManager
196     * Method:    deleteGroup0
197     * Signature: (Ljava/lang/String;Lorg/iotivity/base/OcAccountManager/onDeleteListener;)V
198     */
199     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_deleteGroup0
200         (JNIEnv *, jobject, jstring, jobject);
201
202     /*
203     * Class:     org_iotivity_base_OcAccountManager
204     * Method:    getGroupInfoAll0
205     * Signature: (Lorg/iotivity/base/OcAccountManager/OnGetListener;)V
206     */
207     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_getGroupInfoAll0
208         (JNIEnv *, jobject, jobject);
209
210     /*
211     * Class:     org_iotivity_base_OcAccountManager
212     * Method:    getGroupInfo0
213     * Signature: (Ljava/lang/String;Lorg/iotivity/base/OcAccountManager/OnGetListener;)V
214     */
215     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_getGroupInfo0
216         (JNIEnv *, jobject, jstring, jobject);
217
218     /*
219     * Class:     org_iotivity_base_OcAccountManager
220     * Method:    addPropertyValueToGroup0
221     * Signature: (Ljava/lang/String;Lorg/iotivity/base/OcRepresentation;
222     *             Lorg/iotivity/base/OcAccountManager/OnPostListener;)V
223     */
224     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_addPropertyValueToGroup0
225         (JNIEnv *, jobject, jstring, jobject, jobject);
226
227     /*
228     * Class:     org_iotivity_base_OcAccountManager
229     * Method:    deletePropertyValueFromGroup0
230     * Signature: (Ljava/lang/String;Lorg/iotivity/base/OcRepresentation;
231     *             Lorg/iotivity/base/OcAccountManager/OnPostListener;)V
232     */
233     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_deletePropertyValueFromGroup0
234         (JNIEnv *, jobject, jstring, jobject, jobject);
235
236     /*
237     * Class:     org_iotivity_base_OcAccountManager
238     * Method:    updatePropertyValueOnGroup0
239     * Signature: (Ljava/lang/String;Lorg/iotivity/base/OcRepresentation;
240     *             Lorg/iotivity/base/OcAccountManager/OnPostListener;)V
241     */
242     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_updatePropertyValueOnGroup0
243         (JNIEnv *, jobject, jstring, jobject, jobject);
244
245     /*
246     * Class:     org_iotivity_base_OcAccountManager
247     * Method:    observeGroup0
248     * Signature: (Lorg/iotivity/base/OcResource/OnObserveListener;)V
249     */
250     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_observeGroup0
251         (JNIEnv *, jobject, jobject);
252
253     /*
254     * Class:     org_iotivity_base_OcAccountManager
255     * Method:    cancelObserveGroup0
256     * Signature: ()V
257     */
258     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_cancelObserveGroup0
259         (JNIEnv *, jobject);
260
261     /*
262     * Class:     org_iotivity_base_OcAccountManager
263     * Method:    observeInvitation0
264     * Signature: (Lorg/iotivity/base/OcResource/OnObserveListener;)V
265     */
266     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_observeInvitation0
267         (JNIEnv *, jobject, jobject);
268
269     /*
270     * Class:     org_iotivity_base_OcAccountManager
271     * Method:    cancelObserveInvitation0
272     * Signature: ()V
273     */
274     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_cancelObserveInvitation0
275         (JNIEnv *, jobject);
276
277     /*
278     * Class:     org_iotivity_base_OcAccountManager
279     * Method:    sendInvitation0
280     * Signature: (Ljava/lang/String;Ljava/lang/String;Lorg/iotivity/base/OcAccountManager/OnPostListener;)V
281     */
282     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_sendInvitation0
283         (JNIEnv *, jobject, jstring, jstring, jobject);
284
285     /*
286     * Class:     org_iotivity_base_OcAccountManager
287     * Method:    cancelInvitation0
288     * Signature: (Ljava/lang/String;Ljava/lang/String;Lorg/iotivity/base/OcAccountManager/onDeleteListener;)V
289     */
290     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_cancelInvitation0
291         (JNIEnv *, jobject, jstring, jstring, jobject);
292
293     /*
294     * Class:     org_iotivity_base_OcAccountManager
295     * Method:    replyToInvitation0
296     * Signature: (Ljava/lang/String;ZLorg/iotivity/base/OcAccountManager/onDeleteListener;)V
297     */
298     JNIEXPORT void JNICALL Java_org_iotivity_base_OcAccountManager_replyToInvitation0
299         (JNIEnv *, jobject, jstring, jboolean, jobject);
300
301 #ifdef __cplusplus
302 }
303 #endif
304 #endif