Last active
January 10, 2019 23:26
-
-
Save dinorahtovar/93183869f89153a8e8014091bd28f009 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Created by Dinorah Tovar on 8/21/18 | |
* All presenter should extend from this. | |
*/ | |
open class BasePresenter : DisposableImpl { | |
/** | |
* Save disposables in a list to dispose them once user is navigate out of screen. | |
*/ | |
private val compositeDisposable = CompositeDisposable() | |
/** | |
* Add disposable to CompositeDisposable | |
*/ | |
override fun safeAdd(disposable: Disposable?) { | |
disposable?.let { | |
compositeDisposable.add(disposable) | |
} | |
} | |
/** | |
* Clear disposables. | |
*/ | |
override fun safeDispose() { | |
compositeDisposable.clear() | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Disposable Impl | |
*/ | |
interface DisposableImpl { | |
fun safeAdd(disposable: Disposable?) | |
fun safeDispose() | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment