Substitute "://@HOSTNAME@" with hostname
authorZeeshan Ali (Khattak) <zeeshanak@gnome.org>
Mon, 11 May 2009 15:16:42 +0000 (18:16 +0300)
committerZeeshan Ali (Khattak) <zeeshanak@gnome.org>
Mon, 11 May 2009 15:20:14 +0000 (18:20 +0300)
src/plugins/external/rygel-external-container.vala
src/plugins/external/rygel-external-content-dir.vala
src/plugins/external/rygel-external-item.vala

index 4001d4f..f4c31a1 100644 (file)
@@ -39,6 +39,8 @@ public class Rygel.ExternalContainer : MediaContainer {
 
     public dynamic DBus.Object actual_container;
 
+    public string host_ip;
+
     private string service_name;
     private string object_path;
 
@@ -47,11 +49,13 @@ public class Rygel.ExternalContainer : MediaContainer {
     public ExternalContainer (string             id,
                               string             service_name,
                               string             object_path,
+                              string             host_ip,
                               ExternalContainer? parent) {
         base (id, parent, "Uknown", 0);
 
         this.service_name = service_name;
         this.object_path = object_path;
+        this.host_ip = host_ip;
 
         this.media_objects = new ArrayList<MediaObject> ();
 
@@ -147,6 +151,7 @@ public class Rygel.ExternalContainer : MediaContainer {
             this.media_objects.add (new ExternalContainer (object_path,
                                                            this.service_name,
                                                            (string) object_path,
+                                                           this.host_ip,
                                                            this));
         }
 
index 595e252..ea4a5ce 100644 (file)
@@ -38,6 +38,7 @@ public class Rygel.ExternalContentDir : ContentDirectory {
         return new ExternalContainer ("0",
                                       plugin.service_name,
                                       plugin.root_object,
+                                      this.context.host_ip,
                                       null);
     }
 }
index ef573df..096dd73 100644 (file)
@@ -72,7 +72,8 @@ public class Rygel.ExternalItem : MediaItem {
         weak string[] uris = (string[]) value.get_boxed ();
 
         foreach (var uri in uris) {
-            this.uris.add (uri);
+            var tmp = uri.replace ("://@HOSTNAME@", parent.host_ip);
+            this.uris.add (tmp);
         }
     }
 }