[Internal: changed] remove log, daemon check api added
[platform/core/system/sync-agent.git] / doc / groups_plugin_interface.dox
1 /**\r
2  @page plugin_interface Plugin Interface module\r
3 \r
4  @section Overview\r
5 Plugin Interface module provides sets of Plugin interface per Plugin Domain.<br>\r
6 And internally manages Plugin loading and symbol connection between Framework-using client and Plugins.\r
7 \r
8  @image html overview_plugin_interface.png "Software architecture of Plugin Interface module"\r
9 \r
10 Header files for each Plugin Domain are located in "/usr/include/sync-agent/plugin".<br>\r
11 Each header file defines Domain-specific API set and Plugins should be implemented according to it.<br>\r
12 For detail information about each API, refer to Doxygen "Modules" page describing "Plugin" module.<br>\r
13 \r
14 Plugin Interface module has following interface set(Plugin Domain) with each corresponding roles.<br>\r
15         - <b>Plugin Manager</b><br>\r
16         Loads Plugins and provides dynamic symbol connection to the Plugin interfaces.<br>\r
17 \r
18         - <b>Account Domain</b><br>\r
19         Provides API to implemented platform-dependent account operation.<br>\r
20         Plugins under Account Domain are used in Account module in Framework.<br>\r
21 \r
22         - <b>DataConverter Domain</b><br>\r
23         Provides API to implemented platform-dependent converting operation for platform datastore.<br>\r
24         (External data type to internal datastore item, internal dadtastore item to external data type.)<br>\r
25         Plugins under DataConverter Domain are used in Data Adapter module in Framework.<br>\r
26 \r
27         - <b>DataConnector Domain</b><br>\r
28         Provides API to implemented platform-dependent datastore operation for platform datastore.<br>\r
29         External data should be converted to internal datastore item through DataConverter Plugin before using inside of platform.<br>\r
30         Vice versa, internal datastore item should be converted to external data through DataConverter Plugin before using out of platform.<br>\r
31         Plugins under DataConnector Domain are used in Data Adapter module in Framework.<br>\r
32 \r
33         - <b>DeviceInfo Domain</b><br>\r
34         Provides API to fetch platform device information such as version, revision and etc.<br>\r
35         Plugins under DeviceInfo Domain are used in Device module in Framework.<br>\r
36 \r
37         - <b>DeviceManager Domain</b><br>\r
38         Provides API to get/set platform device policy such as MDM.<br>\r
39         Plugins under DeviiceManager Domain are used in Device Manager module in Framework.<br>\r
40 \r
41         - <b>MO Domain</b><br>\r
42         Provides API to get/set Management Object(MO).<br>\r
43         1 Plugin required per 1 MO tree and need to parse DDF into MO tree(DB) before using.<br>\r
44         Plugins under MO Domain are used in Device Manager module in Framework.<br>\r
45 \r
46         - <b>NetworkAccess Domain</b><br>\r
47         Provides API to communicate with external server.<br>\r
48         1 Plugin required per 1 protocol.<br>\r
49         Plugins under NetworkAccess Domain are used in Network Access module in Framework.<br>\r
50 \r
51         - <b>PlatformMonitor Domain</b><br>\r
52         Provides API to monitor specific event platform device module originates.<br>\r
53         1 Plugin required per 1 kind of system event.<br>\r
54         Plugins under PlatformMonitor Domain are used in Platform Monitor module in Framework.<br>\r
55 */\r