[ 
https://issues.apache.org/jira/browse/SHINDIG-410?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12609924#action_12609924
 ] 

Henning Schmiedehausen commented on SHINDIG-410:
------------------------------------------------

Thanks for splitting, it is now much easier to follow the refactoring vs. new 
code.


> 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.

Reply via email to