<br><br><div class="gmail_quote">On Mon, May 7, 2012 at 5:03 AM, Albert Astals Cid <span dir="ltr"><<a href="mailto:aacid@kde.org" target="_blank">aacid@kde.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
El Dijous, 3 de maig de 2012, a les 00:32:37, Vishesh Handa va escriure:<br>
> Hey everyone!<br>
><br>
> snip<br>
<div class="im">><br>
> The second solution is -<br>
> * nepomuk-core installs the headers in nepomuk2<br>
> * the library already has a different name, so there are no clashes over<br>
> there<br>
> * kde-runtime/nepomuk is removed<br>
> * nepomuk-core is added as a dependency of kde-runtime<br>
><br>
> The problem with the second solution is that all applications using Nepomuk<br>
> will also need to depend on nepomuk-core. So far the list includes -<br>
> Dolphin, KDE-pim and Telepathy (kinda)<br>
<br>
</div>Why is this needed? Can't they continue using the old APIs?<br></blockquote><div><br>Short answer: No<br><br>Long Answer:<br><br>The original Nepomuk APIs that are present in kdelibs are synchronous. They basically provide a glorified cache over the Nepomuk data which is stored in virtuoso. Applications which push large amounts of information into Nepomuk (Feeders) do not need to know anything about the data already present in Nepomuk, they just need to push large quantities of data as fast as they can.<br>
<br>Using the synchronous kdelibs APIs makes this very hard. Additionally, the asynchronous API for pushing data provides has in-built duplicate detection and merging. That's something that was *very hard* to implement. It seems like an overkill for the clients to implement something like that on their own.<br>
<br>kde-pim and Telepathy use these new asynchronous APIs. So does Trueg's TV Naming Application.<br><br>Secondly, the APIs in kdelibs did not provide any mechanism for monitoring changes in resources. We've now finally implemented a good method of monitoring changes that does not tax the entire system. Dolphin uses this new ResourceWatcher API to monitor for changes in tags and ratings.<br>
<br>And finally, the new APIs provide a method for properly merging resources. A couple of miscellaneous applications are using this - Nepomuk Tag manager.<br><br>Btw, when I say "new APIs", I mean introduced in kde-runtime 4.7. So they are about a year old.<br>
<br></div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Cheers,<br>
  Albert<br>
<div class="HOEnZb"><div class="h5"><br>
><br>
> What do you guys think?<br>
><br>
> [1] <a href="https://projects.kde.org/projects/kde/kdelibs/nepomuk-core" target="_blank">https://projects.kde.org/projects/kde/kdelibs/nepomuk-core</a><br>
> [2]<br>
> <a href="http://trueg.wordpress.com/2011/06/08/nepomuk-2-0-and-the-data-management-se" target="_blank">http://trueg.wordpress.com/2011/06/08/nepomuk-2-0-and-the-data-management-se</a><br>
> rvice/<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br><span style="color:rgb(192,192,192)">Vishesh Handa</span><br><br>