You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@shindig.apache.org by "John Hjelmstad (JIRA)" <ji...@apache.org> on 2008/07/09 04:04:31 UTC

[jira] Resolved: (SHINDIG-410) Refactor gadgets.rpc for cleaner handling of transport types

     [ https://issues.apache.org/jira/browse/SHINDIG-410?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

John Hjelmstad resolved SHINDIG-410.
------------------------------------

    Resolution: Fixed

Patch submitted.

> Refactor gadgets.rpc for cleaner handling of transport types
> ------------------------------------------------------------
>
>                 Key: SHINDIG-410
>                 URL: https://issues.apache.org/jira/browse/SHINDIG-410
>             Project: Shindig
>          Issue Type: Improvement
>          Components: Features (Javascript)
>         Environment: All
>            Reporter: John Hjelmstad
>            Assignee: John Hjelmstad
>         Attachments: rpc.refactor.patch
>
>
> [repurposing this bug as refactoring-only]
> Joey Schorr and I have created the attached patch to features/rpc/rpc.js, which refactors rpc.js in various ways but changes no semantics. The goal is to make reading of the code more straightforward, and especially to clearly separate code paths that have to do with the various message passing transport mechanisms (frameElement, IFPC, WPM/DPM). This makes it easier to add new transports. It may also, in the future, enable us to serve only one transport class appropriate to a given browser on the server side, minimizing response size, but for now is just cleanup.
> Details:
> * Created constants for the default callback and callback service IDs
> * Added extensive documentation on each transport mechanism in the selection method getRelayChannel()
> * Created setupChannel(), setupFrame(), and callX() methods for transport-specific functionality.
>   - setupChannel() performs global initialization of the transport
>   - setupFrame() adds any setup associated with setting authToken on a frame
>   - callX() methods perform actual message passing
> The attached patch (rpc.refactor.patch) is derived from an earlier, larger one that also included a new transport mechanism for IE only. That functionality will be moved to a new JIRA issue with a separate patch.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.