Bug 21200

Summary: Account: should have a ConnectionError property
Product: Telepathy Reporter: Simon McVittie <smcv>
Component: tp-specAssignee: Simon McVittie <smcv>
Status: RESOLVED FIXED QA Contact: Telepathy bugs list <telepathy-bugs>
Severity: normal    
Priority: medium    
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard: 0.19.7
i915 platform: i915 features:
Bug Depends on:    
Bug Blocks: 28379    

Description Simon McVittie 2009-04-15 06:49:10 UTC
Account hasn't caught up with the extensible error signalling provided by ConnectionError:

ConnectionError: property, s (DBus_Error_Name), read-only

If the last connection to this account failed with an error, the D-Bus error name of that error (with the same semantics as the first argument of the Connection.ConnectionError signal). Otherwise, the empty string.

| Rationale: the same as ConnectionStatusReason, but extensible like ConnectionError

ConnectionErrorDetails: property, a{sv}, read-only

If the last connection to this account failed with an error, the details of that error, with the same allowed keys and values as for the second argument of the Connection.ConnectionError signal. Otherwise, the empty dictionary.

| Rationale: the same as ConnectionStatusReason, but extensible like ConnectionError
Comment 1 Simon McVittie 2009-11-05 08:50:49 UTC
Spec cabal says yes, implementation needed.
Comment 3 Simon McVittie 2010-04-22 04:02:44 UTC
I'm unlikely to have time to work on this soon, so, back to unassigned.

It may be easiest to implement this by improving telepathy-glib's error reporting (Bug #23369, which I made some progress on a while ago).
Comment 4 Simon McVittie 2010-04-29 08:25:57 UTC
I've done the necessary TpConnection work to enable this, so it's not a blocker any more.
Comment 5 Simon McVittie 2010-06-07 11:16:28 UTC
Nobody has implemented this yet, so I did: Bug #28428.
Comment 6 Guillaume Desmottes 2010-06-11 06:13:54 UTC
I guess my only question is wouldn't it make sense to have only one D-Bus property? That's conceptually the same thing so what's the point to split it?
Comment 7 Simon McVittie 2010-06-14 03:33:58 UTC
Summary of discussion on IRC: ConnectionError is conceptually one property of type '(sa{sv})', but it's easier to work (less deeply nested) with if it's split into separate 's' and 'a{sv}'.

They're really also conceptually part of the same meta-property as ConnectionStatus ('u'), ConnectionStatusReason ('u'), and (depending on your point of view) Connection ('o'); splitting them up is consistent with those properties.
Comment 8 Simon McVittie 2010-06-14 03:49:04 UTC
Fixed in git, will be considered stable in 0.19.7.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.