class Eco::API::Session::Config::PostLaunch

Public Class Methods

new(config:) click to toggle source
# File lib/eco/api/session/config/post_launch.rb, line 8
def initialize(config:)
  @postcases = []
  super(config: config)
end

Public Instance Methods

add(name, type: nil) click to toggle source
# File lib/eco/api/session/config/post_launch.rb, line 30
def add(name, type: nil)
  @postcases.push({
    name: name,
    type: type
  })
end
each(&block) click to toggle source
# File lib/eco/api/session/config/post_launch.rb, line 21
def each(&block)
  return to_enum(:each) unless block
  items.each(&block)
end
empty?() click to toggle source
# File lib/eco/api/session/config/post_launch.rb, line 17
def empty?
  count == 0
end
items() click to toggle source
# File lib/eco/api/session/config/post_launch.rb, line 26
def items
  @postcases
end
length() click to toggle source
# File lib/eco/api/session/config/post_launch.rb, line 13
def length
  count
end
select(usecases) click to toggle source
# File lib/eco/api/session/config/post_launch.rb, line 37
def select(usecases)
  raise "Required Eco::API::UseCases to select the target post cases" unless usecases.is_a?(Eco::API::UseCases)
  each_with_object([]) do |pc, targets|
    targets.push(usecases.case(pc[:name], type: pc[:type]))
  end
end

Private Instance Methods

by_name() click to toggle source
# File lib/eco/api/session/config/post_launch.rb, line 46
def by_name
  @postcases.group_by {|pc| pc[:name]}
end
by_type() click to toggle source
# File lib/eco/api/session/config/post_launch.rb, line 50
def by_type
  @postcases.group_by {|pc| pc[:type]}
end