Sha256: fd5067e00a2697f728c9458a20a4898440adff8b1c0afda716a4ed4670b8f418
Contents?: true
Size: 931 Bytes
Versions: 10
Compression:
Stored size: 931 Bytes
Contents
# A Composite that keeps track when a param description has been added to references # and returns the reference instead of the complete object class Apipie::Generator::Swagger::ParamDescription::ReferencedComposite # @param [Apipie::Generator::Swagger::ParamDescription::Composite] composite # @param [Symbol, String] param_type def initialize(composite, param_type) @composite = composite @param_type = param_type.to_sym end def to_swagger return ref_to(:name) if added?(:name) schema_obj = @composite.to_swagger return nil if schema_obj.nil? add(schema_obj) { '$ref' => ref_to(@param_type) } end private def ref_to(name) "#/definitions/#{name}" end def add(schema) Apipie::Generator::Swagger::ReferencedDefinitions.instance.add!(@param_type, schema) end def added?(name) Apipie::Generator::Swagger::ReferencedDefinitions.instance.added?(name) end end
Version data entries
10 entries across 10 versions & 1 rubygems