sink.text.details: add `with-data` initialization parameter
[babeltrace.git] / src / plugins / text / details / details.c
index 37951910138eb330c402e7efbc213bfb233c90de..9c45e39e4bacbaaf95ed0fc87b84ee3294b29267 100644 (file)
@@ -23,7 +23,7 @@
 #define BT_COMP_LOG_SELF_COMP (details_comp->self_comp)
 #define BT_LOG_OUTPUT_LEVEL (details_comp->log_level)
 #define BT_LOG_TAG "PLUGIN/SINK.TEXT.DETAILS"
-#include "plugins/comp-logging.h"
+#include "logging/comp-logging.h"
 
 #include <babeltrace2/babeltrace.h>
 
@@ -51,10 +51,10 @@ static
 const char * const with_metadata_param_name = "with-metadata";
 
 static
-const char * const with_time_param_name = "with-time";
+const char * const with_data_param_name = "with-data";
 
 static
-const char * const with_trace_class_name_param_name = "with-trace-class-name";
+const char * const with_time_param_name = "with-time";
 
 static
 const char * const with_trace_name_param_name = "with-trace-name";
@@ -139,9 +139,11 @@ void destroy_details_comp(struct details_comp *details_comp)
 
                        if (details_tc_meta->tc_destruction_listener_id !=
                                        UINT64_C(-1)) {
-                               bt_trace_class_remove_destruction_listener(
-                                       (const void *) key,
-                                       details_tc_meta->tc_destruction_listener_id);
+                               if (bt_trace_class_remove_destruction_listener(
+                                               (const void *) key,
+                                               details_tc_meta->tc_destruction_listener_id)) {
+                                       bt_current_thread_clear_error();
+                               }
                        }
                }
 
@@ -160,9 +162,11 @@ void destroy_details_comp(struct details_comp *details_comp)
                while (g_hash_table_iter_next(&iter, &key, &value)) {
                        struct details_trace *details_trace = value;
 
-                       bt_trace_remove_destruction_listener(
-                               (const void *) key,
-                               details_trace->trace_destruction_listener_id);
+                       if (bt_trace_remove_destruction_listener(
+                                       (const void *) key,
+                                       details_trace->trace_destruction_listener_id)) {
+                               bt_current_thread_clear_error();
+                       }
                }
 
                g_hash_table_destroy(details_comp->traces);
@@ -304,6 +308,13 @@ int configure_details_comp(struct details_comp *details_comp,
                goto error;
        }
 
+       /* With data objects? */
+       ret = configure_bool_opt(details_comp, params, with_data_param_name,
+               true, &details_comp->cfg.with_data);
+       if (ret) {
+               goto error;
+       }
+
        /* Compact? */
        ret = configure_bool_opt(details_comp, params, compact_param_name,
                false, &details_comp->cfg.compact);
@@ -318,14 +329,6 @@ int configure_details_comp(struct details_comp *details_comp,
                goto error;
        }
 
-       /* With trace class name? */
-       ret = configure_bool_opt(details_comp, params,
-               with_trace_class_name_param_name,
-               true, &details_comp->cfg.with_trace_class_name);
-       if (ret) {
-               goto error;
-       }
-
        /* With trace name? */
        ret = configure_bool_opt(details_comp, params,
                with_trace_name_param_name,
@@ -377,8 +380,6 @@ void log_configuration(bt_self_component_sink *comp,
        BT_COMP_LOGI("  Compact: %d", details_comp->cfg.compact);
        BT_COMP_LOGI("  With metadata: %d", details_comp->cfg.with_meta);
        BT_COMP_LOGI("  With time: %d", details_comp->cfg.with_time);
-       BT_COMP_LOGI("  With trace class name: %d",
-               details_comp->cfg.with_trace_class_name);
        BT_COMP_LOGI("  With trace name: %d", details_comp->cfg.with_trace_name);
        BT_COMP_LOGI("  With stream class name: %d",
                details_comp->cfg.with_stream_class_name);
@@ -443,8 +444,9 @@ BT_HIDDEN
 bt_component_class_sink_graph_is_configured_method_status
 details_graph_is_configured(bt_self_component_sink *comp)
 {
-       bt_component_class_sink_graph_is_configured_method_status status =
-               BT_COMPONENT_CLASS_SINK_GRAPH_IS_CONFIGURED_METHOD_STATUS_OK;
+       bt_component_class_sink_graph_is_configured_method_status status;
+       bt_self_component_port_input_message_iterator_create_from_sink_component_status
+               msg_iter_status;
        bt_self_component_port_input_message_iterator *iterator;
        struct details_comp *details_comp;
        bt_self_component_port_input *in_port;
@@ -462,17 +464,19 @@ details_graph_is_configured(bt_self_component_sink *comp)
                goto end;
        }
 
-       iterator = bt_self_component_port_input_message_iterator_create(
-               bt_self_component_sink_borrow_input_port_by_name(comp,
-                       in_port_name));
-       if (!iterator) {
-               status = BT_COMPONENT_CLASS_SINK_GRAPH_IS_CONFIGURED_METHOD_STATUS_MEMORY_ERROR;
+       msg_iter_status = bt_self_component_port_input_message_iterator_create_from_sink_component(
+               comp, bt_self_component_sink_borrow_input_port_by_name(comp,
+                       in_port_name), &iterator);
+       if (msg_iter_status != BT_SELF_COMPONENT_PORT_INPUT_MESSAGE_ITERATOR_CREATE_FROM_SINK_COMPONENT_STATUS_OK) {
+               status = (int) msg_iter_status;
                goto end;
        }
 
        BT_SELF_COMPONENT_PORT_INPUT_MESSAGE_ITERATOR_MOVE_REF(
                details_comp->msg_iter, iterator);
 
+       status = BT_COMPONENT_CLASS_SINK_GRAPH_IS_CONFIGURED_METHOD_STATUS_OK;
+
 end:
        return status;
 }
This page took 0.027932 seconds and 4 git commands to generate.