[Bug 37373] New: clarify whether Approvers are called for channels with no Handler
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Thu May 19 17:42:47 CEST 2011
https://bugs.freedesktop.org/show_bug.cgi?id=37373
Summary: clarify whether Approvers are called for channels with
no Handler
Product: Telepathy
Version: git master
Platform: Other
OS/Version: All
Status: NEW
Severity: enhancement
Priority: medium
Component: tp-spec
AssignedTo: telepathy-bugs at lists.freedesktop.org
ReportedBy: simon.mcvittie at collabora.co.uk
QAContact: telepathy-bugs at lists.freedesktop.org
Depends on: 29022
+++ This bug was initially created as a clone of Bug #29022 +++
By inspection of the source code, if a dispatch operation has no
PossibleHandlers, MC doesn't seem to dispatch it to observers or to approvers.
test/twisted/dispatcher/undispatchable.py should create a Text Observer and a
Text Approver, and assert whether their methods are called. However, it
doesn't.
I think Observers should be invoked for undispatchable operations (rationale:
implementing ObserveChannels should be like listening for NewChannels). I'm not
so sure about Approvers.
In favour of running Approvers if there's no Handler:
+ consistent with observers
+ maybe the Approver can arrange for a non-service-activatable Handler to be
started out-of-band
+ maybe the Approver knows out-of-band that an existing Handler can secretly
handle the channel, even though its filter says otherwise (symmetry with the
PreferredHandler overriding filters)
Against running Approvers if there's no Handler:
- until now, if the Approver calls HandleChannels("") and gets an error, it's
always an error from the Handler; now, HandleChannels("") has to be able to
return a specified error that means "actually, I can't do that"
- if the Approver blindly calls HandleChannels(Possible_Handlers[0]), it'll
crash itself ("don't do that then" is a reasonable answer)
- Approvers are for interactive approval: is it really appropriate for an
interactive approver to pop up if approval is impossible anyway? If you have
some UI for "smcv is sending you a file [Save] [Reject]", would it ever make
sense for it to pop up to say "smcv is sending you a file but you can't receive
it [OK]", and would Approver authors actually deal with this correctly anyway?
(It would be rubbish UI to have a popup that says "smcv is sending you a file
[Save] [Reject]", and then when you click Save, have an error message "you
can't receive files".)
One possible solution is to let Approvers set a flag for whether they want to
be nagged about undispatchable channels, with the default being FALSE (because
that's the one that doesn't need the Approver author to take any other special
action).
--
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the telepathy-bugs
mailing list