Ejemplo n.º 1
0
        public void TimeoutProvider_Ok()
        {
            var provider = new TimeoutProvider();

            IPipeline <ClientActionContext> pipeline =
                ClientConfiguration.ProxyBuilder().Url("http://localhost:8080").Timeout(provider)
                .BuildPipeline();

            Assert.Equal(provider, pipeline.Find <CommunicationMiddleware>().TimeoutProvider);
        }
        public void TestSetup()
        {
            request = Request.Get("http://foo/bar");

            cancellation = new CancellationTokenSource();

            provider = new TimeoutProvider(50.Milliseconds(), new ConsoleLog());

            calledSender   = false;
            senderResponse = Responses.Ok;
            senderToken    = default;
        }
Ejemplo n.º 3
0
        /// <inheritdoc cref="NativeTransport" />
        public NativeTransport([NotNull] NativeTransportSettings settings, [NotNull] ILog log)
        {
            this.settings = settings ?? throw new ArgumentNullException(nameof(settings));
            this.log      = log ?? throw new ArgumentNullException(nameof(log));

            clientProvider  = new HttpClientProvider(settings, this.log);
            timeoutProvider = new TimeoutProvider(settings.RequestAbortTimeout, this.log);
            errorHandler    = new ErrorHandler(this.log);
            bodyReader      = new BodyReader(
                settings.BufferFactory,
                len => settings.UseResponseStreaming(len),
                () => settings.MaxResponseBodySize,
                this.log);
        }
Ejemplo n.º 4
0
        private static MessagingBus SetupBus(OrderView orderView)
        {
            IPersistanceStore persitenceStore  = new MemoryPersistance();
            IDomainEventQuery domainEventQuery = new InProcPersistedDomainEventQuery(persitenceStore);
            IDomainEventStore domainEventStore = new PyxisDomainEventStore(
                persitenceStore,
                domainEventQuery);
            IDomainResultStoreQuery storeQuery  = new InProcDomainResultStoreQuery(persitenceStore);
            IDomainResultStore      resultStore = new DomainResultPersistanceStore(
                persitenceStore,
                storeQuery);
            ITimeoutProvider timeoutProvider = new TimeoutProvider(1000);
            IResultPublisher resultPublisher = new ResultPublisher(
                resultStore,
                timeoutProvider);
            IResultAwaiter resultAwaiter = new ResultAwaiter(
                resultStore,
                timeoutProvider);
            IList <IHandleCommand>        commandHanlders   = new List <IHandleCommand>();
            IList <IHandleEvent>          eventHandlers     = new List <IHandleEvent>();
            IMessageDispatcher <ICommand> commandDispatcher = new CqrsMessagingHandler(
                resultPublisher,
                commandHanlders,
                eventHandlers);
            ICommandQueue commandQueue = new InProcCommandQueue(commandDispatcher);
            MessagingBus  bus          = new MessagingBus(
                commandQueue,
                resultPublisher,
                resultAwaiter);
            IDomainRepository domainRepository = new DomainRepository(
                domainEventStore,
                bus);
            ISession session = new Session(domainRepository);

            commandHanlders.Add(new OrderCommandHandler(session));
            eventHandlers.Add(new OrderEventHandler(orderView));

            return(bus);
        }