class Platoons
Constants
- SCHEMA_VERSION
Public Class Methods
new(parsed_data, squads, people, gsuite_domain)
click to toggle source
# File lib/terraorg/model/platoons.rb, line 20 def initialize(parsed_data, squads, people, gsuite_domain) version = parsed_data.fetch('version') raise "Unsupported schema version: #{version}" if version != SCHEMA_VERSION @platoons = {} parsed_data.fetch('platoons').each do |platoon_raw| p = Platoon.new(platoon_raw, squads, people, gsuite_domain) @platoons[p.id] = p end end
Public Instance Methods
all()
click to toggle source
# File lib/terraorg/model/platoons.rb, line 38 def all @platoons.values end
all_names()
click to toggle source
# File lib/terraorg/model/platoons.rb, line 46 def all_names @platoons.keys end
all_squad_names()
click to toggle source
# File lib/terraorg/model/platoons.rb, line 42 def all_squad_names @platoons.values.map(&:squad_names).flatten end
lookup!(name)
click to toggle source
# File lib/terraorg/model/platoons.rb, line 31 def lookup!(name) @platoons.fetch(name) end
members()
click to toggle source
# File lib/terraorg/model/platoons.rb, line 50 def members @platoons.map(&:members).flatten end
to_h()
click to toggle source
# File lib/terraorg/model/platoons.rb, line 54 def to_h { 'version' => SCHEMA_VERSION , 'platoons' => @platoons.values.sort_by(&:id).map(&:to_h) } end
validate!()
click to toggle source
# File lib/terraorg/model/platoons.rb, line 35 def validate! end