On 05/28/2011 06:33 PM, Sascha Silbe wrote:
Excerpts from Simon Schampijer's message of Mon May 23 14:44:47 +0200 2011:

+    def join(self):
+        logging.error('PrivateInvite.join handler %r', self._handler)
+
+        registry = bundleregistry.get_registry()
+        bundle_id = self.get_bundle_id()
+        bundle = registry.get_bundle(bundle_id)
+        if bundle is None:
+            self._call_handle_with()

What exactly does the latter part do? Reject the invitation? Or pass it
on to a non-Sugar application?

http://telepathy.freedesktop.org/spec/Channel_Dispatch_Operation.html#Method:HandleWith

The only code path I could find that involves PrivateInvite.join() is:

Invites._dispatch_non_sugar_invitation()
Invites._add_private_invite(handler=CLIENT + '.org.laptop.Chat')
(Invitation added to Frame, user accepts invitation)
InviteButton.__clicked_cb()
InviteButton._launch()
PrivateInvite.join()

Since handler is the constant mentioned above,
BaseInvite.get_bundle_id() always returns 'org.laptop.Chat' when called
in PrivateInvite.join(). That means the if-then part of
PrivateInvite.join() is dead code.

Sascha

Good catch. I would simplify things then and pass in the handler 'org.laptop.Chat' to PrivateInvite then directly and remove the 'get_bundle_id()' part. If we support other ways of private invitations later we can enhance the code.

Good with that change?


Regards,
   Simon
_______________________________________________
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel

Reply via email to