Ejemplo n.º 1
0
        /// <inheritdoc/>
        public async Task <T> SourceAsync <T>(ISourceRequest request) where T : class
        {
            request.RouteValues.Resolve(ConnectionSettings);
            var response = await this.LowLevelDispatch.GetSourceDispatchAsync <T>(request);

            return(response.Body);
        }
        /// <inheritdoc/>
        public T Source <T>(ISourceRequest request) where T : class
        {
            request.RouteValues.Resolve(ConnectionSettings);
            var response = this.LowLevelDispatch.GetSourceDispatch <T>(request);

            return(response.Body);
        }
Ejemplo n.º 3
0
        /// <inheritdoc />
        public T Source <T>(ISourceRequest sourceRequest) where T : class
        {
            var pathInfo = sourceRequest.ToPathInfo(_connectionSettings);
            var response = this.RawDispatch.GetSourceDispatch <T>(pathInfo);

            return(response.Response);
        }
        /// <inheritdoc/>
        public async Task <T> SourceAsync <T>(ISourceRequest request, CancellationToken cancellationToken = default(CancellationToken)) where T : class
        {
            request.RouteValues.Resolve(ConnectionSettings);
            var response = await this.LowLevelDispatch.GetSourceDispatchAsync <T>(request, cancellationToken).ConfigureAwait(false);

            return(response.Body);
        }
        /// <inheritdoc/>
        public Task <T> SourceAsync <T>(ISourceRequest request) where T : class
        {
            request.RouteValues.Resolve(ConnectionSettings);
            var response = this.LowLevelDispatch.GetSourceDispatchAsync <T>(request)
                           .ContinueWith(t => t.Result.Body, TaskContinuationOptions.ExecuteSynchronously);

            return(response);
        }
Ejemplo n.º 6
0
        /// <inheritdoc />
        public async Task <TDocument> SourceAsync <TDocument>(ISourceRequest request, CancellationToken ct = default) where TDocument : class
        {
            request.RequestParameters.DeserializationOverride = ToSourceResponse <TDocument>;
            var result = await DoRequestAsync <ISourceRequest, SourceResponse <TDocument> >(request, request.RequestParameters, ct)
                         .ConfigureAwait(false);

            return(result.Body);
        }
 /// <inheritdoc/>
 public T Source <T>(ISourceRequest request) where T : class
 {
     request.RouteValues.Resolve(ConnectionSettings);
     return(this.Dispatcher.Dispatch <ISourceRequest, SourceRequestParameters, SourceResponse <T> >(
                request,
                this.ToSourceResponse <T>,
                (p, d) => this.LowLevelDispatch.GetSourceDispatch <SourceResponse <T> >(p)
                ).Body);
 }
        /// <inheritdoc/>
        public async Task <T> SourceAsync <T>(ISourceRequest request, CancellationToken cancellationToken = default(CancellationToken)) where T : class
        {
            request.RouteValues.Resolve(ConnectionSettings);
            var result = await this.Dispatcher.DispatchAsync <ISourceRequest, SourceRequestParameters, SourceResponse <T>, ISourceResponse <T> >(
                request,
                cancellationToken,
                this.ToSourceResponse <T>,
                (p, d, c) => this.LowLevelDispatch.GetSourceDispatchAsync <SourceResponse <T> >(p, c)
                ).ConfigureAwait(false);

            return(result.Body);
        }
Ejemplo n.º 9
0
        /// <inheritdoc />
        public Task <T> SourceAsync <T>(ISourceRequest sourceRequest) where T : class
        {
            var pathInfo = sourceRequest.ToPathInfo(_connectionSettings);
            var response = this.RawDispatch.GetSourceDispatchAsync <T>(pathInfo)
                           .ContinueWith(t =>
            {
                if (t.IsFaulted)
                {
                    throw t.Exception.Flatten().InnerException;
                }
                return(t.Result.Response);
            });

            return(response);
        }
 public Task <SourceResponse <TDocument> > SourceAsync <TDocument>(ISourceRequest request, CancellationToken ct = new CancellationToken()) where TDocument : class
 {
     throw new NotImplementedException();
 }
 public SourceResponse <TDocument> Source <TDocument>(ISourceRequest request) where TDocument : class
 {
     throw new NotImplementedException();
 }
Ejemplo n.º 12
0
 /// <inheritdoc />
 public TDocument Source <TDocument>(ISourceRequest request) where TDocument : class
 {
     request.RequestParameters.DeserializationOverride = ToSourceResponse <TDocument>;
     return(DoRequest <ISourceRequest, SourceResponse <TDocument> >(request, request.RequestParameters).Body);
 }