class Thrift::Middleware::MultiMiddleware

Public Class Methods

new(middlewares) click to toggle source
   # File lib/thrift/middleware.rb
14 def initialize(middlewares)
15   @middlewares = middlewares
16 end

Public Instance Methods

handle_binary(mth, args = {}, &block) click to toggle source
   # File lib/thrift/middleware.rb
26 def handle_binary(mth, args = {}, &block)
27   @middlewares.reverse.reduce(block) do |acc, m|
28     Proc.new do |args|
29       m.handle_binary(mth, args) { |args| acc.call(args) }
30     end
31   end.call(args)
32 end
handle_unary(mth, args = {}, &block) click to toggle source
   # File lib/thrift/middleware.rb
18 def handle_unary(mth, args = {}, &block)
19   @middlewares.reverse.reduce(block) do |acc, m|
20     Proc.new do |args|
21       m.handle_unary(mth, args) { |args| acc.call(args) }
22     end
23   end.call(args)
24 end