- Allow NULL ID when create edge handle.
- Add event_type to notify connection closure.
Signed-off-by: gichan <gichan2.jang@samsung.com>
NNS_EDGE_EVENT_CAPABILITY,
NNS_EDGE_EVENT_NEW_DATA_RECEIVED,
NNS_EDGE_EVENT_CALLBACK_RELEASED,
+ NNS_EDGE_EVENT_CONNECTION_CLOSED,
NNS_EDGE_EVENT_CUSTOM = 0x01000000
} nns_edge_event_e;
("Received error from client, remove connection of client (ID: %lld).",
(long long) client_id);
_nns_edge_remove_connection (eh, client_id);
+ _nns_edge_invoke_event_cb (eh, NNS_EDGE_EVENT_CONNECTION_CLOSED,
+ NULL, 0, NULL);
}
return NULL;
if ((NNS_EDGE_NODE_TYPE_QUERY_SERVER == eh->node_type)
|| (NNS_EDGE_NODE_TYPE_PUB == eh->node_type)) {
- client_id = nns_edge_generate_client_id ();
+ client_id = nns_edge_generate_id ();
} else {
client_id = eh->client_id;
}
{
nns_edge_handle_s *eh;
- if (!STR_IS_VALID (id)) {
- nns_edge_loge ("Invalid param, given ID is invalid.");
- return NNS_EDGE_ERROR_INVALID_PARAMETER;
- }
-
if (connect_type < 0 || connect_type >= NNS_EDGE_CONNECT_TYPE_UNKNOWN) {
nns_edge_loge ("Invalid param, set valid connect type.");
return NNS_EDGE_ERROR_INVALID_PARAMETER;
nns_edge_lock_init (eh);
eh->magic = NNS_EDGE_MAGIC;
- eh->id = nns_edge_strdup (id);
+ eh->id = STR_IS_VALID (id) ? nns_edge_strdup (id) :
+ nns_edge_strdup_printf ("%lld", (long long) nns_edge_generate_id ());
eh->connect_type = connect_type;
eh->host = nns_edge_strdup ("localhost");
eh->port = 0;
#include "nnstreamer-edge-util.h"
/**
- * @brief Generate client ID.
+ * @brief Generate ID.
*/
int64_t
-nns_edge_generate_client_id (void)
+nns_edge_generate_id (void)
{
struct timespec ts;
- int64_t client_id;
+ int64_t _id;
clock_gettime (CLOCK_MONOTONIC, &ts);
- client_id = ((int64_t) ts.tv_sec) * 1000000 + ts.tv_nsec / 1000;
+ _id = ((int64_t) ts.tv_sec) * 1000000 + ts.tv_nsec / 1000;
- return client_id;
+ return _id;
}
/**
/**
* @brief Generate client ID.
*/
-int64_t nns_edge_generate_client_id (void);
+int64_t nns_edge_generate_id (void);
/**
* @brief Get available port number.
nns_edge_h edge_h;
int ret;
- ret = nns_edge_create_handle (NULL, NNS_EDGE_CONNECT_TYPE_TCP,
- NNS_EDGE_NODE_TYPE_QUERY_CLIENT, &edge_h);
- EXPECT_NE (ret, NNS_EDGE_ERROR_NONE);
-}
-
-/**
- * @brief Create edge handle - invalid param.
- */
-TEST(edge, createHandleInvalidParam02_n)
-{
- nns_edge_h edge_h;
- int ret;
-
ret = nns_edge_create_handle ("temp-id", NNS_EDGE_CONNECT_TYPE_UNKNOWN,
NNS_EDGE_NODE_TYPE_QUERY_CLIENT, &edge_h);
EXPECT_NE (ret, NNS_EDGE_ERROR_NONE);
/**
* @brief Create edge handle - invalid param.
*/
-TEST(edge, createHandleInvalidParam03_n)
+TEST(edge, createHandleInvalidParam02_n)
{
int ret;
/**
* @brief Create edge handle - invalid param.
*/
-TEST(edge, createHandleInvalidParam04_n)
-{
- nns_edge_h edge_h;
- int ret;
-
- ret = nns_edge_create_handle ("", NNS_EDGE_CONNECT_TYPE_MQTT,
- NNS_EDGE_NODE_TYPE_QUERY_CLIENT, &edge_h);
- EXPECT_NE (ret, NNS_EDGE_ERROR_NONE);
-}
-
-/**
- * @brief Create edge handle - invalid param.
- */
-TEST(edge, createHandleInvalidParam05_n)
+TEST(edge, createHandleInvalidParam03_n)
{
nns_edge_h edge_h;
int ret;