atmob_stream_api.c.dart 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. // GENERATED CODE - DO NOT MODIFY BY HAND
  2. part of 'atmob_stream_api.dart';
  3. // **************************************************************************
  4. // RetrofitGenerator
  5. // **************************************************************************
  6. // ignore_for_file: unnecessary_brace_in_string_interps,no_leading_underscores_for_local_identifiers
  7. class _AtmobStreamApi implements AtmobStreamApi {
  8. _AtmobStreamApi(
  9. this._dio, {
  10. this.baseUrl,
  11. });
  12. final Dio _dio;
  13. String? baseUrl;
  14. @override
  15. Future<ResponseBody> talkExportFile(TalkExportRequest request) async {
  16. const _extra = <String, dynamic>{};
  17. final queryParameters = <String, dynamic>{};
  18. final _headers = <String, dynamic>{
  19. r'Content-Type': 'application/json',
  20. };
  21. final _data = <String, dynamic>{};
  22. _data.addAll(request.toJson());
  23. final _result =
  24. await _dio.fetch<ResponseBody>(_setStreamType<ResponseBody>(Options(
  25. method: 'POST',
  26. headers: _headers,
  27. extra: _extra,
  28. responseType: ResponseType.stream,
  29. )
  30. .compose(
  31. _dio.options,
  32. '/project/secretary/v1/talk/export',
  33. queryParameters: queryParameters,
  34. data: _data,
  35. )
  36. .copyWith(
  37. baseUrl: _combineBaseUrls(
  38. _dio.options.baseUrl,
  39. baseUrl,
  40. ))));
  41. return _result.data!;
  42. }
  43. @override
  44. Future<ResponseBody> chat(ChatRequest request) async {
  45. const _extra = <String, dynamic>{};
  46. final queryParameters = <String, dynamic>{};
  47. final _headers = <String, dynamic>{
  48. r'Content-Type': 'application/json',
  49. r'Accept': 'text/event-stream'
  50. };
  51. final _data = <String, dynamic>{};
  52. _data.addAll(request.toJson());
  53. final _result =
  54. await _dio.fetch<ResponseBody>(_setStreamType<ResponseBody>(Options(
  55. method: 'POST',
  56. headers: _headers,
  57. extra: _extra,
  58. responseType: ResponseType.stream,
  59. )
  60. .compose(
  61. _dio.options,
  62. '/project/secretary/v1/chat/stream',
  63. queryParameters: queryParameters,
  64. data: _data,
  65. )
  66. .copyWith(
  67. baseUrl: _combineBaseUrls(
  68. _dio.options.baseUrl,
  69. baseUrl,
  70. ))));
  71. return _result.data!;
  72. }
  73. RequestOptions _setStreamType<T>(RequestOptions requestOptions) {
  74. if (T != dynamic &&
  75. !(requestOptions.responseType == ResponseType.bytes ||
  76. requestOptions.responseType == ResponseType.stream)) {
  77. if (T == String) {
  78. requestOptions.responseType = ResponseType.plain;
  79. } else {
  80. requestOptions.responseType = ResponseType.json;
  81. }
  82. }
  83. return requestOptions;
  84. }
  85. String _combineBaseUrls(
  86. String dioBaseUrl,
  87. String? baseUrl,
  88. ) {
  89. if (baseUrl == null || baseUrl.trim().isEmpty) {
  90. return dioBaseUrl;
  91. }
  92. final url = Uri.parse(baseUrl);
  93. if (url.isAbsolute) {
  94. return url.toString();
  95. }
  96. return Uri.parse(dioBaseUrl).resolveUri(url).toString();
  97. }
  98. }