module Raml::Bodies
Private Class Methods
included(base)
click to toggle source
XXX - need this line here to trigger Yard to generate docs for the above attribute.
# File lib/raml/mixin/bodies.rb, line 10 def self.included(base) base.instance_eval do non_scalar_property :body children_by :bodies, :media_type , Body end end
Private Instance Methods
parse_body(value)
click to toggle source
# File lib/raml/mixin/bodies.rb, line 17 def parse_body(value) if value.is_a? Hash and value.keys.all? {|k| k.is_a? String and k =~ /.+\/.+/ } # If all keys looks like media types, its not a default media type body. validate_hash 'body', value, String, Hash value.map { |b_name, b_data| Body.new b_name, b_data, self } else # Its a default media type body. validate_hash 'body', value, String media_type = default_media_type raise InvalidMediaType, 'Body with no media type, but default media type has not been declared.' unless media_type Body.new media_type, value, self end end