84f748ef595e04de3fb009bb1c23bada9520bc87
[platform/upstream/iotivity.git] / android / android_api / base / jni / JniOcResourceHandle.cpp
1 /*\r
2 * //******************************************************************\r
3 * //\r
4 * // Copyright 2015 Intel Corporation.\r
5 * //\r
6 * //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\r
7 * //\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
11 * //\r
12 * //      http://www.apache.org/licenses/LICENSE-2.0\r
13 * //\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
19 * //\r
20 * //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\r
21 */\r
22 #include "JniOcResourceHandle.h"\r
23 \r
24 using namespace OC;\r
25 \r
26 JniOcResourceHandle::JniOcResourceHandle(OCResourceHandle resourceHandle)\r
27     : m_resourceHandle(resourceHandle)\r
28 {}\r
29 \r
30 JniOcResourceHandle::~JniOcResourceHandle()\r
31 {\r
32     LOGD("~JniOcResourceHandle()");\r
33 }\r
34 \r
35 JniOcResourceHandle* JniOcResourceHandle::getJniOcResourceHandlePtr\r
36 (JNIEnv *env, jobject thiz)\r
37 {\r
38     JniOcResourceHandle *handle = GetHandle<JniOcResourceHandle>(env, thiz);\r
39     if (env->ExceptionCheck())\r
40     {\r
41         LOGE("Failed to get native handle from OcResourceHandle");\r
42     }\r
43     if (!handle)\r
44     {\r
45         ThrowOcException(JNI_NO_NATIVE_POINTER, "");\r
46     }\r
47     return handle;\r
48 }\r
49 \r
50 OCResourceHandle JniOcResourceHandle::getOCResourceHandle()\r
51 {\r
52     return this->m_resourceHandle;\r
53 }\r
54 \r
55 /*\r
56 * Class:     org_iotivity_base_OcResourceHandle\r
57 * Method:    dispose\r
58 * Signature: ()V\r
59 */\r
60 JNIEXPORT void JNICALL Java_org_iotivity_base_OcResourceHandle_dispose\r
61 (JNIEnv *env, jobject thiz)\r
62 {\r
63     LOGD("OcResourceHandle_dispose");\r
64     JniOcResourceHandle *resourceHandle = JniOcResourceHandle::getJniOcResourceHandlePtr(env, thiz);\r
65     delete resourceHandle;\r
66 }