1
0
Fork 0
happy-cat/src/nativeMain/kotlin/fi/schro/data/ConfigurationRepository.kt

26 lines
988 B
Kotlin

package fi.schro.data
import fi.schro.util.FileUtil
import kotlinx.serialization.decodeFromString
import kotlinx.serialization.json.Json
import platform.posix.fopen
interface ConfigurationRepository {
suspend fun applyConfiguration(configurationFilePath: String, lightAddress: String, port: Int? = null)
}
class ConfigurationRepositoryImpl(
private val lightRepository: LightRepository
): ConfigurationRepository {
override suspend fun applyConfiguration(configurationFilePath: String, lightAddress: String, port: Int?) {
val configString = FileUtil.readAllText(configurationFilePath)
TODO("Not yet implemented")
}
private suspend fun applyLightStatus(lightAddress: String, port: Int?, status: LightStatus){
val currentStatus = lightRepository.getLightStatus(lightAddress)
currentStatus.getNecessaryChanges(status)?.let { statusUpdate ->
lightRepository.setLightStatus(lightAddress, port, statusUpdate)
}
}
}