Browse files

don't use SyncEnumerator, its far too slow to be used in something fr…

…equently called

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1085 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
  • Loading branch information...
1 parent edcaa2e commit 2cfe309dc498bedaa7ca78c16d1270c359f70cdd @bitserf bitserf committed Apr 3, 2005
Showing with 6 additions and 2 deletions.
  1. +4 −0 actionwebservice/TODO
  2. +2 −2 actionwebservice/lib/action_web_service/casting.rb
View
4 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
View
4 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 @@ class << self
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:

0 comments on commit 2cfe309

Please sign in to comment.