SignalEventDefinition Creation

I’m creating a SignalEventDefinition inside an IntermediateThrowEvent component.

The question is if it’s correct to do this to create the SignalEventDefinition this way ?:

      var element = renderer.get('moddle').create('bpmn:SignalEventDefinition', {
        signalRef: signalsList[0]
      });

      var targetElement = renderer.get('elementRegistry').get('theIntermediateThrowEventId');

      var modeling = renderer.get('modeling');      
      modeling.updateProperties(targetElement, {
        eventDefinitions: [element]
      });

I’ve got all the signal events with this code:

var definitions = renderer.get('canvas').getRootElement().businessObject.$parent;
var signalsList = definitions.rootElements.filter(function(element) {
      return element.$type === 'bpmn:Signal';
});

My bpmn code:

<?xml version="1.0" encoding="UTF-8"?>
<bpmn:definitions id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC"
  xmlns:di="http://www.omg.org/spec/DD/20100524/DI">
  <bpmn:process id="Process_1" isExecutable="false">
    <bpmn:intermediateThrowEvent id="IntermediateThrowEvent_0k5fpkk">
      <bpmn:signalEventDefinition signalRef="Signal_1jncgyr"/>
    </bpmn:intermediateThrowEvent>
  </bpmn:process>
  <bpmn:signal id="Signal_1jncgyr" name="aaa"/>
  <bpmn:signal id="Signal_0r0xw4j" name="bbb"/>
  <bpmn:signal id="Signal_1chdnvw" name="ccc"/>
  <bpmn:signal id="Signal_1g8i47l" name="ddd"/>
  <bpmn:signal id="Signal_0oxvjw2" name="eee"/>
  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
    <bpmndi:BPMNPlane bpmnElement="Process_1" id="BPMNPlane_1">
      <bpmndi:BPMNShape bpmnElement="IntermediateThrowEvent_0k5fpkk" id="IntermediateThrowEvent_0k5fpkk_di"><dc:Bounds height="36" width="36" x="362" y="173"/>
        <bpmndi:BPMNLabel><dc:Bounds height="20" width="90" x="335" y="209"/></bpmndi:BPMNLabel>
      </bpmndi:BPMNShape>
    </bpmndi:BPMNPlane>
  </bpmndi:BPMNDiagram>
</bpmn:definitions>
1 Like

Does it work? Looks good to me.

It does! Thanks for all !