module Workflow::Join::ActiveRecord::PendingTransitions
table.column :workflow_pending_transitions, :string
Public Instance Methods
pending_transition!(value)
click to toggle source
# File lib/workflow/join/active_record/pending_transitions.rb, line 22 def pending_transition!(value) pending_transitions!(pending_transitions | [value]) end
pending_transitions()
click to toggle source
# File lib/workflow/join/active_record/pending_transitions.rb, line 6 def pending_transitions workflow_pending_transitions.to_s.split(',').map(&:to_sym) end
pending_transitions!(value)
click to toggle source
# File lib/workflow/join/active_record/pending_transitions.rb, line 10 def pending_transitions!(value) pts = case value when Array then value.map(&:to_s).join(',') when String, Symbol then value.to_s end update_column :workflow_pending_transitions, pts end
pending_transitions?()
click to toggle source
# File lib/workflow/join/active_record/pending_transitions.rb, line 18 def pending_transitions? !pending_transitions.empty? end
try_pending_transitions!()
click to toggle source
# File lib/workflow/join/active_record/pending_transitions.rb, line 26 def try_pending_transitions! pending_transitions!(pending_transitions.reject do |transition| begin respond_to?("can_#{transition}?") && \ public_send("can_#{transition}?") && \ public_send("#{transition}!".to_sym) && \ true rescue false # no transition no cry end end) end