Slide 14
Slide 14 text
val presenter = ActivityPresenter()
db
protos
api
presenters
viewmodel
+
viewevent
app backend
entitySyncer.triggerSync(
foreground = false,
force = false
).subscribe()
appService.syncEntities(request)
@POST("/2.0/cash/sync-entities") //
Observable syncEntities(
@Body SyncEntitiesRequest request);
paymentQueries.insertPayment(
payment.token!!,
payment.sender_id,
payment.recipient_id,
payment.amount
)
insertPayment:
INSERT OR REPLACE INTO payment
(token, sender_id, recipient_id, amount)
VALUES (?, ?, ?, ?);
fun renderedPayment(
paymentToken: String
): Observable
entityManager
.renderedPayment(token)
.map(this::createViewModel)
.subscribe(view)
presenter.viewModel()
.observeOn(AndroidSchedulers.mainThread())
.subscribe(this::renderViewModel)