2 @page plugin_interface Plugin Interface module
\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
8 @image html overview_plugin_interface.png "Software architecture of Plugin Interface module"
\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
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
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
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
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
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
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
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
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
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