summaryrefslogtreecommitdiff
path: root/libdleyna/server/task.c
diff options
context:
space:
mode:
Diffstat (limited to 'libdleyna/server/task.c')
-rw-r--r--libdleyna/server/task.c84
1 files changed, 28 insertions, 56 deletions
diff --git a/libdleyna/server/task.c b/libdleyna/server/task.c
index 9f39929..1ad4108 100644
--- a/libdleyna/server/task.c
+++ b/libdleyna/server/task.c
@@ -46,6 +46,11 @@ static void prv_delete(dls_task_t *task)
g_free(task->ut.get_prop.interface_name);
g_free(task->ut.get_prop.prop_name);
break;
+ case DLS_TASK_MANAGER_SET_PROP:
+ g_free(task->ut.set_prop.interface_name);
+ g_free(task->ut.set_prop.prop_name);
+ g_variant_unref(task->ut.set_prop.params);
+ break;
case DLS_TASK_SEARCH:
g_free(task->ut.search.query);
if (task->ut.search.filter)
@@ -92,11 +97,6 @@ static void prv_delete(dls_task_t *task)
g_free(task->ut.get_icon.resolution);
g_free(task->ut.get_icon.mime_type);
break;
- case DLS_TASK_WHITE_LIST_ADD_ENTRIES:
- case DLS_TASK_WHITE_LIST_REMOVE_ENTRIES:
- if (task->ut.white_list.entries)
- g_variant_unref(task->ut.white_list.entries);
- break;
default:
break;
}
@@ -146,57 +146,6 @@ dls_task_t *dls_task_get_servers_new(dleyna_connector_msg_id_t invocation)
return task;
}
-dls_task_t *dls_task_wl_enable_new(dleyna_connector_msg_id_t invocation,
- GVariant *parameters)
-{
- dls_task_t *task = g_new0(dls_task_t, 1);
-
- task->type = DLS_TASK_WHITE_LIST_ENABLE;
- task->invocation = invocation;
- task->synchronous = TRUE;
- g_variant_get(parameters, "(b)",
- &task->ut.white_list.enabled);
-
- return task;
-}
-
-dls_task_t *dls_task_wl_clear_new(dleyna_connector_msg_id_t invocation)
-{
- dls_task_t *task = g_new0(dls_task_t, 1);
-
- task->type = DLS_TASK_WHITE_LIST_CLEAR;
- task->invocation = invocation;
- task->synchronous = TRUE;
-
- return task;
-}
-
-dls_task_t *dls_task_wl_add_entries_new(dleyna_connector_msg_id_t invocation,
- GVariant *parameters)
-{
- dls_task_t *task = g_new0(dls_task_t, 1);
-
- task->type = DLS_TASK_WHITE_LIST_ADD_ENTRIES;
- task->invocation = invocation;
- task->synchronous = TRUE;
- g_variant_get(parameters, "(@as)", &task->ut.white_list.entries);
-
- return task;
-}
-
-dls_task_t *dls_task_wl_remove_entries_new(dleyna_connector_msg_id_t invocation,
- GVariant *parameters)
-{
- dls_task_t *task = g_new0(dls_task_t, 1);
-
- task->type = DLS_TASK_WHITE_LIST_REMOVE_ENTRIES;
- task->invocation = invocation;
- task->synchronous = TRUE;
- g_variant_get(parameters, "(@as)", &task->ut.white_list.entries);
-
- return task;
-}
-
dls_task_t *dls_task_manager_get_prop_new(dleyna_connector_msg_id_t invocation,
const gchar *path,
GVariant *parameters,
@@ -237,6 +186,29 @@ dls_task_t *dls_task_manager_get_props_new(dleyna_connector_msg_id_t invocation,
return task;
}
+dls_task_t *dls_task_manager_set_prop_new(dleyna_connector_msg_id_t invocation,
+ const gchar *path,
+ GVariant *parameters,
+ GError **error)
+{
+ dls_task_t *task = (dls_task_t *)g_new0(dls_async_task_t, 1);
+
+ g_variant_get(parameters, "(ssv)",
+ &task->ut.set_prop.interface_name,
+ &task->ut.set_prop.prop_name,
+ &task->ut.set_prop.params);
+
+ g_strstrip(task->ut.set_prop.interface_name);
+ g_strstrip(task->ut.set_prop.prop_name);
+
+ task->target.path = g_strstrip(g_strdup(path));
+
+ task->type = DLS_TASK_MANAGER_SET_PROP;
+ task->invocation = invocation;
+
+ return task;
+}
+
static gboolean prv_set_task_target_info(dls_task_t *task, const gchar *path,
GError **error)
{