atmob_file_api.c.dart 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. // GENERATED CODE - DO NOT MODIFY BY HAND
  2. part of 'atmob_file_api.dart';
  3. // **************************************************************************
  4. // RetrofitGenerator
  5. // **************************************************************************
  6. // ignore_for_file: unnecessary_brace_in_string_interps,no_leading_underscores_for_local_identifiers,unused_element,unnecessary_string_interpolations
  7. class _AtmobFileApi implements AtmobFileApi {
  8. _AtmobFileApi(this._dio, {this.baseUrl, this.errorLogger});
  9. final Dio _dio;
  10. String? baseUrl;
  11. final ParseErrorLogger? errorLogger;
  12. @override
  13. Future<BaseResponse<UploadResultBean>> uploadImage(
  14. UploadRequest request,
  15. ) async {
  16. final _extra = <String, dynamic>{};
  17. final queryParameters = <String, dynamic>{};
  18. final _headers = <String, dynamic>{};
  19. final _data = FormData.fromMap(request.toJson());
  20. final _options = _setStreamType<BaseResponse<UploadResultBean>>(
  21. Options(
  22. method: 'POST',
  23. headers: _headers,
  24. extra: _extra,
  25. contentType: 'multipart/form-data',
  26. )
  27. .compose(
  28. _dio.options,
  29. '/project/keyboard/v1/upload/image',
  30. queryParameters: queryParameters,
  31. data: _data,
  32. )
  33. .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)),
  34. );
  35. final _result = await _dio.fetch<Map<String, dynamic>>(_options);
  36. late BaseResponse<UploadResultBean> _value;
  37. try {
  38. _value = BaseResponse<UploadResultBean>.fromJson(
  39. _result.data!,
  40. (json) => UploadResultBean.fromJson(json as Map<String, dynamic>),
  41. );
  42. } on Object catch (e, s) {
  43. errorLogger?.logError(e, s, _options);
  44. rethrow;
  45. }
  46. return _value;
  47. }
  48. RequestOptions _setStreamType<T>(RequestOptions requestOptions) {
  49. if (T != dynamic &&
  50. !(requestOptions.responseType == ResponseType.bytes ||
  51. requestOptions.responseType == ResponseType.stream)) {
  52. if (T == String) {
  53. requestOptions.responseType = ResponseType.plain;
  54. } else {
  55. requestOptions.responseType = ResponseType.json;
  56. }
  57. }
  58. return requestOptions;
  59. }
  60. String _combineBaseUrls(String dioBaseUrl, String? baseUrl) {
  61. if (baseUrl == null || baseUrl.trim().isEmpty) {
  62. return dioBaseUrl;
  63. }
  64. final url = Uri.parse(baseUrl);
  65. if (url.isAbsolute) {
  66. return url.toString();
  67. }
  68. return Uri.parse(dioBaseUrl).resolveUri(url).toString();
  69. }
  70. }