Sha256: 61cba29c4b06621aa45fd3feb76271292c0b05f61288a954e3e38f5381af9c71
Contents?: true
Size: 1.76 KB
Versions: 1
Compression:
Stored size: 1.76 KB
Contents
# frozen_string_literal: true module WeakSwaggerParameters module Definitions module PropertyContainer extend ActiveSupport::Concern # rubocop:disable Metrics/BlockLength included do def string(name, description, options = {}) register_definition name, options, WeakSwaggerParameters::Definitions::Property.new(:string, name, description, options) end def boolean(name, description, options = {}) register_definition name, options, WeakSwaggerParameters::Definitions::Property.new(:boolean, name, description, options) end def integer(name, description, options = {}) register_definition name, options, WeakSwaggerParameters::Definitions::Property.new(:integer, name, description, options) end def hash(name, description, options = {}, &block) register_definition name, options, WeakSwaggerParameters::Definitions::HashProperty.new(name, description, &block) end def model(name, description, model_class, options = {}) register_definition name, options, WeakSwaggerParameters::Definitions::ModelProperty.new(name, description, model_class) end def collection(name, description, model_class, options = {}) register_definition name, options, WeakSwaggerParameters::Definitions::CollectionProperty.new(name, description, model_class) end private def register_definition(name, options, definition) required_fields << name if options.try(:[], :required) child_definitions << definition end def required_fields @required_fields ||= [] end def child_definitions @child_definitions ||= [] end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
weak_swagger_parameters-0.3.0 | lib/weak_swagger_parameters/definitions/property_container.rb |