> On 2011-08-31 21:30:42, Stanton Sievers wrote:
> > http://svn.apache.org/repos/asf/shindig/trunk/features/src/main/javascript/features/actions/actions_container.js,
> >  line 785
> > <https://reviews.apache.org/r/1689/diff/2/?file=37008#file37008line785>
> >
> >     Can you also verify typeof callback is a Function?  If I push a 
> > non-Function into your actionListenerMap, it'll just get called in the 
> > runAction code and puke.

To some degree, that kind of error might be useful for a container author.  
It's not like random gadgets will be able to call this, it'a container only 
method.


> On 2011-08-31 21:30:42, Stanton Sievers wrote:
> > http://svn.apache.org/repos/asf/shindig/trunk/features/src/main/javascript/features/actions/actions_container.js,
> >  line 789
> > <https://reviews.apache.org/r/1689/diff/2/?file=37008#file37008line789>
> >
> >     My gut feeling is that the token being an object with a function in it 
> > is a bad idea.  Why can't the token be a number?  Are you concerned that 
> > malicious/buggy code will accidentally remove a listener it didn't add?

Why is that?  the function inside is a nicely packed closure that was created 
in scope of the variables in which the callbacks are stored.   It's pretty 
tamper-proof and makes removing the a breeze because a reference to the 
callback passed in originally is saved.  It allows containers to use anonymous 
functions instead of being forced to save a reference to them and pass them 
back.  It also prevents the need of having to maintain a sparse array of 
callback mappings.


> On 2011-08-31 21:30:42, Stanton Sievers wrote:
> > http://svn.apache.org/repos/asf/shindig/trunk/features/src/main/javascript/features/actions/actions_container.js,
> >  line 810
> > <https://reviews.apache.org/r/1689/diff/2/?file=37008#file37008line810>
> >
> >     Is it necessary to check the typeof regToken.remove?

I suppose not.  The api is pretty clear here that you must pass in the object 
you got.  If they're that determined to shoot themselves in the foot at this 
point, I might as well let them :)


- Dan


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1689/#review1706
-----------------------------------------------------------


On 2011-08-31 20:07:34, Dan Dumont wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/1689/
> -----------------------------------------------------------
> 
> (Updated 2011-08-31 20:07:34)
> 
> 
> Review request for shindig, Ryan Baxter and Stanton Sievers.
> 
> 
> Summary
> -------
> 
> Specification: 
> http://code.google.com/p/opensocial-resources/issues/detail?id=1210
> 
> Add 2 functions to the actions feature.
> 1 to allow the container to register a listener for an action being run.  The 
> listener would be run whenever an action matching the id provided was run.
> 1 to allow the container to unregister(remove) any listener added with the 
> previous function.
> 
> 
> This addresses bug SHINDIG-1612.
>     https://issues.apache.org/jira/browse/SHINDIG-1612
> 
> 
> Diffs
> -----
> 
>   
> http://svn.apache.org/repos/asf/shindig/trunk/features/src/main/javascript/features/actions/actions_container.js
>  1163664 
> 
> Diff: https://reviews.apache.org/r/1689/diff
> 
> 
> Testing
> -------
> 
> If anyone has any suggestions as to how to approach adding unit tests for 
> this, I'm all ears.
> 
> It looks like that in order to get the actions api to hit this code, by 
> calling runAction, I'd need to somehow fake setting up a gadget site and 
> register a fake action.
> 
> 
> Thanks,
> 
> Dan
> 
>

Reply via email to