3 * Copyright (c) 2012 Samsung Electronics Co., Ltd.
5 * Licensed under the Apache License, Version 2.0 (the License);
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
9 * http://www.apache.org/licenses/LICENSE-2.0
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
22 #include <sync_agent.h>
25 #include "framework/task/oma_dm_task_request.h"
26 #include "framework/task/oma_dm_task_spec.h"
28 #ifndef OMADM_AGENT_LOG
30 #define LOG_TAG "TASK_SPEC"
33 DM_ERROR dm_init_task_request()
37 int request_msg_id = -1;
38 /*sync_agent_ec_task_error_e task_error = SYNC_AGENT_EC_TASK_ERROR_NOT_YET_RUN; */
40 _DEBUG_INFO(" calling initt_async_request_task\n");
41 sync_agent_request_async_task(EC_MSG_TYPE_DM_INIT_TASK_REQUEST, 0, 0, NULL, NULL, NULL, NULL, NULL, &request_msg_id);
43 _DEBUG_INFO(" init_async_request_task done: %d", request_msg_id);
44 if (request_msg_id == -1) {
46 return DM_ERR_ASYNC_TASK;
52 DM_ERROR dm_reset_task_request()
56 int request_msg_id = -1;
57 /*sync_agent_ec_task_error_e task_error = SYNC_AGENT_EC_TASK_ERROR_NOT_YET_RUN; */
59 _DEBUG_INFO(" calling reset_async_request_task\n");
60 sync_agent_request_async_task(EC_MSG_TYPE_DM_RESET_TASK_REQUEST, 0, 0, NULL, NULL, NULL, NULL, NULL, &request_msg_id);
62 _DEBUG_INFO(" reset_async_request_task: %d", request_msg_id);
63 if (request_msg_id == -1) {
65 return DM_ERR_ASYNC_TASK;
71 DM_ERROR bootstrap_task_request()
75 int bootstrapType = 0;
76 void *in_param_value_array[1] = { &bootstrapType };
77 int in_param_index_array[1] = { 0 };
78 sync_agent_ec_value_type_e in_param_value_type_array[1] = { SYNC_AGENT_EC_VALUE_TYPE_INT };
79 int request_msg_id = -1;
80 /*sync_agent_ec_task_error_e task_error = SYNC_AGENT_EC_TASK_ERROR_NOT_YET_RUN; */
82 _DEBUG_INFO(" calling bootstrap_async_request_task\n");
84 sync_agent_request_async_task(EC_MSG_TYPE_BOOTSTRAP_TASK_REQUEST, 0, 1, in_param_index_array, in_param_value_type_array, in_param_value_array, NULL, NULL, &request_msg_id);
86 _DEBUG_INFO(" bootstrap_async_request_task done: %d", request_msg_id);
87 if (request_msg_id == -1) {
89 return DM_ERR_ASYNC_TASK;
95 DM_ERROR dm_fumo_common_task_request(Event_Contents * pEvent_data)
100 void *in_param_value_array[1] = { &pEvent_data };
101 int in_param_index_array[1] = { 0 };
102 sync_agent_ec_value_type_e in_param_value_type_array[1] = { SYNC_AGENT_EC_VALUE_TYPE_STRUCT };
104 int request_msg_id = -1;
105 /*sync_agent_ec_task_error_e task_error = SYNC_AGENT_EC_TASK_ERROR_NOT_YET_RUN; */
107 _DEBUG_INFO(" calling common_async_request_task\n");
109 sync_agent_request_async_task(EC_MSG_TYPE_DM_FUMO_COMMON_TASK_REQUEST, 0, 1, in_param_index_array, in_param_value_type_array, in_param_value_array, NULL, NULL, &request_msg_id);
111 _DEBUG_INFO(" common_async_request_task done : %d", request_msg_id);
113 if (request_msg_id == -1) {
115 return DM_ERR_ASYNC_TASK;
121 DM_ERROR dm_fumo_ui_task_request(Event_Contents * pEvent_data)
125 void *in_param_value_array[1] = { &pEvent_data };
126 int in_param_index_array[1] = { 0 };
127 sync_agent_ec_value_type_e in_param_value_type_array[1] = { SYNC_AGENT_EC_VALUE_TYPE_STRUCT };
129 int request_msg_id = -1;
130 /*sync_agent_ec_task_error_e task_error = SYNC_AGENT_EC_TASK_ERROR_NOT_YET_RUN; */
132 _DEBUG_INFO(" calling common_async_request_task\n");
134 sync_agent_request_async_task(EC_MSG_TYPE_DM_FUMO_UI_TASK_REQUEST, 0, 1, in_param_index_array, in_param_value_type_array, in_param_value_array, NULL, NULL, &request_msg_id);
136 _DEBUG_INFO(" common_async_request_task done: %d", request_msg_id);
137 if (request_msg_id == -1) {
139 return DM_ERR_ASYNC_TASK;
145 DM_ERROR dm_lawmo_common_task_request(Event_Contents * pEvent_data)
149 void *in_param_value_array[1] = { &pEvent_data };
150 int in_param_index_array[1] = { 0 };
151 sync_agent_ec_value_type_e in_param_value_type_array[1] = { SYNC_AGENT_EC_VALUE_TYPE_STRUCT };
153 int request_msg_id = -1;
154 /*sync_agent_ec_task_error_e task_error = SYNC_AGENT_EC_TASK_ERROR_NOT_YET_RUN; */
156 _DEBUG_INFO(" calling common_async_request_task\n");
158 sync_agent_request_async_task(EC_MSG_TYPE_DM_LAWMO_COMMON_TASK_REQUEST, 0, 1, in_param_index_array, in_param_value_type_array, in_param_value_array, NULL, NULL, &request_msg_id);
160 _DEBUG_INFO(" common_async_request_task done: %d", request_msg_id);
161 if (request_msg_id == -1) {
163 return DM_ERR_ASYNC_TASK;
170 DM_ERROR genericAlert_task_request()
174 int request_msg_id = -1;
175 /*sync_agent_ec_task_error_e task_error = SYNC_AGENT_EC_TASK_ERROR_NOT_YET_RUN; */
177 _DEBUG_INFO(" calling generic_async_request_task\n");
178 sync_agent_request_async_task(EC_MSG_TYPE_GENERICALERT_TASK_REQUEST, 0, 0, NULL, NULL, NULL, NULL, NULL, &request_msg_id);
180 _DEBUG_INFO(" generic_async_request_task done: %d", request_msg_id);
181 if (request_msg_id == -1) {
183 return DM_ERR_ASYNC_TASK;
190 DM_ERROR fumo_serviceEngine_task_request()
194 int request_msg_id = -1;
195 /*sync_agent_ec_task_error_e task_error = SYNC_AGENT_EC_TASK_ERROR_NOT_YET_RUN; */
197 _DEBUG_INFO(" calling service_engine_async_request_task\n");
198 sync_agent_request_async_task(EC_MSG_TYPE_FUMO_SERVICE_ENGINE_TASK_REQUEST, 0, 0, NULL, NULL, NULL, NULL, NULL, &request_msg_id);
200 _DEBUG_INFO(" service_engine_async_request_task done: %d", request_msg_id);
201 if (request_msg_id == -1) {
203 return DM_ERR_ASYNC_TASK;
209 DM_ERROR lawmo_serviceEngine_task_request()
213 int request_msg_id = -1;
214 /*sync_agent_ec_task_error_e task_error = SYNC_AGENT_EC_TASK_ERROR_NOT_YET_RUN; */
216 _DEBUG_INFO(" calling service_engine_async_request_task\n");
217 sync_agent_request_async_task(EC_MSG_TYPE_LAWMO_SERVICE_ENGINE_TASK_REQUEST, 0, 0, NULL, NULL, NULL, NULL, NULL, &request_msg_id);
219 _DEBUG_INFO(" service_engine_async_request_task done: %d", request_msg_id);
220 if (request_msg_id == -1) {
222 return DM_ERR_ASYNC_TASK;
228 DM_ERROR fumo_schedule_task_request(Reminder_Interval remider_interval_type)
232 DM_ERROR ret = DM_OK;
233 void *in_param_value_array[1] = { &remider_interval_type };
234 int in_param_index_array[1] = { 0 };
235 sync_agent_ec_value_type_e in_param_value_type_array[1] = { SYNC_AGENT_EC_VALUE_TYPE_INT };
236 int request_msg_id = -1;
237 sync_agent_ec_task_error_e task_error = SYNC_AGENT_EC_TASK_ERROR_NOT_YET_RUN;
238 sync_agent_ec_uint out_param_cnt = 0;
239 sync_agent_ec_param_param_s **out_param_array = NULL;
241 _DEBUG_INFO(" calling fumo_schedule_sync_request_task\n");
243 sync_agent_request_sync_task(EC_MSG_TYPE_FUMO_SCHEDULE_TASK_REQUEST, 0, 1, in_param_index_array, in_param_value_type_array, in_param_value_array, &request_msg_id, &task_error, &out_param_cnt, &out_param_array);
245 _DEBUG_INFO(" fumo_schedule_sync_request_task done: %d", request_msg_id);
247 sync_agent_get_param_value(&(out_param_array[0]->param_value), SYNC_AGENT_EC_VALUE_TYPE_INT, &ret);
249 if (request_msg_id == -1) {
251 return DM_ERR_ASYNC_TASK;
258 void cancel_task(int task_id)
262 sync_agent_cancel_task(task_id);