Sha256: 709827a8d79f1215dfdcb01eaa8cc8d2702d15c0caea3d2a467b2db31be970ce

Contents?: true

Size: 589 Bytes

Versions: 2

Compression:

Stored size: 589 Bytes

Contents

require 'esplanade/request/doc'
require 'esplanade/request/raw'
require 'esplanade/request/validation'

module Esplanade
  class Request
    class Error < Esplanade::Error; end
    class NotDocumented < Error; end
    class BodyIsNotJson < Error; end
    class Invalid       < Error; end

    def initialize(documentation, env)
      @documentation = documentation
      @env = env
    end

    def doc
      @doc ||= Doc.new(@documentation, raw)
    end

    def raw
      @raw ||= Raw.new(@env)
    end

    def validation
      @validation || Validation.new(doc, raw)
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
esplanade-1.0.1 lib/esplanade/request.rb
esplanade-1.0.0 lib/esplanade/request.rb