diff options
Diffstat (limited to 'androidApp/src/main/java/mx/trackermap/TrackerMap/android/details/commands/UnitCommandsViewModel.kt')
-rw-r--r-- | androidApp/src/main/java/mx/trackermap/TrackerMap/android/details/commands/UnitCommandsViewModel.kt | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/androidApp/src/main/java/mx/trackermap/TrackerMap/android/details/commands/UnitCommandsViewModel.kt b/androidApp/src/main/java/mx/trackermap/TrackerMap/android/details/commands/UnitCommandsViewModel.kt index 3bb7f11..312d67e 100644 --- a/androidApp/src/main/java/mx/trackermap/TrackerMap/android/details/commands/UnitCommandsViewModel.kt +++ b/androidApp/src/main/java/mx/trackermap/TrackerMap/android/details/commands/UnitCommandsViewModel.kt @@ -25,22 +25,28 @@ import kotlinx.coroutines.DelicateCoroutinesApi import kotlinx.coroutines.launch import mx.trackermap.TrackerMap.client.apis.CommandsApi import mx.trackermap.TrackerMap.client.models.Command +import mx.trackermap.TrackerMap.controllers.CommandsController import org.koin.core.component.KoinComponent +import org.koin.core.component.inject @DelicateCoroutinesApi class UnitCommandsViewModel( private val commandsApi: CommandsApi ) : ViewModel(), KoinComponent { + private val commandsController: CommandsController by inject() + var commands = MutableLiveData<List<Command>>() private var selectedCommand: Command? = null private var deviceId: Int? = null fun fetchCommands(deviceId: Int?) { this.deviceId = deviceId - viewModelScope.launch { - val commands = commandsApi.commandsGet(deviceId = deviceId) - this@UnitCommandsViewModel.commands.value = commands.toList() + deviceId?.let { + viewModelScope.launch { + val commands = commandsController.fetchCommands(it) + this@UnitCommandsViewModel.commands.value = commands.toList() + } } } @@ -59,9 +65,11 @@ class UnitCommandsViewModel( } Log.d("UnitCommandsVM", "Sending command - $selectedCommand") - viewModelScope.launch { - val command = commandsApi.commandsSendPost(selectedCommand!!) - Log.d("UnitCommandsVM", "Command sent - $command") + selectedCommand?.let { + viewModelScope.launch { + val command = commandsController.sendCommand(it) + Log.d("UnitCommandsVM", "Command sent - $command") + } } } }
\ No newline at end of file |