You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

46 lines
1.5 KiB

2 years ago
  1. // GENERATED CODE - DO NOT MODIFY BY HAND
  2. part of 'app_api.dart';
  3. // **************************************************************************
  4. // RetrofitGenerator
  5. // **************************************************************************
  6. class _AppServiceClient implements AppServiceClient {
  7. _AppServiceClient(this._dio, {this.baseUrl}) {
  8. baseUrl ??= 'https://newsapi.org';
  9. }
  10. final Dio _dio;
  11. String? baseUrl;
  12. @override
  13. Future<NewsResponse> getNews() async {
  14. const _extra = <String, dynamic>{};
  15. final queryParameters = <String, dynamic>{};
  16. final _data = <String, dynamic>{};
  17. final _result = await _dio.fetch<Map<String, dynamic>>(_setStreamType<
  18. NewsResponse>(Options(
  19. method: 'GET', headers: <String, dynamic>{}, extra: _extra)
  20. .compose(_dio.options,
  21. '/v2/top-headlines?country=us&category=business&apiKey=640f7435fec643d6abdd8eb6de375859',
  22. queryParameters: queryParameters, data: _data)
  23. .copyWith(baseUrl: baseUrl ?? _dio.options.baseUrl)));
  24. final value = NewsResponse.fromJson(_result.data!);
  25. return value;
  26. }
  27. RequestOptions _setStreamType<T>(RequestOptions requestOptions) {
  28. if (T != dynamic &&
  29. !(requestOptions.responseType == ResponseType.bytes ||
  30. requestOptions.responseType == ResponseType.stream)) {
  31. if (T == String) {
  32. requestOptions.responseType = ResponseType.plain;
  33. } else {
  34. requestOptions.responseType = ResponseType.json;
  35. }
  36. }
  37. return requestOptions;
  38. }
  39. }