[rygel] docs: librygel-server: Describing the plugin full example
- From: Murray Cumming <murrayc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [rygel] docs: librygel-server: Describing the plugin full example
- Date: Wed, 16 Jan 2013 12:22:20 +0000 (UTC)
commit 752babcdc5ebb411284cf4cd04269ca880314251
Author: Murray Cumming <murrayc murrayc com>
Date: Wed Jan 16 13:22:15 2013 +0100
docs: librygel-server: Describing the plugin full example
.../gtkdoc/implementing-media-engines.xml | 2 +-
.../gtkdoc/implementing-server-plugins.xml | 19 ++++++++++++++++++-
2 files changed, 19 insertions(+), 2 deletions(-)
---
diff --git a/doc/reference/librygel-server/gtkdoc/implementing-media-engines.xml b/doc/reference/librygel-server/gtkdoc/implementing-media-engines.xml
index 7264951..7994ff5 100644
--- a/doc/reference/librygel-server/gtkdoc/implementing-media-engines.xml
+++ b/doc/reference/librygel-server/gtkdoc/implementing-media-engines.xml
@@ -38,7 +38,7 @@ returning an instance of it from its create_data_source() implementation.</para>
</section>
-<section id="implementing-server-plugins-full-example">
+<section id="implementing-media-engines-full-example">
<title>Implementing Media Engines: Full Example</title>
<para>In addition, the external <ulink url="http://git.gnome.org/browse/rygel-gst-0-10-media-engine">rygel-gst-0-10-media-engine</ulink> project provides a Rygel media engine that uses an older GStreamer version and is an example of an external Rygel media-engine implemented in C.</para>
diff --git a/doc/reference/librygel-server/gtkdoc/implementing-server-plugins.xml b/doc/reference/librygel-server/gtkdoc/implementing-server-plugins.xml
index e5fbe53..baf9d1d 100644
--- a/doc/reference/librygel-server/gtkdoc/implementing-server-plugins.xml
+++ b/doc/reference/librygel-server/gtkdoc/implementing-server-plugins.xml
@@ -65,7 +65,24 @@ implemented in Vala.
<section id="implementing-server-plugins-full-example">
<title>Implementing Server Plugins: Full Example</title>
-<para>In addition, the external <ulink url="http://git.gnome.org/browse/rygel-gst-0-10-plugins">rygel-gst-0-10-plugins</ulink> project provides a Rygel Server plugin that uses an older GStreamer version and is an example of an external Rygel Server plugin implemented in C. Its <ulink url="http://git.gnome.org/browse/rygel-gst-0-10-plugins">media-export</ulink> plugin </para>
+<para>In addition, the external <ulink url="http://git.gnome.org/browse/rygel-gst-0-10-plugins">rygel-gst-0-10-plugins</ulink> project provides a Rygel Server plugin that uses an older GStreamer version and is an example of an external Rygel Server plugin implemented in C. Its <ulink url="http://git.gnome.org/browse/rygel-gst-0-10-plugins">media-export</ulink> plugin exposes the contents of a directory via UPnP.</para>
+
+<para>The <function>module_init</function> function first checks that the plugin has not been disabled and then creates an instance of its <classname>RygelMediaExportPlugin</classname>, which it adds to the provided <classname>RygelPluginLoader</classname> instance.</para>
+
+
+<para>This example implements a root by
+deriving from <link linkend="RygelSimpleContainer">RygelSimpleContainer</link> and adding some
+hard-coded items. A real Rygel server plugin's root container, or its child items, would typically
+populate themselves dynamically. For instance, they might add and remove items based on some source
+such as a file system or database. See, for instance, the
+<ulink url="&url_git_browse_base_src;plugins/tracker">Rygel Tracker Plugin</ulink> or the
+<ulink url="&url_git_browse_base_src;plugins/media-export">Rygel MediaExport Plugin</ulink> plugins,
+implemented in Vala.
+</para>
+
+<para>The <classname>RygelMediaExportPlugin</classname> class, derived from <link linkend="RygelMediaServerPlugin">RygelMediaServerPlugin</link>, simply instantiates its <classname>RygelMediaExportRootContainer</classname> class, derived from <link linkend="RygelMediaContainer">RygelMediaContainer</link>, providing it to the base class as the root container.</para>
+
+<para>TODO: Describe the <classname>RygelMediaExportRootContainer</classname> class.</para>
</section>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]