/// <summary> /// Initializes a new instance of the <see cref="HttpClientWrapper" /> class. /// </summary> /// <param name="agileCrmConfiguration">The agile CRM configuration.</param> public HttpClientWrapper( AgileCrmConfiguration agileCrmConfiguration) { agileCrmConfiguration.EnsureNotNull(); this.baseUri = $"https://{agileCrmConfiguration.Domain}.agilecrm.com/dev/api/"; // HttpClient instantiated with AgileCRM account credentials httpClient = new HttpClient(new HttpClientHandler { Credentials = new NetworkCredential( agileCrmConfiguration.Username, agileCrmConfiguration.ApiKey) }); }
/// <summary> /// Creates a new instance of AgileCRM. /// </summary> /// <param name="agileCrmConfiguration">The AgileCRM configuration.</param> /// <param name="loggerFactory">[Optional] The logger factory.</param> /// <returns> /// <see cref="IAgileCrm" />. /// </returns> public static IAgileCrm Create( AgileCrmConfiguration agileCrmConfiguration, ILoggerFactory loggerFactory = null) { loggerFactory.EnsureNotNull(); agileCrmConfiguration.EnsureNotNull(); if (localLogger == null) { localLogger = loggerFactory.CreateLogger <AgileCrm>(); } if (localAgileCrmConfiguration == null) { localAgileCrmConfiguration = agileCrmConfiguration; } return(Lazy.Value); }