Persistent data with KDED (or KIOD) and a KIO Slave?

Mark Gaiser markg85 at gmail.com
Sun Oct 15 12:57:36 UTC 2017


On Sat, Oct 14, 2017 at 8:27 AM, David Faure <faure at kde.org> wrote:

> On dimanche 8 octobre 2017 15:22:00 CEST Mark Gaiser wrote:
> > But then i still miss one rather important detail that i can't really
> find
> > anywhere..
> > Lets say I have that module and call it "tags2" (as Baloo already has
> tags,
> > therefore tags2 to prevent naming issues).
> >
> > So i make a dbus service file named:
> >   Name=org.kde.tags2
> >
> > And in the "tags2.json" i put:
> >
> > {
> >     "KPlugin": {
> >         "Description": "Put tags on files and folders.",
> >         "Name": "Tags 2",
> >         "ServiceTypes": [
> >             "KDEDModule"
> >         ]
> >     },
> >
> >     "X-KDE-DBus-ModuleName": "tags2",
> >     "X-KDE-DBus-ServiceName": "org.kde.tags2"
> > }
> >
> > What do i do in the client side code to start this module?
>
> You just make a DBus call to the service org.kde.tags, with
> object path /modules/tags2. That will start kiod if needed,
> load the module, and make the call.
>
> The best solution for this is with type safety rather than without,
> i.e. generating C++ from the DBus xml file. See e.g.
> kio/core/kpasswdserverclient.cpp which makes calls to the kiod
> kpasswdserver
> module using the generated OrgKdeKPasswdServerInterface class.
> qt5_add_dbus_interface() is the cmake function for doing that.
>
> > That "client side" can be an IO slave, but it can also be some special
> Tags
> > helper classes to create a new tag name with description and icon or
> such.
>
> Sure, anyone can make dbus calls.
>
> > I need to call something to trigger KIOD to start this module, but i
> can't
> > figure out what.
> >
> > How do i see qCDebug output from kiod plugins anyhow?
>
> In ~/.xsession-errors, or by killing kiod and restarting it in a terminal.
>
>
Hi David,

Thank you for the detailed reply, this really helps and is information that
is quite difficult to find ;)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20171015/37b71c84/attachment.html>


More information about the Kde-frameworks-devel mailing list