getPreSignedUrl method

Future<GenPreSignedUrlResponseModel> getPreSignedUrl(
  1. {required GenPreSignedUrlRequestModel request}
)

アップロード用署名付きURLを取得する

Implementation

Future<GenPreSignedUrlResponseModel> getPreSignedUrl({
  required GenPreSignedUrlRequestModel request,
}) async {
  try {
    final result = await _client.genPreSignedUrl(
      genPreSignedUrlRequest: request.toOpenApiModel(),
    );
    final resultData = result.data;

    if (resultData == null) {
      throw RepositoryException(
        RepositoryErrorType.notFound,
        RepositoryErrorType.notFound.message,
      );
    }

    final genPreSignedUrlResponseModel = GenPreSignedUrlResponseModel(
      items: resultData.items.map((e) => e.toAppModel()).toList(),
    );

    return genPreSignedUrlResponseModel;
  } on RepositoryException catch (_) {
    rethrow;
  } on DioException catch (error, stackTrace) {
    throw await _dioErrorHandler.handleDioError(
      error,
      stackTrace,
      request,
    );
  } catch (error, stackTrace) {
    throw _repositoryErrorHandler.handleUnknownError(
      error,
      stackTrace,
    );
  }
}