private void Handle(FlowNodeDefCreatedEvent evt)
        {
            var elt = SerializedFlowNodeDefinition.Create(evt.SerializedContent);

            SerializedElementDefs.Add(elt);
            Version        = evt.Version;
            UpdateDateTime = evt.UpdateDateTime;
        }
 public override object Clone()
 {
     return(new ProcessInstanceAggregate
     {
         AggregateId = AggregateId,
         ProcessFileId = ProcessFileId,
         ProcessFileName = ProcessFileName,
         Version = Version,
         CreateDateTime = CreateDateTime,
         UpdateDateTime = UpdateDateTime,
         Status = Status,
         SequenceFlows = SequenceFlows.Select(_ => (SequenceFlow)_.Clone()).ToList(),
         SerializedElementDefs = SerializedElementDefs.Select(_ => (SerializedFlowNodeDefinition)_.Clone()).ToList(),
         ElementInstances = ElementInstances.Select(_ => (FlowNodeInstance)_.Clone()).ToList(),
         ExecutionPathLst = ExecutionPathLst.Select(_ => (ExecutionPath)_.Clone()).ToList(),
         ItemDefs = ItemDefs.Select(_ => (ItemDefinition)_.Clone()).ToList(),
         Messages = Messages.Select(_ => (Message)_.Clone()).ToList(),
         Interfaces = Interfaces.Select(_ => (BPMNInterface)_.Clone()).ToList(),
         StateTransitions = StateTransitions.Select(_ => (StateTransitionToken)_.Clone()).ToList()
     });
 }