Don't keep GUPnP context and D-Bus proxy objects in TrackerItem.
authorZeeshan Ali (Khattak) <zeeshanak@src.gnome.org>
Tue, 11 Nov 2008 17:42:02 +0000 (17:42 +0000)
committerZeeshan Ali (Khattak) <zeeshanak@src.gnome.org>
Tue, 11 Nov 2008 17:42:02 +0000 (17:42 +0000)
It can access these from the parent container object.

svn path=/trunk/; revision=286

ChangeLog
src/media-providers/tracker/rygel-tracker-container.vala
src/media-providers/tracker/rygel-tracker-image-item.vala
src/media-providers/tracker/rygel-tracker-item.vala
src/media-providers/tracker/rygel-tracker-music-item.vala
src/media-providers/tracker/rygel-tracker-video-item.vala

index 4bbfb67..bd5c891 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,17 @@
 2008-11-11  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
 
        * src/media-providers/tracker/rygel-tracker-container.vala:
+       * src/media-providers/tracker/rygel-tracker-image-item.vala:
+       * src/media-providers/tracker/rygel-tracker-item.vala:
+       * src/media-providers/tracker/rygel-tracker-music-item.vala:
+       * src/media-providers/tracker/rygel-tracker-video-item.vala:
+
+        Don't keep GUPnP context and D-Bus proxy objects in TrackerItem. It can
+        access these from the parent container object.
+
+2008-11-11  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
+
+       * src/media-providers/tracker/rygel-tracker-container.vala:
 
         Don't hide GUPnP context and D-Bus proxy objects.
 
index 4390c14..eb12afc 100644 (file)
@@ -163,21 +163,15 @@ public class Rygel.TrackerContainer : MediaContainer {
         if (this.child_class == MediaItem.VIDEO_CLASS) {
             item = new TrackerVideoItem (this.root_id + ":" + path,
                                          path,
-                                         this,
-                                         this.metadata,
-                                         this.context);
+                                         this);
         } else if (this.child_class == MediaItem.IMAGE_CLASS) {
             item = new TrackerImageItem (this.root_id + ":" + path,
                                          path,
-                                         this,
-                                         this.metadata,
-                                         this.context);
+                                         this);
         } else {
             item = new TrackerMusicItem (this.root_id + ":" + path,
                                          path,
-                                         this,
-                                         this.metadata,
-                                         this.context);
+                                         this);
         }
 
         item.serialize (didl_writer);
index 35d1d05..e029022 100644 (file)
@@ -30,10 +30,8 @@ using DBus;
 public class Rygel.TrackerImageItem : TrackerItem {
     public TrackerImageItem (string              id,
                              string              path,
-                             TrackerContainer    parent,
-                             dynamic DBus.Object metadata,
-                             GUPnP.Context       context) {
-        base (id, path, parent, metadata, context);
+                             TrackerContainer    parent) {
+        base (id, path, parent);
 
         keys = new string[] {"File:Name",
                              "File:Mime",
@@ -51,7 +49,7 @@ public class Rygel.TrackerImageItem : TrackerItem {
 
         /* TODO: make this async */
         try {
-            values = this.metadata.Get (parent.category, path, keys);
+            values = this.parent.metadata.Get (parent.category, path, keys);
         } catch (GLib.Error error) {
             critical ("failed to get metadata for %s: %s\n",
                       path,
index 8b993d9..bfbdd0e 100644 (file)
@@ -30,7 +30,6 @@ using DBus;
 public abstract class Rygel.TrackerItem : MediaItem {
     protected TrackerContainer parent;
     protected string path;
-    protected GUPnP.Context context;
 
     protected dynamic DBus.Object metadata;
 
@@ -38,17 +37,12 @@ public abstract class Rygel.TrackerItem : MediaItem {
 
     public TrackerItem (string              id,
                         string              path,
-                        TrackerContainer    parent,
-                        dynamic DBus.Object metadata,
-                        GUPnP.Context       context) {
+                        TrackerContainer    parent) {
         this.id = id;
         this.path = path;
         this.parent = parent;
         this.parent_id = parent.id;
         this.upnp_class = parent.child_class;
-
-        this.metadata = metadata;
-        this.context = context;
     }
 
     protected string seconds_to_iso8601 (string seconds) {
@@ -71,8 +65,8 @@ public abstract class Rygel.TrackerItem : MediaItem {
     protected string uri_from_path (string path) {
         string escaped_path = Uri.escape_string (path, "/", true);
 
-        return "http://%s:%u%s".printf (this.context.host_ip,
-                                        this.context.port,
+        return "http://%s:%u%s".printf (this.parent.context.host_ip,
+                                        this.parent.context.port,
                                         escaped_path);
     }
 }
index ca494e9..aa7e89b 100644 (file)
@@ -30,10 +30,8 @@ using DBus;
 public class Rygel.TrackerMusicItem : TrackerItem {
     public TrackerMusicItem (string              id,
                              string              path,
-                             TrackerContainer    parent,
-                             dynamic DBus.Object metadata,
-                             GUPnP.Context       context) {
-        base (id, path, parent, metadata, context);
+                             TrackerContainer    parent) {
+        base (id, path, parent);
 
         keys = new string[] {"File:Name",
                              "File:Mime",
@@ -51,7 +49,7 @@ public class Rygel.TrackerMusicItem : TrackerItem {
 
         /* TODO: make this async */
         try {
-            values = this.metadata.Get (parent.category, path, keys);
+            values = this.parent.metadata.Get (parent.category, path, keys);
         } catch (GLib.Error error) {
             critical ("failed to get metadata for %s: %s\n",
                       path,
index 6e9d390..6404642 100644 (file)
@@ -30,10 +30,8 @@ using DBus;
 public class Rygel.TrackerVideoItem : TrackerItem {
     public TrackerVideoItem (string              id,
                              string              path,
-                             TrackerContainer    parent,
-                             dynamic DBus.Object metadata,
-                             GUPnP.Context       context) {
-        base (id, path, parent, metadata, context);
+                             TrackerContainer    parent) {
+        base (id, path, parent);
 
         keys = new string[] {"File:Name",
                              "File:Mime",
@@ -49,7 +47,7 @@ public class Rygel.TrackerVideoItem : TrackerItem {
 
         /* TODO: make this async */
         try {
-            values = this.metadata.Get (parent.category, path, keys);
+            values = this.parent.metadata.Get (parent.category, path, keys);
         } catch (GLib.Error error) {
             critical ("failed to get metadata for %s: %s\n",
                       path,