public async Task Capture(CaptureDocumentRequest request, RequestContext context, CancellationToken cancellationToken) { await Commit(async tx => { var headerId = await PersistHeader(request.Header, tx, context, cancellationToken); await EpcisEventStore.StoreEpcisEvents(request.EventList, tx, headerId, cancellationToken); await EpcisMasterdataStore.StoreEpcisMasterdata(request.MasterdataList, tx, headerId, cancellationToken); }); }
public async Task <IEpcisResponse> Handle(CaptureEpcisDocumentRequest request, CancellationToken cancellationToken) { request.EventList.ForEach(Validate); var captureRequest = new CaptureDocumentRequest { Header = request.Header, EventList = request.EventList, MasterdataList = request.MasterDataList }; await _documentStore.Capture(captureRequest, _context, cancellationToken); return(EmptyResponse.Value); }