NewsDataApiClient constructor

NewsDataApiClient({
  1. required String apiKey,
  2. String baseUrl = baseUrl_,
  3. Duration timeout = defaultRequestTimeout,
  4. int maxRetries = defaultMaxRetries,
  5. Duration retryBackoff = defaultRetryBackoff,
  6. Duration retryBackoffMax = defaultRetryBackoffMax,
  7. Duration paginationDelay = defaultPaginationDelay,
  8. bool includeHeaders = false,
  9. Client? httpClient,
  10. NewsdataLogger? logger,
})

Implementation

NewsDataApiClient({
  required String apiKey,
  String baseUrl = baseUrl_,
  Duration timeout = defaultRequestTimeout,
  int maxRetries = defaultMaxRetries,
  Duration retryBackoff = defaultRetryBackoff,
  Duration retryBackoffMax = defaultRetryBackoffMax,
  Duration paginationDelay = defaultPaginationDelay,
  bool includeHeaders = false,
  http.Client? httpClient,
  NewsdataLogger? logger,
})  : _apiKey = _requireApiKey(apiKey),
      _baseUrl = baseUrl.endsWith('/') ? baseUrl : '$baseUrl/',
      _timeout = timeout,
      _maxRetries = math.max(1, maxRetries),
      _retryBackoff = retryBackoff,
      _retryBackoffMax = retryBackoffMax,
      _paginationDelay = paginationDelay,
      _includeHeaders = includeHeaders,
      _httpClient = httpClient ?? http.Client(),
      _ownsHttpClient = httpClient == null,
      _logger = logger;