Skip to content

Instantly share code, notes, and snippets.

@orcchg
Last active June 26, 2021 09:36
Show Gist options
  • Select an option

  • Save orcchg/7292a3d7f540d3040507361d451f2d22 to your computer and use it in GitHub Desktop.

Select an option

Save orcchg/7292a3d7f540d3040507361d451f2d22 to your computer and use it in GitHub Desktop.
class DefaultAuthInteractor @Inject constructor(
private val checkUserRegisteredUseCase: CheckUserRegisteredUseCase,
private val trustedLoginUserUseCase: TrustedLoginUserUseCase
) : AuthInteractor {
/**
* See how AuthInteractor coordinates the work between use-cases.
*/
override fun login(): Completable =
checkUserRegisteredUseCase.source()
.flatMap { isRegistered ->
if (isRegistered) {
trustedLoginUserUseCase.source {
PARAM_KEY_REG_PIN_CODE of "12345"
}
} else {
// perform registration step via UseCase
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment