コード例 #1
0
ファイル: caedrserver.c プロジェクト: drashti304/TizenRT
/**
 * implement for adapter common method.
 */
CAResult_t CAEDRServerStart()
{
    if (!g_threadPoolHandle)
    {
        return CA_STATUS_NOT_INITIALIZED;
    }

    oc_mutex_lock(g_mutexStartServerState);
    if (g_isStartServer)
    {
        OIC_LOG(DEBUG, TAG, "server already started");
        oc_mutex_unlock(g_mutexStartServerState);
        return CA_STATUS_OK;
    }
    oc_mutex_unlock(g_mutexStartServerState);

    CAResult_t res = CAEDRServerStartAcceptThread();
    if (CA_STATUS_OK == res)
    {
        res = CAEDRStartReceiveThread(false);
        if (CA_STATUS_OK != res)
        {
            OIC_LOG(ERROR, TAG, "failed to start receive thread");
            CAEDRServerStop();
            return CA_STATUS_FAILED;
        }
        oc_mutex_lock(g_mutexStartServerState);
        g_isStartServer = true;
        oc_mutex_unlock(g_mutexStartServerState);
    }

    return res;
}
コード例 #2
0
/**
 * implement for adapter common method.
 */
CAResult_t CAEDRServerStart()
{
    if (!g_threadPoolHandle)
    {
        return CA_STATUS_NOT_INITIALIZED;
    }

    CAEDRServerStartAcceptThread();
    CAResult_t res = CAEDRStartUnicastServer(false);
    if (CA_STATUS_OK != res)
    {
        OIC_LOG(ERROR, TAG, "CAEDRStartUnicastServer failed");
        CAEDRServerStop();
        return CA_STATUS_FAILED;
    }

    return res;
}