Merge branch 'group-manager'
[platform/upstream/iotivity.git] / resource / csdk / connectivity / src / bt_edr_adapter / android / caedrclient.c
index a729e2c..16e588a 100644 (file)
@@ -34,7 +34,6 @@
 #include "caadapterutils.h"
 #include "caremotehandler.h"
 
-//#define DEBUG_MODE
 #define TAG PCF("OIC_CA_EDR_CLIENT")
 
 static const char METHODID_CONTEXTNONPARAM[] = "()Landroid/content/Context;";
@@ -51,8 +50,6 @@ static const char CLASSPATH_BT_UUID[] = "java/util/UUID";
 static const char CLASSPATH_CONTEXT[] = "android/content/Context";
 static const char CLASSPATH_OUTPUT[] = "java/io/OutputStream";
 
-static ca_thread_pool_t g_threadPoolHandle = NULL;
-
 static JavaVM *g_jvm;
 static jobject g_context;
 
@@ -396,18 +393,21 @@ static CAResult_t CAEDRCreateMutex()
     return CA_STATUS_OK;
 }
 
-void CAEDRInitialize(ca_thread_pool_t handle)
+CAResult_t CAEDRInitialize()
 {
     OIC_LOG(DEBUG, TAG, "CAEDRInitialize");
 
-    g_threadPoolHandle = handle;
-
     CAEDRCoreJniInit();
 
     CAEDRJniInitContext();
 
     // init mutex
-    CAEDRCreateMutex();
+    CAResult_t result = CAEDRCreateMutex();
+    if(CA_STATUS_OK != result)
+    {
+        OIC_LOG(ERROR, TAG, "CAEDRInitialize - Could not create mutex");
+        return result;
+    }
 
     bool isAttached = false;
     JNIEnv* env;
@@ -420,7 +420,7 @@ void CAEDRInitialize(ca_thread_pool_t handle)
         if (JNI_OK != res)
         {
             OIC_LOG(ERROR, TAG, "AttachCurrentThread failed");
-            return;
+            return CA_STATUS_NOT_INITIALIZED;
         }
         isAttached = true;
     }
@@ -452,6 +452,8 @@ void CAEDRInitialize(ca_thread_pool_t handle)
     }
 
     OIC_LOG(DEBUG, TAG, "OUT");
+
+    return result;
 }
 
 void CAEDRTerminate()
@@ -843,8 +845,8 @@ CAResult_t CAEDRNativeSendData(JNIEnv *env, const char *address, const uint8_t *
 
     if (!CAEDRNativeIsEnableBTAdapter(env))
     {
-        OIC_LOG(ERROR, TAG, "BT adpater is not enable");
-        return CA_STATUS_INVALID_PARAM;
+        OIC_LOG(INFO, TAG, "BT adapter is not enabled");
+        return CA_ADAPTER_NOT_ENABLED;
     }
 
     if (STATE_DISCONNECTED == CAEDRIsConnectedDevice(address))
@@ -940,7 +942,7 @@ CAResult_t CAEDRNativeSendData(JNIEnv *env, const char *address, const uint8_t *
                 return CA_STATUS_FAILED;
             }
 
-            OIC_LOG_V(INFO, TAG, "EDR sendTo is successful: %ld bytes, to %s",
+            OIC_LOG_V(INFO, TAG, "EDR sendTo is successful: %u bytes, to %s",
                       dataLength, address);
         }
         else
@@ -966,8 +968,8 @@ CAResult_t CAEDRNativeConnect(JNIEnv *env, const char *address)
 
     if (!CAEDRNativeIsEnableBTAdapter(env))
     {
-        OIC_LOG(ERROR, TAG, "BT adpater is not enable");
-        return CA_STATUS_INVALID_PARAM;
+        OIC_LOG(INFO, TAG, "BT adapter is not enabled");
+        return CA_ADAPTER_NOT_ENABLED;
     }
 
     jclass jni_cid_BTAdapter = (*env)->FindClass(env, CLASSPATH_BT_ADPATER);
@@ -1187,9 +1189,10 @@ void CAEDRNativeSocketClose(JNIEnv *env, const char *address)
     OIC_LOG(DEBUG, TAG, "disconnected");
 }
 
-void CAEDRInitializeClient(ca_thread_pool_t handle)
+CAResult_t CAEDRClientInitialize()
 {
-    CAEDRInitialize(handle);
+    CAResult_t result = CAEDRInitialize();
+    return result;
 }
 
 void CAEDRSetErrorHandler(CAEDRErrorHandleCallback errorHandleCallback)