Method: SpotFlow::Bpmn::Event#initialize
- Defined in:
- lib/spot_flow/bpmn/event.rb
#initialize(attributes = {}) ⇒ Event
Returns a new instance of Event.
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/spot_flow/bpmn/event.rb', line 8 def initialize(attributes = {}) super(attributes.except(:message_event_definition, :signal_event_definition, :error_event_definition, :terminate_event_definition, :timer_event_definition)) @event_definitions = [] Array.wrap(attributes[:message_event_definition]).each do |med| @event_definitions.push MessageEventDefinition.new(med) end if attributes[:message_event_definition].present? Array.wrap(attributes[:signal_event_definition]).each do |sed| @event_definitions.push SignalEventDefinition.new(sed) end if attributes[:signal_event_definition].present? Array.wrap(attributes[:error_event_definition]).each do |eed| @event_definitions.push ErrorEventDefinition.new(eed) end if attributes[:error_event_definition].present? Array.wrap(attributes[:terminate_event_definition]).each do |ted| @event_definitions.push TerminateEventDefinition.new(ted) end if attributes[:terminate_event_definition].present? Array.wrap(attributes[:timer_event_definition]).each do |ted| @event_definitions.push TimerEventDefinition.new(ted) end if attributes[:timer_event_definition].present? end |