KDE 4.9 PyKDE API Reference

- KDE's Python API

# Service Class Reference

`from PyKDE4.nepomuk import *`

Inherits: QObject
Namespace: Nepomuk

## Detailed Description

\class Service nepomukservice.h Nepomuk/Service

Base class for all Nepomuk services.

A %Nepomuk service is intended to perform some kind of operation on the %Nepomuk data storage. This can include data gathering, data enrichment, or enhanced data query.

%Nepomuk services are started and managed by the %Nepomuk server. Very much like KDED modules a %Nepomuk service has autostart and start-on-demand properties. In addition a %Nepomuk service can define an arbitrary number of dependencies which are necessary to run the service. These dependencies name other services.

To create a new %Nepomuk service one derives a new class from Nepomuk.Service and exports it as a standard KDE module, i.e. plugin.

     class MyService : public Nepomuk.Service
     {
        // do fancy stuff
     };

Export it as a %Nepomuk service plugin:

     NEPOMUK_EXPORT_SERVICE(MyService, "mynepomukservice")

A desktop file describes the service's properties:

     [Desktop Entry]
     Type=Service
     X-KDE-ServiceTypes=NepomukService
     X-KDE-Library=mynepomukservice
     X-KDE-Nepomuk-autostart=true
     X-KDE-Nepomuk-start-on-demand=false
     # Dependencies default to 'nepomukstorage'
     X-KDE-Nepomuk-dependencies=nepomukfoobar
     Name=My fancy Nepomuk Service
     Comment=A Nepomuk service that does fancy things

The %Nepomuk server will automatically export all D-Bus interfaces defined on the service instance. Thus, the simplest way to export methods via D-Bus is by marking them with .

Author:
  Sebastian Trueg <trueg@kde.org>

Since:
  4.1

## Methods

| __init__ (self, QObject parent=0, bool delayedInitialization=0)
Soprano.Model | mainModel (self)
| setServiceInitialized (self, bool success)

## Method Documentation

__init__ | ( | self, |
|  | QObject | parent=0,
|  | bool | delayedInitialization=0
| ) |  |  |

Create a new Service.

Parameters:

  | parent | The parent object

Parameters:

  | delayedInitialization | If true the service will not be usable until setServiceInitialized has been called. This allows to design services that need to perform long initialization tasks.

Soprano.Model mainModel | ( |  | self ) |

Returns:
  A wrapper model which provides a connection to the %Nepomuk server.

setServiceInitialized | ( | self, |
|  | bool | success
| ) |  |  |

A %Nepomuk service can make use of a warmup phase in which it is not usable yet. Call this method once your service is fully initialized.

Most services do not need to call this method.

Parameters:

  | success | Set to true if initialization was successful, false otherwise.

\sa Service.Service