index.html 3.41 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en_US" lang="en_US">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- index.qdoc -->
  <title>Nemo TransferEngine 1.0: Nemo Transfer Engine</title>
<li>Nemo Transfer Engine</li>
<p class="naviNextPrevious headerNavi">
</p><p/>
<h1 class="title">Nemo Transfer Engine</h1>
<span class="subtitle"></span>
<!-- $$$index.html-description -->
<div class="descr"> <a name="details"></a>
<p>The Nemo Transfer Engine is a daemon process which takes care of tracking sharing, sync and downloads. In addition to just tracking those operations, it provides an API to create new share plugins and different functionality related these operations.The Nemo Transfer Engine doesn't provide any UI components, but the plugin interface expects sharing UIs to be written as QML.</p>
<p>The Nemo Transfer Engine can be understood as a front end to the database which contain all the information about sharing, syncs and downloads. For syncs and downloads it acts only as storage manager so clients can use Nemo Transfer Engine client API to create and update sync and download events. For sharing, Nemo Transfer Engine provides own API and supports share plugins.</p>
<p>See <a href="transferengine.html">TransferEngine</a> <a href="dbmanager.html">DbManager</a></p>
<a name="nemo-transfer-engine-api"></a>
<h3>Nemo Transfer Engine API</h3>
<p>The API can be divided in two different parts: the share plugin API and the client API.</p>
<a name="share-plugin-api"></a>
<h4>Share Plugin API</h4>
<p>Share plugin is a Qt plugin, which must be implemented using C++ interfaces defined by Nemo Transfer Engine. The plugins must be installed to the specific location where Nemo Transfer Engine loads them. The actual share functionality implementation depends on the client e.g&#x2e; if it's HW specific like NFC or online service such as Facebook. Each plugin must implement or use the following interface:</p>
<ul>
<li><a href="transferplugininterface.html">TransferPluginInterface</a> Share plugin must implement this interface</li>
<li>MediaTransferInterface Share plugin must implement this interface</li>
<li>TransferPluginInfo Share plugin must provide information about plugin using this class</li>
<li><a href="transfermethodinfo.html">TransferMethodInfo</a> Share plugin must provide information about e.g&#x2e; accounts using this class</li>
</ul>
<a name="client-api"></a>
<h4>Client API</h4>
<p>Client API can also be divided in two sections: full features DBus API and <a href="transferengineclient.html">TransferEngineClient</a> Interface. The first one supports all the features Nemo Transfer Engine provides and makes possible to implement for example Transfer UI and client side sharing interface on top of it. The <a href="transferengineclient.html">TransferEngineClient</a> is meant to be used by clients who want to inform Nemo Transfer Engine of ongoing Sync or Downloads.</p>
<ul>
<li>DBus API - see org.nemomobile.transferengine.xml. For the client side it will generate TransferEnginInterface class which can be used directly.</li>
<li><a href="transferengineclient.html">TransferEngineClient</a> The convenience API to create Sync and Download events.</li>
</ul>
</div>
<!-- @@@index.html -->
<p class="naviNextPrevious footerNavi">
</p>
</body>
</html>