Class: GrapeOAS::ApiModel::Response

Inherits:
Node
  • Object
show all
Defined in:
lib/grape_oas/api_model/response.rb

Overview

Represents an HTTP response in the DTO model for OpenAPI v2/v3. Used to describe possible responses for an operation, including status, content, and headers.

Constant Summary

Constants inherited from Node

Node::BUCKET_NAMES

Instance Attribute Summary collapse

Attributes inherited from Node

#id

Instance Method Summary collapse

Methods inherited from Node

bucket, #ref

Constructor Details

#initialize(http_status:, description:, media_types: [], headers: [], extensions: nil, examples: nil) ⇒ Response

Returns a new instance of Response.



13
14
15
16
17
18
19
20
21
# File 'lib/grape_oas/api_model/response.rb', line 13

def initialize(http_status:, description:, media_types: [], headers: [], extensions: nil, examples: nil)
  super()
  @http_status = http_status.to_s
  @description = description
  @media_types = Array(media_types)
  @headers     = Array(headers)
  @extensions  = extensions
  @examples    = examples
end

Instance Attribute Details

#descriptionObject

Returns the value of attribute description.



11
12
13
# File 'lib/grape_oas/api_model/response.rb', line 11

def description
  @description
end

#examplesObject

Returns the value of attribute examples.



11
12
13
# File 'lib/grape_oas/api_model/response.rb', line 11

def examples
  @examples
end

#extensionsObject

Returns the value of attribute extensions.



11
12
13
# File 'lib/grape_oas/api_model/response.rb', line 11

def extensions
  @extensions
end

#headersObject

Returns the value of attribute headers.



11
12
13
# File 'lib/grape_oas/api_model/response.rb', line 11

def headers
  @headers
end

#http_statusObject

Returns the value of attribute http_status.



11
12
13
# File 'lib/grape_oas/api_model/response.rb', line 11

def http_status
  @http_status
end

#media_typesObject

Returns the value of attribute media_types.



11
12
13
# File 'lib/grape_oas/api_model/response.rb', line 11

def media_types
  @media_types
end

Instance Method Details

#add_media_type(media_type) ⇒ Object



23
24
25
# File 'lib/grape_oas/api_model/response.rb', line 23

def add_media_type(media_type)
  @media_types << media_type
end