Sha256: ad757a1304c5b72fbc4451d5115a4ffa44d8459cb47a37f8781f997d2ba9d10f

Contents?: true

Size: 1.01 KB

Versions: 2

Compression:

Stored size: 1.01 KB

Contents

# frozen_string_literal: true

require "openapi3_parser/node/header"
require "openapi3_parser/node_factory/parameter_like"
require "openapi3_parser/node_factory/object"

module Openapi3Parser
  module NodeFactory
    class Header < NodeFactory::Object
      include ParameterLike

      allow_extensions

      field "description", input_type: String
      field "required", input_type: :boolean, default: false
      field "deprecated", input_type: :boolean, default: false
      field "allowEmptyValue", input_type: :boolean, default: false

      field "style", input_type: String, default: "simple"
      field "explode", input_type: :boolean, default: :default_explode
      field "allowReserved", input_type: :boolean, default: false
      field "schema", factory: :schema_factory
      field "example"
      field "examples", factory: :examples_factory

      field "content", factory: :content_factory

      private

      def build_object(data, context)
        Node::Header.new(data, context)
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
openapi3_parser-0.5.1 lib/openapi3_parser/node_factory/header.rb
openapi3_parser-0.5.0 lib/openapi3_parser/node_factory/header.rb