insertAllAndReplace method

Future<void> insertAllAndReplace(
  1. {required List<ExerciseModel> exerciseModels}
)

運動データ一覧を保存する

競合が発生した場合は上書きする

Implementation

Future<void> insertAllAndReplace({
  required List<ExerciseModel> exerciseModels,
}) async {
  try {
    final db = await _localDatabaseHelper.openExerciseDb();

    for (final exerciseModel in exerciseModels) {
      await db.insert(
        ExerciseModelName.tableName.name,
        exerciseModel.toJson(),
        conflictAlgorithm: ConflictAlgorithm.replace,
      );
    }

    db.close();
  } on DatabaseException catch (error, stackTrace) {
    throw _repositoryErrorHandler.handleSqfliteError(
      error,
      stackTrace,
      ExerciseModelName.tableName,
    );
  } catch (error, stackTrace) {
    throw _repositoryErrorHandler.handleUnknownError(error, stackTrace);
  }
}