upload tizen1.0 source
[pkgs/o/oma-ds-service.git] / include / Framework / Task / OMA_DS_Engine_Controller_Task.h
1 /*
2  * oma-ds-service
3  *
4  * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
5  *
6  * Contact: JuHak Park <juhaki.park@samsung.com>,
7  *          JuneHyuk Lee <junhyuk7.lee@samsung.com>,
8  *          SunBong Ha <sunbong.ha@samsung.com>
9  *
10  * Licensed under the Apache License, Version 2.0 (the "License");
11  * you may not use this file except in compliance with the License.
12  * You may obtain a copy of the License at
13  *
14  * http://www.apache.org/licenses/LICENSE-2.0
15  *
16  * Unless required by applicable law or agreed to in writing, software
17  * distributed under the License is distributed on an "AS IS" BASIS,
18  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19  * See the License for the specific language governing permissions and
20  * limitations under the License.
21  *
22  */
23
24
25
26
27
28 /*
29  * For any sort of issue you concern as to this software,
30  * you may use following point of contact.
31  * All resources contributed on this software
32  * are orinigally written by S-Core Inc., a member of Samsung Group.
33  *
34  * SeongWon Shim <seongwon.shim@samsung.com>
35  */
36
37 /**
38  *   @OMA_DS_Engine_Controller_Task.h
39  *   @version                                                                   0.1
40  *   @brief                                                                             This file is the header file of registration function for using Engine Controller
41  */
42
43 #ifndef ENGINE_CONTROLLER_TASK_H_
44 #define ENGINE_CONTROLLER_TASK_H_
45
46 #include <stdio.h>
47 #include "agent-framework/EngineController/engine_controller.h"
48 #include "agent-framework/EngineController/task_spec.h"
49 #include "agent-framework/EngineController/queuing_rule_spec.h"
50
51
52 #define SYNC_MODE_MANUAL                0
53 #define SYNC_MODE_PERIODIC              1
54 #define SYNC_MODE_SAN                           2
55 #define SYNC_MODE_AUTOCONFIG    3
56
57 typedef struct request_msg_info_s request_msg_info_t;
58 struct request_msg_info_s {
59         int sync_type;
60         unsigned int request_id;
61 };
62
63 /*TODO have to be removed after removing vconf*/
64 #define EC_MSG_TYPE_SYNC_TASK_ADD_ACCOUNT       2
65 #define EC_MSG_TYPE_NAME_SYNC_TASK_ADD_ACCOUNT  "add_account"
66 #define EC_MSG_TYPE_SYNC_TASK_EDIT_ACCOUNT      3
67 #define EC_MSG_TYPE_NAME_SYNC_TASK_EDIT_ACCOUNT "edit_account"
68 #define EC_MSG_TYPE_SYNC_TASK_AUTOCONFIGURE             6
69 #define EC_MSG_TYPE_NAME_SYNC_TASK_AUTOCONFIGURE                "auto_configure"
70
71
72
73 #define EC_MSG_TYPE_SYNC_TASK_REQUEST           1
74 #define EC_MSG_TYPE_NAME_SYNC_TASK_REQUEST      "sync_request"
75 #define EC_MSG_TYPE_SYNC_TASK_ADD_PROFILE       15                                      /*2*/
76 #define EC_MSG_TYPE_NAME_SYNC_TASK_ADD_PROFILE                  "add_profile"
77 #define EC_MSG_TYPE_SYNC_TASK_EDIT_PROFILE      16                              /*3*/
78 #define EC_MSG_TYPE_NAME_SYNC_TASK_EDIT_PROFILE         "edit_profile"
79 #define EC_MSG_TYPE_SYNC_TASK_DELETE_PROFILE    4
80 #define EC_MSG_TYPE_NAME_SYNC_TASK_DELETE_PROFILE       "delete_profile"
81 #define EC_MSG_TYPE_SAN_TASK_REQUEST                                    5
82 #define EC_MSG_TYPE_NAME_SAN_TASK_REQUEST               "SAN_request"
83 #define EC_MSG_TYPE_SYNC_TASK_AUTO_CONFIGURE            17              /*6*/
84 #define EC_MSG_TYPE_NAME_SYNC_TASK_AUTO_CONFIGURE               "auto_configure"
85 #define EC_MSG_TYPE_SYNC_TASK_SYNCSTATUS                        7
86 #define EC_MSG_TYPE_NAME_SYNC_TASK_SYNCSTATUS                           "sync_status"
87 #define EC_MSG_TYPE_SYNC_TASK_GET_PROFILE_NAME                  8
88 #define EC_MSG_TYPE_NAME_SYNC_TASK_GET_PROFILE_NAME             "get_profile_name"
89 #define EC_MSG_TYPE_SYNC_TASK_GET_PROFILE_SERVER_INFO                   9
90 #define EC_MSG_TYPE_NAME_SYNC_TASK_GET_PROFILE_SERVER_INFO              "get_profile_server_info"
91 #define EC_MSG_TYPE_SYNC_TASK_GET_PROFILE_SYNC_MODE                     10
92 #define EC_MSG_TYPE_NAME_SYNC_TASK_GET_PROFILE_SYNC_MODE                "get_profile_sync_mode"
93 #define EC_MSG_TYPE_SYNC_TASK_GET_PROFILE_SYNC_CATEGORY         11
94 #define EC_MSG_TYPE_NAME_SYNC_TASK_GET_PROFILE_SYNC_CATEGORY    "get_profile_sync_category"
95 #define EC_MSG_TYPE_SYNC_TASK_GET_PROFILE_LAST_SESSION                  12
96 #define EC_MSG_TYPE_NAME_SYNC_TASK_GET_PROFILE_LAST_SESSION                             "get_profile_last_session"
97 #define EC_MSG_TYPE_SYNC_TASK_GET_PROFILE_STATISTICS                    13
98 #define EC_MSG_TYPE_NAME_SYNC_TASK_GET_PROFILE_STATISTICS                               "get_profile_statistics"
99 #define EC_MSG_TYPE_SYNC_TASK_RESET_SYNCHRONIZING_PROFILES                      14
100 #define EC_MSG_TYPE_NAME_SYNC_TASK_RESET_SYNCHRONIZING_PROFILES         "reset_synchronizing_profiles"
101
102 #define EC_MSG_TYPE_SYNC_TASK_ADD_PROFILE_CP                    19
103 #define EC_MSG_TYPE_NAME_SYNC_TASK_ADD_PROFILE_CP               "add_profile_cp"
104
105 #define EC_MSG_TYPE_SYNC_TASK_REFRESH_FROM_SERVICE                      20
106 #define EC_MSG_TYPE_NAME_SYNC_TASK_REFRESH_FROM_SERVICE "refresh_from_service"
107
108
109 /*FIXME cancel request to NA */
110 /*
111 #define EC_MSG_TYPE_SYNC_TASK_CANCEL_SYNC_REQUEST               18
112 #define EC_MSG_TYPE_NAME_SYNC_TASK_CANCEL_SYNC_REQUEST          "cancel_sync_request"
113 */
114
115 /**
116  * @par Description: API to create add account task
117  *
118  *
119  * @par Purpose:
120  * @par Typical use case:
121  * @par Method of function operation:
122  * @par Important notes:
123  * @param[in]
124  * @param[out]
125  *
126  * @return                              task_spec_t structure    on success
127  *                                                      NYLL on error
128  * @par Errors:
129  *
130  * @pre None.
131  * @post
132  * @see
133  * @remarks None.
134  *
135  * @par Sample Code:
136  * @code
137  * @endcode
138  */
139 /*TODO have to be removed after removing vconf*/
140 task_spec_t *make_add_account_task();
141
142 /**
143  * @par Description: API to create edit account task
144  *
145  *
146  * @par Purpose:
147  * @par Typical use case:
148  * @par Method of function operation:
149  * @par Important notes:
150  * @param[in]
151  * @param[out]
152  *
153  * @return                              task_spec_t structure    on success
154  *                                                      NYLL on error
155  * @par Errors:
156  *
157  * @pre None.
158  * @post
159  * @see
160  * @remarks None.
161  *
162  * @par Sample Code:
163  * @code
164  * @endcode
165  */
166 /*TODO have to be removed after removing vconf*/
167 task_spec_t *make_edit_account_task();
168
169 /**
170  * @par Description: API to create auto configure task
171  *
172  *
173  * @par Purpose:
174  * @par Typical use case:
175  * @par Method of function operation:
176  * @par Important notes:
177  * @param[in]
178  * @param[out]
179  *
180  * @return                              task_spec_t structure    on success
181  *                                                      NYLL on error
182  * @par Errors:
183  *
184  * @pre None.
185  * @post
186  * @see
187  * @remarks None.
188  *
189  * @par Sample Code:
190  * @code
191  * @endcode
192  */
193 /*TODO have to be removed after removing vconf*/
194 task_spec_t *make_autoconfigure_task();
195
196 /**
197  * @par Description: API to create synchronize task
198  *
199  *
200  * @par Purpose:
201  * @par Typical use case:
202  * @par Method of function operation:
203  * @par Important notes:
204  * @param[in]
205  * @param[out]
206  *
207  * @return                              task_spec_t structure    on success
208  *                                                      NYLL on error
209  * @par Errors:
210  *
211  * @pre None.
212  * @post
213  * @see
214  * @remarks None.
215  *
216  * @par Sample Code:
217  * @code
218  * @endcode
219  */
220 task_spec_t *make_synchronize_task();
221
222
223 /**
224  * @par Description: API to create synchronize task
225  *
226  *
227  * @par Purpose:
228  * @par Typical use case:
229  * @par Method of function operation:
230  * @par Important notes:
231  * @param[in]
232  * @param[out]
233  *
234  * @return                              task_spec_t structure    on success
235  *                                                      NYLL on error
236  * @par Errors:
237  *
238  * @pre None.
239  * @post
240  * @see
241  * @remarks None.
242  *
243  * @par Sample Code:
244  * @code
245  * @endcode
246  */
247 task_spec_t *make_add_profile_task();
248
249
250 /**
251  * @par Description: API to create edit profile task
252  *
253  *
254  * @par Purpose:
255  * @par Typical use case:
256  * @par Method of function operation:
257  * @par Important notes:
258  * @param[in]
259  * @param[out]
260  *
261  * @return                              task_spec_t structure    on success
262  *                                                      NYLL on error
263  * @par Errors:
264  *
265  * @pre None.
266  * @post
267  * @see
268  * @remarks None.
269  *
270  * @par Sample Code:
271  * @code
272  * @endcode
273  */
274 task_spec_t *make_edit_profile_task();
275
276 /**
277  * @par Description: API to create delete profiles task
278  *
279  *
280  * @par Purpose:
281  * @par Typical use case:
282  * @par Method of function operation:
283  * @par Important notes:
284  * @param[in]
285  * @param[out]
286  *
287  * @return                              task_spec_t structure    on success
288  *                                                      NYLL on error
289  * @par Errors:
290  *
291  * @pre None.
292  * @post
293  * @see
294  * @remarks None.
295  *
296  * @par Sample Code:
297  * @code
298  * @endcode
299  */
300 task_spec_t *make_delete_profile_task();
301
302 /**
303  * @par Description: API to create auto configure task
304  *
305  *
306  * @par Purpose:
307  * @par Typical use case:
308  * @par Method of function operation:
309  * @par Important notes:
310  * @param[in]
311  * @param[out]
312  *
313  * @return                              task_spec_t structure    on success
314  *                                                      NYLL on error
315  * @par Errors:
316  *
317  * @pre None.
318  * @post
319  * @see
320  * @remarks None.
321  *
322  * @par Sample Code:
323  * @code
324  * @endcode
325  */
326 task_spec_t *make_auto_configure_task();
327
328 /**
329  * @par Description: API to create sync status task
330  *
331  *
332  * @par Purpose:
333  * @par Typical use case:
334  * @par Method of function operation:
335  * @par Important notes:
336  * @param[in]
337  * @param[out]
338  *
339  * @return                              task_spec_t structure    on success
340  *                                                      NYLL on error
341  * @par Errors:
342  *
343  * @pre None.
344  * @post
345  * @see
346  * @remarks None.
347  *
348  * @par Sample Code:
349  * @code
350  * @endcode
351  */
352 task_spec_t *make_sync_status_task();
353
354
355 /**
356  * @par Description: API to create get profile name task
357  *
358  *
359  * @par Purpose:
360  * @par Typical use case:
361  * @par Method of function operation:
362  * @par Important notes:
363  * @param[in]
364  * @param[out]
365  *
366  * @return                              task_spec_t structure    on success
367  *                                                      NYLL on error
368  * @par Errors:
369  *
370  * @pre None.
371  * @post
372  * @see
373  * @remarks None.
374  *
375  * @par Sample Code:
376  * @code
377  * @endcode
378  */
379 task_spec_t *make_get_profile_name_task();
380
381 /**
382  * @par Description: API to create get profile server information task
383  *
384  *
385  * @par Purpose:
386  * @par Typical use case:
387  * @par Method of function operation:
388  * @par Important notes:
389  * @param[in]
390  * @param[out]
391  *
392  * @return                              task_spec_t structure    on success
393  *                                                      NYLL on error
394  * @par Errors:
395  *
396  * @pre None.
397  * @post
398  * @see
399  * @remarks None.
400  *
401  * @par Sample Code:
402  * @code
403  * @endcode
404  */
405 task_spec_t *make_get_profile_server_info_task();
406
407 /**
408  * @par Description: API to create get profile sync mode task
409  *
410  *
411  * @par Purpose:
412  * @par Typical use case:
413  * @par Method of function operation:
414  * @par Important notes:
415  * @param[in]
416  * @param[out]
417  *
418  * @return                              task_spec_t structure    on success
419  *                                                      NYLL on error
420  * @par Errors:
421  *
422  * @pre None.
423  * @post
424  * @see
425  * @remarks None.
426  *
427  * @par Sample Code:
428  * @code
429  * @endcode
430  */
431 task_spec_t *make_get_profile_sync_mode_task();
432
433
434 /**
435  * @par Description: API to create get profile sync category task
436  *
437  *
438  * @par Purpose:
439  * @par Typical use case:
440  * @par Method of function operation:
441  * @par Important notes:
442  * @param[in]
443  * @param[out]
444  *
445  * @return                              task_spec_t structure    on success
446  *                                                      NYLL on error
447  * @par Errors:
448  *
449  * @pre None.
450  * @post
451  * @see
452  * @remarks None.
453  *
454  * @par Sample Code:
455  * @code
456  * @endcode
457  */
458 task_spec_t *make_get_profile_sync_category_task();
459
460
461 /**
462  * @par Description: API to create get profile last session task
463  *
464  *
465  * @par Purpose:
466  * @par Typical use case:
467  * @par Method of function operation:
468  * @par Important notes:
469  * @param[in]
470  * @param[out]
471  *
472  * @return                              task_spec_t structure    on success
473  *                                                      NYLL on error
474  * @par Errors:
475  *
476  * @pre None.
477  * @post
478  * @see
479  * @remarks None.
480  *
481  * @par Sample Code:
482  * @code
483  * @endcode
484  */
485 task_spec_t *make_get_profile_last_session_task();
486
487 /**
488  * @par Description: API to create get profile last statistics task
489  *
490  *
491  * @par Purpose:
492  * @par Typical use case:
493  * @par Method of function operation:
494  * @par Important notes:
495  * @param[in]
496  * @param[out]
497  *
498  * @return                              task_spec_t structure    on success
499  *                                                      NYLL on error
500  * @par Errors:
501  *
502  * @pre None.
503  * @post
504  * @see
505  * @remarks None.
506  *
507  * @par Sample Code:
508  * @code
509  * @endcode
510  */
511 task_spec_t *make_get_profile_statistics_task();
512
513 /**
514  * @par Description: API to create reset synchronizing profiles task
515  *
516  *
517  * @par Purpose:
518  * @par Typical use case:
519  * @par Method of function operation:
520  * @par Important notes:
521  * @param[in]
522  * @param[out]
523  *
524  * @return                              task_spec_t structure    on success
525  *                                                      NYLL on error
526  * @par Errors:
527  *
528  * @pre None.
529  * @post
530  * @see
531  * @remarks None.
532  *
533  * @par Sample Code:
534  * @code
535  * @endcode
536  */
537 task_spec_t *make_reset_synchronizing_profiles_task();
538
539 /**
540  * @par Description: API to create reset synchronizing profiles task
541  *
542  *
543  * @par Purpose:
544  * @par Typical use case:
545  * @par Method of function operation:
546  * @par Important notes:
547  * @param[in]
548  * @param[out]
549  *
550  * @return                              task_spec_t structure    on success
551  *                                                      NYLL on error
552  * @par Errors:
553  *
554  * @pre None.
555  * @post
556  * @see
557  * @remarks None.
558  *
559  * @par Sample Code:
560  * @code
561  * @endcode
562  */
563 task_spec_t *make_add_profile_cp_task();
564
565
566 /**
567  * @par Description: API to create reset refresh_from_service task
568  *
569  *
570  * @par Purpose:
571  * @par Typical use case:
572  * @par Method of function operation:
573  * @par Important notes:
574  * @param[in]
575  * @param[out]
576  *
577  * @return                              task_spec_t structure    on success
578  *                                                      NYLL on error
579  * @par Errors:
580  *
581  * @pre None.
582  * @post
583  * @see
584  * @remarks None.
585  *
586  * @par Sample Code:
587  * @code
588  * @endcode
589  */
590 task_spec_t *make_refresh_from_service_task();
591
592
593
594 /*FIXME cancel request to NA */
595 /*task_spec_t *make_cancel_sync_request();*/
596
597
598 /**
599  * @par Description: This API is callback function which runs when add account task is requested
600  *
601  *
602  * @par Purpose:
603  * @par Typical use case:
604  * @par Method of function operation:
605  * @par Important notes:
606  * @param[in]           unsigned int type, parameter count
607  * @param[in]           array of parameters
608  * @param[out]
609  *
610  * @return                              TASK_ERROR_RUN_SUCCESS on success
611  *                                                      TASK_ERROR_RUN_FAILED on error
612  * @par Errors:
613  *
614  * @pre None.
615  * @post
616  * @see
617  * @remarks None.
618  *
619  * @par Sample Code:
620  * @code
621  * @endcode
622  */
623 /*TODO have to be removed after removing vconf*/
624 task_error_t add_account_task_process(unsigned int param_cnt, param_t **param_array);
625
626 /**
627  * @par Description: This API is callback function which runs when edit account task is requested
628  *
629  *
630  * @par Purpose:
631  * @par Typical use case:
632  * @par Method of function operation:
633  * @par Important notes:
634  * @param[in]           unsigned int type, parameter count
635  * @param[in]           array of parameters
636  * @param[out]
637  *
638  * @return                              TASK_ERROR_RUN_SUCCESS on success
639  *                                                      TASK_ERROR_RUN_FAILED on error
640  * @par Errors:
641  *
642  * @pre None.
643  * @post
644  * @see
645  * @remarks None.
646  *
647  * @par Sample Code:
648  * @code
649  * @endcode
650  */
651 /*TODO have to be removed after removing vconf*/
652 task_error_t edit_account_task_process(unsigned int param_cnt, param_t **param_array);
653
654 /**
655  * @par Description: This API is callback function which runs when auto configure task is requested
656  *
657  *
658  * @par Purpose:
659  * @par Typical use case:
660  * @par Method of function operation:
661  * @par Important notes:
662  * @param[in]           unsigned int type, parameter count
663  * @param[in]           array of parameters
664  * @param[out]
665  *
666  * @return                              TASK_ERROR_RUN_SUCCESS on success
667  *                                                      TASK_ERROR_RUN_FAILED on error
668  * @par Errors:
669  *
670  * @pre None.
671  * @post
672  * @see
673  * @remarks None.
674  *
675  * @par Sample Code:
676  * @code
677  * @endcode
678  */
679 /*TODO have to be removed after removing vconf*/
680 task_error_t autoconfigure_task_process(unsigned int param_cnt, param_t **param_array);
681
682 /**
683  * @par Description: This API is callback function which runs when synchronize task is requested
684  *
685  *
686  * @par Purpose:
687  * @par Typical use case:
688  * @par Method of function operation:
689  * @par Important notes:
690  * @param[in]           unsigned int type, parameter count
691  * @param[in]           array of parameters
692  * @param[out]
693  *
694  * @return                              TASK_ERROR_RUN_SUCCESS on success
695  *                                                      TASK_ERROR_RUN_FAILED on error
696  * @par Errors:
697  *
698  * @pre None.
699  * @post
700  * @see
701  * @remarks None.
702  *
703  * @par Sample Code:
704  * @code
705  * @endcode
706  */
707 task_error_t synchronize_task_process(unsigned int param_cnt, param_t **param_array);
708
709 /**
710  * @par Description: This API is callback function which runs when add profile task is requested
711  *
712  *
713  * @par Purpose:
714  * @par Typical use case:
715  * @par Method of function operation:
716  * @par Important notes:
717  * @param[in]           unsigned int type, parameter count
718  * @param[in]           array of parameters
719  * @param[out]
720  *
721  * @return                              TASK_ERROR_RUN_SUCCESS on success
722  *                                                      TASK_ERROR_RUN_FAILED on error
723  * @par Errors:
724  *
725  * @pre None.
726  * @post
727  * @see
728  * @remarks None.
729  *
730  * @par Sample Code:
731  * @code
732  * @endcode
733  */
734 task_error_t add_profile_task_process(unsigned int param_cnt, param_t **param_array);
735
736 /**
737  * @par Description: This API is callback function which runs when edit profile task is requested
738  *
739  *
740  * @par Purpose:
741  * @par Typical use case:
742  * @par Method of function operation:
743  * @par Important notes:
744  * @param[in]           unsigned int type, parameter count
745  * @param[in]           array of parameters
746  * @param[out]
747  *
748  * @return                              TASK_ERROR_RUN_SUCCESS on success
749  *                                                      TASK_ERROR_RUN_FAILED on error
750  * @par Errors:
751  *
752  * @pre None.
753  * @post
754  * @see
755  * @remarks None.
756  *
757  * @par Sample Code:
758  * @code
759  * @endcode
760  */
761 task_error_t edit_profile_task_process(unsigned int param_cnt, param_t **param_array);
762
763 /**
764  * @par Description: This API is callback function which runs when delete profiles task is requested
765  *
766  *
767  * @par Purpose:
768  * @par Typical use case:
769  * @par Method of function operation:
770  * @par Important notes:
771  * @param[in]           unsigned int type, parameter count
772  * @param[in]           array of parameters
773  * @param[out]
774  *
775  * @return                              TASK_ERROR_RUN_SUCCESS on success
776  *                                                      TASK_ERROR_RUN_FAILED on error
777  * @par Errors:
778  *
779  * @pre None.
780  * @post
781  * @see
782  * @remarks None.
783  *
784  * @par Sample Code:
785  * @code
786  * @endcode
787  */
788 task_error_t delete_profile_task_process(unsigned int param_cnt, param_t **param_array);
789
790 /**
791  * @par Description: This API is callback function which runs when auto configure task is requested
792  *
793  *
794  * @par Purpose:
795  * @par Typical use case:
796  * @par Method of function operation:
797  * @par Important notes:
798  * @param[in]           unsigned int type, parameter count
799  * @param[in]           array of parameters
800  * @param[out]
801  *
802  * @return                              TASK_ERROR_RUN_SUCCESS on success
803  *                                                      TASK_ERROR_RUN_FAILED on error
804  * @par Errors:
805  *
806  * @pre None.
807  * @post
808  * @see
809  * @remarks None.
810  *
811  * @par Sample Code:
812  * @code
813  * @endcode
814  */
815 task_error_t auto_configure_task_process(unsigned int param_cnt, param_t **param_array);
816
817 /**
818  * @par Description: This API is callback function which runs when sync status task is requested
819  *
820  *
821  * @par Purpose:
822  * @par Typical use case:
823  * @par Method of function operation:
824  * @par Important notes:
825  * @param[in]           unsigned int type, parameter count
826  * @param[in]           array of parameters
827  * @param[out]
828  *
829  * @return                              TASK_ERROR_RUN_SUCCESS on success
830  *                                                      TASK_ERROR_RUN_FAILED on error
831  * @par Errors:
832  *
833  * @pre None.
834  * @post
835  * @see
836  * @remarks None.
837  *
838  * @par Sample Code:
839  * @code
840  * @endcode
841  */
842 task_error_t sync_status_task_process(unsigned int param_cnt, param_t **param_array);
843
844 /**
845  * @par Description: This API is callback function which runs when get profile name task is requested
846  *
847  *
848  * @par Purpose:
849  * @par Typical use case:
850  * @par Method of function operation:
851  * @par Important notes:
852  * @param[in]           unsigned int type, parameter count
853  * @param[in]           array of parameters
854  * @param[out]
855  *
856  * @return                              TASK_ERROR_RUN_SUCCESS on success
857  *                                                      TASK_ERROR_RUN_FAILED on error
858  * @par Errors:
859  *
860  * @pre None.
861  * @post
862  * @see
863  * @remarks None.
864  *
865  * @par Sample Code:
866  * @code
867  * @endcode
868  */
869 task_error_t get_profile_name_task_process(unsigned int param_cnt, param_t **param_array);
870
871 /**
872  * @par Description: This API is callback function which runs when get profile server information task is requested
873  *
874  *
875  * @par Purpose:
876  * @par Typical use case:
877  * @par Method of function operation:
878  * @par Important notes:
879  * @param[in]           unsigned int type, parameter count
880  * @param[in]           array of parameters
881  * @param[out]
882  *
883  * @return                              TASK_ERROR_RUN_SUCCESS on success
884  *                                                      TASK_ERROR_RUN_FAILED on error
885  * @par Errors:
886  *
887  * @pre None.
888  * @post
889  * @see
890  * @remarks None.
891  *
892  * @par Sample Code:
893  * @code
894  * @endcode
895  */
896 task_error_t get_profile_server_info_task_process(unsigned int param_cnt, param_t **param_array);
897
898 /**
899  * @par Description: This API is callback function which runs when get profile sync mode task is requested
900  *
901  *
902  * @par Purpose:
903  * @par Typical use case:
904  * @par Method of function operation:
905  * @par Important notes:
906  * @param[in]           unsigned int type, parameter count
907  * @param[in]           array of parameters
908  * @param[out]
909  *
910  * @return                              TASK_ERROR_RUN_SUCCESS on success
911  *                                                      TASK_ERROR_RUN_FAILED on error
912  * @par Errors:
913  *
914  * @pre None.
915  * @post
916  * @see
917  * @remarks None.
918  *
919  * @par Sample Code:
920  * @code
921  * @endcode
922  */
923 task_error_t get_profile_sync_mode_task_process(unsigned int param_cnt, param_t **param_array);
924
925 /**
926  * @par Description: This API is callback function which runs when get profile sync category task is requested
927  *
928  *
929  * @par Purpose:
930  * @par Typical use case:
931  * @par Method of function operation:
932  * @par Important notes:
933  * @param[in]           unsigned int type, parameter count
934  * @param[in]           array of parameters
935  * @param[out]
936  *
937  * @return                              TASK_ERROR_RUN_SUCCESS on success
938  *                                                      TASK_ERROR_RUN_FAILED on error
939  * @par Errors:
940  *
941  * @pre None.
942  * @post
943  * @see
944  * @remarks None.
945  *
946  * @par Sample Code:
947  * @code
948  * @endcode
949  */
950 task_error_t get_profile_sync_category_task_process(unsigned int param_cnt, param_t **param_array);
951
952 /**
953  * @par Description: This API is callback function which runs when get profile last session task is requested
954  *
955  *
956  * @par Purpose:
957  * @par Typical use case:
958  * @par Method of function operation:
959  * @par Important notes:
960  * @param[in]           unsigned int type, parameter count
961  * @param[in]           array of parameters
962  * @param[out]
963  *
964  * @return                              TASK_ERROR_RUN_SUCCESS on success
965  *                                                      TASK_ERROR_RUN_FAILED on error
966  * @par Errors:
967  *
968  * @pre None.
969  * @post
970  * @see
971  * @remarks None.
972  *
973  * @par Sample Code:
974  * @code
975  * @endcode
976  */
977 task_error_t get_profile_last_session_task_process(unsigned int param_cnt, param_t **param_array);
978
979 /**
980  * @par Description: This API is callback function which runs when get profile last statistics task is requested
981  *
982  *
983  * @par Purpose:
984  * @par Typical use case:
985  * @par Method of function operation:
986  * @par Important notes:
987  * @param[in]           unsigned int type, parameter count
988  * @param[in]           array of parameters
989  * @param[out]
990  *
991  * @return                              TASK_ERROR_RUN_SUCCESS on success
992  *                                                      TASK_ERROR_RUN_FAILED on error
993  * @par Errors:
994  *
995  * @pre None.
996  * @post
997  * @see
998  * @remarks None.
999  *
1000  * @par Sample Code:
1001  * @code
1002  * @endcode
1003  */
1004 task_error_t get_profile_statistics_task_process(unsigned int param_cnt, param_t **param_array);
1005
1006 /**
1007  * @par Description: This API is callback function which runs when reset synchronizing profiles task is requested
1008  *
1009  *
1010  * @par Purpose:
1011  * @par Typical use case:
1012  * @par Method of function operation:
1013  * @par Important notes:
1014  * @param[in]           unsigned int type, parameter count
1015  * @param[in]           array of parameters
1016  * @param[out]
1017  *
1018  * @return                              TASK_ERROR_RUN_SUCCESS on success
1019  *                                                      TASK_ERROR_RUN_FAILED on error
1020  * @par Errors:
1021  *
1022  * @pre None.
1023  * @post
1024  * @see
1025  * @remarks None.
1026  *
1027  * @par Sample Code:
1028  * @code
1029  * @endcode
1030  */
1031 task_error_t reset_synchronizing_profiles_task_process(unsigned int param_cnt, param_t **param_array);
1032
1033 /*FIXME cancel request to NA */
1034 /*task_error_t cancel_sync_request_task_process(unsigned int param_cnt, param_t **param_array);*/
1035
1036 /**
1037  * @par Description: This API is callback function which runs when add profile for cp task is requested
1038  *
1039  *
1040  * @par Purpose:
1041  * @par Typical use case:
1042  * @par Method of function operation:
1043  * @par Important notes:
1044  * @param[in]           unsigned int type, parameter count
1045  * @param[in]           array of parameters
1046  * @param[out]
1047  *
1048  * @return                              TASK_ERROR_RUN_SUCCESS on success
1049  *                                                      TASK_ERROR_RUN_FAILED on error
1050  * @par Errors:
1051  *
1052  * @pre None.
1053  * @post
1054  * @see
1055  * @remarks None.
1056  *
1057  * @par Sample Code:
1058  * @code
1059  * @endcode
1060  */
1061 task_error_t add_profile_cp_task_process(unsigned int param_cnt, param_t **param_array);
1062
1063
1064
1065 /**
1066  * @par Description: This API is callback function which runs when refresh_from_service task is requested
1067  *
1068  *
1069  * @par Purpose:
1070  * @par Typical use case:
1071  * @par Method of function operation:
1072  * @par Important notes:
1073  * @param[in]           unsigned int type, parameter count
1074  * @param[in]           array of parameters
1075  * @param[out]
1076  *
1077  * @return                              TASK_ERROR_RUN_SUCCESS on success
1078  *                                                      TASK_ERROR_RUN_FAILED on error
1079  * @par Errors:
1080  *
1081  * @pre None.
1082  * @post
1083  * @see
1084  * @remarks None.
1085  *
1086  * @par Sample Code:
1087  * @code
1088  * @endcode
1089  */
1090 task_error_t refresh_from_service_task_process(unsigned int param_cnt, param_t **param_array);
1091
1092 /**
1093  * @par Description: API to insert request_msg_info_t structure into list
1094  *
1095  *
1096  * @par Purpose:
1097  * @par Typical use case:
1098  * @par Method of function operation:
1099  * @par Important notes:
1100  * @param[in]           sync_type(SYNC_MODE_MANUAL, SYNC_MODE_PERIODIC, SYNC_MODE_SAN, SYNC_MODE_AUTOCONFIG)
1101  * @param[in]           request id
1102  * @param[out]
1103  *
1104  * @return
1105  *
1106  * @par Errors:
1107  *
1108  * @pre None.
1109  * @post
1110  * @see
1111  * @remarks None.
1112  *
1113  * @par Sample Code:
1114  * @code
1115  * @endcode
1116  */
1117 void insert_request_msg_info(int sync_type, unsigned int request_id);
1118
1119 /**
1120  * @par Description: API to delete request_msg_info_t structure from list
1121  *
1122  *
1123  * @par Purpose:
1124  * @par Typical use case:
1125  * @par Method of function operation:
1126  * @par Important notes:
1127  * @param[in]           request id
1128  * @param[out]
1129  *
1130  * @return
1131  *
1132  * @par Errors:
1133  *
1134  * @pre None.
1135  * @post
1136  * @see
1137  * @remarks None.
1138  *
1139  * @par Sample Code:
1140  * @code
1141  * @endcode
1142  */
1143 void delete_request_msg_info(unsigned int request_id);
1144
1145 /**
1146  * @par Description: API to get synchronizing request id and delete request_msg_info_t structure from list
1147  *
1148  *
1149  * @par Purpose:
1150  * @par Typical use case:
1151  * @par Method of function operation:
1152  * @par Important notes:
1153  * @param[in]
1154  * @param[out]          request id
1155  *
1156  * @return                              true on success
1157  *                                                      false on error
1158  *
1159  * @par Errors:
1160  *
1161  * @pre None.
1162  * @post
1163  * @see
1164  * @remarks None.
1165  *
1166  * @par Sample Code:
1167  * @code
1168  * @endcode
1169  */
1170 bool get_synchronizing_request_id(unsigned int *pRequest_id);
1171
1172 /**
1173  * @par Description: API to get manual sync request id and delete request_msg_info_t structure from list
1174  *
1175  *
1176  * @par Purpose:
1177  * @par Typical use case:
1178  * @par Method of function operation:
1179  * @par Important notes:
1180  * @param[in]
1181  * @param[out]          request id
1182  *
1183  * @return                              true on success
1184  *                                                      false on error
1185  *
1186  * @par Errors:
1187  *
1188  * @pre None.
1189  * @post
1190  * @see
1191  * @remarks None.
1192  *
1193  * @par Sample Code:
1194  * @code
1195  * @endcode
1196  */
1197 bool get_manual_sync_request_id(unsigned int *pRequest_id);
1198
1199 /**
1200  * @par Description: API to get periodic sync request id and delete request_msg_info_t structure from list
1201  *
1202  *
1203  * @par Purpose:
1204  * @par Typical use case:
1205  * @par Method of function operation:
1206  * @par Important notes:
1207  * @param[in]
1208  * @param[out]          request id
1209  *
1210  * @return                              true on success
1211  *                                                      false on error
1212  *
1213  * @par Errors:
1214  *
1215  * @pre None.
1216  * @post
1217  * @see
1218  * @remarks None.
1219  *
1220  * @par Sample Code:
1221  * @code
1222  * @endcode
1223  */
1224 bool get_periodic_sync_request_id(unsigned int *pRequest_id);
1225
1226 /**
1227  * @par Description: API to get SAN sync request id and delete request_msg_info_t structure from list
1228  *
1229  *
1230  * @par Purpose:
1231  * @par Typical use case:
1232  * @par Method of function operation:
1233  * @par Important notes:
1234  * @param[in]
1235  * @param[out]          request id
1236  *
1237  * @return                              true on success
1238  *                                                      false on error
1239  *
1240  * @par Errors:
1241  *
1242  * @pre None.
1243  * @post
1244  * @see
1245  * @remarks None.
1246  *
1247  * @par Sample Code:
1248  * @code
1249  * @endcode
1250  */
1251 bool get_san_sync_request_id(unsigned int *pRequest_id);
1252
1253 /**
1254  * @par Description: API to get auto configure sync request id and delete request_msg_info_t structure from list
1255  *
1256  *
1257  * @par Purpose:
1258  * @par Typical use case:
1259  * @par Method of function operation:
1260  * @par Important notes:
1261  * @param[in]
1262  * @param[out]          request id
1263  *
1264  * @return                              true on success
1265  *                                                      false on error
1266  *
1267  * @par Errors:
1268  *
1269  * @pre None.
1270  * @post
1271  * @see
1272  * @remarks None.
1273  *
1274  * @par Sample Code:
1275  * @code
1276  * @endcode
1277  */
1278 bool get_auto_configure_request_id(unsigned int *pRequest_id);
1279
1280 #endif /* ENGINE_CONTROLLER_TASK_H_ */