Sha256: 1246dfac3fab90dc7ca1d75ce81ed8af5de2be86dc73f00feba45aa86cafde7f

Contents?: true

Size: 717 Bytes

Versions: 13

Compression:

Stored size: 717 Bytes

Contents

# frozen_string_literal: true

module SwaggerDocsGenerator
  # Parse temporary json files
  class MetadataJsons
    def initialize
      @paths = { paths: {} }
      @tags_array = []
    end

    def construct_swagger_file
      hash = {}
      files_tmp.each do |file|
        @paths[:paths].merge!(read_part_json(file, 'paths'))
        @tags_array.push read_part_json(file, 'tags')
      end
      hash.merge(@paths).merge(tags: @tags_array)
    end

    private

    # :reek:UtilityFunction
    def files_tmp
      Dir[Rails.root.join(SwaggerDocsGenerator.temporary_folder, '*.json')]
    end

    # :reek:UtilityFunction
    def read_part_json(file, key)
      JSON.parse(File.read(file))[key]
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

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