22 MCL_DEBUG_ENTRY(
"E_MCL_DATA_SOURCE_CONFIGURATION_VERSION version = <%d>, mcl_data_source_configuration_t **data_source_configuration = <%p>",
23 version, data_source_configuration);
30 "Invalid data source configuration version parameter.");
37 (*data_source_configuration)->item_base.version = (
mcl_uint32_t)version;
41 MCL_NEW((*data_source_configuration)->payload);
44 if ((
MCL_NULL != (*data_source_configuration)) && (
MCL_NULL != (*data_source_configuration)->payload))
47 (*data_source_configuration)->payload->configuration_id =
MCL_NULL;
73 MCL_DEBUG_ENTRY(
"mcl_data_source_configuration_t *data_source_configuration = <%p>, "\
74 "E_MCL_DATA_SOURCE_CONFIGURATION_PARAMETER parameter = <%d>, const void *value = <%p>", data_source_configuration, parameter, value);
98 MCL_DEBUG_ENTRY(
"mcl_data_source_configuration_t *data_source_configuration = <%p>, mcl_data_source_t *data_source = <%p>",
99 data_source_configuration, data_source);
106 code =
mcl_list_add(data_source_configuration->payload->data_sources, data_source);
119 MCL_DEBUG_ENTRY(
"data_source_configuration_t *data_source_configuration = <%p>", data_source_configuration);
127 else if (0 == data_sources->
count)
138 for (index = 0; (index < data_sources->
count) && (
MCL_OK == code); ++index)
157 MCL_DEBUG_ENTRY(
"mcl_data_source_configuration_t **data_source_configuration = <%p>", data_source_configuration);
160 if ((
MCL_NULL != data_source_configuration) && (
MCL_NULL != *data_source_configuration))
162 if (
MCL_NULL != (*data_source_configuration)->payload)
165 MCL_FREE((*data_source_configuration)->payload->configuration_id);
167 MCL_FREE((*data_source_configuration)->payload);
170 MCL_FREE(*data_source_configuration);
E_MCL_DATA_SOURCE_CONFIGURATION_PARAMETER
#define MCL_FUNCTION_LEAVE_LABEL
Data source configuration module header file.
mcl_error_t mcl_data_source_configuration_add_data_source(mcl_data_source_configuration_t *data_source_configuration, mcl_data_source_t *data_source)
Item type data source configuration.
struct mcl_data_source_configuration_t mcl_data_source_configuration_t
struct mcl_data_source_t mcl_data_source_t
MCL_CORE_EXPORT mcl_error_t mcl_string_util_reset(const void *value, char **target)
#define MCL_DEBUG_ENTRY(...)
mcl_error_t data_source_configuration_validate(data_source_configuration_t *data_source_configuration)
void(* mcl_list_item_destroy_callback)(void **item)
Data source configuration module interface header file.
MCL_CORE_EXPORT mcl_error_t mcl_list_next(mcl_list_t *list, mcl_list_node_t **node)
#define MCL_ERROR_STRING(string)
Data source configuration ID parameter as char*.
#define MCL_ASSERT_CODE_MESSAGE(condition, return_code,...)
const char * mcl_data_source_configuration_versions[MCL_DATA_SOURCE_CONFIGURATION_END]
MCL_CONNECTIVITY_EXPORT void mcl_data_source_destroy(mcl_data_source_t **data_source)
MCL_CORE_EXPORT mcl_error_t mcl_list_add(mcl_list_t *list, void *data)
MCL_CORE_EXPORT void mcl_list_destroy_with_content(mcl_list_t **list, mcl_list_item_destroy_callback callback)
data_source_configuration_payload_t * payload
E_MCL_DATA_SOURCE_CONFIGURATION_VERSION
mcl_error_t mcl_data_source_configuration_initialize(E_MCL_DATA_SOURCE_CONFIGURATION_VERSION version, mcl_data_source_configuration_t **data_source_configuration)
#define MCL_ASSERT_NOT_NULL(argument, return_variable)
mcl_error_t data_source_validate(data_source_t *data_source)
void mcl_data_source_configuration_destroy(mcl_data_source_configuration_t **data_source_configuration)
MCL_CORE_EXPORT void mcl_list_reset(mcl_list_t *list)
#define MCL_ITEM_PREAMBLE
MCL_CORE_EXPORT mcl_error_t mcl_list_initialize(mcl_list_t **list)
mcl_list_t * data_sources
List of data sources definitions.
End of data source configuration version.
#define MCL_DEBUG_LEAVE(...)
char * configuration_id
Unique identifier of the configuration.
mcl_error_t mcl_data_source_configuration_set_parameter(mcl_data_source_configuration_t *data_source_configuration, E_MCL_DATA_SOURCE_CONFIGURATION_PARAMETER parameter, const void *value)