Пример #1
0
        public void Handle(DataResultMessage <PostItem> message)
        {
            List <PostItem> result = message.Data;

            string serializedResult = JsonConvert.SerializeObject(result);

            File.WriteAllText(this._tempFileName, serializedResult, Encoding.UTF8);
        }
Пример #2
0
        public override ValueTask OnReceiveResultAsync(
            DataResultMessage message,
            CancellationToken cancellationToken)
        {
            if (message is null)
            {
                throw new ArgumentNullException(nameof(message));
            }

            return(OnReceiveResultInternal(message, cancellationToken));
        }
Пример #3
0
        private async ValueTask OnReceiveResultInternal(
            DataResultMessage message,
            CancellationToken cancellationToken)
        {
            if (_disposed)
            {
                return;
            }

            if (await _channel.Writer.WaitToWriteAsync(cancellationToken).ConfigureAwait(false))
            {
                await InvokeSubscriptionMiddleware(message.Payload).ConfigureAwait(false);

                var result = (OperationResult <T>)message.Payload.Build();
                await _channel.Writer.WriteAsync(result, cancellationToken).ConfigureAwait(false);
            }
        }
Пример #4
0
        public void Handle <T>(DataResultMessage <T> message)
        {
            IEnumerable <MainData> data = message.Data.OfType <MainData>();

            AddToItems(data);
            IEnumerable <Links> links = message.Data.OfType <Links>();

            AddToItems(links);
            IEnumerable <Images> images = message.Data.OfType <Images>();

            AddToItems(images);

            this.receiver.Send(
                new DataResultMessage <PostItem>
            {
                Data = this._items.Values.Where(i => i.Data != null && i.Images != null && i.Links != null).ToList()
            });
        }
Пример #5
0
 public abstract Task OnReceiveResultAsync(
     DataResultMessage message,
     CancellationToken cancellationToken);