/// <summary> /// Initialize the client with custom config and custom Requester /// </summary> /// <param name="config">Algolia config instance</param> /// <param name="httpRequester">Your Http requester implementation of <see cref="IHttpRequester"/></param> public AnalyticsClient(AnalyticsConfig config, IHttpRequester httpRequester) { if (httpRequester == null) { throw new ArgumentNullException(nameof(httpRequester), "An httpRequester is required"); } if (config == null) { throw new ArgumentNullException(nameof(config), "A config is required"); } if (string.IsNullOrWhiteSpace(config.AppId)) { throw new ArgumentNullException(nameof(config.AppId), "Application ID is required"); } if (string.IsNullOrWhiteSpace(config.ApiKey)) { throw new ArgumentNullException(nameof(config.ApiKey), "An API key is required"); } _transport = new HttpTransport(config, httpRequester); }
/// <summary> /// Initialize a client with custom config /// </summary> /// <param name="config">Algolia config instance</param> public AnalyticsClient(AnalyticsConfig config) : this(config, new AlgoliaHttpRequester()) { }