rygel r570 - trunk/src/plugins/tracker



Author: zeeshanak
Date: Sat Feb 14 15:23:49 2009
New Revision: 570
URL: http://svn.gnome.org/viewvc/rygel?rev=570&view=rev

Log:
Item constructors take an optional metadata argument.

This is to avoid each item having to fetch it's metadata from Tracker on
creation if the creator of the item already has it's metadata at hand.

Modified:
   trunk/src/plugins/tracker/rygel-tracker-container.vala
   trunk/src/plugins/tracker/rygel-tracker-image-item.vala
   trunk/src/plugins/tracker/rygel-tracker-item.vala
   trunk/src/plugins/tracker/rygel-tracker-music-item.vala
   trunk/src/plugins/tracker/rygel-tracker-video-item.vala

Modified: trunk/src/plugins/tracker/rygel-tracker-container.vala
==============================================================================
--- trunk/src/plugins/tracker/rygel-tracker-container.vala	(original)
+++ trunk/src/plugins/tracker/rygel-tracker-container.vala	Sat Feb 14 15:23:49 2009
@@ -216,11 +216,20 @@
         MediaItem item;
 
         if (this.child_class == MediaItem.VIDEO_CLASS) {
-            item = new TrackerVideoItem (this.id + ":" + path, path, this);
+            item = new TrackerVideoItem (this.id + ":" + path,
+                                         path,
+                                         this,
+                                         null);
         } else if (this.child_class == MediaItem.IMAGE_CLASS) {
-            item = new TrackerImageItem (this.id + ":" + path, path, this);
+            item = new TrackerImageItem (this.id + ":" + path,
+                                         path,
+                                         this,
+                                         null);
         } else {
-            item = new TrackerMusicItem (this.id + ":" + path, path, this);
+            item = new TrackerMusicItem (this.id + ":" + path,
+                                         path,
+                                         this,
+                                         null);
         }
 
         return item;

Modified: trunk/src/plugins/tracker/rygel-tracker-image-item.vala
==============================================================================
--- trunk/src/plugins/tracker/rygel-tracker-image-item.vala	(original)
+++ trunk/src/plugins/tracker/rygel-tracker-image-item.vala	Sat Feb 14 15:23:49 2009
@@ -43,10 +43,11 @@
         LAST_KEY
     }
 
-    public TrackerImageItem (string              id,
-                             string              path,
-                             TrackerContainer    parent) throws GLib.Error {
-        base (id, path, parent);
+    public TrackerImageItem (string           id,
+                             string           path,
+                             TrackerContainer parent,
+                             string[]?        metadata) throws GLib.Error {
+        base (id, path, parent, metadata);
     }
 
     public override string[] get_metadata_keys () {

Modified: trunk/src/plugins/tracker/rygel-tracker-item.vala
==============================================================================
--- trunk/src/plugins/tracker/rygel-tracker-item.vala	(original)
+++ trunk/src/plugins/tracker/rygel-tracker-item.vala	Sat Feb 14 15:23:49 2009
@@ -34,13 +34,20 @@
 
     public TrackerItem (string           id,
                         string           path,
-                        TrackerContainer parent) throws GLib.Error {
+                        TrackerContainer parent,
+                        string[]?        metadata) throws GLib.Error {
         base (id, parent.id, "", parent.child_class);
 
         this.path = path;
         this.parent = parent;
 
-        var values = this.fetch_metadata ();
+        string[] values;
+        if (metadata == null) {
+            values = this.fetch_metadata ();
+        } else {
+            values = metadata;
+        }
+
         this.init_from_metadata (values);
     }
 

Modified: trunk/src/plugins/tracker/rygel-tracker-music-item.vala
==============================================================================
--- trunk/src/plugins/tracker/rygel-tracker-music-item.vala	(original)
+++ trunk/src/plugins/tracker/rygel-tracker-music-item.vala	Sat Feb 14 15:23:49 2009
@@ -43,10 +43,11 @@
         LAST_KEY
     }
 
-    public TrackerMusicItem (string              id,
-                             string              path,
-                             TrackerContainer    parent) throws GLib.Error {
-        base (id, path, parent);
+    public TrackerMusicItem (string           id,
+                             string           path,
+                             TrackerContainer parent,
+                             string[]?        metadata) throws GLib.Error {
+        base (id, path, parent, metadata);
     }
 
     public override string[] get_metadata_keys () {

Modified: trunk/src/plugins/tracker/rygel-tracker-video-item.vala
==============================================================================
--- trunk/src/plugins/tracker/rygel-tracker-video-item.vala	(original)
+++ trunk/src/plugins/tracker/rygel-tracker-video-item.vala	Sat Feb 14 15:23:49 2009
@@ -41,10 +41,11 @@
         LAST_KEY
     }
 
-    public TrackerVideoItem (string              id,
-                             string              path,
-                             TrackerContainer    parent) throws GLib.Error {
-        base (id, path, parent);
+    public TrackerVideoItem (string           id,
+                             string           path,
+                             TrackerContainer parent,
+                             string[]?        metadata) throws GLib.Error {
+        base (id, path, parent, metadata);
     }
 
     public override string[] get_metadata_keys () {



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]