class Kontena::Stacks::StackDataSet

Public Class Methods

new(data) click to toggle source

@param data [Hash]

# File lib/kontena/stacks/stack_data_set.rb, line 7
def initialize(data)
  @data = data
end

Public Instance Methods

[](name)
Alias for: stack
delete(name) click to toggle source

@param name [String] @return [StackData,NilClass]

# File lib/kontena/stacks/stack_data_set.rb, line 39
def delete(name)
  data = @data.delete(name)
  StackData.new(data[:stack_data], data[:loader]) if data
end
remove_dependencies() click to toggle source

@return [Array<StackData>]

# File lib/kontena/stacks/stack_data_set.rb, line 45
def remove_dependencies
  stacks.map do |stack|
    delete(stack.name) unless stack.root?
  end.compact
end
size() click to toggle source

@return [Integer]

# File lib/kontena/stacks/stack_data_set.rb, line 33
def size
  @data.size
end
stack(name) click to toggle source

@param name [String] @return [StackData,NilClass]

# File lib/kontena/stacks/stack_data_set.rb, line 13
def stack(name)
  data = @data[name]
  StackData.new(data[:stack_data], data[:loader]) if data
end
Also aliased as: []
stack_names() click to toggle source

@return [Array<String>]

# File lib/kontena/stacks/stack_data_set.rb, line 28
def stack_names
  @data.keys
end
stacks() click to toggle source

@return [Array<StackData>]

# File lib/kontena/stacks/stack_data_set.rb, line 21
def stacks
  stack_names.map do |name|
    stack(name)
  end.compact
end