Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class AddingPresenterImplementation @Inject constructor(private val dataSource: DataSource): AddingPresenter {
- private var addingView: AddingView? = null
- @InternalCoroutinesApi
- override suspend fun add(name: String, cost: Int, currency: Int, date: Long) {
- addingView?.setLoadingVisibility(true)
- val purchase = Purchase(0, name, cost, currency, date)
- try {
- dataSource.database.purchaseDao().insert(purchase)
- addingView?.addSuccess()
- } catch (e: Exception) {
- addingView?.addFailed()
- addingView?.showError(e.localizedMessage ?: "Unresolved error")
- }
- }
- override fun attachView(view: AddingView) {
- addingView = view
- }
- override fun detachView() {
- addingView = null
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement