Sha256: 8ea59ffa61bd5e9bcc775822df3d9aa9cfbb2c3aba85e4662cc015fe512be6fa

Contents?: true

Size: 1.03 KB

Versions: 10

Compression:

Stored size: 1.03 KB

Contents

# frozen_string_literal: true

module SwaggerDocsGenerator
  # # Metadata generated
  #
  # Metadata generated in swagger json file
  class Metadata
    ACCEPT = %i(title version contact description host schemes base_path
                swagger).freeze

    def initialize
      @config = nil
    end

    def construct_swagger_file
      hash = {}
      self.class.protected_instance_methods.each do |method|
        if ACCEPT.include?(method) || method.is_a?(Hash)
          hash.merge!(send(method)) unless @config.send(method).blank?
        end
      end
      hash
    end

    private

    # :reek:UtilityFunction
    def base_class_documentation
      "#{SwaggerDocsGenerator.version_ruby}::BaseDoc".constantize
    end

    def all_class_documentation
      base_class_documentation.subclasses
    end

    attr_reader :config
  end
end

require 'swagger_docs_generator/metadata/configuration'
require 'swagger_docs_generator/metadata/info'
require 'swagger_docs_generator/metadata/jsons'
require 'swagger_docs_generator/metadata/definition'

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
swagger_docs_generator-0.3.5 lib/swagger_docs_generator/metadata/metadata.rb
swagger_docs_generator-0.3.5.pre.31 lib/swagger_docs_generator/metadata/metadata.rb
swagger_docs_generator-0.3.4.pre.26 lib/swagger_docs_generator/metadata/metadata.rb
swagger_docs_generator-0.3.4 lib/swagger_docs_generator/metadata/metadata.rb
swagger_docs_generator-0.3.4.pre.23 lib/swagger_docs_generator/metadata/metadata.rb
swagger_docs_generator-0.3.3 lib/swagger_docs_generator/metadata/metadata.rb
swagger_docs_generator-0.3.2 lib/swagger_docs_generator/metadata/metadata.rb
swagger_docs_generator-0.3.1 lib/swagger_docs_generator/metadata/metadata.rb
swagger_docs_generator-0.3.0.pre.19 lib/swagger_docs_generator/metadata/metadata.rb
swagger_docs_generator-0.3.0.pre.18 lib/swagger_docs_generator/metadata/metadata.rb