class Delayer::Deferred::Deferredable::NodeSequence::Sequence

Attributes

name[R]

Public Class Methods

new(name) click to toggle source
# File lib/delayer/deferred/deferredable/node_sequence.rb, line 10
def initialize(name)
  @name = name.to_sym
  @map = {}
  @exceptions = Hash.new(Delayer::Deferred::SequenceError)
end

Public Instance Methods

add(seq, flow = seq.name) click to toggle source
# File lib/delayer/deferred/deferredable/node_sequence.rb, line 16
def add(seq, flow = seq.name)
  @map[flow] = seq
  self
end
exception(exc, flow) click to toggle source
# File lib/delayer/deferred/deferredable/node_sequence.rb, line 21
def exception(exc, flow)
  @exceptions[flow] = exc
  self
end
inspect() click to toggle source
# File lib/delayer/deferred/deferredable/node_sequence.rb, line 34
def inspect
  "#<#{self.class}: #{name}>"
end
pull(flow) click to toggle source
# File lib/delayer/deferred/deferredable/node_sequence.rb, line 26
def pull(flow)
  if @map.has_key?(flow.to_sym)
    @map[flow.to_sym]
  else
    raise @exceptions[flow.to_sym], "Invalid sequence flow `#{name}' to `#{flow}'."
  end
end