From e16735f3064403c6281fecc84f2d41686dd3085c Mon Sep 17 00:00:00 2001 From: Hyunil Date: Tue, 27 Aug 2019 15:54:52 +0900 Subject: [PATCH] Remove cyclomatic complexity of get/set param value function Change-Id: I7b756ce2e17193e3f49dc007252cf1d791c05e38 Signed-off-by: Hyunil --- src/media_streamer_node.c | 116 +++++++++++++++++----------------------------- 1 file changed, 43 insertions(+), 73 deletions(-) diff --git a/src/media_streamer_node.c b/src/media_streamer_node.c index e4d8750..961fbc2 100644 --- a/src/media_streamer_node.c +++ b/src/media_streamer_node.c @@ -1403,7 +1403,7 @@ int __ms_node_get_param_value(media_streamer_node_s *node, param_s *param, char if (node->type == MEDIA_STREAMER_NODE_TYPE_RTP) ret = __ms_rtp_node_get_property(node, param, &value); else if (node->type == MEDIA_STREAMER_NODE_TYPE_SRC && - node->subtype == MEDIA_STREAMER_NODE_SRC_TYPE_ADAPTIVE) + node->subtype == MEDIA_STREAMER_NODE_SRC_TYPE_ADAPTIVE) ret = __ms_adaptive_src_node_get_property(node, param, &value); else { param_spec = g_object_class_find_property(G_OBJECT_GET_CLASS(node->gst_element), param->origin_name); @@ -1418,53 +1418,36 @@ int __ms_node_get_param_value(media_streamer_node_s *node, param_s *param, char } } - if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_CAMERA_ID)) + if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_CAMERA_ID) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_CAPTURE_WIDTH) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_CAPTURE_HEIGHT) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_PORT) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_VIDEO_IN_PORT) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_AUDIO_IN_PORT) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_VIDEO_OUT_PORT) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_AUDIO_OUT_PORT)) { if (G_VALUE_HOLDS_INT(&value)) string_val = g_strdup_printf("%d", g_value_get_int(&value)); else string_val = g_strdup_printf("%u", g_value_get_uint(&value)); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_CAPTURE_WIDTH)) - string_val = g_strdup_printf("%d", g_value_get_int(&value)); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_CAPTURE_HEIGHT)) - string_val = g_strdup_printf("%d", g_value_get_int(&value)); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_IS_LIVE_STREAM)) + } else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_IS_LIVE_STREAM) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_CLOCK_SYNCHRONIZED) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_VISIBLE)) { string_val = g_strdup(g_value_get_boolean(&value) ? "true" : "false"); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_URI)) + } else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_URI) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_USER_AGENT) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_IP_ADDRESS) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_AUDIO_DEVICE) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_HOST) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_SEGMENT_LOCATION)|| + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_PLAYLIST_LOCATION)) { string_val = g_value_dup_string(&value); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_USER_AGENT)) - string_val = g_value_dup_string(&value); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_STREAM_TYPE)) - string_val = g_strdup_printf("%d", g_value_get_enum(&value)); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_PORT)) - string_val = g_strdup_printf("%d", g_value_get_int(&value)); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_VIDEO_IN_PORT)) - string_val = g_strdup_printf("%d", g_value_get_int(&value)); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_AUDIO_IN_PORT)) - string_val = g_strdup_printf("%d", g_value_get_int(&value)); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_VIDEO_OUT_PORT)) - string_val = g_strdup_printf("%d", g_value_get_int(&value)); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_AUDIO_OUT_PORT)) - string_val = g_strdup_printf("%d", g_value_get_int(&value)); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_IP_ADDRESS)) - string_val = g_value_dup_string(&value); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_AUDIO_DEVICE)) - string_val = g_value_dup_string(&value); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_CLOCK_SYNCHRONIZED)) - string_val = g_strdup(g_value_get_boolean(&value) ? "true" : "false"); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_ROTATE)) - string_val = g_strdup_printf("%d", g_value_get_enum(&value)); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_FLIP)) - string_val = g_strdup_printf("%d", g_value_get_enum(&value)); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_DISPLAY_GEOMETRY_METHOD)) + } else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_STREAM_TYPE) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_ROTATE) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_FLIP) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_DISPLAY_GEOMETRY_METHOD)) { string_val = g_strdup_printf("%d", g_value_get_enum(&value)); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_VISIBLE)) - string_val = g_strdup(g_value_get_boolean(&value) ? "true" : "false"); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_HOST)) - string_val = g_value_dup_string(&value); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_SEGMENT_LOCATION)) - string_val = g_value_dup_string(&value); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_PLAYLIST_LOCATION)) - string_val = g_value_dup_string(&value); + } *string_value = string_val; @@ -1738,48 +1721,35 @@ int __ms_node_set_param_value(media_streamer_node_s *ms_node, param_s *param, co int camera_id = (int)strtol(param_value, NULL, 10); ms_retvm_if(camera_id == -1, MEDIA_STREAMER_ERROR_INVALID_PARAMETER, "Invalid %s value", param->param_name); g_object_set(ms_node->gst_element, param->origin_name, camera_id, NULL); - } else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_CAPTURE_WIDTH)) - g_object_set(ms_node->gst_element, param->origin_name, (int)strtol(param_value, NULL, 10), NULL); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_CAPTURE_HEIGHT)) + } else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_CAPTURE_WIDTH) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_CAPTURE_HEIGHT) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_STREAM_TYPE) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_PORT) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_ROTATE) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_FLIP) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_DISPLAY_GEOMETRY_METHOD)) { g_object_set(ms_node->gst_element, param->origin_name, (int)strtol(param_value, NULL, 10), NULL); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_IS_LIVE_STREAM)) + } else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_IS_LIVE_STREAM) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_CLOCK_SYNCHRONIZED) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_VISIBLE)) { g_object_set(ms_node->gst_element, param->origin_name, !g_ascii_strcasecmp(param_value, "true"), NULL); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_URI)) { + } else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_URI)) { if (ms_node->type == MEDIA_STREAMER_NODE_TYPE_SRC && ms_node->subtype == MEDIA_STREAMER_NODE_SRC_TYPE_FILE) { ret = __ms_util_uri_path_check(param_value); if (ret != MEDIA_STREAMER_ERROR_NONE) return ret; } g_object_set(ms_node->gst_element, param->origin_name, param_value, NULL); - } else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_USER_AGENT)) + } else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_USER_AGENT) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_IP_ADDRESS) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_AUDIO_DEVICE) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_HOST) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_SEGMENT_LOCATION) || + !g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_PLAYLIST_LOCATION)) { g_object_set(ms_node->gst_element, param->origin_name, param_value, NULL); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_STREAM_TYPE)) - g_object_set(ms_node->gst_element, param->origin_name, (int)strtol(param_value, NULL, 10), NULL); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_PORT)) - g_object_set(ms_node->gst_element, param->origin_name, (int)strtol(param_value, NULL, 10), NULL); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_IP_ADDRESS)) - g_object_set(ms_node->gst_element, param->origin_name, param_value, NULL); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_AUDIO_DEVICE)) - g_object_set(ms_node->gst_element, param->origin_name, param_value, NULL); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_CLOCK_SYNCHRONIZED)) - g_object_set(ms_node->gst_element, param->origin_name, !g_ascii_strcasecmp(param_value, "true"), NULL); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_ROTATE)) - g_object_set(ms_node->gst_element, param->origin_name, (int)strtol(param_value, NULL, 10), NULL); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_FLIP)) - g_object_set(ms_node->gst_element, param->origin_name, (int)strtol(param_value, NULL, 10), NULL); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_DISPLAY_GEOMETRY_METHOD)) - g_object_set(ms_node->gst_element, param->origin_name, (int)strtol(param_value, NULL, 10), NULL); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_DISPLAY)) + } else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_DISPLAY)) { ret = __ms_node_set_display(ms_node, param_value); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_VISIBLE)) - g_object_set(ms_node->gst_element, param->origin_name, !g_ascii_strcasecmp(param_value, "true"), NULL); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_HOST)) - g_object_set(ms_node->gst_element, param->origin_name, param_value, NULL); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_SEGMENT_LOCATION)) - g_object_set(ms_node->gst_element, param->origin_name, param_value, NULL); - else if (!g_strcmp0(param->param_name, MEDIA_STREAMER_PARAM_PLAYLIST_LOCATION)) - g_object_set(ms_node->gst_element, param->origin_name, param_value, NULL); - else { + } else { ms_info("Can not set parameter [%s] in the node [%s]", param->param_name, ms_node->name); ret = MEDIA_STREAMER_ERROR_INVALID_PARAMETER; } -- 2.7.4