From: Zeeshan Ali (Khattak) Date: Mon, 20 Sep 2010 16:11:07 +0000 (+0300) Subject: tracker: Provide UPnP class for artists and albums X-Git-Tag: RYGEL_0_9_0~50 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=47d9140d54fdb89831809b73c3d2ab30e37ab061;p=profile%2Fivi%2Frygel.git tracker: Provide UPnP class for artists and albums Provide specific UPnP class for artist and album containers so that they could be searched by this property. This should fix music browsing on XBox 360. --- diff --git a/src/plugins/tracker/rygel-tracker-albums.vala b/src/plugins/tracker/rygel-tracker-albums.vala index a9e5d23..8fcee2d 100644 --- a/src/plugins/tracker/rygel-tracker-albums.vala +++ b/src/plugins/tracker/rygel-tracker-albums.vala @@ -34,7 +34,8 @@ public class Rygel.Tracker.Albums : MetadataValues { parent, _("Albums"), parent.item_factory, - key_chain); + key_chain, + MediaContainer.MUSIC_ALBUM); } } diff --git a/src/plugins/tracker/rygel-tracker-artists.vala b/src/plugins/tracker/rygel-tracker-artists.vala index 451800a..646b4ab 100644 --- a/src/plugins/tracker/rygel-tracker-artists.vala +++ b/src/plugins/tracker/rygel-tracker-artists.vala @@ -34,7 +34,8 @@ public class Rygel.Tracker.Artists : MetadataValues { parent, _("Artists"), parent.item_factory, - key_chain); + key_chain, + MediaContainer.MUSIC_ARTIST); } } diff --git a/src/plugins/tracker/rygel-tracker-metadata-values.vala b/src/plugins/tracker/rygel-tracker-metadata-values.vala index aa2dc74..4a6ff61 100644 --- a/src/plugins/tracker/rygel-tracker-metadata-values.vala +++ b/src/plugins/tracker/rygel-tracker-metadata-values.vala @@ -41,6 +41,8 @@ public abstract class Rygel.Tracker.MetadataValues : Rygel.SimpleContainer { // nmm:Performer -> nmm:artistName public string[] key_chain; + private string child_class; + private ResourcesIface resources; private ResourcesClassIface resources_class; @@ -48,11 +50,13 @@ public abstract class Rygel.Tracker.MetadataValues : Rygel.SimpleContainer { MediaContainer parent, string title, ItemFactory item_factory, - string[] key_chain) { + string[] key_chain, + string? child_class = null) { base (id, parent, title); this.item_factory = item_factory; this.key_chain = key_chain; + this.child_class = child_class; try { this.create_proxies (); @@ -146,6 +150,9 @@ public abstract class Rygel.Tracker.MetadataValues : Rygel.SimpleContainer { this.item_factory, child_triplets, filters); + if (this.child_class != null) { + container.upnp_class = child_class; + } this.add_child (container); }