/// <summary> /// Initializes a new instance of the <see cref="JobsDataFromApi" /> class. /// </summary> /// <param name="apiBaseUrl">The API base URL.</param> /// <param name="jobsSet">The jobs set.</param> /// <param name="jobAdvertBaseUrl">The job advert base URL.</param> /// <param name="httpClientProvider">A method of getting an <see cref="HttpClient"/> to use for the web API requests</param> /// <param name="jobsCache">A method of caching the API results.</param> /// <exception cref="ArgumentNullException">apiBaseUrl</exception> public JobsDataFromApi(Uri apiBaseUrl, JobsSet jobsSet, Uri jobAdvertBaseUrl, IHttpClientProvider httpClientProvider, IJobCacheStrategy jobsCache) { _apiBaseUrl = apiBaseUrl ?? throw new ArgumentNullException(nameof(apiBaseUrl)); _jobsSet = jobsSet; _jobAdvertBaseUrl = jobAdvertBaseUrl ?? throw new ArgumentNullException(nameof(jobAdvertBaseUrl)); _httpClientProvider = httpClientProvider; _jobsCache = jobsCache; }
/// <summary> /// Jobses the lookup values from API. /// </summary> /// <param name="apiBaseUrl">The API base URL.</param> /// <param name="jobsSet">The jobs set.</param> /// <param name="jobsCache">A method of caching the API results.</param> /// <exception cref="ArgumentNullException">apiBaseUrl</exception> public JobsLookupValuesFromApi(Uri apiBaseUrl, JobsSet jobsSet, IJobCacheStrategy jobsCache) { this._apiBaseUrl = apiBaseUrl ?? throw new ArgumentNullException(nameof(apiBaseUrl)); this._jobsSet = jobsSet; this._jobsCache = jobsCache; }