Sha256: 56d9f89bf015826c73859678e68d44e11f5ecde365c0def68b309a0e3bca055e

Contents?: true

Size: 569 Bytes

Versions: 1

Compression:

Stored size: 569 Bytes

Contents

require "mountapi/route/response"

module Mountapi
  module Route
    class Responses
      def self.build(responses = [])
        new(responses.map { |r| Mountapi::Route::Response.build(*r) })
      end

      def initialize(responses)
        @responses = responses
      end

      def [](status)
        response = @responses.find { |resp| resp.match?(status) }

        if response
          response.schema
        else
          raise Error::MissingResponseStatus.new("No schema found for response status code #{status}")
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
mountapi-0.11.1 lib/mountapi/route/responses.rb