Exemple #1
0
        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);
            }