private void Handle(FlowNodeDefCreatedEvent evt) { var elt = BaseFlowNode.Deserialize(evt.SerializedContent); ElementDefs.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 = new ConcurrentBag <SequenceFlow>(SequenceFlows.Select(_ => (SequenceFlow)_.Clone())), ElementDefs = new ConcurrentBag <BaseFlowNode>(ElementDefs.Select(_ => (BaseFlowNode)_.Clone())), ElementInstances = new ConcurrentBag <FlowNodeInstance>(ElementInstances.Select(_ => (FlowNodeInstance)_.Clone())), ExecutionPathLst = new ConcurrentBag <ExecutionPath>(ExecutionPathLst.Select(_ => (ExecutionPath)_.Clone())), ItemDefs = new ConcurrentBag <ItemDefinition>(ItemDefs.Select(_ => (ItemDefinition)_.Clone())), Messages = new ConcurrentBag <Message>(Messages.Select(_ => (Message)_.Clone())), Interfaces = new ConcurrentBag <BPMNInterface>(Interfaces.Select(_ => (BPMNInterface)_.Clone())), StateTransitions = new ConcurrentBag <StateTransitionNotification>(StateTransitions.Select(_ => (StateTransitionNotification)_.Clone())) }); }
public BaseFlowNode GetDefinition(string elementId) { return(ElementDefs.FirstOrDefault(_ => _.EltId == elementId)); }