Class: Crabfarm::TransitionService
- Inherits:
-
Object
- Object
- Crabfarm::TransitionService
- Defined in:
- lib/crabfarm/transition_service.rb
Instance Attribute Summary collapse
-
#document ⇒ Object
readonly
Returns the value of attribute document.
-
#navigator ⇒ Object
readonly
Returns the value of attribute navigator.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(_context) ⇒ TransitionService
constructor
A new instance of TransitionService.
- #transition(_name_or_class, _params = {}) ⇒ Object
Constructor Details
#initialize(_context) ⇒ TransitionService
Returns a new instance of TransitionService.
10 11 12 |
# File 'lib/crabfarm/transition_service.rb', line 10 def initialize(_context) @context = _context end |
Instance Attribute Details
#document ⇒ Object (readonly)
Returns the value of attribute document.
8 9 10 |
# File 'lib/crabfarm/transition_service.rb', line 8 def document @document end |
#navigator ⇒ Object (readonly)
Returns the value of attribute navigator.
8 9 10 |
# File 'lib/crabfarm/transition_service.rb', line 8 def navigator @navigator end |
Class Method Details
.transition(_context, _name, _params = {}) ⇒ Object
4 5 6 |
# File 'lib/crabfarm/transition_service.rb', line 4 def self.transition(_context, _name, _params={}) self.new(_context).transition(_name, _params) end |
Instance Method Details
#transition(_name_or_class, _params = {}) ⇒ Object
14 15 16 17 18 19 20 21 22 23 |
# File 'lib/crabfarm/transition_service.rb', line 14 def transition(_name_or_class, _params={}) navigator_class = Utils::Resolve.navigator_class _name_or_class @context.prepare @navigator = Factories::Navigator.build navigator_class, @context, _params @document = @navigator.run @document = @document.as_json if @document.respond_to? :as_json self end |