summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJens Georg <jensg@openismus.com>2012-12-11 20:39:03 +0100
committerJens Georg <jensg@openismus.com>2012-12-11 21:08:38 +0100
commitb3d9c78ef5781744a7e938427523204d3191ab9b (patch)
tree128ccead474890fe83a5f90c061d2c0f7684e753 /src
parentea01de7e5007427cf12097697ee3d34488cd18dd (diff)
downloadrygel-b3d9c78ef5781744a7e938427523204d3191ab9b.tar.gz
server: Query SystemUpdateID from backend
Diffstat (limited to 'src')
-rw-r--r--src/librygel-server/rygel-content-directory.vala2
-rw-r--r--src/librygel-server/rygel-trackable-container.vala9
2 files changed, 11 insertions, 0 deletions
diff --git a/src/librygel-server/rygel-content-directory.vala b/src/librygel-server/rygel-content-directory.vala
index 1cc952c6..3834b6bb 100644
--- a/src/librygel-server/rygel-content-directory.vala
+++ b/src/librygel-server/rygel-content-directory.vala
@@ -119,8 +119,10 @@ internal class Rygel.ContentDirectory: Service {
if (this.root_container is TrackableContainer) {
var trackable = this.root_container as TrackableContainer;
this.service_reset_token = trackable.get_service_reset_token ();
+ this.system_update_id = trackable.get_system_update_id ();
} else {
this.service_reset_token = UUID.get ();
+ this.system_update_id = 0;
}
this.action_invoked["Browse"].connect (this.browse_cb);
diff --git a/src/librygel-server/rygel-trackable-container.vala b/src/librygel-server/rygel-trackable-container.vala
index dbd6371d..431928d5 100644
--- a/src/librygel-server/rygel-trackable-container.vala
+++ b/src/librygel-server/rygel-trackable-container.vala
@@ -86,6 +86,15 @@ public interface Rygel.TrackableContainer : Rygel.MediaContainer {
*/
public virtual void set_service_reset_token (string token) {}
+ /**
+ * Query the current system update id.
+ * This should be overriden by the root container of the back-end
+ * implementation.
+ *
+ * @return: the current SystemUpdateID as persisted by the back-end.
+ */
+ public virtual uint32 get_system_update_id () { return 0; }
+
private void thaw_events () {
// Forward events.
}