Archive:Development/Tutorials/Metadata/Nepomuk/NepomukServer (zh CN): Difference between revisions

    From KDE TechBase
    No edit summary
    m (Text replace - "<code>" to "<syntaxhighlight lang="text">")
    Line 27: Line 27:
    '''服务管理DBus接口'''称为''org.kde.nepomuk.ServiceManager'',发布在''servicemanager'';可以提供打开关闭[[Development/Tutorials/Metadata/Nepomuk/NepomukServices|Nepomuk服务]]的方法,列举所有运行的服务,并请求这些接口的基本信息:
    '''服务管理DBus接口'''称为''org.kde.nepomuk.ServiceManager'',发布在''servicemanager'';可以提供打开关闭[[Development/Tutorials/Metadata/Nepomuk/NepomukServices|Nepomuk服务]]的方法,列举所有运行的服务,并请求这些接口的基本信息:


    <code>QStringList availableServices()</code>
    <syntaxhighlight lang="text">QStringList availableServices()</code>
    列举所有可用的服务,运行着和没有运行的。
    列举所有可用的服务,运行着和没有运行的。


    <code>bool isServiceAutostarted(QString service)</code>
    <syntaxhighlight lang="text">bool isServiceAutostarted(QString service)</code>
    服务是否自动启动。
    服务是否自动启动。


    <code>bool isServiceInitialized(QString name)</code>
    <syntaxhighlight lang="text">bool isServiceInitialized(QString name)</code>
    服务是否已经启动并初始化过。(在运行的服务有可能还在初始化构成中)。
    服务是否已经启动并初始化过。(在运行的服务有可能还在初始化构成中)。


    <code>QStringList runningServices()</code>
    <syntaxhighlight lang="text">QStringList runningServices()</code>
    列举所有运行的服务。
    列举所有运行的服务。


    <code>void serviceInitialized(QString name)</code>
    <syntaxhighlight lang="text">void serviceInitialized(QString name)</code>
    标明服务是否已经完成初始化并随时待命可用。
    标明服务是否已经完成初始化并随时待命可用。


    <code>void setServiceAutostarted(QString service, bool autostart)</code>
    <syntaxhighlight lang="text">void setServiceAutostarted(QString service, bool autostart)</code>
    改变自动启动的行为。
    改变自动启动的行为。


    <code>bool startService(QString name)</code>
    <syntaxhighlight lang="text">bool startService(QString name)</code>
    开启服务。同时打开所有依赖关系。
    开启服务。同时打开所有依赖关系。


    <code>bool stopService(QString name)</code>
    <syntaxhighlight lang="text">bool stopService(QString name)</code>
    停止服务,同时停止所有依赖关系。
    停止服务,同时停止所有依赖关系。


    Line 59: Line 59:
    称为''org.kde.NepomukServer''的'''Nepomuk服务配置接口'''在''nepomukserver''发布,可以用来配置服务器。Nepomuk KCM以下列方式使用这些方法:
    称为''org.kde.NepomukServer''的'''Nepomuk服务配置接口'''在''nepomukserver''发布,可以用来配置服务器。Nepomuk KCM以下列方式使用这些方法:


    <code>QString defaultRepository()</code>
    <syntaxhighlight lang="text">QString defaultRepository()</code>
    返回缺省仓库名(Soprano服务器提供一些存储服务的API,用于创建多个存储仓库。Nepomu只用一个:''main'')。
    返回缺省仓库名(Soprano服务器提供一些存储服务的API,用于创建多个存储仓库。Nepomu只用一个:''main'')。


    <code>void enableNepomuk(bool enabled)</code>
    <syntaxhighlight lang="text">void enableNepomuk(bool enabled)</code>
    打开/关闭整个Nepomuk系统。''enable''设为''false''就可以停止所有服务。
    打开/关闭整个Nepomuk系统。''enable''设为''false''就可以停止所有服务。


    <code>void enableStrigi(bool enabled)</code>
    <syntaxhighlight lang="text">void enableStrigi(bool enabled)</code>
    打开/关闭整Strigi文件索引。
    打开/关闭整Strigi文件索引。


    <code>bool isNepomukEnabled()</code>Nepomuk是否打开。
    <syntaxhighlight lang="text">bool isNepomukEnabled()</code>Nepomuk是否打开。


    <code>bool isStrigiEnabled()</code>Strigi是否打开。
    <syntaxhighlight lang="text">bool isStrigiEnabled()</code>Strigi是否打开。


    <code>void quit()</code>退出Nepomuk服务器以及停止所有服务。''注意:这个方法只做内部调试之用。''
    <syntaxhighlight lang="text">void quit()</code>退出Nepomuk服务器以及停止所有服务。''注意:这个方法只做内部调试之用。''


    <code>void reconfigure()</code>刷新配置,一般没有必要调用。
    <syntaxhighlight lang="text">void reconfigure()</code>刷新配置,一般没有必要调用。

    Revision as of 20:44, 29 June 2011


    Development/Tutorials/Metadata/Nepomuk/NepomukServer


    Nepomuk服务器程序
    Tutorial Series   [[../|Nepomuk]]
    Previous  
    What's Next   高级查询
    Further Reading   RDF和本体介绍, [[../Resources|用Nepomuk处理资源]], Nepomuk服务

    Nepomuk服务器

    Nepomuk架构

    Nepomuk服务器是个后台守护进程,所有的Nepomuk服务包括Nepomuk数据仓库都由他控制。通常情况下,在KDE启动时他会自动启动。手工的话,在命令行打"nepomukserver"就行了。这样会启动这个守护进程和所有的服务。

    "nepomukservicestub"是个包装程序,用以在独立进程中启动该项服务。这样的安排是为了增强Nepomuk的健壮性和稳定性。服务以实现Nepomuk::Service的子类开始,对外以KDE插件形式展现。Nepomuk::Service文档有具体介绍。

    KDEBase已经有了些缺省服务。存储服务基本上就是RDF数据库,用于保存Nepomuk相关数据。Nepomuk 服务有详细介绍.

    服务器使用

    Nepomuk服务器注册为一个DBus服务-org.kde.NepomukServer,同时提供了三个DBus接口:服务管理接口,遗留存储桥接接口,和标准配置接口。

    服务管理

    服务管理DBus接口称为org.kde.nepomuk.ServiceManager,发布在servicemanager;可以提供打开关闭Nepomuk服务的方法,列举所有运行的服务,并请求这些接口的基本信息:

    <syntaxhighlight lang="text">QStringList availableServices() 列举所有可用的服务,运行着和没有运行的。

    <syntaxhighlight lang="text">bool isServiceAutostarted(QString service) 服务是否自动启动。

    <syntaxhighlight lang="text">bool isServiceInitialized(QString name) 服务是否已经启动并初始化过。(在运行的服务有可能还在初始化构成中)。

    <syntaxhighlight lang="text">QStringList runningServices() 列举所有运行的服务。

    <syntaxhighlight lang="text">void serviceInitialized(QString name) 标明服务是否已经完成初始化并随时待命可用。

    <syntaxhighlight lang="text">void setServiceAutostarted(QString service, bool autostart) 改变自动启动的行为。

    <syntaxhighlight lang="text">bool startService(QString name) 开启服务。同时打开所有依赖关系。

    <syntaxhighlight lang="text">bool stopService(QString name) 停止服务,同时停止所有依赖关系。


    遗留存储

    发布在org.soprano.Server遗留存储接口只是个简单的包装,把存储服务包装一下,而且不应再被新的应用程序所使用。


    配置

    称为org.kde.NepomukServerNepomuk服务配置接口nepomukserver发布,可以用来配置服务器。Nepomuk KCM以下列方式使用这些方法:

    <syntaxhighlight lang="text">QString defaultRepository() 返回缺省仓库名(Soprano服务器提供一些存储服务的API,用于创建多个存储仓库。Nepomu只用一个:main)。

    <syntaxhighlight lang="text">void enableNepomuk(bool enabled) 打开/关闭整个Nepomuk系统。enable设为false就可以停止所有服务。

    <syntaxhighlight lang="text">void enableStrigi(bool enabled) 打开/关闭整Strigi文件索引。

    <syntaxhighlight lang="text">bool isNepomukEnabled()Nepomuk是否打开。

    <syntaxhighlight lang="text">bool isStrigiEnabled()Strigi是否打开。

    <syntaxhighlight lang="text">void quit()退出Nepomuk服务器以及停止所有服务。注意:这个方法只做内部调试之用。

    <syntaxhighlight lang="text">void reconfigure()刷新配置,一般没有必要调用。