All Downloads are FREE. Search and download functionalities are using the official Maven repository.

commonMain.com.harmony.kotlin.data.datasource.GetDataSourceValidator.kt Maven / Gradle / Ivy

package com.harmony.kotlin.data.datasource

import com.harmony.kotlin.data.query.Query
import com.harmony.kotlin.data.validator.Validator
import com.harmony.kotlin.data.validator.toListValidator
import com.harmony.kotlin.error.DataNotValidException

data class GetDataSourceValidator(
  private val getDataSource: GetDataSource,
  private val validator: Validator
) : GetDataSource {

  override suspend fun get(query: Query): T = getDataSource.get(query).let {
    if (!validator.isValid(it)) throw
    DataNotValidException() else it
  }

  @Deprecated("Use get instead")
  override suspend fun getAll(query: Query): List = getDataSource.getAll(query).let {
    if (!validator.toListValidator().isValid(it)) throw DataNotValidException() else it
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy