/// <inheritdoc />
		public Task<IMultiGetResponse> MultiGetAsync(IMultiGetRequest multiGetRequest)
		{
			var converter = CreateCovariantMultiGetConverter(multiGetRequest);
			var customCreator = new MultiGetConverter((r, s) => this.DeserializeMultiGetResponse(r, s, converter));
			return this.DispatchAsync<IMultiGetRequest, MultiGetRequestParameters, MultiGetResponse, IMultiGetResponse>(
				multiGetRequest,
				(p, d) => this.RawDispatch.MgetDispatchAsync<MultiGetResponse>(p.DeserializationState(customCreator), d)
			);
		}
Пример #2
0
        /// <inheritdoc />
        public Task <IMultiGetResponse> MultiGetAsync(IMultiGetRequest multiGetRequest)
        {
            var converter     = CreateCovariantMultiGetConverter(multiGetRequest);
            var customCreator = new MultiGetConverter((r, s) => this.DeserializeMultiGetResponse(r, s, converter));

            return(this.DispatchAsync <IMultiGetRequest, MultiGetRequestParameters, MultiGetResponse, IMultiGetResponse>(
                       multiGetRequest,
                       (p, d) => this.RawDispatch.MgetDispatchAsync <MultiGetResponse>(p.DeserializationState(customCreator), d)
                       ));
        }
		/// <inheritdoc />
		public Task<IMultiGetResponse> MultiGetAsync(Func<MultiGetDescriptor, MultiGetDescriptor> multiGetSelector)
		{
			multiGetSelector.ThrowIfNull("multiGetSelector");
			var descriptor = multiGetSelector(new MultiGetDescriptor());
			var converter = CreateCovariantMultiGetConverter(descriptor);
			var customCreator = new MultiGetConverter((r, s) => this.DeserializeMultiGetResponse(r, s, converter));
			return this.DispatchAsync<MultiGetDescriptor, MultiGetRequestParameters, MultiGetResponse, IMultiGetResponse>(
				descriptor,
				(p, d) => this.RawDispatch.MgetDispatchAsync<MultiGetResponse>(p.DeserializationState(customCreator), d)
			);
		}
Пример #4
0
        /// <inheritdoc />
        public Task <IMultiGetResponse> MultiGetAsync(Func <MultiGetDescriptor, MultiGetDescriptor> multiGetSelector)
        {
            multiGetSelector.ThrowIfNull("multiGetSelector");
            var descriptor    = multiGetSelector(new MultiGetDescriptor());
            var converter     = CreateCovariantMultiGetConverter(descriptor);
            var customCreator = new MultiGetConverter((r, s) => this.DeserializeMultiGetResponse(r, s, converter));

            return(this.DispatchAsync <MultiGetDescriptor, MultiGetRequestParameters, MultiGetResponse, IMultiGetResponse>(
                       descriptor,
                       (p, d) => this.RawDispatch.MgetDispatchAsync <MultiGetResponse>(p.DeserializationState(customCreator), d)
                       ));
        }