playground/base/plasma/dataengines/akonadi

David Baron d_baron at 012.net.il
Mon Feb 9 21:28:17 CET 2009


> On Monday 09 February 2009 08:37:48 David Baron wrote:
> > Great.
> >
> > I downloaded and compiled.
> >
> > I still get "no data sources" in the explorer and in some test code which
> > would simply show the sources() list.
>
> You need to actually request sources. For example connect to
> "EmailCollections" or "ContactCollections". The dataengine will only load
> the stuff from Akonadi you actually ask for.
OK.

In the explorer, requeted ContactCollections
This showed by a ContactCollection-6 dir address book
If I the request ContactCollection-6, I do indeed get all the contacts by 
number. Trying to navigate this (now large) list quickly hangs up the 
explorer.
> Alternatively, add
>
> fetchEmailCollections();
> fetchContactColletions();
>
> to the constructor of the dataengine. This way it'll load the collections
> on engine startup. You can then use the collections you get back to
> retrieve emails and contacts.
Because of a pontentially large amount to date, this approach should not be 
used.

My applet will want to assemble a list of QAbstractListItems or  QStringLists 
something like:
contact-name phone-number-1
contact-name phone-number-2
contact-name2 phone-number-1
etc.

There may be several collection-# lists and a lot of data. Once loaded which 
takes a bit of time, possibly geometric by number of items!, kaddressbook 
seems to run reasonably (using the akonadi dir resource).

I would load the data in a background thread--question is how long it will 
need to load and be navigated to fill a sorted listwidget. I guess I'll just 
have to try it out and see.

Another problem is that there are a slew of Akonadi-???-resource children 
(which I try to renice using and as this stuff bogs down the system). I 
believe that many of the complaints about 4.2 being too slow are because of 
akonadi and maybe nepomuk--these need to be niced and means of 
servicing/optimizing the data, i.e. eliminating duplicate contacts which I got 
accidentally, need be provided.






More information about the Plasma-devel mailing list