public SignHostApiClient(ISignHostApiClientSettings settings)
		{
			this.settings = settings;

			FlurlHttp.Configure(c =>
			{
				c.OnError = ErrorHandling.ErrorHandling.HandleError;
			});
		}
 /// <summary>
 /// Initializes a new instance of the <see cref="SignHostApiClient"/> class.
 /// Set your usertoken and APPKey by creating a <see cref="SignHostApiClientSettings"/>.
 /// </summary>
 /// <param name="settings"><see cref="SignHostApiClientSettings"/></param>
 /// <param name="httpClient"><see cref="HttpClient"/> to use for all http calls.</param>
 public SignHostApiClient(ISignHostApiClientSettings settings, HttpClient httpClient)
 {
     this.settings           = settings;
     this.client             = httpClient;
     this.client.BaseAddress = new Uri(
         settings.Endpoint + (settings.Endpoint.EndsWith("/") ? string.Empty : "/"));
     this.client.DefaultRequestHeaders.UserAgent.Add(
         new System.Net.Http.Headers.ProductInfoHeaderValue(
             "SignhostClientLibrary",
             Version));
     this.client.DefaultRequestHeaders.Add("Application", ApplicationHeader);
     this.client.DefaultRequestHeaders.Add("Authorization", AuthorizationHeader);
     settings.AddHeader?.Invoke(this.client.DefaultRequestHeaders.Add);
 }
Esempio n. 3
0
        /// <summary>
        /// Initializes a new instance of the <see cref="SignHostApiRetryClient"/> class.
        /// This client has a built-in retry mechanism.
        /// Set your usertoken and APPKey by creating a <see cref="SignHostApiClientSettings"/>.
        /// </summary>
        /// <param name="settings"><see cref="SignHostApiClientSettings"/>.</param>
        /// <param name="httpClient"><see cref="HttpClient"/> to use for all http calls.</param>
        /// <param name="policy">An <see cref="AsyncPolicy"/> to use instead of the default.</param>
        public SignHostApiRetryClient(
            ISignHostApiClientSettings settings,
            HttpClient httpClient,
            AsyncPolicy policy = null)
        {
            client = new SignHostApiClient(settings, httpClient);

            if (policy is null)
            {
                retryPolicy = GetDefaultPolicy();
            }
            else
            {
                retryPolicy = policy;
            }
        }
Esempio n. 4
0
 /// <summary>
 /// Initializes a new instance of the <see cref="SignHostApiClient"/> class.
 /// Set your usertoken and APPKey by creating a <see cref="SignHostApiClientSettings"/>.
 /// </summary>
 /// <param name="settings"><see cref="SignHostApiClientSettings"/></param>
 public SignHostApiClient(ISignHostApiClientSettings settings)
     : this(settings, new HttpClient())
 {
 }
Esempio n. 5
0
 /// <summary>
 /// Initializes a new instance of the <see cref="SignHostApiRetryClient"/> class.
 /// This client has a built-in retry mechanism.
 /// Set your usertoken and APPKey by creating a <see cref="SignHostApiClientSettings"/>.
 /// </summary>
 /// <param name="settings"><see cref="SignHostApiClientSettings"/>.</param>
 /// <param name="policy">An <see cref="AsyncPolicy"/> to use instead of the default.</param>
 public SignHostApiRetryClient(
     ISignHostApiClientSettings settings,
     AsyncPolicy policy = null)
     : this(settings, new HttpClient(), policy)
 {
 }