Class: Mnenv::JsonFormatter

Inherits:
Object
  • Object
show all
Defined in:
lib/mnenv/json_formatter.rb

Class Method Summary collapse

Class Method Details

.format_version(version) ⇒ Object



7
8
9
10
11
# File 'lib/mnenv/json_formatter.rb', line 7

def self.format_version(version)
  version.to_hash.merge(
    'display_name' => version.display_name
  ).merge(version_specific_fields(version))
end

.format_versions(versions) ⇒ Object



13
14
15
16
17
18
19
# File 'lib/mnenv/json_formatter.rb', line 13

def self.format_versions(versions)
  {
    'count' => versions.size,
    'latest' => versions.last&.version,
    'versions' => versions.map { |v| format_version(v) }
  }
end

.version_specific_fields(version) ⇒ Object

Additional fields specific to JSON output format



23
24
25
26
27
28
29
30
# File 'lib/mnenv/json_formatter.rb', line 23

def version_specific_fields(version)
  case version
  when GemfileVersion
    { 'gemfile_exists' => version.exists_locally? }
  else
    {}
  end
end