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()刷新配置,一般没有必要调用。