to Tizen Device, edit these files, remove them or upload files from Tizen Device to 3rd party storages. </li>
</ul>
<p>
- For more information about how to use Service Adaptor Client API, see <a href="../../../../../org.tizen.guides/html/web/tizen/social/service_adaptor_client_n.htm">Service Adaptor Client Guide</a>.
+ For more information about how to use Service Adaptor Client API, see <a href="../../../../../org.tizen.guides/html/native/social/service_adaptor_client_n.html">Service Adaptor Client Guide</a>.
</p>
</div>
<p><span class="version">
</p>
<!-- Table of Contents -->
- <div class="typedefs" id="typedefs-section">
+ <div class="typedefs" id="TableOfContents">
<h2>Table of Contents</h2>
<ul class="toc">
- <li>1. <a href="#typedefs-section">Type Definitions</a><ul class="toc"><li>1.1. <a href="#ServiceErrorCodes">Service Error Codes</a>
- </li></ul>
+ <li>1. <a href="#typedefs-section">Global Type Definitions</a>
+ <ul class="toc">
+ <li>1.1. <a href="#ServiceErrorCodes">Service Error Codes</a></li>
+ </ul>
</li>
- <li>2. <a href="#interfaces-section">Interfaces</a><ul class="toc">
- <li>2.1. <a href="#AccountManagerObject">AccountManagerObject</a>
+ <li>2. <a href="#ServiceAdaptorAPI">Service Adaptor API</a>
+ <ul class="toc">
+ <li>2.1. <a href="#ServiceAdaptorAPITypeDefinition">Service Adaptor API Types Definition</a>
+ <ul class="toc">
+ <li>2.1.1. <a href="#ServiceAdaptorAPIServiceAdaptorHandle">Service Adaptor Handle</a></li>
+ <li>2.1.2. <a href="#ServiceAdaptorAPIServiceAdaptorPluginCB">Service Adaptor Plugin Callback</a></li>
+ </ul>
</li>
+ <li>2.2. <a href="#ServiceAdaptorAPIMethods">Methods</a>
</ul>
</li>
- <li>3. <a href="#full-webidl">Full WebIDL</a>
+ <li>3. <a href="#ServicePluginAPI">Service Plugin API</a>
+ <ul class="toc">
+ <li>3.1. <a href="#ServicePluginAPITypesDefinition">Service Plugin API Types Definition</a>
+ <ul class="toc">
+ <li>3.1.1. <a href="#ServicePluginAPIServicePluginHandle">Service Plugin Handle</a></li>
+ <li>3.1.2. <a href="#ServicePluginAPIServicePluginServiceType">Service Plugin Service Type</a></li>
+ <li>3.1.3. <a href="#ServicePluginAPIServicePluginMacros">Service Plugin API Macros</a></li>
+ </ul>
+ </li>
+ <li>3.2. <a href="#ServicePluginAPIMethods">Methods</a>
+ </ul>
+ </li>
+ <li>4. <a href="#StorageAPI">Storage API</a>
+ <ul class="toc">
+ <li>4.1. <a href="#StorageAPIDefinition">Storage API Types Definition</a>
+ <ul class="toc">
+ <li>4.1.1. <a href="#StorageAPIFile">Service storage file</a></li>
+ <li>4.1.2. <a href="#StorageAPIFileList">Service storage file list</a></li>
+ <li>4.1.3. <a href="#StorageAPIStorageTask">Service storage task</a></li>
+ <li>4.1.4. <a href="#StorageAPIStorageTaskState">Service storage task state</a></li>
+ <li>4.1.5. <a href="#StorageAPIStorageFileCallback">Service storage file callback</a></li>
+ <li>4.1.6. <a href="#StorageAPIStorageFileListCallback">Service storage file list callback</a></li>
+ <li>4.1.7. <a href="#StorageAPIStorageResultCallback">Service storage result callback</a></li>
+ <li>4.1.8. <a href="#StorageAPIStorageTaskProgressCallback">Service storage task progress callback</a></li>
+ <li>4.1.9. <a href="#StorageAPIStorageTaskStateCallback">Service storage task state callback</a></li>
+ </ul>
+ </li>
+ <li>4.2. <a href="#StorageAPIMethods">Methods</a>
+ </ul>
</li>
</ul>
<hr>
</div>
-
+ <!-- Summary of Interfaces and Methods -->
+ <div class="typedefs">
+ <h2 id="method-summary">Summary of Interfaces and Methods</h2>
+ <table class="informaltable">
+ <thead><tr>
+ <th>Interface</th>
+ <th>Method</th>
+ </tr></thead>
+ <tbody>
+ <tr>
+ <td><a href="#ServiceAdaptorAPI"> Service Adaptor API</a></td>
+ <td>
+ int <a href="#::ServiceAdaptorClient::service_adaptor_create">service_adaptor_create</a> (<a href="#ServiceAdaptorAPIServiceAdaptorHandle">service_adaptor_h</a> *service_adaptor)<br>
+ int <a href="#::ServiceAdaptorClient::service_adaptor_destroy">service_adaptor_destroy</a> (<a href="#ServiceAdaptorAPIServiceAdaptorHandle">service_adaptor_h</a> service_adaptor)<br>
+ int <a href="#::ServiceAdaptorClient::service_adaptor_foreach_plugin">service_adaptor_foreach_plugin</a> (<a href="#ServiceAdaptorAPIServiceAdaptorHandle">service_adaptor_h</a> service_adaptor, <a href="#ServiceAdaptorAPIServiceAdaptorPluginCB">service_adaptor_plugin_cb</a> callback, void * user_data)<br>
+ int <a href="#::ServiceAdaptorClient::service_adaptor_query_plugin_by_file">service_adaptor_query_plugin_by_file</a> (<a href="#ServiceAdaptorAPIServiceAdaptorHandle">service_adaptor_h</a> service_adaptor, const char *file_path, char **plugin_uri)<br>
+ int <a href="#::ServiceAdaptorClient::service_adaptor_get_last_error_message">service_adaptor_get_last_error_message</a> (char **message)<br>
+ int <a href="#::ServiceAdaptorClient::service_adaptor_get_last_result">service_adaptor_get_last_result</a> (int *err)
+ </td>
+ </tr>
+ <tr>
+ <td><a href="#ServicePluginAPI">Service Plugin API</a></td>
+ <td>
+ int <a href="#::ServiceAdaptorClient::service_adaptor_create_plugin">service_adaptor_create_plugin</a> (<a href="#ServiceAdaptorAPIServiceAdaptorHandle">service_adaptor_h</a> service_adaptor, const char *plugin_uri, <a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> *plugin)<br>
+ int <a href="#::ServiceAdaptorClient::service_plugin_add_property">service_plugin_add_property</a> (<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin, const char *key, const char *value)<br>
+ int <a href="#::ServiceAdaptorClient::service_plugin_get_property">service_plugin_get_property</a> (<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin, const char *key, char **value)<br>
+ int <a href="#::ServiceAdaptorClient::service_plugin_remove_property">service_plugin_remove_property</a> (<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin, const char *key)<br>
+ int <a href="#::ServiceAdaptorClient::service_plugin_start">service_plugin_start</a> (<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin, int service_mask)<br>
+ int <a href="#::ServiceAdaptorClient::service_plugin_stop">service_plugin_stop</a> (<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin)<br>
+ int <a href="#::ServiceAdaptorClient::service_plugin_destroy">service_plugin_destroy</a> (<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin)<br>
+ </tr>
+ <tr>
+ <td><a href="#StorageAPI">Storage API</a></td>
+ <td>
+ int <a href="#::ServiceAdaptorClient::service_storage_create_download_task">service_storage_create_download_task</a> (<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin, const char *storage_path, const char *download_path, <a href="#StorageAPIStorageTask">service_storage_task_h</a> *task)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_create_download_thumbnail_task">service_storage_create_download_thumbnail_task</a> (<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin, const char *storage_path, const char *download_path, int thumbnail_size, <a href="#StorageAPIStorageTask">service_storage_task_h</a> *task)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_create_upload_task">service_storage_create_upload_task</a> (<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin, const char *file_path, const char *upload_path, <a href="#StorageAPIStorageTask">service_storage_task_h</a> *task)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_set_task_progress_cb">service_storage_set_task_progress_cb</a> (<a href="#StorageAPIStorageTask">service_storage_task_h</a> task, <a href="#StorageAPIStorageTaskProgressCallback">service_storage_task_progress_cb</a> callback, void *user_data)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_set_task_state_changed_cb">service_storage_set_task_state_changed_cb</a> (<a href="#StorageAPIStorageTask">service_storage_task_h</a> task, <a href="#StorageAPIStorageTaskStateCallback">service_storage_task_state_cb</a> callback, void *user_data)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_unset_task_progress_cb">service_storage_unset_task_progress_cb</a> (<a href="#StorageAPIStorageTask">service_storage_task_h</a> task)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_unset_task_state_changed_cb">service_storage_unset_task_state_changed_cb</a> (<a href="#StorageAPIStorageTask">service_storage_task_h</a> task)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_start_task">service_storage_start_task</a> (<a href="#StorageAPIStorageTask">service_storage_task_h</a> task)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_cancel_task">service_storage_cancel_task</a> (<a href="#StorageAPIStorageTask">service_storage_task_h</a> task)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_destroy_task">service_storage_destroy_task</a> (<a href="#StorageAPIStorageTask">service_storage_task_h</a> task)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_get_file_list">service_storage_get_file_list</a> (<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin, const char *dir_path, <a href="#StorageAPIStorageFileListCallback">service_storage_file_list_cb</a> callback, void *user_data)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_file_list_get_length">service_storage_file_list_get_length</a> (<a href="#StorageAPIFileList">service_storage_file_list_h</a> list, int *length)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_file_list_foreach_file">service_storage_file_list_foreach_file</a> (<a href="#StorageAPIFileList">service_storage_file_list_h</a> list, <a href="#StorageAPIStorageFileCallback">service_storage_file_cb</a> callback, void *user_data)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_file_list_clone">service_storage_file_list_clone</a> (<a href="#StorageAPIFileList">service_storage_file_list_h</a> src_list, <a href="#StorageAPIFileList">service_storage_file_list_h</a> *dst_list)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_file_list_destroy">service_storage_file_list_destroy</a> (<a href="#StorageAPIFileList">service_storage_file_list_h</a> list)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_file_clone">service_storage_file_clone</a> (<a href="#StorageAPIFile">service_storage_file_h</a> src_file, <a href="#StorageAPIFile">service_storage_file_h</a> *dst_file)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_file_get_logical_path">service_storage_file_get_logical_path</a> (<a href="#StorageAPIFile">service_storage_file_h</a> file, char **path)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_file_get_physical_path">service_storage_file_get_physical_path</a> (<a href="#StorageAPIFile">service_storage_file_h</a> file, char **path)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_file_get_size">service_storage_file_get_size</a> (<a href="#StorageAPIFile">service_storage_file_h</a> file, unsigned long long *size)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_file_is_dir">service_storage_file_is_dir</a> (<a href="#StorageAPIFile">service_storage_file_h</a> file, bool *is_dir)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_file_destroy">service_storage_file_destroy</a> (<a href="#StorageAPIFile">service_storage_file_h</a> file)<br>
+ int <a href="#::ServiceAdaptorClient::service_storage_remove">service_storage_remove</a> (<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin, const char *remove_path, <a href="#StorageAPIStorageResultCallback">service_storage_result_cb</a> callback, void *user_data)<br>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
<!-- Global Type Definitions -->
<div class="typedefs" id="typedefs-section">
<h2>1. Global Type Definitions</h2>
<li>
SERVICE_ADAPTOR_ERROR_IPC_UNSTABLE - IPC Connection unstabled </li>
<li>
- SERVICE_ADAPTOR_ERROR_PLUGIN_FAILED - The error occured from Plugin, See detail from <font style="background-color: red">service_adaptor_get_last_result()</font> and Plugin SPEC </li>
+ SERVICE_ADAPTOR_ERROR_PLUGIN_FAILED - The error occured from Plugin, See detail from <a href="#::ServiceAdaptorClient::service_adaptor_get_last_result">service_adaptor_get_last_result()</a> and Plugin SPEC </li>
<li>
SERVICE_ADAPTOR_ERROR_NOT_AUTHORIZED - Need Autholization </li>
<li>
<a class="backward-compatibility-anchor" name="::ServiceAdaptorClient::ServiceAdaptorTypesDefinition"></a>
<h3>2.1. Service Adaptor API Types Definition</h3>
<div class="interface" id ="ServiceAdaptorAPIServiceAdaptorHandle">
- <h4>2.1.2 Service Adaptor Handle</h4>
+ <h4>2.1.1 Service Adaptor Handle</h4>
<div class="brief">
The handle for connection and managing plugin handle of Service Adaptor. <br>
- <font style="background-color: red">The handle can be created by service_adaptor_create(). <br>
- When a handle is no longer needed, use service_adaptor_destroy() </font>
+ The handle can be created by <a href="#::ServiceAdaptorClient::service_adaptor_create">service_adaptor_create()</a>. <br>
+ When a handle is no longer needed, use <a href="#::ServiceAdaptorClient::service_adaptor_destroy">service_adaptor_destroy()</a>
</div>
<pre class="webidl prettyprint"> typedef struct _service_adaptor_s* service_adaptor_h </pre>
</p>
</div>
<div class="interface" id ="ServiceAdaptorAPIServiceAdaptorPluginCB">
- <h4>2.1.1 Service Adaptor Plugin Callback</h4>
+ <h4>2.1.2 Service Adaptor Plugin Callback</h4>
<div class="brief">
- Callback for <font style="background-color: red">service_adaptor_foreach_plugin()</font> API
+ Callback for <a href="#::ServiceAdaptorClient::service_adaptor_foreach_plugin">service_adaptor_foreach_plugin()</a> API
</div>
<pre class="webidl prettyprint"> typedef bool(* service_adaptor_plugin_cb) (char *plugin_uri, int service_mask, void *user_data) </pre>
<p><span class="version">
</li>
<li class="param">
<span class="name">service_mask</span>:
- Masked value for installed service plugins, this value can be masked multiple enum (<font style="background-color: red">service_plugin_service_type_e</font>)
+ Masked value for installed service plugins, this value can be masked multiple enum (<a href="#ServicePluginAPIServicePluginServiceType">service_plugin_service_type_e</a>)
</li>
<li class="param">
<span class="name">user_data</span>:
- Passed data from <font style="background-color: red">service_adaptor_foreach_plugin() </font>
+ Passed data from <a href="#::ServiceAdaptorClient::service_adaptor_foreach_plugin">service_adaptor_foreach_plugin()</a>
</li>
</ul>
</div>
</div>
<!-- Methods -->
- <div class="ServiceAdaptorAPIMethods">
+ <div class="interfaces" id="ServiceAdaptorAPIMethods">
<h3>2.2 Methods</h3>
<!-- service_adaptor_create -->
<dl>
<div class="brief">
Create Service Adaptor.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_adaptor_create(service_adaptor_h *service_adaptor);
+ <div class="synopsis"><pre class="signature prettyprint">int service_adaptor_create(<a href="#ServiceAdaptorAPIServiceAdaptorHandle">service_adaptor_h</a> *service_adaptor);
</pre></div>
<p><span class="version">
Since: </span>
</div>
<div class="exception">
<p><span class="name">Remarks</span></p>
- service_adaptor must be released memory using <font style="background-color: red">service_adaptor_destroy()</font>, when a program no longer needs any function of Service Adaptor
+ service_adaptor must be released memory using <a href="#::ServiceAdaptorClient::service_adaptor_destroy">service_adaptor_destroy()</a> when a program no longer needs any function of Service Adaptor
</div>
<div class="example">
<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">service_adaptor_h service_adaptor = NULL;
<div class="brief">
Destroy Service Adaptor.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_adaptor_destroy(service_adaptor_h service_adaptor);
+ <div class="synopsis"><pre class="signature prettyprint">int service_adaptor_destroy(<a href="#ServiceAdaptorAPIServiceAdaptorHandle">service_adaptor_h</a> service_adaptor);
</pre></div>
<p><span class="version">
Since: </span>
</div>
<div class="exception">
<p><span class="name">Precondition</span></p>
- service_adaptor must be issued by <font style="background-color: red">service_adaptor_create() </font>
+ service_adaptor must be issued by <a href="#::ServiceAdaptorClient::service_adaptor_create">service_adaptor_create()</a>
</div>
<div class="example">
<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">service_adaptor_h service_adaptor = NULL;
<div class="brief">
Foreach the list of plugins.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_adaptor_foreach_plugin(service_adaptor_h service_adaptor, service_adaptor_plugin_cb callback, void * user_data);
+ <div class="synopsis"><pre class="signature prettyprint">int service_adaptor_foreach_plugin(<a href="#ServiceAdaptorAPIServiceAdaptorHandle">service_adaptor_h</a> service_adaptor, <a href="#ServiceAdaptorAPIServiceAdaptorPluginCB">service_adaptor_plugin_cb</a> callback, void * user_data);
</pre></div>
<p><span class="version">
Since: </span>
</div>
<div class="exception">
<p><span class="name">Precondition</span></p>
- service_adaptor must be issued by <font style="background-color: red">service_adaptor_create()</font>
+ service_adaptor must be issued by <a href="#::ServiceAdaptorClient::service_adaptor_create">service_adaptor_create()</a>
</div>
<div class="example">
<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">bool plugin_cb(char *plugin_uri, int service_mask, void *user_data)
<div class="brief">
Retrieve an plugin URI with local file path.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_adaptor_query_plugin_by_file(service_adaptor_h service_adaptor, const char *file_path, char **plugin_uri)
+ <div class="synopsis"><pre class="signature prettyprint">int service_adaptor_query_plugin_by_file(<a href="#ServiceAdaptorAPIServiceAdaptorHandle">service_adaptor_h</a> service_adaptor, const char *file_path, char **plugin_uri)
</pre></div>
<p><span class="version">
Since: </span>
</div>
<div class="exception">
<p><span class="name">Precondition</span></p>
- service_adaptor must be issued by <font style="background-color: red">service_adaptor_create()</font>
+ service_adaptor must be issued by <a href="#::ServiceAdaptorClient::service_adaptor_create">service_adaptor_create()</a>
</div>
<div class="example">
<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">void process_files(service_adaptor_h service_adaptor, const char *file)
<p><span class="name">Remarks</span></p>
Thread safe functions
The result number's detail specification is defined service plugin or provider.
- The detail error message can be got using <font style="background-color: red">service_adaptor_get_last_error_message()</font>
+ The detail error message can be got using <a href="#::ServiceAdaptorClient::service_adaptor_get_last_error_message">service_adaptor_get_last_error_message()</a>
</div>
<div class="example">
<h4>3.1.1 Service Plugin Handle</h4>
<div class="brief">
The Plugn handle for Service Adaptor. <br>
- The handle can be created by <font style="background-color: red">service_adaptor_create_plugin()</font><br>
- When a handle is no longer needed, use <font style="background-color: red">service_plugin_destroy()</font>
+ The handle can be created by <a href="#::ServiceAdaptorClient::service_adaptor_create_plugin">service_adaptor_create_plugin()</a><br>
+ When a handle is no longer needed, use <a href="#::ServiceAdaptorClient::service_plugin_destroy">service_plugin_destroy()</a>
</div>
<pre class="webidl prettyprint"> struct _service_plugin_s* service_plugin_h </pre>
<p><span class="version">
</dl>
</div>
</div>
- <div class="ServicePluginAPIMethods">
+ <div class="interfaces" id="ServicePluginAPIMethods">
<h3>3.2 Methods</h3>
<!-- service_adaptor_create_plugin -->
<dl>
<div class="brief">
Create service plugin handle.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_adaptor_create_plugin(service_adaptor_h service_adaptor, const char *plugin_uri, service_plugin_h *plugin);
+ <div class="synopsis"><pre class="signature prettyprint">int service_adaptor_create_plugin(<a href="#ServiceAdaptorAPIServiceAdaptorHandle">service_adaptor_h</a> service_adaptor, const char *plugin_uri, <a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> *plugin);
</pre></div>
<p><span class="version">
Since: </span>
</div>
<div class="exception">
<p><span class="name">Remarks</span></p>
- plugin must be released memory using <font style="background-color: red">service_plugin_destroy()</font> when you no longer needs plugin's
+ plugin must be released memory using <a href="#::ServiceAdaptorClient::service_plugin_destroy">service_plugin_destroy()</a> when you no longer needs plugin's
</div>
<div class="example">
<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">service_adaptor_h service_adaptor = NULL;
<div class="brief">
Add Plugin Property.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_plugin_add_property(service_plugin_h plugin, const char *key, const char *value)
+ <div class="synopsis"><pre class="signature prettyprint">int service_plugin_add_property(<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin, const char *key, const char *value)
</pre></div>
<p><span class="version">
Since: </span>
</li>
<li class="param">
<span class="name">key</span>:
- The key of plugin property defined in <font style="background-color: red">3.1.3 Service Plugin API Macros</font>
+ The key of plugin property defined in <a href="#ServicePluginAPIServicePluginMacros">3.1.3 Service Plugin API Macros</a>
</li>
<li class="param">
<span class="name">value</span>:
<p><span class="name">Remarks</span></p>
Some kind of property key(Not mandatory) is defined in this API (That is named to SERVICE_PLUGIN_PROPERTY_XXX) <br>
If the key already exists in the property its current value is replaced with the new value . <br>
- plugin must be released memory using <font style="background-color: red">service_plugin_destroy()</font> when you no longer needs plugin's API
+ plugin must be released memory using <a href="#::ServiceAdaptorClient::service_plugin_destroy">service_plugin_destroy()</a> when you no longer needs plugin's API
</div>
<div class="exception">
<p><span class="name">Precondition</span></p>
- plugin must be issued by <font style="background-color: red">service_adaptor_create_plugin()</font>
+ plugin must be issued by <a href="#::ServiceAdaptorClient::service_adaptor_create_plugin">service_adaptor_create_plugin()</a>
</div>
<div class="example">
<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">void create_plugin(service_adaptor_h service_adaptor)
<div class="brief">
Gets Plugin Property.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_plugin_get_property(service_plugin_h plugin, const char *key, char **value)
+ <div class="synopsis"><pre class="signature prettyprint">int service_plugin_get_property(<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin, const char *key, char **value)
</pre></div>
<p><span class="version">
Since: </span>
</li>
<li class="param">
<span class="name">key</span>:
- The key of plugin property defined in <font style="background-color: red">3.1.3 Service Plugin API Macros</font>
+ The key of plugin property defined in <a href="#ServicePluginAPIServicePluginMacros">3.1.3 Service Plugin API Macros</a>
</li>
<li class="param">
<span class="name">value</span>:
</div>
<div class="exception">
<p><span class="name">Precondition</span></p>
- plugin must be issued by <font style="background-color: red">service_adaptor_create_plugin()</font>
+ plugin must be issued by <a href="#::ServiceAdaptorClient::service_adaptor_create_plugin">service_adaptor_create_plugin()</a>
</div>
<div class="example">
<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">bool check_plugin(service_plugin_h service_plugin)
<div class="brief">
Remove Plugin Property
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_plugin_remove_property(service_plugin_h plugin, const char *key)
+ <div class="synopsis"><pre class="signature prettyprint">int service_plugin_remove_property(<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin, const char *key)
</pre></div>
<p><span class="version">
Since: </span>
</li>
<li class="param">
<span class="name">key</span>:
- The key of plugin property defined in <font style="background-color: red">3.1.3 Service Plugin API Macros</font>
+ The key of plugin property defined in <a href="#ServicePluginAPIServicePluginMacros">3.1.3 Service Plugin API Macros</a>
</li>
</ul>
</div>
</div>
<div class="exception">
<p><span class="name">Precondition</span></p>
- plugin must be issued by <font style="background-color: red">service_adaptor_create_plugin()</font>
- The function property already set by <font style="background-color: red">service_adaptor_set_plugin_property()</font>
+ plugin must be issued by <a href="#::ServiceAdaptorClient::service_adaptor_create_plugin">service_adaptor_create_plugin()</a>
+ The function property already set by <a href="#::ServiceAdaptorClient::service_plugin_add_property">service_plugin_add_property</a>
</div>
<div class="example">
<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">bool reset_plugin(service_plugin_h service_plugin)
<div class="brief">
Requests start initialization for service plugin.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_plugin_start (service_plugin_h plugin, int service_mask)
+ <div class="synopsis"><pre class="signature prettyprint">int service_plugin_start (<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin, int service_mask)
</pre></div>
<p><span class="version">
Since: </span>
</li>
<li class="param">
<span class="name">service_mask</span>:
- The flag for use service plugins, this flag can be masked multiple enum (<font style="background-color: red">service_plugin_service_type_e</font>)
+ The flag for use service plugins, this flag can be masked multiple enum (<a href="#ServicePluginAPIServicePluginServiceType">service_plugin_service_type_e</a>
</li>
</ul>
</div>
</div>
<div class="exception">
<p><span class="name">Remarks</span></p>
- service_mask must be input using 'bit or' operation with <font style="background-color: red">service_plugin_service_type_e</font>
+ service_mask must be input using 'bit or' operation with <a href="#ServicePluginAPIServicePluginServiceType">service_plugin_service_type_e</a>
- for example,<br>
int service_mask |= SERVIE_PLUGIN_SERVICE_AUTH;<br>
service_mask |= SERVICE_PLUGIN_SERVICE_STORAGE; <br>
int ret = service_plugin_start(m_plugin , service_mask ); <br>
- If a program needs to stop plugin manually, use <font style="background-color: red">service_plugin_stop()</font>.
- But in <font style="background-color: red">service_plugin_destroy()</font>, automatically stop service plugin
+ If a program needs to stop plugin manually, use <a href="#::ServiceAdaptorClient::service_plugin_stop">service_plugin_stop()</a>.
+ But in <a href="#::ServiceAdaptorClient::service_plugin_destroy">service_plugin_destroy()</a>, automatically stop service plugin
</div>
<div class="exception">
<p><span class="name">Precondition</span></p>
- plugin must be issued by <font style="background-color: red">service_adaptor_create_plugin()</font>
+ plugin must be issued by <a href="#::ServiceAdaptorClient::service_adaptor_create_plugin">service_adaptor_create_plugin()</a>
</div>
<div class="example">
<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">service_plugin_h service_plugin = NULL;
<div class="brief">
Requests stop manually for service plugin.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_plugin_stop(service_plugin_h plugin)
+ <div class="synopsis"><pre class="signature prettyprint">int service_plugin_stop(<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin)
</pre></div>
<p><span class="version">
Since: </span>
<div class="exception">
<p><span class="name">Remarks</span></p>
If a program needs to stop plugin manually, use this function.
- But in <font style="background-color: red">service_plugin_destroy()</font>, automatically stop service plugin
- plugin must be released memory using <font style="background-color: red">service_plugin_destroy()</font> when you no longer needs plugin's API
+ But in <a href="#::ServiceAdaptorClient::service_plugin_destroy">service_plugin_destroy()</a>, automatically stop service plugin
+ plugin must be released memory using <a href="#::ServiceAdaptorClient::service_plugin_destroy">service_plugin_destroy()</a> when you no longer needs plugin's API
</div>
<div class="exception">
<p><span class="name">Precondition</span></p>
- plugin must be issued by <font style="background-color: red">service_adaptor_create_plugin()</font>
+ plugin must be issued by <a href="#::ServiceAdaptorClient::service_adaptor_create_plugin">service_adaptor_create_plugin()</a>
</div>
<div class="example">
<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">service_plugin_h service_plugin = NULL;
<div class="brief">
Stop and destroy Service Plugin.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_plugin_destroy(service_plugin_h plugin)
+ <div class="synopsis"><pre class="signature prettyprint">int service_plugin_destroy(<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin)
</pre></div>
<p><span class="version">
Since: </span>
</div>
<div class="exception">
<p><span class="name">Precondition</span></p>
- plugin must be issued by <font style="background-color: red">service_adaptor_create_plugin()</font>
+ plugin must be issued by <a href="#::ServiceAdaptorClient::service_adaptor_create_plugin">service_adaptor_create_plugin()</a>
</div>
<div class="example">
<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">service_plugin_h service_plugin = NULL;
<div class="interface" id ="StorageAPIStorageFileCallback">
<h4>4.1.5 Service storage file callback</h4>
<div class="brief">
- Callback for <font style="background-color: red">service_storage_file_list_foreach_file()</font> API
+ Callback for <a href="#::ServiceAdaptorClient::service_storage_file_list_foreach_file">service_storage_file_list_foreach_file()</a> API
</div>
- <pre class="webidl prettyprint"> typedef bool(*service_storage_file_cb)(service_storage_file_h file, void *user_data) </pre>
+ <pre class="webidl prettyprint"> typedef bool(*service_storage_file_cb)(<a href="#StorageAPIFile">service_storage_file_h</a> file, void *user_data) </pre>
<p><span class="version">
Since: </span>
2.4
</li>
<li class="param">
<span class="name">user_data</span>:
- Passed data from <font style="background-color: red">service_storage_file_list_foreach_file()</font>
+ Passed data from <a href="#::ServiceAdaptorClient::service_storage_file_list_foreach_file">service_storage_file_list_foreach_file()</a>
</li>
</ul>
</div>
<div class="interface" id ="StorageAPIStorageFileListCallback">
<h4>4.1.6 Service storage file list callback</h4>
<div class="brief">
- Callback for <font style="background-color: red">service_storage_get_file_list()</font> API
+ Callback for <a href="#::ServiceAdaptorClient::service_storage_get_file_list">service_storage_get_file_list()</a> API
</div>
- <pre class="webidl prettyprint"> void(* service_storage_file_list_cb)(int result, service_storage_file_list_h list, void *user_data) </pre>
+ <pre class="webidl prettyprint"> void(* service_storage_file_list_cb)(int result, <a href="#StorageAPIFileList">service_storage_file_list_h</a> list, void *user_data) </pre>
<p><span class="version">
Since: </span>
2.4
<ul>
<li class="param">
<span class="name">result</span>:
- Result code for <font style="background-color: red">service_storage_get_file_list() (see service_adaptor_error_e)</font>
+ Result code for <a href="#::ServiceAdaptorClient::service_storage_get_file_list">service_storage_get_file_list()</a> (see <a href="#::ServiceAdaptorClient::ServiceErrorCode">service_adaptor_error_e</a>)
<p><span class="return">Possible value:</span></p>
<ul>
<li class="returntypes">
<span class="name">SERVICE_ADAPTOR_ERROR_PLUGIN_FAILED </span>
Failed in Plugin internal. <br>
Error code and error message can be obtained using
- <font style="background-color: red">service_adaptor_get_last_result() and service_adaptor_get_last_error_message()</font> method. <br>
+ <a href="#::ServiceAdaptorClient::service_adaptor_get_last_result">service_adaptor_get_last_result()</a> and <a href="#::ServiceAdaptorClient::service_adaptor_get_last_error_message">service_adaptor_get_last_error_message()</a> method. <br>
Error codes and messages are described in Service Plugin.
</li>
<li class="returntypes">
</li>
<li class="param">
<span class="name">user_data</span>:
- Passed data from <font style="background-color: red">service_storage_get_file_list()</font>
+ Passed data from <a href="#::ServiceAdaptorClient::service_storage_get_file_list">service_storage_get_file_list()</a>
</li>
</ul>
</div>
<ul>
<li class="param">
<span class="name">result</span>:
- Result code for storage async operation <font style="background-color: red">(see service_adaptor_error_e)</font>
+ Result code for storage async operation (see <a href="#::ServiceAdaptorClient::ServiceErrorCode">service_adaptor_error_e</a>)
<p><span class="return">Possible value:</span></p>
<ul>
<li class="returntypes">
<span class="name">SERVICE_ADAPTOR_ERROR_PLUGIN_FAILED </span>
Failed in Plugin internal. <br>
Error code and error message can be obtained using
- <font style="background-color: red">service_adaptor_get_last_result() and service_adaptor_get_last_error_message()</font> method. <br>
+ <a href="#::ServiceAdaptorClient::service_adaptor_get_last_result">service_adaptor_get_last_result()</a> and <a href="#::ServiceAdaptorClient::service_adaptor_get_last_error_message">service_adaptor_get_last_error_message()</a> method. <br>
Error codes and messages are described in Service Plugin.
</li>
<li class="returntypes">
</li>
<li class="param">
<span class="name">user_data</span>:
- Passed data from <font style="background-color: red">service_storage_set_task_progress_cb()</font>
+ Passed data from <a href="#::ServiceAdaptorClient::service_storage_set_task_progress_cb">service_storage_set_task_progress_cb</a>
</li>
</ul>
</div>
</li>
<li class="param">
<span class="name">user_data</span>:
- Passed data from <font style="background-color: red">service_storage_set_task_state_changed_cb()</font>
+ Passed data from <a href="#::ServiceAdaptorClient::service_storage_set_task_state_changed_cb">service_storage_set_task_state_changed_cb()</a>
</li>
</ul>
</div>
</div>
</div>
- <div class="StorageAPIMethods">
+ <div class="interfaces" id="StorageAPIMethods">
<h3>4.2 Methods</h3>
<!-- service_storage_create_download_task -->
<dl>
<div class="brief">
Creates storage task for download file from storage.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_create_download_task(service_plugin_h plugin, const char *storage_path, const char *download_path, service_storage_task_h *task)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_create_download_task(<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin, const char *storage_path, const char *download_path, <a href="#StorageAPIStorageTask">service_storage_task_h</a> *task)
</pre></div>
<p><span class="version">
Since: </span>
</div>
<div class="exception">
<p><span class="name">Remarks</span></p>
- task must be released memory using service_storage_destroy_task() when the task no longer run <br>
+ task must be released memory using <a href="#::ServiceAdaptorClient::service_storage_destroy_task">service_storage_destroy_task()</a> when the task no longer run <br>
If the function returns SERVICE_ADAPTOR_ERROR_PLUGIN_FAILED, error code and error message can be obtained using
- <font style="background-color: red">service_adaptor_get_last_result()and service_adaptor_get_last_error_message() method. </font> <br>
+ <a href="#::ServiceAdaptorClient::service_adaptor_get_last_result">service_adaptor_get_last_result()</a> and <a href="#::ServiceAdaptorClient::service_adaptor_get_last_error_message">service_adaptor_get_last_error_message()</a> method. <br>
</div>
<div class="example">
<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">bool create_task(service_plugin_h plugin)
<div class="brief">
Creates storage task for download thumbnail from storage.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_create_download_thumbnail_task(service_plugin_h plugin, const char *storage_path, const char *download_path, int thumbnail_size, service_storage_task_h *task)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_create_download_thumbnail_task(<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin, const char *storage_path, const char *download_path, int thumbnail_size, <a href="#StorageAPIStorageTask">service_storage_task_h</a> *task)
</pre></div>
<p><span class="version">
Since: </span>
If thumbnail_size is 0 , gets default size thumbnail, the default size must be defined plugin SPEC <br>
If thumbnail_size is -1 , gets minimum size thumbnail be supported plugin <br>
If thumbnail_size is -2 , gets maximum size thumbnail be supported plugin <br>
- task must be released memory using <font style="background-color: red">service_storage_destroy_task()</font> when the task no longer run <br>
+ task must be released memory using <a href="#::ServiceAdaptorClient::service_storage_destroy_task">service_storage_destroy_task()</a> when the task no longer run <br>
If the function returns SERVICE_ADAPTOR_ERROR_PLUGIN_FAILED, error code and error message can be obtained using
- <font style="background-color: red">service_adaptor_get_last_result()and service_adaptor_get_last_error_message() method. </font> <br>
+ <a href="#::ServiceAdaptorClient::service_adaptor_get_last_result">service_adaptor_get_last_result()</a> and <a href="#::ServiceAdaptorClient::service_adaptor_get_last_error_message">service_adaptor_get_last_error_message()</a> method. <br>
</div>
<div class="example">
<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">bool download_thumbnail(service_plugin_h plugin)
<div class="brief">
Creates storage task for upload file to storage
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_create_upload_task(service_plugin_h plugin, const char *file_path, const char *upload_path, service_storage_task_h *task)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_create_upload_task(<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin, const char *file_path, const char *upload_path, <a href="#StorageAPIStorageTask">service_storage_task_h</a> *task)
</pre></div>
<p><span class="version">
Since: </span>
</div>
<div class="exception">
<p><span class="name">Remarks</span></p>
- task must be released memory using <font style="background-color: red">service_storage_destroy_task()</font> when the task no longer run <br>
+ task must be released memory using <a href="#::ServiceAdaptorClient::service_storage_destroy_task">service_storage_destroy_task()</a> when the task no longer run <br>
If the function returns SERVICE_ADAPTOR_ERROR_PLUGIN_FAILED, error code and error message can be obtained using
- <font style="background-color: red">service_adaptor_get_last_result()and service_adaptor_get_last_error_message() method. </font> <br>
+ <a href="#::ServiceAdaptorClient::service_adaptor_get_last_result">service_adaptor_get_last_result()</a> and <a href="#::ServiceAdaptorClient::service_adaptor_get_last_error_message">service_adaptor_get_last_error_message()</a> method. <br>
</div>
<div class="example">
<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">bool upload(service_plugin_h plugin)
<div class="brief">
Sets a callback function to be invoked when progress of the task running
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_set_task_progress_cb(service_storage_task_h task, service_storage_task_progress_cb callback, void *user_data)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_set_task_progress_cb(<a href="#StorageAPIStorageTask">service_storage_task_h</a> task, <a href="#StorageAPIStorageTaskProgressCallback">service_storage_task_progress_cb</a> callback, void *user_data)
</pre></div>
<p><span class="version">
Since: </span>
<div class="exception">
<p><span class="name">Remarks</span></p>
If the function returns SERVICE_ADAPTOR_ERROR_PLUGIN_FAILED, error code and error message can be obtained using
- <font style="background-color: red">service_adaptor_get_last_result()and service_adaptor_get_last_error_message() method. </font> <br>
+ <a href="#::ServiceAdaptorClient::service_adaptor_get_last_result">service_adaptor_get_last_result()</a> and <a href="#::ServiceAdaptorClient::service_adaptor_get_last_error_message">service_adaptor_get_last_error_message()</a> method. <br>
Error codes and messages are described in Service Plugin.
</div>
<div class="example">
<div class="brief">
Sets a callback function to be invoked when change of the task running state
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_set_task_state_changed_cb(service_storage_task_h task, service_storage_task_state_cb callback, void *user_data)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_set_task_state_changed_cb(<a href="#StorageAPIStorageTask">service_storage_task_h</a> task, <a href="#StorageAPIStorageTaskStateCallback">service_storage_task_state_cb</a> callback, void *user_data)
</pre></div>
<p><span class="version">
Since: </span>
<div class="exception">
<p><span class="name">Remarks</span></p>
If the function returns SERVICE_ADAPTOR_ERROR_PLUGIN_FAILED, error code and error message can be obtained using
- <font style="background-color: red">service_adaptor_get_last_result()and service_adaptor_get_last_error_message() method. </font> <br>
+ <a href="#::ServiceAdaptorClient::service_adaptor_get_last_result">service_adaptor_get_last_result()</a> and <a href="#::ServiceAdaptorClient::service_adaptor_get_last_error_message">service_adaptor_get_last_error_message()</a> method. <br>
Error codes and messages are described in Service Plugin.
</div>
<div class="example">
<div class="brief">
Unsets the progress callback function.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_unset_task_progress_cb(service_storage_task_h task)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_unset_task_progress_cb(<a href="#StorageAPIStorageTask">service_storage_task_h</a> task)
</pre></div>
<p><span class="version">
Since: </span>
</div>
<div class="exception">
<p><span class="name">Remarks</span></p>
- This function must be called before starting task (see <font style="background-color: red">service_storage_start_task()</font>)
+ This function must be called before starting task (see <a href="#::ServiceAdaptorClient::service_storage_start_task">service_storage_start_task()</a>)
</div>
<div class="example">
<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">void set_state_cb_in_task(service_storage_task_h task)
<div class="brief">
Unsets the state changed callback function
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_unset_task_state_changed_cb(service_storage_task_h task)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_unset_task_state_changed_cb(<a href="#StorageAPIStorageTask">service_storage_task_h</a> task)
</pre></div>
<p><span class="version">
Since: </span>
</div>
<div class="exception">
<p><span class="name">Remarks</span></p>
- This function must be called before starting task (see <font style="background-color: red">service_storage_start_task()</font>)
+ This function must be called before starting task (see <a href="#::ServiceAdaptorClient::service_storage_start_task">service_storage_start_task()</a>)
</div>
<div class="example">
<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">void set_state_cb_in_task(service_storage_task_h task)
<div class="brief">
Starts storage task, asynchronously.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_start_task(service_storage_task_h task)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_start_task(<a href="#StorageAPIStorageTask">service_storage_task_h</a> task)
</pre></div>
<p><span class="version">
Since: </span>
<div class="exception">
<p><span class="name">Remarks</span></p>
If the function returns SERVICE_ADAPTOR_ERROR_PLUGIN_FAILED, error code and error message can be obtained using
- <font style="background-color: red">service_adaptor_get_last_result()and service_adaptor_get_last_error_message() method. </font> <br>
+ <a href="#::ServiceAdaptorClient::service_adaptor_get_last_result">service_adaptor_get_last_result()</a> and <a href="#::ServiceAdaptorClient::service_adaptor_get_last_error_message">service_adaptor_get_last_error_message()</a> method. <br>
Error codes and messages are described in Service Plugin.
</div>
<div class="example">
<div class="brief">
Cancels storage task.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_cancel_task(service_storage_task_h task);
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_cancel_task(<a href="#StorageAPIStorageTask">service_storage_task_h</a> task);
</pre></div>
<p><span class="version">
Since: </span>
</div>
<div class="exception">
<p><span class="name">Remarks</span></p>
- task must be released memory using <font style="background-color: red">service_storage_destroy_task()</font> when the task no longer run <br>
+ task must be released memory using <a href="#::ServiceAdaptorClient::service_storage_destroy_task">service_storage_destroy_task()</a> when the task no longer run <br>
If the function returns SERVICE_ADAPTOR_ERROR_PLUGIN_FAILED, error code and error message can be obtained using
- <font style="background-color: red">service_adaptor_get_last_result()and service_adaptor_get_last_error_message() method. </font> <br>
+ <a href="#::ServiceAdaptorClient::service_adaptor_get_last_result">service_adaptor_get_last_result()</a> and <a href="#::ServiceAdaptorClient::service_adaptor_get_last_error_message">service_adaptor_get_last_error_message()</a> method. <br>
Error codes and messages are described in Service Plugin.
</div>
<div class="example">
<div class="brief">
Destroys storage task.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_destroy_task(service_storage_task_h task)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_destroy_task(<a href="#StorageAPIStorageTask">service_storage_task_h</a> task)
</pre></div>
<p><span class="version">
Since: </span>
<div class="exception">
<p><span class="name">Remarks</span></p>
If the function returns SERVICE_ADAPTOR_ERROR_PLUGIN_FAILED, error code and error message can be obtained using
- <font style="background-color: red">service_adaptor_get_last_result()and service_adaptor_get_last_error_message() method. </font> <br>
+ <a href="#::ServiceAdaptorClient::service_adaptor_get_last_result">service_adaptor_get_last_result()</a> and <a href="#::ServiceAdaptorClient::service_adaptor_get_last_error_message">service_adaptor_get_last_error_message()</a> method. <br>
</div>
<div class="example">
<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">bool upload(service_plugin_h plugin)
<div class="brief">
Gets file list from storage, asynchronously.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_get_file_list(service_plugin_h plugin, const char *dir_path, service_storage_file_list_cb callback, void *user_data)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_get_file_list(<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin, const char *dir_path, <a href="#StorageAPIStorageFileListCallback">service_storage_file_list_cb</a> callback, void *user_data)
</pre></div>
<p><span class="version">
Since: </span>
<div class="brief">
Gets length of the file list handle.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_list_get_length(service_storage_file_list_h list, int *length)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_list_get_length(<a href="#StorageAPIFileList">service_storage_file_list_h</a> list, int *length)
</pre></div>
<p><span class="version">
Since: </span>
<div class="brief">
Foreach All of the file from file list.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_list_foreach_file(service_storage_file_list_h list, service_storage_file_cb callback, void *user_data)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_list_foreach_file(<a href="#StorageAPIFileList">service_storage_file_list_h</a> list, <a href="#StorageAPIStorageFileCallback">service_storage_file_cb</a> callback, void *user_data)
</pre></div>
<p><span class="version">
Since: </span>
<div class="brief">
Clones the file list handle.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_list_clone(service_storage_file_list_h src_list, service_storage_file_list_h *dst_list)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_list_clone(<a href="#StorageAPIFileList">service_storage_file_list_h</a> src_list, <a href="#StorageAPIFileList">service_storage_file_list_h</a> *dst_list)
</pre></div>
<p><span class="version">
Since: </span>
</div>
<div class="exception">
<p><span class="name">Remarks</span></p>
- file must be released memory using <font style="background-color: red">service_storage_file_list_destroy()</font> when you no longer needs this handle
+ file must be released memory using <a href="#::ServiceAdaptorClient::service_storage_file_list_destroy">service_storage_file_list_destroy()</a> when you no longer needs this handle
</div>
<div class="example">
<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">void file_list_cb(int result, service_storage_file_list_h list, void *user_data)
<div class="brief">
Destroys the file list handle.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_list_destroy(service_storage_file_list_h list)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_list_destroy(<a href="#StorageAPIFileList">service_storage_file_list_h</a> list)
</pre></div>
<p><span class="version">
Since: </span>
<div class="brief">
Clones the file handle.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_clone(service_storage_file_h src_file, service_storage_file_h *dst_file)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_clone(<a href="#StorageAPIFile">service_storage_file_h</a> src_file, <a href="#StorageAPIFile">service_storage_file_h</a> *dst_file)
</pre></div>
<p><span class="version">
Since: </span>
</div>
<div class="exception">
<p><span class="name">Remarks</span></p>
- file must be released memory using <font style="background-color: red">service_storage_file_destroy()</font> when you no longer needs this handle
+ file must be released memory using <a href="#::ServiceAdaptorClient::service_storage_file_destroy">service_storage_file_destroy()</a> when you no longer needs this handle
</div>
<div class="example">
- <span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">bool storage_file_cb(service_storage_file_h file, void *user_data)
+ <span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">bool storage_file_cb(service_storage_file_h file, void *user_data)
{
bool isDir = false;
service_storage_file_is_dir(file, &isDir);
<div class="brief">
Gets logical path from file handle.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_get_logical_path(service_storage_file_h file, char **path)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_get_logical_path(<a href="#StorageAPIFile">service_storage_file_h</a> file, char **path)
</pre></div>
<p><span class="version">
Since: </span>
<div class="brief">
Gets physical path from file handle.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_get_physical_path(service_storage_file_h file, char **path)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_get_physical_path(<a href="#StorageAPIFile">service_storage_file_h</a> file, char **path)
</pre></div>
<p><span class="version">
Since: </span>
<div class="brief">
Gets size of a file.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_get_size(service_storage_file_h file, unsigned long long *size)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_get_size(<a href="#StorageAPIFile">service_storage_file_h</a> file, unsigned long long *size)
</pre></div>
<p><span class="version">
Since: </span>
<div class="brief">
Gets information if file handle is directory or not.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_is_dir(service_storage_file_h file, bool *is_dir)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_is_dir(<a href="#StorageAPIFile">service_storage_file_h</a> file, bool *is_dir)
</pre></div>
<p><span class="version">
Since: </span>
<div class="brief">
Clones the file handle.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_destroy(service_storage_file_h file)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_file_destroy(<a href="#StorageAPIFile">service_storage_file_h</a> file)
</pre></div>
<p><span class="version">
Since: </span>
<div class="brief">
Removes file or directory in storage.
</div>
- <div class="synopsis"><pre class="signature prettyprint">int service_storage_remove(service_plugin_h plugin, const char *remove_path, service_storage_result_cb callback, void *user_data)
+ <div class="synopsis"><pre class="signature prettyprint">int service_storage_remove(<a href="#ServicePluginAPIServicePluginHandle">service_plugin_h</a> plugin, const char *remove_path, <a href="#StorageAPIStorageResultCallback">service_storage_result_cb</a> callback, void *user_data)
</pre></div>
<p><span class="version">
Since: </span>
<div class="exception">
<p><span class="name">Remarks</span></p>
If the function returns SERVICE_ADAPTOR_ERROR_PLUGIN_FAILED, error code and error message can be obtained using
- <font style="background-color: red">service_adaptor_get_last_result()and service_adaptor_get_last_error_message() method. </font> <br>
+ <a href="#::ServiceAdaptorClient::service_adaptor_get_last_result">service_adaptor_get_last_result()</a> and <a href="#::ServiceAdaptorClient::service_adaptor_get_last_error_message">service_adaptor_get_last_error_message()</a> method. <br>
Error codes and messages are described in Service Plugin.
</div>
<div class="example">