mirror of
https://github.com/danieldemus/openhab-addons
synced 2026-07-29 12:34:21 +02:00
[homeconnectdirect] Dishwasher: Fix selected-program channel shows program keys (#21056)
Instead, it should display the program labels. Signed-off-by: Florian Hotze <dev@florianhotze.com>
This commit is contained in:
+5
-5
@@ -1109,21 +1109,21 @@ public class BaseHomeConnectDirectHandler extends BaseThingHandler implements We
|
|||||||
private void updateSelectedProgramDescription() {
|
private void updateSelectedProgramDescription() {
|
||||||
getLinkedChannel(CHANNEL_SELECTED_PROGRAM)
|
getLinkedChannel(CHANNEL_SELECTED_PROGRAM)
|
||||||
.ifPresent(channel -> getDeviceDescriptionServiceOptional().ifPresent(deviceDescriptionService -> {
|
.ifPresent(channel -> getDeviceDescriptionServiceOptional().ifPresent(deviceDescriptionService -> {
|
||||||
List<CommandOption> programOptions = new ArrayList<>();
|
List<StateOption> stateOptions = new ArrayList<>();
|
||||||
|
|
||||||
// check if selectedProgram value is writable
|
// check if selectedProgram value is writable
|
||||||
if (deviceDescriptionService.getSelectedProgram(true) != null) {
|
if (deviceDescriptionService.getSelectedProgram(true) != null) {
|
||||||
deviceDescriptionService.getPrograms(true).stream()
|
deviceDescriptionService.getPrograms(true).stream()
|
||||||
.map(command -> new CommandOption(command.key(), getProgramLabel(command.key())))
|
.map(command -> new StateOption(command.key(), getProgramLabel(command.key())))
|
||||||
.forEach(programOptions::add);
|
.forEach(stateOptions::add);
|
||||||
} else {
|
} else {
|
||||||
var selectedProgram = keyValueStore.get(SELECTED_PROGRAM_KEY);
|
var selectedProgram = keyValueStore.get(SELECTED_PROGRAM_KEY);
|
||||||
if (selectedProgram != null) {
|
if (selectedProgram != null) {
|
||||||
programOptions.add(new CommandOption(selectedProgram, getProgramLabel(selectedProgram)));
|
stateOptions.add(new StateOption(selectedProgram, getProgramLabel(selectedProgram)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
setCommandOptions(channel.getUID(), programOptions);
|
setStateDescriptions(channel.getUID(), stateOptions);
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user