import java.util.Map;
import java.util.Objects;
import java.util.Optional;
+import java.util.Set;
import java.util.stream.Collectors;
import javax.measure.IncommensurableException;
final ChannelTypeUID targetTemperatureChannelType = addChannelType(
SensiboBindingConstants.CHANNEL_TYPE_TARGET_TEMPERATURE, TARGET_TEMPERATURE_LABEL,
- ITEM_TYPE_NUMBER_TEMPERATURE, sensiboSky.getTargetTemperatures(), "%d %unit%", "TargetTemperature");
+ ITEM_TYPE_NUMBER_TEMPERATURE, sensiboSky.getTargetTemperatures(), "%d %unit%",
+ Set.of("Setpoint", "Temperature"));
newChannels.add(ChannelBuilder
.create(new ChannelUID(getThing().getUID(), SensiboBindingConstants.CHANNEL_TARGET_TEMPERATURE),
ITEM_TYPE_NUMBER_TEMPERATURE)
}
private ChannelTypeUID addChannelType(final String channelTypePrefix, final String label, final String itemType,
- final Collection<?> options, @Nullable final String pattern, @Nullable final String tag) {
+ final Collection<?> options, @Nullable final String pattern, @Nullable final Set<String> tags) {
final ChannelTypeUID channelTypeUID = new ChannelTypeUID(SensiboBindingConstants.BINDING_ID,
channelTypePrefix + getThing().getUID().getId());
final List<StateOption> stateOptions = options.stream()
}
final StateChannelTypeBuilder builder = ChannelTypeBuilder.state(channelTypeUID, label, itemType)
.withStateDescriptionFragment(stateDescription.build());
- if (tag != null) {
- builder.withTag(tag);
+ if (tags != null && !tags.isEmpty()) {
+ builder.withTags(tags);
}
final ChannelType channelType = builder.build();