incubator-callback-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Shazron <shaz...@gmail.com>
Subject Re: Changing iOS's exec bridge
Date Sat, 28 Jul 2012 00:37:21 GMT
These changes transfer the decision that was done in JS to the Objective-C side.
The arguments are passed in as-is, if an object is passed in as an
array element, it is converted to a NSDictionary in objective-C. So if
you use the new plugin signature, you can pass in as many objects as
you want to the plugin method, they will be in order in the arguments
array as NSDictionary-s.

The "extraction" occurs when we compare the plugin method signature -
if its a legacy signature, we extract the first NSDictionary from the
arguments, like we did in JS. If its not a legacy signature, we pass
the arguments unchanged.

re: https://github.com/agrieve/incubator-cordova-ios/compare/legacy_exec#L3R63


On Fri, Jul 27, 2012 at 5:26 PM, Jesse <purplecabbage@gmail.com> wrote:
> Wait!
>
> Can we discuss the EXACT nature of the command array?
> I have had to work through a similar issue on WP7, it would be
> extremely valuable if we could agree on what the args to exec looks
> like.
>
> It looks like your changes are all inside and beyond exec, but I want
> to make sure.
>
> In the past we discussed removing the array altogether and passing
> named objects as args.
> On WP7 it is extremely difficult to interpret arrays that do not
> contain the same types of object.
> For example, if the command has args of ['what',23,{obj:literal},[1,2,3]]
>
> Do we still have a limitation of only passing 1 object literal?
>
>
>
> On Fri, Jul 27, 2012 at 5:08 PM, Andrew Grieve <agrieve@chromium.org> wrote:
>> Committed.
>> Sounds good! You update the dev guide, and I'll work to update the existing
>> core plugins.
>>
>>
>> On Fri, Jul 27, 2012 at 6:22 PM, Shazron <shazron@gmail.com> wrote:
>>
>>> Thanks Andrew, this looks good!
>>>
>>> Once you merge it in, I'll add the doc issues, especially the Plugin
>>> Dev Guide, we don't want people to start using the old way. I was
>>> thinking, a deprecation NSLog would be great if they are using the old
>>> way, but that will just be too much noise at this point...
>>>
>>> On Fri, Jul 27, 2012 at 2:06 PM, Andrew Grieve <agrieve@chromium.org>
>>> wrote:
>>> > Shaz,
>>> >
>>> > I mentioned doing such a change during PGD, but was hoping you could
>>> give it
>>> > a sanity check over:
>>> >
>>> > https://issues.apache.org/jira/browse/CB-1150
>>> > https://github.com/agrieve/incubator-cordova-ios/compare/legacy_exec
>>> > https://github.com/agrieve/incubator-cordova-js/tree/better_exec
>>> >
>>> > I ensured mobile-spec and unit tests pass, so should be good to go I
>>> think.
>>> >
>>> > Andrew
>>>
>
>
>
> --
> @purplecabbage
> risingj.com

Mime
View raw message