GNOME Bugzilla – Bug 686673
Build error: libsocialweb backend doesn't implement new Backend functions
Last modified: 2012-11-24 12:49:59 UTC
Some recently-added Backend functions haven't been implemented in the libsocialweb backend, causing build errors: VALAC libsocialweb_la_vala.stamp sw-backend.vala:34.1-34.54: error: `Folks.Backends.Sw.Backend' does not implement abstract method `Folks.Backend.disable_persona_store' public class Folks.Backends.Sw.Backend : Folks.Backend ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ sw-backend.vala:34.1-34.54: error: `Folks.Backends.Sw.Backend' does not implement abstract method `Folks.Backend.enable_persona_store' public class Folks.Backends.Sw.Backend : Folks.Backend ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ sw-backend.vala:34.1-34.54: error: `Folks.Backends.Sw.Backend' does not implement abstract method `Folks.Backend.set_persona_stores' public class Folks.Backends.Sw.Backend : Folks.Backend ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Compilation failed: 3 error(s), 0 warning(s)
Created attachment 227033 [details] [review] Add disable_persona_store and enable_persona_store to libsocialweb backend This patch implements the new api in the libsocialweb backend. However it's missing a key component which is creating a SocialClient from a given id in set_persona_stores.
Review of attachment 227033 [details] [review]: ::: backends/libsocialweb/sw-backend.vala @@ +95,3 @@ + */ + //PersonaStore store = new Swf.PersonaStore (); + //this._add_store (store, false); Marking as needs work because of this. Does the API not existing at all in libsocialweb? If so, we should file a bug against them to get it added.
Created attachment 227605 [details] [review] Add disable_persona_store and enable_persona_store to libsocialweb backend Actually the api does exist it just wasn't obvious on first glance. Now that I know what it is, it's pretty obvious though. Anyway, this updated patch implements that correctly.
Review of attachment 227605 [details] [review]: Looks good to me with the comments below fixed and a suitable NEWS entry added. ::: backends/libsocialweb/sw-backend.vala @@ +106,3 @@ + } + + for (int i = 0; i < removed_stores.length; ++i) This could more simply be a foreach over removed_stores. @@ +239,3 @@ + * + * @param store the store to add. + * @param notify whether or not to emit notification signals. Missing “@since UNRELEASED”. @@ +256,3 @@ + * + * @param store the store to remove. + * @param notify whether or not to emit notification signals. Same here. @@ +282,2 @@ { + this._remove_store ((Swf.PersonaStore)store); Missing a space after the type cast.
Committed with the above changes a NEWS entry. commit 9277eb14ee4a7dbdc87406e91ae2445816dda09c Author: Jeremy Whiting <jpwhiting@kde.org> Date: Mon Oct 22 19:09:08 2012 -0600 lsw: Add enable|disable_persona_store api to libsocialweb backend. Closes: https://bugzilla.gnome.org/show_bug.cgi?id=686673 NEWS | 2 ++ backends/libsocialweb/sw-backend.vala | 121 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------- 2 files changed, 114 insertions(+), 9 deletions(-)