class Apipie::ResponseDescriptionAdapter
¶ ↑
Attributes
additional_properties[RW]
typename[RW]
Public Class Methods
from_self_describing_class(cls)
click to toggle source
# File lib/apipie/response_description_adapter.rb, line 149 def self.from_self_describing_class(cls) adapter = ResponseDescriptionAdapter.new(cls.to_s) props = cls.describe_own_properties adapter.add_property_descriptions(props) adapter end
new(typename)
click to toggle source
# File lib/apipie/response_description_adapter.rb, line 156 def initialize(typename) @property_descs = [] @additional_properties = false @typename = typename end
Public Instance Methods
add(prop_desc)
click to toggle source
# File lib/apipie/response_description_adapter.rb, line 172 def add(prop_desc) if prop_desc.is_a? PropDesc @property_descs << prop_desc elsif prop_desc.is_a? Modifier prop_desc.apply(self) else raise "Unrecognized prop_desc type (#{prop_desc.class})" end end
add_property_descriptions(prop_descs)
click to toggle source
# File lib/apipie/response_description_adapter.rb, line 182 def add_property_descriptions(prop_descs) for prop_desc in prop_descs add(prop_desc) end end
allow_additional_properties()
click to toggle source
# File lib/apipie/response_description_adapter.rb, line 164 def allow_additional_properties additional_properties end
is_array?()
click to toggle source
# File lib/apipie/response_description_adapter.rb, line 196 def is_array? false end
params_ordered()
click to toggle source
# File lib/apipie/response_description_adapter.rb, line 192 def params_ordered @property_descs end
property(name, expected_type, options)
click to toggle source
# File lib/apipie/response_description_adapter.rb, line 188 def property(name, expected_type, options) @property_descs << PropDesc.new(name, expected_type, options) end
to_json()
click to toggle source
# File lib/apipie/response_description_adapter.rb, line 168 def to_json params_ordered.to_json end