Maybe
최대 한 개의 데이터를 발행할 수 있고 데이터 없이도 완료할 수 있는 Single
에 onComplete
가 추가된 형태로 3가지 이벤트를 받을 수 있다.
onSuccess
는 데이터 하나를 발행함과 동시에 종료한다.onError
는 에러가 발생하였음을 알린다.onComplete
데이터의 발행이 완료되었음을 알린다.
fun main() {
Maybe.create<Int> {
it.onSuccess(100)
it.onComplete() // 무시됨
}.doOnSuccess {
println("doOnSuccess: $it")
}.doOnComplete {
println("doOnComplete")
}.subscribe()
}
// doOnSuccess: 100