class Crabfarm::TransitionService

Attributes

document[R]
elapsed[R]
navigator[R]

Public Class Methods

new(_context) click to toggle source
# File lib/crabfarm/transition_service.rb, line 12
def initialize(_context)
  @context = _context
end
transition(_context, _name, _params={}) click to toggle source
# File lib/crabfarm/transition_service.rb, line 6
def self.transition(_context, _name, _params={})
  self.new(_context).transition(_name, _params)
end

Public Instance Methods

transition(_name_or_class, _params={}) click to toggle source
# File lib/crabfarm/transition_service.rb, line 16
def transition(_name_or_class, _params={})
  navigator_class = Utils::Resolve.navigator_class _name_or_class

  @elapsed = Benchmark.measure do
    @context.prepare
    @navigator = Factories::Navigator.build navigator_class, @context, _params
    @document = @navigator.run
  end.real

  self
end