Class: OpenApi::DSL::RequestBodyObj

Inherits:
Hash
  • Object
show all
Includes:
Helpers
Defined in:
lib/oas_objs/request_body_obj.rb

Overview

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Helpers

#_combined_schema, #arrow_writing_support, #process_schema_input

Constructor Details

#initialize(required, desc) ⇒ RequestBodyObj

Returns a new instance of RequestBodyObj.



15
16
17
18
# File 'lib/oas_objs/request_body_obj.rb', line 15

def initialize(required, desc)
  self.media_types = [ ]
  self.processed   = { required: required.to_s[/req/].present?, description: desc }
end

Instance Attribute Details

#media_typesObject

Returns the value of attribute media_types.



13
14
15
# File 'lib/oas_objs/request_body_obj.rb', line 13

def media_types
  @media_types
end

#processedObject

Returns the value of attribute processed.



13
14
15
# File 'lib/oas_objs/request_body_obj.rb', line 13

def processed
  @processed
end

Instance Method Details

#absorb(media_type, hash) ⇒ Object



20
21
22
23
# File 'lib/oas_objs/request_body_obj.rb', line 20

def absorb(media_type, hash)
  media_types << MediaTypeObj.new(media_type, **hash)
  self
end

#processObject



25
26
27
28
29
# File 'lib/oas_objs/request_body_obj.rb', line 25

def process
  content = media_types.map(&:process).reduce({ }, &fusion)
  processed[:content] = content if content.present?
  processed
end