diff options
Diffstat (limited to 'shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/controllers/CommandsController.kt')
-rw-r--r-- | shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/controllers/CommandsController.kt | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/controllers/CommandsController.kt b/shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/controllers/CommandsController.kt new file mode 100644 index 0000000..b710763 --- /dev/null +++ b/shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/controllers/CommandsController.kt @@ -0,0 +1,29 @@ +package mx.trackermap.TrackerMap.controllers + +import mx.trackermap.TrackerMap.client.apis.CommandsApi +import mx.trackermap.TrackerMap.client.models.Command +import mx.trackermap.TrackerMap.client.models.Device + +class CommandsController( + val commandsApi: CommandsApi, + val sessionController: SessionController) +{ + var commands = emptyArray<Command>() + val deviceCommands = mutableMapOf<Int, Array<Command>>() + + suspend fun getAllCommands () { + sessionController.user?.id?.let { + commands = commandsApi.commandsGet(userId = it) + } + } + + suspend fun getDeviceCommands (device: Device) { + device.id?.let { + deviceCommands[it] = commandsApi.commandsSendGet (deviceId = device.id) + } + } + + suspend fun sendCommand (command: Command) { + commandsApi.commandsSendPost(command) + } +}
\ No newline at end of file |