mcl_data_lake.h File Reference

Data lake interface header file. More...

Include dependency graph for mcl_data_lake.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

typedef struct mcl_data_lake_t mcl_data_lake_t
 

Functions

MCL_DATA_LAKE_EXPORT mcl_error_t mcl_data_lake_initialize (mcl_data_lake_configuration_t *configuration, mcl_data_lake_t **data_lake)
 
MCL_DATA_LAKE_EXPORT mcl_error_t mcl_data_lake_generate_upload_url (mcl_data_lake_t *data_lake, mcl_data_lake_object_t *object)
 
MCL_DATA_LAKE_EXPORT mcl_error_t mcl_data_lake_generate_upload_urls (mcl_data_lake_t *data_lake, mcl_list_t *object_list)
 
MCL_DATA_LAKE_EXPORT mcl_error_t mcl_data_lake_generate_upload_url_for_subtenant (mcl_data_lake_t *data_lake, mcl_data_lake_object_t *object, const char *subtenant_id)
 
MCL_DATA_LAKE_EXPORT mcl_error_t mcl_data_lake_generate_upload_urls_for_subtenant (mcl_data_lake_t *data_lake, mcl_list_t *object_list, const char *subtenant_id)
 
MCL_DATA_LAKE_EXPORT mcl_error_t mcl_data_lake_upload (mcl_data_lake_t *data_lake, mcl_data_lake_object_t *object)
 
MCL_DATA_LAKE_EXPORT void mcl_data_lake_destroy (mcl_data_lake_t **data_lake)
 

Detailed Description

Data lake interface header file.

Agents can store structured or unstructured data in MindSphere Data Lake using MCL's data lake component.

This module enables the agent to initialize a data structure for MCL data lake component using mcl_data_lake_initialize function. Following initialization, a signed URL to upload data to can be generated using #mcl_data_lake_get_upload_url, mcl_data_lake_generate_upload_urls, mcl_data_lake_generate_upload_url_for_subtenant or mcl_data_lake_generate_upload_urls_for_subtenant functions. Then, data lake object can be uploaded to the signed URL using mcl_data_lake_upload function.

Data structure for the data lake component is destroyed using mcl_data_lake_destroy funtion.

Definition in file mcl_data_lake.h.

Typedef Documentation

Handle for data lake.

Definition at line 34 of file mcl_data_lake.h.

Function Documentation

MCL_DATA_LAKE_EXPORT void mcl_data_lake_destroy ( mcl_data_lake_t **  data_lake)

This function destroys data lake structure.

Parameters
[in]data_lakeData lake handle which is going to be destroyed.

Definition at line 239 of file data_lake.c.

References MCL_DEBUG_ENTRY, MCL_DEBUG_LEAVE, MCL_FREE, and MCL_NULL.

Referenced by mcl_data_lake_initialize().

Here is the caller graph for this function:

MCL_DATA_LAKE_EXPORT mcl_error_t mcl_data_lake_generate_upload_url ( mcl_data_lake_t data_lake,
mcl_data_lake_object_t object 
)

This function gets the signed URL to upload data to.

Parameters
[in]data_lakeData lake handle.
[in]objectData lake object.
Returns

Definition at line 71 of file data_lake.c.

References data_lake_processor_generate_upload_url(), mcl_core_get_last_access_token(), MCL_DEBUG_ENTRY, MCL_DEBUG_LEAVE, MCL_ERROR, MCL_FREE, MCL_NULL, MCL_OK, and MCL_TRIGGERED_WITH_NULL.

Here is the call graph for this function:

MCL_DATA_LAKE_EXPORT mcl_error_t mcl_data_lake_generate_upload_url_for_subtenant ( mcl_data_lake_t data_lake,
mcl_data_lake_object_t object,
const char *  subtenant_id 
)

This function gets the signed URL for subtenant to upload data to.

Parameters
[in]data_lakeData lake handle.
[in]objectData lake object.
[in]subtenant_idSubtenant ID.
Returns

Definition at line 141 of file data_lake.c.

References data_lake_processor_generate_upload_url(), mcl_core_get_last_access_token(), MCL_DEBUG_ENTRY, MCL_DEBUG_LEAVE, MCL_ERROR, MCL_FREE, MCL_NULL, MCL_OK, and MCL_TRIGGERED_WITH_NULL.

Here is the call graph for this function:

MCL_DATA_LAKE_EXPORT mcl_error_t mcl_data_lake_generate_upload_urls ( mcl_data_lake_t data_lake,
mcl_list_t object_list 
)

This function gets the signed URLs for a list of objects to upload data to.

Parameters
[in]data_lakeData lake handle.
[in]object_listList of data lake objects.
Returns

Definition at line 106 of file data_lake.c.

References data_lake_processor_generate_upload_urls(), mcl_core_get_last_access_token(), MCL_DEBUG_ENTRY, MCL_DEBUG_LEAVE, MCL_ERROR, MCL_FREE, MCL_NULL, MCL_OK, and MCL_TRIGGERED_WITH_NULL.

Here is the call graph for this function:

MCL_DATA_LAKE_EXPORT mcl_error_t mcl_data_lake_generate_upload_urls_for_subtenant ( mcl_data_lake_t data_lake,
mcl_list_t object_list,
const char *  subtenant_id 
)

This function gets the signed URLs for subtenant for a list of objects to upload data to.

Parameters
[in]data_lakeData lake handle.
[in]object_listList of data lake objects.
[in]subtenant_idSubtenant ID.
Returns

Definition at line 176 of file data_lake.c.

References data_lake_processor_generate_upload_urls(), mcl_core_get_last_access_token(), MCL_DEBUG_ENTRY, MCL_DEBUG_LEAVE, MCL_ERROR, MCL_FREE, MCL_NULL, MCL_OK, and MCL_TRIGGERED_WITH_NULL.

Here is the call graph for this function:

MCL_DATA_LAKE_EXPORT mcl_error_t mcl_data_lake_initialize ( mcl_data_lake_configuration_t configuration,
mcl_data_lake_t **  data_lake 
)

This function creates and initializes a data structure of type mcl_data_lake_t.

Parameters
[in]configurationData structure holding data lake configuration parameters.
[out]data_lakeData lake handle which is going to be initialized.
Returns

Definition at line 15 of file data_lake.c.

References data_lake_configuration_validate(), MCL_ASSERT_NOT_NULL, mcl_core_get_client_id(), mcl_core_get_http_client(), mcl_data_lake_destroy(), MCL_DEBUG_ENTRY, MCL_DEBUG_LEAVE, MCL_FUNCTION_LEAVE_LABEL, mcl_http_client_add_certificate(), MCL_NEW, MCL_NULL, MCL_OK, and MCL_OUT_OF_MEMORY.

Here is the call graph for this function:

MCL_DATA_LAKE_EXPORT mcl_error_t mcl_data_lake_upload ( mcl_data_lake_t data_lake,
mcl_data_lake_object_t object 
)

This function uploads data object to the signed URL.

Parameters
[in]data_lakeData lake handle.
[in]objectData lake object.
Returns

Definition at line 211 of file data_lake.c.

References data_lake_processor_upload(), MCL_DEBUG_ENTRY, MCL_DEBUG_LEAVE, MCL_ERROR, MCL_NULL, MCL_OK, and MCL_TRIGGERED_WITH_NULL.

Here is the call graph for this function: