core: asyncConnect is now fired when roster is available

This commit is contained in:
Goffi 2012-11-22 00:46:00 +01:00
commit 59cbce3361

View file

@ -116,7 +116,7 @@ class SAT(service.Service):
self.bridge.register("getVersion", lambda: self.get_const('client_version'))
self.bridge.register("getProfileName", self.memory.getProfileName)
self.bridge.register("getProfilesList", self.memory.getProfilesList)
self.bridge.register("getEntityData", lambda _jid, keys, profile: self.memory.getEntityData(jid.JID(_jid),keys, profile))
self.bridge.register("getEntityData", lambda _jid, keys, profile: self.memory.getEntityData(jid.JID(_jid), keys, profile))
self.bridge.register("createProfile", self.memory.createProfile)
self.bridge.register("asyncCreateProfile", self.memory.asyncCreateProfile)
self.bridge.register("deleteProfile", self.memory.deleteProfile)
@ -256,7 +256,9 @@ class SAT(service.Service):
current.startService()
return current.getConnectionDeferred()
d = current.getConnectionDeferred()
d.addCallback(lambda x: current.roster.got_roster) #we want to be sure that we got the roster
return d
self.memory.startProfileSession(profile)
return self.memory.loadIndividualParams(profile).addCallback(afterMemoryInit)