diff options
-rw-r--r-- | actionwebservice/TODO | 4 | ||||
-rw-r--r-- | actionwebservice/lib/action_web_service/casting.rb | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/actionwebservice/TODO b/actionwebservice/TODO index ad489b2b90..d933f2c0f3 100644 --- a/actionwebservice/TODO +++ b/actionwebservice/TODO @@ -1,4 +1,8 @@ = 0.8.0 + - Allow locking down a controller to only accept messages for a particular protocol. + This will allow us to generate fully conformant error messages in cases where we + currently fudge it if we don't know the protocol. + - Allow AWS user to participate in typecasting, so they can centralize workarounds for buggy input in one place diff --git a/actionwebservice/lib/action_web_service/casting.rb b/actionwebservice/lib/action_web_service/casting.rb index ce90c463d8..113b24a93c 100644 --- a/actionwebservice/lib/action_web_service/casting.rb +++ b/actionwebservice/lib/action_web_service/casting.rb @@ -1,6 +1,5 @@ require 'time' require 'date' -require 'generator' module ActionWebService # :nodoc: module Casting # :nodoc: @@ -30,7 +29,8 @@ module ActionWebService # :nodoc: def cast_expects(api_method, params) # :nodoc: return [] if api_method.expects.nil? - SyncEnumerator.new(params, api_method.expects).map{ |r| cast(r[0], r[1]) } + i = -1 + api_method.expects.map{ |type| cast(params[i+=1], type) } end def cast_returns(api_method, return_value) # :nodoc: |