Sha256: fdd7d40ffc05897b4cc5da5db0a1b9af162deb9249f23be19c68c5fa73954a35

Contents?: true

Size: 593 Bytes

Versions: 4

Compression:

Stored size: 593 Bytes

Contents

module Apidoco
  class VersionDocumentation
    attr_accessor :directory

    def initialize(directory)
      self.directory = directory
    end

    def name
      directory.basename.to_s
    end
    alias_method :version, :name

    def as_json
      {
        name: name,
        base_url: "",
        apis: resource_documentations.flat_map(&:as_json)
      }
    end

    def resource_documentations
      resource_directories.map { |dir| ResourceDocumentation.new(dir) }
    end

    protected

    def resource_directories
      directory.children.select(&:directory?)
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
apidoco-1.1.0 lib/apidoco/version_documentation.rb
apidoco-1.0.2 lib/apidoco/version_documentation.rb
apidoco-1.0.1 lib/apidoco/version_documentation.rb
apidoco-0.1.0 lib/apidoco/version_documentation.rb