gsoc

Sign in or create your account | Project List | Help

gsoc Commit Details

Date:2009-07-27 22:07:50 (1 year 1 day ago)
Author:Adrien Bustany
Commit:157df28ca5f2a4b31f801d6da90ff59a67a90cbf
Message:libtracker-bridge : Adopt a cleaner mechanism for the password provider + adapt the bridges

Files: bridges/facebook/src/facebook.vala (2 diffs)
bridges/flickr/src/flickr.vala (2 diffs)
bridges/gdata/src/gdata-bridge-picasaweb.vala (2 diffs)
libtrackerbridge/src/gnome-password-provider.vala (1 diff)
libtrackerbridge/src/tracker-bridge.vala (2 diffs)

Change Details

bridges/facebook/src/facebook.vala
9090
9191        var pwdData = new HashTable<string, string> (str_hash, str_equal);
9292        pwdData.insert ("session", session);
93        Tracker.passwordProvider.save (username, SERVICE_NAME, secret, "Authentication token for Facebook", pwdData);
93        Tracker.PasswordProvider.instance ().save (username, SERVICE_NAME, secret, "Authentication token for Facebook", pwdData);
9494
9595        c = rest.new_call ();
9696        c.add_params ("method", "users.getInfo",
...... 
115115
116116    public void Authenticate ()
117117    {
118        var pwdData = Tracker.passwordProvider.search (null, SERVICE_NAME);
118        var pwdData = Tracker.PasswordProvider.instance ().search (null, SERVICE_NAME);
119119
120120        if (pwdData != null) {
121121            username = pwdData.lookup ("username");
bridges/flickr/src/flickr.vala
9393        }
9494
9595        try {
96            Tracker.passwordProvider.save (username, SERVICE_NAME, token, "Authentication token for Flickr");
96            Tracker.PasswordProvider.instance ().save (username, SERVICE_NAME, token, "Authentication token for Flickr");
9797        } catch (Error e) {
9898            critical ("Cannot store token : %s", e.message);
9999        }
...... 
108108
109109        HashTable<string, string> pwdData = null;
110110        try {
111            pwdData = Tracker.passwordProvider.search (null, SERVICE_NAME);
111            pwdData = Tracker.PasswordProvider.instance ().search (null, SERVICE_NAME);
112112        } catch (Error e) {
113113            critical ("Cannot retrieve stored token : %s", e.message);
114114        }
bridges/gdata/src/gdata-bridge-picasaweb.vala
3636    {
3737        HashTable<string, string> pwdData = null;
3838        try {
39            pwdData = Tracker.passwordProvider.search (null, SERVICE_NAME);
39            pwdData = Tracker.PasswordProvider.instance ().search (null, SERVICE_NAME);
4040        } catch (Error e) {
4141            critical ("Couldn't retrieve stored passowrd : %s", e.message);
4242        }
...... 
7979        }
8080
8181        try {
82            Tracker.passwordProvider.save (data.lookup ("user"), SERVICE_NAME, data.lookup ("password"), _("Authentification data for Google services (PicasaWeb)"));
82            Tracker.PasswordProvider.instance ().save (data.lookup ("user"), SERVICE_NAME, data.lookup ("password"), _("Authentification data for Google services (PicasaWeb)"));
8383        } catch (Error e) {
8484            critical ("Error while storing password : %s", e.message);
8585        }
libtrackerbridge/src/gnome-password-provider.vala
22using Serializer;
33
44namespace Tracker {
5    class GnomePasswordProvider : Tracker.PasswordProvider {
5    class GnomePasswordProvider : Tracker.PasswordProviderIface, Object {
66
77        private const GnomeKeyring.PasswordSchema passwordSchema = {
88            GnomeKeyring.ItemType.GENERIC_SECRET,
libtrackerbridge/src/tracker-bridge.vala
2626        }
2727    }
2828
29    public interface PasswordProvider {
29    public interface PasswordProviderIface : Object {
3030        // Saves a password token in the database
3131        // username and service can be used to find back the token
3232        // description : an optional description of the credentials
...... 
3939        public abstract HashTable<string, string>? search (string? username, string? service) throws Error;
4040    }
4141
42    public static const PasswordProvider passwordProvider = new GnomePasswordProvider ();
42    public class PasswordProvider : Object {
43        private static PasswordProviderIface _instance = new GnomePasswordProvider ();
44
45        public static PasswordProviderIface instance () {
46            return _instance;
47        }
48    }
4349
4450    public static string getTagUri (string tagname)
4551    {

Archive Download the corresponding diff file

Branches:
master