class AASM::Core::Event
def initialize(name, state_machine, options = {}, &block)
def initialize(name, state_machine, options = {}, &block) @name = name @state_machine = state_machine @transitions = [] @valid_transitions = Hash.new { |h, k| h[k] = {} } @guards = Array(options[:guard] || options[:guards] || options[:if]) @unless = Array(options[:unless]) #TODO: This could use a better name @default_display_name = name.to_s.gsub(/_/, ' ').capitalize # from aasm4 @options = options # QUESTION: .dup ? add_options_from_dsl(@options, [ :after, :after_commit, :after_transaction, :before, :before_transaction, :ensure, :error, :before_success, :success, ], &block) if block end