Skip to content
Snippets Groups Projects
Verified Commit 68041f58 authored by Alberto Miranda's avatar Alberto Miranda :hotsprings:
Browse files

ADM_qos_entity_create() now accepts a void* rather than ...

parent 765dc772
No related branches found
No related tags found
1 merge request!30Resolve "Refactor library RPC implementation of `admire::transfer_dataset`"
......@@ -460,13 +460,13 @@ ADM_pfs_context_destroy(ADM_pfs_context_t ctx);
*
* @param[in] scope The scope of the entity, i.e. ADM_QOS_SCOPE_DATASET,
* ADM_QOS_SCOPE_NODE, or ADM_QOS_SCOPE_JOB.
* @param[in] ... A single argument with data from either a ADM_dataset_t,
* @param[in] data A single argument with data from either a ADM_dataset_t,
* ADM_node_t, or ADM_job_t variable. The argument must correspond properly
* to the scope provided.
* @return A valid ADM_qos_entity_t if successful or NULL in case of failure.
*/
ADM_qos_entity_t
ADM_qos_entity_create(ADM_qos_scope_t scope, ...);
ADM_qos_entity_create(ADM_qos_scope_t scope, void* data);
/**
* Destroy a QoS entity created by ADM_qos_entity_create().
......
......@@ -159,7 +159,7 @@ ADM_dataset_destroy(ADM_dataset_t dataset) {
}
ADM_qos_entity_t
ADM_qos_entity_create(ADM_qos_scope_t scope, ...) {
ADM_qos_entity_create(ADM_qos_scope_t scope, void* data) {
struct adm_qos_entity* adm_qos_entity =
(struct adm_qos_entity*) malloc(sizeof(struct adm_qos_entity));
......@@ -171,23 +171,19 @@ ADM_qos_entity_create(ADM_qos_scope_t scope, ...) {
adm_qos_entity->e_scope = scope;
va_list ap;
va_start(ap, scope);
switch(scope) {
case ADM_QOS_SCOPE_NODE:
adm_qos_entity->e_node = va_arg(ap, ADM_node_t);
adm_qos_entity->e_node = (ADM_node_t) data;
break;
case ADM_QOS_SCOPE_JOB:
adm_qos_entity->e_job = va_arg(ap, ADM_job_t);
adm_qos_entity->e_job = (ADM_job_t) data;
break;
case ADM_QOS_SCOPE_DATASET:
adm_qos_entity->e_dataset = va_arg(ap, ADM_dataset_t);
adm_qos_entity->e_dataset = (ADM_dataset_t) data;
break;
case ADM_QOS_SCOPE_TRANSFER:
adm_qos_entity->e_transfer = va_arg(ap, ADM_transfer_t);
adm_qos_entity->e_transfer = (ADM_transfer_t) data;
}
va_end(ap);
return adm_qos_entity;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment