Imported Upstream version 1.1.1
[platform/upstream/iotivity.git] / android / android_api / base / jni / JniOnDPDevicesFoundListener.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 #include <jni.h>
23 #include "OCDirectPairing.h"
24 #include "OCApi.h"
25 #include "JniOcStack.h"
26
27 #ifndef _Included_org_iotivity_base_OcPlatform_JniOnDPDevicesFoundListener
28 #define _Included_org_iotivity_base_OcPlatform_JniOnDPDevicesFoundListener
29
30 enum class DPFunc
31 {
32     FIND_DIRECT_PAIRED_DEV_LIST = 1,
33     GET_PAIRED_DEV_LIST,
34 };
35
36 class JniOnDPDevicesFoundListener
37 {
38 public:
39     JniOnDPDevicesFoundListener(JNIEnv *env, jobject jListener,
40             RemoveListenerCallback removeListenerCallback);
41     ~JniOnDPDevicesFoundListener();
42
43    jobject convertdpDevVectorToJavaList(JNIEnv *env, OC::PairedDevices DPdevList);
44    void directPairingDevicesCallback(OC::PairedDevices paringDevicesList, DPFunc);
45
46 private:
47     RemoveListenerCallback m_removeListenerCallback;
48     jweak m_jwListener;
49     void checkExAndRemoveListener(JNIEnv* env);
50 };
51 #endif