setData<T> method

  1. @override
Future<T> setData<T>({
  1. required String endpoint,
  2. required JSON data,
  3. CancelToken? cancelToken,
  4. bool requiresAuthToken = true,
  5. required T converter(
    1. ResponseModel<JSON> response
    ),
})
override

Implementation

@override
Future<T> setData<T>({
  required String endpoint,
  required JSON data,
  CancelToken? cancelToken,
  bool requiresAuthToken = true,
  required T Function(ResponseModel<JSON> response) converter,
}) async {
  ResponseModel<JSON> response;

  try {
    response = await _dioService.post<JSON>(
      endpoint: endpoint,
      data: data,
      options: Options(
        extra: <String, Object?>{
          'requiresAuthToken': requiresAuthToken,
        },
      ),
      cancelToken: cancelToken,
    );
  } on Exception catch (ex) {
    throw CustomException.fromDioException(ex);
  }

  try {
    return converter(response);
  } on Exception catch (ex) {
    throw CustomException.fromParsingException(ex);
  }
}