getInput<S extends SuccessDomainInput> method

  1. @visibleForTesting
  2. @protected
Future<UseCaseInput<S>> getInput<S extends SuccessDomainInput>(
  1. DomainModel domainModel
)
inherited

Implementation

@visibleForTesting
@protected
Future<UseCaseInput<S>> getInput<S extends SuccessDomainInput>(
  DomainModel domainModel,
) async {
  final input = await getInternalInput<S>(domainModel);

  return input.fold(
    (failure) {
      CleanFrameworkObserver.instance
          .onFailureInput(this, domainModel, failure);
      return FailureUseCaseInput(failure);
    },
    (success) {
      CleanFrameworkObserver.instance
          .onSuccessInput(this, domainModel, success);
      return SuccessUseCaseInput(success);
    },
  );
}