/// <inheritdoc/>
		public Task<IPingResponse> PingAsync(IPingRequest request, CancellationToken cancellationToken = default(CancellationToken)) =>
			this.Dispatcher.DispatchAsync<IPingRequest, PingRequestParameters, PingResponse, IPingResponse>(
				SetPingTimeout(request),
				cancellationToken,
				new PingConverter(DeserializePingResponse),
				(p, d, c) => this.LowLevelDispatch.PingDispatchAsync<PingResponse>(p, c)
			);
Пример #2
0
 /// <inheritdoc/>
 public Task <IPingResponse> PingAsync(IPingRequest request, CancellationToken cancellationToken = default(CancellationToken)) =>
 this.Dispatcher.DispatchAsync <IPingRequest, PingRequestParameters, PingResponse, IPingResponse>(
     SetPingTimeout(request),
     cancellationToken,
     new PingConverter(DeserializePingResponse),
     (p, d, c) => this.LowLevelDispatch.PingDispatchAsync <PingResponse>(p, c)
     );
Пример #3
0
        private IPingRequest SetPingTimeout(IPingRequest pingRequest)
        {
            if (!this.ConnectionSettings.PingTimeout.HasValue)
            {
                return(pingRequest);
            }
            var timeout = this.ConnectionSettings.PingTimeout.Value;

            return(ForceConfiguration <IPingRequest, PingRequestParameters>(pingRequest, r => r.RequestTimeout = timeout));
        }
 /// <inheritdoc />
 public Task <IPingResponse> PingAsync(IPingRequest pingRequest)
 {
     return(this.DispatchAsync <IPingRequest, PingRequestParameters, PingResponse, IPingResponse>(
                pingRequest,
                (p, d) =>
     {
         SetRequestTimeout(d);
         return this.RawDispatch.PingDispatchAsync <PingResponse>(
             p.DeserializationState(new PingConverter(DeserializePingResponse))
             );
     }
                ));
 }
Пример #5
0
        public async Task <IPingResponse> PlacementCheckAsync(IPingRequest request)
        {
            var urlString    = $"{SemServiceEndpoint}/Ping?{request.ToQuerystring()}";
            var xmlString    = await new HttpClient().GetStringAsync(new Uri(urlString)).ConfigureAwait(false);
            var pingResponse = XmlConvert.DeserializeObject <PingResponse>(StripNamespacesFromPingResponseRoot(xmlString));

            if (!pingResponse.IsSuccess)
            {
                ErrorSignal.FromCurrentContext().Raise(new Exception($"SEMProxyService:PlacementCheckAsync - {pingResponse.RejectedReason} | {request.ToQuerystring()}"));
            }

            return(pingResponse);
        }
		/// <inheritdoc />
		public Task<IPingResponse> PingAsync(IPingRequest pingRequest)
		{
			return this.DispatchAsync<IPingRequest, PingRequestParameters, PingResponse, IPingResponse>(
				pingRequest,
				(p, d) =>
				{
					SetRequestTimeout(d);
					return this.RawDispatch.PingDispatchAsync<PingResponse>(
						p.DeserializationState(new PingConverter(DeserializePingResponse))
					);
				}
			);
		}
		private IPingRequest SetPingTimeout(IPingRequest pingRequest)
		{
			if (!this.ConnectionSettings.PingTimeout.HasValue) return pingRequest;
			var timeout = this.ConnectionSettings.PingTimeout.Value;
			return this.ForceConfiguration<IPingRequest, PingRequestParameters>(pingRequest, r => r.RequestTimeout = timeout);
		}
		/// <inheritdoc/>
		public IPingResponse Ping(IPingRequest request) =>
			this.Dispatcher.Dispatch<IPingRequest, PingRequestParameters, PingResponse>(
				SetPingTimeout(request),
				new PingConverter(DeserializePingResponse),
				(p, d) => this.LowLevelDispatch.PingDispatch<PingResponse>(p)
			);
 public Task <PingResponse> PingAsync(IPingRequest request, CancellationToken ct = new CancellationToken())
 {
     throw new NotImplementedException();
 }
 public PingResponse Ping(IPingRequest request)
 {
     throw new NotImplementedException();
 }
Пример #11
0
 /// <inheritdoc/>
 public IPingResponse Ping(IPingRequest request) =>
 this.Dispatcher.Dispatch <IPingRequest, PingRequestParameters, PingResponse>(
     SetPingTimeout(request),
     new PingConverter(DeserializePingResponse),
     (p, d) => this.LowLevelDispatch.PingDispatch <PingResponse>(p)
     );
 /// <inheritdoc />
 public Task <IPingResponse> PingAsync(IPingRequest request, CancellationToken cancellationToken = default(CancellationToken)) =>
 Dispatcher.DispatchAsync <IPingRequest, PingRequestParameters, PingResponse, IPingResponse>(
     SetPingTimeout(request),
     cancellationToken,
     (p, d, c) => LowLevelDispatch.PingDispatchAsync <PingResponse>(p, c)
     );
 /// <inheritdoc />
 public IPingResponse Ping(IPingRequest request) =>
 Dispatcher.Dispatch <IPingRequest, PingRequestParameters, PingResponse>(
     SetPingTimeout(request),
     (p, d) => LowLevelDispatch.PingDispatch <PingResponse>(p)
     );
 /// <inheritdoc />
 public Task <PingResponse> PingAsync(IPingRequest request, CancellationToken ct = default) =>
 DoRequestAsync <IPingRequest, PingResponse>(request, request.RequestParameters, ct, r => SetPingTimeout(r));
 /// <inheritdoc />
 public PingResponse Ping(IPingRequest request) =>
 DoRequest <IPingRequest, PingResponse>(request, request.RequestParameters, r => SetPingTimeout(r));