Sha256: 13988688dcef157a8466f1eaa7bbba352a1d9ae883d81f09e8107c7f5bac4d68

Contents?: true

Size: 585 Bytes

Versions: 69

Compression:

Stored size: 585 Bytes

Contents

module ResourceController
  class ResponseCollector
    
    attr_reader :responses
    
    delegate :clear, :to => :responses
    
    def initialize
      @responses = []
    end
    
    def method_missing(method_name, &block)
      @responses.delete self[method_name]
      @responses << [method_name, block || nil]
    end
    
    def [](symbol)
      @responses.find { |method, block| method == symbol }
    end
    
    def dup
      returning ResponseCollector.new do |duplicate|
        duplicate.instance_variable_set(:@responses, responses.dup)
      end
    end
  end
end

Version data entries

69 entries across 69 versions & 19 rubygems

Version Path
akitaonrails-resource_controller-0.5.2 lib/resource_controller/response_collector.rb
akitaonrails-resource_controller-0.5.3 lib/resource_controller/response_collector.rb
csmosx-resource_controller-0.6.6 lib/resource_controller/response_collector.rb
csmosx-resource_controller-0.6.7 lib/resource_controller/response_collector.rb
dkubb-resource_controller-0.6.5 lib/resource_controller/response_collector.rb
giraffesoft-resource_controller-0.4.10 lib/resource_controller/response_collector.rb
giraffesoft-resource_controller-0.4.12 lib/resource_controller/response_collector.rb
giraffesoft-resource_controller-0.4.9 lib/resource_controller/response_collector.rb
giraffesoft-resource_controller-0.5.1 lib/resource_controller/response_collector.rb
giraffesoft-resource_controller-0.5.2 lib/resource_controller/response_collector.rb
giraffesoft-resource_controller-0.5.3 lib/resource_controller/response_collector.rb
giraffesoft-resource_controller-0.5.5 lib/resource_controller/response_collector.rb
giraffesoft-resource_controller-0.5.6 lib/resource_controller/response_collector.rb
giraffesoft-resource_controller-0.6.0 lib/resource_controller/response_collector.rb
giraffesoft-resource_controller-0.6.1 lib/resource_controller/response_collector.rb
giraffesoft-resource_controller-0.6.5 lib/resource_controller/response_collector.rb
jeffrafter-resource_controller-0.5.5 lib/resource_controller/response_collector.rb
kdmny-spree-0.0.1 vendor/plugins/resource_controller/lib/resource_controller/response_collector.rb
korin-resource_controller-0.5.3 lib/resource_controller/response_collector.rb
maser-resource_controller-0.6.6 lib/resource_controller/response_collector.rb