You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
22 lines
784 B
22 lines
784 B
package com.xsn.explorer.data
|
|
|
|
import com.alexitc.playsonify.core.ApplicationResult
|
|
import com.alexitc.playsonify.models.ordering.FieldOrdering
|
|
import com.alexitc.playsonify.models.pagination.{PaginatedQuery, PaginatedResult}
|
|
import com.xsn.explorer.models.fields.BalanceField
|
|
import com.xsn.explorer.models.{Address, Balance}
|
|
|
|
import scala.language.higherKinds
|
|
|
|
trait BalanceDataHandler[F[_]] {
|
|
|
|
def upsert(balance: Balance): F[Balance]
|
|
|
|
def get(query: PaginatedQuery, ordering: FieldOrdering[BalanceField]): F[PaginatedResult[Balance]]
|
|
|
|
def getBy(address: Address): F[Balance]
|
|
|
|
def getNonZeroBalances(query: PaginatedQuery, ordering: FieldOrdering[BalanceField]): F[PaginatedResult[Balance]]
|
|
}
|
|
|
|
trait BalanceBlockingDataHandler extends BalanceDataHandler[ApplicationResult]
|
|
|