public async Task Handle(CaseFilePublishedEvent @event, CancellationToken cancellationToken)
        {
            var caseFile = await _caseFileQueryRepository.Get(@event.AggregateId, cancellationToken);

            var tDefinitions = CMMNParser.ParseWSDL(caseFile.Payload);

            foreach (var casePlan in CMMNParser.ExtractCasePlans(tDefinitions, caseFile))
            {
                await _casePlanCommandRepository.Add(casePlan, cancellationToken);
            }

            await _casePlanCommandRepository.SaveChanges(cancellationToken);
        }
示例#2
0
        public async Task Consume(ConsumeContext <CaseFilePublishedEvent> context)
        {
            var caseFile = await _caseFileCommandRepository.Get(context.Message.AggregateId, CancellationToken.None);

            var tDefinitions = CMMNParser.ParseWSDL(caseFile.Payload);

            foreach (var casePlan in CMMNParser.ExtractCasePlans(tDefinitions, caseFile))
            {
                await _casePlanCommandRepository.Add(casePlan, CancellationToken.None);
            }

            await _casePlanCommandRepository.SaveChanges(CancellationToken.None);
        }