generateUsecase method

void generateUsecase(
  1. String featureName,
  2. String usecaseName
)

Generates a usecase and wires it through the architecture.

Creates the usecase file, adds methods to the data source and repository, and registers it in dependency injection. Both featureName and usecaseName should be in snake_case.

Implementation

void generateUsecase(String featureName, String usecaseName) {
  final featureSnake = FsUtils.toSnakeCaseSafe(featureName);
  final featurePascal = FsUtils.toPascalCase(featureSnake);
  final usecaseSnake = FsUtils.toSnakeCaseSafe(usecaseName);
  final usecasePascal = FsUtils.toPascalCase(usecaseSnake);

  _generateUsecaseFile(
      featureSnake, featurePascal, usecaseSnake, usecasePascal);
  _addMethodToDataSource(
      featureSnake, featurePascal, usecaseSnake, usecasePascal);
  _addMethodToRepository(
      featureSnake, featurePascal, usecaseSnake, usecasePascal);
  _addMethodToRepositoryImpl(
      featureSnake, featurePascal, usecaseSnake, usecasePascal);
  _registerUsecaseInDI(
      featureSnake, featurePascal, usecaseSnake, usecasePascal);
}