]> git.basschouten.com Git - openhab-addons.git/commitdiff
Java 17 features (N-S) (#15565)
authorHolger Friedrich <holgerfriedrich@users.noreply.github.com>
Wed, 13 Sep 2023 06:03:31 +0000 (08:03 +0200)
committerGitHub <noreply@github.com>
Wed, 13 Sep 2023 06:03:31 +0000 (08:03 +0200)
- add missing @override
- Java style array syntax
- remove redundant modifiers
- always move String constants to left side in comparisons
- simplify lambda expressions and return statements
- use replace instead of replaceAll w/o regex
- instanceof matching and multiline strings

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
471 files changed:
bundles/org.openhab.binding.nanoleaf/src/main/java/org/openhab/binding/nanoleaf/internal/OpenAPIUtils.java
bundles/org.openhab.binding.nanoleaf/src/main/java/org/openhab/binding/nanoleaf/internal/command/NanoleafCommandExtension.java
bundles/org.openhab.binding.nanoleaf/src/main/java/org/openhab/binding/nanoleaf/internal/discovery/NanoleafMDNSDiscoveryParticipant.java
bundles/org.openhab.binding.nanoleaf/src/main/java/org/openhab/binding/nanoleaf/internal/handler/NanoleafPanelHandler.java
bundles/org.openhab.binding.nanoleaf/src/main/java/org/openhab/binding/nanoleaf/internal/layout/DrawingAlgorithm.java
bundles/org.openhab.binding.nanoleaf/src/main/java/org/openhab/binding/nanoleaf/internal/layout/DrawingSettings.java
bundles/org.openhab.binding.nanoleaf/src/main/java/org/openhab/binding/nanoleaf/internal/layout/NanoleafLayout.java
bundles/org.openhab.binding.nanoleaf/src/main/java/org/openhab/binding/nanoleaf/internal/model/State.java
bundles/org.openhab.binding.nanoleaf/src/test/java/org/openhab/binding/nanoleaf/internal/layout/NanoleafLayoutTest.java
bundles/org.openhab.binding.neato/src/main/java/org/openhab/binding/neato/internal/NeatoHandlerFactory.java
bundles/org.openhab.binding.neato/src/main/java/org/openhab/binding/neato/internal/NeatoRobot.java
bundles/org.openhab.binding.neeo/src/main/java/org/openhab/binding/neeo/internal/discovery/NeeoBrainDiscovery.java
bundles/org.openhab.binding.neeo/src/main/java/org/openhab/binding/neeo/internal/discovery/NeeoDeviceDiscoveryService.java
bundles/org.openhab.binding.neeo/src/main/java/org/openhab/binding/neeo/internal/discovery/NeeoRoomDiscoveryService.java
bundles/org.openhab.binding.neeo/src/main/java/org/openhab/binding/neeo/internal/handler/NeeoDeviceHandler.java
bundles/org.openhab.binding.neeo/src/main/java/org/openhab/binding/neeo/internal/handler/NeeoRoomHandler.java
bundles/org.openhab.binding.neeo/src/main/java/org/openhab/binding/neeo/internal/models/NeeoDevicesDeserializer.java
bundles/org.openhab.binding.neeo/src/main/java/org/openhab/binding/neeo/internal/models/NeeoMacrosDeserializer.java
bundles/org.openhab.binding.neeo/src/main/java/org/openhab/binding/neeo/internal/models/NeeoRecipesDeserializer.java
bundles/org.openhab.binding.neeo/src/main/java/org/openhab/binding/neeo/internal/models/NeeoRoomsDeserializer.java
bundles/org.openhab.binding.neeo/src/main/java/org/openhab/binding/neeo/internal/models/NeeoScenariosDeserializer.java
bundles/org.openhab.binding.neohub/src/main/java/org/openhab/binding/neohub/internal/NeoBaseHandler.java
bundles/org.openhab.binding.neohub/src/main/java/org/openhab/binding/neohub/internal/NeoHubBindingConstants.java
bundles/org.openhab.binding.neohub/src/main/java/org/openhab/binding/neohub/internal/NeoHubDiscoveryParticipant.java
bundles/org.openhab.binding.neohub/src/main/java/org/openhab/binding/neohub/internal/NeoHubDiscoveryService.java
bundles/org.openhab.binding.neohub/src/main/java/org/openhab/binding/neohub/internal/NeoHubHandler.java
bundles/org.openhab.binding.neohub/src/main/java/org/openhab/binding/neohub/internal/NeoHubHandlerFactory.java
bundles/org.openhab.binding.neohub/src/main/java/org/openhab/binding/neohub/internal/NeoPlugHandler.java
bundles/org.openhab.binding.neohub/src/main/java/org/openhab/binding/neohub/internal/NeoStatHandler.java
bundles/org.openhab.binding.neohub/src/test/java/org/openhab/binding/neohub/test/NeoHubJsonTests.java
bundles/org.openhab.binding.nest/src/main/java/org/openhab/binding/nest/internal/sdm/api/PubSubAPI.java
bundles/org.openhab.binding.nest/src/main/java/org/openhab/binding/nest/internal/sdm/discovery/SDMDiscoveryService.java
bundles/org.openhab.binding.nest/src/main/java/org/openhab/binding/nest/internal/sdm/dto/SDMCommands.java
bundles/org.openhab.binding.nest/src/main/java/org/openhab/binding/nest/internal/sdm/dto/SDMTraits.java
bundles/org.openhab.binding.nest/src/main/java/org/openhab/binding/nest/internal/sdm/handler/SDMThermostatHandler.java
bundles/org.openhab.binding.nest/src/test/java/org/openhab/binding/nest/internal/sdm/dto/SDMDataUtil.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/action/RoomActions.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/api/RestManager.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/api/WeatherApi.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/api/data/NetatmoConstants.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/console/NetatmoCommandExtension.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/deserialization/NAObjectMapDeserializer.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/discovery/NetatmoDiscoveryService.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/handler/CommonInterface.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/handler/capability/MeasureCapability.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/handler/channelhelper/BatteryChannelHelper.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/handler/channelhelper/CameraChannelHelper.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/handler/channelhelper/ChannelHelper.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/handler/channelhelper/DoorTagChannelHelper.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/handler/channelhelper/EventChannelHelper.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/handler/channelhelper/LocationChannelHelper.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/handler/channelhelper/PersonChannelHelper.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/handler/channelhelper/RoomChannelHelper.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/handler/channelhelper/SetpointChannelHelper.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/handler/channelhelper/Therm1ChannelHelper.java
bundles/org.openhab.binding.netatmo/src/main/java/org/openhab/binding/netatmo/internal/utils/ChannelTypeUtils.java
bundles/org.openhab.binding.netatmo/src/test/java/org/openhab/binding/netatmo/internal/api/dto/NAObjectTest.java
bundles/org.openhab.binding.network/src/main/java/org/openhab/binding/network/internal/action/NetworkActions.java
bundles/org.openhab.binding.network/src/main/java/org/openhab/binding/network/internal/discovery/NetworkDiscoveryService.java
bundles/org.openhab.binding.network/src/main/java/org/openhab/binding/network/internal/handler/NetworkHandler.java
bundles/org.openhab.binding.network/src/main/java/org/openhab/binding/network/internal/utils/NetworkUtils.java
bundles/org.openhab.binding.network/src/test/java/org/openhab/binding/network/internal/PresenceDetectionTest.java
bundles/org.openhab.binding.network/src/test/java/org/openhab/binding/network/internal/discovery/DiscoveryTest.java
bundles/org.openhab.binding.networkupstools/src/main/java/org/openhab/binding/networkupstools/internal/NUTChannelTypeProvider.java
bundles/org.openhab.binding.networkupstools/src/main/java/org/openhab/binding/networkupstools/internal/NUTHandler.java
bundles/org.openhab.binding.networkupstools/src/main/java/org/openhab/binding/networkupstools/internal/NUTHandlerFactory.java
bundles/org.openhab.binding.nibeheatpump/src/main/java/org/openhab/binding/nibeheatpump/internal/connection/SerialConnector.java
bundles/org.openhab.binding.nibeheatpump/src/main/java/org/openhab/binding/nibeheatpump/internal/connection/SimulatorConnector.java
bundles/org.openhab.binding.nibeheatpump/src/main/java/org/openhab/binding/nibeheatpump/internal/connection/UDPConnector.java
bundles/org.openhab.binding.nibeheatpump/src/main/java/org/openhab/binding/nibeheatpump/internal/handler/NibeHeatPumpHandler.java
bundles/org.openhab.binding.nibeheatpump/src/test/java/org/openhab/binding/nibeheatpump/internal/message/NibeHeatPumpProtocolTest.java
bundles/org.openhab.binding.nibeuplink/src/main/java/org/openhab/binding/nibeuplink/internal/command/UpdateSetting.java
bundles/org.openhab.binding.nikobus/src/main/java/org/openhab/binding/nikobus/internal/discovery/NikobusDiscoveryService.java
bundles/org.openhab.binding.nikobus/src/main/java/org/openhab/binding/nikobus/internal/handler/NikobusDimmerModuleHandler.java
bundles/org.openhab.binding.nikobus/src/main/java/org/openhab/binding/nikobus/internal/handler/NikobusPcLinkHandler.java
bundles/org.openhab.binding.nikobus/src/main/java/org/openhab/binding/nikobus/internal/handler/NikobusPushButtonHandler.java
bundles/org.openhab.binding.nikobus/src/main/java/org/openhab/binding/nikobus/internal/handler/NikobusRollershutterModuleHandler.java
bundles/org.openhab.binding.nikohomecontrol/src/main/java/org/openhab/binding/nikohomecontrol/internal/discovery/NikoHomeControlDiscoveryService.java
bundles/org.openhab.binding.nikohomecontrol/src/main/java/org/openhab/binding/nikohomecontrol/internal/handler/NikoHomeControlActionHandler.java
bundles/org.openhab.binding.nikohomecontrol/src/main/java/org/openhab/binding/nikohomecontrol/internal/handler/NikoHomeControlEnergyMeterHandler.java
bundles/org.openhab.binding.nikohomecontrol/src/main/java/org/openhab/binding/nikohomecontrol/internal/handler/NikoHomeControlThermostatHandler.java
bundles/org.openhab.binding.nikohomecontrol/src/main/java/org/openhab/binding/nikohomecontrol/internal/protocol/NikoHomeControlConstants.java
bundles/org.openhab.binding.nikohomecontrol/src/main/java/org/openhab/binding/nikohomecontrol/internal/protocol/nhc2/NhcMqttConnection2.java
bundles/org.openhab.binding.nobohub/src/main/java/org/openhab/binding/nobohub/internal/NoboHubBridgeHandler.java
bundles/org.openhab.binding.nobohub/src/main/java/org/openhab/binding/nobohub/internal/NoboHubHandlerFactory.java
bundles/org.openhab.binding.nobohub/src/main/java/org/openhab/binding/nobohub/internal/ZoneHandler.java
bundles/org.openhab.binding.nobohub/src/main/java/org/openhab/binding/nobohub/internal/discovery/NoboHubDiscoveryService.java
bundles/org.openhab.binding.nobohub/src/main/java/org/openhab/binding/nobohub/internal/model/Hub.java
bundles/org.openhab.binding.nobohub/src/main/java/org/openhab/binding/nobohub/internal/model/Temperature.java
bundles/org.openhab.binding.nobohub/src/main/java/org/openhab/binding/nobohub/internal/model/Zone.java
bundles/org.openhab.binding.novafinedust/src/main/java/org/openhab/binding/novafinedust/internal/NovaFineDustHandlerFactory.java
bundles/org.openhab.binding.novafinedust/src/main/java/org/openhab/binding/novafinedust/internal/sds011protocol/SDS011Communicator.java
bundles/org.openhab.binding.novafinedust/src/main/java/org/openhab/binding/novafinedust/internal/sds011protocol/messages/SensorFirmwareReply.java
bundles/org.openhab.binding.ntp/src/main/java/org/openhab/binding/ntp/internal/NtpBindingConstants.java
bundles/org.openhab.binding.nuki/src/main/java/org/openhab/binding/nuki/internal/NukiHandlerFactory.java
bundles/org.openhab.binding.nuki/src/main/java/org/openhab/binding/nuki/internal/constants/NukiBindingConstants.java
bundles/org.openhab.binding.nuki/src/main/java/org/openhab/binding/nuki/internal/dataexchange/NukiHttpClient.java
bundles/org.openhab.binding.nuki/src/main/java/org/openhab/binding/nuki/internal/discovery/NukiBridgeDiscoveryService.java
bundles/org.openhab.binding.nuki/src/main/java/org/openhab/binding/nuki/internal/discovery/NukiDeviceDiscoveryService.java
bundles/org.openhab.binding.nuki/src/main/java/org/openhab/binding/nuki/internal/handler/AbstractNukiDeviceHandler.java
bundles/org.openhab.binding.nuki/src/main/java/org/openhab/binding/nuki/internal/handler/NukiBridgeHandler.java
bundles/org.openhab.binding.nuki/src/main/java/org/openhab/binding/nuki/internal/handler/NukiOpenerHandler.java
bundles/org.openhab.binding.nuki/src/main/java/org/openhab/binding/nuki/internal/handler/NukiSmartLockHandler.java
bundles/org.openhab.binding.nuvo/src/main/java/org/openhab/binding/nuvo/internal/NuvoHandlerFactory.java
bundles/org.openhab.binding.nuvo/src/main/java/org/openhab/binding/nuvo/internal/handler/NuvoHandler.java
bundles/org.openhab.binding.nzwateralerts/src/main/java/org/openhab/binding/nzwateralerts/internal/handler/NZWaterAlertsHandlerFactory.java
bundles/org.openhab.binding.oceanic/src/main/java/org/openhab/binding/oceanic/internal/handler/NetworkOceanicThingHandler.java
bundles/org.openhab.binding.oceanic/src/main/java/org/openhab/binding/oceanic/internal/handler/SerialOceanicThingHandler.java
bundles/org.openhab.binding.ojelectronics/src/main/java/org/openhab/binding/ojelectronics/internal/OJCloudHandlerFactory.java
bundles/org.openhab.binding.ojelectronics/src/main/java/org/openhab/binding/ojelectronics/internal/ThermostatHandler.java
bundles/org.openhab.binding.ojelectronics/src/main/java/org/openhab/binding/ojelectronics/internal/services/OJDiscoveryService.java
bundles/org.openhab.binding.ojelectronics/src/main/java/org/openhab/binding/ojelectronics/internal/services/RefreshService.java
bundles/org.openhab.binding.ojelectronics/src/main/java/org/openhab/binding/ojelectronics/internal/services/SignInService.java
bundles/org.openhab.binding.omnikinverter/src/main/java/org/openhab/binding/omnikinverter/internal/OmnikInverterHandlerFactory.java
bundles/org.openhab.binding.omnilink/src/main/java/org/openhab/binding/omnilink/internal/action/OmnilinkActions.java
bundles/org.openhab.binding.omnilink/src/main/java/org/openhab/binding/omnilink/internal/discovery/OmnilinkDiscoveryService.java
bundles/org.openhab.binding.omnilink/src/main/java/org/openhab/binding/omnilink/internal/handler/AbstractAreaHandler.java
bundles/org.openhab.binding.omnilink/src/main/java/org/openhab/binding/omnilink/internal/handler/AudioSourceHandler.java
bundles/org.openhab.binding.omnilink/src/main/java/org/openhab/binding/omnilink/internal/handler/AudioZoneHandler.java
bundles/org.openhab.binding.omnilink/src/main/java/org/openhab/binding/omnilink/internal/handler/ConsoleHandler.java
bundles/org.openhab.binding.omnilink/src/main/java/org/openhab/binding/omnilink/internal/handler/OmnilinkBridgeHandler.java
bundles/org.openhab.binding.omnilink/src/main/java/org/openhab/binding/omnilink/internal/handler/TempSensorHandler.java
bundles/org.openhab.binding.omnilink/src/main/java/org/openhab/binding/omnilink/internal/handler/ThermostatHandler.java
bundles/org.openhab.binding.omnilink/src/main/java/org/openhab/binding/omnilink/internal/handler/UnitHandler.java
bundles/org.openhab.binding.omnilink/src/main/java/org/openhab/binding/omnilink/internal/handler/units/DimmableUnitHandler.java
bundles/org.openhab.binding.omnilink/src/main/java/org/openhab/binding/omnilink/internal/handler/units/FlagHandler.java
bundles/org.openhab.binding.omnilink/src/main/java/org/openhab/binding/omnilink/internal/handler/units/UpbRoomHandler.java
bundles/org.openhab.binding.onewire/src/main/java/org/openhab/binding/onewire/internal/device/BAE0910.java
bundles/org.openhab.binding.onewire/src/main/java/org/openhab/binding/onewire/internal/device/DS2423.java
bundles/org.openhab.binding.onewire/src/main/java/org/openhab/binding/onewire/internal/device/DS2438.java
bundles/org.openhab.binding.onewire/src/main/java/org/openhab/binding/onewire/internal/discovery/OwDiscoveryService.java
bundles/org.openhab.binding.onewire/src/main/java/org/openhab/binding/onewire/internal/handler/EDSSensorThingHandler.java
bundles/org.openhab.binding.onewire/src/main/java/org/openhab/binding/onewire/internal/handler/OwserverBridgeHandler.java
bundles/org.openhab.binding.onewire/src/main/java/org/openhab/binding/onewire/internal/owserver/OwserverConnection.java
bundles/org.openhab.binding.onewire/src/main/java/org/openhab/binding/onewire/internal/owserver/OwserverPacket.java
bundles/org.openhab.binding.onewire/src/test/java/org/openhab/binding/onewire/internal/BasicThingHandlerTest.java
bundles/org.openhab.binding.onewire/src/test/java/org/openhab/binding/onewire/internal/EDSSensorThingHandlerTest.java
bundles/org.openhab.binding.onewire/src/test/java/org/openhab/binding/onewire/internal/MultisensorThingHandlerTest.java
bundles/org.openhab.binding.onewiregpio/src/main/java/org/openhab/binding/onewiregpio/internal/OneWireGPIOHandlerFactory.java
bundles/org.openhab.binding.onkyo/src/main/java/org/openhab/binding/onkyo/internal/automation/modules/OnkyoThingActions.java
bundles/org.openhab.binding.onkyo/src/main/java/org/openhab/binding/onkyo/internal/eiscp/EiscpCommand.java
bundles/org.openhab.binding.onkyo/src/main/java/org/openhab/binding/onkyo/internal/eiscp/EiscpProtocol.java
bundles/org.openhab.binding.onkyo/src/main/java/org/openhab/binding/onkyo/internal/handler/OnkyoHandler.java
bundles/org.openhab.binding.onkyo/src/main/java/org/openhab/binding/onkyo/internal/handler/OnkyoUpnpHandler.java
bundles/org.openhab.binding.opengarage/src/main/java/org/openhab/binding/opengarage/internal/OpenGarageBindingConstants.java
bundles/org.openhab.binding.opensprinkler/src/main/java/org/openhab/binding/opensprinkler/internal/OpenSprinklerState.java
bundles/org.openhab.binding.opensprinkler/src/main/java/org/openhab/binding/opensprinkler/internal/discovery/OpenSprinklerDiscoveryService.java
bundles/org.openhab.binding.opensprinkler/src/main/java/org/openhab/binding/opensprinkler/internal/util/Hash.java
bundles/org.openhab.binding.openthermgateway/src/main/java/org/openhab/binding/openthermgateway/handler/BaseDeviceHandler.java
bundles/org.openhab.binding.openthermgateway/src/main/java/org/openhab/binding/openthermgateway/handler/OpenThermGatewayHandler.java
bundles/org.openhab.binding.openuv/src/main/java/org/openhab/binding/openuv/internal/json/OpenUVResult.java
bundles/org.openhab.binding.openwebnet/src/main/java/org/openhab/binding/openwebnet/internal/actions/OpenWebNetCENActions.java
bundles/org.openhab.binding.openwebnet/src/main/java/org/openhab/binding/openwebnet/internal/discovery/BusGatewayUpnpDiscovery.java
bundles/org.openhab.binding.openwebnet/src/main/java/org/openhab/binding/openwebnet/internal/discovery/OpenWebNetDeviceDiscoveryService.java
bundles/org.openhab.binding.openwebnet/src/main/java/org/openhab/binding/openwebnet/internal/discovery/UsbGatewayDiscoveryService.java
bundles/org.openhab.binding.openwebnet/src/main/java/org/openhab/binding/openwebnet/internal/handler/OpenWebNetAutomationHandler.java
bundles/org.openhab.binding.openwebnet/src/main/java/org/openhab/binding/openwebnet/internal/handler/OpenWebNetBridgeHandler.java
bundles/org.openhab.binding.openwebnet/src/main/java/org/openhab/binding/openwebnet/internal/handler/OpenWebNetLightingHandler.java
bundles/org.openhab.binding.openwebnet/src/main/java/org/openhab/binding/openwebnet/internal/handler/OpenWebNetScenarioHandler.java
bundles/org.openhab.binding.oppo/src/main/java/org/openhab/binding/oppo/internal/OppoHandlerFactory.java
bundles/org.openhab.binding.oppo/src/main/java/org/openhab/binding/oppo/internal/discovery/OppoDiscoveryService.java
bundles/org.openhab.binding.oppo/src/main/java/org/openhab/binding/oppo/internal/handler/OppoHandler.java
bundles/org.openhab.binding.orbitbhyve/src/main/java/org/openhab/binding/orbitbhyve/internal/discovery/OrbitBhyveDiscoveryService.java
bundles/org.openhab.binding.orbitbhyve/src/main/java/org/openhab/binding/orbitbhyve/internal/handler/OrbitBhyveBridgeHandler.java
bundles/org.openhab.binding.orbitbhyve/src/main/java/org/openhab/binding/orbitbhyve/internal/handler/OrbitBhyveSprinklerHandler.java
bundles/org.openhab.binding.orvibo/src/main/java/org/openhab/binding/orvibo/internal/OrviboHandlerFactory.java
bundles/org.openhab.binding.orvibo/src/main/java/org/openhab/binding/orvibo/internal/discovery/SocketDiscoveryService.java
bundles/org.openhab.binding.paradoxalarm/src/main/java/org/openhab/binding/paradoxalarm/internal/communication/CommunicationState.java
bundles/org.openhab.binding.paradoxalarm/src/main/java/org/openhab/binding/paradoxalarm/internal/communication/crypto/EncryptionHandler.java
bundles/org.openhab.binding.paradoxalarm/src/main/java/org/openhab/binding/paradoxalarm/internal/discovery/ParadoxDiscoveryService.java
bundles/org.openhab.binding.paradoxalarm/src/main/java/org/openhab/binding/paradoxalarm/internal/handlers/ParadoxPartitionHandler.java
bundles/org.openhab.binding.paradoxalarm/src/main/java/org/openhab/binding/paradoxalarm/internal/handlers/ParadoxZoneHandler.java
bundles/org.openhab.binding.paradoxalarm/src/main/java/org/openhab/binding/paradoxalarm/internal/util/ParadoxUtil.java
bundles/org.openhab.binding.pentair/src/main/java/org/openhab/binding/pentair/internal/handler/PentairBaseBridgeHandler.java
bundles/org.openhab.binding.pentair/src/main/java/org/openhab/binding/pentair/internal/handler/PentairEasyTouchHandler.java
bundles/org.openhab.binding.pentair/src/main/java/org/openhab/binding/pentair/internal/handler/PentairSerialBridgeHandler.java
bundles/org.openhab.binding.phc/src/main/java/org/openhab/binding/phc/internal/PHCHelper.java
bundles/org.openhab.binding.phc/src/main/java/org/openhab/binding/phc/internal/handler/PHCBridgeHandler.java
bundles/org.openhab.binding.phc/src/main/java/org/openhab/binding/phc/internal/handler/PHCHandler.java
bundles/org.openhab.binding.pilight/src/main/java/org/openhab/binding/pilight/internal/PilightConnector.java
bundles/org.openhab.binding.pilight/src/main/java/org/openhab/binding/pilight/internal/discovery/PilightBridgeDiscoveryService.java
bundles/org.openhab.binding.pilight/src/main/java/org/openhab/binding/pilight/internal/discovery/PilightDeviceDiscoveryService.java
bundles/org.openhab.binding.pilight/src/main/java/org/openhab/binding/pilight/internal/handler/PilightBaseHandler.java
bundles/org.openhab.binding.pilight/src/main/java/org/openhab/binding/pilight/internal/handler/PilightBridgeHandler.java
bundles/org.openhab.binding.pilight/src/main/java/org/openhab/binding/pilight/internal/handler/PilightDimmerHandler.java
bundles/org.openhab.binding.pioneeravr/src/main/java/org/openhab/binding/pioneeravr/internal/protocol/RequestResponseFactory.java
bundles/org.openhab.binding.pioneeravr/src/main/java/org/openhab/binding/pioneeravr/internal/protocol/SimpleCommand.java
bundles/org.openhab.binding.pioneeravr/src/main/java/org/openhab/binding/pioneeravr/internal/protocol/StreamAvrConnection.java
bundles/org.openhab.binding.pixometer/src/main/java/org/openhab/binding/pixometer/handler/AccountHandler.java
bundles/org.openhab.binding.pixometer/src/main/java/org/openhab/binding/pixometer/internal/PixometerBindingConstants.java
bundles/org.openhab.binding.pixometer/src/main/java/org/openhab/binding/pixometer/internal/serializer/CustomReadingInstanceDeserializer.java
bundles/org.openhab.binding.pjlinkdevice/src/main/java/org/openhab/binding/pjlinkdevice/internal/PJLinkDeviceHandler.java
bundles/org.openhab.binding.pjlinkdevice/src/main/java/org/openhab/binding/pjlinkdevice/internal/PJLinkDeviceHandlerFactory.java
bundles/org.openhab.binding.pjlinkdevice/src/main/java/org/openhab/binding/pjlinkdevice/internal/device/PJLinkDevice.java
bundles/org.openhab.binding.pjlinkdevice/src/main/java/org/openhab/binding/pjlinkdevice/internal/device/command/CachedCommand.java
bundles/org.openhab.binding.pjlinkdevice/src/main/java/org/openhab/binding/pjlinkdevice/internal/device/command/lampstatus/LampStatesResponse.java
bundles/org.openhab.binding.pjlinkdevice/src/main/java/org/openhab/binding/pjlinkdevice/internal/discovery/AbstractDiscoveryParticipant.java
bundles/org.openhab.binding.pjlinkdevice/src/main/java/org/openhab/binding/pjlinkdevice/internal/discovery/DiscoveryParticipantClass1.java
bundles/org.openhab.binding.playstation/src/main/java/org/openhab/binding/playstation/internal/PS3Handler.java
bundles/org.openhab.binding.playstation/src/main/java/org/openhab/binding/playstation/internal/PS4Crypto.java
bundles/org.openhab.binding.playstation/src/main/java/org/openhab/binding/playstation/internal/PS4Handler.java
bundles/org.openhab.binding.playstation/src/main/java/org/openhab/binding/playstation/internal/discovery/PlayStationDiscovery.java
bundles/org.openhab.binding.plclogo/src/main/java/org/openhab/binding/plclogo/internal/PLCLogoClient.java
bundles/org.openhab.binding.plclogo/src/main/java/org/openhab/binding/plclogo/internal/PLCLogoHandlerFactory.java
bundles/org.openhab.binding.plclogo/src/main/java/org/openhab/binding/plclogo/internal/discovery/PLCDiscoveryService.java
bundles/org.openhab.binding.plclogo/src/main/java/org/openhab/binding/plclogo/internal/handler/PLCAnalogHandler.java
bundles/org.openhab.binding.plclogo/src/main/java/org/openhab/binding/plclogo/internal/handler/PLCBridgeHandler.java
bundles/org.openhab.binding.plclogo/src/main/java/org/openhab/binding/plclogo/internal/handler/PLCCommonHandler.java
bundles/org.openhab.binding.plclogo/src/main/java/org/openhab/binding/plclogo/internal/handler/PLCDateTimeHandler.java
bundles/org.openhab.binding.plclogo/src/main/java/org/openhab/binding/plclogo/internal/handler/PLCDigitalHandler.java
bundles/org.openhab.binding.plclogo/src/main/java/org/openhab/binding/plclogo/internal/handler/PLCMemoryHandler.java
bundles/org.openhab.binding.plclogo/src/main/java/org/openhab/binding/plclogo/internal/handler/PLCPulseHandler.java
bundles/org.openhab.binding.plex/src/main/java/org/openhab/binding/plex/internal/handler/PlexApiConnector.java
bundles/org.openhab.binding.plex/src/main/java/org/openhab/binding/plex/internal/handler/PlexServerHandler.java
bundles/org.openhab.binding.plugwise/src/main/java/org/openhab/binding/plugwise/internal/PlugwiseMessageProcessor.java
bundles/org.openhab.binding.plugwise/src/main/java/org/openhab/binding/plugwise/internal/PlugwiseThingDiscoveryService.java
bundles/org.openhab.binding.plugwise/src/main/java/org/openhab/binding/plugwise/internal/handler/PlugwiseRelayDeviceHandler.java
bundles/org.openhab.binding.plugwise/src/main/java/org/openhab/binding/plugwise/internal/protocol/BroadcastGroupSwitchResponseMessage.java
bundles/org.openhab.binding.plugwise/src/main/java/org/openhab/binding/plugwise/internal/protocol/InformationResponseMessage.java
bundles/org.openhab.binding.plugwiseha/src/main/java/org/openhab/binding/plugwiseha/internal/api/model/PlugwiseHAController.java
bundles/org.openhab.binding.plugwiseha/src/main/java/org/openhab/binding/plugwiseha/internal/api/model/converter/DateTimeConverter.java
bundles/org.openhab.binding.plugwiseha/src/main/java/org/openhab/binding/plugwiseha/internal/api/model/dto/ActuatorFunctionality.java
bundles/org.openhab.binding.plugwiseha/src/main/java/org/openhab/binding/plugwiseha/internal/api/model/dto/Appliance.java
bundles/org.openhab.binding.plugwiseha/src/main/java/org/openhab/binding/plugwiseha/internal/api/model/dto/Log.java
bundles/org.openhab.binding.plugwiseha/src/main/java/org/openhab/binding/plugwiseha/internal/discovery/PlugwiseHADiscoveryService.java
bundles/org.openhab.binding.plugwiseha/src/main/java/org/openhab/binding/plugwiseha/internal/handler/PlugwiseHAApplianceHandler.java
bundles/org.openhab.binding.plugwiseha/src/main/java/org/openhab/binding/plugwiseha/internal/handler/PlugwiseHABridgeHandler.java
bundles/org.openhab.binding.plugwiseha/src/main/java/org/openhab/binding/plugwiseha/internal/handler/PlugwiseHAZoneHandler.java
bundles/org.openhab.binding.powermax/src/main/java/org/openhab/binding/powermax/internal/console/PowermaxCommandExtension.java
bundles/org.openhab.binding.powermax/src/main/java/org/openhab/binding/powermax/internal/discovery/PowermaxDiscoveryService.java
bundles/org.openhab.binding.powermax/src/main/java/org/openhab/binding/powermax/internal/handler/PowermaxBridgeHandler.java
bundles/org.openhab.binding.powermax/src/main/java/org/openhab/binding/powermax/internal/message/PowermaxMessageConstants.java
bundles/org.openhab.binding.powermax/src/main/java/org/openhab/binding/powermax/internal/message/PowermaxStatusMessage.java
bundles/org.openhab.binding.powermax/src/main/java/org/openhab/binding/powermax/internal/state/PowermaxZoneState.java
bundles/org.openhab.binding.prowl/src/main/java/org/openhab/binding/prowl/internal/ProwlHandler.java
bundles/org.openhab.binding.prowl/src/main/java/org/openhab/binding/prowl/internal/action/ProwlActions.java
bundles/org.openhab.binding.publictransportswitzerland/src/main/java/org/openhab/binding/publictransportswitzerland/internal/PublicTransportSwitzerlandHandlerFactory.java
bundles/org.openhab.binding.publictransportswitzerland/src/main/java/org/openhab/binding/publictransportswitzerland/internal/stationboard/PublicTransportSwitzerlandStationboardHandler.java
bundles/org.openhab.binding.pulseaudio/src/main/java/org/openhab/binding/pulseaudio/internal/PulseaudioClient.java
bundles/org.openhab.binding.pulseaudio/src/main/java/org/openhab/binding/pulseaudio/internal/discovery/PulseaudioDeviceDiscoveryService.java
bundles/org.openhab.binding.pulseaudio/src/main/java/org/openhab/binding/pulseaudio/internal/handler/PulseaudioBridgeHandler.java
bundles/org.openhab.binding.pulseaudio/src/main/java/org/openhab/binding/pulseaudio/internal/handler/PulseaudioHandler.java
bundles/org.openhab.binding.pushbullet/src/main/java/org/openhab/binding/pushbullet/internal/PushbulletBindingConstants.java
bundles/org.openhab.binding.pushbullet/src/main/java/org/openhab/binding/pushbullet/internal/handler/PushbulletHandler.java
bundles/org.openhab.binding.qbus/src/main/java/org/openhab/binding/qbus/internal/QbusBindingConstants.java
bundles/org.openhab.binding.qbus/src/main/java/org/openhab/binding/qbus/internal/QbusBridgeHandler.java
bundles/org.openhab.binding.qbus/src/main/java/org/openhab/binding/qbus/internal/QbusHandlerFactory.java
bundles/org.openhab.binding.qbus/src/main/java/org/openhab/binding/qbus/internal/handler/QbusDimmerHandler.java
bundles/org.openhab.binding.qbus/src/main/java/org/openhab/binding/qbus/internal/handler/QbusGlobalHandler.java
bundles/org.openhab.binding.qbus/src/main/java/org/openhab/binding/qbus/internal/handler/QbusRolHandler.java
bundles/org.openhab.binding.qbus/src/main/java/org/openhab/binding/qbus/internal/handler/QbusThermostatHandler.java
bundles/org.openhab.binding.qbus/src/main/java/org/openhab/binding/qbus/internal/protocol/QbusCommunication.java
bundles/org.openhab.binding.qolsysiq/src/main/java/org/openhab/binding/qolsysiq/internal/client/dto/action/ArmingActionType.java
bundles/org.openhab.binding.qolsysiq/src/main/java/org/openhab/binding/qolsysiq/internal/client/dto/event/EventType.java
bundles/org.openhab.binding.qolsysiq/src/main/java/org/openhab/binding/qolsysiq/internal/client/dto/event/InfoEventType.java
bundles/org.openhab.binding.qolsysiq/src/main/java/org/openhab/binding/qolsysiq/internal/client/dto/event/ZoneEventType.java
bundles/org.openhab.binding.qolsysiq/src/main/java/org/openhab/binding/qolsysiq/internal/client/dto/model/AlarmType.java
bundles/org.openhab.binding.qolsysiq/src/main/java/org/openhab/binding/qolsysiq/internal/client/dto/model/PartitionStatus.java
bundles/org.openhab.binding.qolsysiq/src/main/java/org/openhab/binding/qolsysiq/internal/client/dto/model/ZoneStatus.java
bundles/org.openhab.binding.qolsysiq/src/main/java/org/openhab/binding/qolsysiq/internal/client/dto/model/ZoneType.java
bundles/org.openhab.binding.qolsysiq/src/main/java/org/openhab/binding/qolsysiq/internal/discovery/QolsysIQChildDiscoveryService.java
bundles/org.openhab.binding.qolsysiq/src/main/java/org/openhab/binding/qolsysiq/internal/handler/QolsysIQPanelHandler.java
bundles/org.openhab.binding.qolsysiq/src/main/java/org/openhab/binding/qolsysiq/internal/handler/QolsysIQPartitionHandler.java
bundles/org.openhab.binding.qolsysiq/src/main/java/org/openhab/binding/qolsysiq/internal/handler/QolsysIQZoneHandler.java
bundles/org.openhab.binding.radiothermostat/src/main/java/org/openhab/binding/radiothermostat/internal/RadioThermostatHandlerFactory.java
bundles/org.openhab.binding.radiothermostat/src/main/java/org/openhab/binding/radiothermostat/internal/handler/RadioThermostatHandler.java
bundles/org.openhab.binding.remoteopenhab/src/main/java/org/openhab/binding/remoteopenhab/internal/RemoteopenhabBindingConstants.java
bundles/org.openhab.binding.remoteopenhab/src/main/java/org/openhab/binding/remoteopenhab/internal/discovery/RemoteopenhabDiscoveryService.java
bundles/org.openhab.binding.remoteopenhab/src/main/java/org/openhab/binding/remoteopenhab/internal/handler/RemoteopenhabBridgeHandler.java
bundles/org.openhab.binding.remoteopenhab/src/main/java/org/openhab/binding/remoteopenhab/internal/rest/RemoteopenhabRestClient.java
bundles/org.openhab.binding.renault/src/main/java/org/openhab/binding/renault/internal/api/Car.java
bundles/org.openhab.binding.renault/src/main/java/org/openhab/binding/renault/internal/api/MyRenaultHttpSession.java
bundles/org.openhab.binding.renault/src/main/java/org/openhab/binding/renault/internal/handler/RenaultHandler.java
bundles/org.openhab.binding.resol/src/main/java/org/openhab/binding/resol/handler/ResolBridgeHandler.java
bundles/org.openhab.binding.resol/src/main/java/org/openhab/binding/resol/handler/ResolEmuEMThingHandler.java
bundles/org.openhab.binding.resol/src/main/java/org/openhab/binding/resol/handler/ResolThingHandler.java
bundles/org.openhab.binding.resol/src/main/java/org/openhab/binding/resol/internal/discovery/ResolDeviceDiscoveryService.java
bundles/org.openhab.binding.revogi/src/main/java/org/openhab/binding/revogi/internal/RevogiSmartStripControlHandlerFactory.java
bundles/org.openhab.binding.revogi/src/main/java/org/openhab/binding/revogi/internal/RevogiSmartStripDiscoveryService.java
bundles/org.openhab.binding.revogi/src/test/java/org/openhab/binding/revogi/internal/api/RevogiDiscoveryServiceTest.java
bundles/org.openhab.binding.revogi/src/test/java/org/openhab/binding/revogi/internal/api/StatusServiceTest.java
bundles/org.openhab.binding.revogi/src/test/java/org/openhab/binding/revogi/internal/api/SwitchServiceTest.java
bundles/org.openhab.binding.rfxcom/src/main/java/org/openhab/binding/rfxcom/internal/discovery/RFXComBridgeDiscovery.java
bundles/org.openhab.binding.rfxcom/src/main/java/org/openhab/binding/rfxcom/internal/discovery/RFXComDeviceDiscoveryService.java
bundles/org.openhab.binding.rfxcom/src/main/java/org/openhab/binding/rfxcom/internal/handler/RFXComBridgeHandler.java
bundles/org.openhab.binding.rfxcom/src/main/java/org/openhab/binding/rfxcom/internal/messages/RFXComChimeMessage.java
bundles/org.openhab.binding.rfxcom/src/main/java/org/openhab/binding/rfxcom/internal/messages/RFXComFanMessage.java
bundles/org.openhab.binding.rfxcom/src/main/java/org/openhab/binding/rfxcom/internal/messages/RFXComLighting2Message.java
bundles/org.openhab.binding.rfxcom/src/main/java/org/openhab/binding/rfxcom/internal/messages/RFXComLighting4Message.java
bundles/org.openhab.binding.rfxcom/src/main/java/org/openhab/binding/rfxcom/internal/messages/RFXComLighting5Message.java
bundles/org.openhab.binding.rfxcom/src/main/java/org/openhab/binding/rfxcom/internal/messages/RFXComThermostat3Message.java
bundles/org.openhab.binding.rfxcom/src/test/java/org/openhab/binding/rfxcom/internal/messages/RFXComRFXSensorMessageTest.java
bundles/org.openhab.binding.rme/src/main/java/org/openhab/binding/rme/internal/RMEHandlerFactory.java
bundles/org.openhab.binding.rme/src/main/java/org/openhab/binding/rme/internal/handler/RMEThingHandler.java
bundles/org.openhab.binding.robonect/src/main/java/org/openhab/binding/robonect/internal/handler/RobonectHandler.java
bundles/org.openhab.binding.robonect/src/test/java/org/openhab/binding/robonect/internal/model/ModelParserTest.java
bundles/org.openhab.binding.roku/src/main/java/org/openhab/binding/roku/internal/RokuHandlerFactory.java
bundles/org.openhab.binding.roku/src/main/java/org/openhab/binding/roku/internal/discovery/RokuDiscoveryService.java
bundles/org.openhab.binding.rotel/src/main/java/org/openhab/binding/rotel/internal/handler/RotelHandler.java
bundles/org.openhab.binding.russound/src/main/java/org/openhab/binding/russound/internal/discovery/RioSystemDeviceDiscoveryService.java
bundles/org.openhab.binding.russound/src/main/java/org/openhab/binding/russound/internal/discovery/RioSystemDiscovery.java
bundles/org.openhab.binding.russound/src/main/java/org/openhab/binding/russound/internal/net/SocketChannelSession.java
bundles/org.openhab.binding.russound/src/main/java/org/openhab/binding/russound/internal/net/WaitingSessionListener.java
bundles/org.openhab.binding.russound/src/main/java/org/openhab/binding/russound/internal/rio/AbstractBridgeHandler.java
bundles/org.openhab.binding.russound/src/main/java/org/openhab/binding/russound/internal/rio/AbstractThingHandler.java
bundles/org.openhab.binding.russound/src/main/java/org/openhab/binding/russound/internal/rio/controller/RioControllerHandler.java
bundles/org.openhab.binding.russound/src/main/java/org/openhab/binding/russound/internal/rio/models/AtomicStringTypeAdapter.java
bundles/org.openhab.binding.russound/src/main/java/org/openhab/binding/russound/internal/rio/source/RioSourceProtocol.java
bundles/org.openhab.binding.russound/src/main/java/org/openhab/binding/russound/internal/rio/system/RioSystemHandler.java
bundles/org.openhab.binding.russound/src/main/java/org/openhab/binding/russound/internal/rio/zone/RioZoneHandler.java
bundles/org.openhab.binding.sagercaster/src/main/java/org/openhab/binding/sagercaster/internal/SagerCasterHandlerFactory.java
bundles/org.openhab.binding.sagercaster/src/main/java/org/openhab/binding/sagercaster/internal/caster/SagerWeatherCaster.java
bundles/org.openhab.binding.sagercaster/src/main/java/org/openhab/binding/sagercaster/internal/handler/SagerCasterHandler.java
bundles/org.openhab.binding.samsungtv/src/main/java/org/openhab/binding/samsungtv/internal/SamsungTvHandlerFactory.java
bundles/org.openhab.binding.samsungtv/src/main/java/org/openhab/binding/samsungtv/internal/WakeOnLanUtility.java
bundles/org.openhab.binding.samsungtv/src/main/java/org/openhab/binding/samsungtv/internal/discovery/SamsungTvDiscoveryParticipant.java
bundles/org.openhab.binding.samsungtv/src/main/java/org/openhab/binding/samsungtv/internal/service/DataConverters.java
bundles/org.openhab.binding.samsungtv/src/main/java/org/openhab/binding/samsungtv/internal/service/MediaRendererService.java
bundles/org.openhab.binding.samsungtv/src/main/java/org/openhab/binding/samsungtv/internal/service/RemoteControllerService.java
bundles/org.openhab.binding.satel/src/main/java/org/openhab/binding/satel/internal/action/SatelEventLogActions.java
bundles/org.openhab.binding.satel/src/main/java/org/openhab/binding/satel/internal/command/ReadEventCommand.java
bundles/org.openhab.binding.satel/src/main/java/org/openhab/binding/satel/internal/command/SatelCommandBase.java
bundles/org.openhab.binding.satel/src/main/java/org/openhab/binding/satel/internal/handler/Atd100Handler.java
bundles/org.openhab.binding.satel/src/main/java/org/openhab/binding/satel/internal/handler/Ethm1BridgeHandler.java
bundles/org.openhab.binding.satel/src/main/java/org/openhab/binding/satel/internal/handler/IntRSBridgeHandler.java
bundles/org.openhab.binding.satel/src/main/java/org/openhab/binding/satel/internal/handler/SatelEventLogHandler.java
bundles/org.openhab.binding.satel/src/main/java/org/openhab/binding/satel/internal/handler/SatelOutputHandler.java
bundles/org.openhab.binding.satel/src/main/java/org/openhab/binding/satel/internal/handler/SatelPartitionHandler.java
bundles/org.openhab.binding.satel/src/main/java/org/openhab/binding/satel/internal/handler/SatelShutterHandler.java
bundles/org.openhab.binding.satel/src/main/java/org/openhab/binding/satel/internal/handler/SatelSystemHandler.java
bundles/org.openhab.binding.satel/src/main/java/org/openhab/binding/satel/internal/handler/SatelThingHandler.java
bundles/org.openhab.binding.satel/src/main/java/org/openhab/binding/satel/internal/handler/SatelZoneHandler.java
bundles/org.openhab.binding.satel/src/main/java/org/openhab/binding/satel/internal/handler/WirelessChannelsHandler.java
bundles/org.openhab.binding.satel/src/main/java/org/openhab/binding/satel/internal/protocol/EncryptionHelper.java
bundles/org.openhab.binding.satel/src/main/java/org/openhab/binding/satel/internal/protocol/SatelMessage.java
bundles/org.openhab.binding.semsportal/src/main/java/org/openhab/binding/semsportal/internal/StationHandler.java
bundles/org.openhab.binding.senechome/src/main/java/org/openhab/binding/senechome/internal/SenecHomeHandlerFactory.java
bundles/org.openhab.binding.seneye/src/main/java/org/openhab/binding/seneye/internal/SeneyeBindingConstants.java
bundles/org.openhab.binding.seneye/src/main/java/org/openhab/binding/seneye/internal/SeneyeHandlerFactory.java
bundles/org.openhab.binding.seneye/src/main/java/org/openhab/binding/seneye/internal/SeneyeStatus.java
bundles/org.openhab.binding.seneye/src/main/java/org/openhab/binding/seneye/internal/handler/SeneyeHandler.java
bundles/org.openhab.binding.sensebox/src/main/java/org/openhab/binding/sensebox/internal/SenseBoxHandlerFactory.java
bundles/org.openhab.binding.sensebox/src/main/java/org/openhab/binding/sensebox/internal/dto/SenseBoxSensor.java
bundles/org.openhab.binding.sensebox/src/main/java/org/openhab/binding/sensebox/internal/handler/SenseBoxHandler.java
bundles/org.openhab.binding.sensibo/src/main/java/org/openhab/binding/sensibo/internal/discovery/SensiboDiscoveryService.java
bundles/org.openhab.binding.sensibo/src/main/java/org/openhab/binding/sensibo/internal/handler/SensiboSkyHandler.java
bundles/org.openhab.binding.sensorcommunity/src/main/java/org/openhab/binding/sensorcommunity/internal/utils/NumberUtils.java
bundles/org.openhab.binding.sensorcommunity/src/test/java/org/openhab/binding/sensorcommunity/internal/DTOTest.java
bundles/org.openhab.binding.sensorcommunity/src/test/java/org/openhab/binding/sensorcommunity/internal/util/FileReader.java
bundles/org.openhab.binding.serialbutton/src/main/java/org/openhab/binding/serialbutton/internal/SerialButtonHandlerFactory.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/ShellyHandlerFactory.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/api1/Shelly1CoIoTProtocol.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/api1/Shelly1CoIoTVersion2.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/api1/Shelly1CoapHandler.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/api2/Shelly2ApiClient.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/api2/Shelly2ApiRpc.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/api2/Shelly2RpcSocket.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/api2/ShellyBluApi.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/config/ShellyBindingConfiguration.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/handler/ShellyBaseHandler.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/handler/ShellyBluSensorHandler.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/handler/ShellyColorUtils.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/handler/ShellyComponents.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/handler/ShellyLightHandler.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/handler/ShellyRelayHandler.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/manager/ShellyManagerCache.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/manager/ShellyManagerOverviewPage.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/manager/ShellyManagerPage.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/provider/ShellyChannelDefinitions.java
bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/util/ShellyUtils.java
bundles/org.openhab.binding.siemensrds/src/main/java/org/openhab/binding/siemensrds/internal/RdsBindingConstants.java
bundles/org.openhab.binding.siemensrds/src/main/java/org/openhab/binding/siemensrds/internal/RdsDiscoveryService.java
bundles/org.openhab.binding.siemensrds/src/main/java/org/openhab/binding/siemensrds/internal/RdsHandler.java
bundles/org.openhab.binding.siemensrds/src/main/java/org/openhab/binding/siemensrds/internal/RdsHandlerFactory.java
bundles/org.openhab.binding.siemensrds/src/main/java/org/openhab/binding/siemensrds/points/NestedNumberPoint.java
bundles/org.openhab.binding.siemensrds/src/main/java/org/openhab/binding/siemensrds/points/NumberPoint.java
bundles/org.openhab.binding.siemensrds/src/main/java/org/openhab/binding/siemensrds/points/PointDeserializer.java
bundles/org.openhab.binding.siemensrds/src/main/java/org/openhab/binding/siemensrds/points/StringPoint.java
bundles/org.openhab.binding.silvercrestwifisocket/src/main/java/org/openhab/binding/silvercrestwifisocket/internal/SilvercrestWifiSocketBindingConstants.java
bundles/org.openhab.binding.silvercrestwifisocket/src/main/java/org/openhab/binding/silvercrestwifisocket/internal/SilvercrestWifiSocketHandlerFactory.java
bundles/org.openhab.binding.silvercrestwifisocket/src/main/java/org/openhab/binding/silvercrestwifisocket/internal/handler/SilvercrestWifiSocketHandler.java
bundles/org.openhab.binding.sinope/src/main/java/org/openhab/binding/sinope/handler/SinopeGatewayHandler.java
bundles/org.openhab.binding.sinope/src/main/java/org/openhab/binding/sinope/handler/SinopeThermostatHandler.java
bundles/org.openhab.binding.sinope/src/main/java/org/openhab/binding/sinope/internal/core/base/SinopeDataRequest.java
bundles/org.openhab.binding.sinope/src/main/java/org/openhab/binding/sinope/internal/util/CRC8.java
bundles/org.openhab.binding.sleepiq/src/main/java/org/openhab/binding/sleepiq/internal/SleepIQHandlerFactory.java
bundles/org.openhab.binding.sleepiq/src/main/java/org/openhab/binding/sleepiq/internal/handler/SleepIQCloudHandler.java
bundles/org.openhab.binding.sleepiq/src/main/java/org/openhab/binding/sleepiq/internal/handler/SleepIQDualBedHandler.java
bundles/org.openhab.binding.smaenergymeter/src/main/java/org/openhab/binding/smaenergymeter/internal/SMAEnergyMeterBindingConstants.java
bundles/org.openhab.binding.smaenergymeter/src/main/java/org/openhab/binding/smaenergymeter/internal/handler/EnergyMeter.java
bundles/org.openhab.binding.smartmeter/src/3rdparty/java/org/openmuc/jrxtx/SerialPort.java
bundles/org.openhab.binding.smartmeter/src/main/java/org/openhab/binding/smartmeter/SmartMeterBindingConstants.java
bundles/org.openhab.binding.smartmeter/src/main/java/org/openhab/binding/smartmeter/internal/SmartMeterHandler.java
bundles/org.openhab.binding.smartmeter/src/main/java/org/openhab/binding/smartmeter/internal/SmartMeterHandlerFactory.java
bundles/org.openhab.binding.smartmeter/src/main/java/org/openhab/binding/smartmeter/internal/conformity/negate/NegateBitParser.java
bundles/org.openhab.binding.smartmeter/src/main/java/org/openhab/binding/smartmeter/internal/sml/SmlValueExtractor.java
bundles/org.openhab.binding.smartmeter/src/test/java/org/openhab/binding/smartmeter/TestNegateBit.java
bundles/org.openhab.binding.smartthings/src/main/java/org/openhab/binding/smartthings/internal/SmartthingsHandlerFactory.java
bundles/org.openhab.binding.smartthings/src/main/java/org/openhab/binding/smartthings/internal/converter/SmartthingsColor100Converter.java
bundles/org.openhab.binding.smartthings/src/main/java/org/openhab/binding/smartthings/internal/converter/SmartthingsColorConverter.java
bundles/org.openhab.binding.smartthings/src/main/java/org/openhab/binding/smartthings/internal/converter/SmartthingsConverter.java
bundles/org.openhab.binding.smartthings/src/main/java/org/openhab/binding/smartthings/internal/converter/SmartthingsDefaultConverter.java
bundles/org.openhab.binding.smartthings/src/main/java/org/openhab/binding/smartthings/internal/converter/SmartthingsHue100Converter.java
bundles/org.openhab.binding.smartthings/src/main/java/org/openhab/binding/smartthings/internal/converter/SmartthingsOpenCloseControlConverter.java
bundles/org.openhab.binding.smartthings/src/main/java/org/openhab/binding/smartthings/internal/handler/SmartthingsThingHandler.java
bundles/org.openhab.binding.smhi/src/main/java/org/openhab/binding/smhi/internal/SmhiHandler.java
bundles/org.openhab.binding.smhi/src/main/java/org/openhab/binding/smhi/internal/SmhiHandlerFactory.java
bundles/org.openhab.binding.smsmodem/src/3rdparty/java/org/smslib/MessageReader.java
bundles/org.openhab.binding.smsmodem/src/3rdparty/java/org/smslib/message/AbstractMessage.java
bundles/org.openhab.binding.smsmodem/src/main/java/org/openhab/binding/smsmodem/internal/actions/SMSModemActions.java
bundles/org.openhab.binding.smsmodem/src/main/java/org/openhab/binding/smsmodem/internal/handler/SMSConversationHandler.java
bundles/org.openhab.binding.sncf/src/main/java/org/openhab/binding/sncf/internal/discovery/SncfDiscoveryService.java
bundles/org.openhab.binding.snmp/src/main/java/org/openhab/binding/snmp/internal/SnmpTargetHandler.java
bundles/org.openhab.binding.snmp/src/test/java/org/openhab/binding/snmp/internal/AbstractSnmpTargetHandlerTest.java
bundles/org.openhab.binding.snmp/src/test/java/org/openhab/binding/snmp/internal/StringChannelTest.java
bundles/org.openhab.binding.snmp/src/test/java/org/openhab/binding/snmp/internal/SwitchChannelTest.java
bundles/org.openhab.binding.solaredge/src/main/java/org/openhab/binding/solaredge/internal/SolarEdgeBindingConstants.java
bundles/org.openhab.binding.solaredge/src/main/java/org/openhab/binding/solaredge/internal/handler/SolarEdgeGenericHandler.java
bundles/org.openhab.binding.solaredge/src/main/java/org/openhab/binding/solaredge/internal/model/AggregateDataResponseTransformerPublicApi.java
bundles/org.openhab.binding.solarlog/src/main/java/org/openhab/binding/solarlog/internal/SolarLogHandlerFactory.java
bundles/org.openhab.binding.solarwatt/src/main/java/org/openhab/binding/solarwatt/internal/discovery/SolarwattDevicesDiscoveryService.java
bundles/org.openhab.binding.solarwatt/src/main/java/org/openhab/binding/solarwatt/internal/domain/SolarwattTag.java
bundles/org.openhab.binding.solarwatt/src/main/java/org/openhab/binding/solarwatt/internal/handler/EnergyManagerHandler.java
bundles/org.openhab.binding.solarwatt/src/main/java/org/openhab/binding/solarwatt/internal/handler/SimpleDeviceHandler.java
bundles/org.openhab.binding.somfymylink/src/main/java/org/openhab/binding/somfymylink/internal/discovery/SomfyMyLinkDeviceDiscoveryService.java
bundles/org.openhab.binding.somfymylink/src/main/java/org/openhab/binding/somfymylink/internal/handler/SomfyMyLinkBridgeHandler.java
bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/console/SomfyTahomaCommandExtension.java
bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/discovery/SomfyTahomaItemDiscoveryService.java
bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/handler/SomfyTahomaBaseThingHandler.java
bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/handler/SomfyTahomaBridgeHandler.java
bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/handler/SomfyTahomaExteriorHeatingSystemHandler.java
bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/handler/SomfyTahomaWaterHeatingSystemHandler.java
bundles/org.openhab.binding.somneo/src/main/java/org/openhab/binding/somneo/internal/SomneoHandler.java
bundles/org.openhab.binding.somneo/src/main/java/org/openhab/binding/somneo/internal/SomneoHttpConnector.java
bundles/org.openhab.binding.sonos/src/main/java/org/openhab/binding/sonos/internal/handler/ZonePlayerHandler.java
bundles/org.openhab.binding.sonos/src/main/java/org/openhab/binding/sonos/internal/util/StringUtils.java
bundles/org.openhab.binding.sonyaudio/src/main/java/org/openhab/binding/sonyaudio/internal/handler/SonyAudioHandler.java
bundles/org.openhab.binding.sonyaudio/src/main/java/org/openhab/binding/sonyaudio/internal/handler/SrsZr5Handler.java
bundles/org.openhab.binding.sonyaudio/src/main/java/org/openhab/binding/sonyaudio/internal/handler/StrDn1080Handler.java
bundles/org.openhab.binding.sonyaudio/src/main/java/org/openhab/binding/sonyaudio/internal/protocol/SonyAudioConnection.java
bundles/org.openhab.binding.sonyprojector/src/main/java/org/openhab/binding/sonyprojector/internal/handler/SonyProjectorHandler.java
bundles/org.openhab.binding.souliss/src/main/java/org/openhab/binding/souliss/internal/discovery/SoulissGatewayDiscovery.java
bundles/org.openhab.binding.souliss/src/main/java/org/openhab/binding/souliss/internal/handler/SoulissGatewayHandler.java
bundles/org.openhab.binding.souliss/src/main/java/org/openhab/binding/souliss/internal/handler/SoulissT13Handler.java
bundles/org.openhab.binding.souliss/src/main/java/org/openhab/binding/souliss/internal/handler/SoulissT16Handler.java
bundles/org.openhab.binding.souliss/src/main/java/org/openhab/binding/souliss/internal/handler/SoulissT19Handler.java
bundles/org.openhab.binding.souliss/src/main/java/org/openhab/binding/souliss/internal/handler/SoulissT22Handler.java
bundles/org.openhab.binding.souliss/src/main/java/org/openhab/binding/souliss/internal/handler/SoulissT31Handler.java
bundles/org.openhab.binding.souliss/src/main/java/org/openhab/binding/souliss/internal/handler/SoulissT41Handler.java
bundles/org.openhab.binding.souliss/src/main/java/org/openhab/binding/souliss/internal/handler/SoulissT6nHandler.java
bundles/org.openhab.binding.souliss/src/main/java/org/openhab/binding/souliss/internal/protocol/SendDispatcherRunnable.java
bundles/org.openhab.binding.speedtest/src/main/java/org/openhab/binding/speedtest/internal/SpeedtestHandler.java
bundles/org.openhab.binding.spotify/src/main/java/org/openhab/binding/spotify/internal/SpotifyHandlerFactory.java
bundles/org.openhab.binding.spotify/src/main/java/org/openhab/binding/spotify/internal/api/SpotifyConnector.java
bundles/org.openhab.binding.spotify/src/main/java/org/openhab/binding/spotify/internal/discovery/SpotifyDeviceDiscoveryService.java
bundles/org.openhab.binding.spotify/src/main/java/org/openhab/binding/spotify/internal/handler/SpotifyHandleCommands.java
bundles/org.openhab.binding.squeezebox/src/main/java/org/openhab/binding/squeezebox/internal/SqueezeBoxAudioSink.java
bundles/org.openhab.binding.squeezebox/src/main/java/org/openhab/binding/squeezebox/internal/SqueezeBoxHandlerFactory.java
bundles/org.openhab.binding.squeezebox/src/main/java/org/openhab/binding/squeezebox/internal/discovery/SqueezeBoxServerDiscoveryParticipant.java
bundles/org.openhab.binding.squeezebox/src/main/java/org/openhab/binding/squeezebox/internal/handler/SqueezeBoxNotificationListener.java
bundles/org.openhab.binding.squeezebox/src/main/java/org/openhab/binding/squeezebox/internal/handler/SqueezeBoxPlayerHandler.java
bundles/org.openhab.binding.squeezebox/src/main/java/org/openhab/binding/squeezebox/internal/handler/SqueezeBoxServerHandler.java
bundles/org.openhab.binding.surepetcare/src/main/java/org/openhab/binding/surepetcare/internal/SurePetcareConstants.java
bundles/org.openhab.binding.surepetcare/src/main/java/org/openhab/binding/surepetcare/internal/discovery/SurePetcareDiscoveryService.java
bundles/org.openhab.binding.surepetcare/src/main/java/org/openhab/binding/surepetcare/internal/handler/SurePetcareBridgeHandler.java
bundles/org.openhab.binding.synopanalyzer/src/main/java/org/openhab/binding/synopanalyzer/internal/stationdb/StationDbService.java
bundles/org.openhab.binding.synopanalyzer/src/main/java/org/openhab/binding/synopanalyzer/internal/synop/Synop.java
bundles/org.openhab.binding.systeminfo/src/main/java/org/openhab/binding/systeminfo/internal/discovery/SysteminfoDiscoveryService.java
bundles/org.openhab.binding.systeminfo/src/main/java/org/openhab/binding/systeminfo/internal/handler/SysteminfoHandler.java
bundles/org.openhab.binding.touchwand/src/main/java/org/openhab/binding/touchwand/internal/TouchWandRestClient.java
bundles/org.openhab.binding.touchwand/src/main/java/org/openhab/binding/touchwand/internal/dto/AlarmSensorUnitDataDeserializer.java

index 04a597b70a6dafa3aa0eaab9e06a17788925f083..8cf00f440e82c5a1eb3ca8b281cb0015f8b0c7ed 100644 (file)
@@ -79,9 +79,7 @@ public class OpenAPIUtils {
         }
 
         try {
-            URI requestURI = new URI(HttpScheme.HTTP.asString(), (String) null, address, port, path, query,
-                    (String) null);
-            return requestURI;
+            return new URI(HttpScheme.HTTP.asString(), (String) null, address, port, path, query, (String) null);
         } catch (URISyntaxException var8) {
             LOGGER.warn("URI could not be parsed with path {}", path);
             throw new NanoleafException("Wrong URI format for API request");
@@ -115,8 +113,8 @@ public class OpenAPIUtils {
             }
         } catch (ExecutionException ee) {
             Throwable cause = ee.getCause();
-            if (cause != null && cause instanceof HttpResponseException
-                    && ((HttpResponseException) cause).getResponse().getStatus() == HttpStatus.UNAUTHORIZED_401) {
+            if (cause instanceof HttpResponseException httpResponseException
+                    && httpResponseException.getResponse().getStatus() == HttpStatus.UNAUTHORIZED_401) {
                 LOGGER.debug("OpenAPI request unauthorized. Invalid authorization token.");
                 throw new NanoleafUnauthorizedException("Invalid authorization token");
             } else {
index 1ac5e72cdfac166af3050301e5154c729c04ea1f..92a6235efb1a76838a1afb45faa4a587a698305d 100644 (file)
@@ -57,8 +57,7 @@ public class NanoleafCommandExtension extends AbstractConsoleCommandExtension {
                         thingRegistry.getAll().forEach(thing -> {
                             if (thing.getUID().getBindingId().equals(NanoleafBindingConstants.BINDING_ID)) {
                                 ThingHandler handler = thing.getHandler();
-                                if (handler instanceof NanoleafControllerHandler) {
-                                    NanoleafControllerHandler nanoleafControllerHandler = (NanoleafControllerHandler) handler;
+                                if (handler instanceof NanoleafControllerHandler nanoleafControllerHandler) {
                                     if (!handler.getThing().isEnabled()) {
                                         console.println(
                                                 "The following Nanoleaf is NOT enabled as a Thing. Enable it first to view its layout.");
@@ -76,16 +75,15 @@ public class NanoleafCommandExtension extends AbstractConsoleCommandExtension {
                         Thing thing = thingRegistry.get(new ThingUID(uid));
                         if (thing != null) {
                             ThingHandler handler = thing.getHandler();
-                            if (handler instanceof NanoleafControllerHandler) {
-                                NanoleafControllerHandler nanoleafControllerHandler = (NanoleafControllerHandler) handler;
+                            if (handler instanceof NanoleafControllerHandler nanoleafControllerHandler) {
                                 String layout = nanoleafControllerHandler.getLayout();
                                 console.println(layout);
                             } else {
-                                console.println("Thing with UID '" + uid.toString()
-                                        + "' is not an initialized Nanoleaf controller.");
+                                console.println(
+                                        "Thing with UID '" + uid + "' is not an initialized Nanoleaf controller.");
                             }
                         } else {
-                            console.println("Thing with UID '" + uid.toString() + "' does not exist.");
+                            console.println("Thing with UID '" + uid + "' does not exist.");
                         }
                     } else {
                         printUsage(console);
index 02e5635880d2f02e28e9790491b114ab15ff3207..b4d6e82b2d90881b05580ad2754b258d777134ac 100644 (file)
@@ -86,10 +86,8 @@ public class NanoleafMDNSDiscoveryParticipant implements MDNSDiscoveryParticipan
                     MODEL_ID_LIGHTPANELS.equals(modelId) ? API_MIN_FW_VER_LIGHTPANELS : API_MIN_FW_VER_CANVAS);
         }
 
-        final DiscoveryResult result = DiscoveryResultBuilder.create(uid).withThingType(getThingType(service))
-                .withProperties(properties).withLabel(service.getName()).withRepresentationProperty(CONFIG_ADDRESS)
-                .build();
-        return result;
+        return DiscoveryResultBuilder.create(uid).withThingType(getThingType(service)).withProperties(properties)
+                .withLabel(service.getName()).withRepresentationProperty(CONFIG_ADDRESS).build();
     }
 
     @Override
index 676011174cd172cbb4bf1756b62e6e06582f2a8d..36b24190947d99fe56ba6d9f33f8c4356d6791c7 100644 (file)
@@ -137,8 +137,8 @@ public class NanoleafPanelHandler extends BaseThingHandler implements NanoleafPa
         Bridge bridge = getBridge();
         if (bridge != null) {
             ThingHandler handler = bridge.getHandler();
-            if (handler instanceof NanoleafControllerHandler) {
-                ((NanoleafControllerHandler) handler).getColorInformation().unregisterChangeListener(getPanelID());
+            if (handler instanceof NanoleafControllerHandler controllerHandler) {
+                controllerHandler.getColorInformation().unregisterChangeListener(getPanelID());
             }
         }
 
@@ -174,8 +174,8 @@ public class NanoleafPanelHandler extends BaseThingHandler implements NanoleafPa
         Bridge bridge = getBridge();
         if (bridge != null) {
             ThingHandler handler = bridge.getHandler();
-            if (handler instanceof NanoleafControllerHandler) {
-                ((NanoleafControllerHandler) handler).getColorInformation().registerChangeListener(getPanelID(), this);
+            if (handler instanceof NanoleafControllerHandler controllerHandler) {
+                controllerHandler.getColorInformation().registerChangeListener(getPanelID(), this);
             }
         }
     }
@@ -185,8 +185,8 @@ public class NanoleafPanelHandler extends BaseThingHandler implements NanoleafPa
         logger.debug("currentPanelColor: {}", currentPanelColor);
 
         HSBType newPanelColor = new HSBType();
-        if (command instanceof HSBType) {
-            newPanelColor = (HSBType) command;
+        if (command instanceof HSBType hsbCommand) {
+            newPanelColor = hsbCommand;
         } else if (command instanceof OnOffType) {
             if (OnOffType.ON.equals(command)) {
                 newPanelColor = new HSBType(currentPanelColor.getHue(), currentPanelColor.getSaturation(),
@@ -195,9 +195,8 @@ public class NanoleafPanelHandler extends BaseThingHandler implements NanoleafPa
                 newPanelColor = new HSBType(currentPanelColor.getHue(), currentPanelColor.getSaturation(),
                         MIN_PANEL_BRIGHTNESS);
             }
-        } else if (command instanceof PercentType) {
-            PercentType brightness = new PercentType(
-                    Math.max(MIN_PANEL_BRIGHTNESS.intValue(), ((PercentType) command).intValue()));
+        } else if (command instanceof PercentType type) {
+            PercentType brightness = new PercentType(Math.max(MIN_PANEL_BRIGHTNESS.intValue(), type.intValue()));
             newPanelColor = new HSBType(currentPanelColor.getHue(), currentPanelColor.getSaturation(), brightness);
         } else if (command instanceof IncreaseDecreaseType) {
             int brightness = currentPanelColor.getBrightness().intValue();
@@ -281,8 +280,8 @@ public class NanoleafPanelHandler extends BaseThingHandler implements NanoleafPa
         Object panelId = getThing().getConfiguration().get(CONFIG_PANEL_ID);
         if (panelId instanceof Integer) {
             return (Integer) panelId;
-        } else if (panelId instanceof Number) {
-            return ((Number) panelId).intValue();
+        } else if (panelId instanceof Number numberValue) {
+            return numberValue.intValue();
         } else {
             // Fall back to parsing string representation of panel if it is not returning an integer
             String stringPanelId = panelId.toString();
@@ -300,8 +299,8 @@ public class NanoleafPanelHandler extends BaseThingHandler implements NanoleafPa
         Bridge bridge = getBridge();
         if (bridge != null) {
             ThingHandler handler = bridge.getHandler();
-            if (handler instanceof NanoleafControllerHandler) {
-                ((NanoleafControllerHandler) handler).getColorInformation().setPanelColor(panelId, color);
+            if (handler instanceof NanoleafControllerHandler controllerHandler) {
+                controllerHandler.getColorInformation().setPanelColor(panelId, color);
             } else {
                 logger.debug("Couldn't find handler for panel {}", panelId);
             }
index 5ec5c372524440712841b4f73080da37e7dc5935..f7737a1bfa3eddd84a653097549da3a434a51cca 100644 (file)
@@ -77,10 +77,8 @@ public class DrawingSettings {
     private static ImagePoint2D toPictureLayout(Point2D original, int imageHeight, ImagePoint2D min,
             double rotationRadians) {
         Point2D rotated = original.rotate(rotationRadians);
-        ImagePoint2D translated = new ImagePoint2D(
-                NanoleafBindingConstants.LAYOUT_BORDER_WIDTH + rotated.getX() - min.getX(),
+        return new ImagePoint2D(NanoleafBindingConstants.LAYOUT_BORDER_WIDTH + rotated.getX() - min.getX(),
                 imageHeight - NanoleafBindingConstants.LAYOUT_BORDER_WIDTH - rotated.getY() + min.getY());
-        return translated;
     }
 
     private static List<ImagePoint2D> toPictureLayout(List<Point2D> originals, int imageHeight, ImagePoint2D min,
index 9bded7f5e582712f1963c1da97afd0357264511c..a147915f27729794084d3c37e807bf56c231b6d3 100644 (file)
@@ -64,7 +64,7 @@ public class NanoleafLayout {
             return new byte[] {};
         }
 
-        ImagePoint2D size[] = findSize(positionDatums, rotationRadians);
+        ImagePoint2D[] size = findSize(positionDatums, rotationRadians);
         final ImagePoint2D min = size[0];
         final ImagePoint2D max = size[1];
 
index 5cf5dad22d4031aabf788cb14d71fd032bbe01e7..c121b55963dd8b69160fb1ac4a17e598163af480 100644 (file)
@@ -90,20 +90,20 @@ public class State {
     }
 
     public void setState(IntegerState value) {
-        if (value instanceof Brightness) {
-            this.setBrightness((Brightness) value);
-        } else if (value instanceof Hue) {
-            this.setHue((Hue) value);
-        } else if (value instanceof Sat) {
-            this.setSaturation((Sat) value);
-        } else if (value instanceof Ct) {
-            this.setColorTemperature((Ct) value);
+        if (value instanceof Brightness brightnessState) {
+            this.setBrightness(brightnessState);
+        } else if (value instanceof Hue hueState) {
+            this.setHue(hueState);
+        } else if (value instanceof Sat satState) {
+            this.setSaturation(satState);
+        } else if (value instanceof Ct ctState) {
+            this.setColorTemperature(ctState);
         }
     }
 
     public void setState(BooleanState value) {
-        if (value instanceof On) {
-            this.setOn((On) value);
+        if (value instanceof On onState) {
+            this.setOn(onState);
         }
     }
 }
index ea917af992a5520c91d8c961e999272be92ebab0..25d99226082616246f83820f6981bd0034ca7a01 100644 (file)
@@ -70,7 +70,7 @@ public class NanoleafLayoutTest {
     }
 
     private class TestPanelState implements PanelState {
-        private final HSBType testColors[] = { HSBType.fromRGB(160, 120, 40), HSBType.fromRGB(80, 60, 20),
+        private final HSBType[] testColors = { HSBType.fromRGB(160, 120, 40), HSBType.fromRGB(80, 60, 20),
                 HSBType.fromRGB(120, 90, 30), HSBType.fromRGB(200, 150, 60) };
 
         @Override
index d1f7b22c06ef6bfafae758c4bae3d68d89b5b13b..ce2fa1798efa8c0c69d392dbf6ff5c9c8a9e8adc 100644 (file)
@@ -49,8 +49,7 @@ public class NeatoHandlerFactory extends BaseThingHandlerFactory {
     public static final Set<ThingTypeUID> SUPPORTED_THING_TYPE_UIDS = Collections
             .unmodifiableSet(Stream.of(BRIDGE_TYPE_NEATOACCOUNT, THING_TYPE_VACUUMCLEANER).collect(Collectors.toSet()));
 
-    public static final Set<ThingTypeUID> DISCOVERABLE_THING_TYPE_UIDS = Collections
-            .singleton(THING_TYPE_VACUUMCLEANER);
+    public static final Set<ThingTypeUID> DISCOVERABLE_THING_TYPE_UIDS = Set.of(THING_TYPE_VACUUMCLEANER);
 
     private Map<ThingUID, ServiceRegistration<DiscoveryService>> discoveryServiceRegistrations = new HashMap<>();
 
index be031f19130be97ed34748e4884f5ddea6599cdf..b1084a9a729bbf3eab5fb5b5ac4ee1cdd82287c0 100644 (file)
@@ -112,7 +112,6 @@ public class NeatoRobot {
             return HttpUtil.executeUrl("POST",
                     "https://nucleo.neatocloud.com:4443/vendors/neato/robots/" + this.serialNumber + "/messages",
                     headers, stream, "text/html; charset=ISO-8859-1", 20000);
-
         } catch (IOException | NoSuchAlgorithmException | InvalidKeyException e) {
             throw new NeatoCommunicationException(e);
         }
index 982d69b690d01ed16431c9a2f714f32f9f39c16a..d324c8770ed6ccff60a28593b776c806a38bca1b 100644 (file)
@@ -16,7 +16,6 @@ import static org.openhab.binding.neeo.internal.NeeoConstants.BRIDGE_TYPE_BRAIN;
 
 import java.net.InetAddress;
 import java.net.UnknownHostException;
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Objects;
@@ -50,7 +49,7 @@ public class NeeoBrainDiscovery implements MDNSDiscoveryParticipant {
 
     @Override
     public Set<@Nullable ThingTypeUID> getSupportedThingTypeUIDs() {
-        return Collections.singleton(BRIDGE_TYPE_BRAIN);
+        return Set.of(BRIDGE_TYPE_BRAIN);
     }
 
     @Override
index 7b79b50010ea32003db1ab681467523484e5d400..fbc60526a9ab81928655a307dd7e513c9dfce3e5 100644 (file)
@@ -13,7 +13,6 @@
 package org.openhab.binding.neeo.internal.discovery;
 
 import java.io.IOException;
-import java.util.Collections;
 import java.util.Objects;
 import java.util.Set;
 
@@ -46,8 +45,7 @@ public class NeeoDeviceDiscoveryService extends AbstractDiscoveryService {
     private final Logger logger = LoggerFactory.getLogger(NeeoDeviceDiscoveryService.class);
 
     /** The device thing type we support */
-    private static final Set<ThingTypeUID> DISCOVERABLE_THING_TYPES_UIDS = Collections
-            .singleton(NeeoConstants.THING_TYPE_DEVICE);
+    private static final Set<ThingTypeUID> DISCOVERABLE_THING_TYPES_UIDS = Set.of(NeeoConstants.THING_TYPE_DEVICE);
 
     /** The timeout (in seconds) for searching the room */
     private static final int SEARCH_TIME = 10;
index 4d108e79eaa8ecad5509f9312bb4940f1ecca2cb..3ccdadddd506df1771a84ecbd32fa4fbe7e2ddd2 100644 (file)
@@ -13,7 +13,6 @@
 package org.openhab.binding.neeo.internal.discovery;
 
 import java.io.IOException;
-import java.util.Collections;
 import java.util.Objects;
 import java.util.Set;
 
@@ -44,8 +43,7 @@ public class NeeoRoomDiscoveryService extends AbstractDiscoveryService {
     private final Logger logger = LoggerFactory.getLogger(NeeoRoomDiscoveryService.class);
 
     /** The room bridge type we support */
-    private static final Set<ThingTypeUID> DISCOVERABLE_THING_TYPES_UIDS = Collections
-            .singleton(NeeoConstants.BRIDGE_TYPE_ROOM);
+    private static final Set<ThingTypeUID> DISCOVERABLE_THING_TYPES_UIDS = Set.of(NeeoConstants.BRIDGE_TYPE_ROOM);
 
     /** The timeout (in seconds) for searching the brain */
     private static final int SEARCH_TIME = 10;
index 56dc785f09d011c7ee08f30887d8bab81dc58ba1..5ce26ae65420f486fdb2f70ec0c4859277bf298e 100644 (file)
@@ -339,8 +339,8 @@ public class NeeoDeviceHandler extends BaseThingHandler {
         final Bridge parent = getBridge();
         if (parent != null) {
             final BridgeHandler handler = parent.getHandler();
-            if (handler instanceof NeeoRoomHandler) {
-                return ((NeeoRoomHandler) handler);
+            if (handler instanceof NeeoRoomHandler roomHandler) {
+                return roomHandler;
             }
         }
         return null;
index 24436f594ac8fc5c7d5d355667e2f9cd842cf62b..18b4cf26358e4fe3c06e907f1f90851c4459cab9 100644 (file)
@@ -317,8 +317,8 @@ public class NeeoRoomHandler extends BaseBridgeHandler {
         final Bridge parent = getBridge();
         if (parent != null) {
             final BridgeHandler handler = parent.getHandler();
-            if (handler instanceof NeeoBrainHandler) {
-                return ((NeeoBrainHandler) handler);
+            if (handler instanceof NeeoBrainHandler brainHandler) {
+                return brainHandler;
             }
         }
         return null;
index 945bb58b5b080ee56927b6aec93fc2bc18b1bfaf..2465bbf7235f7136f070a66c84e5ca159b08c112 100644 (file)
@@ -41,9 +41,9 @@ public class NeeoDevicesDeserializer implements JsonDeserializer<@Nullable NeeoD
         Objects.requireNonNull(jsonElement, "jsonElement cannot be null");
         Objects.requireNonNull(context, "context cannot be null");
 
-        if (jsonElement instanceof JsonObject) {
+        if (jsonElement instanceof JsonObject jsonObject) {
             final List<NeeoDevice> scenarios = new ArrayList<>();
-            for (Map.Entry<String, JsonElement> entry : ((JsonObject) jsonElement).entrySet()) {
+            for (Map.Entry<String, JsonElement> entry : jsonObject.entrySet()) {
                 final NeeoDevice device = context.deserialize(entry.getValue(), NeeoDevice.class);
                 scenarios.add(device);
             }
index 045af48ea92ba793a0ec9e9be25c950c7cfed685..09c0ae0c9c0ff7211675f837a1304ca2950232d9 100644 (file)
@@ -41,9 +41,9 @@ public class NeeoMacrosDeserializer implements JsonDeserializer<@Nullable NeeoMa
         Objects.requireNonNull(jsonElement, "jsonElement cannot be null");
         Objects.requireNonNull(context, "context cannot be null");
 
-        if (jsonElement instanceof JsonObject) {
+        if (jsonElement instanceof JsonObject jsonObject) {
             final List<NeeoMacro> scenarios = new ArrayList<>();
-            for (Map.Entry<String, JsonElement> entry : ((JsonObject) jsonElement).entrySet()) {
+            for (Map.Entry<String, JsonElement> entry : jsonObject.entrySet()) {
                 final NeeoMacro macro = context.deserialize(entry.getValue(), NeeoMacro.class);
                 scenarios.add(macro);
             }
index b2c2955e456625142997182475e40f629594f90b..dea4c3d49a2a66b3f1f4b936b3918fbace928e71 100644 (file)
@@ -41,9 +41,9 @@ public class NeeoRecipesDeserializer implements JsonDeserializer<@Nullable NeeoR
         Objects.requireNonNull(jsonElement, "jsonElement cannot be null");
         Objects.requireNonNull(context, "context cannot be null");
 
-        if (jsonElement instanceof JsonObject) {
+        if (jsonElement instanceof JsonObject jsonObject) {
             final List<NeeoRecipe> recipes = new ArrayList<>();
-            for (Map.Entry<String, JsonElement> entry : ((JsonObject) jsonElement).entrySet()) {
+            for (Map.Entry<String, JsonElement> entry : jsonObject.entrySet()) {
                 final NeeoRecipe recipe = context.deserialize(entry.getValue(), NeeoRecipe.class);
                 recipes.add(recipe);
             }
index 1a776ab8f093dfccb9c5d90f6a85418d2befcc28..0850113d65a3cfad41422537456e3f9ee94e1cab 100644 (file)
@@ -40,9 +40,9 @@ public class NeeoRoomsDeserializer implements JsonDeserializer<@Nullable NeeoRoo
             @Nullable JsonDeserializationContext context) throws JsonParseException {
         Objects.requireNonNull(jsonElement, "jsonElement cannot be null");
         Objects.requireNonNull(context, "context cannot be null");
-        if (jsonElement instanceof JsonObject) {
+        if (jsonElement instanceof JsonObject jsonObject) {
             final List<NeeoRoom> recipes = new ArrayList<>();
-            for (Map.Entry<String, JsonElement> entry : ((JsonObject) jsonElement).entrySet()) {
+            for (Map.Entry<String, JsonElement> entry : jsonObject.entrySet()) {
                 final NeeoRoom room = context.deserialize(entry.getValue(), NeeoRoom.class);
                 recipes.add(room);
             }
index bb91183635f61124312af8468d74f4a96ad05f78..ea9cbdca58ec64385a704c478b5aa1dc4abebfb2 100644 (file)
@@ -40,9 +40,9 @@ public class NeeoScenariosDeserializer implements JsonDeserializer<@Nullable Nee
             @Nullable JsonDeserializationContext context) throws JsonParseException {
         Objects.requireNonNull(jsonElement, "jsonElement cannot be null");
         Objects.requireNonNull(context, "context cannot be null");
-        if (jsonElement instanceof JsonObject) {
+        if (jsonElement instanceof JsonObject jsonObject) {
             final List<NeeoScenario> scenarios = new ArrayList<>();
-            for (Map.Entry<String, JsonElement> entry : ((JsonObject) jsonElement).entrySet()) {
+            for (Map.Entry<String, JsonElement> entry : jsonObject.entrySet()) {
                 final NeeoScenario scenario = context.deserialize(entry.getValue(), NeeoScenario.class);
                 scenarios.add(scenario);
             }
index c774e27da9a80857f501f7d21446380c2cfb19c0..4193e7cd255f140dae1a06c67ea43a70b8dd8a2c 100644 (file)
@@ -29,7 +29,6 @@ import org.openhab.core.thing.Thing;
 import org.openhab.core.thing.ThingStatus;
 import org.openhab.core.thing.ThingStatusDetail;
 import org.openhab.core.thing.binding.BaseThingHandler;
-import org.openhab.core.thing.binding.BridgeHandler;
 import org.openhab.core.types.Command;
 import org.openhab.core.types.RefreshType;
 import org.openhab.core.types.State;
@@ -166,8 +165,7 @@ public class NeoBaseHandler extends BaseThingHandler {
             if (channel != null) {
                 Configuration config = channel.getConfiguration();
                 Object holdOnlineState = config.get(PARAM_HOLD_ONLINE_STATE);
-                if (holdOnlineState != null && (holdOnlineState instanceof Boolean)
-                        && ((Boolean) holdOnlineState).booleanValue()) {
+                if (holdOnlineState instanceof Boolean booleanValue && booleanValue.booleanValue()) {
                     /*
                      * the Configuration Parameter "holdOnlineState" is True so do NOT send a
                      * state update to OpenHAB
@@ -236,11 +234,9 @@ public class NeoBaseHandler extends BaseThingHandler {
     protected @Nullable NeoHubHandler getNeoHub() {
         @Nullable
         Bridge b;
-        @Nullable
-        BridgeHandler h;
 
-        if ((b = getBridge()) != null && (h = b.getHandler()) != null && h instanceof NeoHubHandler) {
-            return (NeoHubHandler) h;
+        if ((b = getBridge()) != null && (b.getHandler() instanceof NeoHubHandler neoHubHandler)) {
+            return neoHubHandler;
         }
 
         return null;
index 9e6db469f38775441ff598189ca467509e15817c..d19693b37c65c5596c6dc1be98332e1579b6df79 100644 (file)
@@ -110,7 +110,7 @@ public class NeoHubBindingConstants {
     /*
      * enumerator for results of method calls
      */
-    public static enum NeoHubReturnResult {
+    public enum NeoHubReturnResult {
         SUCCEEDED,
         ERR_COMMUNICATION,
         ERR_INITIALIZATION
index e983dbfc58804f51c395a989d2d38625bfab4494..8f3ec0efa53216b3ae37bce6084f49b6d03a5a8c 100644 (file)
@@ -13,7 +13,6 @@
 package org.openhab.binding.neohub.internal;
 
 import java.net.Inet4Address;
-import java.util.Collections;
 import java.util.Set;
 
 import javax.jmdns.ServiceInfo;
@@ -47,8 +46,7 @@ public class NeoHubDiscoveryParticipant implements MDNSDiscoveryParticipant {
     private String getIpAddressIfValidNeoHub(ServiceInfo serviceInfo) {
         if (serviceInfo.getName().contains(HEATMISER_NEO_HUB)) {
             for (Inet4Address ipAddr : serviceInfo.getInet4Addresses()) {
-                String ipStr = ipAddr.getHostAddress();
-                return ipStr;
+                return ipAddr.getHostAddress();
             }
         }
         return "";
@@ -56,7 +54,7 @@ public class NeoHubDiscoveryParticipant implements MDNSDiscoveryParticipant {
 
     @Override
     public Set<ThingTypeUID> getSupportedThingTypeUIDs() {
-        return Collections.singleton(NeoHubBindingConstants.THING_TYPE_NEOHUB);
+        return Set.of(NeoHubBindingConstants.THING_TYPE_NEOHUB);
     }
 
     @Override
@@ -69,11 +67,9 @@ public class NeoHubDiscoveryParticipant implements MDNSDiscoveryParticipant {
         String ipStr = getIpAddressIfValidNeoHub(serviceInfo);
         if (!ipStr.isEmpty()) {
             ThingUID thingUID = new ThingUID(NeoHubBindingConstants.THING_TYPE_NEOHUB, ipStr.replace('.', '_'));
-            DiscoveryResult hub = DiscoveryResultBuilder.create(thingUID)
-                    .withProperty(NeoHubConfiguration.HOST_NAME, ipStr)
+            return DiscoveryResultBuilder.create(thingUID).withProperty(NeoHubConfiguration.HOST_NAME, ipStr)
                     .withRepresentationProperty(NeoHubConfiguration.HOST_NAME).withLabel("NeoHub (" + ipStr + ")")
                     .build();
-            return hub;
         }
         return null;
     }
index 282f07b86f5d41d59445c51895ea559d8cac9708..900f7e8bfe71e34fcd9671588d2e94ecb836ff4c 100644 (file)
@@ -111,18 +111,18 @@ public class NeoHubDiscoveryService extends AbstractDiscoveryService {
                 for (AbstractRecord deviceRecord : deviceRecords) {
 
                     // the record came from the legacy API (deviceType included)
-                    if (deviceRecord instanceof InfoRecord) {
-                        deviceType = ((InfoRecord) deviceRecord).getDeviceType();
+                    if (deviceRecord instanceof InfoRecord infoRecord) {
+                        deviceType = infoRecord.getDeviceType();
                         publishDevice(deviceRecord, deviceType);
                         continue;
                     }
 
                     // the record came from the new API (deviceType NOT included)
-                    if (deviceRecord instanceof LiveDataRecord) {
+                    if (deviceRecord instanceof LiveDataRecord liveDataRecord) {
                         if (engineerData == null) {
                             break;
                         }
-                        String deviceName = ((LiveDataRecord) deviceRecord).getDeviceName();
+                        String deviceName = liveDataRecord.getDeviceName();
                         // exclude repeater nodes from being discovered
                         if (MATCHER_HEATMISER_REPEATER.matcher(deviceName).matches()) {
                             continue;
index 40715180f440991b1a8cb11b91905b1ab54ccea1..2e9e42722f2653a5ea4b0fa65e00f43e5a97be88 100644 (file)
@@ -314,14 +314,14 @@ public class NeoHubHandler extends BaseBridgeHandler {
             // check if we also need to discard and update systemData
             NeoHubReadDcbResponse systemData = this.systemData;
             if (systemData != null) {
-                if (deviceData instanceof NeoHubLiveDeviceData) {
+                if (deviceData instanceof NeoHubLiveDeviceData liveDeviceData) {
                     /*
                      * note: time-stamps are measured in seconds from 1970-01-01T00:00:00Z
                      *
                      * new API: discard systemData if its time-stamp is older than the system
                      * time-stamp on the hub
                      */
-                    if (systemData.timeStamp < ((NeoHubLiveDeviceData) deviceData).getTimestampSystem()) {
+                    if (systemData.timeStamp < liveDeviceData.getTimestampSystem()) {
                         this.systemData = null;
                     }
                 } else {
@@ -416,8 +416,8 @@ public class NeoHubHandler extends BaseBridgeHandler {
             List<Thing> children = getThing().getThings();
             for (Thing child : children) {
                 ThingHandler device = child.getHandler();
-                if (device instanceof NeoBaseHandler) {
-                    ((NeoBaseHandler) device).toBaseSendPollResponse(deviceData);
+                if (device instanceof NeoBaseHandler neoBaseHandler) {
+                    neoBaseHandler.toBaseSendPollResponse(deviceData);
                 }
             }
 
index cc90d6fc85c05814fa4e60820987d9d08aca865c..f543d5ebdcfb878fc8c4062d979c3071df6e4849 100644 (file)
@@ -14,10 +14,7 @@ package org.openhab.binding.neohub.internal;
 
 import static org.openhab.binding.neohub.internal.NeoHubBindingConstants.*;
 
-import java.util.Arrays;
-import java.util.Collections;
 import java.util.HashMap;
-import java.util.HashSet;
 import java.util.Hashtable;
 import java.util.Map;
 import java.util.Set;
@@ -47,9 +44,8 @@ import org.osgi.service.component.annotations.Reference;
 @Component(configurationPid = "binding.neohub", service = ThingHandlerFactory.class)
 public class NeoHubHandlerFactory extends BaseThingHandlerFactory {
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections
-            .unmodifiableSet(new HashSet<>(Arrays.asList(THING_TYPE_NEOHUB, THING_TYPE_NEOSTAT, THING_TYPE_NEOPLUG,
-                    THING_TYPE_NEOCONTACT, THING_TYPE_NEOTEMPERATURESENSOR)));
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_NEOHUB, THING_TYPE_NEOSTAT,
+            THING_TYPE_NEOPLUG, THING_TYPE_NEOCONTACT, THING_TYPE_NEOTEMPERATURESENSOR);
 
     private final WebSocketFactory webSocketFactory;
     private final Map<ThingUID, ServiceRegistration<?>> discoServices = new HashMap<>();
@@ -68,8 +64,8 @@ public class NeoHubHandlerFactory extends BaseThingHandlerFactory {
     protected @Nullable ThingHandler createHandler(Thing thing) {
         ThingTypeUID thingTypeUID = thing.getThingTypeUID();
 
-        if ((thingTypeUID.equals(THING_TYPE_NEOHUB)) && (thing instanceof Bridge)) {
-            NeoHubHandler handler = new NeoHubHandler((Bridge) thing, webSocketFactory);
+        if ((thingTypeUID.equals(THING_TYPE_NEOHUB)) && (thing instanceof Bridge bridge)) {
+            NeoHubHandler handler = new NeoHubHandler(bridge, webSocketFactory);
             createDiscoveryService(handler);
             return handler;
         }
@@ -95,8 +91,8 @@ public class NeoHubHandlerFactory extends BaseThingHandlerFactory {
 
     @Override
     protected synchronized void removeHandler(ThingHandler handler) {
-        if (handler instanceof NeoHubHandler) {
-            destroyDiscoveryService((NeoHubHandler) handler);
+        if (handler instanceof NeoHubHandler neoHubHandler) {
+            destroyDiscoveryService(neoHubHandler);
         }
     }
 
index e36f2fbc8ddebac843a445bc90e1b7c1c980098c..c1acd4a206f4a2ad780aef290536d8388d49b300 100644 (file)
@@ -39,11 +39,11 @@ public class NeoPlugHandler extends NeoBaseHandler {
     protected String toNeoHubBuildCommandString(String channelId, Command command) {
         NeoBaseConfiguration config = this.config;
         if (config != null) {
-            if (command instanceof OnOffType && channelId.equals(CHAN_PLUG_OUTPUT_STATE)) {
-                return String.format(CMD_CODE_TIMER, ((OnOffType) command).toString(), config.deviceNameInHub);
+            if (command instanceof OnOffType onOffCommand && channelId.equals(CHAN_PLUG_OUTPUT_STATE)) {
+                return String.format(CMD_CODE_TIMER, onOffCommand.toString(), config.deviceNameInHub);
             }
-            if (command instanceof OnOffType && channelId.equals(CHAN_PLUG_AUTO_MODE)) {
-                return String.format(CMD_CODE_MANUAL, invert((OnOffType) command).toString(), config.deviceNameInHub);
+            if (command instanceof OnOffType onOffCommand && channelId.equals(CHAN_PLUG_AUTO_MODE)) {
+                return String.format(CMD_CODE_MANUAL, invert(onOffCommand).toString(), config.deviceNameInHub);
             }
         }
         return "";
index 7989ee76666848338448da5f8a00f6d762d757eb..38d4c0787fac79d250886adfcfc5ae12179c773a 100644 (file)
@@ -41,9 +41,9 @@ public class NeoStatHandler extends NeoBaseHandler {
     protected String toNeoHubBuildCommandString(String channelId, Command command) {
         NeoBaseConfiguration config = this.config;
         if (config != null) {
-            if (command instanceof QuantityType<?> && channelId.equals(CHAN_TARGET_TEMP)) {
+            if (command instanceof QuantityType<?> quantityCommand && channelId.equals(CHAN_TARGET_TEMP)) {
                 Command doCommand = command;
-                QuantityType<?> temp = ((QuantityType<?>) command).toUnit(getTemperatureUnit());
+                QuantityType<?> temp = quantityCommand.toUnit(getTemperatureUnit());
                 if (temp != null) {
                     doCommand = temp;
                 }
@@ -51,8 +51,8 @@ public class NeoStatHandler extends NeoBaseHandler {
                         config.deviceNameInHub);
             }
 
-            if (command instanceof OnOffType && channelId.equals(CHAN_OCC_MODE_PRESENT)) {
-                return String.format(CMD_CODE_AWAY, invert((OnOffType) command).toString(), config.deviceNameInHub);
+            if (command instanceof OnOffType onOffCommand && channelId.equals(CHAN_OCC_MODE_PRESENT)) {
+                return String.format(CMD_CODE_AWAY, invert(onOffCommand).toString(), config.deviceNameInHub);
             }
         }
         return "";
index 6fb298ff7be4c82cc6d133e81a6b8a9f07d14ec8..87f670051a1c96c2589a071935973b5317f9915f 100644 (file)
@@ -437,30 +437,30 @@ public class NeoHubJsonTests {
 
         jsonElement = JsonParser.parseString(load("dcb_celsius"));
         assertTrue(jsonElement.isJsonObject());
-        assertTrue(((JsonObject) jsonElement).keySet().size() > 0);
+        assertTrue(!((JsonObject) jsonElement).keySet().isEmpty());
 
         jsonElement = JsonParser.parseString(load("live_data"));
         assertTrue(jsonElement.isJsonObject());
-        assertTrue(((JsonObject) jsonElement).keySet().size() > 0);
+        assertTrue(!((JsonObject) jsonElement).keySet().isEmpty());
 
         jsonElement = JsonParser.parseString(load("engineers"));
         assertTrue(jsonElement.isJsonObject());
-        assertTrue(((JsonObject) jsonElement).keySet().size() > 0);
+        assertTrue(!((JsonObject) jsonElement).keySet().isEmpty());
 
         jsonElement = JsonParser.parseString(load("info_new"));
         assertTrue(jsonElement.isJsonObject());
-        assertTrue(((JsonObject) jsonElement).keySet().size() > 0);
+        assertTrue(!((JsonObject) jsonElement).keySet().isEmpty());
 
         jsonElement = JsonParser.parseString(load("info_old"));
         assertTrue(jsonElement.isJsonObject());
-        assertTrue(((JsonObject) jsonElement).keySet().size() > 0);
+        assertTrue(!((JsonObject) jsonElement).keySet().isEmpty());
 
         jsonElement = JsonParser.parseString(load("system"));
         assertTrue(jsonElement.isJsonObject());
-        assertTrue(((JsonObject) jsonElement).keySet().size() > 0);
+        assertTrue(!((JsonObject) jsonElement).keySet().isEmpty());
 
         jsonElement = JsonParser.parseString(load("info_sensors_closed"));
         assertTrue(jsonElement.isJsonObject());
-        assertTrue(((JsonObject) jsonElement).keySet().size() > 0);
+        assertTrue(!((JsonObject) jsonElement).keySet().isEmpty());
     }
 }
index 8dbda72da43949e0b9106b405707122d1ecf8c7d..08e61bdfe5346ac86769d4007b9d98547d9e8490 100644 (file)
@@ -214,8 +214,8 @@ public class PubSubAPI {
                 listeners.remove(listener);
                 if (listeners.isEmpty()) {
                     subscriptionListeners.remove(subscriptionId);
-                    scheduler.getQueue().removeIf(runnable -> runnable instanceof Subscriber
-                            && ((Subscriber) runnable).subscriptionId.equals(subscriptionId));
+                    scheduler.getQueue().removeIf(
+                            runnable -> runnable instanceof Subscriber s && s.subscriptionId.equals(subscriptionId));
                 }
             }
         }
index 0d6bfebbc12977fd45ce8e20008fc57d6077f4bd..fab8d55734a576e7269b384c8263f9ddf0b06afa 100644 (file)
@@ -73,8 +73,8 @@ public class SDMDiscoveryService extends AbstractDiscoveryService implements Thi
 
     @Override
     public void setThingHandler(ThingHandler handler) {
-        if (handler instanceof SDMAccountHandler) {
-            accountHandler = (SDMAccountHandler) handler;
+        if (handler instanceof SDMAccountHandler sdmAccountHandler) {
+            accountHandler = sdmAccountHandler;
         }
     }
 
index 19d639a2add17de9227cc0b4462ed7e16903c7bc..48becd6532c9e9e410c17b609da8e00cb56d958c 100644 (file)
@@ -231,7 +231,7 @@ public class SDMCommands {
          */
         public SDMSetFanTimerRequest(SDMFanTimerMode timerMode, Duration duration) {
             super("sdm.devices.commands.Fan.SetTimer", entry("timerMode", timerMode.name()),
-                    entry("duration", String.valueOf(duration.toSeconds()) + "s"));
+                    entry("duration", duration.toSeconds() + "s"));
         }
     }
 
index dc479924d36bccb42f7d05e7d9eaa29dd556b17e..2e9ba77ea65c29fb0751f5fbcdb0709b3a09e2f8 100644 (file)
@@ -211,7 +211,7 @@ public class SDMTraits {
 
     public enum SDMTemperatureScale {
         CELSIUS,
-        FAHRENHEIT;
+        FAHRENHEIT
     }
 
     /**
index 34b6a91506aa65ae2c808e4dffb94749cf1aa767..aa3a94d453fd18ff57af093baee65fcf23d39c5c 100644 (file)
@@ -98,8 +98,8 @@ public class SDMThermostatHandler extends SDMBaseHandler {
                     delayedRefresh();
                 }
             } else if (CHANNEL_FAN_TIMER_MODE.equals(channelUID.getId())) {
-                if (command instanceof OnOffType) {
-                    if ((OnOffType) command == OnOffType.ON) {
+                if (command instanceof OnOffType onOffCommand) {
+                    if (onOffCommand == OnOffType.ON) {
                         executeDeviceCommand(new SDMSetFanTimerRequest(SDMFanTimerMode.ON, getFanTimerDuration()));
                     } else {
                         executeDeviceCommand(new SDMSetFanTimerRequest(SDMFanTimerMode.OFF));
@@ -107,9 +107,8 @@ public class SDMThermostatHandler extends SDMBaseHandler {
                     delayedRefresh();
                 }
             } else if (CHANNEL_FAN_TIMER_TIMEOUT.equals(channelUID.getId())) {
-                if (command instanceof DateTimeType) {
-                    Duration duration = Duration.between(ZonedDateTime.now(),
-                            ((DateTimeType) command).getZonedDateTime());
+                if (command instanceof DateTimeType dateTimeCommand) {
+                    Duration duration = Duration.between(ZonedDateTime.now(), dateTimeCommand.getZonedDateTime());
                     executeDeviceCommand(new SDMSetFanTimerRequest(SDMFanTimerMode.ON, duration));
                     delayedRefresh();
                 }
@@ -202,8 +201,8 @@ public class SDMThermostatHandler extends SDMBaseHandler {
         if (channel != null) {
             Configuration configuration = channel.getConfiguration();
             Object fanTimerDuration = configuration.get(SDMBindingConstants.CONFIG_PROPERTY_FAN_TIMER_DURATION);
-            if (fanTimerDuration instanceof BigDecimal) {
-                seconds = ((BigDecimal) fanTimerDuration).longValue();
+            if (fanTimerDuration instanceof BigDecimal decimalValue) {
+                seconds = decimalValue.longValue();
             }
         }
 
index c3c0b9637c6533caa32036cf8b3a417fad35e47b..9fa00ea123ced0c4dc8dca449cdabc6e18ffcd9f 100644 (file)
@@ -38,7 +38,7 @@ import com.google.gson.stream.JsonWriter;
 public class SDMDataUtil {
 
     public static Reader openDataReader(String fileName) throws FileNotFoundException {
-        String packagePath = (SDMDataUtil.class.getPackage().getName()).replaceAll("\\.", "/");
+        String packagePath = (SDMDataUtil.class.getPackage().getName()).replace(".", "/");
         String filePath = "src/test/resources/" + packagePath + "/" + fileName;
 
         InputStream inputStream = new FileInputStream(filePath);
index ac773acd5b10e11488e279de1f55aab8cac3b9b0..45cbbef30abcad3d77d5605f14044af9170c9944 100644 (file)
@@ -57,8 +57,7 @@ public class RoomActions implements ThingActions {
 
     @Override
     public void setThingHandler(@Nullable ThingHandler handler) {
-        if (handler instanceof CommonInterface) {
-            CommonInterface commonHandler = (CommonInterface) handler;
+        if (handler instanceof CommonInterface commonHandler) {
             this.handler = commonHandler;
         }
     }
index 2cd431e4772afc8b4f7df6e41153473b9462db08..5f2b7f608d54747cd6d2f6291826dd1457529959 100644 (file)
@@ -64,7 +64,7 @@ public abstract class RestManager {
             @Nullable String payload, @Nullable String contentType) throws NetatmoException {
         URI uri = uriBuilder.build();
         T response = apiBridge.executeUri(uri, method, clazz, payload, contentType, 3);
-        if (response instanceof ApiResponse.Ok && ((ApiResponse.Ok) response).failed()) {
+        if (response instanceof ApiResponse.Ok apiResponseOk && apiResponseOk.failed()) {
             throw new NetatmoException("Command failed : %s for uri : %s", response.getStatus(), uri.toString());
         }
         return response;
index ee205c88ca071e0bad4e86086da3a1d9eee3eba9..afb26963ae9971af80ebfaa2dca0055e4a34547f 100644 (file)
@@ -58,8 +58,7 @@ public class WeatherApi extends RestManager {
             throws NetatmoException {
         UriBuilder uriBuilder = getApiUriBuilder(SUB_PATH_GET_STATION, PARAM_DEVICE_ID, deviceId, //
                 PARAM_FAVORITES, getFavorites);
-        StationDataResponse response = get(uriBuilder, StationDataResponse.class);
-        return response;
+        return get(uriBuilder, StationDataResponse.class);
     }
 
     /**
index 485af4f6705162ab3de8de48ffcbea3c1efd6a8d..38de0898cb894f54447c7d275a4895d0737f221c 100644 (file)
@@ -54,7 +54,7 @@ public class NetatmoConstants {
             this.minValue = minValue;
             this.maxValue = maxValue;
             this.unit = unit;
-            String[] splitter = Double.valueOf(precision).toString().split("\\.");
+            String[] splitter = Double.toString(precision).split("\\.");
             if (splitter.length > 1) {
                 int dec = Integer.parseInt(splitter[1]);
                 this.scale = dec > 0 ? Integer.toString(dec).length() : 0;
@@ -169,7 +169,7 @@ public class NetatmoConstants {
     public static final int THERM_MAX_SETPOINT = 30;
 
     // Token scopes
-    public static enum Scope {
+    public enum Scope {
         @SerializedName("read_station")
         READ_STATION,
         @SerializedName("read_thermostat")
@@ -200,7 +200,7 @@ public class NetatmoConstants {
         ACCESS_DOORBELL,
         @SerializedName("read_carbonmonoxidedetector")
         READ_CARBONMONOXIDEDETECTOR,
-        UNKNOWN;
+        UNKNOWN
     }
 
     private static final Scope[] SMOKE_SCOPES = { Scope.READ_SMOKEDETECTOR };
@@ -212,7 +212,7 @@ public class NetatmoConstants {
     private static final Scope[] DOORBELL_SCOPES = { Scope.READ_DOORBELL, Scope.WRITE_DOORBELL, Scope.ACCESS_DOORBELL };
     private static final Scope[] PRESENCE_SCOPES = { Scope.READ_PRESENCE, Scope.WRITE_PRESENCE, Scope.ACCESS_PRESENCE };
 
-    public static enum FeatureArea {
+    public enum FeatureArea {
         AIR_CARE(AIR_CARE_SCOPES),
         WEATHER(WEATHER_SCOPES),
         ENERGY(THERMOSTAT_SCOPES),
@@ -234,7 +234,7 @@ public class NetatmoConstants {
     static final int[] RADIO_SIGNAL_LEVELS = new int[] { 90, 80, 70, 60 }; // Resp : low, medium, high, full
 
     // Thermostat definitions
-    public static enum SetpointMode {
+    public enum SetpointMode {
         @SerializedName("program")
         PROGRAM("program"),
         @SerializedName("away")
@@ -259,7 +259,7 @@ public class NetatmoConstants {
         }
     }
 
-    public static enum ThermostatZoneType {
+    public enum ThermostatZoneType {
         @SerializedName("0")
         DAY("0"),
         @SerializedName("1")
@@ -290,7 +290,7 @@ public class NetatmoConstants {
         OFF,
         @SerializedName("auto")
         AUTO,
-        UNKNOWN;
+        UNKNOWN
     }
 
     public enum EventCategory {
@@ -300,7 +300,7 @@ public class NetatmoConstants {
         ANIMAL,
         @SerializedName("vehicle")
         VEHICLE,
-        UNKNOWN;
+        UNKNOWN
     }
 
     public enum TrendDescription {
@@ -310,7 +310,7 @@ public class NetatmoConstants {
         STABLE,
         @SerializedName("down")
         DOWN,
-        UNKNOWN;
+        UNKNOWN
     }
 
     public enum VideoStatus {
@@ -320,7 +320,7 @@ public class NetatmoConstants {
         AVAILABLE,
         @SerializedName("deleted")
         DELETED,
-        UNKNOWN;
+        UNKNOWN
     }
 
     public enum SdCardStatus {
@@ -338,7 +338,7 @@ public class NetatmoConstants {
         SD_CARD_INCOMPATIBLE_SPEED,
         @SerializedName("7")
         SD_CARD_INSUFFICIENT_SPACE,
-        UNKNOWN;
+        UNKNOWN
     }
 
     public enum AlimentationStatus {
@@ -346,7 +346,7 @@ public class NetatmoConstants {
         ALIM_INCORRECT_POWER,
         @SerializedName("2")
         ALIM_CORRECT_POWER,
-        UNKNOWN;
+        UNKNOWN
     }
 
     public enum SirenStatus {
@@ -429,6 +429,6 @@ public class NetatmoConstants {
         @SerializedName("40")
         JSON_GIVEN_HAS_AN_INVALID_ENCODING,
         @SerializedName("41")
-        DEVICE_IS_UNREACHABLE;
+        DEVICE_IS_UNREACHABLE
     }
 }
index 91d7471a46d54741a38eaf21bfd7e2096f36e6fb..0a1ae833f982fefa334e58c0296d1e2c504c20ca 100644 (file)
@@ -63,9 +63,9 @@ public class NetatmoCommandExtension extends AbstractConsoleCommandExtension imp
             this.console = console;
             for (Thing thing : thingRegistry.getAll()) {
                 ThingHandler thingHandler = thing.getHandler();
-                if (thingHandler instanceof ApiBridgeHandler) {
+                if (thingHandler instanceof ApiBridgeHandler bridgeHandler) {
                     console.println("Account bridge: " + thing.getLabel());
-                    ((ApiBridgeHandler) thingHandler).identifyAllModulesAndApplyAction(this::printThing);
+                    bridgeHandler.identifyAllModulesAndApplyAction(this::printThing);
                 }
             }
         } else {
index 8ccef5f80f711c0b56ddb481df5d1466459a0b73..1700fcda7dc9b8a4771eb81e05b945c34d98bea7 100644 (file)
@@ -38,10 +38,10 @@ class NAObjectMapDeserializer implements JsonDeserializer<NAObjectMap<?>> {
             throws JsonParseException {
         ParameterizedType parameterized = (ParameterizedType) clazz;
         Type[] typeArguments = parameterized.getActualTypeArguments();
-        if (typeArguments.length > 0 && json instanceof JsonArray) {
+        if (typeArguments.length > 0 && json instanceof JsonArray jsonArray) {
             Type objectType = typeArguments[0];
             NAObjectMap<NAObject> result = new NAObjectMap<>();
-            ((JsonArray) json).forEach(item -> {
+            jsonArray.forEach(item -> {
                 result.put(context.deserialize(item, objectType));
             });
             return result;
index ab775ebc0d9fd519685fdc0422335c3943756ba3..728644064c5f48e6dbe77c57a20f17cf043f335e 100644 (file)
@@ -79,8 +79,8 @@ public class NetatmoDiscoveryService extends AbstractDiscoveryService implements
 
     @Override
     public void setThingHandler(ThingHandler handler) {
-        if (handler instanceof ApiBridgeHandler) {
-            this.handler = (ApiBridgeHandler) handler;
+        if (handler instanceof ApiBridgeHandler bridgeHandler) {
+            this.handler = bridgeHandler;
         }
     }
 
index d552d77c5518c56523f09410294d32ce76069a36..1a6c973692b21f6f59908e71266393f890fcb164 100644 (file)
@@ -130,8 +130,8 @@ public interface CommonInterface {
 
     default List<CommonInterface> getActiveChildren() {
         Thing thing = getThing();
-        if (thing instanceof Bridge) {
-            return ((Bridge) thing).getThings().stream().filter(Thing::isEnabled)
+        if (thing instanceof Bridge bridge) {
+            return bridge.getThings().stream().filter(Thing::isEnabled)
                     .filter(th -> th.getStatusInfo().getStatusDetail() != ThingStatusDetail.BRIDGE_OFFLINE)
                     .map(Thing::getHandler).filter(Objects::nonNull).map(CommonInterface.class::cast).toList();
         }
@@ -148,8 +148,7 @@ public interface CommonInterface {
     }
 
     default void setNewData(NAObject newData) {
-        if (newData instanceof NAThing) {
-            NAThing thingData = (NAThing) newData;
+        if (newData instanceof NAThing thingData) {
             if (getId().equals(thingData.getBridge())) {
                 getActiveChildren().stream().filter(child -> child.getId().equals(thingData.getId())).findFirst()
                         .ifPresent(child -> child.setNewData(thingData));
index c053956d91eb6f069b08b626978a071233020804..9e1c3b2b57d60cb1e522c3e58f13b8beb16e50e1 100644 (file)
@@ -82,7 +82,7 @@ public class MeasureCapability extends RestCapability<WeatherApi> {
                         MeasureClass.AS_SET.stream().filter(mc -> mc.apiDescriptor.equals(descriptor))
                                 .reduce((first, second) -> second)
                                 .ifPresent(mc -> measures.put(channel.getUID().getIdWithoutGroup(),
-                                        result instanceof ZonedDateTime ? toDateTimeType((ZonedDateTime) result)
+                                        result instanceof ZonedDateTime zonedDateTime ? toDateTimeType(zonedDateTime)
                                                 : result instanceof Double ? toQuantityType((Double) result, mc)
                                                         : UnDefType.UNDEF));
                     } catch (NetatmoException e) {
index e70194e446c74103e126ff4d21b53a00baa753ee..1e3e4eab8b5e3c1d7c0cfbbe97a47b75c8f7e87b 100644 (file)
@@ -45,12 +45,12 @@ public class BatteryChannelHelper extends ChannelHelper {
     protected @Nullable State internalGetProperty(String channelId, NAThing naThing, Configuration config) {
         int percent = -1;
         BatteryState batteryState = BatteryState.UNKNOWN;
-        if (naThing instanceof Module) {
-            percent = ((Module) naThing).getBatteryPercent();
-            batteryState = ((Module) naThing).getBatteryState();
-        } else if (naThing instanceof HomeStatusModule) {
-            percent = ((HomeStatusModule) naThing).getBatteryState().level;
-            batteryState = ((HomeStatusModule) naThing).getBatteryState();
+        if (naThing instanceof Module module) {
+            percent = module.getBatteryPercent();
+            batteryState = module.getBatteryState();
+        } else if (naThing instanceof HomeStatusModule homeStatusModule) {
+            percent = homeStatusModule.getBatteryState().level;
+            batteryState = homeStatusModule.getBatteryState();
         } else {
             return null;
         }
index 00223eca4279d05099621e783d1809d831a57162..66b667088c329f59117fb0e78c5b1cf0e652c98b 100644 (file)
@@ -56,8 +56,7 @@ public class CameraChannelHelper extends ChannelHelper {
 
     @Override
     protected @Nullable State internalGetProperty(String channelId, NAThing naThing, Configuration config) {
-        if (naThing instanceof HomeStatusModule) {
-            HomeStatusModule camera = (HomeStatusModule) naThing;
+        if (naThing instanceof HomeStatusModule camera) {
             boolean isMonitoring = OnOffType.ON.equals(camera.getMonitoring());
             switch (channelId) {
                 case CHANNEL_MONITORING:
index b3f167ef6b5437cdce8749ce412976b0d0e40975..93b3cd971b937253a7e1f5e418d78d5d80618f0c 100644 (file)
@@ -48,20 +48,19 @@ public abstract class ChannelHelper {
         State result = null;
         if (channelGroups.isEmpty() || (groupId != null && channelGroups.contains(groupId))) {
             NAObject localData = data;
-            if (localData instanceof HomeEvent) {
-                result = internalGetHomeEvent(channelId, groupId, (HomeEvent) localData);
+            if (localData instanceof HomeEvent homeEvent) {
+                result = internalGetHomeEvent(channelId, groupId, homeEvent);
                 if (result != null) {
                     return result;
                 }
             }
-            if (localData instanceof Event) {
-                result = internalGetEvent(channelId, (Event) localData);
+            if (localData instanceof Event event) {
+                result = internalGetEvent(channelId, event);
                 if (result != null) {
                     return result;
                 }
             }
-            if (localData instanceof NAThing) {
-                NAThing naThing = (NAThing) localData;
+            if (localData instanceof NAThing naThing) {
                 result = internalGetProperty(channelId, naThing, config);
                 if (result != null) {
                     return result;
index 49f76672d16d54e338712255d53ed3e49163e34a..42ae704ec18c7e588f4b07714eadf424a2bf773e 100644 (file)
@@ -40,8 +40,7 @@ public class DoorTagChannelHelper extends ChannelHelper {
 
     @Override
     protected @Nullable State internalGetProperty(String channelId, NAThing naThing, Configuration config) {
-        if (naThing instanceof HomeStatusModule) {
-            HomeStatusModule doorTag = (HomeStatusModule) naThing;
+        if (naThing instanceof HomeStatusModule doorTag) {
             if (CHANNEL_STATUS.equalsIgnoreCase(channelId)) {
                 return doorTag.getStatus().map(status -> (State) OpenClosedType.valueOf(status.toUpperCase()))
                         .orElse(UnDefType.UNDEF);
index 95066ee4b2b082d00d5997c15ac807b2cbcf8054..b8afdd8a84bc259b9e25caf717251e8d56ca9f47 100644 (file)
@@ -56,8 +56,7 @@ public class EventChannelHelper extends ChannelHelper {
 
     @Override
     public void setNewData(@Nullable NAObject data) {
-        if (data instanceof Event) {
-            Event event = (Event) data;
+        if (data instanceof Event event) {
             if (!event.getEventType().validFor(moduleType)) {
                 return;
             }
index 9545ee08efed200f99659eaf1be4e31dfa2d957a..10538b5c4fde344b2613052a7c83fe428c35d8b0 100644 (file)
@@ -42,10 +42,10 @@ public class LocationChannelHelper extends ChannelHelper {
     protected @Nullable State internalGetProperty(String channelId, NAThing naThing, Configuration config) {
         if (CHANNEL_VALUE.equals(channelId)) {
             State point = UnDefType.UNDEF;
-            if (naThing instanceof Home) {
-                point = ((Home) naThing).getLocation();
-            } else if (naThing instanceof Device) {
-                point = ((Device) naThing).getPlace().map(place -> place.getLocation()).orElse(point);
+            if (naThing instanceof Home home) {
+                point = home.getLocation();
+            } else if (naThing instanceof Device device) {
+                point = device.getPlace().map(place -> place.getLocation()).orElse(point);
             }
             return point;
         }
index 6ad93027707506552211de06d243ee3135f7a995..f94fb0c281c479fe13293941daf05a725cc57b4f 100644 (file)
@@ -41,8 +41,7 @@ public class PersonChannelHelper extends ChannelHelper {
 
     @Override
     protected @Nullable State internalGetProperty(String channelId, NAThing naThing, Configuration config) {
-        if (naThing instanceof HomeDataPerson) {
-            HomeDataPerson person = (HomeDataPerson) naThing;
+        if (naThing instanceof HomeDataPerson person) {
             switch (channelId) {
                 case CHANNEL_PERSON_AVATAR_URL:
                     return toStringType(person.getUrl().orElse(null));
@@ -50,8 +49,7 @@ public class PersonChannelHelper extends ChannelHelper {
                     return toRawType(person.getUrl().orElse(null));
             }
         }
-        if (naThing instanceof HomeStatusPerson) {
-            HomeStatusPerson person = (HomeStatusPerson) naThing;
+        if (naThing instanceof HomeStatusPerson person) {
             switch (channelId) {
                 case CHANNEL_PERSON_AT_HOME:
                     return OnOffType.from(person.atHome());
index 38e36b142074bd49577369fade05b36179f59b10..be01a675fbc92957fa6bc900d294bbc975a814f0 100644 (file)
@@ -40,8 +40,7 @@ public class RoomChannelHelper extends ChannelHelper {
 
     @Override
     protected @Nullable State internalGetObject(String channelId, NAObject naObject) {
-        if (naObject instanceof Room) {
-            Room room = (Room) naObject;
+        if (naObject instanceof Room room) {
             switch (channelId) {
                 case CHANNEL_ROOM_WINDOW_OPEN:
                     return room.hasOpenedWindows();
index 37b05ace3fa35a58734c7fcb1a2e5bd579308189..7d180146ed3f4db758471c65c99ff690d6178245 100644 (file)
@@ -40,8 +40,7 @@ public class SetpointChannelHelper extends ChannelHelper {
 
     @Override
     protected @Nullable State internalGetObject(String channelId, NAObject naObject) {
-        if (naObject instanceof Room) {
-            Room room = (Room) naObject;
+        if (naObject instanceof Room room) {
             switch (channelId) {
                 case CHANNEL_SETPOINT_MODE:
                     return toStringType(room.getSetpointMode().name());
index 6333e4e4e700da82e6d4601e7a70bf3eec7feff5..17b65a8ddc48eded21e481c99b87b2f892d5b383 100644 (file)
@@ -38,8 +38,8 @@ public class Therm1ChannelHelper extends ChannelHelper {
 
     @Override
     protected @Nullable State internalGetProperty(String channelId, NAThing naThing, Configuration config) {
-        return (naThing instanceof HomeStatusModule && CHANNEL_THERM_RELAY.equals(channelId))
-                ? ((HomeStatusModule) naThing).getBoilerStatus()
+        return (naThing instanceof HomeStatusModule homeStatusModule && CHANNEL_THERM_RELAY.equals(channelId))
+                ? homeStatusModule.getBoilerStatus()
                 : null;
     }
 }
index 8869b3e79c2c527e289186961e5bf58e87f99d49..40b56700ba28d34f92936250a9b67cec45a05e74 100644 (file)
@@ -44,8 +44,8 @@ public class ChannelTypeUtils {
 
     public static @Nullable QuantityType<?> commandToQuantity(Command command, MeasureClass measureClass) {
         Measure measureDef = measureClass.measureDefinition;
-        if (command instanceof QuantityType<?>) {
-            return ((QuantityType<?>) command).toUnit(measureDef.unit);
+        if (command instanceof QuantityType<?> quantityCommand) {
+            return quantityCommand.toUnit(measureDef.unit);
         }
         try {
             double value = Double.parseDouble(command.toString());
index 233214303b07f384c91789a7b97c84817a9bb2ad..d654d74bd2d5f64b3e82f6d66daf12a5b976c3ce 100644 (file)
@@ -48,24 +48,34 @@ public class NAObjectTest {
 
     @Test
     public void testWebHookEvent() throws NetatmoException {
-        String event = "{" + "  \"user_id\": \"5c810xxxxxxx45f4\"," + "  \"snapshot_id\": \"5d19bxxxxxx6380342\","
-                + "  \"snapshot_key\": \"f0134210ff83fxxxxxxxf770090a423d9a5\","
-                + "  \"snapshot_url\": \"https://netatmocameraimage.blob.core.windows.net/production/5d1xxxa5\","
-                + "  \"event_type\": \"movement\"," + "  \"camera_id\": \"70:exxxxxdd:a7\","
-                + "  \"device_id\": \"70:exxxxdd:a7\"," + "  \"home_id\": \"5c5d79xxxx08cd594\","
-                + "  \"home_name\": \"Boulogne Billan.\"," + "  \"event_id\": \"5d19baae369359e896380341\","
-                + "  \"message\": \"Boulogne Billan: Movement detected by Indoor Camera\","
-                + "  \"push_type\": \"NACamera-movement\"" + "}";
+        String event = """
+                {\
+                  "user_id": "5c810xxxxxxx45f4",\
+                  "snapshot_id": "5d19bxxxxxx6380342",\
+                  "snapshot_key": "f0134210ff83fxxxxxxxf770090a423d9a5",\
+                  "snapshot_url": "https://netatmocameraimage.blob.core.windows.net/production/5d1xxxa5",\
+                  "event_type": "movement",\
+                  "camera_id": "70:exxxxxdd:a7",\
+                  "device_id": "70:exxxxdd:a7",\
+                  "home_id": "5c5d79xxxx08cd594",\
+                  "home_name": "Boulogne Billan.",\
+                  "event_id": "5d19baae369359e896380341",\
+                  "message": "Boulogne Billan: Movement detected by Indoor Camera",\
+                  "push_type": "NACamera-movement"\
+                }\
+                """;
         WebhookEvent object = gson.deserialize(WebhookEvent.class, event);
         assertEquals(object.getEventType(), EventType.MOVEMENT);
     }
 
     @Test
     public void testDashboardData() throws NetatmoException {
-        String dashboard = "{time_utc:1623160336,Temperature:22.1,CO2:511,"
-                + "Humidity:66,Noise:36,Pressure:1026.1,AbsolutePressure:1009.3,"
-                + "min_temp:20,max_temp:22.4,date_max_temp:1623147932,"
-                + "Sdate_min_temp:1623125249,pressure_trend:\"nonexistent\",temp_trend:\"stable\"}";
+        String dashboard = """
+                {time_utc:1623160336,Temperature:22.1,CO2:511,\
+                Humidity:66,Noise:36,Pressure:1026.1,AbsolutePressure:1009.3,\
+                min_temp:20,max_temp:22.4,date_max_temp:1623147932,\
+                Sdate_min_temp:1623125249,pressure_trend:"nonexistent",temp_trend:"stable"}\
+                """;
         Dashboard object = gson.deserialize(Dashboard.class, dashboard);
         assertEquals(511, object.getCo2(), 0);
         assertEquals(TrendDescription.UNKNOWN, object.getPressureTrend());
index d31d7ec33f27fd6da49c1c4f5cef76732f308a75..56a635de6e7725fcb06598b90f7275cdf373b212 100644 (file)
@@ -37,8 +37,8 @@ public class NetworkActions implements ThingActions {
 
     @Override
     public void setThingHandler(@Nullable ThingHandler handler) {
-        if (handler instanceof NetworkHandler) {
-            this.handler = (NetworkHandler) handler;
+        if (handler instanceof NetworkHandler networkHandler) {
+            this.handler = networkHandler;
         }
     }
 
index 28b7e24dfebb8d29072cbcb5ca3420bdc480a590..08ab9c3a93033cb93152a8dd02955a9d112b7982 100644 (file)
@@ -181,7 +181,7 @@ public class NetworkDiscoveryService extends AbstractDiscoveryService implements
 
     public static ThingUID createServiceUID(String ip, int tcpPort) {
         // uid must not contains dots
-        return new ThingUID(SERVICE_DEVICE, ip.replace('.', '_') + "_" + String.valueOf(tcpPort));
+        return new ThingUID(SERVICE_DEVICE, ip.replace('.', '_') + "_" + tcpPort);
     }
 
     /**
index c6b0041645b0b9606657c0b816722b09591698f4..4151ec3a6d7430b55cbfd0a053697a20d8097683 100644 (file)
@@ -17,8 +17,9 @@ import static org.openhab.binding.network.internal.NetworkBindingConstants.*;
 import java.time.Instant;
 import java.time.ZonedDateTime;
 import java.util.Collection;
-import java.util.Collections;
+import java.util.List;
 import java.util.Map;
+import java.util.Set;
 import java.util.TimeZone;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -181,7 +182,7 @@ public class NetworkHandler extends BaseThingHandler
                 updateStatus(ThingStatus.OFFLINE, ThingStatusDetail.CONFIGURATION_ERROR, "No port configured!");
                 return;
             }
-            presenceDetection.setServicePorts(Collections.singleton(port));
+            presenceDetection.setServicePorts(Set.of(port));
         } else {
             // It does not harm to send an additional UDP packet to a device,
             // therefore we assume all ping devices are iOS devices. If this
@@ -239,7 +240,7 @@ public class NetworkHandler extends BaseThingHandler
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singletonList(NetworkActions.class);
+        return List.of(NetworkActions.class);
     }
 
     public void sendWakeOnLanPacketViaIp() {
index cf23c1e57bdf0d6101da2685d38a32d8cce90212..fe696b759292c1bdb0ad22c6658e3120cf43a55d 100644 (file)
@@ -208,11 +208,11 @@ public class NetworkUtils {
             return IpPingMethodEnum.JAVA_PING;
         } else {
             os = os.toLowerCase();
-            if (os.indexOf("win") >= 0) {
+            if (os.contains("win")) {
                 method = IpPingMethodEnum.WINDOWS_PING;
-            } else if (os.indexOf("mac") >= 0) {
+            } else if (os.contains("mac")) {
                 method = IpPingMethodEnum.MAC_OS_PING;
-            } else if (os.indexOf("nix") >= 0 || os.indexOf("nux") >= 0 || os.indexOf("aix") >= 0) {
+            } else if (os.contains("nix") || os.contains("nux") || os.contains("aix")) {
                 method = IpPingMethodEnum.IPUTILS_LINUX_PING;
             } else {
                 // We cannot estimate the command line for any other operating system and just return false
index 5bada538f9722a967c71b5f6a3b08df8a60a93a7..afae3f2614d2d75c74b617e8224a7db0931c2c8e 100644 (file)
@@ -20,8 +20,8 @@ import static org.mockito.Mockito.*;
 
 import java.io.IOException;
 import java.net.UnknownHostException;
-import java.util.Collections;
 import java.util.Optional;
+import java.util.Set;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.TimeUnit;
 import java.util.function.Consumer;
@@ -62,7 +62,7 @@ public class PresenceDetectionTest {
     @BeforeEach
     public void setUp() throws UnknownHostException {
         // Mock an interface
-        when(networkUtils.getInterfaceNames()).thenReturn(Collections.singleton("TESTinterface"));
+        when(networkUtils.getInterfaceNames()).thenReturn(Set.of("TESTinterface"));
         doReturn(ArpPingUtilEnum.IPUTILS_ARPING).when(networkUtils).determineNativeARPpingMethod(anyString());
         doReturn(IpPingMethodEnum.WINDOWS_PING).when(networkUtils).determinePingMethod();
 
@@ -77,7 +77,7 @@ public class PresenceDetectionTest {
         subject.setTimeout(300);
         subject.setUseDhcpSniffing(false);
         subject.setIOSDevice(true);
-        subject.setServicePorts(Collections.singleton(1010));
+        subject.setServicePorts(Set.of(1010));
         subject.setUseArpPing(true, "arping", ArpPingUtilEnum.IPUTILS_ARPING);
         subject.setUseIcmpPing(true);
 
index 7e90cd17a4fe9b729ee6684773958935d9ad85d6..a50e270fccc51929991a05d0ad6ff5fddd94b7b0 100644 (file)
@@ -17,7 +17,7 @@ import static org.hamcrest.MatcherAssert.assertThat;
 import static org.mockito.ArgumentMatchers.any;
 import static org.mockito.Mockito.*;
 
-import java.util.Collections;
+import java.util.List;
 
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
@@ -80,7 +80,7 @@ public class DiscoveryTest {
         // TCP device
         when(value.isPingReachable()).thenReturn(false);
         when(value.isTCPServiceReachable()).thenReturn(true);
-        when(value.getReachableTCPports()).thenReturn(Collections.singletonList(1010));
+        when(value.getReachableTCPports()).thenReturn(List.of(1010));
         d.partialDetectionResult(value);
         verify(listener).thingDiscovered(any(), result.capture());
         DiscoveryResult dresult = result.getValue();
index 59df392a2924e576c5d28caaacdab997088f7987..10c77b5712ac542980deb355e56e3417d5b31145 100644 (file)
@@ -58,9 +58,9 @@ public class NUTChannelTypeProvider implements ChannelTypeProvider, ThingHandler
 
     @Override
     public void setThingHandler(@Nullable final ThingHandler handler) {
-        if (handler instanceof NUTHandler) {
+        if (handler instanceof NUTHandler nutHandler) {
             this.handler = handler;
-            ((NUTHandler) handler).setChannelTypeProvider(this);
+            nutHandler.setChannelTypeProvider(this);
         }
     }
 
index 221d111022b7ef40dd18ed7be24c8b78ab668cf0..f06f628e530791cb9c16a811878acebc21d23cc8 100644 (file)
@@ -15,10 +15,10 @@ package org.openhab.binding.networkupstools.internal;
 import java.time.Duration;
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 import java.util.concurrent.ScheduledFuture;
 import java.util.concurrent.TimeUnit;
 
@@ -112,7 +112,7 @@ public class NUTHandler extends BaseThingHandler {
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(NUTChannelTypeProvider.class);
+        return Set.of(NUTChannelTypeProvider.class);
     }
 
     public void setChannelTypeProvider(final NUTChannelTypeProvider channelTypeProvider) {
index a3dccbbdf05e5d8beadf0461fb2f5f4cfc043144..bbcb5333e58b9b0cab67c8a6ea54127538cd0fc8 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.networkupstools.internal;
 
 import static org.openhab.binding.networkupstools.internal.NUTBindingConstants.THING_TYPE_UPS;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -35,7 +34,7 @@ import org.osgi.service.component.annotations.Component;
 @Component(configurationPid = "binding.networkupstools", service = ThingHandlerFactory.class)
 public class NUTHandlerFactory extends BaseThingHandlerFactory {
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_UPS);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_UPS);
 
     @Override
     public boolean supportsThingType(final ThingTypeUID thingTypeUID) {
index 4d12dc7fb60fa5d63dffe19a0368a1d4cba90ced..614d2a27cb895393c99df5df6d267806192da161 100644 (file)
@@ -278,7 +278,7 @@ public class SerialConnector extends NibeHeatPumpBaseConnector {
             int b;
             // wait first byte (blocking)
             if ((b = in.read()) > -1) {
-                byte d[] = new byte[] { (byte) b };
+                byte[] d = new byte[] { (byte) b };
                 os.write(d);
 
                 // read rest of the available bytes
index b3dc935abfc74e03d49c8f0cec7701c5b1273f31..40dcbd5c2fbcadd02f1a8468392a605ca4efb02c 100644 (file)
@@ -195,7 +195,6 @@ public class SimulatorConnector extends NibeHeatPumpBaseConnector {
                         logger.debug("Read queue: {}, Write queue: {}", readQueue.size(), writeQueue.size());
                     }
                     Thread.sleep(800);
-
                 } catch (InterruptedException e) {
                 }
             }
index 66cdb7d1e2d8fcb8055bef81b692f1289b358903..b3b8c6506e95f58370a6570317f350b07d3893ba 100644 (file)
@@ -98,7 +98,7 @@ public class UDPConnector extends NibeHeatPumpBaseConnector {
     public void sendDatagram(NibeHeatPumpMessage msg) throws NibeHeatPumpException {
         logger.debug("Sending request: {}", msg.toHexString());
 
-        byte data[] = msg.decodeMessage();
+        byte[] data = msg.decodeMessage();
         int port = -1;
 
         if (msg instanceof ModbusWriteRequestMessage) {
index ec112a0dfe94af408c9cfaf018a1b8e1e01556c6..a2b5b94afc8d35e30dbe122187b45abf41c37896 100644 (file)
@@ -377,10 +377,10 @@ public class NibeHeatPumpHandler extends BaseThingHandler implements NibeHeatPum
 
         if (command instanceof DecimalType || command instanceof QuantityType || command instanceof StringType) {
             BigDecimal v;
-            if (command instanceof DecimalType) {
-                v = ((DecimalType) command).toBigDecimal();
-            } else if (command instanceof QuantityType) {
-                v = ((QuantityType) command).toBigDecimal();
+            if (command instanceof DecimalType decimalCommand) {
+                v = decimalCommand.toBigDecimal();
+            } else if (command instanceof QuantityType quantityCommand) {
+                v = quantityCommand.toBigDecimal();
             } else {
                 v = new BigDecimal(command.toString());
             }
@@ -491,12 +491,12 @@ public class NibeHeatPumpHandler extends BaseThingHandler implements NibeHeatPum
 
             updateStatus(ThingStatus.ONLINE);
 
-            if (msg instanceof ModbusReadResponseMessage) {
-                handleReadResponseMessage((ModbusReadResponseMessage) msg);
-            } else if (msg instanceof ModbusWriteResponseMessage) {
-                handleWriteResponseMessage((ModbusWriteResponseMessage) msg);
-            } else if (msg instanceof ModbusDataReadOutMessage) {
-                handleDataReadOutMessage((ModbusDataReadOutMessage) msg);
+            if (msg instanceof ModbusReadResponseMessage readResponseMessage) {
+                handleReadResponseMessage(readResponseMessage);
+            } else if (msg instanceof ModbusWriteResponseMessage writeResponseMessage) {
+                handleWriteResponseMessage(writeResponseMessage);
+            } else if (msg instanceof ModbusDataReadOutMessage dataReadOutMessage) {
+                handleDataReadOutMessage(dataReadOutMessage);
             } else {
                 logger.debug("Received unknown message: {}", msg.toString());
             }
@@ -567,7 +567,7 @@ public class NibeHeatPumpHandler extends BaseThingHandler implements NibeHeatPum
                 logger.trace("Value did not change, ignoring update");
             } else {
                 final String channelPrefix = (variableInfo.type == Type.SETTING ? "setting#" : "sensor#");
-                final String channelId = channelPrefix + String.valueOf(coilAddress);
+                final String channelId = channelPrefix + coilAddress;
                 final String acceptedItemType = thing.getChannel(channelId).getAcceptedItemType();
 
                 logger.trace("AcceptedItemType for channel {} = {}", channelId, acceptedItemType);
index 7d516e87b4811a02de8d32572f8e6c3b6199104f..c6f726e32f6e84404363f1e58120439c0c28bb14 100644 (file)
@@ -81,37 +81,24 @@ public class NibeHeatPumpProtocolTest {
         //@formatter:off
         final String strTestData =
                 // RMU40 message, acknowledge should be send
-                "5C001962189600E1010200000000800000000000020914340001000005B8"
-                // RMU40 message, CRC failure, negative acknowledge should be send
-                + "5C001962189600E1010200000000800000000000020914340001000005B9"
-                // MODBUS40 write request
-                + "5C00206B004B"
-                // nonsense
-                + "3EAABB"
-                // MODBUS40 read request
-                + "5C0020690049"
-                // nonsense
-                + "F0561939F6"
-                // MODBUS40 data read out, acknowledge should be send
-                + "5C00206850449C9600489C88014C9C2D014E9CCF004D9CE0014F9C3200509C0400519C8201529C6B02569C3E00C9AF000001A8F600FDA77E02FAA90F0098A9DC27FFFF0000A0A93A04FFFF00009CA9FD19FFFF000081"
-                // nonsense
-                + "F0349823"
-                // MODBUS40 data read out, CRC failure, negative acknowledge should be send
-                + "5C00206850449C9600489C88014C9C2D014E9CCF004D9CE0014F9C3200509C0400519C8201529C6B02569C3E00C9AF000001A8F600FDA77E02FAA90F0098A9DC27FFFF0000A0A93A04FFFF00009CA9FD19FFFF000080"
-                // RMU40 message, acknowledge should be send
-                + "5C001962189600DF01020000000080000000000002091434000100000586"
-                // nonsense
-                + "123490"
-                // unknown RMU40 message, acknowledge should be send
-                + "5C0019600079"
-                // MODBUS40 data read out, special len, acknowledge should be send
-                + "5C00206851449C2500489CFC004C9CF1004E9CC7014D9C0B024F9C2500509C3300519C0B01529C5C5C01569C3100C9AF000001A80C01FDA716FAFAA9070098A91B1BFFFF0000A0A9CA02FFFF00009CA99212FFFF0000BE"
-                // MODBUS40 data read out, special len, acknowledge should be send
-                + "5C00206852449C2500489CFE004C9CF2004E9CD4014D9CFB014F9C2500509C3700519C0D01529C5C5C01569C3200C9AF000001A80C01FDA712FAFAA9070098A95C5C1BFFFF0000A0A9D102FFFF00009CA9B412FFFF00007F"
-                // MODBUS40 data read out, special checksum, acknowledge should be send
-                + "5C00206850449C2600489CF6004C9CF1004E9CD6014D9C0C024F9C4500509C3F00519CF100529C0401569CD500C9AF000001A80C01FDA799FAFAA9020098A91A1BFFFF0000A0A9CA02FFFF00009CA99212FFFF0000C5"
-                // 16-bit address (e.g. model F2120 heatpumps), acknowledge should be send
-                + "5C41C9F7007F";
+                """
+                5C001962189600E1010200000000800000000000020914340001000005B8\
+                5C001962189600E1010200000000800000000000020914340001000005B9\
+                5C00206B004B\
+                3EAABB\
+                5C0020690049\
+                F0561939F6\
+                5C00206850449C9600489C88014C9C2D014E9CCF004D9CE0014F9C3200509C0400519C8201529C6B02569C3E00C9AF000001A8F600FDA77E02FAA90F0098A9DC27FFFF0000A0A93A04FFFF00009CA9FD19FFFF000081\
+                F0349823\
+                5C00206850449C9600489C88014C9C2D014E9CCF004D9CE0014F9C3200509C0400519C8201529C6B02569C3E00C9AF000001A8F600FDA77E02FAA90F0098A9DC27FFFF0000A0A93A04FFFF00009CA9FD19FFFF000080\
+                5C001962189600DF01020000000080000000000002091434000100000586\
+                123490\
+                5C0019600079\
+                5C00206851449C2500489CFC004C9CF1004E9CC7014D9C0B024F9C2500509C3300519C0B01529C5C5C01569C3100C9AF000001A80C01FDA716FAFAA9070098A91B1BFFFF0000A0A9CA02FFFF00009CA99212FFFF0000BE\
+                5C00206852449C2500489CFE004C9CF2004E9CD4014D9CFB014F9C2500509C3700519C0D01529C5C5C01569C3200C9AF000001A80C01FDA712FAFAA9070098A95C5C1BFFFF0000A0A9D102FFFF00009CA9B412FFFF00007F\
+                5C00206850449C2600489CF6004C9CF1004E9CD6014D9C0C024F9C4500509C3F00519CF100529C0401569CD500C9AF000001A80C01FDA799FAFAA9020098A91A1BFFFF0000A0A9CA02FFFF00009CA99212FFFF0000C5\
+                5C41C9F7007F\
+                """;
         //@formatter:on
 
         // create byte data from hex string
index dfed831effd01d0bd541c5fb833e918c6f3e0646..71a50b82ebb3d1f88fa52423e28d987634c3f0b7 100644 (file)
@@ -56,10 +56,10 @@ public class UpdateSetting extends AbstractUplinkCommandCallback implements Nibe
 
     private String extractValue(Command command) {
         // this is necessary because we must not send the unit to the nibe backend
-        if (command instanceof QuantityType<?>) {
-            return String.valueOf(((QuantityType<?>) command).doubleValue());
-        } else if (command instanceof OnOffType) {
-            return ChannelUtil.mapValue(channel, (OnOffType) command);
+        if (command instanceof QuantityType<?> quantityCommand) {
+            return String.valueOf(quantityCommand.doubleValue());
+        } else if (command instanceof OnOffType onOffCommand) {
+            return ChannelUtil.mapValue(channel, onOffCommand);
         } else {
             return command.toString();
         }
index b8e8047e3625ed782e663c93c472387ac9322fce..9fe78ef929a6cc93042140456770beb160a75f0b 100644 (file)
@@ -14,9 +14,9 @@ package org.openhab.binding.nikobus.internal.discovery;
 
 import static org.openhab.binding.nikobus.internal.NikobusBindingConstants.*;
 
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
+import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
 import org.eclipse.jdt.annotation.Nullable;
@@ -44,7 +44,7 @@ public class NikobusDiscoveryService extends AbstractDiscoveryService implements
     private @Nullable NikobusPcLinkHandler bridgeHandler;
 
     public NikobusDiscoveryService() throws IllegalArgumentException {
-        super(Collections.singleton(THING_TYPE_PUSH_BUTTON), 0);
+        super(Set.of(THING_TYPE_PUSH_BUTTON), 0);
     }
 
     @Override
@@ -92,8 +92,8 @@ public class NikobusDiscoveryService extends AbstractDiscoveryService implements
 
     @Override
     public void setThingHandler(ThingHandler handler) {
-        if (handler instanceof NikobusPcLinkHandler) {
-            bridgeHandler = (NikobusPcLinkHandler) handler;
+        if (handler instanceof NikobusPcLinkHandler pcLinkHandler) {
+            bridgeHandler = pcLinkHandler;
         }
     }
 
index f143ef16a69d2a60a44227801efc50424606ace0..967b34a84a3f4f1846f9729c3f10303cfd40d659 100644 (file)
@@ -54,8 +54,8 @@ public class NikobusDimmerModuleHandler extends NikobusSwitchModuleHandler {
 
     @Override
     protected int valueFromCommand(String channelId, Command command) {
-        if (command instanceof PercentType) {
-            return Math.round(((PercentType) command).floatValue() / 100f * 255f);
+        if (command instanceof PercentType percentCommand) {
+            return Math.round(percentCommand.floatValue() / 100f * 255f);
         }
 
         return super.valueFromCommand(channelId, command);
index 3a021c386def46e779aad43cba4a7b93f73cd1ff..af25d49d3c043767a86a163eeebc8d4d2f94bddd 100644 (file)
@@ -22,6 +22,7 @@ import java.util.HashMap;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 import java.util.concurrent.ScheduledFuture;
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.TimeoutException;
@@ -120,7 +121,7 @@ public class NikobusPcLinkHandler extends BaseBridgeHandler {
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(NikobusDiscoveryService.class);
+        return Set.of(NikobusDiscoveryService.class);
     }
 
     private void processReceivedValue(byte value) {
index 1b58951433386c6c58e1f776688809b8baae3c23..d03283ebe98e6f847e8774b890c060dc8a8341e2 100644 (file)
@@ -195,8 +195,8 @@ public class NikobusPushButtonHandler extends NikobusBaseThingHandler {
         }
 
         ThingHandler thingHandler = thing.getHandler();
-        if (thingHandler instanceof NikobusModuleHandler) {
-            return (NikobusModuleHandler) thingHandler;
+        if (thingHandler instanceof NikobusModuleHandler nikobusModuleHandler) {
+            return nikobusModuleHandler;
         }
         return null;
     }
@@ -256,10 +256,10 @@ public class NikobusPushButtonHandler extends NikobusBaseThingHandler {
         }
 
         SwitchModuleGroup getGroup() {
-            if (getSegment(2).equals("1")) {
+            if ("1".equals(getSegment(2))) {
                 return FIRST;
             }
-            if (getSegment(2).equals("2")) {
+            if ("2".equals(getSegment(2))) {
                 return SECOND;
             }
             throw new IllegalArgumentException("Unexpected group found " + getSegment(2));
index a33e43dd97e15ddf7f4d0566726e68687a687bf4..7e10de7ace2d64e9d3710f9c8c46c37eea03b166 100644 (file)
@@ -87,13 +87,12 @@ public class NikobusRollershutterModuleHandler extends NikobusModuleHandler {
     @Override
     protected int valueFromCommand(String channelId, Command command) {
         Optional<PositionEstimator> positionEstimator = getPositionEstimator(channelId);
-        if (command instanceof DecimalType) {
-            return positionEstimator.map(estimator -> {
-                return estimator.processSetPosition(((DecimalType) command).intValue());
-            }).orElseThrow(() -> {
-                throw new IllegalArgumentException(
-                        "Received position request but no estimation configured for channel " + channelId);
-            });
+        if (command instanceof DecimalType decimalCommand) {
+            return positionEstimator.map(estimator -> estimator.processSetPosition(decimalCommand.intValue()))
+                    .orElseThrow(() -> {
+                        throw new IllegalArgumentException(
+                                "Received position request but no estimation configured for channel " + channelId);
+                    });
         }
         int result = convertCommandToValue(channelId, command);
         positionEstimator.ifPresent(PositionEstimator::cancelStopMovement);
index 57361398cb4c1040fce3b9dc002befd93cbfc568..7ecd9167dfabeb70b319ab2482a58715a039e8c4 100644 (file)
@@ -201,8 +201,8 @@ public class NikoHomeControlDiscoveryService extends AbstractDiscoveryService im
 
     @Override
     public void setThingHandler(@Nullable ThingHandler handler) {
-        if (handler instanceof NikoHomeControlBridgeHandler) {
-            this.handler = (NikoHomeControlBridgeHandler) handler;
+        if (handler instanceof NikoHomeControlBridgeHandler homeControlBridgeHandler) {
+            this.handler = homeControlBridgeHandler;
             bridgeUID = handler.getThing().getUID();
         }
     }
index 30f317afea033063836ca1039f45abef9fca7eaf..520d9a5e4fa71e7bda2f32837f5657026b7a9303 100644 (file)
@@ -125,9 +125,8 @@ public class NikoHomeControlActionHandler extends BaseThingHandler implements Nh
             return;
         }
 
-        if (command instanceof OnOffType) {
-            OnOffType s = (OnOffType) command;
-            if (OnOffType.OFF.equals(s)) {
+        if (command instanceof OnOffType onOffCommand) {
+            if (OnOffType.OFF.equals(onOffCommand)) {
                 nhcAction.execute(NHCOFF);
             } else {
                 nhcAction.execute(NHCON);
@@ -142,18 +141,16 @@ public class NikoHomeControlActionHandler extends BaseThingHandler implements Nh
             return;
         }
 
-        if (command instanceof OnOffType) {
-            OnOffType s = (OnOffType) command;
-            if (OnOffType.OFF.equals(s)) {
+        if (command instanceof OnOffType onOffCommand) {
+            if (OnOffType.OFF.equals(onOffCommand)) {
                 nhcAction.execute(NHCOFF);
             } else {
                 nhcAction.execute(NHCON);
             }
-        } else if (command instanceof IncreaseDecreaseType) {
-            IncreaseDecreaseType s = (IncreaseDecreaseType) command;
+        } else if (command instanceof IncreaseDecreaseType increaseDecreaseCommand) {
             int currentValue = nhcAction.getState();
             int newValue;
-            if (IncreaseDecreaseType.INCREASE.equals(s)) {
+            if (IncreaseDecreaseType.INCREASE.equals(increaseDecreaseCommand)) {
                 newValue = currentValue + stepValue;
                 // round down to step multiple
                 newValue = newValue - newValue % stepValue;
@@ -168,12 +165,11 @@ public class NikoHomeControlActionHandler extends BaseThingHandler implements Nh
                     nhcAction.execute(Integer.toString(newValue));
                 }
             }
-        } else if (command instanceof PercentType) {
-            PercentType p = (PercentType) command;
-            if (PercentType.ZERO.equals(p)) {
+        } else if (command instanceof PercentType percentCommand) {
+            if (PercentType.ZERO.equals(percentCommand)) {
                 nhcAction.execute(NHCOFF);
             } else {
-                nhcAction.execute(Integer.toString(p.intValue()));
+                nhcAction.execute(Integer.toString(percentCommand.intValue()));
             }
         }
     }
@@ -185,18 +181,17 @@ public class NikoHomeControlActionHandler extends BaseThingHandler implements Nh
             return;
         }
 
-        if (command instanceof UpDownType) {
-            UpDownType s = (UpDownType) command;
-            if (UpDownType.UP.equals(s)) {
+        if (command instanceof UpDownType upDownCommand) {
+            if (UpDownType.UP.equals(upDownCommand)) {
                 nhcAction.execute(!invert ? NHCUP : NHCDOWN);
             } else {
                 nhcAction.execute(!invert ? NHCDOWN : NHCUP);
             }
         } else if (command instanceof StopMoveType) {
             nhcAction.execute(NHCSTOP);
-        } else if (command instanceof PercentType) {
-            PercentType p = (PercentType) command;
-            nhcAction.execute(!invert ? Integer.toString(100 - p.intValue()) : Integer.toString(p.intValue()));
+        } else if (command instanceof PercentType percentCommand) {
+            nhcAction.execute(!invert ? Integer.toString(100 - percentCommand.intValue())
+                    : Integer.toString(percentCommand.intValue()));
         }
     }
 
@@ -300,8 +295,7 @@ public class NikoHomeControlActionHandler extends BaseThingHandler implements Nh
             properties.put("timeToClose", String.valueOf(nhcAction.getCloseTime()));
         }
 
-        if (nhcAction instanceof NhcAction2) {
-            NhcAction2 action = (NhcAction2) nhcAction;
+        if (nhcAction instanceof NhcAction2 action) {
             properties.put(PROPERTY_DEVICE_TYPE, action.getDeviceType());
             properties.put(PROPERTY_DEVICE_TECHNOLOGY, action.getDeviceTechnology());
             properties.put(PROPERTY_DEVICE_MODEL, action.getDeviceModel());
index 571715634ce15bb2459b4d53818e996c5d55c48f..7849c65c8acb45817b83311332f9d53709a79e57 100644 (file)
@@ -163,8 +163,7 @@ public class NikoHomeControlEnergyMeterHandler extends BaseThingHandler implemen
     private void updateProperties(NhcEnergyMeter nhcEnergyMeter) {
         Map<String, String> properties = new HashMap<>();
 
-        if (nhcEnergyMeter instanceof NhcEnergyMeter2) {
-            NhcEnergyMeter2 energyMeter = (NhcEnergyMeter2) nhcEnergyMeter;
+        if (nhcEnergyMeter instanceof NhcEnergyMeter2 energyMeter) {
             properties.put(PROPERTY_DEVICE_TYPE, energyMeter.getDeviceType());
             properties.put(PROPERTY_DEVICE_TECHNOLOGY, energyMeter.getDeviceTechnology());
             properties.put(PROPERTY_DEVICE_MODEL, energyMeter.getDeviceModel());
index 8493da617c63537046719b2186d1c239e369928a..59fb5b078aae9635f257008ec1a260f6f9fe6a88 100644 (file)
@@ -110,8 +110,8 @@ public class NikoHomeControlThermostatHandler extends BaseThingHandler implement
                 updateStatus(ThingStatus.ONLINE);
                 break;
             case CHANNEL_MODE:
-                if (command instanceof DecimalType) {
-                    nhcThermostat.executeMode(((DecimalType) command).intValue());
+                if (command instanceof DecimalType decimalCommand) {
+                    nhcThermostat.executeMode(decimalCommand.intValue());
                 }
                 updateStatus(ThingStatus.ONLINE);
                 break;
@@ -128,20 +128,20 @@ public class NikoHomeControlThermostatHandler extends BaseThingHandler implement
                 if (time <= 0) {
                     time = overruleTime;
                 }
-                if (command instanceof QuantityType<?>) {
-                    QuantityType<?> setpoint = ((QuantityType<?>) command).toUnit(CELSIUS);
+                if (command instanceof QuantityType<?> quantityCommand) {
+                    QuantityType<?> setpoint = quantityCommand.toUnit(CELSIUS);
                     if (setpoint != null) {
                         nhcThermostat.executeOverrule(Math.round(setpoint.floatValue() * 10), time);
                     }
-                } else if (command instanceof DecimalType) {
-                    BigDecimal setpoint = ((DecimalType) command).toBigDecimal();
+                } else if (command instanceof DecimalType decimalCommand) {
+                    BigDecimal setpoint = decimalCommand.toBigDecimal();
                     nhcThermostat.executeOverrule(Math.round(setpoint.floatValue() * 10), time);
                 }
                 updateStatus(ThingStatus.ONLINE);
                 break;
             case CHANNEL_OVERRULETIME:
-                if (command instanceof DecimalType) {
-                    int overruletime = ((DecimalType) command).intValue();
+                if (command instanceof DecimalType decimalCommand) {
+                    int overruletime = decimalCommand.intValue();
                     int overrule = nhcThermostat.getOverrule();
                     if (overruletime <= 0) {
                         overruletime = 0;
@@ -244,8 +244,7 @@ public class NikoHomeControlThermostatHandler extends BaseThingHandler implement
     private void updateProperties(NhcThermostat nhcThermostat) {
         Map<String, String> properties = new HashMap<>();
 
-        if (nhcThermostat instanceof NhcThermostat2) {
-            NhcThermostat2 thermostat = (NhcThermostat2) nhcThermostat;
+        if (nhcThermostat instanceof NhcThermostat2 thermostat) {
             properties.put(PROPERTY_DEVICE_TYPE, thermostat.getDeviceType());
             properties.put(PROPERTY_DEVICE_TECHNOLOGY, thermostat.getDeviceTechnology());
             properties.put(PROPERTY_DEVICE_MODEL, thermostat.getDeviceModel());
index 1b2b4d2fbb410171cd59567a8c9a60bb876adfee..6d2fa68e3bb09007b9712f43816fb172f2d5b5f2 100644 (file)
@@ -23,7 +23,7 @@ import org.eclipse.jdt.annotation.NonNullByDefault;
 public class NikoHomeControlConstants {
 
     // Action types abstracted from NhcI and NhcII action types
-    public static enum ActionType {
+    public enum ActionType {
         TRIGGER,
         RELAY,
         DIMMER,
index ab4f6c57a2b45404ded962540c7c8547557c0310..28bc58a04b8a1b2b998765369a15f436b2827e31 100644 (file)
@@ -62,7 +62,7 @@ public class NhcMqttConnection2 implements MqttActionCallback {
     private MqttMessageSubscriber messageSubscriber;
     private MqttConnectionObserver connectionObserver;
 
-    private TrustManager trustManagers[];
+    private TrustManager[] trustManagers;
     private String clientId;
 
     private volatile String cocoAddress = "";
index 29df9e1164f924f57d88bc6b376177baf27b9a77..b87f7c6fcfa9dc2f988c5a5800aab36761def8e4 100644 (file)
@@ -99,11 +99,10 @@ public class NoboHubBridgeHandler extends BaseBridgeHandler {
 
         if (CHANNEL_HUB_ACTIVE_OVERRIDE_NAME.equals(channelUID.getId())) {
             if (ht != null && h != null) {
-                if (command instanceof StringType) {
-                    StringType strCommand = (StringType) command;
-                    logger.debug("Changing override for hub {} to {}", channelUID, strCommand);
+                if (command instanceof StringType stringCommand) {
+                    logger.debug("Changing override for hub {} to {}", channelUID, stringCommand);
                     try {
-                        OverrideMode mode = OverrideMode.getByName(strCommand.toFullString());
+                        OverrideMode mode = OverrideMode.getByName(stringCommand.toFullString());
                         ht.getConnection().setOverride(h, mode);
                     } catch (NoboCommunicationException nce) {
                         logger.debug("Failed setting override mode", nce);
index 969e060dba85ca93ca44f0e07ca392904f04bc63..9398af4a157ceba173e991197acd76439185eef4 100644 (file)
@@ -92,8 +92,8 @@ public class NoboHubHandlerFactory extends BaseThingHandlerFactory {
 
     @Override
     protected void removeHandler(ThingHandler thingHandler) {
-        if (thingHandler instanceof NoboHubBridgeHandler) {
-            unregisterDiscoveryService((NoboHubBridgeHandler) thingHandler);
+        if (thingHandler instanceof NoboHubBridgeHandler bridgeHandler) {
+            unregisterDiscoveryService(bridgeHandler);
         }
     }
 
index fc3dee94802c527cadf41c70b3122fac3e7ec24c..5af6c6a1baff3fc7572c3beda6e3ca10dd495296 100644 (file)
@@ -166,8 +166,7 @@ public class ZoneHandler extends BaseThingHandler {
         if (CHANNEL_ZONE_COMFORT_TEMPERATURE.equals(channelUID.getId())) {
             Zone zone = getZone();
             if (zone != null) {
-                if (command instanceof DecimalType) {
-                    DecimalType comfortTemp = (DecimalType) command;
+                if (command instanceof DecimalType comfortTemp) {
                     logger.debug("Set comfort temp for zone {} to {}", zone.getName(), comfortTemp.doubleValue());
                     zone.setComfortTemperature(comfortTemp.intValue());
                     sendCommand(zone.generateCommandString("U00"));
@@ -180,8 +179,7 @@ public class ZoneHandler extends BaseThingHandler {
         if (CHANNEL_ZONE_ECO_TEMPERATURE.equals(channelUID.getId())) {
             Zone zone = getZone();
             if (zone != null) {
-                if (command instanceof DecimalType) {
-                    DecimalType ecoTemp = (DecimalType) command;
+                if (command instanceof DecimalType ecoTemp) {
                     logger.debug("Set eco temp for zone {} to {}", zone.getName(), ecoTemp.doubleValue());
                     zone.setEcoTemperature(ecoTemp.intValue());
                     sendCommand(zone.generateCommandString("U00"));
@@ -193,8 +191,7 @@ public class ZoneHandler extends BaseThingHandler {
         if (CHANNEL_ZONE_ACTIVE_WEEK_PROFILE.equals(channelUID.getId())) {
             Zone zone = getZone();
             if (zone != null) {
-                if (command instanceof DecimalType) {
-                    DecimalType weekProfileId = (DecimalType) command;
+                if (command instanceof DecimalType weekProfileId) {
                     logger.debug("Set week profile for zone {} to {}", zone.getName(), weekProfileId);
                     zone.setWeekProfile(weekProfileId.intValue());
                     sendCommand(zone.generateCommandString("U00"));
index 9c9594ffc6d407555c83249736aa6c4191800d14..e534ef2124bf1f10553f6588311f0ae601aca3a5 100644 (file)
@@ -82,8 +82,8 @@ public class NoboHubDiscoveryService extends AbstractDiscoveryService implements
 
     @Override
     public void setThingHandler(ThingHandler thingHandler) {
-        if (thingHandler instanceof NoboHubBridgeHandler) {
-            this.hubBridgeHandler = (NoboHubBridgeHandler) thingHandler;
+        if (thingHandler instanceof NoboHubBridgeHandler bridgeHandler) {
+            this.hubBridgeHandler = bridgeHandler;
         }
     }
 
index 463582afede573ad3626e0162ed01464775e3995..6beeb16c13e6f8200ff1a378867a6b63a313b02e 100644 (file)
@@ -51,7 +51,7 @@ public class Hub {
     }
 
     public static Hub fromH05(String h05) throws NoboDataException {
-        String parts[] = h05.split(" ", 8);
+        String[] parts = h05.split(" ", 8);
 
         if (parts.length != 8) {
             throw new NoboDataException(
index 952fa1e2a6e7d6de5a28ab43ba844cb16e6581a1..57d6f99e4e29d14e2ccbc1055c11516bf1bb0e6e 100644 (file)
@@ -31,7 +31,7 @@ public final class Temperature {
     }
 
     public static Temperature fromY02(String y02) throws NoboDataException {
-        String parts[] = y02.split(" ", 3);
+        String[] parts = y02.split(" ", 3);
         if (parts.length != 3) {
             throw new NoboDataException(
                     String.format("Unexpected number of parts from hub on Y02 call: %d", parts.length));
index 53a89302c1c7764cfb78c9173a67b95c3e7a9004..f40fda15dee8fb9c4b3d4a29cafdd3f46bc9eafa 100644 (file)
@@ -43,7 +43,7 @@ public final class Zone {
     }
 
     public static Zone fromH01(String h01) throws NoboDataException {
-        String parts[] = h01.split(" ", 8);
+        String[] parts = h01.split(" ", 8);
 
         if (parts.length != 8) {
             throw new NoboDataException(
index daca57696fb9e54c4d2737d308da9339d1cf7452..8e41d8d7ca3a24ef16eabe02963cb8f3e7bcac39 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.novafinedust.internal;
 
 import static org.openhab.binding.novafinedust.internal.NovaFineDustBindingConstants.THING_TYPE_SDS011;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -39,7 +38,7 @@ import org.osgi.service.component.annotations.Reference;
 @Component(configurationPid = "binding.novafinedust", service = ThingHandlerFactory.class)
 public class NovaFineDustHandlerFactory extends BaseThingHandlerFactory {
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_SDS011);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_SDS011);
 
     private final SerialPortManager serialPortManager;
 
index 77060d1030150579020033c4e44564f8496c9315..0383c165c60c99ddf969fffb692d0c499cf9951b 100644 (file)
@@ -80,7 +80,6 @@ public class SDS011Communicator {
      */
     public void initialize(WorkMode mode, Duration interval)
             throws PortInUseException, TooManyListenersException, IOException, UnsupportedCommOperationException {
-
         logger.trace("Initializing with mode={}, interval={}", mode, interval);
 
         SerialPort localSerialPort = portId.open(thingHandler.getThing().getUID().toString(), 2000);
@@ -246,8 +245,7 @@ public class SDS011Communicator {
     private boolean doRead() throws IOException {
         SensorReply reply = readReply();
         logger.trace("doRead(): Read reply={}", reply);
-        if (reply instanceof SensorMeasuredDataReply) {
-            SensorMeasuredDataReply sensorData = (SensorMeasuredDataReply) reply;
+        if (reply instanceof SensorMeasuredDataReply sensorData) {
             logger.trace("We received sensor data");
             if (sensorData.isValidData()) {
                 logger.trace("Sensor data is valid => updating channels");
index 2a5beb5c84e0125f8a0110e2e48ffb3755182e91..afb5f65a22b757543d500bc814ab0c8f9e982ca4 100644 (file)
@@ -40,8 +40,7 @@ public class SensorFirmwareReply extends SensorReply {
      * @return firmware of the sensor formatted as YY-MM-DD
      */
     public String getFirmware() {
-        String firmware = year + "-" + month + "-" + day;
-        return firmware;
+        return year + "-" + month + "-" + day;
     }
 
     @Override
index 4f36e1d285ded8e8105d79c0ec846e83629bcc2e..a71e5fe01e5ed732fcc5ea16124610a0cc5a22c9 100644 (file)
@@ -12,7 +12,6 @@
  */
 package org.openhab.binding.ntp.internal;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -46,5 +45,5 @@ public class NtpBindingConstants {
     public static final String PROPERTY_DATE_TIME_FORMAT = "DateTimeFormat";
     public static final String PROPERTY_NTP_SERVER_PORT = "serverPort";
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_NTP);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_NTP);
 }
index 12e9a1f1e15d366158b92b7b12d461333ae29362..6bfe90a0c052a3b7459a38b4fc7103dcbc3723ed 100644 (file)
@@ -101,8 +101,8 @@ public class NukiHandlerFactory extends BaseThingHandlerFactory {
     public void unregisterHandler(Thing thing) {
         super.unregisterHandler(thing);
         ThingHandler handler = thing.getHandler();
-        if (handler instanceof NukiBridgeHandler) {
-            nukiApiServlet.remove((NukiBridgeHandler) handler);
+        if (handler instanceof NukiBridgeHandler bridgeHandler) {
+            nukiApiServlet.remove(bridgeHandler);
         }
     }
 
index d441d7bc653910c15b392429dc7f050e9c5651e4..f3acb9afc25328f758c2d9ff13fe2f524e358221 100644 (file)
@@ -12,7 +12,6 @@
  */
 package org.openhab.binding.nuki.internal.constants;
 
-import java.util.Collections;
 import java.util.Set;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
@@ -38,9 +37,9 @@ public class NukiBindingConstants {
     public static final ThingTypeUID THING_TYPE_SMARTLOCK = new ThingTypeUID(BINDING_ID, "smartlock");
     public static final ThingTypeUID THING_TYPE_OPENER = new ThingTypeUID(BINDING_ID, "opener");
 
-    public static final Set<ThingTypeUID> THING_TYPE_BRIDGE_UIDS = Collections.singleton(THING_TYPE_BRIDGE);
-    public static final Set<ThingTypeUID> THING_TYPE_SMARTLOCK_UIDS = Collections.singleton(THING_TYPE_SMARTLOCK);
-    public static final Set<ThingTypeUID> THING_TYPE_OPENER_UIDS = Collections.singleton(THING_TYPE_OPENER);
+    public static final Set<ThingTypeUID> THING_TYPE_BRIDGE_UIDS = Set.of(THING_TYPE_BRIDGE);
+    public static final Set<ThingTypeUID> THING_TYPE_SMARTLOCK_UIDS = Set.of(THING_TYPE_SMARTLOCK);
+    public static final Set<ThingTypeUID> THING_TYPE_OPENER_UIDS = Set.of(THING_TYPE_OPENER);
 
     public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Stream
             .of(THING_TYPE_BRIDGE_UIDS, THING_TYPE_SMARTLOCK_UIDS, THING_TYPE_OPENER_UIDS).flatMap(Set::stream)
index d66598e9cd8733d2951d66a7a40fd18ec9d2b2b5..fd31e33f7cdcccc338f23d9194ee00e003360435 100644 (file)
@@ -73,8 +73,7 @@ public class NukiHttpClient {
     private NukiBaseResponse handleException(Exception e) {
         if (e instanceof ExecutionException) {
             Throwable cause = e.getCause();
-            if (cause instanceof HttpResponseException) {
-                HttpResponseException causeException = (HttpResponseException) cause;
+            if (cause instanceof HttpResponseException causeException) {
                 int status = causeException.getResponse().getStatus();
                 String reason = causeException.getResponse().getReason();
                 logger.debug("HTTP Response Exception! Status[{}] - Reason[{}]! Check your API Token!", status, reason);
index 0e834f10d1adee8042d8888c77beecdd58bcdcb3..5e6eb0f58354307488034824b6d64658173650db 100644 (file)
@@ -12,7 +12,7 @@
  */
 package org.openhab.binding.nuki.internal.discovery;
 
-import java.util.Collections;
+import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
 import org.eclipse.jetty.client.HttpClient;
@@ -56,7 +56,7 @@ public class NukiBridgeDiscoveryService extends AbstractDiscoveryService {
     @Activate
     public NukiBridgeDiscoveryService(@Reference final HttpClientFactory httpClientFactory,
             @Reference final ThingRegistry thingRegistry) {
-        super(Collections.singleton(NukiBindingConstants.THING_TYPE_BRIDGE), 30, false);
+        super(Set.of(NukiBindingConstants.THING_TYPE_BRIDGE), 30, false);
         this.httpClient = httpClientFactory.getCommonHttpClient();
         this.thingRegistry = thingRegistry;
     }
index b3a23b1fb61c9194b3a5807ee48cc8cdc57d6ce5..acb1764501dd09d2f1f59bc9c86a3c2178ee64ac 100644 (file)
@@ -103,8 +103,8 @@ public class NukiDeviceDiscoveryService extends AbstractDiscoveryService impleme
 
     @Override
     public void setThingHandler(@Nullable ThingHandler handler) {
-        if (handler instanceof NukiBridgeHandler) {
-            bridge = (NukiBridgeHandler) handler;
+        if (handler instanceof NukiBridgeHandler bridgeHandler) {
+            bridge = bridgeHandler;
         }
     }
 
index 7d0ec0d065c749e6376f2adf3036972d8c43748d..100f0951a65d1ed5a55b878404a7586b6983c1b5 100644 (file)
@@ -149,8 +149,7 @@ public abstract class AbstractNukiDeviceHandler<T extends NukiDeviceConfiguratio
     }
 
     private void initializeHandler(@Nullable ThingHandler handler, @Nullable ThingStatus bridgeStatus) {
-        if (handler instanceof NukiBridgeHandler && bridgeStatus != null) {
-            NukiBridgeHandler bridgeHandler = (NukiBridgeHandler) handler;
+        if (handler instanceof NukiBridgeHandler bridgeHandler && bridgeStatus != null) {
             if (bridgeStatus == ThingStatus.ONLINE) {
                 this.nukiHttpClient = bridgeHandler.getNukiHttpClient();
                 withHttpClient(client -> {
@@ -203,6 +202,7 @@ public abstract class AbstractNukiDeviceHandler<T extends NukiDeviceConfiguratio
         }
     }
 
+    @Override
     protected void triggerChannel(String channelId, String event) {
         Channel channel = thing.getChannel(channelId);
         if (channel != null) {
@@ -335,8 +335,8 @@ public abstract class AbstractNukiDeviceHandler<T extends NukiDeviceConfiguratio
         Bridge bridge = getBridge();
         if (bridge != null) {
             BridgeHandler bridgeHandler = bridge.getHandler();
-            if (bridgeHandler instanceof NukiBridgeHandler) {
-                scheduler.execute(() -> handler.accept((NukiBridgeHandler) bridgeHandler));
+            if (bridgeHandler instanceof NukiBridgeHandler nukiBridgeHandler) {
+                scheduler.execute(() -> handler.accept(nukiBridgeHandler));
             }
         }
     }
index 475fd1ec4f132ad7ca8b5cc6548a7678c5dd0ece..3db6e5b4d0d2a3532adbb85a34c87766313c59a2 100644 (file)
@@ -16,6 +16,7 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.List;
+import java.util.Set;
 import java.util.concurrent.ScheduledFuture;
 import java.util.concurrent.TimeUnit;
 import java.util.function.Consumer;
@@ -143,7 +144,7 @@ public class NukiBridgeHandler extends BaseBridgeHandler {
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(NukiDeviceDiscoveryService.class);
+        return Set.of(NukiDeviceDiscoveryService.class);
     }
 
     private synchronized void initializeHandler() {
@@ -175,7 +176,6 @@ public class NukiBridgeHandler extends BaseBridgeHandler {
     public void checkBridgeOnline() {
         logger.debug("checkBridgeOnline():bridgeIp[{}] status[{}]", this.config.ip, getThing().getStatus());
         if (getThing().getStatus().equals(ThingStatus.ONLINE)) {
-
             withHttpClient(client -> {
                 logger.debug("Requesting BridgeInfo to ensure Bridge[{}] is online.", this.config.ip);
                 BridgeInfoResponse bridgeInfoResponse = client.getBridgeInfo();
index 29cd9e3f46955f2df757adc291ddb1526d08cce1..91b27fa771395eb278cf280fcce8809c75533aa5 100644 (file)
@@ -66,8 +66,8 @@ public class NukiOpenerHandler extends AbstractNukiDeviceHandler<NukiDeviceConfi
     protected boolean doHandleCommand(ChannelUID channelUID, Command command) {
         switch (channelUID.getId()) {
             case NukiBindingConstants.CHANNEL_OPENER_STATE:
-                if (command instanceof DecimalType) {
-                    OpenerAction action = OpenerAction.fromAction(((DecimalType) command).intValue());
+                if (command instanceof DecimalType decimalCommand) {
+                    OpenerAction action = OpenerAction.fromAction(decimalCommand.intValue());
                     if (action != null) {
                         return withHttpClient(client -> {
                             BridgeLockActionResponse response = client.getOpenerAction(configuration.nukiId, action);
index b561e4604d221a86fa9e31b6fe097b3456b161ae..effc3338de29afdeed24c6919d6c3bfa03bd8590 100644 (file)
@@ -82,9 +82,8 @@ public class NukiSmartLockHandler extends AbstractNukiDeviceHandler<NukiSmartLoc
                 }
                 break;
             case NukiBindingConstants.CHANNEL_SMARTLOCK_STATE:
-                if (command instanceof DecimalType) {
-                    DecimalType cmd = (DecimalType) command;
-                    SmartLockAction action = SmartLockAction.fromAction(cmd.intValue());
+                if (command instanceof DecimalType decimalCommand) {
+                    SmartLockAction action = SmartLockAction.fromAction(decimalCommand.intValue());
                     if (action != null) {
                         withHttpClient(client -> {
                             BridgeLockActionResponse bridgeLockActionResponse = client
index 893200f18852f9ea4171920dfa2e7f77dde936e2..c31043f45cccef10af42cb2f20fb1245850d9bb4 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.nuvo.internal;
 
 import static org.openhab.binding.nuvo.internal.NuvoBindingConstants.*;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -42,7 +41,7 @@ import org.osgi.service.component.annotations.Reference;
 @Component(configurationPid = "binding.nuvo", service = ThingHandlerFactory.class)
 public class NuvoHandlerFactory extends BaseThingHandlerFactory {
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_AMP);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_AMP);
 
     private final SerialPortManager serialPortManager;
 
index c55ea48aae213d8f2b41019fda6f411759512c54..d3ac3c1f23ecb2fe2f997c93472c869050712ced 100644 (file)
@@ -22,7 +22,6 @@ import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Base64;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.HashSet;
@@ -317,7 +316,7 @@ public class NuvoHandler extends BaseThingHandler implements NuvoMessageEventLis
 
         // Also add any openHAB NuvoNet source favorites to the list
         for (int src = 1; src <= MAX_SRC; src++) {
-            NuvoEnum source = NuvoEnum.valueOf(SOURCE + String.valueOf(src));
+            NuvoEnum source = NuvoEnum.valueOf(SOURCE + src);
             String[] favorites = favoriteMap.get(source);
             if (favorites != null) {
                 for (int fav = 0; fav < favorites.length; fav++) {
@@ -388,7 +387,7 @@ public class NuvoHandler extends BaseThingHandler implements NuvoMessageEventLis
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singletonList(NuvoThingActions.class);
+        return List.of(NuvoThingActions.class);
     }
 
     public void handleRawCommand(String command) {
@@ -435,8 +434,8 @@ public class NuvoHandler extends BaseThingHandler implements NuvoMessageEventLis
                         }
                         break;
                     case CHANNEL_TYPE_SOURCE:
-                        if (command instanceof DecimalType) {
-                            int value = ((DecimalType) command).intValue();
+                        if (command instanceof DecimalType decimalCommand) {
+                            int value = decimalCommand.intValue();
                             if (value >= 1 && value <= MAX_SRC) {
                                 logger.debug("Got source command {} zone {}", value, target);
                                 connector.sendCommand(target, NuvoCommand.SOURCE, String.valueOf(value));
@@ -447,8 +446,8 @@ public class NuvoHandler extends BaseThingHandler implements NuvoMessageEventLis
                         }
                         break;
                     case CHANNEL_TYPE_FAVORITE:
-                        if (command instanceof DecimalType) {
-                            int value = ((DecimalType) command).intValue();
+                        if (command instanceof DecimalType decimalCommand) {
+                            int value = decimalCommand.intValue();
                             if (value >= 1 && value <= MAX_FAV) {
                                 logger.debug("Got favorite command {} zone {}", value, target);
                                 connector.sendCommand(target, NuvoCommand.FAVORITE, String.valueOf(value));
@@ -465,10 +464,9 @@ public class NuvoHandler extends BaseThingHandler implements NuvoMessageEventLis
                         }
                         break;
                     case CHANNEL_TYPE_VOLUME:
-                        if (command instanceof PercentType) {
+                        if (command instanceof PercentType percentCommand) {
                             int value = (MAX_VOLUME
-                                    - (int) Math.round(
-                                            ((PercentType) command).doubleValue() / 100.0 * (MAX_VOLUME - MIN_VOLUME))
+                                    - (int) Math.round(percentCommand.doubleValue() / 100.0 * (MAX_VOLUME - MIN_VOLUME))
                                     + MIN_VOLUME);
                             logger.debug("Got volume command {} zone {}", value, target);
                             connector.sendCommand(target, NuvoCommand.VOLUME, String.valueOf(value));
@@ -481,8 +479,8 @@ public class NuvoHandler extends BaseThingHandler implements NuvoMessageEventLis
                         }
                         break;
                     case CHANNEL_TYPE_TREBLE:
-                        if (command instanceof DecimalType) {
-                            int value = ((DecimalType) command).intValue();
+                        if (command instanceof DecimalType decimalCommand) {
+                            int value = decimalCommand.intValue();
                             if (value >= MIN_EQ && value <= MAX_EQ) {
                                 // device can only accept even values
                                 if (value % 2 == 1) {
@@ -494,8 +492,8 @@ public class NuvoHandler extends BaseThingHandler implements NuvoMessageEventLis
                         }
                         break;
                     case CHANNEL_TYPE_BASS:
-                        if (command instanceof DecimalType) {
-                            int value = ((DecimalType) command).intValue();
+                        if (command instanceof DecimalType decimalCommand) {
+                            int value = decimalCommand.intValue();
                             if (value >= MIN_EQ && value <= MAX_EQ) {
                                 if (value % 2 == 1) {
                                     value++;
@@ -506,8 +504,8 @@ public class NuvoHandler extends BaseThingHandler implements NuvoMessageEventLis
                         }
                         break;
                     case CHANNEL_TYPE_BALANCE:
-                        if (command instanceof DecimalType) {
-                            int value = ((DecimalType) command).intValue();
+                        if (command instanceof DecimalType decimalCommand) {
+                            int value = decimalCommand.intValue();
                             if (value >= MIN_EQ && value <= MAX_EQ) {
                                 if (value % 2 == 1) {
                                     value++;
index 250c290185e80b5b9dce71915e778baa9caf4708..3ff408f79bf4740362b1cb66f0d1f64dc15ec7dd 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.nzwateralerts.internal.handler;
 
 import static org.openhab.binding.nzwateralerts.internal.NZWaterAlertsBindingConstants.*;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -41,7 +40,7 @@ import org.osgi.service.component.annotations.Reference;
 public class NZWaterAlertsHandlerFactory extends BaseThingHandlerFactory {
     private final HttpClient httpClient;
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_WATERALERT);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_WATERALERT);
 
     @Activate
     public NZWaterAlertsHandlerFactory(final @Reference HttpClientFactory httpClientFactory) {
index a2def1158e5713ffeb13959d9b8b164ef23db8e1..79e7cbd6a9c936121c833800c24e810c933f6f6b 100644 (file)
@@ -200,7 +200,6 @@ public class NetworkOceanicThingHandler extends OceanicThingHandler {
                                 }
                             }
                         }
-
                     }
                 } catch (IOException e) {
                     logger.debug("An exception occurred while quering host {}:{} : '{}'", config.ipAddress,
index 125747e2bb356c8ff40d95f4d72113d0508b140a..16280a828fefb854ea71640bd6727a8b2351e86c 100644 (file)
@@ -67,7 +67,6 @@ public class SerialOceanicThingHandler extends OceanicThingHandler implements Se
         SerialOceanicBindingConfiguration config = getConfigAs(SerialOceanicBindingConfiguration.class);
 
         if (serialPort == null && config.port != null) {
-
             SerialPortIdentifier portIdentifier = serialPortManager.getIdentifier(config.port);
 
             if (portIdentifier == null) {
@@ -172,7 +171,7 @@ public class SerialOceanicThingHandler extends OceanicThingHandler implements Se
             }
 
             long timeStamp = System.currentTimeMillis();
-            while (lastLineReceived.equals("")) {
+            while ("".equals(lastLineReceived)) {
                 try {
                     Thread.sleep(50);
                 } catch (InterruptedException e) {
index 718494f0fcc81e8551a95f8ac04579ef23d3e78f..7a610c52dee52b62c0d092bdf3096eedc5a04146 100644 (file)
@@ -64,8 +64,7 @@ public class OJCloudHandlerFactory extends BaseThingHandlerFactory {
     @Override
     protected @Nullable ThingHandler createHandler(Thing thing) {
         if (SUPPORTED_THING_TYPES_UIDS.contains(thing.getThingTypeUID())) {
-            OJCloudHandler handler = new OJCloudHandler((Bridge) thing, httpClient);
-            return handler;
+            return new OJCloudHandler((Bridge) thing, httpClient);
         }
         return null;
     }
index 2bcfec98fb01f88f66aa1a9ac1be532edc05a153..95720a88208531e877a03bbc3dcfb6204ceb6407 100644 (file)
@@ -197,8 +197,8 @@ public class ThermostatHandler extends BaseThingHandler {
     }
 
     private void updateManualSetpoint(Command command) {
-        if (command instanceof QuantityType<?>) {
-            getCurrentThermostat().manualModeSetpoint = (int) (((QuantityType<?>) command).floatValue() * 100);
+        if (command instanceof QuantityType<?> quantityCommand) {
+            getCurrentThermostat().manualModeSetpoint = (int) (quantityCommand.floatValue() * 100);
         } else {
             logger.warn("Unable to set value {}", command);
         }
@@ -210,8 +210,8 @@ public class ThermostatHandler extends BaseThingHandler {
     }
 
     private void updateBoostEndTime(Command command) {
-        if (command instanceof DateTimeType) {
-            getCurrentThermostat().boostEndTime = Date.from(((DateTimeType) command).getZonedDateTime().toInstant());
+        if (command instanceof DateTimeType dateTimeCommand) {
+            getCurrentThermostat().boostEndTime = Date.from(dateTimeCommand.getZonedDateTime().toInstant());
         } else {
             logger.warn("Unable to set value {}", command);
         }
@@ -223,9 +223,9 @@ public class ThermostatHandler extends BaseThingHandler {
     }
 
     private void updateComfortEndTime(Command command) {
-        if (command instanceof DateTimeType) {
+        if (command instanceof DateTimeType dateTimeCommand) {
             getCurrentThermostat().comfortEndTime = Objects
-                    .requireNonNull(Date.from(((DateTimeType) command).getZonedDateTime().toInstant()));
+                    .requireNonNull(Date.from(dateTimeCommand.getZonedDateTime().toInstant()));
         } else {
             logger.warn("Unable to set value {}", command);
         }
@@ -237,8 +237,8 @@ public class ThermostatHandler extends BaseThingHandler {
     }
 
     private void updateComfortSetpoint(Command command) {
-        if (command instanceof QuantityType<?>) {
-            getCurrentThermostat().comfortSetpoint = (int) (((QuantityType<?>) command).floatValue() * 100);
+        if (command instanceof QuantityType<?> quantityCommand) {
+            getCurrentThermostat().comfortSetpoint = (int) (quantityCommand.floatValue() * 100);
         } else {
             logger.warn("Unable to set value {}", command);
         }
@@ -325,9 +325,9 @@ public class ThermostatHandler extends BaseThingHandler {
     }
 
     private void updateVacationBeginDay(Command command) {
-        if (command instanceof DateTimeType) {
+        if (command instanceof DateTimeType dateTimeCommand) {
             getCurrentThermostat().vacationBeginDay = Date
-                    .from(((DateTimeType) command).getZonedDateTime().toInstant().truncatedTo(ChronoUnit.DAYS));
+                    .from(dateTimeCommand.getZonedDateTime().toInstant().truncatedTo(ChronoUnit.DAYS));
         } else {
             logger.warn("Unable to set value {}", command);
         }
@@ -341,9 +341,9 @@ public class ThermostatHandler extends BaseThingHandler {
     }
 
     private void updateVacationEndDay(Command command) {
-        if (command instanceof DateTimeType) {
+        if (command instanceof DateTimeType dateTimeCommand) {
             getCurrentThermostat().vacationEndDay = Date
-                    .from(((DateTimeType) command).getZonedDateTime().toInstant().truncatedTo(ChronoUnit.DAYS));
+                    .from(dateTimeCommand.getZonedDateTime().toInstant().truncatedTo(ChronoUnit.DAYS));
         } else {
             logger.warn("Unable to set value {}", command);
         }
index d37334601a4b03a2218f8ab7b695712546dd2d78..b19af92f5c2812ff98a67c6ac58c10debd4643ed 100644 (file)
@@ -73,8 +73,7 @@ public final class OJDiscoveryService extends AbstractDiscoveryService implement
 
     @Override
     public void setThingHandler(@Nullable ThingHandler handler) {
-        if (handler instanceof OJCloudHandler) {
-            final OJCloudHandler bridgeHandler = (OJCloudHandler) handler;
+        if (handler instanceof OJCloudHandler bridgeHandler) {
             this.bridgeHandler = bridgeHandler;
             bridgeHandler.setDiscoveryService(this);
         }
index 399307660811437537b1bd2c57c8172a8a7b8f93..c1eec05174cc9525e63d61cf757cc5933386586e 100644 (file)
@@ -196,9 +196,8 @@ public final class RefreshService implements AutoCloseable {
     }
 
     private Request createRequest() {
-        Request request = httpClient.newRequest(config.getRestApiUrl() + "/Group/GroupContents")
-                .param("sessionid", sessionId).param("apiKey", config.apiKey).method(HttpMethod.GET);
-        return request;
+        return httpClient.newRequest(config.getRestApiUrl() + "/Group/GroupContents").param("sessionid", sessionId)
+                .param("apiKey", config.apiKey).method(HttpMethod.GET);
     }
 
     private void initializationDone(String responseBody) {
index 1a364c1d70416210d1be16c19ea11f9f16cf5a7a..8b9615802c0fb8c30909d69729228de5a1f91bbc 100644 (file)
@@ -90,7 +90,7 @@ public class SignInService {
                 if (result.getResponse().getStatus() == 200) {
                     PostSignInResponseModel signInModel = Objects
                             .requireNonNull(gson.fromJson(getContentAsString(), PostSignInResponseModel.class));
-                    if (signInModel.errorCode != 0 || signInModel.sessionId.equals("")) {
+                    if (signInModel.errorCode != 0 || "".equals(signInModel.sessionId)) {
                         unauthorized.run();
                         return;
                     }
index 5e671e4818d80655e759413f29d67b17fa35e0bd..0ffbf8993f6c8ba9f0b3a9a5be495c4fe9ff5962 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.omnikinverter.internal;
 
 import static org.openhab.binding.omnikinverter.internal.OmnikInverterBindingConstants.THING_TYPE_OMNIK;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -37,7 +36,7 @@ import org.osgi.service.component.annotations.Component;
 @Component(configurationPid = "binding.omnikinverter", service = ThingHandlerFactory.class)
 public class OmnikInverterHandlerFactory extends BaseThingHandlerFactory {
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_OMNIK);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_OMNIK);
 
     @Override
     public boolean supportsThingType(ThingTypeUID thingTypeUID) {
index 4e7ab5b5a12055132c5a04b24003590a39455d50..2c1804864e44cd55b1978f5539bd5974f5b627cb 100644 (file)
@@ -42,8 +42,8 @@ public class OmnilinkActions implements ThingActions {
 
     @Override
     public void setThingHandler(@Nullable ThingHandler handler) {
-        if (handler instanceof OmnilinkBridgeHandler) {
-            this.handler = (OmnilinkBridgeHandler) handler;
+        if (handler instanceof OmnilinkBridgeHandler bridgeHandler) {
+            this.handler = bridgeHandler;
         }
     }
 
index 59c00dd12a106e5142f30217979c26b04c2c3400..b55f305cba368624a2a2ec45a710676744c311c8 100644 (file)
@@ -75,8 +75,8 @@ public class OmnilinkDiscoveryService extends AbstractDiscoveryService
 
     @Override
     public void setThingHandler(@Nullable ThingHandler handler) {
-        if (handler instanceof OmnilinkBridgeHandler) {
-            bridgeHandler = (OmnilinkBridgeHandler) handler;
+        if (handler instanceof OmnilinkBridgeHandler omnilinkBridgeHandler) {
+            bridgeHandler = omnilinkBridgeHandler;
         }
     }
 
index bce007996ff55eb8ce05224debb8bd5d45a04e3d..75f3146ddbcf691ec6ed4fc1bb63056031ab8ab7 100644 (file)
@@ -177,11 +177,11 @@ public abstract class AbstractAreaHandler extends AbstractOmnilinkStatusHandler<
     protected abstract EnumSet<AreaAlarm> getAlarms();
 
     private void handleKeypadEmergency(ChannelUID channelUID, Command command) {
-        if (command instanceof DecimalType) {
+        if (command instanceof DecimalType decimalCommand) {
             try {
                 final OmnilinkBridgeHandler bridge = getOmnilinkBridgeHandler();
                 if (bridge != null) {
-                    bridge.activateKeypadEmergency(thingID, ((DecimalType) command).intValue());
+                    bridge.activateKeypadEmergency(thingID, decimalCommand.intValue());
                 } else {
                     logger.debug("Received null bridge while sending Keypad Emergency command!");
                 }
index 30d999e423d56d5c792741a5acc237802ec2a917..7ba769038debcdbd40cbd3ce3c7e9f51c796ce0b 100644 (file)
@@ -118,8 +118,8 @@ public class AudioSourceHandler extends AbstractOmnilinkHandler {
                 if (command instanceof RefreshType) {
                     updateState(CHANNEL_AUDIO_SOURCE_POLLING,
                             OnOffType.from((scheduledPolling != null && !scheduledPolling.isDone())));
-                } else if (command instanceof OnOffType) {
-                    handlePolling(channelUID, (OnOffType) command);
+                } else if (command instanceof OnOffType onOffCommand) {
+                    handlePolling(channelUID, onOffCommand);
                 } else {
                     logger.debug("Invalid command: {}, must be RefreshType or OnOffType", command);
                 }
index 8d1b1f1571d283921f003d8acc956b26742d0b5a..fd93b8a9d3852a0b7ab15fa2e312270215a9ef80 100644 (file)
@@ -111,26 +111,24 @@ public class AudioZoneHandler extends AbstractOmnilinkStatusHandler<ExtendedAudi
                 }
                 break;
             case CHANNEL_AUDIO_ZONE_VOLUME:
-                if (command instanceof PercentType) {
-                    sendOmnilinkCommand(CommandMessage.CMD_AUDIO_ZONE_SET_VOLUME, ((PercentType) command).intValue(),
-                            thingID);
+                if (command instanceof PercentType percentCommand) {
+                    sendOmnilinkCommand(CommandMessage.CMD_AUDIO_ZONE_SET_VOLUME, percentCommand.intValue(), thingID);
                 } else {
                     logger.debug("Invalid command: {}, must be PercentType", command);
                 }
                 break;
             case CHANNEL_AUDIO_ZONE_SOURCE:
-                if (command instanceof DecimalType) {
-                    sendOmnilinkCommand(CommandMessage.CMD_AUDIO_ZONE_SET_SOURCE, ((DecimalType) command).intValue(),
-                            thingID);
+                if (command instanceof DecimalType decimalCommand) {
+                    sendOmnilinkCommand(CommandMessage.CMD_AUDIO_ZONE_SET_SOURCE, decimalCommand.intValue(), thingID);
                 } else {
                     logger.debug("Invalid command: {}, must be DecimalType", command);
                 }
                 break;
             case CHANNEL_AUDIO_ZONE_CONTROL:
-                if (command instanceof PlayPauseType) {
-                    handlePlayPauseCommand(channelUID, (PlayPauseType) command);
-                } else if (command instanceof NextPreviousType) {
-                    handleNextPreviousCommand(channelUID, (NextPreviousType) command);
+                if (command instanceof PlayPauseType playPauseCommand) {
+                    handlePlayPauseCommand(channelUID, playPauseCommand);
+                } else if (command instanceof NextPreviousType nextPreviousCommand) {
+                    handleNextPreviousCommand(channelUID, nextPreviousCommand);
                 } else {
                     logger.debug("Invalid command: {}, must be PlayPauseType or NextPreviousType", command);
                 }
index 6455239987b3a9497fe07bf52325c6f77f5492f6..3acf98764d6191a319c12dcfa34db05133852db2 100644 (file)
@@ -68,16 +68,16 @@ public class ConsoleHandler extends AbstractOmnilinkHandler {
 
         switch (channelUID.getId()) {
             case CHANNEL_CONSOLE_ENABLE_DISABLE_BEEPER:
-                if (command instanceof StringType) {
+                if (command instanceof StringType stringCommand) {
                     sendOmnilinkCommand(CommandMessage.CMD_CONSOLE_ENABLE_DISABLE_BEEPER,
-                            ((StringType) command).equals(StringType.valueOf("OFF")) ? 0 : 1, thingID);
+                            stringCommand.equals(StringType.valueOf("OFF")) ? 0 : 1, thingID);
                 } else {
                     logger.debug("Invalid command: {}, must be StringType", command);
                 }
                 break;
             case CHANNEL_CONSOLE_BEEP:
-                if (command instanceof DecimalType) {
-                    sendOmnilinkCommand(CommandMessage.CMD_CONSOLE_BEEP, ((DecimalType) command).intValue(), thingID);
+                if (command instanceof DecimalType decimalCommand) {
+                    sendOmnilinkCommand(CommandMessage.CMD_CONSOLE_BEEP, decimalCommand.intValue(), thingID);
                 } else {
                     logger.debug("Invalid command: {}, must be DecimalType", command);
                 }
index 84f7766e57134d15a0aabaa661f971134bc54bb7..48e4dd71c2a57f87031c89ea68815b30f469d4b0 100644 (file)
@@ -191,10 +191,10 @@ public class OmnilinkBridgeHandler extends BaseBridgeHandler implements Notifica
 
         switch (channelUID.getId()) {
             case CHANNEL_CONSOLE_ENABLE_DISABLE_BEEPER:
-                if (command instanceof StringType) {
+                if (command instanceof StringType stringCommand) {
                     try {
                         sendOmnilinkCommand(CommandMessage.CMD_CONSOLE_ENABLE_DISABLE_BEEPER,
-                                ((StringType) command).equals(StringType.valueOf("OFF")) ? 0 : 1, 0);
+                                stringCommand.equals(StringType.valueOf("OFF")) ? 0 : 1, 0);
                         updateState(CHANNEL_CONSOLE_ENABLE_DISABLE_BEEPER, UnDefType.UNDEF);
                     } catch (NumberFormatException | OmniInvalidResponseException | OmniUnknownMessageTypeException
                             | BridgeOfflineException e) {
@@ -205,9 +205,9 @@ public class OmnilinkBridgeHandler extends BaseBridgeHandler implements Notifica
                 }
                 break;
             case CHANNEL_CONSOLE_BEEP:
-                if (command instanceof DecimalType) {
+                if (command instanceof DecimalType decimalCommand) {
                     try {
-                        sendOmnilinkCommand(CommandMessage.CMD_CONSOLE_BEEP, ((DecimalType) command).intValue(), 0);
+                        sendOmnilinkCommand(CommandMessage.CMD_CONSOLE_BEEP, decimalCommand.intValue(), 0);
                         updateState(CHANNEL_CONSOLE_BEEP, UnDefType.UNDEF);
                     } catch (NumberFormatException | OmniInvalidResponseException | OmniUnknownMessageTypeException
                             | BridgeOfflineException e) {
@@ -287,24 +287,21 @@ public class OmnilinkBridgeHandler extends BaseBridgeHandler implements Notifica
         if (objectStatus != null) {
             Status[] statuses = objectStatus.getStatuses();
             for (Status status : statuses) {
-                if (status instanceof ExtendedUnitStatus) {
-                    ExtendedUnitStatus unitStatus = (ExtendedUnitStatus) status;
+                if (status instanceof ExtendedUnitStatus unitStatus) {
                     int unitNumber = unitStatus.getNumber();
 
                     logger.debug("Received status update for Unit: {}, status: {}", unitNumber, unitStatus);
                     Optional<Thing> theThing = getUnitThing(unitNumber);
                     theThing.map(Thing::getHandler)
                             .ifPresent(theHandler -> ((UnitHandler) theHandler).handleStatus(unitStatus));
-                } else if (status instanceof ExtendedZoneStatus) {
-                    ExtendedZoneStatus zoneStatus = (ExtendedZoneStatus) status;
+                } else if (status instanceof ExtendedZoneStatus zoneStatus) {
                     int zoneNumber = zoneStatus.getNumber();
 
                     logger.debug("Received status update for Zone: {}, status: {}", zoneNumber, zoneStatus);
                     Optional<Thing> theThing = getChildThing(THING_TYPE_ZONE, zoneNumber);
                     theThing.map(Thing::getHandler)
                             .ifPresent(theHandler -> ((ZoneHandler) theHandler).handleStatus(zoneStatus));
-                } else if (status instanceof ExtendedAreaStatus) {
-                    ExtendedAreaStatus areaStatus = (ExtendedAreaStatus) status;
+                } else if (status instanceof ExtendedAreaStatus areaStatus) {
                     int areaNumber = areaStatus.getNumber();
 
                     logger.debug("Received status update for Area: {}, status: {}", areaNumber, areaStatus);
@@ -321,16 +318,14 @@ public class OmnilinkBridgeHandler extends BaseBridgeHandler implements Notifica
                         theThing.map(Thing::getHandler)
                                 .ifPresent(theHandler -> ((AbstractAreaHandler) theHandler).handleStatus(areaStatus));
                     });
-                } else if (status instanceof ExtendedAccessControlReaderLockStatus) {
-                    ExtendedAccessControlReaderLockStatus lockStatus = (ExtendedAccessControlReaderLockStatus) status;
+                } else if (status instanceof ExtendedAccessControlReaderLockStatus lockStatus) {
                     int lockNumber = lockStatus.getNumber();
 
                     logger.debug("Received status update for Lock: {}, status: {}", lockNumber, lockStatus);
                     Optional<Thing> theThing = getChildThing(THING_TYPE_LOCK, lockNumber);
                     theThing.map(Thing::getHandler)
                             .ifPresent(theHandler -> ((LockHandler) theHandler).handleStatus(lockStatus));
-                } else if (status instanceof ExtendedThermostatStatus) {
-                    ExtendedThermostatStatus thermostatStatus = (ExtendedThermostatStatus) status;
+                } else if (status instanceof ExtendedThermostatStatus thermostatStatus) {
                     int thermostatNumber = thermostatStatus.getNumber();
 
                     logger.debug("Received status update for Thermostat: {}, status: {}", thermostatNumber,
@@ -338,8 +333,7 @@ public class OmnilinkBridgeHandler extends BaseBridgeHandler implements Notifica
                     Optional<Thing> theThing = getChildThing(THING_TYPE_THERMOSTAT, thermostatNumber);
                     theThing.map(Thing::getHandler)
                             .ifPresent(theHandler -> ((ThermostatHandler) theHandler).handleStatus(thermostatStatus));
-                } else if (status instanceof ExtendedAudioZoneStatus) {
-                    ExtendedAudioZoneStatus audioZoneStatus = (ExtendedAudioZoneStatus) status;
+                } else if (status instanceof ExtendedAudioZoneStatus audioZoneStatus) {
                     int audioZoneNumber = audioZoneStatus.getNumber();
 
                     logger.debug("Received status update for Audio Zone: {}, status: {}", audioZoneNumber,
@@ -347,8 +341,7 @@ public class OmnilinkBridgeHandler extends BaseBridgeHandler implements Notifica
                     Optional<Thing> theThing = getChildThing(THING_TYPE_AUDIO_ZONE, audioZoneNumber);
                     theThing.map(Thing::getHandler)
                             .ifPresent(theHandler -> ((AudioZoneHandler) theHandler).handleStatus(audioZoneStatus));
-                } else if (status instanceof ExtendedAuxSensorStatus) {
-                    ExtendedAuxSensorStatus auxSensorStatus = (ExtendedAuxSensorStatus) status;
+                } else if (status instanceof ExtendedAuxSensorStatus auxSensorStatus) {
                     int auxSensorNumber = auxSensorStatus.getNumber();
 
                     // Aux Sensors can be either temperature or humidity, need to check both.
index 97df807019a77936d58d21c8c4cf508ee0f99f5e..69cc158835ec92e19b90ae97804af915c21cf958 100644 (file)
@@ -117,7 +117,7 @@ public class TempSensorHandler extends AbstractOmnilinkStatusHandler<ExtendedAux
         }
         if (bridgeHandler != null) {
             temperatureFormat = bridgeHandler.getTemperatureFormat();
-            if (!temperatureFormat.isPresent()) {
+            if (temperatureFormat.isEmpty()) {
                 logger.warn("Receieved null temperature format!");
                 return;
             }
index 3f4adc217c3eb256ad24e4858358c2c69edd1506..9cb45b7ee045386126166fb1582076d22b1129a3 100644 (file)
@@ -136,7 +136,7 @@ public class ThermostatHandler extends AbstractOmnilinkStatusHandler<ExtendedThe
         }
         if (bridgeHandler != null) {
             temperatureFormat = bridgeHandler.getTemperatureFormat();
-            if (!temperatureFormat.isPresent()) {
+            if (temperatureFormat.isEmpty()) {
                 logger.warn("Receieved null temperature format!");
                 return;
             }
index 644601f7f5a681170e85e123797b0ed01dd95fac..5fd77da9718d3c2bf32610fb83e1cba5d0bd2370 100644 (file)
@@ -107,8 +107,8 @@ public class UnitHandler extends AbstractOmnilinkStatusHandler<ExtendedUnitStatu
         switch (channelUID.getId()) {
             case CHANNEL_UNIT_LEVEL:
             case CHANNEL_UNIT_SWITCH:
-                if (command instanceof OnOffType) {
-                    handleOnOff(channelUID, (OnOffType) command);
+                if (command instanceof OnOffType onOffCommand) {
+                    handleOnOff(channelUID, onOffCommand);
                 } else {
                     logger.debug("Invalid command: {}, must be OnOffType", command);
                 }
@@ -119,8 +119,8 @@ public class UnitHandler extends AbstractOmnilinkStatusHandler<ExtendedUnitStatu
             case CHANNEL_UNIT_OFF_FOR_MINUTES:
             case CHANNEL_UNIT_ON_FOR_HOURS:
             case CHANNEL_UNIT_OFF_FOR_HOURS:
-                if (command instanceof DecimalType) {
-                    handleUnitDuration(channelUID, (DecimalType) command);
+                if (command instanceof DecimalType decimalCommand) {
+                    handleUnitDuration(channelUID, decimalCommand);
                 } else {
                     logger.debug("Invalid command: {}, must be DecimalType", command);
                 }
index c6609498ce76eab6913f2f02f2fcaa1366f8a8ab..00156f1405fcc7b53dcae6213983fa5f73b72f17 100644 (file)
@@ -61,10 +61,10 @@ public class DimmableUnitHandler extends UnitHandler {
 
     private void handleUnitLevel(ChannelUID channelUID, Command command) {
         logger.debug("handleUnitLevel called for channel: {}, command: {}", channelUID, command);
-        if (command instanceof PercentType) {
-            handlePercent(channelUID, (PercentType) command);
-        } else if (command instanceof IncreaseDecreaseType) {
-            handleIncreaseDecrease(channelUID, (IncreaseDecreaseType) command);
+        if (command instanceof PercentType percentCommand) {
+            handlePercent(channelUID, percentCommand);
+        } else if (command instanceof IncreaseDecreaseType increaseDecreaseCommand) {
+            handleIncreaseDecrease(channelUID, increaseDecreaseCommand);
         } else {
             // Only handle percent or increase/decrease.
             super.handleCommand(channelUID, command);
index cf0354bbe040c67611b955ab31b4503c11c29bff..c7952402f66a84b87e9735463309a11833ddfc50 100644 (file)
@@ -61,16 +61,15 @@ public class FlagHandler extends UnitHandler {
 
         switch (channelUID.getId()) {
             case CHANNEL_FLAG_VALUE:
-                if (command instanceof DecimalType) {
-                    sendOmnilinkCommand(CommandMessage.CMD_UNIT_SET_COUNTER, ((DecimalType) command).intValue(),
-                            thingID);
+                if (command instanceof DecimalType decimalCommand) {
+                    sendOmnilinkCommand(CommandMessage.CMD_UNIT_SET_COUNTER, decimalCommand.intValue(), thingID);
                 } else {
                     logger.debug("Invalid command: {}, must be DecimalType", command);
                 }
                 break;
             case CHANNEL_FLAG_SWITCH:
-                if (command instanceof OnOffType) {
-                    handleOnOff(channelUID, (OnOffType) command);
+                if (command instanceof OnOffType onOffCommand) {
+                    handleOnOff(channelUID, onOffCommand);
                 } else {
                     logger.debug("Invalid command: {}, must be OnOffType", command);
                 }
index dd99be5ed4c52d8623ee486de1f48609dc6d563d..49aef16512c5c4e3790da6b9d834e718ff4cf896 100644 (file)
@@ -64,22 +64,22 @@ public class UpbRoomHandler extends UnitHandler {
             case CHANNEL_ROOM_SCENE_B:
             case CHANNEL_ROOM_SCENE_C:
             case CHANNEL_ROOM_SCENE_D:
-                if (command instanceof OnOffType) {
-                    handleRoomScene(channelUID, (OnOffType) command);
+                if (command instanceof OnOffType onOffCommand) {
+                    handleRoomScene(channelUID, onOffCommand);
                 } else {
                     logger.debug("Invalid command: {}, must be OnOffType", command);
                 }
                 break;
             case CHANNEL_ROOM_SWITCH:
-                if (command instanceof OnOffType) {
-                    super.handleOnOff(channelUID, (OnOffType) command);
+                if (command instanceof OnOffType onOffCommand) {
+                    super.handleOnOff(channelUID, onOffCommand);
                 } else {
                     logger.debug("Invalid command: {}, must be OnOffType", command);
                 }
                 break;
             case CHANNEL_ROOM_STATE:
-                if (command instanceof DecimalType) {
-                    handleRoomState(channelUID, (DecimalType) command);
+                if (command instanceof DecimalType decimalCommand) {
+                    handleRoomState(channelUID, decimalCommand);
                 } else {
                     logger.debug("Invalid command: {}, must be DecimalType", command);
                 }
index e846c58e605dc3996183f95dadc3f03c28da1a08..3aef4021d32c330de94c1890d111bb9ab92af20d 100644 (file)
@@ -153,7 +153,7 @@ public class BAE0910 extends AbstractOwDevice {
             Channel channel = callback.getThing().getChannel(CHANNEL_DIGITAL6);
             if (channel != null) {
                 BAE091xPIOConfiguration channelConfig = channel.getConfiguration().as(BAE091xPIOConfiguration.class);
-                piocRegister.set(PIOC_DD, channelConfig.mode.equals("output"));
+                piocRegister.set(PIOC_DD, "output".equals(channelConfig.mode));
                 switch (channelConfig.pulldevice) {
                     case "pullup" -> {
                         piocRegister.set(PIOC_PE);
index 6ee7d543983409a691d08ceccd1a34dca7507469..160748df9c782f22bfc5c8e2c67d57ff67988ede 100644 (file)
@@ -52,7 +52,7 @@ public class DS2423 extends AbstractOwDevice {
             List<State> states = bridgeHandler.readDecimalTypeArray(sensorId, counterParameter);
 
             if (states.size() != 2) {
-                throw new OwException("Expected exactly two values, got " + String.valueOf(states.size()));
+                throw new OwException("Expected exactly two values, got " + states.size());
             } else {
                 callback.postUpdate(CHANNEL_COUNTER + "0", states.get(0));
                 callback.postUpdate(CHANNEL_COUNTER + "1", states.get(1));
index caf92b18cbc944b7f697f175ef6fc8fbd50d6510..37fdb3b7bc3afbc929a3d622c2c66d0bed7bc943 100644 (file)
@@ -141,8 +141,8 @@ public class DS2438 extends AbstractOwDevice {
             if (enabledChannels.contains(CHANNEL_CURRENT)) {
                 if (currentSensorType == CurrentSensorType.IBUTTONLINK) {
                     State current = bridgeHandler.readDecimalType(sensorId, voltageParameter);
-                    if (current instanceof DecimalType) {
-                        double currentDouble = ((DecimalType) current).doubleValue();
+                    if (current instanceof DecimalType decimalCommand) {
+                        double currentDouble = decimalCommand.doubleValue();
                         if (currentDouble >= 0.1 || currentDouble <= 3.78) {
                             current = new QuantityType<>(currentDouble * 5.163 + 0.483, Units.AMPERE);
                         }
@@ -168,19 +168,17 @@ public class DS2438 extends AbstractOwDevice {
                 switch (lightSensorType) {
                     case ELABNET_V2:
                         State light = bridgeHandler.readDecimalType(sensorId, currentParamater);
-                        if (light instanceof DecimalType) {
+                        if (light instanceof DecimalType decimalCommand) {
                             light = new QuantityType<>(
-                                    Math.round(Math.pow(10, ((DecimalType) light).doubleValue() / 47 * 1000)),
-                                    Units.LUX);
+                                    Math.round(Math.pow(10, decimalCommand.doubleValue() / 47 * 1000)), Units.LUX);
                             callback.postUpdate(CHANNEL_LIGHT, light);
                         }
                         break;
                     case ELABNET_V1:
                         light = bridgeHandler.readDecimalType(sensorId, currentParamater);
-                        if (light instanceof DecimalType) {
-                            light = new QuantityType<>(Math.round(Math
-                                    .exp(1.059 * Math.log(1000000 * ((DecimalType) light).doubleValue() / (4096 * 390))
-                                            + 4.518)
+                        if (light instanceof DecimalType decimalCommand) {
+                            light = new QuantityType<>(Math.round(Math.exp(
+                                    1.059 * Math.log(1000000 * decimalCommand.doubleValue() / (4096 * 390)) + 4.518)
                                     * 20000), Units.LUX);
                             callback.postUpdate(CHANNEL_LIGHT, light);
                         }
index 0f6cac6670f89210f522e9824e9801c2ba3fb423..da245fb2309268aa57291d766c87bc6e448e6d7f 100644 (file)
@@ -142,8 +142,8 @@ public class OwDiscoveryService extends AbstractDiscoveryService implements Thin
 
     @Override
     public void setThingHandler(ThingHandler thingHandler) {
-        if (thingHandler instanceof OwserverBridgeHandler) {
-            this.bridgeHandler = (OwserverBridgeHandler) thingHandler;
+        if (thingHandler instanceof OwserverBridgeHandler serverBridgeHandler) {
+            this.bridgeHandler = serverBridgeHandler;
         }
     }
 
index 122c294230338889eaab601ca45c28ac946cdce3..d3f3e13b07f26cc500d50cae30dee1728da2c068 100644 (file)
@@ -15,7 +15,6 @@ package org.openhab.binding.onewire.internal.handler;
 import static org.openhab.binding.onewire.internal.OwBindingConstants.*;
 
 import java.nio.charset.StandardCharsets;
-import java.util.Collections;
 import java.util.Map;
 import java.util.Set;
 
@@ -38,7 +37,7 @@ public class EDSSensorThingHandler extends OwBaseThingHandler {
     public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_EDS_ENV);
     public static final Set<OwSensorType> SUPPORTED_SENSOR_TYPES = Set.of(OwSensorType.EDS0064, OwSensorType.EDS0065,
             OwSensorType.EDS0066, OwSensorType.EDS0067, OwSensorType.EDS0068);
-    private static final Set<String> REQUIRED_PROPERTIES = Collections.singleton(PROPERTY_HW_REVISION);
+    private static final Set<String> REQUIRED_PROPERTIES = Set.of(PROPERTY_HW_REVISION);
 
     public EDSSensorThingHandler(Thing thing, OwDynamicStateDescriptionProvider dynamicStateDescriptionProvider) {
         super(thing, dynamicStateDescriptionProvider, SUPPORTED_SENSOR_TYPES, REQUIRED_PROPERTIES);
@@ -78,7 +77,7 @@ public class EDSSensorThingHandler extends OwBaseThingHandler {
 
         properties.put(PROPERTY_MODELID, sensorType.name());
         properties.put(PROPERTY_VENDOR, "Embedded Data Systems");
-        properties.put(PROPERTY_HW_REVISION, String.valueOf(fwRevision));
+        properties.put(PROPERTY_HW_REVISION, fwRevision);
 
         updateProperties(properties);
     }
index 882760b7c948631cbbbc64027a183dd48827d9e7..2f3eae8e148afa267a24b78af55c4c197b6c1b36 100644 (file)
@@ -18,7 +18,6 @@ import java.math.BigDecimal;
 import java.util.ArrayList;
 import java.util.BitSet;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Queue;
@@ -62,7 +61,7 @@ import org.slf4j.LoggerFactory;
  */
 @NonNullByDefault
 public class OwserverBridgeHandler extends BaseBridgeHandler {
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Collections.singleton(THING_TYPE_OWSERVER);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_OWSERVER);
 
     private final Logger logger = LoggerFactory.getLogger(OwserverBridgeHandler.class);
     protected boolean refreshable = false;
@@ -405,9 +404,9 @@ public class OwserverBridgeHandler extends BaseBridgeHandler {
                 State value;
                 try {
                     synchronized (owserverConnection) {
-                        if (channelConfig.acceptedItemType.equals("String")) {
+                        if ("String".equals(channelConfig.acceptedItemType)) {
                             value = new StringType(owserverConnection.readString(channelConfig.path));
-                        } else if (channelConfig.acceptedItemType.equals("Number")) {
+                        } else if ("Number".equals(channelConfig.acceptedItemType)) {
                             value = owserverConnection.readDecimalType(channelConfig.path);
                         } else {
                             logger.debug("mismatched configuration, itemType unknown for channel {}",
index ed4326a175d408de2eb0aabf0386e29fd67d0ef9..f19fdbcc2fe1156e229a022e403e47e4b8672291 100644 (file)
@@ -303,7 +303,7 @@ public class OwserverConnection {
                 } else {
                     returnPacket = read(false);
                 }
-            } while (returnPacket.isPingPacket() || !(returnPacket.hasPayload() == payloadExpected));
+            } while (returnPacket.isPingPacket() || returnPacket.hasPayload() != payloadExpected);
 
         } catch (OwException e) {
             logger.debug("failed requesting {}->{} [{}]", requestPacket, returnPacket, e.getMessage());
index c4a2495b39799306215bd6e2704986779d926063..555ebcf8b220ff5bf73c1907f93d70d13aeb827d 100644 (file)
@@ -42,7 +42,7 @@ public class OwserverPacket {
     protected int packetSize = 0;
     protected int payloadOffset = 0;
 
-    protected byte payload[] = new byte[0];
+    protected byte[] payload = new byte[0];
 
     /**
      * constructor for new packet
index 7d1a4fa0b811a9e2cad1b142834deb4d851200f0..2bb4cfe3f6aaea4407cb9e94eb2e68ab842d97ac 100644 (file)
@@ -83,9 +83,7 @@ public class BasicThingHandlerTest extends AbstractThingHandlerTest {
             return;
         }
 
-        Mockito.doAnswer(answer -> {
-            return OwSensorType.DS2401;
-        }).when(secondBridgeHandler).getType(any());
+        Mockito.doAnswer(answer -> OwSensorType.DS2401).when(secondBridgeHandler).getType(any());
 
         thingHandler.initialize();
 
@@ -101,9 +99,7 @@ public class BasicThingHandlerTest extends AbstractThingHandlerTest {
             return;
         }
 
-        Mockito.doAnswer(answer -> {
-            return OwSensorType.DS18B20;
-        }).when(secondBridgeHandler).getType(any());
+        Mockito.doAnswer(answer -> OwSensorType.DS18B20).when(secondBridgeHandler).getType(any());
 
         thingHandler.initialize();
         waitForAssert(() -> assertEquals(ThingStatus.UNKNOWN, thingHandler.getThing().getStatusInfo().getStatus()));
@@ -125,9 +121,7 @@ public class BasicThingHandlerTest extends AbstractThingHandlerTest {
             return;
         }
 
-        Mockito.doAnswer(answer -> {
-            return OwSensorType.DS2408;
-        }).when(secondBridgeHandler).getType(any());
+        Mockito.doAnswer(answer -> OwSensorType.DS2408).when(secondBridgeHandler).getType(any());
 
         thingHandler.initialize();
         waitForAssert(() -> assertEquals(ThingStatus.UNKNOWN, thingHandler.getThing().getStatusInfo().getStatus()));
index 8da6c67198bd5d06933744fd26091f5fcc1e2c40..bd7778c2014df625326e284fb3b4b6f45399a22a 100644 (file)
@@ -87,9 +87,7 @@ public class EDSSensorThingHandlerTest extends AbstractThingHandlerTest {
 
         initializeHandlerMocks();
 
-        Mockito.doAnswer(answer -> {
-            return new OwPageBuffer("EDS0065 ".getBytes());
-        }).when(secondBridgeHandler).readPages(any());
+        Mockito.doAnswer(answer -> new OwPageBuffer("EDS0065 ".getBytes())).when(secondBridgeHandler).readPages(any());
     }
 
     @Test
index c8cfde455de0d8b7dc579634ccc784dedcbc09d0..c0be6b89eac89c2e4bae78a2e0f93446afa62160 100644 (file)
@@ -74,9 +74,7 @@ public class MultisensorThingHandlerTest extends AbstractThingHandlerTest {
 
         initializeHandlerMocks();
 
-        Mockito.doAnswer(answer -> {
-            return OwSensorType.DS2438;
-        }).when(secondBridgeHandler).getType(any());
+        Mockito.doAnswer(answer -> OwSensorType.DS2438).when(secondBridgeHandler).getType(any());
 
         Mockito.doAnswer(answer -> {
             OwPageBuffer pageBuffer = new OwPageBuffer(8);
index e2178b16bf593d9918173d2d2836ffe397b5eb65..026dfbafe6959f11fa07d0ab52ac6df8be2653d4 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.onewiregpio.internal;
 
 import static org.openhab.binding.onewiregpio.internal.OneWireGPIOBindingConstants.THING_TYPE;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.openhab.binding.onewiregpio.internal.handler.OneWireGPIOHandler;
@@ -34,7 +33,7 @@ import org.osgi.service.component.annotations.Component;
 @Component(service = ThingHandlerFactory.class, configurationPid = "binding.onewiregpio")
 public class OneWireGPIOHandlerFactory extends BaseThingHandlerFactory {
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE);
 
     @Override
     public boolean supportsThingType(ThingTypeUID thingTypeUID) {
index b3ad248cc83b75e21fd71ff287458ecc6997b4f5..458fb8fb87d472c47727e9b2b37994a1fe725e5a 100644 (file)
@@ -54,8 +54,8 @@ public class OnkyoThingActions implements ThingActions {
 
     @Override
     public void setThingHandler(@Nullable ThingHandler handler) {
-        if (handler instanceof OnkyoHandler) {
-            this.handler = (OnkyoHandler) handler;
+        if (handler instanceof OnkyoHandler onkyoHandler) {
+            this.handler = onkyoHandler;
         }
     }
 
index c9bc37a51fe7a43c674c33543ea60f03ad9e3ed2..250ba8ca3ff427b3ac18aa4d82b28fecf8cb819b 100644 (file)
@@ -162,7 +162,7 @@ public enum EiscpCommand {
     ZONE3_SOURCE_SET("SL3", "%02X"),
     ZONE3_SOURCE("SL3", "");
 
-    public static enum Zone {
+    public enum Zone {
         MAIN,
         ZONE1,
         ZONE2,
index 683bdba3c49bd1e7e7b1974a8bb4f5a6d65ec9d4..f986e47df28b0e7ef4b47654c7f8fe3eb1ca9341 100644 (file)
@@ -137,7 +137,7 @@ public class EiscpProtocol {
             // version
             final byte versionChar = stream.readByte();
             if (versionChar != 1) {
-                throw new EiscpException("Unsupported version " + String.valueOf(versionChar));
+                throw new EiscpException("Unsupported version " + versionChar);
             }
 
             // skip 3 reserved bytes
index e0dff912c92a14805e4c9704ac7ef58ab2d04f55..4b2570efcec0df312f677877cd381546f01e1762 100644 (file)
@@ -18,7 +18,6 @@ import java.io.IOException;
 import java.io.StringReader;
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.List;
 import java.util.concurrent.ScheduledFuture;
 import java.util.concurrent.TimeUnit;
@@ -179,8 +178,8 @@ public class OnkyoHandler extends OnkyoUpnpHandler implements OnkyoEventListener
                 handleVolumeSet(EiscpCommand.Zone.ZONE1, volumeLevelZone1, command);
                 break;
             case CHANNEL_INPUT:
-                if (command instanceof DecimalType) {
-                    selectInput(((DecimalType) command).intValue());
+                if (command instanceof DecimalType decimalCommand) {
+                    selectInput(decimalCommand.intValue());
                 } else if (command.equals(RefreshType.REFRESH)) {
                     sendCommand(EiscpCommand.SOURCE_QUERY);
                 }
@@ -793,11 +792,11 @@ public class OnkyoHandler extends OnkyoUpnpHandler implements OnkyoEventListener
             } else if (command instanceof StringType) {
                 val = String.format(valTemplate, command);
 
-            } else if (command instanceof DecimalType) {
-                val = String.format(valTemplate, ((DecimalType) command).intValue());
+            } else if (command instanceof DecimalType decimalCommand) {
+                val = String.format(valTemplate, decimalCommand.intValue());
 
-            } else if (command instanceof PercentType) {
-                val = String.format(valTemplate, ((DecimalType) command).intValue());
+            } else if (command instanceof PercentType percentCommand) {
+                val = String.format(valTemplate, percentCommand.intValue());
             } else {
                 val = valTemplate;
             }
@@ -857,12 +856,11 @@ public class OnkyoHandler extends OnkyoUpnpHandler implements OnkyoEventListener
     }
 
     private void handleVolumeSet(EiscpCommand.Zone zone, final State currentValue, final Command command) {
-        if (command instanceof PercentType) {
-            sendCommand(EiscpCommand.getCommandForZone(zone, EiscpCommand.VOLUME_SET),
-                    downScaleVolume((PercentType) command));
+        if (command instanceof PercentType percentCommand) {
+            sendCommand(EiscpCommand.getCommandForZone(zone, EiscpCommand.VOLUME_SET), downScaleVolume(percentCommand));
         } else if (command.equals(IncreaseDecreaseType.INCREASE)) {
-            if (currentValue instanceof PercentType) {
-                if (((DecimalType) currentValue).intValue() < configuration.volumeLimit) {
+            if (currentValue instanceof PercentType percentCommand) {
+                if (percentCommand.intValue() < configuration.volumeLimit) {
                     sendCommand(EiscpCommand.getCommandForZone(zone, EiscpCommand.VOLUME_UP));
                 } else {
                     logger.info("Volume level is limited to {}, ignore volume up command.", configuration.volumeLimit);
@@ -881,8 +879,8 @@ public class OnkyoHandler extends OnkyoUpnpHandler implements OnkyoEventListener
     }
 
     private State handleReceivedVolume(State volume) {
-        if (volume instanceof DecimalType) {
-            return upScaleVolume(((DecimalType) volume));
+        if (volume instanceof DecimalType decimalCommand) {
+            return upScaleVolume(decimalCommand);
         }
         return volume;
     }
@@ -921,8 +919,8 @@ public class OnkyoHandler extends OnkyoUpnpHandler implements OnkyoEventListener
     }
 
     public PercentType getVolume() throws IOException {
-        if (volumeLevelZone1 instanceof PercentType) {
-            return (PercentType) volumeLevelZone1;
+        if (volumeLevelZone1 instanceof PercentType percentCommand) {
+            return percentCommand;
         }
 
         throw new IOException();
@@ -944,6 +942,6 @@ public class OnkyoHandler extends OnkyoUpnpHandler implements OnkyoEventListener
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singletonList(OnkyoThingActions.class);
+        return List.of(OnkyoThingActions.class);
     }
 }
index c109edd729a4f7170e1b0274873ce5d242be58a0..08e266168b552b79bbea6b7ac90401d3dd8f95ef 100644 (file)
@@ -43,7 +43,7 @@ public abstract class OnkyoUpnpHandler extends BaseThingHandler implements UpnpI
     }
 
     protected void handlePlayUri(Command command) {
-        if (command != null && command instanceof StringType) {
+        if (command instanceof StringType) {
             try {
                 playMedia(command.toString());
 
index 937a5fa66e89f2accee1888716cbb8768105a19f..02704100df9cd66a7e44b2cf026c1d63f6b928dc 100644 (file)
@@ -12,7 +12,6 @@
  */
 package org.openhab.binding.opengarage.internal;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -41,5 +40,5 @@ public class OpenGarageBindingConstants {
     public static final String CHANNEL_OG_VEHICLE = "vehicle"; // now deprecated
     public static final String CHANNEL_OG_VEHICLE_STATUS = "vehicle-status";
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(OPENGARAGE_THING);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(OPENGARAGE_THING);
 }
index 52263aa57c0a661071ca3a68eff5f9e988214a66..7deed6cd6655c89666224096c4eb794098996d8f 100644 (file)
@@ -37,7 +37,7 @@ public class OpenSprinklerState {
     public List<StateOption> stations = new ArrayList<>();
 
     public static class JsResponse {
-        public int sn[] = new int[8];
+        public int[] sn = new int[8];
         public int nstations = 8;
     }
 
index 9c54d25e7718c639213cf522e5068ebffb066760..4851a9785acd402e18e57bab0307d0bb5ec14eb2 100644 (file)
@@ -127,7 +127,7 @@ public class OpenSprinklerDiscoveryService extends AbstractDiscoveryService {
                 InetAddress currentIP = InetAddress.getByAddress(ByteBuffer.allocate(4).putInt(i).array());
                 // Try to reach each IP with a timeout of 500ms which is enough for local network
                 if (currentIP.isReachable(500)) {
-                    String host = currentIP.getHostAddress().toString();
+                    String host = currentIP.getHostAddress();
                     logger.debug("Unknown device was found at: {}", host);
                     discoverySearchPool.execute(new OpenSprinklerDiscoveryJob(this, host));
                 }
index a614441a614bd8c58a4eb30d863786f85b4952d5..d49963a63b8d17a6034b7ddecc76d12b84cf6b4f 100644 (file)
@@ -47,9 +47,7 @@ public class Hash {
                 sb.append(String.format("%02x", b & 0xff));
             }
 
-            String digest = sb.toString();
-
-            return digest;
+            return sb.toString();
         } catch (Exception exp) {
             // Instead of null we return the unhashed password.
             return unhashed;
index b4fcd9d9281c14098daec3bfefb6e5f1708ef75b..fba16e3432dab1a5ae1f2e25c634b8a86863d074 100644 (file)
@@ -85,11 +85,10 @@ public abstract class BaseDeviceHandler extends BaseThingHandler {
         }
 
         for (DataItem dataItem : dataItems) {
-            if (dataItem instanceof TspFhbSizeDataItem) {
+            if (dataItem instanceof TspFhbSizeDataItem sizeDataItem) {
                 logger.debug("Received TSP or FHB size message {} ({})", message.getID(), dataItem.getSubject());
 
-                verifyTspFhbChannels(((TspFhbSizeDataItem) dataItem).getValueId(),
-                        message.getUInt(dataItem.getByteType()));
+                verifyTspFhbChannels(sizeDataItem.getValueId(), message.getUInt(dataItem.getByteType()));
             } else {
                 String channelId = dataItem.getChannelId(message);
 
index bb82111cba390abe7d8f2562bf0e86240b6a97f9..a5153430344a1edcf1f326faf0bcb2bf33db3d0f 100644 (file)
@@ -89,12 +89,11 @@ public class OpenThermGatewayHandler extends BaseBridgeHandler implements OpenTh
 
             GatewayCommand gatewayCommand = null;
 
-            if (command instanceof OnOffType) {
-                OnOffType onOff = (OnOffType) command;
-                gatewayCommand = GatewayCommand.parse(code, onOff == OnOffType.ON ? "1" : "0");
+            if (command instanceof OnOffType onOffCommand) {
+                gatewayCommand = GatewayCommand.parse(code, onOffCommand == OnOffType.ON ? "1" : "0");
             }
-            if (command instanceof QuantityType<?>) {
-                QuantityType<?> quantityType = ((QuantityType<?>) command).toUnit(SIUnits.CELSIUS);
+            if (command instanceof QuantityType<?> quantityCommand) {
+                QuantityType<?> quantityType = quantityCommand.toUnit(SIUnits.CELSIUS);
 
                 if (quantityType != null) {
                     double value = quantityType.doubleValue();
@@ -109,19 +108,19 @@ public class OpenThermGatewayHandler extends BaseBridgeHandler implements OpenTh
             sendCommand(gatewayCommand);
 
             if (GatewayCommandCode.CONTROLSETPOINT.equals(code)) {
-                if (gatewayCommand.getMessage().equals("0.0")) {
+                if ("0.0".equals(gatewayCommand.getMessage())) {
                     updateState(OpenThermGatewayBindingConstants.CHANNEL_OVERRIDE_CENTRAL_HEATING_WATER_SETPOINT,
                             UnDefType.UNDEF);
                 }
                 updateState(OpenThermGatewayBindingConstants.CHANNEL_OVERRIDE_CENTRAL_HEATING_ENABLED,
-                        OnOffType.from(!gatewayCommand.getMessage().equals("0.0")));
+                        OnOffType.from(!"0.0".equals(gatewayCommand.getMessage())));
             } else if (GatewayCommandCode.CONTROLSETPOINT2.equals(code)) {
-                if (gatewayCommand.getMessage().equals("0.0")) {
+                if ("0.0".equals(gatewayCommand.getMessage())) {
                     updateState(OpenThermGatewayBindingConstants.CHANNEL_OVERRIDE_CENTRAL_HEATING2_WATER_SETPOINT,
                             UnDefType.UNDEF);
                 }
                 updateState(OpenThermGatewayBindingConstants.CHANNEL_OVERRIDE_CENTRAL_HEATING2_ENABLED,
-                        OnOffType.from(!gatewayCommand.getMessage().equals("0.0")));
+                        OnOffType.from(!"0.0".equals(gatewayCommand.getMessage())));
             }
         }
     }
index 70a6cf6d30c153828ce00bc327f720ebcf2ee35b..fe4e0a54546ebdc64e89ae432e019e9cf4229bcd 100644 (file)
@@ -45,7 +45,7 @@ public class OpenUVResult {
         @SerializedName("st5")
         V, // Fitzpatrick Skin Type V
         @SerializedName("st6")
-        VI;// Fitzpatrick Skin Type VI
+        VI// Fitzpatrick Skin Type VI
     }
 
     private double uv;
index c062250f4685992a61ae448177e0d063ef27bc82..df066e136edc25df052c5fd074800d89692ac000 100644 (file)
@@ -84,8 +84,8 @@ public class OpenWebNetCENActions implements ThingActions {
 
     // legacy delegate methods
     public static void virtualPress(@Nullable ThingActions actions, @Nullable String press, int button) {
-        if (actions instanceof OpenWebNetCENActions) {
-            ((OpenWebNetCENActions) actions).virtualPress(press, button);
+        if (actions instanceof OpenWebNetCENActions openWebNetCENActions) {
+            openWebNetCENActions.virtualPress(press, button);
         } else {
             throw new IllegalArgumentException("Instance is not an OpenWebNetCENActions class.");
         }
index e62431b21f465d9fbdf7060cbc377b592bd4dfed..d16613c1577c4e86f4a7c5430a65ca32318c3508 100644 (file)
@@ -13,7 +13,6 @@
 package org.openhab.binding.openwebnet.internal.discovery;
 
 import java.util.Arrays;
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Optional;
@@ -145,7 +144,7 @@ public class BusGatewayUpnpDiscovery implements UpnpDiscoveryParticipant {
 
     @Override
     public Set<ThingTypeUID> getSupportedThingTypeUIDs() {
-        return Collections.singleton(OpenWebNetBindingConstants.THING_TYPE_BUS_GATEWAY);
+        return Set.of(OpenWebNetBindingConstants.THING_TYPE_BUS_GATEWAY);
     }
 
     @Override
index a4de4fb0555231367998e130dea518bbd9379d27..c7dc04aa0afdaf5388f185c400dc33e4658ec510 100644 (file)
@@ -270,14 +270,14 @@ public class OpenWebNetDeviceDiscoveryService extends AbstractDiscoveryService
                     whereConfig, properties.get(OpenWebNetBindingConstants.CONFIG_PROPERTY_STANDALONE));
         }
 
-        if (w instanceof WhereZigBee && WhereZigBee.UNIT_02.equals(((WhereZigBee) w).getUnit())) {
+        if (w instanceof WhereZigBee whereZigBee && WhereZigBee.UNIT_02.equals(whereZigBee.getUnit())) {
             logger.debug("UNIT=02 found (WHERE={}) -> will remove previous result if exists", w);
             thingRemoved(thingUID); // remove previously discovered thing
             // re-create thingUID with new type
             thingTypeUID = OpenWebNetBindingConstants.THING_TYPE_ZB_ON_OFF_SWITCH_2UNITS;
             thingLabel = OpenWebNetBindingConstants.THING_LABEL_ZB_ON_OFF_SWITCH_2UNITS;
             thingUID = new ThingUID(thingTypeUID, bridgeUID, tId);
-            whereConfig = ((WhereZigBee) w).valueWithUnit(WhereZigBee.UNIT_ALL); // replace unit '02' with '00'
+            whereConfig = whereZigBee.valueWithUnit(WhereZigBee.UNIT_ALL); // replace unit '02' with '00'
             logger.debug("UNIT=02, switching type from {} to {}",
                     OpenWebNetBindingConstants.THING_TYPE_ZB_ON_OFF_SWITCH,
                     OpenWebNetBindingConstants.THING_TYPE_ZB_ON_OFF_SWITCH_2UNITS);
@@ -302,9 +302,9 @@ public class OpenWebNetDeviceDiscoveryService extends AbstractDiscoveryService
 
     @Override
     public void setThingHandler(@Nullable ThingHandler handler) {
-        if (handler instanceof OpenWebNetBridgeHandler) {
+        if (handler instanceof OpenWebNetBridgeHandler openWebNetBridgeHandler) {
             logger.debug("attaching {} to handler {} ", this, handler);
-            bridgeHandler = (OpenWebNetBridgeHandler) handler;
+            bridgeHandler = openWebNetBridgeHandler;
             bridgeHandler.deviceDiscoveryService = this;
             bridgeUID = bridgeHandler.getThing().getUID();
         }
index 48fb700c310b6a28b2507bef53a00a67644abbbc..13a771ddddce0f7c14f18f00677f89c68401c82e 100644 (file)
@@ -12,9 +12,9 @@
  */
 package org.openhab.binding.openwebnet.internal.discovery;
 
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
+import java.util.Set;
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.ScheduledFuture;
 import java.util.concurrent.TimeUnit;
@@ -78,8 +78,7 @@ public class UsbGatewayDiscoveryService extends AbstractDiscoveryService impleme
      */
     @Activate
     public UsbGatewayDiscoveryService(final @Reference SerialPortManager spm) {
-        super(Collections.singleton(OpenWebNetBindingConstants.THING_TYPE_ZB_GATEWAY), DISCOVERY_TIMEOUT_SECONDS,
-                false);
+        super(Set.of(OpenWebNetBindingConstants.THING_TYPE_ZB_GATEWAY), DISCOVERY_TIMEOUT_SECONDS, false);
         // Obtain the serial port manager service using an OSGi reference
         serialPortManager = spm;
     }
index e5ba0561c9af779916964c0d6dbc4a9f059fc79e..0618ee6550baa9752f85b27212157812dbedbf97 100644 (file)
@@ -107,12 +107,12 @@ public class OpenWebNetAutomationHandler extends OpenWebNetThingHandler {
             if (shutterRunConfig == null) {
                 shutterRunConfig = AUTO_CALIBRATION;
                 logger.debug("shutterRun null --> default to AUTO");
-            } else if (shutterRunConfig instanceof String) {
-                if (AUTO_CALIBRATION.equalsIgnoreCase(((String) shutterRunConfig))) {
+            } else if (shutterRunConfig instanceof String stringValue) {
+                if (AUTO_CALIBRATION.equalsIgnoreCase(stringValue)) {
                     logger.debug("shutterRun set to AUTO via configuration");
                     shutterRun = SHUTTER_RUN_UNDEFINED; // reset shutterRun
                 } else { // try to parse int>=1000
-                    int shutterRunInt = Integer.parseInt((String) shutterRunConfig);
+                    int shutterRunInt = Integer.parseInt(stringValue);
                     if (shutterRunInt < 1000) {
                         throw new NumberFormatException();
                     }
@@ -210,8 +210,8 @@ public class OpenWebNetAutomationHandler extends OpenWebNetThingHandler {
                             } else {
                                 send(Automation.requestMoveDown(w.value()));
                             }
-                        } else if (command instanceof PercentType) {
-                            handlePercentCommand((PercentType) command, w.value());
+                        } else if (command instanceof PercentType percentCommand) {
+                            handlePercentCommand(percentCommand, w.value());
                         }
                     }
                 } else {
index 6522eae33cc8ed8c36f0b28ca0d01109e42ab5d9..05139bded4be4a0b4d24a2f1ea976714b10de054 100644 (file)
@@ -268,7 +268,7 @@ public class OpenWebNetBridgeHandler extends ConfigStatusBridgeHandler implement
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(OpenWebNetDeviceDiscoveryService.class);
+        return Set.of(OpenWebNetDeviceDiscoveryService.class);
     }
 
     /**
@@ -505,8 +505,7 @@ public class OpenWebNetBridgeHandler extends ConfigStatusBridgeHandler implement
             return; // we ignore ACKS/NACKS
         }
         // GATEWAY MANAGEMENT
-        if (msg instanceof GatewayMgmt) {
-            GatewayMgmt gwMsg = (GatewayMgmt) msg;
+        if (msg instanceof GatewayMgmt gwMsg) {
             if (dateTimeSynch && GatewayMgmt.DimGatewayMgmt.DATETIME.equals(gwMsg.getDim())) {
                 checkDateTimeDiff(gwMsg);
             }
@@ -573,9 +572,9 @@ public class OpenWebNetBridgeHandler extends ConfigStatusBridgeHandler implement
             logger.warn("received onConnected() but gateway is null");
             return;
         }
-        if (gw instanceof USBGateway) {
+        if (gw instanceof USBGateway usbGateway) {
             logger.info("---- CONNECTED to Zigbee USB gateway bridge '{}' (serialPort: {})", thing.getUID(),
-                    ((USBGateway) gw).getSerialPortName());
+                    usbGateway.getSerialPortName());
         } else {
             logger.info("---- CONNECTED to BUS gateway bridge '{}' ({}:{})", thing.getUID(),
                     ((BUSGateway) gw).getHost(), ((BUSGateway) gw).getPort());
@@ -736,8 +735,8 @@ public class OpenWebNetBridgeHandler extends ConfigStatusBridgeHandler implement
      */
     public String normalizeWhere(Where where) {
         String str = where.value();
-        if (where instanceof WhereZigBee) {
-            str = ((WhereZigBee) where).valueWithUnit(WhereZigBee.UNIT_ALL); // 76543210X#9 --> 765432100#9
+        if (where instanceof WhereZigBee whereZigBee) {
+            str = whereZigBee.valueWithUnit(WhereZigBee.UNIT_ALL); // 76543210X#9 --> 765432100#9
         } else {
             if (str.indexOf("#4#") == -1) { // skip APL#4#bus case
                 if (str.indexOf('#') == 0) { // Thermo central unit (#0) or zone via central unit (#Z, Z=[1-99]) --> Z,
index 639b16eead6655f2256d5b6deb54042845b631cd..d00a3bb76c86494bed5f264a24af56571bfded86 100644 (file)
@@ -169,8 +169,8 @@ public class OpenWebNetLightingHandler extends OpenWebNetThingHandler {
      */
     private void handleBrightnessCommand(Command command) {
         logger.debug("handleBrightnessCommand() command={}", command);
-        if (command instanceof PercentType) {
-            dimLightTo(((PercentType) command).intValue(), command);
+        if (command instanceof PercentType percentCommand) {
+            dimLightTo(percentCommand.intValue(), command);
         } else if (command instanceof IncreaseDecreaseType) {
             if (IncreaseDecreaseType.INCREASE.equals(command)) {
                 dimLightTo(brightness + 10, command);
index 8f89747285f8dbaf2a40f30888313652246d1179..e62342936871ec48988a8a30629d51e98ad5650b 100644 (file)
@@ -16,7 +16,6 @@ import static org.openhab.binding.openwebnet.internal.OpenWebNetBindingConstants
 
 import java.util.Arrays;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.Optional;
 import java.util.Scanner;
 import java.util.Set;
@@ -162,7 +161,7 @@ public class OpenWebNetScenarioHandler extends OpenWebNetThingHandler {
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(OpenWebNetCENActions.class);
+        return Set.of(OpenWebNetCENActions.class);
     }
 
     @Override
index 10d2db5cf01d418894be8a0cc5c7191c9c5a79f1..d4ba57c2594983d3138a5f59281aaae2b7e07575 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.oppo.internal;
 
 import static org.openhab.binding.oppo.internal.OppoBindingConstants.*;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -39,7 +38,7 @@ import org.osgi.service.component.annotations.Reference;
 @NonNullByDefault
 @Component(configurationPid = "binding.oppo", service = ThingHandlerFactory.class)
 public class OppoHandlerFactory extends BaseThingHandlerFactory {
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_PLAYER);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_PLAYER);
 
     private final SerialPortManager serialPortManager;
 
@@ -62,9 +61,7 @@ public class OppoHandlerFactory extends BaseThingHandlerFactory {
         ThingTypeUID thingTypeUID = thing.getThingTypeUID();
 
         if (SUPPORTED_THING_TYPES_UIDS.contains(thingTypeUID)) {
-            OppoHandler handler = new OppoHandler(thing, stateDescriptionProvider, serialPortManager);
-
-            return handler;
+            return new OppoHandler(thing, stateDescriptionProvider, serialPortManager);
         }
         return null;
     }
index 09d9961f848ff018160c1121343a99553133543c..998482d06cefb892548b338b50b7077ab94f3090 100644 (file)
@@ -53,7 +53,7 @@ import org.slf4j.LoggerFactory;
 @NonNullByDefault
 @Component(service = DiscoveryService.class, configurationPid = "discovery.oppo")
 public class OppoDiscoveryService extends AbstractDiscoveryService {
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_PLAYER);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_PLAYER);
 
     private final Logger logger = LoggerFactory.getLogger(OppoDiscoveryService.class);
 
index 6030544a4f9de1f2adf0c09e0c57fdb94be7d2ec..e7d5f24f0de42570f99bee6f12dd228dd4818bfd 100644 (file)
@@ -268,8 +268,8 @@ public class OppoHandler extends BaseThingHandler implements OppoMessageEventLis
                         }
                         break;
                     case CHANNEL_SOURCE:
-                        if (command instanceof DecimalType) {
-                            int value = ((DecimalType) command).intValue();
+                        if (command instanceof DecimalType decimalCommand) {
+                            int value = decimalCommand.intValue();
                             connector.sendCommand(OppoCommand.SET_INPUT_SOURCE, String.valueOf(value));
                         }
                         break;
@@ -297,14 +297,14 @@ public class OppoHandler extends BaseThingHandler implements OppoMessageEventLis
                         }
                         break;
                     case CHANNEL_SUB_SHIFT:
-                        if (command instanceof DecimalType) {
-                            int value = ((DecimalType) command).intValue();
+                        if (command instanceof DecimalType decimalCommand) {
+                            int value = decimalCommand.intValue();
                             connector.sendCommand(OppoCommand.SET_SUBTITLE_SHIFT, String.valueOf(value));
                         }
                         break;
                     case CHANNEL_OSD_POSITION:
-                        if (command instanceof DecimalType) {
-                            int value = ((DecimalType) command).intValue();
+                        if (command instanceof DecimalType decimalCommand) {
+                            int value = decimalCommand.intValue();
                             connector.sendCommand(OppoCommand.SET_OSD_POSITION, String.valueOf(value));
                         }
                         break;
@@ -843,7 +843,7 @@ public class OppoHandler extends BaseThingHandler implements OppoMessageEventLis
         if (model == MODEL83 || model == MODEL103 || model == MODEL105) {
             hdmiModeOptions.add(new StateOption("AUTO", "Auto"));
             hdmiModeOptions.add(new StateOption("SRC", "Source Direct"));
-            if (!(model == MODEL83)) {
+            if (model != MODEL83) {
                 hdmiModeOptions.add(new StateOption("4K2K", "4K*2K"));
             }
             hdmiModeOptions.add(new StateOption("1080P", "1080P"));
index 21dcdc79ff0df60a51d32c266c12b30ca0bfc207..41a3992fb7e96e47ecbf04f0fae9a342f3d02317 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.orbitbhyve.internal.discovery;
 
 import static org.openhab.binding.orbitbhyve.internal.OrbitBhyveBindingConstants.THING_TYPE_SPRINKLER;
 
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -79,8 +78,8 @@ public class OrbitBhyveDiscoveryService extends AbstractDiscoveryService
 
     @Override
     public void setThingHandler(@Nullable ThingHandler thingHandler) {
-        if (thingHandler instanceof OrbitBhyveBridgeHandler) {
-            bridgeHandler = (OrbitBhyveBridgeHandler) thingHandler;
+        if (thingHandler instanceof OrbitBhyveBridgeHandler bridgeHandler) {
+            this.bridgeHandler = bridgeHandler;
         }
     }
 
@@ -145,6 +144,6 @@ public class OrbitBhyveDiscoveryService extends AbstractDiscoveryService
 
     @Override
     public Set<ThingTypeUID> getSupportedThingTypes() {
-        return Collections.singleton(THING_TYPE_SPRINKLER);
+        return Set.of(THING_TYPE_SPRINKLER);
     }
 }
index 90b91d9fda1b4e6732bbdb00f1f3bf389a410b80..d0a7aadd7fc01c553919746ecc9330653a3d15d3 100644 (file)
@@ -23,6 +23,7 @@ import java.util.Collection;
 import java.util.Collections;
 import java.util.Date;
 import java.util.List;
+import java.util.Set;
 import java.util.concurrent.ExecutionException;
 import java.util.concurrent.Future;
 import java.util.concurrent.ScheduledFuture;
@@ -109,7 +110,7 @@ public class OrbitBhyveBridgeHandler extends ConfigStatusBridgeHandler {
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(OrbitBhyveDiscoveryService.class);
+        return Set.of(OrbitBhyveDiscoveryService.class);
     }
 
     @Override
@@ -230,8 +231,7 @@ public class OrbitBhyveBridgeHandler extends ConfigStatusBridgeHandler {
                 if (logger.isTraceEnabled()) {
                     logger.trace("Device response: {}", response.getContentAsString());
                 }
-                OrbitBhyveDevice device = gson.fromJson(response.getContentAsString(), OrbitBhyveDevice.class);
-                return device;
+                return gson.fromJson(response.getContentAsString(), OrbitBhyveDevice.class);
             } else {
                 logger.debug("Returned status: {}", response.getStatus());
                 updateStatus(ThingStatus.OFFLINE, ThingStatusDetail.COMMUNICATION_ERROR,
@@ -316,10 +316,10 @@ public class OrbitBhyveBridgeHandler extends ConfigStatusBridgeHandler {
             if (th.isEnabled()) {
                 String deviceId = th.getUID().getId();
                 ThingHandler handler = th.getHandler();
-                if (handler instanceof OrbitBhyveSprinklerHandler) {
+                if (handler instanceof OrbitBhyveSprinklerHandler sprinklerHandler) {
                     for (OrbitBhyveDevice device : devices) {
                         if (deviceId.equals(th.getUID().getId())) {
-                            updateDeviceStatus(device, (OrbitBhyveSprinklerHandler) handler);
+                            updateDeviceStatus(device, sprinklerHandler);
                         }
                     }
                 }
@@ -340,9 +340,9 @@ public class OrbitBhyveBridgeHandler extends ConfigStatusBridgeHandler {
         for (Thing th : getThing().getThings()) {
             if (deviceId.equals(th.getUID().getId())) {
                 ThingHandler handler = th.getHandler();
-                if (handler instanceof OrbitBhyveSprinklerHandler) {
+                if (handler instanceof OrbitBhyveSprinklerHandler sprinklerHandler) {
                     OrbitBhyveDevice device = getDevice(deviceId);
-                    updateDeviceStatus(device, (OrbitBhyveSprinklerHandler) handler);
+                    updateDeviceStatus(device, sprinklerHandler);
                 }
             }
         }
@@ -352,8 +352,8 @@ public class OrbitBhyveBridgeHandler extends ConfigStatusBridgeHandler {
         for (Thing th : getThing().getThings()) {
             if (program.getDeviceId().equals(th.getUID().getId())) {
                 ThingHandler handler = th.getHandler();
-                if (handler instanceof OrbitBhyveSprinklerHandler) {
-                    ((OrbitBhyveSprinklerHandler) handler).updateProgram(program);
+                if (handler instanceof OrbitBhyveSprinklerHandler sprinklerHandler) {
+                    sprinklerHandler.updateProgram(program);
                 }
             }
         }
index d5bbba1c27305054f3067e254b8368bdeb9320c3..2f20e03b5cbbb3bdd688ecaa070b1d5313c72e97 100644 (file)
@@ -81,8 +81,8 @@ public class OrbitBhyveSprinklerHandler extends BaseThingHandler {
                 handler.stopWatering(deviceId);
                 return;
             }
-            if (CHANNEL_WATERING_TIME.equals(channelUID.getId()) && command instanceof QuantityType) {
-                final QuantityType<?> value = ((QuantityType<?>) command).toUnit(Units.MINUTE);
+            if (CHANNEL_WATERING_TIME.equals(channelUID.getId()) && command instanceof QuantityType quantityCommand) {
+                final QuantityType<?> value = quantityCommand.toUnit(Units.MINUTE);
                 if (value != null) {
                     wateringTime = value.intValue();
                 }
index 2a475339bbb1cd1840dc6df032959760ee3a8d0d..199f73a9052f7b8e411d6680cda7552e66eadf83 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.orvibo.internal;
 
 import static org.openhab.binding.orvibo.internal.OrviboBindingConstants.THING_TYPE_S20;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.openhab.binding.orvibo.internal.handler.S20Handler;
@@ -34,7 +33,7 @@ import org.osgi.service.component.annotations.Component;
 @Component(service = ThingHandlerFactory.class, configurationPid = "binding.orvibo")
 public class OrviboHandlerFactory extends BaseThingHandlerFactory {
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_S20);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_S20);
 
     @Override
     public boolean supportsThingType(ThingTypeUID thingTypeUID) {
index 9e8eafd46c503f8df3b61731f847ca2269d55403..990fbec606ffab3e268fb7dbdc1c8b0ff914e054 100644 (file)
@@ -13,7 +13,6 @@
 package org.openhab.binding.orvibo.internal.discovery;
 
 import java.net.SocketException;
-import java.util.Collections;
 import java.util.Map;
 import java.util.Set;
 
@@ -50,7 +49,7 @@ public class SocketDiscoveryService extends AbstractDiscoveryService implements
     }
 
     private static Set<ThingTypeUID> getSupportedThingTypeUIDs() {
-        return Collections.singleton(OrviboBindingConstants.THING_TYPE_S20);
+        return Set.of(OrviboBindingConstants.THING_TYPE_S20);
     }
 
     @Override
@@ -109,8 +108,7 @@ public class SocketDiscoveryService extends AbstractDiscoveryService implements
     }
 
     private ThingUID getUID(Socket socket) {
-        ThingUID thingUID = new ThingUID(OrviboBindingConstants.THING_TYPE_S20, socket.getDeviceId());
-        return thingUID;
+        return new ThingUID(OrviboBindingConstants.THING_TYPE_S20, socket.getDeviceId());
     }
 
     private void doThingDiscovered(Socket socket) {
index 56c8a367be17c05741116f7c488c469f8e482745..0e8bcc593a3dc0910d01ac34dd4692420be0d77b 100644 (file)
@@ -225,7 +225,7 @@ public enum CommunicationState implements IResponseReceiver {
         }
 
         private byte[] generateInitializationRequest(byte[] initializationMessage, byte[] pcPassword) {
-            byte[] message7 = new byte[] {
+            return new byte[] {
                     // Initialization command
                     0x00,
 
@@ -282,7 +282,6 @@ public enum CommunicationState implements IResponseReceiver {
 
                     // Checksum
                     0x00 };
-            return message7;
         }
 
         @Override
@@ -290,11 +289,10 @@ public enum CommunicationState implements IResponseReceiver {
             // UGLY - this is the handling of ghost packet which appears after the logon sequence
             // Read ghost packet affter 300ms then continue with normal flow
             communicator.getScheduler().schedule(() -> {
-                if (communicator instanceof GenericCommunicator) {
+                if (communicator instanceof GenericCommunicator genericCommunicator) {
                     try {
-                        GenericCommunicator genCommunicator = (GenericCommunicator) communicator;
                         byte[] value = new byte[256];
-                        int packetLength = genCommunicator.getRx().read(value);
+                        int packetLength = genericCommunicator.getRx().read(value);
                         logger.debug("Reading ghost packet with length={}", packetLength);
                         ParadoxUtil.printPacket("Reading ghost packet", value);
                     } catch (IOException e) {
@@ -315,8 +313,7 @@ public enum CommunicationState implements IResponseReceiver {
 
         @Override
         protected void runPhase(IParadoxInitialLoginCommunicator communicator, Object... args) {
-            if (communicator instanceof IParadoxCommunicator) {
-                IParadoxCommunicator comm = (IParadoxCommunicator) communicator;
+            if (communicator instanceof IParadoxCommunicator comm) {
                 comm.initializeData();
             }
             nextState().runPhase(communicator);
index a87bacd46be855e5b2c13d87acbed4a4afa710df..078ef7adfe5fc32e6ec1767908bb9da26a2e3c5d 100644 (file)
@@ -163,8 +163,7 @@ public class EncryptionHandler {
             byteArray[i] = (byte) (keyBytes[i] & 0xFF);
         }
 
-        byte[] expandedArray = ParadoxUtil.extendArray(byteArray, KEY_ARRAY_LENGTH);
-        return expandedArray;
+        return ParadoxUtil.extendArray(byteArray, KEY_ARRAY_LENGTH);
     }
 
     private void expandKey(byte[] input) {
index ba014c821e6ccd74e05662b7a478eadcbd73c864..7359267b8138ca68b3e9323176ecc7826a24fe48 100644 (file)
@@ -98,7 +98,7 @@ public class ParadoxDiscoveryService extends AbstractDiscoveryService {
 
     private void discoverZones(List<Zone> zones) {
         zones.stream().forEach(zone -> {
-            String thingId = zone.getLabel().replaceAll(" ", "_");
+            String thingId = zone.getLabel().replace(" ", "_");
             String label = zone.getLabel();
             ThingUID bridgeUid = ip150BridgeHandler.getThing().getUID();
 
index 99855a25fbb4fbc8e306d3ffd92b901e246a4c8f..bfdcd92f614bbabe01825e3e2c0b6bd23250893e 100644 (file)
@@ -121,7 +121,6 @@ public class ParadoxPartitionHandler extends EntityBaseHandler {
             return null;
         }
 
-        Partition partition = partitions.get(index);
-        return partition;
+        return partitions.get(index);
     }
 }
index c2ab9c15007f14a12a50bc5dcf749bf69a7cff15..b9e620216dda1a2de4d544c4f268819fda6e481e 100644 (file)
@@ -131,8 +131,7 @@ public class ParadoxZoneHandler extends EntityBaseHandler {
             return null;
         }
 
-        Zone zone = zones.get(index);
-        return zone;
+        return zones.get(index);
     }
 
     private ParadoxIP150BridgeHandler getBridgeHandler() {
index 1624b9d2447c3c9b6772d0b351c2a0b6ffa56031..bad674affb8555d5ad213908120aad6a0738c0d0 100644 (file)
@@ -129,8 +129,7 @@ public class ParadoxUtil {
             for (byte[] array : arrays) {
                 outputStream.write(array);
             }
-            byte[] byteArray = outputStream.toByteArray();
-            return byteArray;
+            return outputStream.toByteArray();
         } catch (IOException e) {
             LOGGER.warn("Exception merging arrays:", e);
             return new byte[0];
index ab3f0f84a5277c9e6c107a502af21b121db58c64..e3629a96c448b634e48447dd3f94bdad7375f2db 100644 (file)
@@ -246,7 +246,7 @@ public abstract class PentairBaseBridgeHandler extends BaseBridgeHandler {
         @Override
         public void run() {
             logger.debug("parser thread started");
-            byte buf[] = new byte[40];
+            byte[] buf = new byte[40];
             int c;
             int chksum, i, length;
             Thing thing;
index 12f753c69fb566dafceff9a6dd82572265fac747..cb0e47f97049d3c2ff713801423648a990453d73 100644 (file)
@@ -98,8 +98,8 @@ public class PentairEasyTouchHandler extends PentairBaseThingHandler {
             return;
         }
 
-        if (command instanceof OnOffType) {
-            boolean state = ((OnOffType) command) == OnOffType.ON;
+        if (command instanceof OnOffType onOffCommand) {
+            boolean state = onOffCommand == OnOffType.ON;
 
             switch (channelUID.getId()) {
                 case EASYTOUCH_POOL:
@@ -154,8 +154,8 @@ public class PentairEasyTouchHandler extends PentairBaseThingHandler {
                     circuitSwitch(18, state);
                     break;
             }
-        } else if (command instanceof DecimalType) {
-            int sp = ((DecimalType) command).intValue();
+        } else if (command instanceof DecimalType decimalCommand) {
+            int sp = decimalCommand.intValue();
 
             switch (channelUID.getId()) {
                 case EASYTOUCH_SPASETPOINT:
index 7e9bc0a9673194b8609f33f07b1ed684a4e569fe..66f59b3b80858b63a973912a658317dbc4072919 100644 (file)
@@ -57,8 +57,8 @@ public class PentairSerialBridgeHandler extends PentairBaseBridgeHandler {
                 throw new IllegalStateException("cannot open serial port!");
             }
 
-            if (cp instanceof SerialPort) {
-                port = (SerialPort) cp;
+            if (cp instanceof SerialPort serialPort) {
+                port = serialPort;
             } else {
                 throw new IllegalStateException("unknown port type");
             }
index 23058f613992506878e3aa156626b85d6b361fac..ab02283e0ba62da60ecad89c999b54727f3e1b8b 100644 (file)
@@ -38,9 +38,7 @@ public class PHCHelper {
         String thingID = StringUtils.padLeft(Integer.toBinaryString(moduleAddr & 0xFF).trim(), 5, "0");
         thingID = new StringBuilder(thingID).reverse().toString();
 
-        ThingUID thingUID = new ThingUID(thingTypeUID, thingID);
-
-        return thingUID;
+        return new ThingUID(thingTypeUID, thingID);
     }
 
     /**
index f3b279aaf86c4b76fdd4fc2c24dd3c35ebcb7142..534e3a2208a54cbf268a277303ae84a95626f080 100644 (file)
@@ -77,9 +77,9 @@ public class PHCBridgeHandler extends BaseBridgeHandler implements SerialPortEve
     private final BlockingQueue<QueueObject> sendQueue = new LinkedBlockingQueue<>();
     private final ScheduledThreadPoolExecutor threadPoolExecutor = new ScheduledThreadPoolExecutor(3);
 
-    private final byte emLedOutputState[] = new byte[32];
-    private final byte amOutputState[] = new byte[32];
-    private final byte dmOutputState[] = new byte[32];
+    private final byte[] emLedOutputState = new byte[32];
+    private final byte[] amOutputState = new byte[32];
+    private final byte[] dmOutputState = new byte[32];
 
     private final List<Byte> modules = new ArrayList<>();
 
@@ -570,7 +570,8 @@ public class PHCBridgeHandler extends BaseBridgeHandler implements SerialPortEve
 
     private void sendDim(byte moduleAddress, byte channel, Command command, short dimTime) {
         byte module = (byte) (moduleAddress | 0xA0);
-        byte[] cmd = new byte[(command instanceof PercentType && !(((PercentType) command).byteValue() == 0)) ? 3 : 1];
+        byte[] cmd = new byte[(command instanceof PercentType percentCommand && percentCommand.byteValue() != 0) ? 3
+                : 1];
 
         cmd[0] = (byte) (channel << 5);
 
index 5d940e66e1d76549461886ce6ff041bb6ea30398..76106e5a4516063c552ccbd81b7f08eb75d8b613 100644 (file)
@@ -157,8 +157,8 @@ public class PHCHandler extends BaseThingHandler {
             }
 
             ThingHandler handler = bridge.getHandler();
-            if (handler instanceof PHCBridgeHandler) {
-                bridgeHandler = (PHCBridgeHandler) handler;
+            if (handler instanceof PHCBridgeHandler phcBridgeHandler) {
+                bridgeHandler = phcBridgeHandler;
             } else {
                 logger.debug("No available bridge handler for {}.", bridge.getUID());
 
index b02deee8b69ac47da09effe0df9a1aeeed84e61c..20c14d7850a6edda05e207d941e44784ee651f8b 100644 (file)
@@ -18,7 +18,7 @@ import java.io.IOException;
 import java.io.InputStreamReader;
 import java.io.PrintStream;
 import java.net.Socket;
-import java.util.Collections;
+import java.util.List;
 import java.util.concurrent.ConcurrentLinkedQueue;
 import java.util.concurrent.ScheduledExecutorService;
 import java.util.concurrent.ScheduledFuture;
@@ -111,11 +111,11 @@ public class PilightConnector implements Runnable, Closeable {
                                         callback.versionReceived(version);
                                     } else if (line.startsWith("{\"status\":")) {
                                         // currently unused
-                                    } else if (line.equals("1")) {
+                                    } else if ("1".equals(line)) {
                                         throw new IOException("Connection to pilight lost");
                                     } else {
                                         final @Nullable Status status = inputMapper.readValue(line, Status.class);
-                                        callback.statusReceived(Collections.singletonList(status));
+                                        callback.statusReceived(List.of(status));
                                     }
                                 }
 
index e79ac8e198652f1b681d132b275c13a9ebb3cf53..423c04cabb3d50121c6ae441655beb5ede717746 100644 (file)
@@ -57,9 +57,14 @@ public class PilightBridgeDiscoveryService extends AbstractDiscoveryService {
     private static final int AUTODISCOVERY_SEARCH_TIME_SEC = 5;
     private static final int AUTODISCOVERY_BACKGROUND_SEARCH_INTERVAL_SEC = 60 * 10;
 
-    private static final String SSDP_DISCOVERY_REQUEST_MESSAGE = "M-SEARCH * HTTP/1.1\r\n"
-            + "Host:239.255.255.250:1900\r\n" + "ST:urn:schemas-upnp-org:service:pilight:1\r\n"
-            + "Man:\"ssdp:discover\"\r\n" + "MX:3\r\n\r\n";
+    private static final String SSDP_DISCOVERY_REQUEST_MESSAGE = """
+            M-SEARCH * HTTP/1.1
+            Host:239.255.255.250:1900
+            ST:urn:schemas-upnp-org:service:pilight:1
+            Man:"ssdp:discover"
+            MX:3
+
+            """;
     public static final String SSDP_MULTICAST_ADDRESS = "239.255.255.250";
     public static final int SSDP_PORT = 1900;
     public static final int SSDP_WAIT_TIMEOUT = 2000; // in milliseconds
@@ -73,7 +78,7 @@ public class PilightBridgeDiscoveryService extends AbstractDiscoveryService {
     }
 
     public static Set<ThingTypeUID> getSupportedThingTypeUIDs() {
-        return Collections.singleton(PilightBindingConstants.THING_TYPE_BRIDGE);
+        return Set.of(PilightBindingConstants.THING_TYPE_BRIDGE);
     }
 
     @Override
index e4f60da7f23221c35c7ad0e78c32ab88e7087cae..fb14f9551801d40756710b045e26c4635b4a805e 100644 (file)
@@ -165,12 +165,9 @@ public class PilightDeviceDiscoveryService extends AbstractDiscoveryService impl
 
     @Override
     public void setThingHandler(final ThingHandler handler) {
-        if (handler instanceof PilightBridgeHandler) {
-            this.pilightBridgeHandler = (PilightBridgeHandler) handler;
-            final @Nullable PilightBridgeHandler pilightBridgeHandler = this.pilightBridgeHandler;
-            if (pilightBridgeHandler != null) {
-                bridgeUID = pilightBridgeHandler.getThing().getUID();
-            }
+        if (handler instanceof PilightBridgeHandler pilightBridgeHandler) {
+            this.pilightBridgeHandler = pilightBridgeHandler;
+            bridgeUID = pilightBridgeHandler.getThing().getUID();
         }
     }
 
index 2ac0bb9703769c2eafd8bed0f1554de253817269..c124d993521055b1bd19ed2f28918878247445da 100644 (file)
@@ -121,8 +121,8 @@ public abstract class PilightBaseHandler extends BaseThingHandler {
         if (bridge != null) {
             @Nullable
             BridgeHandler handler = bridge.getHandler();
-            if (handler instanceof PilightBridgeHandler) {
-                return (PilightBridgeHandler) handler;
+            if (handler instanceof PilightBridgeHandler bridgeHandler) {
+                return bridgeHandler;
             }
         }
         return null;
index 24a46180cd0259e6c5b30a546a61f1b29bb6b2dd..d29d4f448bff703b55b13c427d9f200b381afa16 100644 (file)
@@ -14,8 +14,8 @@
 package org.openhab.binding.pilight.internal.handler;
 
 import java.util.Collection;
-import java.util.Collections;
 import java.util.List;
+import java.util.Set;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 import java.util.concurrent.ScheduledFuture;
@@ -185,8 +185,8 @@ public class PilightBridgeHandler extends BaseBridgeHandler {
         if (!DeviceType.SERVER.equals(type)) {
             for (Thing thing : getThing().getThings()) {
                 final @Nullable ThingHandler handler = thing.getHandler();
-                if (handler instanceof PilightBaseHandler) {
-                    ((PilightBaseHandler) handler).updateFromStatusIfMatches(status);
+                if (handler instanceof PilightBaseHandler baseHandler) {
+                    baseHandler.updateFromStatusIfMatches(status);
                 }
             }
         }
@@ -194,7 +194,7 @@ public class PilightBridgeHandler extends BaseBridgeHandler {
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(PilightDeviceDiscoveryService.class);
+        return Set.of(PilightDeviceDiscoveryService.class);
     }
 
     /**
@@ -228,8 +228,8 @@ public class PilightBridgeHandler extends BaseBridgeHandler {
     private void processConfig(Config config) {
         for (Thing thing : getThing().getThings()) {
             final @Nullable ThingHandler handler = thing.getHandler();
-            if (handler instanceof PilightBaseHandler) {
-                ((PilightBaseHandler) handler).updateFromConfigIfMatches(config);
+            if (handler instanceof PilightBaseHandler baseHandler) {
+                baseHandler.updateFromConfigIfMatches(config);
             }
         }
 
index ef2afd8d5cf8f15473e3bea3e05be6b3c5d9cb48..2be664af5c302f6fed9284b585f52bad7a6ea739 100644 (file)
@@ -91,8 +91,8 @@ public class PilightDimmerHandler extends PilightBaseHandler {
 
         if (command instanceof OnOffType) {
             code.setState(command.equals(OnOffType.ON) ? Code.STATE_ON : Code.STATE_OFF);
-        } else if (command instanceof PercentType) {
-            setDimmerValue((PercentType) command, code);
+        } else if (command instanceof PercentType percentCommand) {
+            setDimmerValue(percentCommand, code);
         } else {
             logger.warn("Only OnOffType and PercentType are supported by a dimmer.");
             return null;
index 5172b89ba5e069ab03b988e580aea89b6e2c6496..338073b7f3ea97a3f3664f9e892244ca73fe585f 100644 (file)
@@ -41,8 +41,7 @@ public final class RequestResponseFactory {
      * @return
      */
     public static SimpleCommand getIpControlCommand(SimpleCommandType command) {
-        SimpleCommand result = new SimpleCommand(command);
-        return result;
+        return new SimpleCommand(command);
     }
 
     /**
@@ -53,8 +52,7 @@ public final class RequestResponseFactory {
      * @return
      */
     public static SimpleCommand getIpControlCommand(SimpleCommandType command, int zone) {
-        SimpleCommand result = new SimpleCommand(command, zone);
-        return result;
+        return new SimpleCommand(command, zone);
     }
 
     /**
@@ -65,8 +63,7 @@ public final class RequestResponseFactory {
      * @return
      */
     public static ParameterizedCommand getIpControlCommand(ParameterizedCommandType command) {
-        ParameterizedCommand result = new ParameterizedCommand(command);
-        return result;
+        return new ParameterizedCommand(command);
     }
 
     /**
@@ -78,8 +75,7 @@ public final class RequestResponseFactory {
      * @return
      */
     public static ParameterizedCommand getIpControlCommand(ParameterizedCommandType command, int zone) {
-        ParameterizedCommand result = new ParameterizedCommand(command, zone);
-        return result;
+        return new ParameterizedCommand(command, zone);
     }
 
     /**
index 07276274483f4909c01dfdcc3c735042f36ca398..f6012349f3eef7fc08a570f9125d43ad5a4c8f8c 100644 (file)
@@ -44,7 +44,7 @@ public class SimpleCommand implements AvrCommand {
         MCACC_MEMORY_CHANGE_CYCLIC("0MC"),
         MCACC_MEMORY_QUERY("?MC");
 
-        private String zoneCommands[];
+        private String[] zoneCommands;
 
         private SimpleCommandType(String... command) {
             this.zoneCommands = command;
index bc46daaeb7bd7140af96100f1deb092289de8c8a..8b511c46296b4901c8d42d2e24b5e96a42e6b2b4 100644 (file)
@@ -240,14 +240,14 @@ public abstract class StreamAvrConnection implements AvrConnection {
                 commandToSend = RequestResponseFactory.getIpControlCommand(SimpleCommandType.VOLUME_DOWN, zone);
             } else if (command == IncreaseDecreaseType.INCREASE) {
                 commandToSend = RequestResponseFactory.getIpControlCommand(SimpleCommandType.VOLUME_UP, zone);
-            } else if (command instanceof PercentType) {
+            } else if (command instanceof PercentType percentCommand) {
                 String ipControlVolume = VolumeConverter
-                        .convertFromPercentToIpControlVolume(((PercentType) command).doubleValue(), zone);
+                        .convertFromPercentToIpControlVolume(percentCommand.doubleValue(), zone);
                 commandToSend = RequestResponseFactory.getIpControlCommand(ParameterizedCommandType.VOLUME_SET, zone)
                         .setParameter(ipControlVolume);
-            } else if (command instanceof DecimalType) {
-                String ipControlVolume = VolumeConverter
-                        .convertFromDbToIpControlVolume(((DecimalType) command).doubleValue(), zone);
+            } else if (command instanceof DecimalType decimalCommand) {
+                String ipControlVolume = VolumeConverter.convertFromDbToIpControlVolume(decimalCommand.doubleValue(),
+                        zone);
                 commandToSend = RequestResponseFactory.getIpControlCommand(ParameterizedCommandType.VOLUME_SET, zone)
                         .setParameter(ipControlVolume);
             } else {
@@ -267,8 +267,8 @@ public abstract class StreamAvrConnection implements AvrConnection {
             commandToSend = RequestResponseFactory.getIpControlCommand(SimpleCommandType.INPUT_CHANGE_CYCLIC, zone);
         } else if (command == IncreaseDecreaseType.DECREASE) {
             commandToSend = RequestResponseFactory.getIpControlCommand(SimpleCommandType.INPUT_CHANGE_REVERSE, zone);
-        } else if (command instanceof StringType) {
-            String inputSourceValue = ((StringType) command).toString();
+        } else if (command instanceof StringType stringCommand) {
+            String inputSourceValue = stringCommand.toString();
             commandToSend = RequestResponseFactory.getIpControlCommand(ParameterizedCommandType.INPUT_CHANNEL_SET, zone)
                     .setParameter(inputSourceValue);
         } else {
@@ -285,8 +285,8 @@ public abstract class StreamAvrConnection implements AvrConnection {
         if (command == IncreaseDecreaseType.INCREASE) {
             commandToSend = RequestResponseFactory.getIpControlCommand(SimpleCommandType.LISTENING_MODE_CHANGE_CYCLIC,
                     zone);
-        } else if (command instanceof StringType) {
-            String listeningModeValue = ((StringType) command).toString();
+        } else if (command instanceof StringType stringCommand) {
+            String listeningModeValue = stringCommand.toString();
             commandToSend = RequestResponseFactory
                     .getIpControlCommand(ParameterizedCommandType.LISTENING_MODE_SET, zone)
                     .setParameter(listeningModeValue);
@@ -318,8 +318,8 @@ public abstract class StreamAvrConnection implements AvrConnection {
 
         if (command == IncreaseDecreaseType.INCREASE) {
             commandToSend = RequestResponseFactory.getIpControlCommand(SimpleCommandType.MCACC_MEMORY_CHANGE_CYCLIC);
-        } else if (command instanceof StringType) {
-            String MCACCMemoryValue = ((StringType) command).toString();
+        } else if (command instanceof StringType stringCommand) {
+            String MCACCMemoryValue = stringCommand.toString();
             commandToSend = RequestResponseFactory.getIpControlCommand(ParameterizedCommandType.MCACC_MEMORY_SET)
                     .setParameter(MCACCMemoryValue);
         } else {
index c7280a6d2a0a4b9d3a51b4699dc6faa027f0169f..e5979212f96e90500798a300b5db87348d6163f5 100644 (file)
@@ -120,7 +120,7 @@ public class AccountHandler extends BaseBridgeHandler {
                 int expiresIn = Integer.parseInt(responseJson.get("expires_in").toString());
                 setTokenExpiryDate(TimeUnit.SECONDS.toNanos(expiresIn));
 
-                setAuthToken(responseJson.get(AUTH_TOKEN).toString().replaceAll("\"", ""));
+                setAuthToken(responseJson.get(AUTH_TOKEN).toString().replace("\"", ""));
 
                 updateStatus(ThingStatus.ONLINE);
                 return;
index b939bd4da1381981c52b1dba3ac87d3b729c0aee..fa59c837b94108899d76d3e05a9b6a25fa2fb56c 100644 (file)
@@ -12,7 +12,6 @@
  */
 package org.openhab.binding.pixometer.internal;
 
-import java.util.Collections;
 import java.util.Set;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
@@ -40,7 +39,7 @@ public class PixometerBindingConstants {
     public static final ThingTypeUID THING_TYPE_GASMETER = new ThingTypeUID(BINDING_ID, "gasmeter");
     public static final ThingTypeUID THING_TYPE_WATERMETER = new ThingTypeUID(BINDING_ID, "watermeter");
 
-    public static final Set<ThingTypeUID> BRIDGE_THING_TYPES_UIDS = Collections.singleton(BRIDGE_THING_TYPE);
+    public static final Set<ThingTypeUID> BRIDGE_THING_TYPES_UIDS = Set.of(BRIDGE_THING_TYPE);
     public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Stream
             .of(THING_TYPE_ENERGYMETER, THING_TYPE_GASMETER, THING_TYPE_WATERMETER).collect(Collectors.toSet());
 
index f56ef281622cdac84961948fbe1d009d6befe11a..33b1b2e8e53ef9b4eeb79acf8c3d65aa9ae9db91 100644 (file)
@@ -96,7 +96,7 @@ public class CustomReadingInstanceDeserializer implements JsonDeserializer<Readi
      * @return The wanted string without unnecessary quotation marks
      */
     private String getStringFromJson(JsonObject data, String key) {
-        return data.get(key).toString().replaceAll("\"", "");
+        return data.get(key).toString().replace("\"", "");
     }
 
     /**
@@ -104,6 +104,6 @@ public class CustomReadingInstanceDeserializer implements JsonDeserializer<Readi
      * @return returns true if null values have been found, false otherwise
      */
     private boolean checkStringForNullValues(String s) {
-        return (s == null || s.isEmpty() || s.equals("null"));
+        return (s == null || s.isEmpty() || "null".equals(s));
     }
 }
index fd28f1598e72902a3f5eac8823076269a71767a2..9d48d3c059c3b34db829cdedbafa0f86c8ca9452 100644 (file)
@@ -171,9 +171,9 @@ public class PJLinkDeviceHandler extends BaseThingHandler {
                     if (command == RefreshType.REFRESH) {
                         StringType input = new StringType(device.getInputStatus().getResult().getValue());
                         updateState(PJLinkDeviceBindingConstants.CHANNEL_INPUT, input);
-                    } else if (command instanceof StringType) {
+                    } else if (command instanceof StringType stringCommand) {
                         logger.trace("Received input command {}", command);
-                        Input input = new Input(((StringType) command).toString());
+                        Input input = new Input(stringCommand.toString());
                         device.setInput(input);
                     } else {
                         logger.debug("Received unknown channel command {}", command);
index 36c8f41a212cbe5c3a0168d4e1fcebfaa3a7930b..df600f002dd6df1f9ac062ff08862bfbe67366fb 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.pjlinkdevice.internal;
 
 import static org.openhab.binding.pjlinkdevice.internal.PJLinkDeviceBindingConstants.THING_TYPE_PJLINK;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -38,7 +37,7 @@ import org.osgi.service.component.annotations.Reference;
 @Component(configurationPid = "binding.pjlinkdevice", service = { ThingHandlerFactory.class })
 public class PJLinkDeviceHandlerFactory extends BaseThingHandlerFactory {
     private InputChannelStateDescriptionProvider stateDescriptionProvider;
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_PJLINK);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_PJLINK);
 
     @Activate
     public PJLinkDeviceHandlerFactory(@Reference InputChannelStateDescriptionProvider provider) {
index fdbf3444a8db7ccd381bf5364b65e52b924509f5..f4233e7b03e7d6d318e213fe1746326095804dcc 100644 (file)
@@ -171,9 +171,6 @@ public class PJLinkDevice {
                     } else {
                         try {
                             authenticate(rawHeader.substring("PJLINK 1 ".length()));
-                        } catch (AuthenticationException e) {
-                            // propagate AuthenticationException
-                            throw e;
                         } catch (ResponseException e) {
                             // maybe only the test command is broken on the device
                             // as long as we don't get an AuthenticationException, we'll just ignore it for now
@@ -236,16 +233,16 @@ public class PJLinkDevice {
         String response = null;
         while ((response = getReader().readLine()) != null && preprocessResponse(response).isEmpty()) {
             logger.debug("Got empty string response for request '{}' from {}, waiting for another line", response,
-                    fullCommand.replaceAll("\r", "\\\\r"));
+                    fullCommand.replace("\r", "\\\\r"));
         }
         if (response == null) {
-            throw new ResponseException(MessageFormat.format("Response to request ''{0}'' was null",
-                    fullCommand.replaceAll("\r", "\\\\r")));
+            throw new ResponseException(
+                    MessageFormat.format("Response to request ''{0}'' was null", fullCommand.replace("\r", "\\\\r")));
         }
 
         if (logger.isDebugEnabled()) {
             logger.debug("Got response '{}' ({}) for request '{}' from {}", response,
-                    Arrays.toString(response.getBytes()), fullCommand.replaceAll("\r", "\\\\r"), ipAddress);
+                    Arrays.toString(response.getBytes()), fullCommand.replace("\r", "\\\\r"), ipAddress);
         }
         return preprocessResponse(response);
     }
index b869f231705db65c4281d61a5f6526050539bf70..84a0f75ed821d6f3c5446bfd2a853ddc4d06519c 100644 (file)
@@ -59,14 +59,14 @@ public class CachedCommand<ResponseType extends Response<?>> implements Command<
         } catch (CacheException e) {
             // try to unwrap RuntimeException thrown in ExpiringCache
             Throwable cause = e.getCause();
-            if (cause instanceof ResponseException) {
-                throw (ResponseException) cause;
+            if (cause instanceof ResponseException responseException) {
+                throw responseException;
             }
-            if (cause instanceof IOException) {
-                throw (IOException) cause;
+            if (cause instanceof IOException ioException) {
+                throw ioException;
             }
-            if (cause instanceof AuthenticationException) {
-                throw (AuthenticationException) cause;
+            if (cause instanceof AuthenticationException authenticationException) {
+                throw authenticationException;
             }
             throw e;
         }
index fd7f6871e170f568309a926abcd26a86cda7dc72..b649c2ad5115bf8e2db71831003abf5d6739bd45 100644 (file)
@@ -69,7 +69,7 @@ public class LampStatesResponse extends PrefixedResponse<List<LampStatesResponse
         Matcher matcher = RESPONSE_PARSING_PATTERN.matcher(responseWithoutPrefix);
         while (matcher.find()) {
             int lampHours = Integer.parseInt(matcher.group("hours"));
-            boolean active = matcher.group("active").equals("1");
+            boolean active = "1".equals(matcher.group("active"));
             result.add(new LampState(active, lampHours));
         }
         return result;
index 857fc02957e12fd605d2a0fbc24064c14703672b..1e9effbdc0d0241450a6589325e0306eb890ab5b 100644 (file)
@@ -101,8 +101,7 @@ public abstract class AbstractDiscoveryParticipant extends AbstractDiscoveryServ
 
     public static ThingUID createServiceUID(String ip, int tcpPort) {
         // uid must not contains dots
-        return new ThingUID(PJLinkDeviceBindingConstants.THING_TYPE_PJLINK,
-                ip.replace('.', '_') + "_" + String.valueOf(tcpPort));
+        return new ThingUID(PJLinkDeviceBindingConstants.THING_TYPE_PJLINK, ip.replace('.', '_') + "_" + tcpPort);
     }
 
     protected abstract void checkAddress(InetAddress ip, int tcpPort, int timeout);
index d9319f46099a322636b1c064242b9fd9445646f5..607832c23ecdd4e0489ac6e3e1801a1e313add7d 100644 (file)
@@ -17,7 +17,6 @@ import java.net.Inet4Address;
 import java.net.InetAddress;
 import java.net.InterfaceAddress;
 import java.net.UnknownHostException;
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Set;
@@ -42,7 +41,7 @@ import org.osgi.service.component.annotations.Component;
 @NonNullByDefault
 public class DiscoveryParticipantClass1 extends AbstractDiscoveryParticipant {
     public DiscoveryParticipantClass1() throws IllegalArgumentException {
-        super(Collections.singleton(PJLinkDeviceBindingConstants.THING_TYPE_PJLINK), 60, true);
+        super(Set.of(PJLinkDeviceBindingConstants.THING_TYPE_PJLINK), 60, true);
 
         logger.trace("PJLinkProjectorDiscoveryParticipant constructor");
     }
index 1d54bf1d4939a3a8ad65ad89cbff52673c4dd2e6..3e41b2cf40b59d0a9a0f747583db50a3c8fbd66b 100644 (file)
@@ -155,7 +155,7 @@ public class PS3Handler extends BaseThingHandler {
 
     private void wakeMethod(DatagramPacket srchPacket, DatagramPacket receivePacket, DatagramPacket wakePacket,
             int triesLeft) {
-        try (DatagramSocket searchSocket = new DatagramSocket(); DatagramSocket wakeSocket = new DatagramSocket();) {
+        try (DatagramSocket searchSocket = new DatagramSocket(); DatagramSocket wakeSocket = new DatagramSocket()) {
             wakeSocket.setBroadcast(true);
             searchSocket.setBroadcast(true);
             searchSocket.setSoTimeout(1000);
index e0e24c110c42ed9d739ecff2a24d037b6e73eda0..95c9789226a83f65870aa7e7194db47227834d77 100644 (file)
@@ -48,14 +48,17 @@ public class PS4Crypto {
     private final Logger logger = LoggerFactory.getLogger(PS4Crypto.class);
 
     // Public key is from ps4-waker (https://github.com/dhleong/ps4-waker)
-    private static final String PUBLIC_KEY = "-----BEGIN PUBLIC KEY-----"
-            + "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxfAO/MDk5ovZpp7xlG9J"
-            + "JKc4Sg4ztAz+BbOt6Gbhub02tF9bryklpTIyzM0v817pwQ3TCoigpxEcWdTykhDL"
-            + "cGhAbcp6E7Xh8aHEsqgtQ/c+wY1zIl3fU//uddlB1XuipXthDv6emXsyyU/tJWqc"
-            + "zy9HCJncLJeYo7MJvf2TE9nnlVm1x4flmD0k1zrvb3MONqoZbKb/TQVuVhBv7SM+"
-            + "U5PSi3diXIx1Nnj4vQ8clRNUJ5X1tT9XfVmKQS1J513XNZ0uYHYRDzQYujpLWucu"
-            + "ob7v50wCpUm3iKP1fYCixMP6xFm0jPYz1YQaMV35VkYwc40qgk3av0PDS+1G0dCm" + "swIDAQAB"
-            + "-----END PUBLIC KEY-----";
+    private static final String PUBLIC_KEY = """
+            -----BEGIN PUBLIC KEY-----\
+            MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxfAO/MDk5ovZpp7xlG9J\
+            JKc4Sg4ztAz+BbOt6Gbhub02tF9bryklpTIyzM0v817pwQ3TCoigpxEcWdTykhDL\
+            cGhAbcp6E7Xh8aHEsqgtQ/c+wY1zIl3fU//uddlB1XuipXthDv6emXsyyU/tJWqc\
+            zy9HCJncLJeYo7MJvf2TE9nnlVm1x4flmD0k1zrvb3MONqoZbKb/TQVuVhBv7SM+\
+            U5PSi3diXIx1Nnj4vQ8clRNUJ5X1tT9XfVmKQS1J513XNZ0uYHYRDzQYujpLWucu\
+            ob7v50wCpUm3iKP1fYCixMP6xFm0jPYz1YQaMV35VkYwc40qgk3av0PDS+1G0dCm\
+            swIDAQAB\
+            -----END PUBLIC KEY-----\
+            """;
 
     private final byte[] remoteSeed = new byte[16];
     private final byte[] randomSeed = new byte[16];
index 39190e583a97d6edaea6316db96bda905475c22a..1aa3e5eac461628629794aebe3610f798d8d51e9 100644 (file)
@@ -120,20 +120,20 @@ public class PS4Handler extends BaseThingHandler {
         if (command instanceof RefreshType) {
             refreshFromState(channelUID);
         } else {
-            if (command instanceof StringType) {
+            if (command instanceof StringType stringCommand) {
                 switch (channelUID.getId()) {
                     case CHANNEL_APPLICATION_ID:
-                        if (!currentApplicationId.equals(((StringType) command).toString())) {
-                            updateApplicationTitleid(((StringType) command).toString());
+                        if (!currentApplicationId.equals(stringCommand.toString())) {
+                            updateApplicationTitleid(stringCommand.toString());
                             startApplication(currentApplicationId);
                         }
                         break;
                     case CHANNEL_OSK_TEXT:
-                        setOSKText(((StringType) command).toString());
+                        setOSKText(stringCommand.toString());
                         break;
                     case CHANNEL_SEND_KEY:
                         int ps4Key = 0;
-                        switch (((StringType) command).toString()) {
+                        switch (stringCommand.toString()) {
                             case SEND_KEY_UP:
                                 ps4Key = PS4_KEY_UP;
                                 break;
@@ -168,12 +168,11 @@ public class PS4Handler extends BaseThingHandler {
                     default:
                         break;
                 }
-            } else if (command instanceof OnOffType) {
-                OnOffType onOff = (OnOffType) command;
+            } else if (command instanceof OnOffType onOffCommand) {
                 switch (channelUID.getId()) {
                     case CHANNEL_POWER:
-                        if (currentPower != onOff) {
-                            currentPower = onOff;
+                        if (currentPower != onOffCommand) {
+                            currentPower = onOffCommand;
                             if (currentPower.equals(OnOffType.ON)) {
                                 turnOnPS4();
                             } else if (currentPower.equals(OnOffType.OFF)) {
@@ -183,9 +182,9 @@ public class PS4Handler extends BaseThingHandler {
                         break;
                     case CHANNEL_CONNECT:
                         boolean connected = socketChannelHandler != null && socketChannelHandler.isChannelOpen();
-                        if (connected && onOff.equals(OnOffType.OFF)) {
+                        if (connected && onOffCommand.equals(OnOffType.OFF)) {
                             sendByeBye();
-                        } else if (!connected && onOff.equals(OnOffType.ON)) {
+                        } else if (!connected && onOffCommand.equals(OnOffType.ON)) {
                             scheduler.execute(() -> login());
                         }
                         break;
index 16ca4e0a6ccd5f5b8580d626322dbfc3d1b04200..cfcf1cd5c0712bc3b60ad4814b5dadb679b32668 100644 (file)
@@ -254,7 +254,7 @@ public class PlayStationDiscovery extends AbstractDiscoveryService {
         properties.put(Thing.PROPERTY_HARDWARE_VERSION, hwVersion);
         properties.put(Thing.PROPERTY_FIRMWARE_VERSION, formatPS4Version(systemVersion));
         properties.put(Thing.PROPERTY_MAC_ADDRESS, hostIdToMacAddress(hostId));
-        ThingUID uid = hostType.equalsIgnoreCase("PS5") ? new ThingUID(THING_TYPE_PS5, hostId)
+        ThingUID uid = "PS5".equalsIgnoreCase(hostType) ? new ThingUID(THING_TYPE_PS5, hostId)
                 : new ThingUID(THING_TYPE_PS4, hostId);
 
         DiscoveryResult result = DiscoveryResultBuilder.create(uid).withProperties(properties).withLabel(hostName)
@@ -408,10 +408,10 @@ public class PlayStationDiscovery extends AbstractDiscoveryService {
                     hwVersion = PS4HW_CUH1000;
                     break;
                 case "bc60a7": // Ethernet
-                    if (ethId.equals("7b")) {
+                    if ("7b".equals(ethId)) {
                         hwVersion = PS4HW_CUH2000;
                     }
-                    if (ethId.equals("8f")) {
+                    if ("8f".equals(ethId)) {
                         hwVersion = PS4HW_CUH7000;
                     }
                     break;
@@ -423,10 +423,10 @@ public class PlayStationDiscovery extends AbstractDiscoveryService {
                     break;
                 case "40490f": // WiFi
                 case "5c9656": // WiFi
-                    if (ethId.equals("07")) {
+                    if ("07".equals(ethId)) {
                         hwVersion = PS4HW_CUH2000;
                     }
-                    if (ethId.equals("da")) {
+                    if ("da".equals(ethId)) {
                         hwVersion = PS4HW_CUH7000;
                     }
                     break;
index 5a9a8d92b553fc496482cf479bd74c4f40198476..097cba7e13b55f438897fc44bf26a5e573ee7e5e 100644 (file)
@@ -102,7 +102,7 @@ public class PLCLogoClient extends S7Client {
             // read first portion directly to data
             result = super.ReadArea(Area, DBNumber, Start, packet, WordLength, Data);
             while ((result == 0) && (offset < Amount)) {
-                byte buffer[] = new byte[Math.min(Amount - offset, packet)];
+                byte[] buffer = new byte[Math.min(Amount - offset, packet)];
                 result = super.ReadArea(Area, DBNumber, offset, buffer.length, WordLength, buffer);
                 System.arraycopy(buffer, 0, Data, offset, buffer.length);
                 offset = offset + buffer.length;
index 5222fff5c2598fb0fbb6fe26b5b0b6dc992759d2..4351f2e72b87d48ece010b95fc4a0f3c4185baa4 100644 (file)
@@ -69,8 +69,8 @@ public class PLCLogoHandlerFactory extends BaseThingHandlerFactory {
 
     @Override
     protected @Nullable ThingHandler createHandler(Thing thing) {
-        if (THING_TYPE_DEVICE.equals(thing.getThingTypeUID()) && (thing instanceof Bridge)) {
-            return new PLCBridgeHandler((Bridge) thing);
+        if (THING_TYPE_DEVICE.equals(thing.getThingTypeUID()) && (thing instanceof Bridge bridge)) {
+            return new PLCBridgeHandler(bridge);
         } else if (THING_TYPE_ANALOG.equals(thing.getThingTypeUID())) {
             return new PLCAnalogHandler(thing);
         } else if (THING_TYPE_DIGITAL.equals(thing.getThingTypeUID())) {
index 93de7e2467b65f6587e7b811ff81b7688aec3ed2..938bd3dcd06c57bfbf1c4787cd1f36a02faf2514 100644 (file)
@@ -21,7 +21,6 @@ import java.net.InterfaceAddress;
 import java.net.NetworkInterface;
 import java.net.SocketException;
 import java.util.Arrays;
-import java.util.Collections;
 import java.util.Enumeration;
 import java.util.Set;
 import java.util.TreeSet;
@@ -55,7 +54,7 @@ import org.slf4j.LoggerFactory;
 public class PLCDiscoveryService extends AbstractDiscoveryService {
 
     private final Logger logger = LoggerFactory.getLogger(PLCDiscoveryService.class);
-    private static final Set<ThingTypeUID> THING_TYPES_UIDS = Collections.singleton(THING_TYPE_DEVICE);
+    private static final Set<ThingTypeUID> THING_TYPES_UIDS = Set.of(THING_TYPE_DEVICE);
 
     private static final String LOGO_HOST = "address";
     private static final int LOGO_PORT = 102;
index dba7a9d7a763c8b2d037ad3968b89955ab06f4d7..a38e996e529b09f2264e7113dab6f196a1ef0a1d 100644 (file)
@@ -53,7 +53,7 @@ import Moka7.S7Client;
 @NonNullByDefault
 public class PLCAnalogHandler extends PLCCommonHandler {
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Collections.singleton(THING_TYPE_ANALOG);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_ANALOG);
 
     private final Logger logger = LoggerFactory.getLogger(PLCAnalogHandler.class);
     private AtomicReference<PLCAnalogConfiguration> config = new AtomicReference<>();
@@ -118,11 +118,11 @@ public class PLCAnalogHandler extends PLCCommonHandler {
                 } else {
                     logger.debug("Can not read data from LOGO!: {}.", S7Client.ErrorText(result));
                 }
-            } else if (command instanceof DecimalType) {
+            } else if (command instanceof DecimalType decimalCommand) {
                 byte[] buffer = new byte[2];
                 String type = channel.getAcceptedItemType();
                 if (ANALOG_ITEM.equalsIgnoreCase(type)) {
-                    S7.SetShortAt(buffer, 0, ((DecimalType) command).intValue());
+                    S7.SetShortAt(buffer, 0, decimalCommand.intValue());
                 } else {
                     logger.debug("Channel {} will not accept {} items.", channelUID, type);
                 }
@@ -262,7 +262,7 @@ public class PLCAnalogHandler extends PLCCommonHandler {
                 cBuilder.withType(new ChannelTypeUID(BINDING_ID, type.toLowerCase()));
                 cBuilder.withLabel(name);
                 cBuilder.withDescription("Analog " + text + " block " + name);
-                cBuilder.withProperties(Collections.singletonMap(BLOCK_PROPERTY, name));
+                cBuilder.withProperties(Map.of(BLOCK_PROPERTY, name));
                 tBuilder.withChannel(cBuilder.build());
                 setOldValue(name, null);
             }
index 626cd1a49e86229ff53d7acc3c07b20c5ac62e13..5c430d717a0332aef649536481f192f94e5481e9 100644 (file)
@@ -17,7 +17,6 @@ import static org.openhab.binding.plclogo.internal.PLCLogoBindingConstants.*;
 import java.time.DateTimeException;
 import java.time.ZonedDateTime;
 import java.util.Arrays;
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
@@ -61,7 +60,7 @@ import Moka7.S7Client;
 @NonNullByDefault
 public class PLCBridgeHandler extends BaseBridgeHandler {
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Collections.singleton(THING_TYPE_DEVICE);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_DEVICE);
 
     private final Logger logger = LoggerFactory.getLogger(PLCBridgeHandler.class);
 
@@ -281,11 +280,10 @@ public class PLCBridgeHandler extends BaseBridgeHandler {
     @Override
     public void childHandlerInitialized(ThingHandler childHandler, Thing childThing) {
         super.childHandlerInitialized(childHandler, childThing);
-        if (childHandler instanceof PLCCommonHandler) {
-            PLCCommonHandler handler = (PLCCommonHandler) childHandler;
+        if (childHandler instanceof PLCCommonHandler plcCommonHandler) {
             synchronized (handlers) {
-                if (!handlers.contains(handler)) {
-                    handlers.add(handler);
+                if (!handlers.contains(plcCommonHandler)) {
+                    handlers.add(plcCommonHandler);
                 }
             }
         }
@@ -293,11 +291,10 @@ public class PLCBridgeHandler extends BaseBridgeHandler {
 
     @Override
     public void childHandlerDisposed(ThingHandler childHandler, Thing childThing) {
-        if (childHandler instanceof PLCCommonHandler) {
-            PLCCommonHandler handler = (PLCCommonHandler) childHandler;
+        if (childHandler instanceof PLCCommonHandler plcCommonHandler) {
             synchronized (handlers) {
-                if (handlers.contains(handler)) {
-                    handlers.remove(handler);
+                if (handlers.contains(plcCommonHandler)) {
+                    handlers.remove(plcCommonHandler);
                 }
             }
         }
index 892b472fc8eb4711ec00d3376bbc145fccd80699..4753d2b1d7d49c9d2432595878844adbfe525fa9 100644 (file)
@@ -243,8 +243,8 @@ public abstract class PLCCommonHandler extends BaseThingHandler {
         Bridge bridge = getBridge();
         if (bridge != null) {
             BridgeHandler handler = bridge.getHandler();
-            if ((handler != null) && (handler instanceof PLCBridgeHandler)) {
-                return (PLCBridgeHandler) handler;
+            if (handler instanceof PLCBridgeHandler bridgeHandler) {
+                return bridgeHandler;
             }
         }
         return null;
index 4f205c37acff49c89b0725a030966d8fa64ec9b1..cfee712a0fb4002b70d79f7b27ffd4a13ba89350 100644 (file)
@@ -15,8 +15,8 @@ package org.openhab.binding.plclogo.internal.handler;
 import static org.openhab.binding.plclogo.internal.PLCLogoBindingConstants.*;
 
 import java.time.ZonedDateTime;
-import java.util.Collections;
 import java.util.List;
+import java.util.Map;
 import java.util.Set;
 import java.util.concurrent.atomic.AtomicReference;
 
@@ -53,7 +53,7 @@ import Moka7.S7Client;
 @NonNullByDefault
 public class PLCDateTimeHandler extends PLCCommonHandler {
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Collections.singleton(THING_TYPE_DATETIME);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_DATETIME);
 
     private final Logger logger = LoggerFactory.getLogger(PLCDateTimeHandler.class);
     private AtomicReference<PLCDateTimeConfiguration> config = new AtomicReference<>();
@@ -89,11 +89,11 @@ public class PLCDateTimeHandler extends PLCCommonHandler {
                 } else {
                     logger.debug("Can not read data from LOGO!: {}.", S7Client.ErrorText(result));
                 }
-            } else if (command instanceof DateTimeType) {
+            } else if (command instanceof DateTimeType dateTimeCommand) {
                 byte[] buffer = new byte[2];
                 String type = channel.getAcceptedItemType();
                 if (DATE_TIME_ITEM.equalsIgnoreCase(type)) {
-                    ZonedDateTime datetime = ((DateTimeType) command).getZonedDateTime();
+                    ZonedDateTime datetime = dateTimeCommand.getZonedDateTime();
                     if ("Time".equalsIgnoreCase(channelUID.getId())) {
                         buffer[0] = S7.ByteToBCD(datetime.getHour());
                         buffer[1] = S7.ByteToBCD(datetime.getMinute());
@@ -216,14 +216,14 @@ public class PLCDateTimeHandler extends PLCCommonHandler {
             cBuilder.withType(new ChannelTypeUID(BINDING_ID, type.toLowerCase()));
             cBuilder.withLabel(name);
             cBuilder.withDescription(text + " block parameter " + name);
-            cBuilder.withProperties(Collections.singletonMap(BLOCK_PROPERTY, name));
+            cBuilder.withProperties(Map.of(BLOCK_PROPERTY, name));
             tBuilder.withChannel(cBuilder.build());
 
             cBuilder = ChannelBuilder.create(new ChannelUID(thing.getUID(), VALUE_CHANNEL), ANALOG_ITEM);
             cBuilder.withType(new ChannelTypeUID(BINDING_ID, ANALOG_ITEM.toLowerCase()));
             cBuilder.withLabel(name);
             cBuilder.withDescription(text + " block parameter " + name);
-            cBuilder.withProperties(Collections.singletonMap(BLOCK_PROPERTY, name));
+            cBuilder.withProperties(Map.of(BLOCK_PROPERTY, name));
             tBuilder.withChannel(cBuilder.build());
             setOldValue(name, null);
 
index 250df897333998af2e2a3ce0b6ab08c6134e29f8..f7fbe1f807b4da721a7c990568227f27738032e4 100644 (file)
@@ -55,7 +55,7 @@ import Moka7.S7Client;
 @NonNullByDefault
 public class PLCDigitalHandler extends PLCCommonHandler {
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Collections.singleton(THING_TYPE_DIGITAL);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_DIGITAL);
 
     private final Logger logger = LoggerFactory.getLogger(PLCDigitalHandler.class);
     private AtomicReference<PLCDigitalConfiguration> config = new AtomicReference<>();
@@ -187,9 +187,8 @@ public class PLCDigitalHandler extends PLCCommonHandler {
     protected void updateState(ChannelUID channelUID, State state) {
         super.updateState(channelUID, state);
         DecimalType value = state.as(DecimalType.class);
-        if (state instanceof OpenClosedType) {
-            OpenClosedType type = (OpenClosedType) state;
-            value = new DecimalType(type == OpenClosedType.CLOSED ? 1 : 0);
+        if (state instanceof OpenClosedType openClosedState) {
+            value = new DecimalType(openClosedState == OpenClosedType.CLOSED ? 1 : 0);
         }
 
         Channel channel = thing.getChannel(channelUID.getId());
@@ -272,7 +271,7 @@ public class PLCDigitalHandler extends PLCCommonHandler {
                 cBuilder.withType(new ChannelTypeUID(BINDING_ID, type.toLowerCase()));
                 cBuilder.withLabel(name);
                 cBuilder.withDescription("Digital " + text + " block " + name);
-                cBuilder.withProperties(Collections.singletonMap(BLOCK_PROPERTY, name));
+                cBuilder.withProperties(Map.of(BLOCK_PROPERTY, name));
                 tBuilder.withChannel(cBuilder.build());
                 setOldValue(name, null);
             }
index 553f805f7af40b692815448dfe1d151132dcd24a..be4b9c85a8fa17912d47c2e9aad8a39d9c235c8b 100644 (file)
@@ -14,8 +14,8 @@ package org.openhab.binding.plclogo.internal.handler;
 
 import static org.openhab.binding.plclogo.internal.PLCLogoBindingConstants.*;
 
-import java.util.Collections;
 import java.util.List;
+import java.util.Map;
 import java.util.Set;
 import java.util.concurrent.atomic.AtomicReference;
 
@@ -52,7 +52,7 @@ import Moka7.S7Client;
 @NonNullByDefault
 public class PLCMemoryHandler extends PLCCommonHandler {
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Collections.singleton(THING_TYPE_MEMORY);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_MEMORY);
 
     private final Logger logger = LoggerFactory.getLogger(PLCMemoryHandler.class);
     private AtomicReference<PLCMemoryConfiguration> config = new AtomicReference<>();
@@ -108,15 +108,15 @@ public class PLCMemoryHandler extends PLCCommonHandler {
                 } else {
                     logger.debug("Can not read data from LOGO!: {}.", S7Client.ErrorText(result));
                 }
-            } else if (command instanceof DecimalType) {
+            } else if (command instanceof DecimalType decimalCommand) {
                 int length = MEMORY_BYTE.equalsIgnoreCase(kind) ? 1 : 2;
                 byte[] buffer = new byte[MEMORY_DWORD.equalsIgnoreCase(kind) ? 4 : length];
                 if (ANALOG_ITEM.equalsIgnoreCase(type) && MEMORY_BYTE.equalsIgnoreCase(kind)) {
-                    buffer[0] = ((DecimalType) command).byteValue();
+                    buffer[0] = decimalCommand.byteValue();
                 } else if (ANALOG_ITEM.equalsIgnoreCase(type) && MEMORY_WORD.equalsIgnoreCase(kind)) {
-                    S7.SetShortAt(buffer, 0, ((DecimalType) command).intValue());
+                    S7.SetShortAt(buffer, 0, decimalCommand.intValue());
                 } else if (ANALOG_ITEM.equalsIgnoreCase(type) && MEMORY_DWORD.equalsIgnoreCase(kind)) {
-                    S7.SetDIntAt(buffer, 0, ((DecimalType) command).intValue());
+                    S7.SetDIntAt(buffer, 0, decimalCommand.intValue());
                 } else {
                     logger.debug("Channel {} will not accept {} items.", channelUID, type);
                 }
@@ -124,10 +124,10 @@ public class PLCMemoryHandler extends PLCCommonHandler {
                 if (result != 0) {
                     logger.debug("Can not write data to LOGO!: {}.", S7Client.ErrorText(result));
                 }
-            } else if (command instanceof OnOffType) {
+            } else if (command instanceof OnOffType onOffCommand) {
                 byte[] buffer = new byte[1];
                 if (DIGITAL_OUTPUT_ITEM.equalsIgnoreCase(type) && MEMORY_BYTE.equalsIgnoreCase(kind)) {
-                    S7.SetBitAt(buffer, 0, 0, ((OnOffType) command) == OnOffType.ON);
+                    S7.SetBitAt(buffer, 0, 0, onOffCommand == OnOffType.ON);
                 } else {
                     logger.debug("Channel {} will not accept {} items.", channelUID, type);
                 }
@@ -291,7 +291,7 @@ public class PLCMemoryHandler extends PLCCommonHandler {
             cBuilder.withType(new ChannelTypeUID(BINDING_ID, type.toLowerCase()));
             cBuilder.withLabel(name);
             cBuilder.withDescription(text + " in/output block " + name);
-            cBuilder.withProperties(Collections.singletonMap(BLOCK_PROPERTY, name));
+            cBuilder.withProperties(Map.of(BLOCK_PROPERTY, name));
             tBuilder.withChannel(cBuilder.build());
             setOldValue(name, null);
 
index 32064f085c6e10363824153343d82d87c896581d..46cb2cd419746edf47f1b3d99726eb33bcc56cd7 100644 (file)
@@ -14,8 +14,8 @@ package org.openhab.binding.plclogo.internal.handler;
 
 import static org.openhab.binding.plclogo.internal.PLCLogoBindingConstants.*;
 
-import java.util.Collections;
 import java.util.List;
+import java.util.Map;
 import java.util.Set;
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.atomic.AtomicReference;
@@ -55,7 +55,7 @@ import Moka7.S7Client;
 @NonNullByDefault
 public class PLCPulseHandler extends PLCCommonHandler {
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Collections.singleton(THING_TYPE_PULSE);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_PULSE);
 
     private final Logger logger = LoggerFactory.getLogger(PLCPulseHandler.class);
     private AtomicReference<PLCPulseConfiguration> config = new AtomicReference<>();
@@ -191,9 +191,8 @@ public class PLCPulseHandler extends PLCCommonHandler {
     protected void updateState(ChannelUID channelUID, State state) {
         super.updateState(channelUID, state);
         DecimalType value = state.as(DecimalType.class);
-        if (state instanceof OpenClosedType) {
-            OpenClosedType type = (OpenClosedType) state;
-            value = new DecimalType(type == OpenClosedType.CLOSED ? 1 : 0);
+        if (state instanceof OpenClosedType openClosedState) {
+            value = new DecimalType(openClosedState == OpenClosedType.CLOSED ? 1 : 0);
         }
 
         setOldValue(channelUID.getId(), value);
@@ -272,7 +271,7 @@ public class PLCPulseHandler extends PLCCommonHandler {
             cBuilder.withType(new ChannelTypeUID(BINDING_ID, bType.toLowerCase()));
             cBuilder.withLabel(bName);
             cBuilder.withDescription("Control block " + bName);
-            cBuilder.withProperties(Collections.singletonMap(BLOCK_PROPERTY, bName));
+            cBuilder.withProperties(Map.of(BLOCK_PROPERTY, bName));
             tBuilder.withChannel(cBuilder.build());
             setOldValue(STATE_CHANNEL, null);
 
@@ -282,7 +281,7 @@ public class PLCPulseHandler extends PLCCommonHandler {
             cBuilder.withType(new ChannelTypeUID(BINDING_ID, oType.toLowerCase()));
             cBuilder.withLabel(oName);
             cBuilder.withDescription("Observed block " + oName);
-            cBuilder.withProperties(Collections.singletonMap(BLOCK_PROPERTY, oName));
+            cBuilder.withProperties(Map.of(BLOCK_PROPERTY, oName));
             tBuilder.withChannel(cBuilder.build());
             setOldValue(OBSERVE_CHANNEL, null);
 
index 7a95ece6e2e0d08504af946a6ac0a0a54fca3a64..9d6adb82bba28f6e610f30762f56fc64454e2867 100644 (file)
@@ -133,11 +133,9 @@ public class PlexApiConnector {
      */
     public @Nullable MediaContainer getSessionData() {
         try {
-            String url = "https://" + host + ":" + String.valueOf(port) + "/status/sessions" + "?X-Plex-Token=" + token;
+            String url = "https://" + host + ":" + port + "/status/sessions" + "?X-Plex-Token=" + token;
             logger.debug("Getting session data '{}'", url);
-            MediaContainer mediaContainer = getFromXml(doHttpRequest("GET", url, getClientHeaders(), false),
-                    MediaContainer.class);
-            return mediaContainer;
+            return getFromXml(doHttpRequest("GET", url, getClientHeaders(), false), MediaContainer.class);
         } catch (IOException | InterruptedException | TimeoutException | ExecutionException e) {
             logger.debug("An exception occurred while polling the PLEX Server: '{}'", e.getMessage());
             return null;
@@ -151,8 +149,7 @@ public class PlexApiConnector {
      * @return the completed url that will be usable
      */
     public String getURL(String url) {
-        String artURL = scheme + "://" + host + ":" + String.valueOf(port + url + "?X-Plex-Token=" + token);
-        return artURL;
+        return scheme + "://" + host + ":" + port + url + "?X-Plex-Token=" + token;
     }
 
     /**
@@ -355,7 +352,7 @@ public class PlexApiConnector {
             NotificationContainer notification = gson.fromJson(msg, NotificationContainer.class);
             if (notification != null) {
                 PlexUpdateListener listenerLocal = listener;
-                if (listenerLocal != null && notification.getNotificationContainer().getType().equals("playing")) {
+                if (listenerLocal != null && "playing".equals(notification.getNotificationContainer().getType())) {
                     listenerLocal.onItemStatusUpdate(
                             notification.getNotificationContainer().getPlaySessionStateNotification().get(0)
                                     .getSessionKey(),
@@ -413,7 +410,7 @@ public class PlexApiConnector {
 
         if (commandPath != null) {
             try {
-                String url = "https://" + host + ":" + String.valueOf(port) + commandPath;
+                String url = "https://" + host + ":" + port + commandPath;
                 Properties headers = getClientHeaders();
                 headers.put("X-Plex-Target-Client-Identifier", playerID);
                 doHttpRequest("GET", url, headers, false);
index 16423c07fa4f88fb9c69f69f942628477c76b463..6f86e2b8ccbaa2bb1a220e0bcd787940b3e583de 100644 (file)
@@ -245,10 +245,10 @@ public class PlexServerHandler extends BaseBridgeHandler implements PlexUpdateLi
                                                                                               // configured, update
                                                                                               // it
                     tmpMeta.setArt(plexAPIConnector.getURL(tmpMeta.getArt()));
-                    if (tmpMeta.getType().equals("episode")) {
+                    if ("episode".equals(tmpMeta.getType())) {
                         tmpMeta.setThumb(plexAPIConnector.getURL(tmpMeta.getGrandparentThumb()));
                         tmpMeta.setTitle(tmpMeta.getGrandparentTitle() + " : " + tmpMeta.getTitle());
-                    } else if (tmpMeta.getType().equals("track")) {
+                    } else if ("track".equals(tmpMeta.getType())) {
                         tmpMeta.setThumb(plexAPIConnector.getURL(tmpMeta.getThumb()));
                         tmpMeta.setTitle(tmpMeta.getGrandparentTitle() + " - " + tmpMeta.getParentTitle() + " - "
                                 + tmpMeta.getTitle());
@@ -304,8 +304,8 @@ public class PlexServerHandler extends BaseBridgeHandler implements PlexUpdateLi
             }
             refreshAllPlayers();
         } catch (Exception e) {
-            updateStatus(ThingStatus.OFFLINE, ThingStatusDetail.COMMUNICATION_ERROR, String
-                    .format("An exception occurred while polling the PLEX Server: '%s'", e.getMessage()).toString());
+            updateStatus(ThingStatus.OFFLINE, ThingStatusDetail.COMMUNICATION_ERROR,
+                    String.format("An exception occurred while polling the PLEX Server: '%s'", e.getMessage()));
         }
     };
 
index e46c9927263d19381045068200109cac709b70fc..93362e040dcf53b06dc2fd2bc235fea9b72f54d6 100644 (file)
@@ -94,7 +94,7 @@ public class PlugwiseMessageProcessor implements SerialPortEventListener {
      */
     private void parseAndQueue(ByteBuffer readBuffer) {
         String response = new String(readBuffer.array(), 0, readBuffer.limit());
-        response = response.replaceAll("\r", "").replaceAll("\n", "");
+        response = response.replace("\r", "").replace("\n", "");
 
         Matcher matcher = RESPONSE_PATTERN.matcher(response);
 
@@ -123,10 +123,10 @@ public class PlugwiseMessageProcessor implements SerialPortEventListener {
                     try {
                         Message message = messageFactory.createMessage(messageType, sequenceNumber, payload);
 
-                        if (message instanceof AcknowledgementMessage
-                                && !((AcknowledgementMessage) message).isExtended()) {
+                        if (message instanceof AcknowledgementMessage acknowledgementMessage
+                                && !acknowledgementMessage.isExtended()) {
                             logger.debug("Adding to acknowledgedQueue: {}", message);
-                            context.getAcknowledgedQueue().put((AcknowledgementMessage) message);
+                            context.getAcknowledgedQueue().put(acknowledgementMessage);
                         } else {
                             logger.debug("Adding to receivedQueue: {}", message);
                             context.getReceivedQueue().put(message);
index 7cc1d5a53241f73e88bf6eec3325cffaca191683..fddac119ac3741e92a979431b9e554b5383ebf7a 100644 (file)
@@ -289,8 +289,8 @@ public class PlugwiseThingDiscoveryService extends AbstractDiscoveryService
 
     @Override
     public void setThingHandler(ThingHandler handler) {
-        if (handler instanceof PlugwiseStickHandler) {
-            stickHandler = (PlugwiseStickHandler) handler;
+        if (handler instanceof PlugwiseStickHandler plugwiseStickHandler) {
+            stickHandler = plugwiseStickHandler;
             stickHandler.addStickStatusListener(this);
         }
     }
index 03a5621afce6d119bfcf08e9cbe05582fd28cfb3..567b906006413fefab47df125d8c4e1f8406b181 100644 (file)
@@ -353,11 +353,10 @@ public class PlugwiseRelayDeviceHandler extends AbstractPlugwiseThingHandler {
     public void handleCommand(ChannelUID channelUID, Command command) {
         logger.debug("Handling command '{}' for {} ({}) channel '{}'", command, deviceType, macAddress,
                 channelUID.getId());
-        if (CHANNEL_STATE.equals(channelUID.getId()) && (command instanceof OnOffType)) {
+        if (CHANNEL_STATE.equals(channelUID.getId()) && (command instanceof OnOffType onOffCommand)) {
             if (configuration.getPowerStateChanging() == PowerStateChanging.COMMAND_SWITCHING) {
-                OnOffType onOff = (OnOffType) command;
-                pendingPowerStateChange = new PendingPowerStateChange(onOff);
-                handleOnOffCommand(onOff);
+                pendingPowerStateChange = new PendingPowerStateChange(onOffCommand);
+                handleOnOffCommand(onOffCommand);
             } else {
                 OnOffType onOff = configuration.getPowerStateChanging() == PowerStateChanging.ALWAYS_ON ? OnOffType.ON
                         : OnOffType.OFF;
index b0aec94ff3bffb78c5a6b764d77cf0a0169f84b6..ab72c4fea58a0b86e7afdfc3e17869414329694c 100644 (file)
@@ -50,7 +50,7 @@ public class BroadcastGroupSwitchResponseMessage extends Message {
         if (matcher.matches()) {
             macAddress = new MACAddress(matcher.group(1));
             portMask = Integer.parseInt(matcher.group(2));
-            powerState = (matcher.group(3).equals("01"));
+            powerState = ("01".equals(matcher.group(3)));
         } else {
             throw new PlugwisePayloadMismatchException(BROADCAST_GROUP_SWITCH_RESPONSE, PAYLOAD_PATTERN, payload);
         }
index 21fe711f8f20727ce9cb305b5e011aa577071750..712a6cd341f05ad3e4685565c20b375ad68281b7 100644 (file)
@@ -113,7 +113,7 @@ public class InformationResponseMessage extends Message {
             month = Integer.parseInt(matcher.group(3), 16);
             minutes = Integer.parseInt(matcher.group(4), 16);
             logAddress = (Integer.parseInt(matcher.group(5), 16) - 278528) / 32;
-            powerState = (matcher.group(6).equals("01"));
+            powerState = ("01".equals(matcher.group(6)));
             hertz = Integer.parseInt(matcher.group(7), 16);
             hardwareVersion = matcher.group(8).substring(0, 4) + "-" + matcher.group(8).substring(4, 8) + "-"
                     + matcher.group(8).substring(8, 12);
index 1e751fd98657561bb80e67fa28bc5810c74a7b62..689293065181e4f2911eda9f82f3430b405b15cd 100644 (file)
@@ -158,7 +158,7 @@ public class PlugwiseHAController {
             DomainObjects domainObjects = executeRequest(request);
             this.gatewayUpdateDateTime = ZonedDateTime.parse(request.getServerDateTime(), PlugwiseHAController.FORMAT);
             int size = 0;
-            if (!(domainObjects.getAppliances() == null)) {
+            if (domainObjects.getAppliances() != null) {
                 size = domainObjects.getAppliances().size();
             }
             this.logger.debug("Found {} Plugwise Home Automation appliance(s)", size);
@@ -201,7 +201,7 @@ public class PlugwiseHAController {
             DomainObjects domainObjects = executeRequest(request);
             this.gatewayUpdateDateTime = ZonedDateTime.parse(request.getServerDateTime(), PlugwiseHAController.FORMAT);
             int size = 0;
-            if (!(domainObjects.getLocations() == null)) {
+            if (domainObjects.getLocations() != null) {
                 size = domainObjects.getLocations().size();
             }
             this.logger.debug("Found {} Plugwise Home Automation Zone(s)", size);
index 900aeca390ecb488ad41e9a34310fb9f442a740a..b60061dbd8e2794e40e9b2d105ac88d170f1453f 100644 (file)
@@ -51,8 +51,7 @@ public class DateTimeConverter extends AbstractSingleValueConverter {
         }
 
         try {
-            ZonedDateTime dateTime = ZonedDateTime.parse(str, DateTimeConverter.FORMAT);
-            return dateTime;
+            return ZonedDateTime.parse(str, DateTimeConverter.FORMAT);
         } catch (DateTimeParseException e) {
             logger.debug("Invalid datetime format in {}", str);
             return null;
index 5ae6f92de13a78f80cb79e64217e6228e3c9e4e6..24a3e15b8b006a5da740aa8d09a78ae3ce9604a8 100644 (file)
@@ -77,6 +77,7 @@ public class ActuatorFunctionality extends PlugwiseBaseModel implements Plugwise
         return upperBound;
     }
 
+    @Override
     public ZonedDateTime getUpdatedDate() {
         return updatedDate;
     }
index 0642275f4c12ba28fd60fbce87e8c421f9b28e3a..b8a3d2360b49c75c8f89ce2ec03a435606f0ec84 100644 (file)
@@ -230,7 +230,7 @@ public class Appliance extends PlugwiseBaseModel implements PlugwiseComparableDa
 
     public boolean isBatteryOperated() {
         if (this.zigbeeNode instanceof ZigBeeNode) {
-            return this.zigbeeNode.getPowerSource().equals("battery") && this.getBatteryLevel().isPresent();
+            return "battery".equals(this.zigbeeNode.getPowerSource()) && this.getBatteryLevel().isPresent();
         } else {
             return false;
         }
index cad7b95a4ecaa9b693a429e56c23a0d6087b42da..d0c512854ae18dd148a1f49e7f373314af13777c 100644 (file)
@@ -83,6 +83,7 @@ public class Log extends PlugwiseBaseModel implements PlugwiseComparableDate<Log
         return measurementDate;
     }
 
+    @Override
     public ZonedDateTime getUpdatedDate() {
         return updatedDate;
     }
index dae0733a232e04af70e4abb476bcf77b93d53b1f..1e6921638467211cfb00efa9e419654e6e0d45d3 100644 (file)
@@ -102,8 +102,8 @@ public class PlugwiseHADiscoveryService extends AbstractDiscoveryService impleme
 
     @Override
     public void setThingHandler(@Nullable ThingHandler handler) {
-        if (handler instanceof PlugwiseHABridgeHandler) {
-            bridgeHandler = (PlugwiseHABridgeHandler) handler;
+        if (handler instanceof PlugwiseHABridgeHandler bridgeHandler) {
+            this.bridgeHandler = bridgeHandler;
         }
     }
 
index 7e024af6390b8e7b7b9d683973d96fb24a48dc57..449357836a5db96df3c328e056eaa7cdf41c778a 100644 (file)
@@ -119,9 +119,7 @@ public class PlugwiseHAApplianceHandler extends PlugwiseHABaseHandler<Appliance,
     @Override
     protected @Nullable Appliance getEntity(PlugwiseHAController controller) throws PlugwiseHAException {
         PlugwiseHAThingConfig config = getPlugwiseThingConfig();
-        Appliance appliance = controller.getAppliance(config.getId());
-
-        return appliance;
+        return controller.getAppliance(config.getId());
     }
 
     @Override
@@ -140,21 +138,21 @@ public class PlugwiseHAApplianceHandler extends PlugwiseHABaseHandler<Appliance,
 
         switch (channelID) {
             case APPLIANCE_LOCK_CHANNEL:
-                if (command instanceof OnOffType) {
+                if (command instanceof OnOffType onOffCommand) {
                     try {
                         controller.setRelay(entity, (command == OnOffType.ON));
                     } catch (PlugwiseHAException e) {
-                        logger.warn("Unable to switch relay lock {} for appliance '{}'", (State) command,
+                        logger.warn("Unable to switch relay lock {} for appliance '{}'", onOffCommand,
                                 entity.getName());
                     }
                 }
                 break;
             case APPLIANCE_OFFSET_CHANNEL:
-                if (command instanceof QuantityType) {
+                if (command instanceof QuantityType quantityCommand) {
                     Unit<Temperature> unit = entity.getOffsetTemperatureUnit().orElse(UNIT_CELSIUS).equals(UNIT_CELSIUS)
                             ? SIUnits.CELSIUS
                             : ImperialUnits.FAHRENHEIT;
-                    QuantityType<?> state = ((QuantityType<?>) command).toUnit(unit);
+                    QuantityType<?> state = quantityCommand.toUnit(unit);
 
                     if (state != null) {
                         try {
@@ -167,19 +165,19 @@ public class PlugwiseHAApplianceHandler extends PlugwiseHABaseHandler<Appliance,
                 }
                 break;
             case APPLIANCE_POWER_CHANNEL:
-                if (command instanceof OnOffType) {
+                if (command instanceof OnOffType onOffCommand) {
                     try {
                         controller.setRelay(entity, command == OnOffType.ON);
                     } catch (PlugwiseHAException e) {
-                        logger.warn("Unable to switch relay {} for appliance '{}'", (State) command, entity.getName());
+                        logger.warn("Unable to switch relay {} for appliance '{}'", onOffCommand, entity.getName());
                     }
                 }
                 break;
             case APPLIANCE_SETPOINT_CHANNEL:
-                if (command instanceof QuantityType) {
+                if (command instanceof QuantityType quantityCommand) {
                     Unit<Temperature> unit = entity.getSetpointTemperatureUnit().orElse(UNIT_CELSIUS)
                             .equals(UNIT_CELSIUS) ? SIUnits.CELSIUS : ImperialUnits.FAHRENHEIT;
-                    QuantityType<?> state = ((QuantityType<?>) command).toUnit(unit);
+                    QuantityType<?> state = quantityCommand.toUnit(unit);
 
                     if (state != null) {
                         try {
index 108e5b9744c9983408cf0c5facce9f5894076e68..68dbbf7c56ef0a860b8e2ac10725f47ae49f98b5 100644 (file)
@@ -18,8 +18,8 @@ import static org.openhab.core.thing.ThingStatus.ONLINE;
 import static org.openhab.core.thing.ThingStatusDetail.*;
 
 import java.util.Collection;
-import java.util.Collections;
 import java.util.Map;
+import java.util.Set;
 import java.util.concurrent.ScheduledFuture;
 import java.util.concurrent.TimeUnit;
 
@@ -108,7 +108,7 @@ public class PlugwiseHABridgeHandler extends BaseBridgeHandler {
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(PlugwiseHADiscoveryService.class);
+        return Set.of(PlugwiseHADiscoveryService.class);
     }
 
     @Override
index cd24e7442d8b0068de089d935fafe44312230d6d..aba49186540c345ff3695baa293427f6ed65d32e 100644 (file)
@@ -105,9 +105,7 @@ public class PlugwiseHAZoneHandler extends PlugwiseHABaseHandler<Location, Plugw
     @Override
     protected @Nullable Location getEntity(PlugwiseHAController controller) throws PlugwiseHAException {
         PlugwiseHAThingConfig config = getPlugwiseThingConfig();
-        Location location = controller.getLocation(config.getId());
-
-        return location;
+        return controller.getLocation(config.getId());
     }
 
     @Override
@@ -119,20 +117,20 @@ public class PlugwiseHAZoneHandler extends PlugwiseHABaseHandler<Location, Plugw
             if (controller != null) {
                 switch (channelID) {
                     case ZONE_COOLING_CHANNEL:
-                        if (command instanceof OnOffType) {
+                        if (command instanceof OnOffType onOffCommand) {
                             try {
                                 controller.setAllowCooling(entity, command == OnOffType.ON);
                             } catch (PlugwiseHAException e) {
-                                logger.warn("Unable to switch allow cooling {} for zone '{}'", (State) command,
+                                logger.warn("Unable to switch allow cooling {} for zone '{}'", onOffCommand,
                                         entity.getName());
                             }
                         }
                         break;
                     case ZONE_SETPOINT_CHANNEL:
-                        if (command instanceof QuantityType) {
+                        if (command instanceof QuantityType quantityCommand) {
                             Unit<Temperature> unit = entity.getSetpointTemperatureUnit().orElse(UNIT_CELSIUS)
                                     .equals(UNIT_CELSIUS) ? SIUnits.CELSIUS : ImperialUnits.FAHRENHEIT;
-                            QuantityType<?> state = ((QuantityType<?>) command).toUnit(unit);
+                            QuantityType<?> state = quantityCommand.toUnit(unit);
                             if (state != null) {
                                 try {
                                     controller.setLocationThermostat(entity, state.doubleValue());
@@ -144,31 +142,31 @@ public class PlugwiseHAZoneHandler extends PlugwiseHABaseHandler<Location, Plugw
                         }
                         break;
                     case ZONE_PREHEAT_CHANNEL:
-                        if (command instanceof OnOffType) {
+                        if (command instanceof OnOffType onOffCommand) {
                             try {
                                 controller.setPreHeating(entity, command == OnOffType.ON);
                             } catch (PlugwiseHAException e) {
-                                logger.warn("Unable to switch zone pre heating {} for zone '{}'", (State) command,
+                                logger.warn("Unable to switch zone pre heating {} for zone '{}'", onOffCommand,
                                         entity.getName());
                             }
                         }
                         break;
                     case ZONE_REGULATION_CHANNEL:
-                        if (command instanceof StringType) {
+                        if (command instanceof StringType stringCommand) {
                             try {
                                 controller.setRegulationControl(entity, command.toString());
                             } catch (PlugwiseHAException e) {
-                                logger.warn("Unable to switch regulation control {} for zone '{}'", (State) command,
+                                logger.warn("Unable to switch regulation control {} for zone '{}'", stringCommand,
                                         entity.getName());
                             }
                         }
                         break;
                     case ZONE_PRESETSCENE_CHANNEL:
-                        if (command instanceof StringType) {
+                        if (command instanceof StringType stringCommand) {
                             try {
                                 controller.setPresetScene(entity, command.toString());
                             } catch (PlugwiseHAException e) {
-                                logger.warn("Unable to switch preset scene {} for zone '{}'", (State) command,
+                                logger.warn("Unable to switch preset scene {} for zone '{}'", stringCommand,
                                         entity.getName());
                             }
                         }
index 0cd9543676f44b833ddd3841a35ba0d2866a90d2..2e7cc5b7a26d2003c4496fb56422c94f4ab4f54d 100644 (file)
@@ -65,8 +65,8 @@ public class PowermaxCommandExtension extends AbstractConsoleCommandExtension im
             PowermaxBridgeHandler handler = null;
             if (thing != null) {
                 thingHandler = thing.getHandler();
-                if (thingHandler instanceof PowermaxBridgeHandler) {
-                    handler = (PowermaxBridgeHandler) thingHandler;
+                if (thingHandler instanceof PowermaxBridgeHandler bridgeHandler) {
+                    handler = bridgeHandler;
                 }
             }
             if (thing == null) {
index fb800517426176e2dd237cf60935d715bc082afe..8389372a829e20222764bf0cc18e0d612361324b 100644 (file)
@@ -63,8 +63,8 @@ public class PowermaxDiscoveryService extends AbstractDiscoveryService
 
     @Override
     public void setThingHandler(ThingHandler handler) {
-        if (handler instanceof PowermaxBridgeHandler) {
-            bridgeHandler = (PowermaxBridgeHandler) handler;
+        if (handler instanceof PowermaxBridgeHandler powermaxBridgeHandler) {
+            bridgeHandler = powermaxBridgeHandler;
         }
     }
 
@@ -146,8 +146,8 @@ public class PowermaxDiscoveryService extends AbstractDiscoveryService
             for (Thing thing : handler.getThing().getThings()) {
                 ThingHandler thingHandler = thing.getHandler();
                 if (thing.getThingTypeUID().equals(PowermaxBindingConstants.THING_TYPE_ZONE)
-                        && thingHandler instanceof PowermaxThingHandler) {
-                    PowermaxZoneConfiguration config = ((PowermaxThingHandler) thingHandler).getZoneConfiguration();
+                        && thingHandler instanceof PowermaxThingHandler powermaxThingHandler) {
+                    PowermaxZoneConfiguration config = powermaxThingHandler.getZoneConfiguration();
                     if (config.zoneNumber == zoneNumber) {
                         return;
                     }
@@ -182,8 +182,8 @@ public class PowermaxDiscoveryService extends AbstractDiscoveryService
             for (Thing thing : handler.getThing().getThings()) {
                 ThingHandler thingHandler = thing.getHandler();
                 if (thing.getThingTypeUID().equals(PowermaxBindingConstants.THING_TYPE_X10)
-                        && thingHandler instanceof PowermaxThingHandler) {
-                    PowermaxX10Configuration config = ((PowermaxThingHandler) thingHandler).getX10Configuration();
+                        && thingHandler instanceof PowermaxThingHandler powermaxThingHandler) {
+                    PowermaxX10Configuration config = powermaxThingHandler.getX10Configuration();
                     if (config.deviceNumber == deviceNumber) {
                         return;
                     }
index 3d64483e875fe05a091e4f87a6360d9d65bdbdb3..a5cc735179f52feaee0604ca0e60a469f0db49dc 100644 (file)
@@ -15,10 +15,10 @@ package org.openhab.binding.powermax.internal.handler;
 import static org.openhab.binding.powermax.internal.PowermaxBindingConstants.*;
 
 import java.util.Collection;
-import java.util.Collections;
 import java.util.EventObject;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 import java.util.concurrent.CopyOnWriteArrayList;
 import java.util.concurrent.ScheduledFuture;
 import java.util.concurrent.TimeUnit;
@@ -113,7 +113,7 @@ public class PowermaxBridgeHandler extends BaseBridgeHandler implements Powermax
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(PowermaxDiscoveryService.class);
+        return Set.of(PowermaxDiscoveryService.class);
     }
 
     public @Nullable PowermaxState getCurrentState() {
@@ -628,8 +628,7 @@ public class PowermaxBridgeHandler extends BaseBridgeHandler implements Powermax
                 continue;
             }
             ThingHandler thingHandler = thing.getHandler();
-            if (thingHandler instanceof PowermaxThingHandler) {
-                PowermaxThingHandler handler = (PowermaxThingHandler) thingHandler;
+            if (thingHandler instanceof PowermaxThingHandler powermaxThingHandler) {
                 if (thing.getThingTypeUID().equals(THING_TYPE_ZONE)) {
                     // All of the zone state objects will have the same list of values.
                     // The use of getZone(1) here is just to get any PowermaxZoneState
@@ -638,12 +637,12 @@ public class PowermaxBridgeHandler extends BaseBridgeHandler implements Powermax
                     for (Value<?> value : state.getZone(1).getValues()) {
                         String channelId = value.getChannel();
                         if ((channel == null) || channel.equals(channelId)) {
-                            handler.updateChannelFromAlarmState(channelId, state);
+                            powermaxThingHandler.updateChannelFromAlarmState(channelId, state);
                         }
                     }
                 } else if (thing.getThingTypeUID().equals(THING_TYPE_X10)) {
                     if ((channel == null) || channel.equals(X10_STATUS)) {
-                        handler.updateChannelFromAlarmState(X10_STATUS, state);
+                        powermaxThingHandler.updateChannelFromAlarmState(X10_STATUS, state);
                     }
                 }
             }
index c55e4836fe48d33120ff57c60c4609c15f174e39..9a2318049589283e0cb95c8341e2cd40374c1ae4 100644 (file)
@@ -31,7 +31,7 @@ public class PowermaxMessageConstants {
 
     // System events
 
-    public static enum PowermaxSysEventType {
+    public enum PowermaxSysEventType {
         NONE,
         ALARM,
         SILENT_ALARM,
@@ -41,7 +41,7 @@ public class PowermaxMessageConstants {
         RESTORE,
         GENERAL_RESTORE,
         CANCEL,
-        RESET;
+        RESET
     }
 
     public static class PowermaxSysEvent {
index 0c460bb5e1be9499136323e028f8c518f3432f32..962c4b501ce253ed58772e3fbc7f725c43f4af81 100644 (file)
@@ -181,7 +181,7 @@ public class PowermaxStatusMessage extends PowermaxBaseMessage {
             } else if (zoneEType == 0x05) {
                 // Violated (Motion)
                 PowermaxZoneSettings zone = panelSettings.getZoneSettings(eventZone);
-                if ((zone != null) && zone.getSensorType().equalsIgnoreCase("unknown")) {
+                if ((zone != null) && "unknown".equalsIgnoreCase(zone.getSensorType())) {
                     zone.setSensorType(PowermaxSensorType.MOTION_SENSOR_1.getLabel());
                 }
                 updatedState.getZone(eventZone).tripped.setValue(true);
@@ -276,11 +276,11 @@ public class PowermaxStatusMessage extends PowermaxBaseMessage {
                     // the sensor type always triggers an alarm
                     // or the system is armed away
                     // or the system is armed home and the zone is not interior(-follow)
-                    boolean armed = (!zone.getType().equalsIgnoreCase("Non-Alarm")
+                    boolean armed = (!"Non-Alarm".equalsIgnoreCase(zone.getType())
                             && (zone.isAlwaysInAlarm() || (mode == PowermaxArmMode.ARMED_AWAY.getCode())
                                     || ((mode == PowermaxArmMode.ARMED_HOME.getCode())
-                                            && !zone.getType().equalsIgnoreCase("Interior-Follow")
-                                            && !zone.getType().equalsIgnoreCase("Interior"))));
+                                            && !"Interior-Follow".equalsIgnoreCase(zone.getType())
+                                            && !"Interior".equalsIgnoreCase(zone.getType()))));
                     updatedState.getZone(i).armed.setValue(armed);
                 }
             });
index 3961edd8b53d1fcd8b43e0e625e18d6a72b070b4..d38b6e7d34f624ca11b2500ecd19cc5cefc36ffd 100644 (file)
@@ -39,9 +39,7 @@ public class PowermaxZoneState extends PowermaxStateContainer {
     public StringValue lastMessage = new StringValue(this, ZONE_LAST_MESSAGE);
     public DateTimeValue lastMessageTime = new DateTimeValue(this, ZONE_LAST_MESSAGE_TIME);
 
-    public DynamicValue<Boolean> locked = new DynamicValue<>(this, LOCKED, () -> {
-        return armed.getValue();
-    }, () -> {
+    public DynamicValue<Boolean> locked = new DynamicValue<>(this, LOCKED, () -> armed.getValue(), () -> {
         Boolean isArmed = armed.getValue();
         if (isArmed == null) {
             return UnDefType.NULL;
index 962b5e438e638079cd785f3a398c5411da2117b0..9a869eaebe1f38acad0b69bc303121818b052ce6 100644 (file)
@@ -15,7 +15,7 @@ package org.openhab.binding.prowl.internal;
 import static org.openhab.binding.prowl.internal.ProwlBindingConstants.*;
 
 import java.util.Collection;
-import java.util.Collections;
+import java.util.List;
 import java.util.concurrent.ExecutionException;
 import java.util.concurrent.ScheduledFuture;
 import java.util.concurrent.TimeUnit;
@@ -113,7 +113,7 @@ public class ProwlHandler extends BaseThingHandler {
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singletonList(ProwlActions.class);
+        return List.of(ProwlActions.class);
     }
 
     public void pushNotification(@Nullable String event, @Nullable String description) {
index 6846eb4b1230a97a21fb5ae56a91436085167b6e..003103c8612154fa11e3c9421894332526deb6cb 100644 (file)
@@ -78,8 +78,8 @@ public class ProwlActions implements ThingActions {
 
     public static void pushNotification(@Nullable ThingActions actions, @Nullable String event,
             @Nullable String description, int priority) {
-        if (actions instanceof ProwlActions) {
-            ((ProwlActions) actions).pushNotification(event, description, priority);
+        if (actions instanceof ProwlActions prowlActions) {
+            prowlActions.pushNotification(event, description, priority);
         } else {
             throw new IllegalArgumentException("Instance is not a ProwlActions class.");
         }
index 6973e1cc9065fabfc55c4a86b2057e0a5b6133d2..a20c3db59776532cbdc28b009ad057fae864f6e7 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.publictransportswitzerland.internal;
 
 import static org.openhab.binding.publictransportswitzerland.internal.PublicTransportSwitzerlandBindingConstants.*;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -37,7 +36,7 @@ import org.osgi.service.component.annotations.Component;
 @Component(configurationPid = "binding.publictransportswitzerland", service = ThingHandlerFactory.class)
 public class PublicTransportSwitzerlandHandlerFactory extends BaseThingHandlerFactory {
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_STATIONBOARD);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_STATIONBOARD);
 
     @Override
     public boolean supportsThingType(ThingTypeUID thingTypeUID) {
index 9b924401b54f700fe058e9c54ffb79c34985f88a..c0eda20e74843931807346bc205cb79b206592e8 100644 (file)
@@ -236,9 +236,10 @@ public class PublicTransportSwitzerlandStationboardHandler extends BaseThingHand
 
             if (categoryElement == null || numberElement == null || destinationElement == null
                     || departureTimeElement == null) {
-                logger.warn("Skipping stationboard item."
-                        + "One of the following is null: category: {}, number: {}, destination: {}, departureTime: {}",
-                        categoryElement, numberElement, destinationElement, departureTimeElement);
+                logger.warn("""
+                        Skipping stationboard item.\
+                        One of the following is null: category: {}, number: {}, destination: {}, departureTime: {}\
+                        """, categoryElement, numberElement, destinationElement, departureTimeElement);
                 continue;
             }
 
index eeab4962b6077f269c80d1e8c5efc15926ba34ee..a0729193c3bc71668d7e7e053c6d64c6f9ba9775 100644 (file)
@@ -225,8 +225,8 @@ public class PulseaudioClient {
      */
     public @Nullable Sink getSink(String name) {
         for (AbstractAudioDeviceConfig item : items) {
-            if (item.getPaName().equalsIgnoreCase(name) && item instanceof Sink) {
-                return (Sink) item;
+            if (item.getPaName().equalsIgnoreCase(name) && item instanceof Sink sink) {
+                return sink;
             }
         }
         return null;
@@ -239,8 +239,8 @@ public class PulseaudioClient {
      */
     public @Nullable Sink getSink(int id) {
         for (AbstractAudioDeviceConfig item : items) {
-            if (item.getId() == id && item instanceof Sink) {
-                return (Sink) item;
+            if (item.getId() == id && item instanceof Sink sink) {
+                return sink;
             }
         }
         return null;
@@ -253,8 +253,8 @@ public class PulseaudioClient {
      */
     public @Nullable Source getSource(int id) {
         for (AbstractAudioDeviceConfig item : items) {
-            if (item.getId() == id && item instanceof Source) {
-                return (Source) item;
+            if (item.getId() == id && item instanceof Source source) {
+                return source;
             }
         }
         return null;
@@ -362,8 +362,10 @@ public class PulseaudioClient {
             currentTry++;
         } while (currentTry < 3);
 
-        logger.warn("The pulseaudio binding tried 3 times to load the module-simple-protocol-tcp"
-                + " on random port on the pulseaudio server and give up trying");
+        logger.warn("""
+                The pulseaudio binding tried 3 times to load the module-simple-protocol-tcp\
+                 on random port on the pulseaudio server and give up trying\
+                """);
         return Optional.empty();
     }
 
index 915f596458fc3f7612918dfefe5ee5f577cc06a5..d529eb68ecd830c901745850ced55f9fa0712d27 100644 (file)
@@ -83,8 +83,8 @@ public class PulseaudioDeviceDiscoveryService extends AbstractDiscoveryService i
         Map<String, Object> properties = new HashMap<>();
         // All devices need this parameter
         properties.put(PulseaudioBindingConstants.DEVICE_PARAMETER_NAME_OR_DESCRIPTION, uidName);
-        if (device instanceof Sink) {
-            if (((Sink) device).isCombinedSink()) {
+        if (device instanceof Sink sink) {
+            if (sink.isCombinedSink()) {
                 thingType = PulseaudioBindingConstants.COMBINED_SINK_THING_TYPE;
             } else {
                 thingType = PulseaudioBindingConstants.SINK_THING_TYPE;
index 56367d4a41589fbd3566711f5089e8e9fce45529..e6a327505d7311665b909f6c60f68ca47673fbad 100644 (file)
@@ -16,7 +16,6 @@ import static org.openhab.binding.pulseaudio.internal.PulseaudioBindingConstants
 
 import java.io.IOException;
 import java.math.BigDecimal;
-import java.util.Collections;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
@@ -57,8 +56,8 @@ import org.slf4j.LoggerFactory;
 public class PulseaudioBridgeHandler extends BaseBridgeHandler implements PulseAudioBindingConfigurationListener {
     private final Logger logger = LoggerFactory.getLogger(PulseaudioBridgeHandler.class);
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections
-            .singleton(PulseaudioBindingConstants.BRIDGE_THING_TYPE);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set
+            .of(PulseaudioBindingConstants.BRIDGE_THING_TYPE);
 
     public String host = "localhost";
     public int port = 4712;
@@ -215,8 +214,8 @@ public class PulseaudioBridgeHandler extends BaseBridgeHandler implements PulseA
 
     @Override
     public void childHandlerInitialized(ThingHandler childHandler, Thing childThing) {
-        if (childHandler instanceof PulseaudioHandler) {
-            this.childHandlersInitialized.add((PulseaudioHandler) childHandler);
+        if (childHandler instanceof PulseaudioHandler pulsaudioHandler) {
+            this.childHandlersInitialized.add(pulsaudioHandler);
         } else {
             logger.error("This bridge can only support PulseaudioHandler child");
         }
index 9658e5741215bcdb7a6c717e5cace604320e66d5..72a10ce50f725480bcd418e7c5e5d43644ad8373 100644 (file)
@@ -252,8 +252,8 @@ public class PulseaudioHandler extends BaseThingHandler {
             return null;
         }
         ThingHandler handler = bridge.getHandler();
-        if (handler instanceof PulseaudioBridgeHandler) {
-            return (PulseaudioBridgeHandler) handler;
+        if (handler instanceof PulseaudioBridgeHandler pulseaudioBridgeHandler) {
+            return pulseaudioBridgeHandler;
         } else {
             logger.debug("No available bridge handler found for device {} bridge {} .",
                     safeGetDeviceNameOrDescription(), bridge.getUID());
@@ -300,25 +300,22 @@ public class PulseaudioHandler extends BaseThingHandler {
                     briHandler.getClient().setVolumePercent(device, newVolume);
                     updateState = new PercentType(newVolume);
                     savedVolume = newVolume;
-                } else if (command instanceof PercentType) {
-                    DecimalType volume = (DecimalType) command;
+                } else if (command instanceof PercentType volume) {
                     briHandler.getClient().setVolumePercent(device, volume.intValue());
-                    updateState = (PercentType) command;
+                    updateState = volume;
                     savedVolume = volume.intValue();
-                } else if (command instanceof DecimalType) {
-                    // set volume
-                    DecimalType volume = (DecimalType) command;
+                } else if (command instanceof DecimalType volume) {
                     briHandler.getClient().setVolume(device, volume.intValue());
-                    updateState = (DecimalType) command;
+                    updateState = volume;
                     savedVolume = volume.intValue();
                 }
             } else if (channelUID.getId().equals(MUTE_CHANNEL)) {
-                if (command instanceof OnOffType) {
+                if (command instanceof OnOffType onOffCommand) {
                     briHandler.getClient().setMute(device, OnOffType.ON.equals(command));
-                    updateState = (OnOffType) command;
+                    updateState = onOffCommand;
                 }
             } else if (channelUID.getId().equals(SLAVES_CHANNEL)) {
-                if (device instanceof Sink && ((Sink) device).isCombinedSink()) {
+                if (device instanceof Sink sink && sink.isCombinedSink()) {
                     if (command instanceof StringType) {
                         List<Sink> slaves = new ArrayList<>();
                         for (String slaveName : command.toString().split(",")) {
@@ -335,16 +332,16 @@ public class PulseaudioHandler extends BaseThingHandler {
                     logger.warn("{} is no combined sink", device);
                 }
             } else if (channelUID.getId().equals(ROUTE_TO_SINK_CHANNEL)) {
-                if (device instanceof SinkInput) {
+                if (device instanceof SinkInput input) {
                     Sink newSink = null;
-                    if (command instanceof DecimalType) {
-                        newSink = briHandler.getClient().getSink(((DecimalType) command).intValue());
+                    if (command instanceof DecimalType decimalCommand) {
+                        newSink = briHandler.getClient().getSink(decimalCommand.intValue());
                     } else {
                         newSink = briHandler.getClient().getSink(command.toString());
                     }
                     if (newSink != null) {
                         logger.debug("rerouting {} to {}", device, newSink);
-                        briHandler.getClient().moveSinkInput(((SinkInput) device), newSink);
+                        briHandler.getClient().moveSinkInput(input, newSink);
                         updateState = new StringType(newSink.getPaName());
                     } else {
                         logger.warn("no sink {} found", command.toString());
@@ -405,12 +402,12 @@ public class PulseaudioHandler extends BaseThingHandler {
             updateState(MUTE_CHANNEL, OnOffType.from(device.isMuted()));
             org.openhab.binding.pulseaudio.internal.items.AbstractAudioDeviceConfig.State state = device.getState();
             updateState(STATE_CHANNEL, state != null ? new StringType(state.toString()) : new StringType("-"));
-            if (device instanceof SinkInput) {
-                updateState(ROUTE_TO_SINK_CHANNEL, new StringType(
-                        Optional.ofNullable(((SinkInput) device).getSink()).map(Sink::getPaName).orElse("-")));
+            if (device instanceof SinkInput input) {
+                updateState(ROUTE_TO_SINK_CHANNEL,
+                        new StringType(Optional.ofNullable(input.getSink()).map(Sink::getPaName).orElse("-")));
             }
-            if (device instanceof Sink && ((Sink) device).isCombinedSink()) {
-                updateState(SLAVES_CHANNEL, new StringType(String.join(",", ((Sink) device).getCombinedSinkNames())));
+            if (device instanceof Sink sink && sink.isCombinedSink()) {
+                updateState(SLAVES_CHANNEL, new StringType(String.join(",", sink.getCombinedSinkNames())));
             }
             audioSinkSetup();
             audioSourceSetup();
index c3267b3b55f3419d9bbfdfadc822049388e7a525..c6ffa7ccb3aaa6269be0676802ebf4389a10674b 100644 (file)
@@ -12,7 +12,6 @@
  */
 package org.openhab.binding.pushbullet.internal;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -32,7 +31,7 @@ public class PushbulletBindingConstants {
     // List of all Thing Type UIDs
     public static final ThingTypeUID THING_TYPE_BOT = new ThingTypeUID(BINDING_ID, "bot");
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_BOT);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_BOT);
 
     // List of all Channel ids
     public static final String RECIPIENT = "recipient";
index 85996ced7fdc4450e15152ff44d0d800ce988ff7..b74d7257096ef3b8ce2f63527e10e0629a50724e 100644 (file)
@@ -19,8 +19,8 @@ import java.io.IOException;
 import java.io.InputStream;
 import java.nio.charset.StandardCharsets;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.Properties;
+import java.util.Set;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
@@ -97,7 +97,7 @@ public class PushbulletHandler extends BaseThingHandler {
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(PushbulletActions.class);
+        return Set.of(PushbulletActions.class);
     }
 
     public boolean sendPush(@Nullable String recipient, @Nullable String message, String type) {
@@ -129,8 +129,6 @@ public class PushbulletHandler extends BaseThingHandler {
 
             logger.debug("Unpacked Response: {}", response);
 
-            stream.close();
-
             if ((null != response) && (null == response.getPushError())) {
                 result = true;
             }
index c75346564aa714d7a3e2f7807059f9bd5f93df48..b666bc556452475aea7cfa4bd490bb9a8e0b5585 100644 (file)
@@ -12,7 +12,6 @@
  */
 package org.openhab.binding.qbus.internal;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -31,7 +30,7 @@ public class QbusBindingConstants {
 
     // bridge
     public static final ThingTypeUID BRIDGE_THING_TYPE = new ThingTypeUID(BINDING_ID, "bridge");
-    public static final Set<ThingTypeUID> BRIDGE_THING_TYPES_UIDS = Collections.singleton(BRIDGE_THING_TYPE);
+    public static final Set<ThingTypeUID> BRIDGE_THING_TYPES_UIDS = Set.of(BRIDGE_THING_TYPE);
     // Bridge config properties
     public static final String CONFIG_HOST_NAME = "addr";
     public static final String CONFIG_PORT = "port";
index 8f1c7ec39aad99c3e82627d749af48e67e02a444..713c3c480c47a7fb361f2ae9597104e2169df253 100644 (file)
@@ -274,8 +274,7 @@ public class QbusBridgeHandler extends BaseBridgeHandler {
      */
     public ThingStatusDetail getStatusDetails() {
         ThingStatusInfo status = thing.getStatusInfo();
-        ThingStatusDetail detail = status.getStatusDetail();
-        return detail;
+        return status.getStatusDetail();
     }
 
     /**
index b05774678736b1b642b8e7812d51a52b11c140d5..f3ae79af99f240ab299e32477301faac9aa02c34 100644 (file)
@@ -49,8 +49,7 @@ public class QbusHandlerFactory extends BaseThingHandlerFactory {
     @Override
     protected @Nullable ThingHandler createHandler(Thing thing) {
         if (BRIDGE_THING_TYPES_UIDS.contains(thing.getThingTypeUID())) {
-            QbusBridgeHandler handler = new QbusBridgeHandler((Bridge) thing);
-            return handler;
+            return new QbusBridgeHandler((Bridge) thing);
         } else if (SCENE_THING_TYPES_UIDS.contains(thing.getThingTypeUID())) {
             return new QbusSceneHandler(thing);
         } else if (BISTABIEL_THING_TYPES_UIDS.contains(thing.getThingTypeUID())) {
index b28ae70a51fc1bf2dd63c3762d57626b866a23c9..3daa280be1b769ad0f7f6dd1ca41e76910c39199 100644 (file)
@@ -242,8 +242,8 @@ public class QbusDimmerHandler extends QbusGlobalHandler {
                         qDimmer.execute(sendvalue, snr);
                     }
                 }
-            } else if (command instanceof PercentType) {
-                int percentToInt = ((PercentType) command).intValue();
+            } else if (command instanceof PercentType percentCommand) {
+                int percentToInt = percentCommand.intValue();
                 if (PercentType.ZERO.equals(command)) {
                     qDimmer.execute(0, snr);
                 } else {
index 0e1be2f895c35a3be73427c0c28c86f384b5f6f6..717625842b39b85eaa1b97647208c9286a20a128 100644 (file)
@@ -55,8 +55,7 @@ public abstract class QbusGlobalHandler extends BaseThingHandler {
                     "No bridge handler initialized for " + type + " with id " + globalId + ".");
             return null;
         }
-        QbusCommunication qComm = qBridgeHandler.getCommunication();
-        return qComm;
+        return qBridgeHandler.getCommunication();
     }
 
     /**
@@ -73,8 +72,7 @@ public abstract class QbusGlobalHandler extends BaseThingHandler {
                     "No bridge initialized for " + type + " with ID " + globalId);
             return null;
         }
-        QbusBridgeHandler qBridgeHandler = (QbusBridgeHandler) qBridge.getHandler();
-        return qBridgeHandler;
+        return (QbusBridgeHandler) qBridge.getHandler();
     }
 
     /**
index d03a1ca7ea55e940370125172f11704b2e85b0ce..b8a7c9723778c5b1393ab7149dbb296a27472328 100644 (file)
@@ -187,21 +187,19 @@ public class QbusRolHandler extends QbusGlobalHandler {
     private void handleScreenposCommand(QbusRol qRol, Command command) throws InterruptedException, IOException {
         String snr = getSN();
         if (snr != null) {
-            if (command instanceof UpDownType) {
-                UpDownType upDown = (UpDownType) command;
-                if (upDown == DOWN) {
+            if (command instanceof UpDownType upDownCommand) {
+                if (upDownCommand == DOWN) {
                     qRol.execute(0, snr);
                 } else {
                     qRol.execute(100, snr);
                 }
-            } else if (command instanceof IncreaseDecreaseType) {
-                IncreaseDecreaseType inc = (IncreaseDecreaseType) command;
+            } else if (command instanceof IncreaseDecreaseType increaseDecreaseCommand) {
                 int stepValue = ((Number) getConfig().get(CONFIG_STEP_VALUE)).intValue();
                 Integer currentValue = qRol.getState();
                 int newValue;
                 int sendValue;
                 if (currentValue != null) {
-                    if (inc == IncreaseDecreaseType.INCREASE) {
+                    if (increaseDecreaseCommand == increaseDecreaseCommand.INCREASE) {
                         newValue = currentValue + stepValue;
                         // round down to step multiple
                         newValue = newValue - newValue % stepValue;
@@ -215,10 +213,9 @@ public class QbusRolHandler extends QbusGlobalHandler {
                         qRol.execute(sendValue, snr);
                     }
                 }
-            } else if (command instanceof PercentType) {
-                PercentType p = (PercentType) command;
-                int pp = p.intValue();
-                if (PercentType.ZERO.equals(p)) {
+            } else if (command instanceof PercentType percentCommand) {
+                int pp = percentCommand.intValue();
+                if (PercentType.ZERO.equals(percentCommand)) {
                     qRol.execute(0, snr);
                 } else {
                     qRol.execute(pp, snr);
@@ -262,8 +259,8 @@ public class QbusRolHandler extends QbusGlobalHandler {
                         qRol.executeSlats(sendValue, snr);
                     }
                 }
-            } else if (command instanceof PercentType) {
-                int percentToInt = ((PercentType) command).intValue();
+            } else if (command instanceof PercentType percentCommand) {
+                int percentToInt = percentCommand.intValue();
                 if (PercentType.ZERO.equals(command)) {
                     qRol.executeSlats(0, snr);
                 } else {
index 4bfe677f1d6c53f882daa0fba8dfdcdcc9ffce4f..d6376ea8d31948467242ebaf34058373ded38c35 100644 (file)
@@ -194,8 +194,8 @@ public class QbusThermostatHandler extends QbusGlobalHandler {
             throws InterruptedException, IOException {
         String snr = getSN();
         if (snr != null) {
-            if (command instanceof DecimalType) {
-                int mode = ((DecimalType) command).intValue();
+            if (command instanceof DecimalType decimalCommand) {
+                int mode = decimalCommand.intValue();
                 qThermostat.executeMode(mode, snr);
             }
         }
@@ -214,10 +214,9 @@ public class QbusThermostatHandler extends QbusGlobalHandler {
             throws InterruptedException, IOException {
         String snr = getSN();
         if (snr != null) {
-            if (command instanceof QuantityType<?>) {
-                QuantityType<?> s = (QuantityType<?>) command;
-                double sp = s.doubleValue();
-                QuantityType<?> spCelcius = s.toUnit(CELSIUS);
+            if (command instanceof QuantityType<?> quantityCommand) {
+                double sp = quantityCommand.doubleValue();
+                QuantityType<?> spCelcius = quantityCommand.toUnit(CELSIUS);
 
                 if (spCelcius != null) {
                     qThermostat.executeSetpoint(sp, snr);
index 900c85ab3e4cb139db86e375d4727f13afd25af6..2e96edff3e072cd4bd15cd53fe965e41ec7bf830 100644 (file)
@@ -410,7 +410,7 @@ public final class QbusCommunication extends BaseThingHandler {
                                 }
 
                                 if (ctdState != null) {
-                                    if (ctdType.equals("bistabiel")) {
+                                    if ("bistabiel".equals(ctdType)) {
                                         QbusBistabiel output = new QbusBistabiel(ctdId);
                                         if (!bistabiel.containsKey(ctdId)) {
                                             output.setQComm(this);
@@ -419,7 +419,7 @@ public final class QbusCommunication extends BaseThingHandler {
                                         } else {
                                             output.updateState(ctdStateI);
                                         }
-                                    } else if (ctdType.equals("dimmer")) {
+                                    } else if ("dimmer".equals(ctdType)) {
                                         QbusDimmer output = new QbusDimmer(ctdId);
                                         if (!dimmer.containsKey(ctdId)) {
                                             output.setQComm(this);
@@ -428,7 +428,7 @@ public final class QbusCommunication extends BaseThingHandler {
                                         } else {
                                             output.updateState(ctdStateI);
                                         }
-                                    } else if (ctdType.equals("CO2")) {
+                                    } else if ("CO2".equals(ctdType)) {
                                         QbusCO2 output = new QbusCO2();
                                         if (!co2.containsKey(ctdId)) {
                                             output.updateState(ctdStateI);
@@ -436,13 +436,13 @@ public final class QbusCommunication extends BaseThingHandler {
                                         } else {
                                             output.updateState(ctdStateI);
                                         }
-                                    } else if (ctdType.equals("scene")) {
+                                    } else if ("scene".equals(ctdType)) {
                                         QbusScene output = new QbusScene(ctdId);
                                         if (!scene.containsKey(ctdId)) {
                                             output.setQComm(this);
                                             scene.put(ctdId, output);
                                         }
-                                    } else if (ctdType.equals("rol")) {
+                                    } else if ("rol".equals(ctdType)) {
                                         QbusRol output = new QbusRol(ctdId);
                                         if (!rol.containsKey(ctdId)) {
                                             output.setQComm(this);
@@ -459,7 +459,7 @@ public final class QbusCommunication extends BaseThingHandler {
                                         }
                                     }
                                 } else if (ctdMeasuredD != null && ctdSetpointD != null && ctdMmodeI != null) {
-                                    if (ctdType.equals("thermostat")) {
+                                    if ("thermostat".equals(ctdType)) {
                                         QbusThermostat output = new QbusThermostat(ctdId);
                                         if (!thermostat.containsKey(ctdId)) {
                                             output.setQComm(this);
index 20c21eb2b0c60d0294752c03824eff7b580efecf..78cfbd73bbf1b8bc5ae62c5699b200fdeb4d5c2f 100644 (file)
@@ -51,8 +51,8 @@ public class QolsysIQChildDiscoveryService extends AbstractDiscoveryService
 
     @Override
     public void setThingHandler(ThingHandler handler) {
-        if (handler instanceof QolsysIQChildDiscoveryHandler) {
-            ((QolsysIQChildDiscoveryHandler) handler).setDiscoveryService(this);
+        if (handler instanceof QolsysIQChildDiscoveryHandler childDiscoveryHandler) {
+            childDiscoveryHandler.setDiscoveryService(this);
             this.thingHandler = handler;
         }
     }
index 7939ebd88ac34966d61c9f00bce134e7468e7cad..37bb1ecc96dfdf40db0306380941474ff2be5d58 100644 (file)
@@ -17,6 +17,7 @@ import java.util.Collection;
 import java.util.Collections;
 import java.util.LinkedList;
 import java.util.List;
+import java.util.Set;
 import java.util.concurrent.ScheduledFuture;
 import java.util.concurrent.TimeUnit;
 
@@ -100,7 +101,7 @@ public class QolsysIQPanelHandler extends BaseBridgeHandler
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(QolsysIQChildDiscoveryService.class);
+        return Set.of(QolsysIQChildDiscoveryService.class);
     }
 
     @Override
@@ -316,9 +317,9 @@ public class QolsysIQPanelHandler extends BaseBridgeHandler
     private @Nullable QolsysIQPartitionHandler partitionHandler(int partitionId) {
         for (Thing thing : getThing().getThings()) {
             ThingHandler handler = thing.getHandler();
-            if (handler instanceof QolsysIQPartitionHandler) {
-                if (((QolsysIQPartitionHandler) handler).getPartitionId() == partitionId) {
-                    return (QolsysIQPartitionHandler) handler;
+            if (handler instanceof QolsysIQPartitionHandler partitionHandler) {
+                if (partitionHandler.getPartitionId() == partitionId) {
+                    return partitionHandler;
                 }
             }
         }
index 702193a4ecba97e39ee581214337bfb1ffb916a7..12483d91a405a08cfba5f881faff72affd8647e4 100644 (file)
@@ -18,6 +18,7 @@ import java.util.HashMap;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 import java.util.concurrent.ScheduledFuture;
 import java.util.concurrent.TimeUnit;
 
@@ -156,7 +157,7 @@ public class QolsysIQPartitionHandler extends BaseBridgeHandler implements Qolsy
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(QolsysIQChildDiscoveryService.class);
+        return Set.of(QolsysIQChildDiscoveryService.class);
     }
 
     @Override
@@ -347,9 +348,9 @@ public class QolsysIQPartitionHandler extends BaseBridgeHandler implements Qolsy
     private @Nullable QolsysIQZoneHandler zoneHandler(int zoneId) {
         for (Thing thing : getThing().getThings()) {
             ThingHandler handler = thing.getHandler();
-            if (handler instanceof QolsysIQZoneHandler) {
-                if (((QolsysIQZoneHandler) handler).getZoneId() == zoneId) {
-                    return (QolsysIQZoneHandler) handler;
+            if (handler instanceof QolsysIQZoneHandler zoneHandler) {
+                if (zoneHandler.getZoneId() == zoneId) {
+                    return zoneHandler;
                 }
             }
         }
@@ -360,8 +361,8 @@ public class QolsysIQPartitionHandler extends BaseBridgeHandler implements Qolsy
         Bridge bridge = getBridge();
         if (bridge != null) {
             BridgeHandler handler = bridge.getHandler();
-            if (handler instanceof QolsysIQPanelHandler) {
-                return (QolsysIQPanelHandler) handler;
+            if (handler instanceof QolsysIQPanelHandler panelHandler) {
+                return panelHandler;
             }
         }
         return null;
index 361378ad9f20a3ec2587b5f26e732ac3d2feb395..f4d513a7cea673c410ebfbbf5ec5bf3781e54fb7 100644 (file)
@@ -105,12 +105,12 @@ public class QolsysIQZoneHandler extends BaseThingHandler {
     private void initializeZone() {
         Bridge bridge = getBridge();
         BridgeHandler handler = bridge == null ? null : bridge.getHandler();
-        if (bridge != null && handler instanceof QolsysIQPartitionHandler) {
+        if (bridge != null && handler instanceof QolsysIQPartitionHandler partitionHandler) {
             if (handler.getThing().getStatus() != ThingStatus.ONLINE) {
                 updateStatus(ThingStatus.OFFLINE, ThingStatusDetail.BRIDGE_OFFLINE);
                 return;
             }
-            Zone z = ((QolsysIQPartitionHandler) handler).getZone(getZoneId());
+            Zone z = partitionHandler.getZone(getZoneId());
             if (z == null) {
                 updateStatus(ThingStatus.OFFLINE, ThingStatusDetail.CONFIGURATION_ERROR, "Zone not found in partition");
                 return;
index 227ee7eb5d2beedcc97d18b95544babdc34ce55e..069ab311850d9947b630bf99481518886d840c12 100644 (file)
@@ -61,8 +61,7 @@ public class RadioThermostatHandlerFactory extends BaseThingHandlerFactory {
         ThingTypeUID thingTypeUID = thing.getThingTypeUID();
 
         if (thingTypeUID.equals(THING_TYPE_RTHERM)) {
-            RadioThermostatHandler handler = new RadioThermostatHandler(thing, stateDescriptionProvider, httpClient);
-            return handler;
+            return new RadioThermostatHandler(thing, stateDescriptionProvider, httpClient);
         }
 
         return null;
index 26c6569d5c7cc17379d8d4729c77c98d931b4789..819da52cd15fe629928466bbfc1d7664b1d099e6 100644 (file)
@@ -136,7 +136,7 @@ public class RadioThermostatHandler extends BaseThingHandler implements RadioThe
 
         // The setpoint mode is controlled by the name of setpoint attribute sent to the thermostat.
         // Temporary mode uses setpoint names prefixed with "t_" while absolute mode uses "a_"
-        if (config.setpointMode.equals("absolute")) {
+        if ("absolute".equals(config.setpointMode)) {
             this.setpointCmdKeyPrefix = "a_";
         }
 
@@ -479,18 +479,18 @@ public class RadioThermostatHandler extends BaseThingHandler implements RadioThe
             State state = null;
             if (value == null) {
                 state = UnDefType.UNDEF;
-            } else if (value instanceof PointType) {
-                state = (PointType) value;
-            } else if (value instanceof ZonedDateTime) {
-                state = new DateTimeType((ZonedDateTime) value);
-            } else if (value instanceof QuantityType<?>) {
-                state = (QuantityType<?>) value;
-            } else if (value instanceof Number) {
-                state = new DecimalType((Number) value);
+            } else if (value instanceof PointType pointCommand) {
+                state = pointCommand;
+            } else if (value instanceof ZonedDateTime zonedDateTimeCommand) {
+                state = new DateTimeType(zonedDateTimeCommand);
+            } else if (value instanceof QuantityType<?> quantityCommand) {
+                state = quantityCommand;
+            } else if (value instanceof Number numberCommand) {
+                state = new DecimalType(numberCommand);
             } else if (value instanceof String) {
                 state = new StringType(value.toString());
-            } else if (value instanceof OnOffType) {
-                state = (OnOffType) value;
+            } else if (value instanceof OnOffType onOffCommand) {
+                state = onOffCommand;
             } else {
                 logger.warn("Update channel {}: Unsupported value type {}", channelId,
                         value.getClass().getSimpleName());
index 8c64b878f39aaaf270aaebfc833cf8afcb7ea69a..2b0686cc23af0d585ea1fc0bff1b607eb4a34913 100644 (file)
@@ -12,7 +12,6 @@
  */
 package org.openhab.binding.remoteopenhab.internal;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -34,10 +33,10 @@ public class RemoteopenhabBindingConstants {
     public static final ThingTypeUID THING_TYPE_THING = new ThingTypeUID(BINDING_ID, "thing");
 
     // All supported Bridge types
-    public static final Set<ThingTypeUID> SUPPORTED_BRIDGE_TYPES_UIDS = Collections.singleton(BRIDGE_TYPE_SERVER);
+    public static final Set<ThingTypeUID> SUPPORTED_BRIDGE_TYPES_UIDS = Set.of(BRIDGE_TYPE_SERVER);
 
     // All supported Thing types
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_THING);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_THING);
 
     // List of all channel types
     public static final String CHANNEL_TYPE_TRIGGER = "trigger";
index 54fa055b59d5525e5209a6c482981ba96b3d7d50..d767117285c0b8e1f2e5ff32fc227746f9364426 100644 (file)
@@ -59,8 +59,8 @@ public class RemoteopenhabDiscoveryService extends AbstractDiscoveryService
 
     @Override
     public void setThingHandler(ThingHandler handler) {
-        if (handler instanceof RemoteopenhabBridgeHandler) {
-            this.bridgeHandler = (RemoteopenhabBridgeHandler) handler;
+        if (handler instanceof RemoteopenhabBridgeHandler remoteopenhabBridgeHandler) {
+            this.bridgeHandler = remoteopenhabBridgeHandler;
             this.restClient = bridgeHandler.gestRestClient();
         }
     }
index fbeab2ee2a89fd3683a7085b3a962be06f638395..88eacc09c497c3f823e3ef6b85b0de069e93aaa2 100644 (file)
@@ -19,10 +19,10 @@ import java.time.ZonedDateTime;
 import java.time.format.DateTimeFormatter;
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 import java.util.concurrent.ScheduledFuture;
 import java.util.concurrent.TimeUnit;
 
@@ -552,7 +552,7 @@ public class RemoteopenhabBridgeHandler extends BaseBridgeHandler
             } else if (acceptedItemType.startsWith(CoreItemFactory.NUMBER + ":")) {
                 // Item type Number with dimension
                 if (stateType == null || "Quantity".equals(stateType)) {
-                    List<Class<? extends State>> stateTypes = Collections.singletonList(QuantityType.class);
+                    List<Class<? extends State>> stateTypes = List.of(QuantityType.class);
                     channelState = TypeParser.parseState(stateTypes, state);
                 } else if ("Decimal".equals(stateType)) {
                     channelState = new DecimalType(state);
@@ -661,6 +661,6 @@ public class RemoteopenhabBridgeHandler extends BaseBridgeHandler
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(RemoteopenhabDiscoveryService.class);
+        return Set.of(RemoteopenhabDiscoveryService.class);
     }
 }
index 0d257c3994bb9a8e9c08673fc9a568ba89501522..81d8acf6c2de232717c4e767e90b40abae173e16 100644 (file)
@@ -621,12 +621,10 @@ public class RemoteopenhabRestClient {
                     String statusLine = statusCode + " " + response.getReason();
                     throw new RemoteopenhabException("@text/exception.http-call-failed", statusLine);
                 }
-                String encoding = response.getEncoding() != null ? response.getEncoding().replaceAll("\"", "").trim()
+                String encoding = response.getEncoding() != null ? response.getEncoding().replace("\"", "").trim()
                         : StandardCharsets.UTF_8.name();
                 return new String(response.getContent(), encoding);
             }
-        } catch (RemoteopenhabException e) {
-            throw e;
         } catch (ExecutionException e) {
             // After a long network outage, the first HTTP request will fail with an EOFException exception.
             // We retry the request a second time in this case.
index 8231be38dfd3f522506d30c79bd0fb77445948db..1ead79e93db4f05c1abae36086513f5bec374140 100644 (file)
@@ -141,7 +141,7 @@ public class Car {
             JsonObject attributes = getAttributes(responseJson);
             if (attributes != null) {
                 if (attributes.get("hvacStatus") != null) {
-                    hvacstatus = attributes.get("hvacStatus").getAsString().equals("on");
+                    hvacstatus = "on".equals(attributes.get("hvacStatus").getAsString());
                 }
                 if (attributes.get("externalTemperature") != null) {
                     externalTemperature = attributes.get("externalTemperature").getAsDouble();
@@ -207,13 +207,12 @@ public class Car {
                 String url = null;
                 for (JsonElement asset : assetsJson) {
                     if (asset.getAsJsonObject().get("assetType") != null
-                            && asset.getAsJsonObject().get("assetType").getAsString().equals("PICTURE")) {
+                            && "PICTURE".equals(asset.getAsJsonObject().get("assetType").getAsString())) {
                         if (asset.getAsJsonObject().get("renditions") != null) {
                             JsonArray renditions = asset.getAsJsonObject().get("renditions").getAsJsonArray();
                             for (JsonElement rendition : renditions) {
-                                if (rendition.getAsJsonObject().get("resolutionType") != null
-                                        && rendition.getAsJsonObject().get("resolutionType").getAsString()
-                                                .equals("ONE_MYRENAULT_SMALL")) {
+                                if (rendition.getAsJsonObject().get("resolutionType") != null && "ONE_MYRENAULT_SMALL"
+                                        .equals(rendition.getAsJsonObject().get("resolutionType").getAsString())) {
                                     url = rendition.getAsJsonObject().get("url").getAsString();
                                     break;
                                 }
index e70756b9085139f16e88237aa4f96e6a1302434d..55bf3c0fc7f698ac0075c8f6fa78417b57077781 100644 (file)
@@ -277,7 +277,6 @@ public class MyRenaultHttpSession {
 
     public void actionPause(boolean mode) throws RenaultForbiddenException, RenaultNotImplementedException,
             RenaultActionException, RenaultAPIGatewayException {
-
         final String apiMode = mode ? "pause" : "resume";
         final String path = "/commerce/v1/accounts/" + kamereonaccountId + "/kamereon/kcm/v1/vehicles/" + config.vin
                 + "/charge/pause-resume?country=" + getCountry(config);
index bfc76b719b5d47658f9c4b7c65be87b0be887c27..ad0dc7525399e53fafcdb79925f4b44e5f2630d9 100644 (file)
@@ -123,15 +123,14 @@ public class RenaultHandler extends BaseThingHandler {
 
     @Override
     public void handleCommand(ChannelUID channelUID, Command command) {
-
         switch (channelUID.getId()) {
             case RenaultBindingConstants.CHANNEL_HVAC_TARGET_TEMPERATURE:
                 if (!car.isDisableHvac()) {
                     if (command instanceof RefreshType) {
                         updateState(CHANNEL_HVAC_TARGET_TEMPERATURE,
                                 new QuantityType<Temperature>(car.getHvacTargetTemperature(), SIUnits.CELSIUS));
-                    } else if (command instanceof DecimalType) {
-                        car.setHvacTargetTemperature(((DecimalType) command).doubleValue());
+                    } else if (command instanceof DecimalType decimalCommand) {
+                        car.setHvacTargetTemperature(decimalCommand.doubleValue());
                         updateState(CHANNEL_HVAC_TARGET_TEMPERATURE,
                                 new QuantityType<Temperature>(car.getHvacTargetTemperature(), SIUnits.CELSIUS));
                     } else if (command instanceof QuantityType) {
index 1779f8a8d61911e173599caf26307f33132c1add..0cb587d11992d90a6992780e66b40745fc254004 100644 (file)
@@ -15,9 +15,9 @@ package org.openhab.binding.resol.handler;
 import java.io.IOException;
 import java.net.InetAddress;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.Locale;
 import java.util.Objects;
+import java.util.Set;
 import java.util.concurrent.ScheduledFuture;
 import java.util.concurrent.TimeUnit;
 
@@ -102,7 +102,7 @@ public class ResolBridgeHandler extends BaseBridgeHandler {
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(ResolDeviceDiscoveryService.class);
+        return Set.of(ResolDeviceDiscoveryService.class);
     }
 
     public void registerResolThingListener(ResolEmuEMThingHandler resolEmuEMThingHandler) {
@@ -125,8 +125,8 @@ public class ResolBridgeHandler extends BaseBridgeHandler {
 
                         getThing().getThings().stream().forEach(thing -> {
                             ThingHandler th = thing.getHandler();
-                            if (th instanceof ResolEmuEMThingHandler) {
-                                ((ResolEmuEMThingHandler) th).stop();
+                            if (th instanceof ResolEmuEMThingHandler resolEmuEMThingHandler) {
+                                resolEmuEMThingHandler.stop();
                             }
                         });
 
@@ -175,8 +175,8 @@ public class ResolBridgeHandler extends BaseBridgeHandler {
 
                         getThing().getThings().stream().forEach(thing -> {
                             ThingHandler th = thing.getHandler();
-                            if (th instanceof ResolEmuEMThingHandler) {
-                                ((ResolEmuEMThingHandler) th).useConnection(c);
+                            if (th instanceof ResolEmuEMThingHandler resolEmuEMThingHandler) {
+                                resolEmuEMThingHandler.useConnection(c);
                             }
                         });
                     } catch (IOException e) {
@@ -235,11 +235,10 @@ public class ResolBridgeHandler extends BaseBridgeHandler {
                 connection.disconnect();
                 getThing().getThings().stream().forEach(thing -> {
                     ThingHandler th = thing.getHandler();
-                    if (th instanceof ResolEmuEMThingHandler) {
-                        ((ResolEmuEMThingHandler) th).stop();
+                    if (th instanceof ResolEmuEMThingHandler resolEmuEMThingHandler) {
+                        resolEmuEMThingHandler.stop();
                     }
                 });
-
             }
         } catch (IOException ioe) {
             // we don't care about exceptions on disconnect in dispose
index b95c5c0cf29267cdde2fcd1791793bf60a83a7f6..4fd285b23381cbe1addbdf03637b0c16e8130ea1 100644 (file)
@@ -136,8 +136,8 @@ public class ResolEmuEMThingHandler extends ResolBaseThingHandler implements Pro
         ResolBridgeHandler bridgeHandler = null;
 
         ThingHandler handler = bridge.getHandler();
-        if (handler instanceof ResolBridgeHandler) {
-            bridgeHandler = (ResolBridgeHandler) handler;
+        if (handler instanceof ResolBridgeHandler resolBridgeHandler) {
+            bridgeHandler = resolBridgeHandler;
         } else {
             logger.debug("No available bridge handler found yet. Bridge: {} .", bridge.getUID());
         }
@@ -190,13 +190,13 @@ public class ResolEmuEMThingHandler extends ResolBaseThingHandler implements Pro
         float value = 0;
         int intValue = 0;
 
-        if (command instanceof QuantityType<?>) {
-            value = Objects.requireNonNullElse(((QuantityType<?>) command).toUnit(SIUnits.CELSIUS),
+        if (command instanceof QuantityType<?> quantityCommand) {
+            value = Objects.requireNonNullElse(quantityCommand.toUnit(SIUnits.CELSIUS),
                     new QuantityType<>(888.8, SIUnits.CELSIUS)).floatValue();
-        } else if (command instanceof OnOffType) {
-            intValue = ((OnOffType) command).equals(OnOffType.ON) ? 1 : 0;
-        } else if (command instanceof DecimalType) {
-            intValue = ((DecimalType) command).intValue();
+        } else if (command instanceof OnOffType onOffCommand) {
+            intValue = onOffCommand.equals(OnOffType.ON) ? 1 : 0;
+        } else if (command instanceof DecimalType decimalCommand) {
+            intValue = decimalCommand.intValue();
             value = intValue;
         } else {
             /* nothing to do */
index 20dff6490e9bf5c8e1267e9a69d81f2645fdc387..21a1e354bd1ca5feb2c671e738e573d9fc80458c 100644 (file)
@@ -113,8 +113,8 @@ public class ResolThingHandler extends ResolBaseThingHandler {
         ResolBridgeHandler bridgeHandler = null;
 
         ThingHandler handler = bridge.getHandler();
-        if (handler instanceof ResolBridgeHandler) {
-            bridgeHandler = (ResolBridgeHandler) handler;
+        if (handler instanceof ResolBridgeHandler resolBridgeHandler) {
+            bridgeHandler = resolBridgeHandler;
         } else {
             logger.debug("No available bridge handler found yet. Bridge: {} .", bridge.getUID());
         }
index dad172f2add2ab86553670225e914618da1b0e9d..2687804eaf62992f35669adc821cf3d5b40c95e2 100644 (file)
@@ -110,8 +110,8 @@ public class ResolDeviceDiscoveryService extends AbstractDiscoveryService
 
     @Override
     public void setThingHandler(ThingHandler handler) {
-        if (handler instanceof ResolBridgeHandler) {
-            resolBridgeHandler = (ResolBridgeHandler) handler;
+        if (handler instanceof ResolBridgeHandler resolBridgeHandler) {
+            this.resolBridgeHandler = resolBridgeHandler;
         }
     }
 
index 89face49919d9246ccbe9d0050b0330bad4a8004..a98e2e5463e16846b006ba54d299f1914b4af705 100644 (file)
@@ -12,7 +12,6 @@
  */
 package org.openhab.binding.revogi.internal;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -34,8 +33,8 @@ import org.osgi.service.component.annotations.Component;
 @Component(configurationPid = "binding.revogi", service = ThingHandlerFactory.class)
 public class RevogiSmartStripControlHandlerFactory extends BaseThingHandlerFactory {
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections
-            .singleton(RevogiSmartStripControlBindingConstants.SMART_STRIP_THING_TYPE);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set
+            .of(RevogiSmartStripControlBindingConstants.SMART_STRIP_THING_TYPE);
 
     @Override
     public boolean supportsThingType(ThingTypeUID thingTypeUID) {
index b4262645791486a74b851ac6d869c5fc50adb048..fe10af9e029a2158f5a74ed77f77ffa25b2710a9 100644 (file)
@@ -12,7 +12,6 @@
  */
 package org.openhab.binding.revogi.internal;
 
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -43,8 +42,8 @@ import org.osgi.service.component.annotations.Component;
 @Component(service = DiscoveryService.class, configurationPid = "discovery.revogi")
 @NonNullByDefault
 public class RevogiSmartStripDiscoveryService extends AbstractDiscoveryService {
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Collections
-            .singleton(RevogiSmartStripControlBindingConstants.SMART_STRIP_THING_TYPE);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set
+            .of(RevogiSmartStripControlBindingConstants.SMART_STRIP_THING_TYPE);
 
     private final RevogiDiscoveryService revogiDiscoveryService;
 
index 27e154763db1b64c3a8270ebb7742c9f75546975..032f2645b48236e0af9f2ddc470463d86390be32 100644 (file)
@@ -41,7 +41,7 @@ public class RevogiDiscoveryServiceTest {
     public void discoverSmartStripSuccesfully() {
         // given
         DiscoveryResponseDTO discoveryResponse = new DiscoveryResponseDTO("1234", "reg", "sak", "Strip", "mac", "5.11");
-        List<UdpResponseDTO> discoveryString = Collections.singletonList(new UdpResponseDTO(
+        List<UdpResponseDTO> discoveryString = List.of(new UdpResponseDTO(
                 "{\"response\":0,\"data\":{\"sn\":\"1234\",\"regid\":\"reg\",\"sak\":\"sak\",\"name\":\"Strip\",\"mac\":\"mac\",\"ver\":\"5.11\"}}",
                 "127.0.0.1"));
         when(udpSenderService.broadcastUdpDatagram("00sw=all,,,;"))
@@ -61,8 +61,7 @@ public class RevogiDiscoveryServiceTest {
     @Test
     public void invalidUdpResponse() throws ExecutionException, InterruptedException {
         // given
-        List<UdpResponseDTO> discoveryString = Collections
-                .singletonList(new UdpResponseDTO("something invalid", "12345"));
+        List<UdpResponseDTO> discoveryString = List.of(new UdpResponseDTO("something invalid", "12345"));
         when(udpSenderService.broadcastUdpDatagram("00sw=all,,,;"))
                 .thenReturn(CompletableFuture.completedFuture(discoveryString));
 
index fab4aae7eb41daec93605ebf2c5be9f553fa298b..086301e45b1a03b05a1b09355a4b374d6f274d75 100644 (file)
@@ -17,7 +17,6 @@ import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
 import java.util.Arrays;
-import java.util.Collections;
 import java.util.List;
 import java.util.concurrent.CompletableFuture;
 
@@ -40,7 +39,7 @@ public class StatusServiceTest {
         // given
         StatusDTO status = new StatusDTO(true, 200, Arrays.asList(0, 0, 0, 0, 0, 0), Arrays.asList(0, 0, 0, 0, 0, 0),
                 Arrays.asList(0, 0, 0, 0, 0, 0));
-        List<UdpResponseDTO> statusString = Collections.singletonList(new UdpResponseDTO(
+        List<UdpResponseDTO> statusString = List.of(new UdpResponseDTO(
                 "V3{\"response\":90,\"code\":200,\"data\":{\"switch\":[0,0,0,0,0,0],\"watt\":[0,0,0,0,0,0],\"amp\":[0,0,0,0,0,0]}}",
                 "127.0.0.1"));
         when(udpSenderService.sendMessage("V3{\"sn\":\"serial\", \"cmd\": 90}", "127.0.0.1"))
@@ -56,7 +55,7 @@ public class StatusServiceTest {
     @Test
     public void invalidUdpResponse() {
         // given
-        List<UdpResponseDTO> statusString = Collections.singletonList(new UdpResponseDTO("something invalid", "12345"));
+        List<UdpResponseDTO> statusString = List.of(new UdpResponseDTO("something invalid", "12345"));
         when(udpSenderService.sendMessage("V3{\"sn\":\"serial\", \"cmd\": 90}", "127.0.0.1"))
                 .thenReturn(CompletableFuture.completedFuture(statusString));
 
index cc94ac246fa2524754d7f1ee73ef371727ad4c1c..6122a130f3cbc4511df82edb9f1a021e842fdc26 100644 (file)
@@ -17,7 +17,6 @@ import static org.hamcrest.MatcherAssert.assertThat;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
-import java.util.Collections;
 import java.util.List;
 import java.util.concurrent.CompletableFuture;
 
@@ -39,8 +38,7 @@ public class SwitchServiceTest {
     @Test
     public void getStatusSuccesfully() {
         // given
-        List<UdpResponseDTO> response = Collections
-                .singletonList(new UdpResponseDTO("V3{\"response\":20,\"code\":200}", "127.0.0.1"));
+        List<UdpResponseDTO> response = List.of(new UdpResponseDTO("V3{\"response\":20,\"code\":200}", "127.0.0.1"));
         when(udpSenderService.sendMessage("V3{\"sn\":\"serial\", \"cmd\": 20, \"port\": 1, \"state\": 1}", "127.0.0.1"))
                 .thenReturn(CompletableFuture.completedFuture(response));
 
@@ -54,8 +52,7 @@ public class SwitchServiceTest {
     @Test
     public void getStatusSuccesfullyWithBroadcast() {
         // given
-        List<UdpResponseDTO> response = Collections
-                .singletonList(new UdpResponseDTO("V3{\"response\":20,\"code\":200}", "127.0.0.1"));
+        List<UdpResponseDTO> response = List.of(new UdpResponseDTO("V3{\"response\":20,\"code\":200}", "127.0.0.1"));
         when(udpSenderService.broadcastUdpDatagram("V3{\"sn\":\"serial\", \"cmd\": 20, \"port\": 1, \"state\": 1}"))
                 .thenReturn(CompletableFuture.completedFuture(response));
 
@@ -69,7 +66,7 @@ public class SwitchServiceTest {
     @Test
     public void invalidUdpResponse() {
         // given
-        List<UdpResponseDTO> response = Collections.singletonList(new UdpResponseDTO("something invalid", "12345"));
+        List<UdpResponseDTO> response = List.of(new UdpResponseDTO("something invalid", "12345"));
         when(udpSenderService.sendMessage("V3{\"sn\":\"serial\", \"cmd\": 20, \"port\": 1, \"state\": 1}", "127.0.0.1"))
                 .thenReturn(CompletableFuture.completedFuture(response));
 
index d7d4720e21d6f2aefb7fe951178f48fa8083382f..5226b6f1db78f6aa7abe4c73f5af75abf899ec58 100644 (file)
@@ -116,7 +116,6 @@ public class RFXComBridgeDiscovery extends AbstractDiscoveryService {
             }
 
             logger.debug("Discovery done");
-
         } catch (IOException e) {
             logger.error("Error occurred during discovery", e);
         } catch (UnsatisfiedLinkError e) {
index 7a49db4e15b4fe7f2ff9ed4c7bd36362ec238c8e..f0ff9eeca616c5484ae4b7b787aa4dca4a3e2b0f 100644 (file)
@@ -53,8 +53,8 @@ public class RFXComDeviceDiscoveryService extends AbstractDiscoveryService
 
     @Override
     public void setThingHandler(ThingHandler handler) {
-        if (handler instanceof RFXComBridgeHandler) {
-            bridgeHandler = (RFXComBridgeHandler) handler;
+        if (handler instanceof RFXComBridgeHandler rfxComBridgeHandler) {
+            bridgeHandler = rfxComBridgeHandler;
         }
     }
 
index b06d9070619c750834399b45fb78a76cef8d58aa..4f216049ceea4c2300e7e3ba6c3e8e4ee5f2b840 100644 (file)
@@ -14,9 +14,9 @@ package org.openhab.binding.rfxcom.internal.handler;
 
 import java.io.IOException;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.List;
 import java.util.Queue;
+import java.util.Set;
 import java.util.concurrent.CopyOnWriteArrayList;
 import java.util.concurrent.LinkedBlockingQueue;
 import java.util.concurrent.ScheduledFuture;
@@ -133,7 +133,7 @@ public class RFXComBridgeHandler extends BaseBridgeHandler {
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(RFXComDeviceDiscoveryService.class);
+        return Set.of(RFXComDeviceDiscoveryService.class);
     }
 
     @Override
@@ -226,11 +226,14 @@ public class RFXComBridgeHandler extends BaseBridgeHandler {
             logger.error("Connection to RFXCOM transceiver failed", e);
             if ("device not opened (3)".equalsIgnoreCase(e.getMessage())) {
                 if (connector instanceof RFXComJD2XXConnector) {
-                    logger.info("Automatically Discovered RFXCOM bridges use FTDI chip driver (D2XX)."
-                            + " Reason for this error normally is related to operating system native FTDI drivers,"
-                            + " which prevent D2XX driver to open device."
-                            + " To solve this problem, uninstall OS FTDI native drivers or add manually universal bridge 'RFXCOM USB Transceiver',"
-                            + " which use normal serial port driver rather than D2XX.");
+                    logger.info(
+                            """
+                                    Automatically Discovered RFXCOM bridges use FTDI chip driver (D2XX).\
+                                     Reason for this error normally is related to operating system native FTDI drivers,\
+                                     which prevent D2XX driver to open device.\
+                                     To solve this problem, uninstall OS FTDI native drivers or add manually universal bridge 'RFXCOM USB Transceiver',\
+                                     which use normal serial port driver rather than D2XX.\
+                                    """);
                 }
             }
         } catch (Exception e) {
@@ -259,8 +262,7 @@ public class RFXComBridgeHandler extends BaseBridgeHandler {
                 RFXComMessage message = messageFactory.createMessage(packet);
                 logger.debug("Message received: {}", message);
 
-                if (message instanceof RFXComInterfaceMessage) {
-                    RFXComInterfaceMessage msg = (RFXComInterfaceMessage) message;
+                if (message instanceof RFXComInterfaceMessage msg) {
                     if (msg.subType == SubType.RESPONSE) {
                         if (msg.command == Commands.GET_STATUS) {
                             logger.debug("RFXCOM transceiver/receiver type: {}, hw version: {}.{}, fw version: {}",
@@ -322,25 +324,24 @@ public class RFXComBridgeHandler extends BaseBridgeHandler {
                         logger.debug("Interface response received: {}", msg);
                         transmitQueue.sendNext();
                     }
-                } else if (message instanceof RFXComTransmitterMessage) {
-                    RFXComTransmitterMessage resp = (RFXComTransmitterMessage) message;
-
+                } else if (message instanceof RFXComTransmitterMessage resp) {
                     logger.debug("Transmitter response received: {}", resp);
 
                     transmitQueue.sendNext();
-                } else if (message instanceof RFXComDeviceMessage) {
+                } else if (message instanceof RFXComDeviceMessage deviceMessage) {
                     for (DeviceMessageListener deviceStatusListener : deviceStatusListeners) {
                         try {
-                            deviceStatusListener.onDeviceMessageReceived(getThing().getUID(),
-                                    (RFXComDeviceMessage) message);
+                            deviceStatusListener.onDeviceMessageReceived(getThing().getUID(), deviceMessage);
                         } catch (Exception e) {
                             // catch all exceptions give all handlers a fair chance of handling the messages
                             logger.error("An exception occurred while calling the DeviceStatusListener", e);
                         }
                     }
                 } else {
-                    logger.warn("The received message cannot be processed, please create an "
-                            + "issue at the relevant tracker. Received message: {}", message);
+                    logger.warn("""
+                            The received message cannot be processed, please create an \
+                            issue at the relevant tracker. Received message: {}\
+                            """, message);
                 }
             } catch (RFXComMessageNotImplementedException e) {
                 logger.debug("Message not supported, data: {}", HexUtils.bytesToHex(packet));
index 0601c0eb77797c3a72f8cfc075a318d985509706..75da2f7fc27cc96fc010205ec4e99cd1537f6a4e 100644 (file)
@@ -160,8 +160,8 @@ public class RFXComChimeMessage extends RFXComDeviceMessageImpl<RFXComChimeMessa
     @Override
     public void convertFromState(String channelId, Type type) throws RFXComUnsupportedChannelException {
         if (CHANNEL_CHIME_SOUND.equals(channelId)) {
-            if (type instanceof DecimalType) {
-                chimeSound = ((DecimalType) type).intValue();
+            if (type instanceof DecimalType decimalCommand) {
+                chimeSound = decimalCommand.intValue();
             } else {
                 throw new RFXComUnsupportedChannelException("Channel " + channelId + " does not accept " + type);
             }
index fcde1589c8372a7aea21fac53c8b86d609354a28..a2d6dcd6a3452b91114be5ddc242d20c415f2b7b 100644 (file)
@@ -442,8 +442,8 @@ public class RFXComFanMessage extends RFXComDeviceMessageImpl<RFXComFanMessage.S
                 case "OFF":
                     return Commands.valueOf(stringCommand);
             }
-        } else if (type instanceof DecimalType) {
-            Commands speedCommand = Commands.bySpeed(subType, ((DecimalType) type).intValue());
+        } else if (type instanceof DecimalType decimalCommand) {
+            Commands speedCommand = Commands.bySpeed(subType, decimalCommand.intValue());
             if (speedCommand != null) {
                 return speedCommand;
             }
index 6a194ed0c7d58b3da267a60639095bf6b0672f36..6096f88b7459a822ab0506fc325d88b2287b9056 100644 (file)
@@ -263,9 +263,9 @@ public class RFXComLighting2Message extends RFXComDeviceMessageImpl<RFXComLighti
                     command = (type == OnOffType.ON ? Commands.ON : Commands.OFF);
                     dimmingLevel = 0;
 
-                } else if (type instanceof PercentType) {
+                } else if (type instanceof PercentType percentCommand) {
                     command = Commands.SET_LEVEL;
-                    dimmingLevel = (byte) getDimLevelFromPercentType((PercentType) type);
+                    dimmingLevel = (byte) getDimLevelFromPercentType(percentCommand);
 
                     if (dimmingLevel == 0) {
                         command = Commands.OFF;
index ec1bc73bbf290f672670caac94cc70e8549810e4..4fd45db1cec0c087c74cfcb5f771d15a4ef504e6 100644 (file)
@@ -267,8 +267,8 @@ public class RFXComLighting4Message extends RFXComDeviceMessageImpl<RFXComLighti
                 break;
 
             case CHANNEL_COMMAND_ID:
-                if (type instanceof DecimalType) {
-                    commandId = (byte) ((DecimalType) type).intValue();
+                if (type instanceof DecimalType decimalCommand) {
+                    commandId = (byte) decimalCommand.intValue();
                 } else {
                     throw new RFXComInvalidStateException(channelId, type.toString(),
                             "Channel only supports DecimalType");
index b7f2908ff4ec1f65fc635cb104d19335dc8b2dc9..2ef3c080d38d22a904e4d009cc0083c025c5fcbb 100644 (file)
@@ -337,9 +337,9 @@ public class RFXComLighting5Message extends RFXComDeviceMessageImpl<RFXComLighti
                     command = (type == OnOffType.ON ? Commands.ON : Commands.OFF);
                     dimmingLevel = 0;
 
-                } else if (type instanceof PercentType) {
+                } else if (type instanceof PercentType percentCommand) {
                     command = Commands.SET_LEVEL;
-                    dimmingLevel = (byte) getDimLevelFromPercentType((PercentType) type);
+                    dimmingLevel = (byte) getDimLevelFromPercentType(percentCommand);
 
                     if (dimmingLevel == 0) {
                         command = Commands.OFF;
index e9ed590885d458f2c95e4f359731ff3810cd3421..b721846ff3e3d224400d9ded376123443c04227c 100644 (file)
@@ -233,8 +233,8 @@ public class RFXComThermostat3Message extends RFXComDeviceMessageImpl<RFXComTher
                     command = (type == UpDownType.UP ? Commands.UP : Commands.DOWN);
                 } else if (type == StopMoveType.STOP) {
                     command = Commands.STOP;
-                } else if (type instanceof PercentType) {
-                    command = ((PercentType) type).as(UpDownType.class) == UpDownType.UP ? Commands.UP : Commands.DOWN;
+                } else if (type instanceof PercentType percentCommand) {
+                    command = percentCommand.as(UpDownType.class) == UpDownType.UP ? Commands.UP : Commands.DOWN;
                 } else {
                     throw new RFXComUnsupportedChannelException("Channel " + channelId + " does not accept " + type);
                 }
index f422c1273358dac007a5ab1ec5662160faa53818..67a40dd8af94545761ca172fb9d85253e34bc820 100644 (file)
@@ -93,8 +93,8 @@ public class RFXComRFXSensorMessageTest {
     }
 
     private @Nullable Double getStateAsDouble(State state) {
-        if (state instanceof DecimalType) {
-            return ((DecimalType) state).doubleValue();
+        if (state instanceof DecimalType decimalCommand) {
+            return decimalCommand.doubleValue();
         } else {
             return null;
         }
index 91f31e8661ec8aff596ec18d8da1bf984753cbcf..c4bc8ace960354ae905183abfa8de512f0c2d3e1 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.rme.internal;
 
 import static org.openhab.binding.rme.internal.RMEBindingConstants.THING_TYPE_MANAGER;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -40,7 +39,7 @@ import org.osgi.service.component.annotations.Reference;
 @Component(service = ThingHandlerFactory.class, configurationPid = "binding.rme")
 public class RMEHandlerFactory extends BaseThingHandlerFactory {
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_MANAGER);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_MANAGER);
 
     private final SerialPortManager serialPortManager;
 
index 58e1a87786b1c6f777504a4264aed4728353bd96..b50c155262502d70d4cd1f1407f71c8c3c57281d 100644 (file)
@@ -102,9 +102,9 @@ public class RMEThingHandler extends SerialThingHandler {
                         }
                         case MODE: {
                             StringType stringType = null;
-                            if (matcher.group(i).equals("0")) {
+                            if ("0".equals(matcher.group(i))) {
                                 stringType = MANUAL;
-                            } else if (matcher.group(i).equals("1")) {
+                            } else if ("1".equals(matcher.group(i))) {
                                 stringType = AUTOMATIC;
                             }
                             if (stringType != null) {
@@ -115,9 +115,9 @@ public class RMEThingHandler extends SerialThingHandler {
                         }
                         case SOURCE: {
                             StringType stringType = null;
-                            if (matcher.group(i).equals("0")) {
+                            if ("0".equals(matcher.group(i))) {
                                 stringType = RAIN;
-                            } else if (matcher.group(i).equals("1")) {
+                            } else if ("1".equals(matcher.group(i))) {
                                 stringType = CITY;
                             }
                             if (stringType != null) {
@@ -127,10 +127,10 @@ public class RMEThingHandler extends SerialThingHandler {
                             break;
                         }
                         default:
-                            if (matcher.group(i).equals("0")) {
+                            if ("0".equals(matcher.group(i))) {
                                 updateState(new ChannelUID(getThing().getUID(), DataField.get(i).channelID()),
                                         OnOffType.OFF);
-                            } else if (matcher.group(i).equals("1")) {
+                            } else if ("1".equals(matcher.group(i))) {
                                 updateState(new ChannelUID(getThing().getUID(), DataField.get(i).channelID()),
                                         OnOffType.ON);
                             }
index ebf18a9d4bde08d801cedd793e01e45a1bc88ff9..ceb0da5d024f44df115d4a3108ad4cf906e8e3eb 100644 (file)
@@ -107,8 +107,8 @@ public class RobonectHandler extends BaseThingHandler {
     private void sendCommand(ChannelUID channelUID, Command command) {
         switch (channelUID.getId()) {
             case CHANNEL_MOWER_NAME:
-                if (command instanceof StringType) {
-                    updateName((StringType) command);
+                if (command instanceof StringType stringCommand) {
+                    updateName(stringCommand);
                 } else {
                     logger.debug("Got name update of type {} but StringType is expected.",
                             command.getClass().getName());
@@ -125,8 +125,8 @@ public class RobonectHandler extends BaseThingHandler {
                 break;
 
             case CHANNEL_MOWER_START:
-                if (command instanceof OnOffType) {
-                    handleStartStop((OnOffType) command);
+                if (command instanceof OnOffType onOffCommand) {
+                    handleStartStop(onOffCommand);
                 } else {
                     logger.debug("Got stopped update of type {} but OnOffType is expected.",
                             command.getClass().getName());
index a05fad69e9589db433c6a0436ce1685b35b87340..6d27d66d5541c338e3f2390567f3bd3f312f0bc9 100644 (file)
@@ -183,14 +183,40 @@ public class ModelParserTest {
 
     @Test
     public void shouldParseVersionInfoV1betaToNA() {
-        String versionResponse = "{\n" + "mower: {\n" + "hardware: {\n" + "serial: 170602001,\n"
-                + "production: \"2017-02-07 15:12:00\"\n" + "},\n" + "msw: {\n" + "title: \"420\",\n"
-                + "version: \"7.10.00\",\n" + "compiled: \"2016-11-29 08:44:06\"\n" + "},\n" + "sub: {\n"
-                + "version: \"6.01.00\"\n" + "}\n" + "},\n" + "serial: \"05D80037-39355548-43163930\",\n"
-                + "bootloader: {\n" + "version: \"V0.4\",\n" + "compiled: \"2016-10-22 01:12:00\",\n"
-                + "comment: \"\"\n" + "},\n" + "wlan: {\n" + "at-version: \"V1.4.0\",\n" + "sdk-version: \"V2.1.0\"\n"
-                + "},\n" + "application: {\n" + "version: \"V1.0\",\n" + "compiled: \"2018-03-12 21:01:00\",\n"
-                + "comment: \"Release V1.0 Beta2\"\n" + "},\n" + "successful: true\n" + "}";
+        String versionResponse = """
+                {
+                mower: {
+                hardware: {
+                serial: 170602001,
+                production: "2017-02-07 15:12:00"
+                },
+                msw: {
+                title: "420",
+                version: "7.10.00",
+                compiled: "2016-11-29 08:44:06"
+                },
+                sub: {
+                version: "6.01.00"
+                }
+                },
+                serial: "05D80037-39355548-43163930",
+                bootloader: {
+                version: "V0.4",
+                compiled: "2016-10-22 01:12:00",
+                comment: ""
+                },
+                wlan: {
+                at-version: "V1.4.0",
+                sdk-version: "V2.1.0"
+                },
+                application: {
+                version: "V1.0",
+                compiled: "2018-03-12 21:01:00",
+                comment: "Release V1.0 Beta2"
+                },
+                successful: true
+                }\
+                """;
         VersionInfo versionInfo = subject.parse(versionResponse, VersionInfo.class);
         assertTrue(versionInfo.isSuccessful());
         assertEquals("n/a", versionInfo.getRobonect().getSerial());
index fad152a8d0fd8d211269117b14b88248eeadd7c9..dd18381cf2c884cc73dc7597d3aefcc6cb9320a4 100644 (file)
@@ -58,8 +58,7 @@ public class RokuHandlerFactory extends BaseThingHandlerFactory {
         ThingTypeUID thingTypeUID = thing.getThingTypeUID();
 
         if (SUPPORTED_THING_TYPES_UIDS.contains(thingTypeUID)) {
-            RokuHandler handler = new RokuHandler(thing, httpClient, stateDescriptionProvider);
-            return handler;
+            return new RokuHandler(thing, httpClient, stateDescriptionProvider);
         }
 
         return null;
index 23033036e0e1427d08c0329120acc50e6ea3a0c0..87dd34729b98d07b7061312472ee6ae8603c31e8 100644 (file)
@@ -59,8 +59,13 @@ import org.slf4j.LoggerFactory;
 @Component(service = DiscoveryService.class, configurationPid = "discovery.roku")
 public class RokuDiscoveryService extends AbstractDiscoveryService {
     private final Logger logger = LoggerFactory.getLogger(RokuDiscoveryService.class);
-    private static final String ROKU_DISCOVERY_MESSAGE = "M-SEARCH * HTTP/1.1\r\n" + "Host: 239.255.255.250:1900\r\n"
-            + "Man: \"ssdp:discover\"\r\n" + "ST: roku:ecp\r\n" + "\r\n";
+    private static final String ROKU_DISCOVERY_MESSAGE = """
+            M-SEARCH * HTTP/1.1\r
+            Host: 239.255.255.250:1900\r
+            Man: "ssdp:discover"\r
+            ST: roku:ecp\r
+            \r
+            """;
 
     private static final Pattern USN_PATTERN = Pattern.compile("^(uuid:roku:)?ecp:([0-9a-zA-Z]{1,16})");
 
index 2d71478df123bd5026b86ed5ec5d27a46c71588b..8fcaa13fe8073a423fe72a91b0d7abece0f7b998 100644 (file)
@@ -868,8 +868,8 @@ public class RotelHandler extends BaseThingHandler implements RotelMessageEventL
                             } else if (radioPreset > 0 && command instanceof IncreaseDecreaseType
                                     && command == IncreaseDecreaseType.DECREASE) {
                                 value = radioPreset - 1;
-                            } else if (command instanceof DecimalType) {
-                                value = ((DecimalType) command).intValue();
+                            } else if (command instanceof DecimalType decimalCommand) {
+                                value = decimalCommand.intValue();
                             }
                             if (value >= 1 && value <= 30) {
                                 RotelSource source = sources[0];
@@ -903,8 +903,8 @@ public class RotelHandler extends BaseThingHandler implements RotelMessageEventL
                         } else if (!model.hasDimmerControl()) {
                             success = false;
                             logger.debug("Command {} from channel {} failed: unavailable feature", command, channel);
-                        } else if (command instanceof PercentType) {
-                            int dimmer = (int) Math.round(((PercentType) command).doubleValue() / 100.0
+                        } else if (command instanceof PercentType percentCommand) {
+                            int dimmer = (int) Math.round(percentCommand.doubleValue() / 100.0
                                     * (model.getDimmerLevelMax() - model.getDimmerLevelMin()))
                                     + model.getDimmerLevelMin();
                             sendCommand(RotelCommand.DIMMER_LEVEL_SET, dimmer);
@@ -1043,8 +1043,8 @@ public class RotelHandler extends BaseThingHandler implements RotelMessageEventL
             sendCommand(upCmd);
         } else if (command instanceof IncreaseDecreaseType && command == IncreaseDecreaseType.DECREASE) {
             sendCommand(downCmd);
-        } else if (command instanceof DecimalType && setCmd == null) {
-            int value = ((DecimalType) command).intValue();
+        } else if (command instanceof DecimalType decimalCommand && setCmd == null) {
+            int value = decimalCommand.intValue();
             if (value >= minVolume && value <= maxVolume) {
                 if (value > current) {
                     sendCommand(upCmd);
@@ -1052,9 +1052,8 @@ public class RotelHandler extends BaseThingHandler implements RotelMessageEventL
                     sendCommand(downCmd);
                 }
             }
-        } else if (command instanceof PercentType && setCmd != null) {
-            int value = (int) Math.round(((PercentType) command).doubleValue() / 100.0 * (maxVolume - minVolume))
-                    + minVolume;
+        } else if (command instanceof PercentType percentCommand && setCmd != null) {
+            int value = (int) Math.round(percentCommand.doubleValue() / 100.0 * (maxVolume - minVolume)) + minVolume;
             sendCommand(setCmd, value);
         } else {
             logger.debug("Command {} from channel {} failed: invalid command value", command, channel);
@@ -1110,8 +1109,8 @@ public class RotelHandler extends BaseThingHandler implements RotelMessageEventL
         } else if (command instanceof IncreaseDecreaseType && command == IncreaseDecreaseType.DECREASE) {
             selectToneControl(nbSelect);
             sendCommand(downCmd);
-        } else if (command instanceof DecimalType) {
-            int value = ((DecimalType) command).intValue();
+        } else if (command instanceof DecimalType decimalCommand) {
+            int value = decimalCommand.intValue();
             if (value >= minToneLevel && value <= maxToneLevel) {
                 if (protocol != RotelProtocol.HEX) {
                     sendCommand(setCmd, value);
@@ -1204,8 +1203,8 @@ public class RotelHandler extends BaseThingHandler implements RotelMessageEventL
             sendCommand(rightCmd);
         } else if (command instanceof IncreaseDecreaseType && command == IncreaseDecreaseType.DECREASE) {
             sendCommand(leftCmd);
-        } else if (command instanceof DecimalType) {
-            int value = ((DecimalType) command).intValue();
+        } else if (command instanceof DecimalType decimalCommand) {
+            int value = decimalCommand.intValue();
             if (value >= minBalanceLevel && value <= maxBalanceLevel) {
                 sendCommand(setCmd, value);
             }
@@ -1618,7 +1617,7 @@ public class RotelHandler extends BaseThingHandler implements RotelMessageEventL
                     break;
                 case KEY_TRACK:
                     source = sources[0];
-                    if (source != null && source.getName().equals("CD") && !model.hasSourceControl()) {
+                    if (source != null && "CD".equals(source.getName()) && !model.hasSourceControl()) {
                         track = Integer.parseInt(value);
                         updateChannelState(CHANNEL_TRACK);
                     }
@@ -2027,7 +2026,7 @@ public class RotelHandler extends BaseThingHandler implements RotelMessageEventL
                                 RotelSource source = sources[0];
                                 if (model != RotelModel.RCD1570 && model != RotelModel.RCD1572
                                         && (model != RotelModel.RCX1500 || source == null
-                                                || !source.getName().equals("CD"))) {
+                                                || !"CD".equals(source.getName()))) {
                                     sendCommand(RotelCommand.PLAY_STATUS);
                                     Thread.sleep(SLEEP_INTV);
                                 } else {
@@ -2094,7 +2093,7 @@ public class RotelHandler extends BaseThingHandler implements RotelMessageEventL
                                 sendCommand(RotelCommand.PLAY_STATUS);
                                 Thread.sleep(SLEEP_INTV);
                                 RotelSource source = sources[0];
-                                if (source != null && source.getName().equals("CD") && !model.hasSourceControl()) {
+                                if (source != null && "CD".equals(source.getName()) && !model.hasSourceControl()) {
                                     sendCommand(RotelCommand.TRACK);
                                     Thread.sleep(SLEEP_INTV);
                                     sendCommand(RotelCommand.RANDOM_MODE);
@@ -2949,11 +2948,11 @@ public class RotelHandler extends BaseThingHandler implements RotelMessageEventL
         }
         connector.writeOutput(cmd, message);
 
-        if (connector instanceof RotelSimuConnector) {
+        if (connector instanceof RotelSimuConnector simuConnector) {
             if ((protocol == RotelProtocol.HEX && cmd.getHexType() != 0)
                     || (protocol == RotelProtocol.ASCII_V1 && cmd.getAsciiCommandV1() != null)
                     || (protocol == RotelProtocol.ASCII_V2 && cmd.getAsciiCommandV2() != null)) {
-                ((RotelSimuConnector) connector).buildFeedbackMessage(cmd, value);
+                simuConnector.buildFeedbackMessage(cmd, value);
             }
         }
     }
index 322779e95843e03a7388dcc9103ed1f45a07897b..7537044518b34b4c387e6bdfa46971883fc34c3b 100644 (file)
@@ -181,7 +181,7 @@ public class RioSystemDeviceDiscoveryService extends AbstractDiscoveryService {
 
                 final DiscoveryResult discoveryResult = DiscoveryResultBuilder.create(thingUID)
                         .withProperty(RioSourceConfig.SOURCE, s).withBridge(sysHandler.getThing().getUID())
-                        .withLabel((name == null || name.isEmpty() || name.equalsIgnoreCase("null") ? "Source" : name)
+                        .withLabel((name == null || name.isEmpty() || "null".equalsIgnoreCase(name) ? "Source" : name)
                                 + " (" + s + ")")
                         .build();
                 thingDiscovered(discoveryResult);
@@ -214,7 +214,7 @@ public class RioSystemDeviceDiscoveryService extends AbstractDiscoveryService {
 
                 final DiscoveryResult discoveryResult = DiscoveryResultBuilder.create(thingUID)
                         .withProperty(RioZoneConfig.ZONE, z).withBridge(controllerUID)
-                        .withLabel((name.equalsIgnoreCase("null") ? "Zone" : name) + " (" + z + ")").build();
+                        .withLabel(("null".equalsIgnoreCase(name) ? "Zone" : name) + " (" + z + ")").build();
                 thingDiscovered(discoveryResult);
             }
         }
index 6473cc9804c8889d686ee59be89b0e64d2b926a9..573f582e994f9d8a037373dea3c5e8d644175dfb 100644 (file)
@@ -22,6 +22,7 @@ import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 import java.util.concurrent.TimeUnit;
@@ -66,7 +67,7 @@ public class RioSystemDiscovery extends AbstractDiscoveryService {
      * 120 seconds (depending on how many network interfaces there are)
      */
     public RioSystemDiscovery() {
-        super(Collections.singleton(RioConstants.BRIDGE_TYPE_RIO), 120);
+        super(Set.of(RioConstants.BRIDGE_TYPE_RIO), 120);
     }
 
     /**
index 85fcc5847de3ff331cd51df25756434a5b90993f..95c3891902a93d3afcee46a0be045766ece9fde3 100644 (file)
@@ -292,15 +292,15 @@ public class SocketChannelSession implements SocketSession {
                     final Object response = responses.poll(1, TimeUnit.SECONDS);
 
                     if (response != null) {
-                        if (response instanceof String) {
+                        if (response instanceof String stringCommand) {
                             logger.debug("Dispatching response: {}", response);
                             for (SocketSessionListener listener : listeners) {
-                                listener.responseReceived((String) response);
+                                listener.responseReceived(stringCommand);
                             }
-                        } else if (response instanceof IOException) {
+                        } else if (response instanceof IOException ioException) {
                             logger.debug("Dispatching exception: {}", response);
                             for (SocketSessionListener listener : listeners) {
-                                listener.responseException((IOException) response);
+                                listener.responseException(ioException);
                             }
                         } else {
                             logger.warn("Unknown response class: {}", response);
index d59a42ace816706c6f287454f8b807f25c9aa5c0..86793e3d8005959d05abce0722bf7cea908f19c9 100644 (file)
@@ -44,10 +44,10 @@ public class WaitingSessionListener implements SocketSessionListener {
         // will not come in until the other commands have been processed. So we need a large wait
         // time for it to be sent to us
         final Object lastResponse = responses.poll(60, TimeUnit.SECONDS);
-        if (lastResponse instanceof String) {
-            return (String) lastResponse;
-        } else if (lastResponse instanceof IOException) {
-            throw (IOException) lastResponse;
+        if (lastResponse instanceof String stringCommand) {
+            return stringCommand;
+        } else if (lastResponse instanceof IOException ioException) {
+            throw ioException;
         } else if (lastResponse == null) {
             throw new IOException("Didn't receive response in time");
         } else {
index 9665e0d3b0c0e26e25d9b2a14662067522965f11..d1adf99a12787986dff72537c463adf17b5f4957 100644 (file)
@@ -193,8 +193,8 @@ public abstract class AbstractBridgeHandler<E extends AbstractRioProtocol> exten
     public void channelUnlinked(ChannelUID channelUID) {
         // Remove any state when unlinking (that way if it is relinked - we get it)
         final RioHandlerCallback callback = getProtocolHandler().getCallback();
-        if (callback instanceof StatefulHandlerCallback) {
-            ((StatefulHandlerCallback) callback).removeState(channelUID.getId());
+        if (callback instanceof StatefulHandlerCallback handlerCallback) {
+            handlerCallback.removeState(channelUID.getId());
         }
         super.channelUnlinked(channelUID);
     }
index 1b5970c058ef0af28be29ccee16d94251b01b1ea..632bdbeab97fa29a9a8d8a9c8956b06353a35c04 100644 (file)
@@ -116,8 +116,8 @@ public abstract class AbstractThingHandler<E extends AbstractRioProtocol> extend
     public void channelUnlinked(ChannelUID channelUID) {
         // Remove any state when unlinking (that way if it is relinked - we get it)
         final RioHandlerCallback callback = getProtocolHandler().getCallback();
-        if (callback instanceof StatefulHandlerCallback) {
-            ((StatefulHandlerCallback) callback).removeState(channelUID.getId());
+        if (callback instanceof StatefulHandlerCallback handlerCallback) {
+            handlerCallback.removeState(channelUID.getId());
         }
         super.channelUnlinked(channelUID);
     }
index 18da50cbf8f3ee1a45c53a77cfabd1e73113f6ad..09c262ea5ae3462449853b091fb8f945a511f237 100644 (file)
@@ -231,8 +231,8 @@ public class RioControllerHandler extends AbstractBridgeHandler<RioControllerPro
         if (childHandler == null) {
             throw new IllegalArgumentException("childHandler cannot be null");
         }
-        if (childHandler instanceof RioZoneHandler) {
-            final RioHandlerCallback callback = ((RioZoneHandler) childHandler).getRioHandlerCallback();
+        if (childHandler instanceof RioZoneHandler zoneHandler) {
+            final RioHandlerCallback callback = zoneHandler.getRioHandlerCallback();
             if (callback != null) {
                 if (added) {
                     callback.addListener(RioConstants.CHANNEL_ZONENAME, handlerCallbackListener);
index 54a1a5bd1f46662972254c8eeccdce1048371846..1144a36d45c2d1570cca6ab9f297a8f00253c262 100644 (file)
@@ -40,11 +40,10 @@ public class AtomicStringTypeAdapter extends TypeAdapter<AtomicReference<String>
 
         JsonElement je = JsonParser.parseReader(in);
 
-        if (je instanceof JsonPrimitive) {
+        if (je instanceof JsonPrimitive jsonPrimitive) {
             value = new AtomicReference<>();
-            value.set(((JsonPrimitive) je).getAsString());
-        } else if (je instanceof JsonObject) {
-            JsonObject jsonObject = (JsonObject) je;
+            value.set(jsonPrimitive.getAsString());
+        } else if (je instanceof JsonObject jsonObject) {
             value = new AtomicReference<>();
             value.set(jsonObject.get("value").getAsString());
         }
index 7090456ac0adb95ffec2411b689fa8ba84e6dcc8..58019283ae230746b080c14735b90b2078516ac5 100644 (file)
@@ -468,8 +468,8 @@ class RioSourceProtocol extends AbstractRioProtocol {
 
         infoLock.lock();
         try {
-            infoText.append(infoTextValue.toString());
-            if (attr != null && attr.toString().indexOf("E") >= 0) {
+            infoText.append(infoTextValue);
+            if (attr != null && attr.toString().contains("E")) {
                 final String text = infoText.toString();
 
                 infoText.setLength(0);
index 1c502b6d20d4f563d07bce3be78180914478b179..1b84e68922a6e626956361d12569e7f798da702b 100644 (file)
@@ -180,8 +180,8 @@ public class RioSystemHandler extends AbstractBridgeHandler<RioSystemProtocol> {
         }
 
         if (id.equals(RioConstants.CHANNEL_SYSLANG)) {
-            if (command instanceof StringType) {
-                getProtocolHandler().setSystemLanguage(((StringType) command).toString());
+            if (command instanceof StringType stringCommand) {
+                getProtocolHandler().setSystemLanguage(stringCommand.toString());
             } else {
                 logger.debug("Received a SYSTEM LANGUAGE channel command with a non StringType: {}", command);
             }
@@ -489,8 +489,8 @@ public class RioSystemHandler extends AbstractBridgeHandler<RioSystemProtocol> {
         if (childHandler == null) {
             throw new IllegalArgumentException("childHandler cannot be null");
         }
-        if (childHandler instanceof RioSourceHandler) {
-            final RioHandlerCallback callback = ((RioSourceHandler) childHandler).getRioHandlerCallback();
+        if (childHandler instanceof RioSourceHandler sourceHandler) {
+            final RioHandlerCallback callback = sourceHandler.getRioHandlerCallback();
             if (callback != null) {
                 if (added) {
                     callback.addListener(RioConstants.CHANNEL_SOURCENAME, handlerCallbackListener);
index 4dfcf65000eaf8c2adac476c07d799051f054059..b00ff37b9a360993e99d70fbe08847b8c872c44b 100644 (file)
@@ -139,31 +139,31 @@ public class RioZoneHandler extends AbstractThingHandler<RioZoneProtocol>
         }
 
         if (id.equals(RioConstants.CHANNEL_ZONEBASS)) {
-            if (command instanceof DecimalType) {
-                getProtocolHandler().setZoneBass(((DecimalType) command).intValue());
+            if (command instanceof DecimalType decimalCommand) {
+                getProtocolHandler().setZoneBass(decimalCommand.intValue());
             } else {
                 logger.debug("Received a ZONE BASS channel command with a non DecimalType: {}", command);
             }
 
         } else if (id.equals(RioConstants.CHANNEL_ZONETREBLE)) {
-            if (command instanceof DecimalType) {
-                getProtocolHandler().setZoneTreble(((DecimalType) command).intValue());
+            if (command instanceof DecimalType decimalCommand) {
+                getProtocolHandler().setZoneTreble(decimalCommand.intValue());
             } else {
                 logger.debug("Received a ZONE TREBLE channel command with a non DecimalType: {}", command);
             }
 
         } else if (id.equals(RioConstants.CHANNEL_ZONEBALANCE)) {
-            if (command instanceof DecimalType) {
-                getProtocolHandler().setZoneBalance(((DecimalType) command).intValue());
+            if (command instanceof DecimalType decimalCommand) {
+                getProtocolHandler().setZoneBalance(decimalCommand.intValue());
             } else {
                 logger.debug("Received a ZONE BALANCE channel command with a non DecimalType: {}", command);
             }
 
         } else if (id.equals(RioConstants.CHANNEL_ZONETURNONVOLUME)) {
-            if (command instanceof PercentType) {
-                getProtocolHandler().setZoneTurnOnVolume(((PercentType) command).intValue() / 100d);
-            } else if (command instanceof DecimalType) {
-                getProtocolHandler().setZoneTurnOnVolume(((DecimalType) command).doubleValue());
+            if (command instanceof PercentType percentCommand) {
+                getProtocolHandler().setZoneTurnOnVolume(percentCommand.intValue() / 100d);
+            } else if (command instanceof DecimalType decimalCommand) {
+                getProtocolHandler().setZoneTurnOnVolume(decimalCommand.doubleValue());
             } else {
                 logger.debug("Received a ZONE TURN ON VOLUME channel command with a non PercentType/DecimalType: {}",
                         command);
@@ -177,15 +177,15 @@ public class RioZoneHandler extends AbstractThingHandler<RioZoneProtocol>
             }
 
         } else if (id.equals(RioConstants.CHANNEL_ZONESLEEPTIMEREMAINING)) {
-            if (command instanceof DecimalType) {
-                getProtocolHandler().setZoneSleepTimeRemaining(((DecimalType) command).intValue());
+            if (command instanceof DecimalType decimalCommand) {
+                getProtocolHandler().setZoneSleepTimeRemaining(decimalCommand.intValue());
             } else {
                 logger.debug("Received a ZONE SLEEP TIME REMAINING channel command with a non DecimalType: {}",
                         command);
             }
         } else if (id.equals(RioConstants.CHANNEL_ZONESOURCE)) {
-            if (command instanceof DecimalType) {
-                getProtocolHandler().setZoneSource(((DecimalType) command).intValue());
+            if (command instanceof DecimalType decimalCommand) {
+                getProtocolHandler().setZoneSource(decimalCommand.intValue());
             } else {
                 logger.debug("Received a ZONE SOURCE channel command with a non DecimalType: {}", command);
             }
@@ -197,15 +197,15 @@ public class RioZoneHandler extends AbstractThingHandler<RioZoneProtocol>
                 logger.debug("Received a ZONE STATUS channel command with a non OnOffType: {}", command);
             }
         } else if (id.equals(RioConstants.CHANNEL_ZONEPARTYMODE)) {
-            if (command instanceof StringType) {
-                getProtocolHandler().setZonePartyMode(((StringType) command).toString());
+            if (command instanceof StringType stringCommand) {
+                getProtocolHandler().setZonePartyMode(stringCommand.toString());
             } else {
                 logger.debug("Received a ZONE PARTY MODE channel command with a non StringType: {}", command);
             }
 
         } else if (id.equals(RioConstants.CHANNEL_ZONEDONOTDISTURB)) {
-            if (command instanceof StringType) {
-                getProtocolHandler().setZoneDoNotDisturb(((StringType) command).toString());
+            if (command instanceof StringType stringCommand) {
+                getProtocolHandler().setZoneDoNotDisturb(stringCommand.toString());
             } else {
                 logger.debug("Received a ZONE DO NOT DISTURB channel command with a non StringType: {}", command);
             }
@@ -236,10 +236,10 @@ public class RioZoneHandler extends AbstractThingHandler<RioZoneProtocol>
                 getProtocolHandler().setZoneStatus(command == OnOffType.ON);
             } else if (command instanceof IncreaseDecreaseType) {
                 getProtocolHandler().setZoneVolume(command == IncreaseDecreaseType.INCREASE);
-            } else if (command instanceof PercentType) {
-                getProtocolHandler().setZoneVolume(((PercentType) command).intValue() / 100d);
-            } else if (command instanceof DecimalType) {
-                getProtocolHandler().setZoneVolume(((DecimalType) command).doubleValue());
+            } else if (command instanceof PercentType percentCommand) {
+                getProtocolHandler().setZoneVolume(percentCommand.intValue() / 100d);
+            } else if (command instanceof DecimalType decimalCommand) {
+                getProtocolHandler().setZoneVolume(decimalCommand.doubleValue());
             } else {
                 logger.debug(
                         "Received a ZONE VOLUME channel command with a non OnOffType/IncreaseDecreaseType/PercentType/DecimalTye: {}",
@@ -254,36 +254,36 @@ public class RioZoneHandler extends AbstractThingHandler<RioZoneProtocol>
             }
 
         } else if (id.equals(RioConstants.CHANNEL_ZONEKEYPRESS)) {
-            if (command instanceof StringType) {
-                getProtocolHandler().sendKeyPress(((StringType) command).toString());
+            if (command instanceof StringType stringCommand) {
+                getProtocolHandler().sendKeyPress(stringCommand.toString());
             } else {
                 logger.debug("Received a ZONE KEYPRESS channel command with a non StringType: {}", command);
             }
 
         } else if (id.equals(RioConstants.CHANNEL_ZONEKEYRELEASE)) {
-            if (command instanceof StringType) {
-                getProtocolHandler().sendKeyRelease(((StringType) command).toString());
+            if (command instanceof StringType stringCommand) {
+                getProtocolHandler().sendKeyRelease(stringCommand.toString());
             } else {
                 logger.debug("Received a ZONE KEYRELEASE channel command with a non StringType: {}", command);
             }
 
         } else if (id.equals(RioConstants.CHANNEL_ZONEKEYHOLD)) {
-            if (command instanceof StringType) {
-                getProtocolHandler().sendKeyHold(((StringType) command).toString());
+            if (command instanceof StringType stringCommand) {
+                getProtocolHandler().sendKeyHold(stringCommand.toString());
             } else {
                 logger.debug("Received a ZONE KEYHOLD channel command with a non StringType: {}", command);
             }
 
         } else if (id.equals(RioConstants.CHANNEL_ZONEKEYCODE)) {
-            if (command instanceof StringType) {
-                getProtocolHandler().sendKeyCode(((StringType) command).toString());
+            if (command instanceof StringType stringCommand) {
+                getProtocolHandler().sendKeyCode(stringCommand.toString());
             } else {
                 logger.debug("Received a ZONE KEYCODE channel command with a non StringType: {}", command);
             }
 
         } else if (id.equals(RioConstants.CHANNEL_ZONEEVENT)) {
-            if (command instanceof StringType) {
-                getProtocolHandler().sendEvent(((StringType) command).toString());
+            if (command instanceof StringType stringCommand) {
+                getProtocolHandler().sendEvent(stringCommand.toString());
             } else {
                 logger.debug("Received a ZONE EVENT channel command with a non StringType: {}", command);
             }
index ffe49bec717b01f3c6bd2544f11fe600371c9390..489d09d3ef274533a227272ad50b4da80fdc7f06 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.sagercaster.internal;
 
 import static org.openhab.binding.sagercaster.internal.SagerCasterBindingConstants.THING_TYPE_SAGERCASTER;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -39,7 +38,7 @@ import org.osgi.service.component.annotations.Reference;
 @Component(service = ThingHandlerFactory.class, configurationPid = "binding.sagercaster")
 @NonNullByDefault
 public class SagerCasterHandlerFactory extends BaseThingHandlerFactory {
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_SAGERCASTER);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_SAGERCASTER);
     private final WindDirectionStateDescriptionProvider stateDescriptionProvider;
     private final SagerWeatherCaster sagerWeatherCaster;
 
index a1e5c276457626865d168049f5d589b36885f93e..be82f1a8fc1cedae6d64771d44050a369a1772d2 100644 (file)
@@ -318,8 +318,7 @@ public class SagerWeatherCaster {
                     d1 = "Z";
                 }
         }
-        String forecast = forecaster.getProperty(
-                d1 + String.valueOf(sagerPressure) + String.valueOf(pressureEvolution) + String.valueOf(nubes));
+        String forecast = forecaster.getProperty(d1 + sagerPressure + pressureEvolution + nubes);
         prevision = Optional.ofNullable(forecast != null ? new SagerPrediction(forecast) : null);
     }
 
index 05b934ed3f43258d23de58490c8949bd3c0f261b..f4cbc0b7f1ab24250325e9b4919f13a37ad091bc 100644 (file)
@@ -114,8 +114,7 @@ public class SagerCasterHandler extends BaseThingHandler {
             switch (id) {
                 case CHANNEL_CLOUDINESS:
                     logger.debug("Cloud level changed, updating forecast");
-                    if (command instanceof QuantityType) {
-                        QuantityType<?> cloudiness = (QuantityType<?>) command;
+                    if (command instanceof QuantityType cloudiness) {
                         scheduler.submit(() -> {
                             sagerWeatherCaster.setCloudLevel(cloudiness.intValue());
                             postNewForecast();
@@ -124,8 +123,7 @@ public class SagerCasterHandler extends BaseThingHandler {
                     }
                 case CHANNEL_IS_RAINING:
                     logger.debug("Rain status updated, updating forecast");
-                    if (command instanceof OnOffType) {
-                        OnOffType isRaining = (OnOffType) command;
+                    if (command instanceof OnOffType isRaining) {
                         scheduler.submit(() -> {
                             sagerWeatherCaster.setRaining(isRaining == OnOffType.ON);
                             postNewForecast();
@@ -136,18 +134,17 @@ public class SagerCasterHandler extends BaseThingHandler {
                     break;
                 case CHANNEL_RAIN_QTTY:
                     logger.debug("Rain status updated, updating forecast");
-                    if (command instanceof QuantityType) {
-                        updateRain((QuantityType<?>) command);
-                    } else if (command instanceof DecimalType) {
-                        updateRain((DecimalType) command);
+                    if (command instanceof QuantityType quantityCommand) {
+                        updateRain(quantityCommand);
+                    } else if (command instanceof DecimalType decimalCommand) {
+                        updateRain(decimalCommand);
                     } else {
                         logger.debug("Channel '{}' accepts Number, Number:(Speed|Length) commands.", channelUID);
                     }
                     break;
                 case CHANNEL_WIND_SPEED:
                     logger.debug("Updated wind speed, updating forecast");
-                    if (command instanceof DecimalType) {
-                        DecimalType newValue = (DecimalType) command;
+                    if (command instanceof DecimalType newValue) {
                         scheduler.submit(() -> {
                             sagerWeatherCaster.setBeaufort(newValue.intValue());
                             postNewForecast();
index 595af45fe0fcbc307cd56903744318ef4aa72c22..b600ad335a46a56fd312bb00b56f9499be15251f 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.samsungtv.internal;
 
 import static org.openhab.binding.samsungtv.internal.SamsungTvBindingConstants.SAMSUNG_TV_THING_TYPE;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -42,7 +41,7 @@ import org.osgi.service.component.annotations.Reference;
 @Component(service = ThingHandlerFactory.class, configurationPid = "binding.samsungtv")
 public class SamsungTvHandlerFactory extends BaseThingHandlerFactory {
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(SAMSUNG_TV_THING_TYPE);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(SAMSUNG_TV_THING_TYPE);
 
     private @NonNullByDefault({}) UpnpIOService upnpIOService;
     private @NonNullByDefault({}) UpnpService upnpService;
index b8ca9a9cfa47f251b8cbd823804e069d34820286..087b9bd99919f121266b88d826a59ee27560ba7f 100644 (file)
@@ -48,9 +48,9 @@ public class WakeOnLanUtility {
     static {
         String os = System.getProperty("os.name").toLowerCase();
         LOGGER.debug("os: {}", os);
-        if ((os.indexOf("win") >= 0)) {
+        if ((os.contains("win"))) {
             COMMAND = "arp -a %s";
-        } else if ((os.indexOf("mac") >= 0)) {
+        } else if ((os.contains("mac"))) {
             COMMAND = "arp %s";
         } else { // linux
             if (checkIfLinuxCommandExists("arp")) {
index f65e7e46eadb4eeabe237980156015cc8659642b..aaf8377584d2ad1a22495e92cc5372799e374e77 100644 (file)
@@ -15,7 +15,6 @@ package org.openhab.binding.samsungtv.internal.discovery;
 import static org.openhab.binding.samsungtv.internal.SamsungTvBindingConstants.SAMSUNG_TV_THING_TYPE;
 import static org.openhab.binding.samsungtv.internal.config.SamsungTvConfiguration.HOST_NAME;
 
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Set;
@@ -46,7 +45,7 @@ public class SamsungTvDiscoveryParticipant implements UpnpDiscoveryParticipant {
 
     @Override
     public Set<ThingTypeUID> getSupportedThingTypeUIDs() {
-        return Collections.singleton(SAMSUNG_TV_THING_TYPE);
+        return Set.of(SAMSUNG_TV_THING_TYPE);
     }
 
     @Override
index 91b421ea74f4b13f689126720457471003e1bf74..b07e5ebb0c675514947923df94b1f24a92b5b771 100644 (file)
@@ -45,8 +45,8 @@ public class DataConverters {
                 value = Math.min(max, currentValue + 1);
             } else if (command instanceof IncreaseDecreaseType && command == IncreaseDecreaseType.DECREASE) {
                 value = Math.max(min, currentValue - 1);
-            } else if (command instanceof DecimalType) {
-                value = ((DecimalType) command).intValue();
+            } else if (command instanceof DecimalType decimalCommand) {
+                value = decimalCommand.intValue();
             } else {
                 throw new NumberFormatException("Command '" + command + "' not supported");
             }
index aed913493033234c889dea5b768ac639f8e22882..12a1f332388161a5883af8808339d8a5a60ef372 100644 (file)
@@ -208,7 +208,7 @@ public class MediaRendererService implements UpnpIOParticipant, SamsungTvService
                 case "CurrentMute":
                     State newState = UnDefType.UNDEF;
                     if (value != null) {
-                        newState = value.equals("true") ? OnOffType.ON : OnOffType.OFF;
+                        newState = "true".equals(value) ? OnOffType.ON : OnOffType.OFF;
                     }
                     listener.valueReceived(MUTE, newState);
                     break;
index e3e291efd525af69fe9e0812cbc1c4f87cee37f1..054324ec910cd0623e7082f92cd67282c38c3aa1 100644 (file)
@@ -265,8 +265,7 @@ public class RemoteControllerService implements SamsungTvService, RemoteControll
 
         KeyCode key = null;
 
-        if (remoteController instanceof RemoteControllerWebSocket) {
-            RemoteControllerWebSocket remoteControllerWebSocket = (RemoteControllerWebSocket) remoteController;
+        if (remoteController instanceof RemoteControllerWebSocket remoteControllerWebSocket) {
             switch (channel) {
                 case BROWSER_URL:
                     if (command instanceof StringType) {
@@ -372,8 +371,8 @@ public class RemoteControllerService implements SamsungTvService, RemoteControll
                 return;
 
             case CHANNEL:
-                if (command instanceof DecimalType) {
-                    int val = ((DecimalType) command).intValue();
+                if (command instanceof DecimalType decimalCommand) {
+                    int val = decimalCommand.intValue();
                     int num4 = val / 1000 % 10;
                     int num3 = val / 100 % 10;
                     int num2 = val / 10 % 10;
@@ -419,8 +418,8 @@ public class RemoteControllerService implements SamsungTvService, RemoteControll
 
     private void sendKeyCodePress(KeyCode key) {
         try {
-            if (remoteController != null && remoteController instanceof RemoteControllerWebSocket) {
-                ((RemoteControllerWebSocket) remoteController).sendKeyPress(key);
+            if (remoteController instanceof RemoteControllerWebSocket remoteControllerWebSocket) {
+                remoteControllerWebSocket.sendKeyPress(key);
             }
         } catch (RemoteControllerException e) {
             reportError(String.format("Could not send command to device on %s:%d", host, port), e);
index 1f919c930050fc45106eafd4fcaad4351acc3a40..dc3c4c6026bb33472182c0188414cde05af989b4 100644 (file)
@@ -43,8 +43,8 @@ public class SatelEventLogActions implements ThingActions {
 
     @Override
     public void setThingHandler(@Nullable ThingHandler handler) {
-        if (handler instanceof SatelEventLogHandler) {
-            this.handler = (SatelEventLogHandler) handler;
+        if (handler instanceof SatelEventLogHandler logHandler) {
+            this.handler = logHandler;
         }
     }
 
index 3f305c4d68f809aa80d2159934996f6044721446..b892c4b8c4e9b0fb17ad70991d9cf69a074e5f49 100644 (file)
@@ -106,9 +106,7 @@ public class ReadEventCommand extends SatelCommandBase {
         if (year > currentYear) {
             year -= 4;
         }
-        LocalDateTime result = LocalDateTime.of(year, (payload[2] >> 4) & 0x0f, payload[1] & 0x1f, minutes / 60,
-                minutes % 60);
-        return result;
+        return LocalDateTime.of(year, (payload[2] >> 4) & 0x0f, payload[1] & 0x1f, minutes / 60, minutes % 60);
     }
 
     /**
index 4413696c562e8d6d2afef0d672508683cee471f2..d39baf1dbf2522d20bccd5d2170cd1ff02408513 100644 (file)
@@ -224,9 +224,8 @@ public abstract class SatelCommandBase extends SatelMessage implements SatelComm
     public String getVersion(int offset) {
         // build version string
         final byte[] payload = getResponse().getPayload();
-        String verStr = new String(payload, offset, 1) + "." + new String(payload, offset + 1, 2) + " "
+        return new String(payload, offset, 1) + "." + new String(payload, offset + 1, 2) + " "
                 + new String(payload, offset + 3, 4) + "-" + new String(payload, offset + 7, 2) + "-"
                 + new String(payload, offset + 9, 2);
-        return verStr;
     }
 }
index a832b1f066e583795e505cab60e8dc5ba37b16c9..b50e8b1a7a16856438bd487b62266a51a98d2728 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.satel.internal.handler;
 
 import static org.openhab.binding.satel.internal.SatelBindingConstants.*;
 
-import java.util.Collections;
 import java.util.Optional;
 import java.util.Set;
 import java.util.concurrent.ScheduledFuture;
@@ -46,7 +45,7 @@ import org.slf4j.LoggerFactory;
 @NonNullByDefault
 public class Atd100Handler extends WirelessChannelsHandler {
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Collections.singleton(THING_TYPE_ATD100);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_ATD100);
 
     private final Logger logger = LoggerFactory.getLogger(getClass());
 
index cced3c913b70c1df4977c3db9f2a702c98d84a10..86169372e0b1abec8203736237f3947059681bac 100644 (file)
@@ -17,6 +17,7 @@ import static org.openhab.binding.satel.internal.config.Ethm1Config.HOST;
 
 import java.util.Collection;
 import java.util.Collections;
+import java.util.List;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -40,7 +41,7 @@ import org.slf4j.LoggerFactory;
 @NonNullByDefault
 public class Ethm1BridgeHandler extends SatelBridgeHandler {
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Collections.singleton(THING_TYPE_ETHM1);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_ETHM1);
 
     private final Logger logger = LoggerFactory.getLogger(Ethm1BridgeHandler.class);
 
@@ -71,8 +72,8 @@ public class Ethm1BridgeHandler extends SatelBridgeHandler {
 
         // Check whether an IP address is provided
         if (host.isBlank()) {
-            configStatusMessages = Collections.singletonList(ConfigStatusMessage.Builder.error(HOST)
-                    .withMessageKeySuffix("hostEmpty").withArguments(HOST).build());
+            configStatusMessages = List.of(ConfigStatusMessage.Builder.error(HOST).withMessageKeySuffix("hostEmpty")
+                    .withArguments(HOST).build());
         } else {
             configStatusMessages = Collections.emptyList();
         }
index 50e0a63ad1a52c90be76ebd0d36ccaa00c1160a7..7cf619185cdace1a325a51a7aa53ece27af5754d 100644 (file)
@@ -17,6 +17,7 @@ import static org.openhab.binding.satel.internal.config.IntRSConfig.PORT;
 
 import java.util.Collection;
 import java.util.Collections;
+import java.util.List;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -41,7 +42,7 @@ import org.slf4j.LoggerFactory;
 @NonNullByDefault
 public class IntRSBridgeHandler extends SatelBridgeHandler {
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Collections.singleton(THING_TYPE_INTRS);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_INTRS);
 
     private final Logger logger = LoggerFactory.getLogger(IntRSBridgeHandler.class);
 
@@ -76,8 +77,8 @@ public class IntRSBridgeHandler extends SatelBridgeHandler {
 
         // Check whether a serial port is provided
         if (port.isBlank()) {
-            configStatusMessages = Collections.singletonList(ConfigStatusMessage.Builder.error(PORT)
-                    .withMessageKeySuffix("portEmpty").withArguments(PORT).build());
+            configStatusMessages = List.of(ConfigStatusMessage.Builder.error(PORT).withMessageKeySuffix("portEmpty")
+                    .withArguments(PORT).build());
         } else {
             configStatusMessages = Collections.emptyList();
         }
index 67a928336956f7fa455a967d78620480c69358c1..82dc52a87bb3c3aa9b334e6a79a6fb34342f4b3e 100644 (file)
@@ -17,7 +17,6 @@ import static org.openhab.binding.satel.internal.SatelBindingConstants.*;
 import java.nio.charset.Charset;
 import java.time.ZonedDateTime;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.Map;
 import java.util.Optional;
 import java.util.Set;
@@ -55,7 +54,7 @@ import org.slf4j.LoggerFactory;
 @NonNullByDefault
 public class SatelEventLogHandler extends SatelThingHandler {
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Collections.singleton(THING_TYPE_EVENTLOG);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_EVENTLOG);
 
     private static final String NOT_AVAILABLE_TEXT = "N/A";
     private static final String DETAILS_SEPARATOR = ", ";
@@ -166,8 +165,8 @@ public class SatelEventLogHandler extends SatelThingHandler {
     public void handleCommand(ChannelUID channelUID, Command command) {
         logger.debug("New command for {}: {}", channelUID, command);
 
-        if (CHANNEL_INDEX.equals(channelUID.getId()) && command instanceof DecimalType) {
-            int eventIndex = ((DecimalType) command).intValue();
+        if (CHANNEL_INDEX.equals(channelUID.getId()) && command instanceof DecimalType decimalCommand) {
+            int eventIndex = decimalCommand.intValue();
             withBridgeHandlerPresent(bridgeHandler -> readEvent(eventIndex).ifPresent(entry -> {
                 // update items
                 updateState(CHANNEL_INDEX, new DecimalType(entry.getIndex()));
@@ -190,7 +189,7 @@ public class SatelEventLogHandler extends SatelThingHandler {
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(SatelEventLogActions.class);
+        return Set.of(SatelEventLogActions.class);
     }
 
     /**
@@ -276,7 +275,7 @@ public class SatelEventLogHandler extends SatelThingHandler {
                     eventDetails = "." + readEventCmd.getSource() + "."
                             + (readEventCmd.getObject() * 32 + readEventCmd.getUserControlNumber());
                     Optional<EventDescription> eventDescNext = getEventDescription(readEventCmd.getNextIndex());
-                    if (!eventDescNext.isPresent()) {
+                    if (eventDescNext.isEmpty()) {
                         return Optional.empty();
                     }
                     final EventDescription eventDescNextItem = eventDescNext.get();
index 719fc78ae65ea27be6a974dec361c9bfc64b48d2..e24e6ad5997f3125cd2d323e11033ad1b1adb2f6 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.satel.internal.handler;
 
 import static org.openhab.binding.satel.internal.SatelBindingConstants.THING_TYPE_OUTPUT;
 
-import java.util.Collections;
 import java.util.Optional;
 import java.util.Set;
 
@@ -39,7 +38,7 @@ import org.openhab.core.types.Command;
 @NonNullByDefault
 public class SatelOutputHandler extends WirelessChannelsHandler {
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Collections.singleton(THING_TYPE_OUTPUT);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_OUTPUT);
 
     public SatelOutputHandler(Thing thing) {
         super(thing);
index c48b542819d42e8c2eec4b036a6df9d6138436e4..e8190cf082a7dea502022bb8ad2cb5b507b201a9 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.satel.internal.handler;
 
 import static org.openhab.binding.satel.internal.SatelBindingConstants.THING_TYPE_PARTITION;
 
-import java.util.Collections;
 import java.util.Optional;
 import java.util.Set;
 
@@ -39,7 +38,7 @@ import org.openhab.core.types.Command;
 @NonNullByDefault
 public class SatelPartitionHandler extends SatelStateThingHandler {
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Collections.singleton(THING_TYPE_PARTITION);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_PARTITION);
 
     public SatelPartitionHandler(Thing thing) {
         super(thing);
index c54e1784f8bf565e0cee22d7327386e664076976..b96c9ff5efc81392d3a4eb25da36913abe1ecbc4 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.satel.internal.handler;
 
 import static org.openhab.binding.satel.internal.SatelBindingConstants.*;
 
-import java.util.Collections;
 import java.util.Optional;
 import java.util.Set;
 
@@ -44,7 +43,7 @@ import org.slf4j.LoggerFactory;
 @NonNullByDefault
 public class SatelShutterHandler extends SatelStateThingHandler {
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Collections.singleton(THING_TYPE_SHUTTER);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_SHUTTER);
 
     private final Logger logger = LoggerFactory.getLogger(SatelShutterHandler.class);
 
index d7fb8c814bc5e86dcc36a25d70f5d19eac2f8d06..54101b83537ab05af62395b13cffcd76d7355355 100644 (file)
@@ -15,7 +15,6 @@ package org.openhab.binding.satel.internal.handler;
 import static org.openhab.binding.satel.internal.SatelBindingConstants.*;
 
 import java.util.Collection;
-import java.util.Collections;
 import java.util.LinkedList;
 import java.util.Optional;
 import java.util.Set;
@@ -51,7 +50,7 @@ import org.slf4j.LoggerFactory;
 @NonNullByDefault
 public class SatelSystemHandler extends SatelStateThingHandler {
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Collections.singleton(THING_TYPE_SYSTEM);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_SYSTEM);
 
     private static final Set<String> STATUS_CHANNELS = Stream
             .of(CHANNEL_DATE_TIME, CHANNEL_SERVICE_MODE, CHANNEL_TROUBLES, CHANNEL_TROUBLES_MEMORY,
@@ -112,8 +111,8 @@ public class SatelSystemHandler extends SatelStateThingHandler {
                 DateTimeType dateTime = null;
                 if (command instanceof StringType) {
                     dateTime = DateTimeType.valueOf(command.toString());
-                } else if (command instanceof DateTimeType) {
-                    dateTime = (DateTimeType) command;
+                } else if (command instanceof DateTimeType dateTimeCommand) {
+                    dateTime = dateTimeCommand;
                 }
                 if (dateTime != null) {
                     return Optional.of(new SetClockCommand(dateTime.getZonedDateTime()
index e6a8705e670b632702541e5a61e77ea3add0a8d6..85a9b81d99b7182a088c9cc997b7948b3cb3d704 100644 (file)
@@ -57,9 +57,9 @@ public abstract class SatelThingHandler extends BaseThingHandler implements Sate
         final Bridge bridge = getBridge();
         if (bridge != null) {
             final ThingHandler handler = bridge.getHandler();
-            if (handler != null && handler instanceof SatelBridgeHandler) {
-                ((SatelBridgeHandler) handler).addEventListener(this);
-                this.bridgeHandler = (SatelBridgeHandler) handler;
+            if (handler instanceof SatelBridgeHandler satelBridgeHandler) {
+                satelBridgeHandler.addEventListener(this);
+                this.bridgeHandler = satelBridgeHandler;
             }
             if (bridge.getStatus() == ThingStatus.ONLINE) {
                 updateStatus(ThingStatus.ONLINE);
index d86d3ab50db36838c08b09bbee10c83b81ea5139..6e2b4de590d83865a639033a1529a734359bc71d 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.satel.internal.handler;
 
 import static org.openhab.binding.satel.internal.SatelBindingConstants.THING_TYPE_ZONE;
 
-import java.util.Collections;
 import java.util.Optional;
 import java.util.Set;
 
@@ -39,7 +38,7 @@ import org.openhab.core.types.Command;
 @NonNullByDefault
 public class SatelZoneHandler extends WirelessChannelsHandler {
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Collections.singleton(THING_TYPE_ZONE);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_ZONE);
 
     public SatelZoneHandler(Thing thing) {
         super(thing);
index 7ffec9c4ef4a7693ec2107ccfa59ba5fea1e8c9e..b4e0e3fe350baa36d9020278b7a7e4371b1c8c0e 100644 (file)
@@ -79,9 +79,9 @@ public abstract class WirelessChannelsHandler extends SatelStateThingHandler {
     @Override
     protected int getStateBitNbr(StateType stateType) {
         int bitNbr = getThingConfig().getId() - 1;
-        if (stateType instanceof TroubleState) {
+        if (stateType instanceof TroubleState troubleState) {
             // for wireless devices we need to correct bit number
-            switch ((TroubleState) stateType) {
+            switch (troubleState) {
                 case DEVICE_LOBATT1:
                 case DEVICE_NOCOMM1:
                 case OUTPUT_NOCOMM1:
index d9e07a26672871fc8b9000af606533ea78a8c13e..0b87f20bf30e4c783f4ef48e9349c3c7c02a5df5 100644 (file)
@@ -44,7 +44,7 @@ public class EncryptionHelper {
         }
 
         // build encryption/decryption key based on given password
-        byte passwordBytes[] = keyString.getBytes();
+        byte[] passwordBytes = keyString.getBytes();
         byte[] keyBytes = new byte[24];
 
         for (int i = 0; i < 12; ++i) {
@@ -67,7 +67,7 @@ public class EncryptionHelper {
      * @throws GeneralSecurityException
      *             on decryption errors
      */
-    public void decrypt(byte buffer[]) throws GeneralSecurityException {
+    public void decrypt(byte[] buffer) throws GeneralSecurityException {
         byte[] cv = new byte[16];
         byte[] c = new byte[16];
         byte[] temp = new byte[16];
@@ -104,7 +104,7 @@ public class EncryptionHelper {
      * @param buffer bytes to encrypt
      * @throws GeneralSecurityException on encryption errors
      */
-    public void encrypt(byte buffer[]) throws GeneralSecurityException {
+    public void encrypt(byte[] buffer) throws GeneralSecurityException {
         byte[] cv = new byte[16];
         byte[] p = new byte[16];
         int count = buffer.length;
index ff37573871d32590ee1131831a812ca1435ad7b5..c7f8dd6414f24c47d0886362466a3a6065f30b82 100644 (file)
@@ -113,7 +113,7 @@ public class SatelMessage {
      * @return the message as array of bytes
      */
     public byte[] getBytes() {
-        byte buffer[] = new byte[this.payload.length + 3];
+        byte[] buffer = new byte[this.payload.length + 3];
         buffer[0] = this.command;
         if (this.payload.length > 0) {
             System.arraycopy(this.payload, 0, buffer, 1, this.payload.length);
index 75521107fbe73fc79631ba418b5a9b3880eae4a7..88bf43c06ad3d035d98db9503da36779c06200f1 100644 (file)
@@ -158,8 +158,8 @@ public class StationHandler extends BaseThingHandler {
         String uuid = getThing().getProperties().get(STATION_UUID);
         if (uuid == null) {
             Object uuidObj = getThing().getConfiguration().get(STATION_UUID);
-            if (uuidObj instanceof String) {
-                uuid = (String) uuidObj;
+            if (uuidObj instanceof String stringValue) {
+                uuid = stringValue;
             }
         }
         return uuid == null ? "" : uuid;
index 169f88473831e8370c8656d9e1e6f78dfbc71f37..82757dbde233aadb5a415e7ca0e1b23e84b3c617 100644 (file)
@@ -12,7 +12,6 @@
  */
 package org.openhab.binding.senechome.internal;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -38,8 +37,8 @@ import org.osgi.service.component.annotations.Reference;
 @Component(configurationPid = "binding.senechome", service = ThingHandlerFactory.class)
 public class SenecHomeHandlerFactory extends BaseThingHandlerFactory {
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections
-            .singleton(SenecHomeBindingConstants.THING_TYPE_SENEC_HOME_BATTERY);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set
+            .of(SenecHomeBindingConstants.THING_TYPE_SENEC_HOME_BATTERY);
 
     private HttpClient httpClient;
 
index 77eac52de7410e888654f536bbb3fdc0ea7ee6cc..32def242e87f8c1ecd07ebce7573d8e0c19d7556 100644 (file)
@@ -12,7 +12,6 @@
  */
 package org.openhab.binding.seneye.internal;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -53,5 +52,5 @@ public class SeneyeBindingConstants {
     public static final String PARAMETER_PASSWORD = "password";
     public static final String PARAMETER_POLLTIME = "polltime";
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_SENEYE);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_SENEYE);
 }
index 7e04566fd37a94f0fa77e7349565d1fb852c4c6e..1898f0139b327125c755b080cc5093e80bed6f2b 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.seneye.internal;
 
 import static org.openhab.binding.seneye.internal.SeneyeBindingConstants.THING_TYPE_SENEYE;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.openhab.binding.seneye.internal.handler.SeneyeHandler;
@@ -34,7 +33,7 @@ import org.osgi.service.component.annotations.Component;
 @Component(service = ThingHandlerFactory.class, configurationPid = "binding.seneye")
 public class SeneyeHandlerFactory extends BaseThingHandlerFactory {
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_SENEYE);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_SENEYE);
 
     @Override
     public boolean supportsThingType(ThingTypeUID thingTypeUID) {
index dc731bb5063f2b74a1800d1f033501c56ae38852..51b4278dd96af1131e0871e604670f7ef0296384 100644 (file)
@@ -37,9 +37,8 @@ public class SeneyeStatus {
     }
 
     private String getTickAsDate(String tick) {
-        String date = new java.text.SimpleDateFormat(DateTimeType.DATE_PATTERN_WITH_TZ_AND_MS_ISO)
+        return new java.text.SimpleDateFormat(DateTimeType.DATE_PATTERN_WITH_TZ_AND_MS_ISO)
                 .format(new java.util.Date(Long.parseLong(tick) * 1000));
-        return date;
     }
 
     public String getWrong_slideString() {
index 857e4fde0f1397c6b08553b9d783a153ea78328c..6198f13e1cd677be993580e1f6a2be335f0c26c8 100644 (file)
@@ -151,9 +151,8 @@ public final class SeneyeHandler extends BaseThingHandler implements ReadingsUpd
         }
 
         // ok, initialization succeeded
-        cachedSeneyeDeviceReading = new ExpiringCache<>(TimeUnit.SECONDS.toMillis(10), () -> {
-            return seneyeService.getDeviceReadings();
-        });
+        cachedSeneyeDeviceReading = new ExpiringCache<>(TimeUnit.SECONDS.toMillis(10),
+                () -> seneyeService.getDeviceReadings());
 
         seneyeService.startAutomaticRefresh(scheduler, this);
 
index ab429a4bccfa579146b4d6b284ddccfc8b9490eb..06d740099a3a830f0c37f5198a1b8a25ab8c3ebf 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.sensebox.internal;
 
 import static org.openhab.binding.sensebox.internal.SenseBoxBindingConstants.THING_TYPE_BOX;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -37,7 +36,7 @@ import org.osgi.service.component.annotations.Component;
 @NonNullByDefault
 public class SenseBoxHandlerFactory extends BaseThingHandlerFactory {
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_BOX);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_BOX);
 
     @Override
     public boolean supportsThingType(ThingTypeUID thingTypeUID) {
index c317aee94a7f8223eb2c250bb0188f8c687a2743..c62ece2c5978b9d065900fcb7e1e47936c25ff69 100644 (file)
@@ -59,7 +59,7 @@ public class SenseBoxSensor {
     public String getUnit() {
         // the uom library uses the 'MICRO SIGN', so if we encounter the GREEK SMALL LETTER MU,
         // replace it with the proper representation.
-        return unit != null ? unit.replaceAll("\u03bc", "\u00b5") : "";
+        return unit != null ? unit.replace("\u03bc", "\u00b5") : "";
     }
 
     public void setUnit(String unit) {
index f599cd59b42df510cd7e37cbec37982317d83ed4..e1bfb58bdfada84697de13d894ea624b4f36ef0c 100644 (file)
@@ -102,9 +102,7 @@ public class SenseBoxHandler extends BaseThingHandler {
         }
 
         if (senseBoxId != null && validConfig) {
-            cache.put(CACHE_KEY_DATA, () -> {
-                return connection.reallyFetchDataFromServer(senseBoxId);
-            });
+            cache.put(CACHE_KEY_DATA, () -> connection.reallyFetchDataFromServer(senseBoxId));
             updateStatus(ThingStatus.UNKNOWN);
             startAutomaticRefresh();
         } else {
index a93ff92b2ffaf070278412f7bfaba5cc99f31892..050b5cdeb81ce0be09b125d0e2dc0c6eb1e6fa80 100644 (file)
@@ -12,7 +12,6 @@
  */
 package org.openhab.binding.sensibo.internal.discovery;
 
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Optional;
@@ -39,8 +38,8 @@ import org.slf4j.LoggerFactory;
  */
 @NonNullByDefault
 public class SensiboDiscoveryService extends AbstractDiscoveryService {
-    public static final Set<ThingTypeUID> DISCOVERABLE_THING_TYPES_UIDS = Collections
-            .singleton(SensiboBindingConstants.THING_TYPE_SENSIBOSKY);
+    public static final Set<ThingTypeUID> DISCOVERABLE_THING_TYPES_UIDS = Set
+            .of(SensiboBindingConstants.THING_TYPE_SENSIBOSKY);
     private static final long REFRESH_INTERVAL_MINUTES = 60;
     private final Logger logger = LoggerFactory.getLogger(SensiboDiscoveryService.class);
     private final SensiboAccountHandler accountHandler;
@@ -67,7 +66,7 @@ public class SensiboDiscoveryService extends AbstractDiscoveryService {
             final SensiboModel model = accountHandler.getModel();
             for (final SensiboSky pod : model.getPods()) {
                 final ThingUID podUID = new ThingUID(SensiboBindingConstants.THING_TYPE_SENSIBOSKY, accountUID,
-                        String.valueOf(pod.getMacAddress()));
+                        pod.getMacAddress());
                 Map<String, String> properties = pod.getThingProperties();
 
                 // DiscoveryResult result uses Map<String,Object> as properties while ThingBuilder uses
index b8aa3166e0936fd6df57d24f625831152088d0a3..124d3078aae7955b9b66b59104f1819be56219b8 100644 (file)
@@ -16,7 +16,6 @@ import static org.openhab.binding.sensibo.internal.SensiboBindingConstants.*;
 
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Locale;
@@ -190,8 +189,7 @@ public class SensiboSkyHandler extends SensiboBaseThingHandler implements Channe
             } else {
                 updateState(channelUID, UnDefType.UNDEF);
             }
-        } else if (command instanceof DecimalType) {
-            final DecimalType newValue = (DecimalType) command;
+        } else if (command instanceof DecimalType newValue) {
             updateTimer(newValue.intValue());
         } else {
             updateTimer(null);
@@ -205,8 +203,7 @@ public class SensiboSkyHandler extends SensiboBaseThingHandler implements Channe
             } else {
                 updateState(channelUID, UnDefType.UNDEF);
             }
-        } else if (command instanceof StringType) {
-            final StringType newValue = (StringType) command;
+        } else if (command instanceof StringType newValue) {
             updateAcState(sensiboSky, FAN_LEVEL_PROPERTY, newValue.toString());
         }
     }
@@ -218,8 +215,7 @@ public class SensiboSkyHandler extends SensiboBaseThingHandler implements Channe
             } else {
                 updateState(channelUID, UnDefType.UNDEF);
             }
-        } else if (command instanceof StringType) {
-            final StringType newValue = (StringType) command;
+        } else if (command instanceof StringType newValue) {
             updateAcState(sensiboSky, SWING_PROPERTY, newValue.toString());
         }
     }
@@ -231,8 +227,7 @@ public class SensiboSkyHandler extends SensiboBaseThingHandler implements Channe
             } else {
                 updateState(channelUID, UnDefType.UNDEF);
             }
-        } else if (command instanceof StringType) {
-            final StringType newValue = (StringType) command;
+        } else if (command instanceof StringType newValue) {
             updateAcState(sensiboSky, MODE_PROPERTY, newValue.toString());
             addDynamicChannelsAndProperties(sensiboSky);
         }
@@ -249,11 +244,10 @@ public class SensiboSkyHandler extends SensiboBaseThingHandler implements Channe
                     updateState(channelUID, UnDefType.UNDEF);
                 }
             });
-            if (!sensiboSky.getAcState().isPresent()) {
+            if (sensiboSky.getAcState().isEmpty()) {
                 updateState(channelUID, UnDefType.UNDEF);
             }
-        } else if (command instanceof QuantityType<?>) {
-            QuantityType<?> newValue = (QuantityType<?>) command;
+        } else if (command instanceof QuantityType<?> newValue) {
             if (!Objects.equals(sensiboSky.getTemperatureUnit(), newValue.getUnit())) {
                 // If quantity is given in celsius when fahrenheit is used or opposite
                 try {
@@ -296,7 +290,7 @@ public class SensiboSkyHandler extends SensiboBaseThingHandler implements Channe
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(CallbackChannelsTypeProvider.class);
+        return Set.of(CallbackChannelsTypeProvider.class);
     }
 
     @Override
@@ -379,7 +373,7 @@ public class SensiboSkyHandler extends SensiboBaseThingHandler implements Channe
         final ChannelTypeUID channelTypeUID = new ChannelTypeUID(SensiboBindingConstants.BINDING_ID,
                 channelTypePrefix + getThing().getUID().getId());
         final List<StateOption> stateOptions = options.stream()
-                .map(e -> new StateOption(e.toString(), e instanceof String ? beautify((String) e) : e.toString()))
+                .map(e -> new StateOption(e.toString(), e instanceof String s ? beautify(s) : e.toString()))
                 .collect(Collectors.toList());
 
         StateDescriptionFragmentBuilder stateDescription = StateDescriptionFragmentBuilder.create().withReadOnly(false)
index cf8ef3bb587e6eb6e010660c568d437db221149a..b7d13f68c867acb974e1dfa25a94f252782a3221 100644 (file)
@@ -40,8 +40,8 @@ public class NumberUtils {
     public static double convert(Object o) {
         // ensure value not null
         double value = UNDEF;
-        if (o instanceof Number) {
-            value = ((Number) o).doubleValue();
+        if (o instanceof Number number) {
+            value = number.doubleValue();
         } else if (o instanceof String) {
             value = Double.parseDouble(o.toString());
         }
index 9d9fcfbb71b635ac01538295da1d84d3975f4aad..60d5d1c5da26d95d81b5cc980741274508df25a6 100644 (file)
@@ -70,7 +70,7 @@ public class DTOTest {
         SensorData d = valueArray[0];
         // Assure latest data is taken
         String dateStr = d.getTimeStamp();
-        if (dateStr.equals("2020-06-09 06:38:08")) {
+        if ("2020-06-09 06:38:08".equals(dateStr)) {
             // take newer one
             d = valueArray[1];
         }
index 35d2592d5451ea02132fce7b7eb912c00cf038f0..6be88d3c3c012b92bd6e0d9b32a1cc967bf1183a 100644 (file)
@@ -31,7 +31,7 @@ import org.eclipse.jdt.annotation.Nullable;
 public class FileReader {
 
     public static @Nullable String readFileInString(String filename) {
-        try (BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(filename), "CP1252"));) {
+        try (BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(filename), "CP1252"))) {
             StringBuffer buf = new StringBuffer();
             String sCurrentLine;
 
index 8d6201a8a072195c45b7b8c6a944422b9dac823f..ba99c83361a860192dac442fe2f6de67a6ae8d5f 100644 (file)
@@ -12,7 +12,6 @@
  */
 package org.openhab.binding.serialbutton.internal;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -37,8 +36,8 @@ import org.osgi.service.component.annotations.Reference;
 @NonNullByDefault
 public class SerialButtonHandlerFactory extends BaseThingHandlerFactory {
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections
-            .singleton(SerialButtonBindingConstants.THING_TYPE_BUTTON);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set
+            .of(SerialButtonBindingConstants.THING_TYPE_BUTTON);
 
     private @NonNullByDefault({}) SerialPortManager serialPortManager;
 
index a9857c50141c1af9f9d9df74931303f1acfcc9d0..f0cf33be8bb1d4b68b13f58c9e526e31f31fedbe 100755 (executable)
@@ -156,8 +156,8 @@ public class ShellyHandlerFactory extends BaseThingHandlerFactory {
      */
     @Override
     protected synchronized void removeHandler(@NonNull ThingHandler thingHandler) {
-        if (thingHandler instanceof ShellyBaseHandler) {
-            ((ShellyBaseHandler) thingHandler).stop();
+        if (thingHandler instanceof ShellyBaseHandler shellyBaseHandler) {
+            shellyBaseHandler.stop();
             String uid = thingHandler.getThing().getUID().getAsString();
             thingTable.removeThing(uid);
         }
index 96032121727861faa8c4b9821275aa4ab9c4dce0..3b5603b9fcb0ef94f1e9c4e0af6239fa4ed760a5 100644 (file)
@@ -263,9 +263,9 @@ public class Shelly1CoIoTProtocol {
                     // continue until we find the correct one
                     continue;
                 }
-                if (d.desc.equalsIgnoreCase("brightness")) {
+                if ("brightness".equalsIgnoreCase(d.desc)) {
                     brightness = update.value;
-                } else if (d.desc.equalsIgnoreCase("output") || d.desc.equalsIgnoreCase("state")) {
+                } else if ("output".equalsIgnoreCase(d.desc) || "state".equalsIgnoreCase(d.desc)) {
                     power = update.value;
                 }
             }
@@ -356,8 +356,8 @@ public class Shelly1CoIoTProtocol {
         int idx = 0;
         for (Map.Entry<String, CoIotDescrSen> se : sensorMap.entrySet()) {
             CoIotDescrSen sen = se.getValue();
-            if (sen.desc.equalsIgnoreCase("external_temperature") || sen.desc.equalsIgnoreCase("external temperature c")
-                    || (sen.desc.equalsIgnoreCase("extTemp") && !sen.unit.equalsIgnoreCase(SHELLY_TEMP_FAHRENHEIT))) {
+            if ("external_temperature".equalsIgnoreCase(sen.desc) || "external temperature c".equalsIgnoreCase(sen.desc)
+                    || ("extTemp".equalsIgnoreCase(sen.desc) && !sen.unit.equalsIgnoreCase(SHELLY_TEMP_FAHRENHEIT))) {
                 idx++; // iterate from temperature1..2..n
             }
             if (sen.id.equalsIgnoreCase(sensorId)) {
index 0e5384791f8baee7caa385420c1004b34def4423..24f2b7147b2c083510b4b3af631ee1d60a8a5530 100644 (file)
@@ -210,7 +210,6 @@ public class Shelly1CoIoTVersion2 extends Shelly1CoIoTProtocol implements Shelly
                 break;
             case "3104": // T, deviceTemp, Celsius -40/300; 999=unknown
                 if ("targetTemp".equalsIgnoreCase(sen.desc)) {
-
                     break; // target temp in F-> ignore
                 }
                 // sensor_0: T, internalTemp, F, 39/88, unknown 999
@@ -383,7 +382,7 @@ public class Shelly1CoIoTVersion2 extends Shelly1CoIoTProtocol implements Shelly
                 }
                 break;
             case "9102": // EV, wakeupEvent, battery/button/periodic/poweron/sensor/ext_power, "unknown"=unknown
-                if (s.valueArray.size() > 0) {
+                if (!s.valueArray.isEmpty()) {
                     thingHandler.updateWakeupReason(s.valueArray);
                     lastWakeup = (String) s.valueArray.get(0);
                 }
index af71ad84493a6de3845ac640ef8f8113d73bcfcf..9d9992fd81c2556497af82af799f278ee7bcd439 100644 (file)
@@ -271,7 +271,7 @@ public class Shelly1CoapHandler implements Shelly1CoapListener {
             // The device changes the serial on every update, receiving a message with the same serial is a
             // duplicate, excep for battery devices! Those reset the serial every time when they wake-up
             if ((serial == lastSerial) && payload.equals(lastPayload) && (!profile.hasBattery
-                    || coiot.getLastWakeup().equalsIgnoreCase("ext_power") || ((serial & 0xFF) != 0))) {
+                    || "ext_power".equalsIgnoreCase(coiot.getLastWakeup()) || ((serial & 0xFF) != 0))) {
                 logger.debug("{}: Serial {} was already processed, ignore update", thingName, serial);
                 return;
             }
index afb0482ad5eb968510f03f8d773d00f10f07d183..a8c771fe67ff6e086c255f6086365bb7d6d87991 100644 (file)
@@ -157,7 +157,7 @@ public class Shelly2ApiClient extends ShellyHttpClient {
         addRelaySettings(relays, dc.switch2);
         addRelaySettings(relays, dc.switch3);
         addRelaySettings(relays, dc.switch100);
-        return relays.size() > 0 ? relays : null;
+        return !relays.isEmpty() ? relays : null;
     }
 
     private void addRelaySettings(ArrayList<@Nullable ShellySettingsRelay> relays,
@@ -496,7 +496,7 @@ public class Shelly2ApiClient extends ShellyHttpClient {
                 fav.name = fav.pos + "%";
                 profile.settings.favorites.add(fav);
             }
-            profile.settings.favoritesEnabled = profile.settings.favorites.size() > 0;
+            profile.settings.favoritesEnabled = !profile.settings.favorites.isEmpty();
             logger.debug("{}: Roller Favorites loaded: {}", thingName,
                     profile.settings.favoritesEnabled ? profile.settings.favorites.size() : "none");
         }
index de378fedab84446a6c031a80fbbd9abb90aabeab..f25188faf17e778806eb0fcd0b5df1293884d162 100644 (file)
@@ -312,7 +312,7 @@ public class Shelly2ApiRpc extends Shelly2ApiClient implements ShellyApiInterfac
 
         if (dc.led != null) {
             profile.settings.ledStatusDisable = !getBool(dc.led.sysLedEnable);
-            profile.settings.ledPowerDisable = getString(dc.led.powerLed).equals("off");
+            profile.settings.ledPowerDisable = "off".equals(getString(dc.led.powerLed));
         }
 
         profile.initialized = true;
@@ -1159,7 +1159,7 @@ public class Shelly2ApiRpc extends Shelly2ApiClient implements ShellyApiInterfac
                 authInfo = new Shelly2AuthChallenge();
                 for (String o : options) {
                     String key = substringBefore(o, "=").stripLeading().trim();
-                    String value = substringAfter(o, "=").replaceAll("\"", "").trim();
+                    String value = substringAfter(o, "=").replace("\"", "").trim();
                     switch (key) {
                         case "Digest qop":
                             authInfo.authType = SHELLY2_AUTHTTYPE_DIGEST;
@@ -1189,7 +1189,7 @@ public class Shelly2ApiRpc extends Shelly2ApiClient implements ShellyApiInterfac
             // return sub element result as requested class type
             json = gson.toJson(gson.fromJson(json, Shelly2RpcBaseMessage.class).result);
             boolean isString = response.result instanceof String;
-            return fromJson(gson, isString && ((String) response.result).equalsIgnoreCase("null") ? "{}" : json,
+            return fromJson(gson, isString && "null".equalsIgnoreCase(((String) response.result)) ? "{}" : json,
                     classOfT);
         } else {
             // return direct format
index a043772cd9a6ec29a6bf73c6889207639ed24341..06159751ecd9c4b82c379136e657e4eadd9f7a37 100644 (file)
@@ -259,7 +259,7 @@ public class Shelly2RpcSocket {
                         } else {
                             for (Shelly2NotifyEvent e : events.params.events) {
                                 if (getString(e.event).startsWith(SHELLY2_EVENT_BLUPREFIX)) {
-                                    String address = getString(e.data.addr).replaceAll(":", "");
+                                    String address = getString(e.data.addr).replace(":", "");
                                     if (thingTable != null && thingTable.findThing(address) != null) {
                                         if (thingTable != null) { // known device
                                             ShellyThingInterface thing = thingTable.getThing(address);
index 7d35d051e34b0ff14f5d37b47396041646f57376..533d4448e89406868fb01ad4ddc84893d6953575 100644 (file)
@@ -303,9 +303,7 @@ public class ShellyBluApi extends Shelly2ApiRpc {
             logger.debug("{}: Unable to process event", thingName, e);
             t.incProtErrors();
         }
-
         if (updated) {
-
         }
     }
 
index 3950378d02772b005af8fcad636b36ea9b9b1366..493d03fd82484a4763453f496431a0e3b73e3a66 100644 (file)
@@ -55,9 +55,9 @@ public class ShellyBindingConfiguration {
                     break;
                 case CONFIG_AUTOCOIOT:
                     Object value = e.getValue();
-                    if (value instanceof String) {
+                    if (value instanceof String stringValue) {
                         // support config through shelly.cfg
-                        autoCoIoT = ((String) value).equalsIgnoreCase("true");
+                        autoCoIoT = "true".equalsIgnoreCase(stringValue);
                     } else {
                         autoCoIoT = (boolean) value;
                     }
index 959c845e014f166083a2f90be19a84fa843d0f22..9cb3078df0ce06c0fa9a0adc8c3c7bb88490a2e9 100755 (executable)
@@ -317,7 +317,7 @@ public abstract class ShellyBaseHandler extends BaseThingHandler
         }
         if (tmpPrf.settings.sleepMode != null && !tmpPrf.isTRV) {
             // Sensor, usually 12h, H&T in USB mode 10min
-            tmpPrf.updatePeriod = getString(tmpPrf.settings.sleepMode.unit).equalsIgnoreCase("m")
+            tmpPrf.updatePeriod = "m".equalsIgnoreCase(getString(tmpPrf.settings.sleepMode.unit))
                     ? tmpPrf.settings.sleepMode.period * 60 // minutes
                     : tmpPrf.settings.sleepMode.period * 3600; // hours
             tmpPrf.updatePeriod += 60; // give 1min extra
@@ -495,14 +495,14 @@ public abstract class ShellyBaseHandler extends BaseThingHandler
     }
 
     private double getNumber(Command command) {
-        if (command instanceof QuantityType) {
-            return ((QuantityType<?>) command).doubleValue();
+        if (command instanceof QuantityType quantityCommand) {
+            return quantityCommand.doubleValue();
         }
-        if (command instanceof DecimalType) {
-            return ((DecimalType) command).doubleValue();
+        if (command instanceof DecimalType decimalCommand) {
+            return decimalCommand.doubleValue();
         }
-        if (command instanceof Number) {
-            return ((Number) command).doubleValue();
+        if (command instanceof Number numberCommand) {
+            return numberCommand.doubleValue();
         }
         throw new IllegalArgumentException("Invalid Number type for conversion: " + command);
     }
@@ -609,15 +609,19 @@ public abstract class ShellyBaseHandler extends BaseThingHandler
                 profile.hostname, profile.deviceType, profile.hwRev, profile.hwBatchId, profile.fwVersion,
                 profile.fwDate);
         logger.debug("{}: Shelly settings info for {}: {}", thingName, profile.hostname, profile.settingsJson);
-        logger.debug("{}: Device "
-                + "hasRelays:{} (numRelays={}),isRoller:{} (numRoller={}),isDimmer:{},numMeter={},isEMeter:{}), ext. Switch Add-On: {}"
-                + ",isSensor:{},isDS:{},hasBattery:{}{},isSense:{},isMotion:{},isLight:{},isBulb:{},isDuo:{},isRGBW2:{},inColor:{}, BLU Gateway support: {}"
-                + ",alwaysOn:{}, updatePeriod:{}sec", thingName, profile.hasRelays, profile.numRelays, profile.isRoller,
-                profile.numRollers, profile.isDimmer, profile.numMeters, profile.isEMeter,
-                profile.settings.extSwitch != null ? "installed" : "n/a", profile.isSensor, profile.isDW,
-                profile.hasBattery, profile.hasBattery ? " (low battery threshold=" + config.lowBattery + "%)" : "",
-                profile.isSense, profile.isMotion, profile.isLight, profile.isBulb, profile.isDuo, profile.isRGBW2,
-                profile.inColor, profile.alwaysOn, profile.updatePeriod, config.enableBluGateway);
+        logger.debug(
+                """
+                        {}: Device \
+                        hasRelays:{} (numRelays={}),isRoller:{} (numRoller={}),isDimmer:{},numMeter={},isEMeter:{}), ext. Switch Add-On: {}\
+                        ,isSensor:{},isDS:{},hasBattery:{}{},isSense:{},isMotion:{},isLight:{},isBulb:{},isDuo:{},isRGBW2:{},inColor:{}, BLU Gateway support: {}\
+                        ,alwaysOn:{}, updatePeriod:{}sec\
+                        """,
+                thingName, profile.hasRelays, profile.numRelays, profile.isRoller, profile.numRollers, profile.isDimmer,
+                profile.numMeters, profile.isEMeter, profile.settings.extSwitch != null ? "installed" : "n/a",
+                profile.isSensor, profile.isDW, profile.hasBattery,
+                profile.hasBattery ? " (low battery threshold=" + config.lowBattery + "%)" : "", profile.isSense,
+                profile.isMotion, profile.isLight, profile.isBulb, profile.isDuo, profile.isRGBW2, profile.inColor,
+                profile.alwaysOn, profile.updatePeriod, config.enableBluGateway);
         if (profile.status.extTemperature != null || profile.status.extHumidity != null
                 || profile.status.extVoltage != null || profile.status.extAnalogInput != null) {
             logger.debug("{}: Shelly Add-On detected with at least 1 external sensor", thingName);
@@ -876,7 +880,7 @@ public abstract class ShellyBaseHandler extends BaseThingHandler
                 String payload = "";
                 String parmType = getString(parameters.get("type"));
                 String event = !parmType.isEmpty() ? parmType : type;
-                boolean isButton = profile.inButtonMode(idx - 1) || type.equals("button");
+                boolean isButton = profile.inButtonMode(idx - 1) || "button".equals(type);
                 switch (event) {
                     case SHELLY_EVENT_SHORTPUSH:
                     case SHELLY_EVENT_DOUBLE_SHORTPUSH:
@@ -996,8 +1000,8 @@ public abstract class ShellyBaseHandler extends BaseThingHandler
             return;
         }
 
-        config.deviceAddress = config.deviceAddress.toLowerCase().replaceAll(":", ""); // remove : from MAC address and
-                                                                                       // convert to lower case
+        config.deviceAddress = config.deviceAddress.toLowerCase().replace(":", ""); // remove : from MAC address and
+                                                                                    // convert to lower case
         if (!config.deviceIp.isEmpty()) {
             try {
                 InetAddress addr = InetAddress.getByName(config.deviceIp);
@@ -1055,7 +1059,7 @@ public abstract class ShellyBaseHandler extends BaseThingHandler
                 }
             }
             if (!gen2 && bindingConfig.autoCoIoT && ((version.compare(prf.fwVersion, SHELLY_API_MIN_FWCOIOT)) >= 0)
-                    || (prf.fwVersion.equalsIgnoreCase("production_test"))) {
+                    || ("production_test".equalsIgnoreCase(prf.fwVersion))) {
                 if (!config.eventsCoIoT) {
                     logger.info("{}: {}", thingName, messages.get("versioncheck.autocoiot"));
                 }
@@ -1296,11 +1300,11 @@ public abstract class ShellyBaseHandler extends BaseThingHandler
     public double getChannelDouble(String group, String channel) {
         State value = getChannelValue(group, channel);
         if (value != UnDefType.NULL) {
-            if (value instanceof QuantityType) {
-                return ((QuantityType<?>) value).toBigDecimal().doubleValue();
+            if (value instanceof QuantityType quantityCommand) {
+                return quantityCommand.toBigDecimal().doubleValue();
             }
-            if (value instanceof DecimalType) {
-                return ((DecimalType) value).doubleValue();
+            if (value instanceof DecimalType decimalCommand) {
+                return decimalCommand.doubleValue();
             }
         }
         return -1;
index 3cd8975b8506604e24b263ea7cbed21143e2eefe..d79967a0dd72884cebc0f56349cd063701da520c 100644 (file)
@@ -38,7 +38,7 @@ import org.slf4j.LoggerFactory;
  * @author Markus Michels - Initial contribution
  */
 public class ShellyBluSensorHandler extends ShellyBaseHandler {
-    private final static Logger logger = LoggerFactory.getLogger(ShellyBluSensorHandler.class);
+    private static final Logger logger = LoggerFactory.getLogger(ShellyBluSensorHandler.class);
 
     public ShellyBluSensorHandler(final Thing thing, final ShellyTranslationProvider translationProvider,
             final ShellyBindingConfiguration bindingConfig, final ShellyThingTable thingTable,
@@ -54,7 +54,7 @@ public class ShellyBluSensorHandler extends ShellyBaseHandler {
 
     public static void addBluThing(String gateway, Shelly2NotifyEvent e, ShellyThingTable thingTable) {
         String model = substringBefore(getString(e.data.name), "-").toUpperCase();
-        String mac = e.data.addr.replaceAll(":", "");
+        String mac = e.data.addr.replace(":", "");
         String ttype = "";
         logger.debug("{}: Create thing for new BLU device {}: {} / {}", gateway, e.data.name, model, mac);
         ThingTypeUID tuid;
index e221e114ca5dc0401176748e57cafd66046d033f..7e035d8e7d62958248afe86ebb3cdb0763b41e13 100644 (file)
@@ -142,10 +142,10 @@ public class ShellyColorUtils {
     }
 
     public Integer[] fromRGBW(String rgbwString) {
-        Integer values[] = new Integer[4];
+        Integer[] values = new Integer[4];
         values[0] = values[1] = values[2] = values[3] = -1;
         try {
-            String rgbw[] = rgbwString.split(",");
+            String[] rgbw = rgbwString.split(",");
             for (int i = 0; i < rgbw.length; i++) {
                 values[i] = Integer.parseInt(rgbw[i]);
             }
index ddec6f9624ff89c09ce5c4c051f3e88d674717b2..8e05ff4f594ac8cfc22caa1ab4b76e94c1944962 100644 (file)
@@ -369,8 +369,7 @@ public class ShellyComponents {
 
         // EM: compute from provided values
         if (emeter.reactive != null && Math.abs(emeter.power) + Math.abs(emeter.reactive) > 1.5) {
-            double pf = emeter.power / Math.sqrt(emeter.power * emeter.power + emeter.reactive * emeter.reactive);
-            return pf;
+            return emeter.power / Math.sqrt(emeter.power * emeter.power + emeter.reactive * emeter.reactive);
         }
         return 0.0;
     }
@@ -491,7 +490,7 @@ public class ShellyComponents {
                 updated |= thingHandler.updateChannel(CHANNEL_GROUP_SENSOR, CHANNEL_SENSOR_PPM, toQuantityType(
                         getInteger(sdata.concentration.ppm).doubleValue(), DIGITS_NONE, Units.PARTS_PER_MILLION));
             }
-            if ((sdata.adcs != null) && (sdata.adcs.size() > 0)) {
+            if ((sdata.adcs != null) && (!sdata.adcs.isEmpty())) {
                 ShellyADC adc = sdata.adcs.get(0);
                 updated |= thingHandler.updateChannel(CHANNEL_GROUP_SENSOR, CHANNEL_SENSOR_VOLTAGE,
                         toQuantityType(getDouble(adc.voltage), 2, Units.VOLT));
index 94ba3d8291ad3362f7d34164dda3dbae4eee6c43..8fc49526f68b033fcc549cbae14d5b85a2de30a4 100644 (file)
@@ -145,12 +145,12 @@ public class ShellyLightHandler extends ShellyBaseHandler {
                         break;
                     }
 
-                    if (command instanceof PercentType) {
-                        Float percent = ((PercentType) command).floatValue();
+                    if (command instanceof PercentType percentCommand) {
+                        Float percent = percentCommand.floatValue();
                         value = percent.intValue(); // 0..100% = 0..100
                         logger.debug("{}: Set brightness to {}%/{}", thingName, percent, value);
-                    } else if (command instanceof DecimalType) {
-                        value = ((DecimalType) command).intValue();
+                    } else if (command instanceof DecimalType decimalCommand) {
+                        value = decimalCommand.intValue();
                         logger.debug("{}: Set brightness to {} (Integer)", thingName, value);
                     }
                     if (value == 0) {
@@ -158,9 +158,9 @@ public class ShellyLightHandler extends ShellyBaseHandler {
                         api.setLightTurn(lightId, SHELLY_API_OFF);
                         update = false;
                     } else {
-                        if (command instanceof IncreaseDecreaseType) {
+                        if (command instanceof IncreaseDecreaseType increaseDecreaseCommand) {
                             ShellyShortLightStatus light = api.getLightStatus(lightId);
-                            if (((IncreaseDecreaseType) command).equals(IncreaseDecreaseType.INCREASE)) {
+                            if (increaseDecreaseCommand.equals(IncreaseDecreaseType.INCREASE)) {
                                 value = Math.min(light.brightness + DIM_STEPSIZE, 100);
                             } else {
                                 value = Math.max(light.brightness - DIM_STEPSIZE, 0);
@@ -178,14 +178,14 @@ public class ShellyLightHandler extends ShellyBaseHandler {
 
                 case CHANNEL_COLOR_TEMP:
                     Integer temp = -1;
-                    if (command instanceof PercentType) {
-                        logger.debug("{}: Set color temp to {}%", thingName, ((PercentType) command).floatValue());
-                        Float percent = ((PercentType) command).floatValue() / 100;
+                    if (command instanceof PercentType percentCommand) {
+                        logger.debug("{}: Set color temp to {}%", thingName, percentCommand.floatValue());
+                        Float percent = percentCommand.floatValue() / 100;
                         temp = new DecimalType(col.minTemp + ((col.maxTemp - col.minTemp)) * percent).intValue();
                         logger.debug("{}: Converted color-temp {}% to {}K (from Percent to Integer)", thingName,
                                 percent, temp);
-                    } else if (command instanceof DecimalType) {
-                        temp = ((DecimalType) command).intValue();
+                    } else if (command instanceof DecimalType decimalCommand) {
+                        temp = decimalCommand.intValue();
                         logger.debug("{}: Set color temp to {}K (Integer)", thingName, temp);
                     }
                     validateRange(CHANNEL_COLOR_TEMP, temp, col.minTemp, col.maxTemp);
@@ -225,9 +225,7 @@ public class ShellyLightHandler extends ShellyBaseHandler {
     private boolean handleColorPicker(ShellyDeviceProfile profile, Integer lightId, ShellyColorUtils col,
             Command command) throws ShellyApiException {
         boolean updated = false;
-        if (command instanceof HSBType) {
-            HSBType hsb = (HSBType) command;
-
+        if (command instanceof HSBType hsb) {
             logger.debug("HSB-Info={}, Hue={}, getRGB={}, toRGB={}/{}/{}", hsb, hsb.getHue(),
                     String.format("0x%08X", hsb.getRGB()), hsb.toRGB()[0], hsb.toRGB()[1], hsb.toRGB()[2]);
             if (hsb.toString().contains("360,")) {
@@ -242,16 +240,15 @@ public class ShellyLightHandler extends ShellyBaseHandler {
             col.setBrightness(getColorFromHSB(hsb.getBrightness(), BRIGHTNESS_FACTOR));
             // white, gain and temp are not part of the HSB color scheme
             updated = true;
-        } else if (command instanceof PercentType) {
+        } else if (command instanceof PercentType percentCommand) {
             if (!profile.inColor || profile.isBulb) {
-                col.brightness = SHELLY_MAX_BRIGHTNESS * ((PercentType) command).intValue();
+                col.brightness = SHELLY_MAX_BRIGHTNESS * percentCommand.intValue();
                 updated = true;
             }
-        } else if (command instanceof OnOffType) {
-            logger.debug("{}: Switch light {}", thingName, command);
-            api.setLightParm(lightId, SHELLY_LIGHT_TURN,
-                    (OnOffType) command == OnOffType.ON ? SHELLY_API_ON : SHELLY_API_OFF);
-            col.power = (OnOffType) command;
+        } else if (command instanceof OnOffType onOffCommand) {
+            logger.debug("{}: Switch light {}", thingName, onOffCommand);
+            api.setLightParm(lightId, SHELLY_LIGHT_TURN, onOffCommand == OnOffType.ON ? SHELLY_API_ON : SHELLY_API_OFF);
+            col.power = onOffCommand;
         } else if (command instanceof IncreaseDecreaseType) {
             if (!profile.inColor || profile.isBulb) {
                 logger.debug("{}: {} brightness by {}", thingName, command, SHELLY_DIM_STEPSIZE);
@@ -410,16 +407,15 @@ public class ShellyLightHandler extends ShellyBaseHandler {
             throws ShellyApiException, IllegalArgumentException {
         Integer value = -1;
         logger.debug("{}: Set {} to {} ({})", thingName, colorName, command, command.getClass());
-        if (command instanceof PercentType) {
-            PercentType percent = (PercentType) command;
-            double v = (double) maxValue * percent.doubleValue() / 100.0;
+        if (command instanceof PercentType percentCommand) {
+            double v = (double) maxValue * percentCommand.doubleValue() / 100.0;
             value = (int) v;
-            logger.debug("{}: Value for {} is in percent: {}%={}", thingName, colorName, percent, value);
-        } else if (command instanceof DecimalType) {
-            value = ((DecimalType) command).intValue();
+            logger.debug("{}: Value for {} is in percent: {}%={}", thingName, colorName, percentCommand, value);
+        } else if (command instanceof DecimalType decimalCommand) {
+            value = decimalCommand.intValue();
             logger.debug("Value for {} is a number: {}", colorName, value);
-        } else if (command instanceof OnOffType) {
-            value = ((OnOffType) command).equals(OnOffType.ON) ? SHELLY_MAX_COLOR : SHELLY_MIN_COLOR;
+        } else if (command instanceof OnOffType onOffCommand) {
+            value = onOffCommand.equals(OnOffType.ON) ? SHELLY_MAX_COLOR : SHELLY_MIN_COLOR;
             logger.debug("{}: Value for {} of type OnOff was converted to {}", thingName, colorName, value);
         } else {
             throw new IllegalArgumentException(
index c62bf58a716c5e4539fdb8c0cba3b7a64d9a4418..93182b86ea9009f50f2ed7c714f27c9664a95074 100644 (file)
@@ -113,8 +113,8 @@ public class ShellyRelayHandler extends ShellyBaseHandler {
                 break;
 
             case CHANNEL_ROL_CONTROL_FAV:
-                if (command instanceof Number) {
-                    int id = ((Number) command).intValue() - 1;
+                if (command instanceof Number numberCommand) {
+                    int id = numberCommand.intValue() - 1;
                     int pos = profile.getRollerFav(id);
                     if (pos > 0) {
                         logger.debug("{}: Selecting favorite {}, position = {}", thingName, id, pos);
@@ -156,13 +156,13 @@ public class ShellyRelayHandler extends ShellyBaseHandler {
      */
     private void handleBrightness(Command command, Integer index) throws ShellyApiException {
         Integer value = -1;
-        if (command instanceof PercentType) { // Dimmer
-            value = ((PercentType) command).intValue();
-        } else if (command instanceof DecimalType) { // Number
-            value = ((DecimalType) command).intValue();
-        } else if (command instanceof OnOffType) { // Switch
+        if (command instanceof PercentType percentCommand) { // Dimmer
+            value = percentCommand.intValue();
+        } else if (command instanceof DecimalType decimalCommand) { // Number
+            value = decimalCommand.intValue();
+        } else if (command instanceof OnOffType onOffCommand) { // Switch
             logger.debug("{}: Switch output {}", thingName, command);
-            updateBrightnessChannel(index, (OnOffType) command, value);
+            updateBrightnessChannel(index, onOffCommand, value);
             return;
         } else if (command instanceof IncreaseDecreaseType) {
             ShellyShortLightStatus light = api.getLightStatus(index);
@@ -236,7 +236,7 @@ public class ShellyRelayHandler extends ShellyBaseHandler {
             }
 
             if (command == UpDownType.UP || command == OnOffType.ON
-                    || ((command instanceof DecimalType) && (((DecimalType) command).intValue() == 100))) {
+                    || ((command instanceof DecimalType decimalCommand) && (decimalCommand.intValue() == 100))) {
                 logger.debug("{}: Open roller", thingName);
                 int shpos = profile.getRollerFav(config.favoriteUP - 1);
                 if (shpos > 0) {
@@ -248,7 +248,7 @@ public class ShellyRelayHandler extends ShellyBaseHandler {
                     api.setRollerTurn(index, SHELLY_ALWD_ROLLER_TURN_OPEN);
                 }
             } else if (command == UpDownType.DOWN || command == OnOffType.OFF
-                    || ((command instanceof DecimalType) && (((DecimalType) command).intValue() == 0))) {
+                    || ((command instanceof DecimalType decimalCommand) && (decimalCommand.intValue() == 0))) {
                 logger.debug("{}: Closing roller", thingName);
                 int shpos = profile.getRollerFav(config.favoriteDOWN - 1);
                 if (shpos > 0) {
@@ -266,12 +266,10 @@ public class ShellyRelayHandler extends ShellyBaseHandler {
             api.setRollerTurn(index, SHELLY_ALWD_ROLLER_TURN_STOP);
         } else {
             logger.debug("{}: Set roller to position {}", thingName, command);
-            if (command instanceof PercentType) {
-                PercentType p = (PercentType) command;
-                position = p.intValue();
-            } else if (command instanceof DecimalType) {
-                DecimalType d = (DecimalType) command;
-                position = d.intValue();
+            if (command instanceof PercentType percentCommand) {
+                position = percentCommand.intValue();
+            } else if (command instanceof DecimalType decimalCommand) {
+                position = decimalCommand.intValue();
             } else {
                 throw new IllegalArgumentException(
                         "Invalid value type for roller control/position" + command.getClass().toString());
index 8fffe8cede3e65d52c84396a072405a87b0365f7..7131fc425398eeaa6c075d3c29a0afb14a6f65eb 100644 (file)
@@ -49,8 +49,7 @@ public class ShellyManagerCache<K, V> extends ConcurrentHashMap<K, V> {
     public @Nullable V put(K key, V value) {
         Date date = new Date();
         timeMap.put(key, date.getTime());
-        V returnVal = super.put(key, value);
-        return returnVal;
+        return super.put(key, value);
     }
 
     @Override
index a27db0d01953e6916290165f54a7494415f2cff8..ddc696e80543a8e9c30b8fad808abf7404f5598f 100644 (file)
@@ -126,7 +126,7 @@ public class ShellyManagerOverviewPage extends ShellyManagerPage {
 
         properties.clear();
         properties.put("numberDevices", "<span class=\"footerDevices\">" + "Number of devices: " + filteredDevices
-                + " of " + String.valueOf(getThingHandlers().size()) + "&nbsp;</span>");
+                + " of " + getThingHandlers().size() + "&nbsp;</span>");
         properties.put(ATTRIBUTE_CSS_FOOTER, loadHTML(OVERVIEW_FOOTER, properties));
         html += deviceHtml + loadHTML(FOOTER_HTML, properties);
         return new ShellyMgrResponse(fillAttributes(html, properties), HttpStatus.OK_200);
index 7de4246c40fc169de62879f6f89508ac9a96aca0..a70b4472d9f8df1c159373e3c826a759d39ffa49 100644 (file)
@@ -338,15 +338,14 @@ public class ShellyManagerPage {
         State state = thingHandler.getChannelValue(group, attribute);
         String value = "";
         if (state != UnDefType.NULL) {
-            if (state instanceof DateTimeType) {
-                DateTimeType dt = (DateTimeType) state;
+            if (state instanceof DateTimeType dateTimeState) {
                 switch (attribute) {
                     case ATTRIBUTE_LAST_ALARM:
-                        value = dt.format(null).replace('T', ' ').replace('-', '/');
+                        value = dateTimeState.format(null).replace('T', ' ').replace('-', '/');
                         break;
                     default:
-                        value = getTimestamp(dt);
-                        value = dt.format(null).replace('T', ' ').replace('-', '/');
+                        value = getTimestamp(dateTimeState);
+                        value = dateTimeState.format(null).replace('T', ' ').replace('-', '/');
                 }
             } else {
                 value = state.toString();
index e71b6e54d91744a530c94642eb9277fef76e9fcb..5dbaf024fa83e94bcf68e6f484653057333daa2a 100644 (file)
@@ -585,7 +585,7 @@ public class ShellyChannelDefinitions {
                         ? new ChannelTypeUID(channelDef.typeId)
                         : new ChannelTypeUID(BINDING_ID, channelDef.typeId);
                 ChannelBuilder builder;
-                if (channelDef.typeId.equalsIgnoreCase("system:button")) {
+                if ("system:button".equalsIgnoreCase(channelDef.typeId)) {
                     builder = ChannelBuilder.create(channelUID, null).withKind(ChannelKind.TRIGGER);
                 } else {
                     builder = ChannelBuilder.create(channelUID, channelDef.itemType);
index 4cc05cd21e541117c73eb823834aad450470355d..6d51d4b2961d07eb82cf7893b03642ee2030f44b 100644 (file)
@@ -236,11 +236,11 @@ public class ShellyUtils {
     }
 
     public static Double getNumber(Command command) throws IllegalArgumentException {
-        if (command instanceof DecimalType) {
-            return ((DecimalType) command).doubleValue();
+        if (command instanceof DecimalType decimalCommand) {
+            return decimalCommand.doubleValue();
         }
-        if (command instanceof QuantityType) {
-            return ((QuantityType<?>) command).doubleValue();
+        if (command instanceof QuantityType quantityCommand) {
+            return quantityCommand.doubleValue();
         }
         throw new IllegalArgumentException("Unable to convert number");
     }
index ce07389b6ed43e0bca0ad5e1d58e24a39835c6b7..36b0e572146f1bf644da33adaf751bd23a5d7b6c 100644 (file)
@@ -45,8 +45,14 @@ public class RdsBindingConstants {
 
     private static final String API = "https://api.climatixic.com/";
 
-    private static final String ARG_RDS = "?filterId=[" + "{\"asn\":\"RDS110\"}," + "{\"asn\":\"RDS120\"},"
-            + "{\"asn\":\"RDS110.R\"}," + "{\"asn\":\"RDS120.B\"}" + "]";
+    private static final String ARG_RDS = """
+            ?filterId=[\
+            {"asn":"RDS110"},\
+            {"asn":"RDS120"},\
+            {"asn":"RDS110.R"},\
+            {"asn":"RDS120.B"}\
+            ]\
+            """;
 
     private static final String ARG_PARENT = "?parentId=[\"%s\"]&take=100";
     private static final String ARG_POINT = "?filterId=[%s]";
index d988725d75d45622fe5371f20d08fa9d9abd1bde..89ed78b3059d26a7141629a1e86e9228e6837ebb 100644 (file)
@@ -201,7 +201,6 @@ public class RdsDiscoveryService extends AbstractDiscoveryService {
                     bridgeUID, label, plantId);
 
             thingDiscovered(disco);
-            ;
         } catch (RdsCloudException e) {
             logger.warn(LOG_SYSTEM_EXCEPTION, "publishPlant()", e.getClass().getName(), e.getMessage());
         } catch (JsonParseException | IOException e) {
index 987db143a84942ab1e999377a660a54f7926330f..a326623317d012dae7522b72776823372adbc6e1 100644 (file)
@@ -34,7 +34,6 @@ import org.openhab.core.thing.ThingStatus;
 import org.openhab.core.thing.ThingStatusDetail;
 import org.openhab.core.thing.ThingStatusInfo;
 import org.openhab.core.thing.binding.BaseThingHandler;
-import org.openhab.core.thing.binding.BridgeHandler;
 import org.openhab.core.types.Command;
 import org.openhab.core.types.RefreshType;
 import org.openhab.core.types.State;
@@ -314,9 +313,9 @@ public class RdsHandler extends BaseThingHandler {
                     switch (channel.id) {
                         case CHA_TARGET_TEMP: {
                             Command doCommand = command;
-                            if (command instanceof QuantityType<?>) {
+                            if (command instanceof QuantityType<?> quantityCommand) {
                                 Unit<?> unit = points.getPointByClass(channel.clazz).getUnit();
-                                QuantityType<?> temp = ((QuantityType<?>) command).toUnit(unit);
+                                QuantityType<?> temp = quantityCommand.toUnit(unit);
                                 if (temp != null) {
                                     doCommand = temp;
                                 }
@@ -381,11 +380,9 @@ public class RdsHandler extends BaseThingHandler {
     private RdsCloudHandler getCloudHandler() throws RdsCloudException {
         @Nullable
         Bridge b;
-        @Nullable
-        BridgeHandler h;
 
-        if ((b = getBridge()) != null && (h = b.getHandler()) != null && h instanceof RdsCloudHandler) {
-            return (RdsCloudHandler) h;
+        if ((b = getBridge()) != null && (b.getHandler() instanceof RdsCloudHandler cloudHandler)) {
+            return cloudHandler;
         }
         throw new RdsCloudException("no cloud handler found");
     }
index 5e5bab082661db3555f903e3a6739fc3e999a211..4c2f9981aa6e7aba6762498331f9ecb37fa140d4 100644 (file)
@@ -14,10 +14,7 @@ package org.openhab.binding.siemensrds.internal;
 
 import static org.openhab.binding.siemensrds.internal.RdsBindingConstants.*;
 
-import java.util.Arrays;
-import java.util.Collections;
 import java.util.HashMap;
-import java.util.HashSet;
 import java.util.Hashtable;
 import java.util.Map;
 import java.util.Set;
@@ -44,8 +41,7 @@ import org.osgi.service.component.annotations.Component;
 @Component(configurationPid = "binding.siemensrds", service = ThingHandlerFactory.class)
 public class RdsHandlerFactory extends BaseThingHandlerFactory {
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections
-            .unmodifiableSet(new HashSet<>(Arrays.asList(THING_TYPE_CLOUD, THING_TYPE_RDS)));
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_CLOUD, THING_TYPE_RDS);
 
     private final Map<ThingUID, ServiceRegistration<?>> discos = new HashMap<>();
 
@@ -58,8 +54,8 @@ public class RdsHandlerFactory extends BaseThingHandlerFactory {
     protected @Nullable ThingHandler createHandler(Thing thing) {
         ThingTypeUID thingTypeUID = thing.getThingTypeUID();
 
-        if ((thingTypeUID.equals(THING_TYPE_CLOUD)) && (thing instanceof Bridge)) {
-            RdsCloudHandler handler = new RdsCloudHandler((Bridge) thing);
+        if ((thingTypeUID.equals(THING_TYPE_CLOUD)) && (thing instanceof Bridge bridge)) {
+            RdsCloudHandler handler = new RdsCloudHandler(bridge);
             createDiscoveryService(handler);
             return handler;
         }
@@ -73,8 +69,8 @@ public class RdsHandlerFactory extends BaseThingHandlerFactory {
 
     @Override
     protected synchronized void removeHandler(ThingHandler handler) {
-        if (handler instanceof RdsCloudHandler) {
-            destroyDiscoveryService((RdsCloudHandler) handler);
+        if (handler instanceof RdsCloudHandler cloudHandler) {
+            destroyDiscoveryService(cloudHandler);
         }
     }
 
index 186a2f29b64f898b181f774f138629530b1b3b47..970cc651ece14dec2fe720d1158d86554700e0d3 100644 (file)
@@ -72,8 +72,8 @@ public class NestedNumberPoint extends BasePoint {
     @Override
     public void refreshValueFrom(BasePoint from) {
         super.refreshValueFrom(from);
-        if (from instanceof NestedNumberPoint) {
-            NestedNumberValue fromInner = ((NestedNumberPoint) from).inner;
+        if (from instanceof NestedNumberPoint point) {
+            NestedNumberValue fromInner = point.inner;
             NestedNumberValue thisInner = this.inner;
             if (thisInner != null && fromInner != null) {
                 thisInner.value = fromInner.value;
index ee40b24d8e74561199759319e60645c8507ef6f0..17a2f6ef7a57eff6e05b771312169f98cfc584ec 100644 (file)
@@ -46,8 +46,8 @@ public class NumberPoint extends BasePoint {
     @Override
     public void refreshValueFrom(BasePoint from) {
         super.refreshValueFrom(from);
-        if (from instanceof NumberPoint) {
-            this.value = ((NumberPoint) from).value;
+        if (from instanceof NumberPoint point) {
+            this.value = point.value;
         }
     }
 }
index e2aa34299a9f5ded515eee3b9f346fc0403f5024..7ebb793d112ea2e9cdc35cc4c232305f4038eb40 100644 (file)
@@ -33,7 +33,7 @@ import com.google.gson.JsonSyntaxException;
 @NonNullByDefault
 public class PointDeserializer implements JsonDeserializer<BasePoint> {
 
-    private static enum PointType {
+    private enum PointType {
         UNDEFINED,
         STRING,
         NESTED_NUMBER,
index b628d3d374266156f4ff03499c106bf299f01042..d0d96f4f8bef0e52cbb8ea73594aeee92b7febde 100644 (file)
@@ -52,8 +52,8 @@ public class StringPoint extends BasePoint {
     @Override
     public void refreshValueFrom(BasePoint from) {
         super.refreshValueFrom(from);
-        if (from instanceof StringPoint) {
-            this.value = ((StringPoint) from).value;
+        if (from instanceof StringPoint stringPoint) {
+            this.value = stringPoint.value;
         }
     }
 }
index a7066254b2e9e499865c0e0ea7396107cf89f499..ad918d8fe16f1cae715243c398a2c82121be53b0 100644 (file)
@@ -12,7 +12,6 @@
  */
 package org.openhab.binding.silvercrestwifisocket.internal;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -47,7 +46,7 @@ public class SilvercrestWifiSocketBindingConstants {
     /**
      * The supported thing types.
      */
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_WIFI_SOCKET);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_WIFI_SOCKET);
 
     // -------------- Configuration arguments ----------------
     /**
index 33d1de23c846811f62de0e9fce29ee7faa4a12d6..1874962808fd10518e84a21a1b4e4eaea77709e2 100644 (file)
@@ -12,7 +12,6 @@
  */
 package org.openhab.binding.silvercrestwifisocket.internal;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.openhab.binding.silvercrestwifisocket.internal.exceptions.MacAddressNotValidException;
@@ -37,8 +36,8 @@ import org.slf4j.LoggerFactory;
 @Component(service = ThingHandlerFactory.class, configurationPid = "binding.silvercrestwifisocket")
 public class SilvercrestWifiSocketHandlerFactory extends BaseThingHandlerFactory {
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections
-            .singleton(SilvercrestWifiSocketBindingConstants.THING_TYPE_WIFI_SOCKET);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set
+            .of(SilvercrestWifiSocketBindingConstants.THING_TYPE_WIFI_SOCKET);
 
     private final Logger logger = LoggerFactory.getLogger(SilvercrestWifiSocketHandlerFactory.class);
 
index a4e212631fd4fbaa5ff23e8d491c5e6a5800738a..947164cd4bf904d22c59fe27b9cd289c9672d42b 100644 (file)
@@ -180,11 +180,11 @@ public class SilvercrestWifiSocketHandler extends BaseThingHandler {
         // if the host of the packet is different from the host address set in handler, update the host
         // address.
         if (!receivedMessage.getHostAddress().equals(this.hostAddress)) {
-            logger.debug(
-                    "The host of the packet is different from the host address set in handler. "
-                            + "Will update the host address. handler of mac: {}. "
-                            + "Old host address: '{}' -> new host address: '{}'",
-                    this.macAddress, this.hostAddress, receivedMessage.getHostAddress());
+            logger.debug("""
+                    The host of the packet is different from the host address set in handler. \
+                    Will update the host address. handler of mac: {}. \
+                    Old host address: '{}' -> new host address: '{}'\
+                    """, this.macAddress, this.hostAddress, receivedMessage.getHostAddress());
 
             this.hostAddress = receivedMessage.getHostAddress();
             this.saveConfigurationsUsingCurrentStates();
@@ -252,7 +252,7 @@ public class SilvercrestWifiSocketHandler extends BaseThingHandler {
             if (ValidationUtils.isMacNotValid(macAddress)) {
                 throw new MacAddressNotValidException("Mac address is not valid", macAddress);
             }
-            this.macAddress = macAddress.replaceAll(":", "").toUpperCase();
+            this.macAddress = macAddress.replace(":", "").toUpperCase();
         }
         if (this.macAddress == null) {
             throw new MacAddressNotValidException("Mac address is not valid", this.macAddress);
index 2a7f638e7ecc6de9f7b734ad7e32d2208d2f37e3..190c93a3f50f6e1ae2a021cd2bf42125c0c9fc5e 100644 (file)
@@ -173,9 +173,7 @@ public class SinopeGatewayHandler extends ConfigStatusBridgeHandler {
         InputStream inputStream = clientSocket.getInputStream();
         outToServer.write(command.getPayload());
         outToServer.flush();
-        SinopeAnswer answ = command.getReplyAnswer(inputStream);
-
-        return answ;
+        return command.getReplyAnswer(inputStream);
     }
 
     synchronized SinopeAnswer execute(SinopeDataRequest command) throws UnknownHostException, IOException {
index 7528874812ab8ea8a628621a7e341656056ee6d4..e87d1210334393d48f53c753f20b019817821e41 100644 (file)
@@ -67,12 +67,12 @@ public class SinopeThermostatHandler extends BaseThingHandler {
         if (getSinopeGatewayHandler() != null) {
             try {
                 if (SinopeBindingConstants.CHANNEL_SETTEMP.equals(channelUID.getId())
-                        && command instanceof QuantityType) {
-                    setSetpointTemp(((QuantityType<?>) command).floatValue());
+                        && command instanceof QuantityType quantityCommand) {
+                    setSetpointTemp(quantityCommand.floatValue());
                 }
                 if (SinopeBindingConstants.CHANNEL_SETMODE.equals(channelUID.getId())
-                        && command instanceof DecimalType) {
-                    setSetpointMode(((DecimalType) command).intValue());
+                        && command instanceof DecimalType decimalCommand) {
+                    setSetpointMode(decimalCommand.intValue());
                 }
             } catch (IOException e) {
                 logger.debug("Cannot handle command for channel {} because of {}", channelUID.getId(),
index 032e99f355119975318031ac6949b4d2aad9e2b2..c16feef8c7ef1c8b5a2277b38c53f5440f7ffb07 100644 (file)
@@ -162,7 +162,7 @@ public abstract class SinopeDataRequest extends SinopeRequest {
     @Override
     protected byte[] getFrameData() {
         int appDataLen = getAppDataSize();
-        byte b[] = new byte[seq.length + 1 + 1 + 1 + res3.length + res4.length + dstDeviceId.length + 1 + appDataLen];
+        byte[] b = new byte[seq.length + 1 + 1 + 1 + res3.length + res4.length + dstDeviceId.length + 1 + appDataLen];
 
         ByteBuffer bb = ByteBuffer.wrap(b);
 
index 312868edf3e4625d0b50d3373cc1670f36bbaced..07023a36865cb17a0cca758bf515cb84e5251e9d 100644 (file)
@@ -25,7 +25,7 @@ public class CRC8 implements Checksum {
     private final int init;
 
     /** The Constant crcTable. */
-    private static final int crcTable[] = { 0x00, 0x07, 0x0e, 0x09, 0x1c, 0x1b, 0x12, 0x15, 0x38, 0x3f, 0x36, 0x31,
+    private static final int[] crcTable = { 0x00, 0x07, 0x0e, 0x09, 0x1c, 0x1b, 0x12, 0x15, 0x38, 0x3f, 0x36, 0x31,
             0x24, 0x23, 0x2a, 0x2d, 0x70, 0x77, 0x7e, 0x79, 0x6c, 0x6b, 0x62, 0x65, 0x48, 0x4f, 0x46, 0x41, 0x54, 0x53,
             0x5a, 0x5d, 0xe0, 0xe7, 0xee, 0xe9, 0xfc, 0xfb, 0xf2, 0xf5, 0xd8, 0xdf, 0xd6, 0xd1, 0xc4, 0xc3, 0xca, 0xcd,
             0x90, 0x97, 0x9e, 0x99, 0x8c, 0x8b, 0x82, 0x85, 0xa8, 0xaf, 0xa6, 0xa1, 0xb4, 0xb3, 0xba, 0xbd, 0xc7, 0xc0,
@@ -67,6 +67,7 @@ public class CRC8 implements Checksum {
      *
      * @param buffer the buffer
      */
+    @Override
     public void update(byte[] buffer) {
         update(buffer, 0, buffer.length);
     }
index 7bda6c0002ba6e320bfc6a9d460d76302ebb1308..d9d58fa5ec94f93c31ed0a45e90ced6c397d5c32 100644 (file)
@@ -88,8 +88,8 @@ public class SleepIQHandlerFactory extends BaseThingHandlerFactory {
     @Override
     protected void removeHandler(final ThingHandler thingHandler) {
         logger.debug("Removing SleepIQ thing handler");
-        if (thingHandler instanceof SleepIQCloudHandler) {
-            unregisterBedDiscoveryService((SleepIQCloudHandler) thingHandler);
+        if (thingHandler instanceof SleepIQCloudHandler sleepIQCloudHandler) {
+            unregisterBedDiscoveryService(sleepIQCloudHandler);
         }
     }
 
index 880a70811386e6b87613ae3af31eb1d731b11be7..73b4e9fefd197936de00263a67848b5d6b572dcf 100644 (file)
@@ -17,7 +17,6 @@ import static org.openhab.binding.sleepiq.internal.config.SleepIQCloudConfigurat
 
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
@@ -71,7 +70,7 @@ import org.slf4j.LoggerFactory;
  */
 @NonNullByDefault
 public class SleepIQCloudHandler extends ConfigStatusBridgeHandler {
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPE_UIDS = Collections.singleton(THING_TYPE_CLOUD);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPE_UIDS = Set.of(THING_TYPE_CLOUD);
 
     private static final int SLEEPER_POLLING_INTERVAL_HOURS = 12;
 
index 189372fe10edecf0e6901749cbfec58ad5b1c07f..b3e23e4230819b176f3abb13b5109231c211f032 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.sleepiq.internal.handler;
 
 import static org.openhab.binding.sleepiq.internal.SleepIQBindingConstants.*;
 
-import java.util.Collections;
 import java.util.Set;
 import java.util.concurrent.TimeUnit;
 
@@ -61,7 +60,7 @@ import org.slf4j.LoggerFactory;
  */
 @NonNullByDefault
 public class SleepIQDualBedHandler extends BaseThingHandler implements BedStatusListener {
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPE_UIDS = Collections.singleton(THING_TYPE_DUAL_BED);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPE_UIDS = Set.of(THING_TYPE_DUAL_BED);
 
     private static final long GET_SLEEP_DATA_DELAY_MINUTES = 5;
 
@@ -146,12 +145,12 @@ public class SleepIQDualBedHandler extends BaseThingHandler implements BedStatus
         switch (channelId) {
             case CHANNEL_LEFT_SLEEP_NUMBER:
             case CHANNEL_RIGHT_SLEEP_NUMBER:
-                if (command instanceof DecimalType) {
+                if (command instanceof DecimalType decimalCommand) {
                     Side side = Side.convertFromGroup(groupId);
                     logger.debug("BedHandler: Set sleepnumber to {} for bedId={}, side={}", command, bedId, side);
                     SleepIQCloudHandler cloudHandler = getCloudHandler();
                     if (cloudHandler != null) {
-                        cloudHandler.setSleepNumber(bedId, side, ((DecimalType) command).intValue());
+                        cloudHandler.setSleepNumber(bedId, side, decimalCommand.intValue());
                     }
                 }
                 break;
@@ -169,10 +168,10 @@ public class SleepIQDualBedHandler extends BaseThingHandler implements BedStatus
             case CHANNEL_LEFT_FOUNDATION_PRESET:
             case CHANNEL_RIGHT_FOUNDATION_PRESET:
                 logger.debug("Received command {} on channel {} to set preset", command, channelUID);
-                if (isFoundationInstalled() && command instanceof DecimalType) {
+                if (isFoundationInstalled() && command instanceof DecimalType decimalCommand) {
                     try {
                         Side side = Side.convertFromGroup(groupId);
-                        FoundationPreset preset = FoundationPreset.forValue(((DecimalType) command).intValue());
+                        FoundationPreset preset = FoundationPreset.forValue(decimalCommand.intValue());
                         logger.debug("BedHandler: Set foundation preset to {} for bedId={}, side={}", command, bedId,
                                 side);
                         SleepIQCloudHandler cloudHandler = getCloudHandler();
index 178f8583b3565ba6967081ca26835946b5e3011e..bccc1078d12823e9938b7bdbb83839cf501166f3 100644 (file)
@@ -12,7 +12,6 @@
  */
 package org.openhab.binding.smaenergymeter.internal;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -32,7 +31,7 @@ public class SMAEnergyMeterBindingConstants {
     // List of all Thing Type UIDs
     public static final ThingTypeUID THING_TYPE_ENERGY_METER = new ThingTypeUID(BINDING_ID, "energymeter");
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_ENERGY_METER);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_ENERGY_METER);
 
     // List of all Channel IDs
     public static final String CHANNEL_POWER_IN = "powerIn";
index ab2da3a75ed856c9147c309700e1c4a0d30e5eea..92af827bf78a81791994fb9c21f6a9b962ac3a05 100644 (file)
@@ -92,7 +92,7 @@ public class EnergyMeter {
             socket.receive(msgPacket);
 
             String sma = new String(Arrays.copyOfRange(bytes, 0x00, 0x03));
-            if (!sma.equals("SMA")) {
+            if (!"SMA".equals(sma)) {
                 throw new IOException("Not a SMA telegram." + sma);
             }
 
index 7732ab777560c326b41a0ec2859de73ff6a90ad0..f21df546db45d488b5563da85c4b8fb6432ddcf9 100644 (file)
@@ -41,6 +41,7 @@ public interface SerialPort extends Closeable {
      * @throws IOException
      *             if an I/O error occurred.
      */
+    @Override
     void close() throws IOException;
 
     /**
index e181e555cc2e14dd4e9b1b4b8eddf2ccc1b07abc..bfaeac087b3ff792af31bf218683e77ce141bc0c 100644 (file)
@@ -44,7 +44,7 @@ public class SmartMeterBindingConstants {
     public static final String CHANNEL_TYPE_METERREADER_OBIS = "channel-type:" + BINDING_ID + ":obis";
 
     public static String getObisChannelIdPattern(String obis) {
-        return obis.replaceAll("\\.", "-").replaceAll(":|\\*", "_");
+        return obis.replace(".", "-").replaceAll(":|\\*", "_");
     }
 
     public static String getObisChannelId(String obis) {
index 2f9a5dec1190a3a80b0d388d56272c1285e7a9d1..559b460ec6f2b9d9df527094c2fa7719c3ff273d 100644 (file)
@@ -269,12 +269,12 @@ public class SmartMeterHandler extends BaseThingHandler {
             valueString += " " + value.getUnit();
         }
         State state = TypeParser.parseState(List.of(QuantityType.class, StringType.class), valueString);
-        if (channel != null && state instanceof QuantityType) {
+        if (channel != null && state instanceof QuantityType quantityCommand) {
             state = applyConformity(channel, (QuantityType<Q>) state);
             Number conversionRatio = (Number) channel.getConfiguration()
                     .get(SmartMeterBindingConstants.CONFIGURATION_CONVERSION);
             if (conversionRatio != null) {
-                state = ((QuantityType<?>) state).divide(BigDecimal.valueOf(conversionRatio.doubleValue()));
+                state = quantityCommand.divide(BigDecimal.valueOf(conversionRatio.doubleValue()));
             }
         }
         return state;
index d5873b83365cb8d3fcc99922467f82b5fbc15890..fe7173d51dcbfb649586f8bd1a91e5568b5eba9b 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.smartmeter.internal;
 
 import static org.openhab.binding.smartmeter.SmartMeterBindingConstants.THING_TYPE_SMLREADER;
 
-import java.util.Collections;
 import java.util.Set;
 import java.util.function.Supplier;
 
@@ -40,7 +39,7 @@ import org.osgi.service.component.annotations.Reference;
 @NonNullByDefault
 public class SmartMeterHandlerFactory extends BaseThingHandlerFactory {
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_SMLREADER);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_SMLREADER);
     private @NonNullByDefault({}) SmartMeterChannelTypeProvider channelProvider;
     private @NonNullByDefault({}) Supplier<SerialPortManager> serialPortManagerSupplier = () -> null;
 
index a3f62b09277aa85d36cda5cfc29d8d7893e32714..f6d6a700fdcaca1d88469558a84e61634ad1ad7f 100644 (file)
@@ -44,7 +44,7 @@ public class NegateBitParser {
                 String[] split = substring.split(":");
                 int negatePosition = Integer.parseInt(split[0]);
                 boolean negateBit = Integer.parseInt(split[1]) == 0 ? false : true;
-                boolean status = split.length > 2 ? split[2].equalsIgnoreCase("status") : false;
+                boolean status = split.length > 2 ? "status".equalsIgnoreCase(split[2]) : false;
                 return new NegateBitModel((byte) negatePosition, negateBit, obis, status);
             }
         } catch (Exception e) {
index 8b555637e908cb65767a9391404d2c81942a80dc..eea8b450dad1564ad3bb676a7115ff9fe3c11b24 100644 (file)
@@ -151,10 +151,8 @@ public final class SmlValueExtractor {
      * @return the hex encoded OBIS code as readable string.
      */
     protected static String getObisAsString(byte[] octetBytes) {
-        String formattedObis = String.format(SmartMeterBindingConstants.OBIS_FORMAT_MINIMAL, byteToInt(octetBytes[0]),
+        return String.format(SmartMeterBindingConstants.OBIS_FORMAT_MINIMAL, byteToInt(octetBytes[0]),
                 byteToInt(octetBytes[1]), byteToInt(octetBytes[2]), byteToInt(octetBytes[3]), byteToInt(octetBytes[4]));
-
-        return formattedObis;
     }
 
     public String getObisCode() {
index 4700d650a085540757c03bd6b9f69ffbea6597a8..b72daed5ceafb303f4ea46fe3955af352df6861a 100644 (file)
@@ -40,9 +40,8 @@ public class TestNegateBit {
     public void testNegateHandlingTrue() {
         String negateProperty = "1-0_1-8-0:5:1";
 
-        boolean negateState = NegateHandler.shouldNegateState(negateProperty, obis -> {
-            return new MeterValue<>(obis, "65954", null);
-        });
+        boolean negateState = NegateHandler.shouldNegateState(negateProperty,
+                obis -> new MeterValue<>(obis, "65954", null));
 
         assertTrue(negateState);
     }
@@ -51,9 +50,8 @@ public class TestNegateBit {
     public void testNegateHandlingFalse() {
         String negateProperty = "1-0_1-8-0:5:1";
 
-        boolean negateState = NegateHandler.shouldNegateState(negateProperty, obis -> {
-            return new MeterValue<>(obis, "0", null, "65922");
-        });
+        boolean negateState = NegateHandler.shouldNegateState(negateProperty,
+                obis -> new MeterValue<>(obis, "0", null, "65922"));
 
         assertFalse(negateState);
     }
index 6091b11d3f68cf7bd4b667aebb563f1a3ad49fdc..02c0fbefdc3d315d49be679832640261ae19fbaf 100644 (file)
@@ -123,6 +123,7 @@ public class SmartthingsHandlerFactory extends BaseThingHandlerFactory
      * @throws TimeoutException
      * @throws ExecutionException
      */
+    @Override
     public void sendDeviceCommand(String path, int timeout, String data)
             throws InterruptedException, TimeoutException, ExecutionException {
         ContentResponse response = httpClient
index 78368ae2c2a2950c6b9f19b0b6180edd1739ccfa..115ab6b53b44b249efd590885b94bdca0c7ca19d 100644 (file)
@@ -53,11 +53,11 @@ public class SmartthingsColor100Converter extends SmartthingsConverter {
         // The command should be of HSBType. The hue component needs to be divided by 3.6 to convert 0-360 degrees to
         // 0-100 percent
         // The easiest way to do this is to create a new HSBType with the hue component changed.
-        if (command instanceof HSBType) {
-            HSBType hsb = (HSBType) command;
-            double hue = Math.round((hsb.getHue().doubleValue() / 3.60)); // add .5 to round
+        if (command instanceof HSBType hsbCommand) {
+            double hue = Math.round((hsbCommand.getHue().doubleValue() / 3.60)); // add .5 to round
             long hueInt = (long) hue;
-            HSBType hsb100 = new HSBType(new DecimalType(hueInt), hsb.getSaturation(), hsb.getBrightness());
+            HSBType hsb100 = new HSBType(new DecimalType(hueInt), hsbCommand.getSaturation(),
+                    hsbCommand.getBrightness());
             // now use the default converter to convert to a JSON string
             jsonMsg = defaultConvertToSmartthings(channelUid, hsb100);
         } else {
@@ -95,7 +95,7 @@ public class SmartthingsColor100Converter extends SmartthingsConverter {
         }
 
         // Get the RGB colors
-        int rgb[] = new int[3];
+        int[] rgb = new int[3];
         for (int i = 0, pos = 1; i < 3; i++, pos += 2) {
             String c = value.substring(pos, pos + 2);
             rgb[i] = Integer.parseInt(c, 16);
index 080c12d37c38a9ad98b2b6f627d1cae9fe0e1f7d..d7273293a174bb895c092fbb6c49d79bd80eaf3c 100644 (file)
@@ -47,8 +47,7 @@ public class SmartthingsColorConverter extends SmartthingsConverter {
 
     @Override
     public String convertToSmartthings(ChannelUID channelUid, Command command) {
-        String jsonMsg = defaultConvertToSmartthings(channelUid, command);
-        return jsonMsg;
+        return defaultConvertToSmartthings(channelUid, command);
     }
 
     /*
@@ -78,14 +77,13 @@ public class SmartthingsColorConverter extends SmartthingsConverter {
         }
 
         // Get the RGB colors
-        int rgb[] = new int[3];
+        int[] rgb = new int[3];
         for (int i = 0, pos = 1; i < 3; i++, pos += 2) {
             String c = value.substring(pos, pos + 2);
             rgb[i] = Integer.parseInt(c, 16);
         }
 
         // Convert to state
-        State state = HSBType.fromRGB(rgb[0], rgb[1], rgb[2]);
-        return state;
+        return HSBType.fromRGB(rgb[0], rgb[1], rgb[2]);
     }
 }
index e3d307c55b1ac46b51566da4bd33414a6483f5ab..d6d363d0184b5a1305bd9056654582f003e83910 100644 (file)
@@ -76,13 +76,11 @@ public abstract class SmartthingsConverter {
     protected String defaultConvertToSmartthings(ChannelUID channelUid, Command command) {
         String value;
 
-        if (command instanceof DateTimeType) {
-            DateTimeType dt = (DateTimeType) command;
-            value = dt.format("%m/%d/%Y %H.%M.%S");
-        } else if (command instanceof HSBType) {
-            HSBType hsb = (HSBType) command;
-            value = String.format("[%d, %d, %d ]", hsb.getHue().intValue(), hsb.getSaturation().intValue(),
-                    hsb.getBrightness().intValue());
+        if (command instanceof DateTimeType dateTimeCommand) {
+            value = dateTimeCommand.format("%m/%d/%Y %H.%M.%S");
+        } else if (command instanceof HSBType hsbCommand) {
+            value = String.format("[%d, %d, %d ]", hsbCommand.getHue().intValue(),
+                    hsbCommand.getSaturation().intValue(), hsbCommand.getBrightness().intValue());
         } else if (command instanceof DecimalType) {
             value = command.toString();
         } else if (command instanceof IncreaseDecreaseType) { // Need to surround with double quotes
@@ -121,11 +119,9 @@ public abstract class SmartthingsConverter {
             value = command.toString().toLowerCase();
         }
 
-        String jsonMsg = String.format(
+        return String.format(
                 "{\"capabilityKey\": \"%s\", \"deviceDisplayName\": \"%s\", \"capabilityAttribute\": \"%s\", \"value\": %s}",
                 thingTypeId, smartthingsName, channelUid.getId(), value);
-
-        return jsonMsg;
     }
 
     protected String surroundWithQuotes(String param) {
@@ -159,16 +155,16 @@ public abstract class SmartthingsConverter {
                 return UnDefType.UNDEF;
             case "Dimmer":
                 // The value coming in should be a number
-                if (deviceValue instanceof String) {
-                    return new PercentType((String) deviceValue);
+                if (deviceValue instanceof String stringCommand) {
+                    return new PercentType(stringCommand);
                 } else {
                     logger.warn("Failed to convert {} with a value of {} from class {} to an appropriate type.",
                             deviceType, deviceValue, deviceValue.getClass().getName());
                     return UnDefType.UNDEF;
                 }
             case "Number":
-                if (deviceValue instanceof String) {
-                    return new DecimalType(Double.parseDouble((String) deviceValue));
+                if (deviceValue instanceof String stringCommand2) {
+                    return new DecimalType(Double.parseDouble(stringCommand2));
                 } else if (deviceValue instanceof Double) {
                     return new DecimalType((Double) deviceValue);
                 } else if (deviceValue instanceof Long) {
@@ -196,8 +192,8 @@ public abstract class SmartthingsConverter {
                 // But if the result is from sensor change via a subscription to a threeAxis device the results will
                 // be a String of the format "value":"-873,-70,484"
                 // which GSON returns as a LinkedTreeMap
-                if (deviceValue instanceof String) {
-                    return new StringType((String) deviceValue);
+                if (deviceValue instanceof String stringCommand3) {
+                    return new StringType(stringCommand3);
                 } else if (deviceValue instanceof Map<?, ?>) {
                     Map<String, String> map = (Map<String, String>) deviceValue;
                     String s = String.format("%.0f,%.0f,%.0f", map.get("x"), map.get("y"), map.get("z"));
index 3195725ba4e41045475da0dcd946a5d1e05605e0..533e71c8c0ecbe7bbff7011653fba70540abc9fb 100644 (file)
@@ -41,13 +41,11 @@ public class SmartthingsDefaultConverter extends SmartthingsConverter {
 
     @Override
     public String convertToSmartthings(ChannelUID channelUid, Command command) {
-        String jsonMsg = defaultConvertToSmartthings(channelUid, command);
-        return jsonMsg;
+        return defaultConvertToSmartthings(channelUid, command);
     }
 
     @Override
     public State convertToOpenHab(@Nullable String acceptedChannelType, SmartthingsStateData dataFromSmartthings) {
-        State state = defaultConvertToOpenHab(acceptedChannelType, dataFromSmartthings);
-        return state;
+        return defaultConvertToOpenHab(acceptedChannelType, dataFromSmartthings);
     }
 }
index 81bd43695883b056488db91944f9e8f20a650c08..15174da3cc4524fc109bc908fe2240c936db8ee5 100644 (file)
@@ -47,11 +47,10 @@ public class SmartthingsHue100Converter extends SmartthingsConverter {
     public String convertToSmartthings(ChannelUID channelUid, Command command) {
         String jsonMsg;
 
-        if (command instanceof HSBType) {
-            HSBType hsb = (HSBType) command;
-            double hue = hsb.getHue().doubleValue() / 3.60;
-            String value = String.format("[%.0f, %d, %d ]", hue, hsb.getSaturation().intValue(),
-                    hsb.getBrightness().intValue());
+        if (command instanceof HSBType hsbCommand) {
+            double hue = hsbCommand.getHue().doubleValue() / 3.60;
+            String value = String.format("[%.0f, %d, %d ]", hue, hsbCommand.getSaturation().intValue(),
+                    hsbCommand.getBrightness().intValue());
             jsonMsg = String.format(
                     "{\"capabilityKey\": \"%s\", \"deviceDisplayName\": \"%s\", \"capabilityAttribute\": \"%s\", \"value\": %s}",
                     thingTypeId, smartthingsName, channelUid.getId(), value);
@@ -74,20 +73,20 @@ public class SmartthingsHue100Converter extends SmartthingsConverter {
         }
 
         if (acceptedChannelType != null && "Number".contentEquals(acceptedChannelType)) {
-            if (deviceValue instanceof String) {
-                double d = Double.parseDouble((String) deviceValue);
+            if (deviceValue instanceof String stringCommand) {
+                double d = Double.parseDouble(stringCommand);
                 d *= 3.6;
                 return new DecimalType(d);
             } else if (deviceValue instanceof Long) {
                 double d = ((Long) deviceValue).longValue();
                 d *= 3.6;
                 return new DecimalType(d);
-            } else if (deviceValue instanceof BigDecimal) {
-                double d = ((BigDecimal) deviceValue).doubleValue();
+            } else if (deviceValue instanceof BigDecimal decimalValue) {
+                double d = decimalValue.doubleValue();
                 d *= 3.6;
                 return new DecimalType(d);
-            } else if (deviceValue instanceof Number) {
-                double d = ((Number) deviceValue).doubleValue();
+            } else if (deviceValue instanceof Number numberValue) {
+                double d = numberValue.doubleValue();
                 d *= 3.6;
                 return new DecimalType(d);
             } else {
index 519fe1defd52e4af1a01a694da062b1ed684725d..03359bb7f3dd1b0d4b77e3b13f415d9986328f71 100644 (file)
@@ -37,19 +37,15 @@ public class SmartthingsOpenCloseControlConverter extends SmartthingsConverter {
 
     @Override
     public String convertToSmartthings(ChannelUID channelUid, Command command) {
-        String smartthingsValue = (command.toString().toLowerCase().equals("open")) ? "open" : "close";
+        String smartthingsValue = ("open".equals(command.toString().toLowerCase())) ? "open" : "close";
         smartthingsValue = surroundWithQuotes(smartthingsValue);
 
-        String jsonMsg = String.format("{\"capabilityKey\": \"%s\", \"deviceDisplayName\": \"%s\", \"value\": %s}",
-                thingTypeId, smartthingsName, smartthingsValue);
-
-        return jsonMsg;
+        return String.format("{\"capabilityKey\": \"%s\", \"deviceDisplayName\": \"%s\", \"value\": %s}", thingTypeId,
+                smartthingsName, smartthingsValue);
     }
 
     @Override
     public State convertToOpenHab(@Nullable String acceptedChannelType, SmartthingsStateData dataFromSmartthings) {
-        State state = defaultConvertToOpenHab(acceptedChannelType, dataFromSmartthings);
-
-        return state;
+        return defaultConvertToOpenHab(acceptedChannelType, dataFromSmartthings);
     }
 }
index 00b3be2691f411c4e71a225b66d0245348353952..22a998a51c8323fd7dc72ad3725850bc5bbe4c88 100644 (file)
@@ -128,8 +128,7 @@ public class SmartthingsThingHandler extends ConfigStatusThingHandler {
      * @return channel id
      */
     private String getSmartthingsAttributeFromChannel(ChannelUID channelUID) {
-        String id = channelUID.getId();
-        return id;
+        return channelUID.getId();
     }
 
     /**
@@ -211,8 +210,7 @@ public class SmartthingsThingHandler extends ConfigStatusThingHandler {
         try {
             Constructor<?> constr = Class.forName(converterClassName.toString()).getDeclaredConstructor(Thing.class);
             constr.setAccessible(true);
-            SmartthingsConverter cvtr = (SmartthingsConverter) constr.newInstance(thing);
-            return cvtr;
+            return (SmartthingsConverter) constr.newInstance(thing);
         } catch (ClassNotFoundException e) {
             // Most of the time there is no channel specific converter, the default converter is all that is needed.
             logger.trace("No Custom converter exists for {} ({})", converterName, converterClassName);
index 6923bf5678c1899b725183d4ca323767670dca57..ca3a5f76747e73794d0bb025755930164e281a48 100644 (file)
@@ -425,9 +425,7 @@ public class SmhiHandler extends BaseThingHandler {
                 break;
 
         }
-        Channel channel = ChannelBuilder.create(channelUID, itemType)
-                .withType(new ChannelTypeUID(BINDING_ID, channelID)).build();
-        return channel;
+        return ChannelBuilder.create(channelUID, itemType).withType(new ChannelTypeUID(BINDING_ID, channelID)).build();
     }
 
     /**
index 9ed93d0cc34b04ddddf1f4ac1eda06efeae5d3ff..9b8ac6132cc9c749f65e92813a81aa921a48a8e8 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.smhi.internal;
 
 import static org.openhab.binding.smhi.internal.SmhiBindingConstants.THING_TYPE_FORECAST;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -40,7 +39,7 @@ import org.osgi.service.component.annotations.Reference;
 @Component(configurationPid = "binding.smhi", service = ThingHandlerFactory.class)
 public class SmhiHandlerFactory extends BaseThingHandlerFactory {
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_FORECAST);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_FORECAST);
 
     private final HttpClient httpClient;
 
index ce83446c14c9ad53754f27ec55c43fd1ff54d897..ec64cc1c2485555007c78bb805d055b1ad99d53f 100644 (file)
@@ -102,13 +102,13 @@ public class MessageReader extends Thread {
                 pduString = "00" + pduString;
             }
             Pdu pdu = parser.parsePdu(pduString);
-            if (pdu instanceof SmsDeliveryPdu) {
+            if (pdu instanceof SmsDeliveryPdu deliveryPdu) {
                 logger.debug("PDU = {}", pdu.toString());
                 InboundMessage msg = null;
                 if (pdu.isBinary()) {
-                    msg = new InboundBinaryMessage((SmsDeliveryPdu) pdu, memLocation, memIndex);
+                    msg = new InboundBinaryMessage(deliveryPdu, memLocation, memIndex);
                 } else {
-                    msg = new InboundMessage((SmsDeliveryPdu) pdu, memLocation, memIndex);
+                    msg = new InboundMessage(deliveryPdu, memLocation, memIndex);
                 }
                 msg.setGatewayId(this.modem.getGatewayId());
                 msg.setGatewayId(this.modem.getGatewayId());
@@ -153,9 +153,9 @@ public class MessageReader extends Thread {
                         mpMsgList.add(tmpList);
                     }
                 }
-            } else if (pdu instanceof SmsStatusReportPdu) {
+            } else if (pdu instanceof SmsStatusReportPdu statusReportPdu) {
                 DeliveryReportMessage msg;
-                msg = new DeliveryReportMessage((SmsStatusReportPdu) pdu, memLocation, memIndex);
+                msg = new DeliveryReportMessage(statusReportPdu, memLocation, memIndex);
                 msg.setGatewayId(this.modem.getGatewayId());
                 messageList.add(msg);
             }
@@ -376,8 +376,8 @@ public class MessageReader extends Thread {
         String messageSignature = message.getSignature();
         if (!this.modem.getReadMessagesSet().contains(messageSignature)) {
             this.modem.getDeviceInformation().increaseTotalReceived();
-            if (message instanceof DeliveryReportMessage) {
-                modem.processDeliveryReport((DeliveryReportMessage) message);
+            if (message instanceof DeliveryReportMessage deliveryReportMessage) {
+                modem.processDeliveryReport(deliveryReportMessage);
             } else {
                 modem.processMessage(message);
             }
index d358faaafe06aa99c6ccae4cca2dc13ce5c6d411..eaad8128b3eb202ced42d008473292c54a3894d6 100644 (file)
@@ -194,30 +194,30 @@ public abstract class AbstractMessage implements Serializable {
         b.append(String.format("Recipient Address: %s%n", getRecipientAddress()));
         b.append(String.format("Payload Type: %s%n", payload.getType()));
         b.append(String.format("Text payload: %s%n", payload.getText() == null ? "null" : payload.getText()));
-        if (this instanceof InboundMessage) {
+        if (this instanceof InboundMessage message) {
             b.append(String.format("Sent Date: %s%n", getSentDate()));
-            b.append(String.format("Memory Storage Location: %s%n", ((InboundMessage) this).getMemLocation()));
-            b.append(String.format("Memory Index: %d%n", ((InboundMessage) this).getMemIndex()));
-            b.append(String.format("Memory MP Index: %s%n", ((InboundMessage) this).getMpMemIndex()));
+            b.append(String.format("Memory Storage Location: %s%n", message.getMemLocation()));
+            b.append(String.format("Memory Index: %d%n", message.getMemIndex()));
+            b.append(String.format("Memory MP Index: %s%n", message.getMpMemIndex()));
         }
-        if (this instanceof OutboundMessage) {
+        if (this instanceof OutboundMessage message) {
             b.append(String.format("Sent Date: %s%n",
-                    (((OutboundMessage) this).getSentStatus() == SentStatus.Sent ? getSentDate() : "N/A")));
+                    (message.getSentStatus() == SentStatus.Sent ? getSentDate() : "N/A")));
             String ids = "";
-            for (String opId : ((OutboundMessage) this).getOperatorMessageIds()) {
+            for (String opId : message.getOperatorMessageIds()) {
                 ids += (ids.length() == 0 ? opId : "," + opId);
             }
             b.append(String.format("Operator Message IDs: %s%n", ids));
-            b.append(String.format("Status: %s%n", ((OutboundMessage) this).getSentStatus().toString()));
-            b.append(String.format("Failure: %s%n", ((OutboundMessage) this).getFailureCause().toString()));
+            b.append(String.format("Status: %s%n", message.getSentStatus().toString()));
+            b.append(String.format("Failure: %s%n", message.getFailureCause().toString()));
             b.append(String.format("Request Delivery Reports: %b%n",
-                    ((OutboundMessage) this).getRequestDeliveryReport()));
+                    message.getRequestDeliveryReport()));
         }
-        if (this instanceof DeliveryReportMessage) {
+        if (this instanceof DeliveryReportMessage message) {
             b.append(String.format("Original Operator Message Id: %s%n",
-                    ((DeliveryReportMessage) this).getOriginalOperatorMessageId()));
-            b.append(String.format("Delivery Date: %s%n", ((DeliveryReportMessage) this).getOriginalReceivedDate()));
-            b.append(String.format("Delivery Status: %s%n", ((DeliveryReportMessage) this).getDeliveryStatus()));
+                    message.getOriginalOperatorMessageId()));
+            b.append(String.format("Delivery Date: %s%n", message.getOriginalReceivedDate()));
+            b.append(String.format("Delivery Status: %s%n", message.getDeliveryStatus()));
         }
         b.append(String
                 .format("== MESSAGE END ========================================================================%n"));
index f79adde829f14759233419c68183bc93f05cc54f..6423bca169c1dd2c7fb9e632e34bcce62cbec398 100644 (file)
@@ -68,8 +68,8 @@ public class SMSModemActions implements ThingActions {
 
     public static void sendSMS(@Nullable ThingActions actions, @Nullable String recipient, @Nullable String message,
             @Nullable String encoding) {
-        if (actions instanceof SMSModemActions) {
-            ((SMSModemActions) actions).sendSMS(recipient, message, encoding);
+        if (actions instanceof SMSModemActions smsModemActions) {
+            smsModemActions.sendSMS(recipient, message, encoding);
         } else {
             throw new IllegalArgumentException("Instance is not an SMSModemActions class.");
         }
index 6014e40b1055a7e32f086e6032d4c7d8e314f1c4..c214d9f4f594113ee7573420615c75022a1b8963 100644 (file)
@@ -65,8 +65,8 @@ public class SMSConversationHandler extends BaseThingHandler {
                         thing.getUID(), getRecipient());
             }
             ThingHandler handler = bridge.getHandler();
-            if (handler instanceof SMSModemBridgeHandler) {
-                this.bridgeHandler = (SMSModemBridgeHandler) handler;
+            if (handler instanceof SMSModemBridgeHandler smsModemBridgeHandler) {
+                this.bridgeHandler = smsModemBridgeHandler;
             } else {
                 throw new ConfigurationException("No available bridge handler found for SMSConversation {} bridge {} .",
                         thing.getUID(), bridge.getUID());
index 8091432463d540b6a827d88967535af6bf8d0cdf..eead07953c4f3ccd2c85737567abf649c7dbecf6 100644 (file)
@@ -102,9 +102,9 @@ public class SncfDiscoveryService extends AbstractDiscoveryService implements Th
 
     @Override
     public void setThingHandler(ThingHandler handler) {
-        if (handler instanceof SncfBridgeHandler) {
-            this.bridgeHandler = (SncfBridgeHandler) handler;
-            this.locationProvider = ((SncfBridgeHandler) handler).getLocationProvider();
+        if (handler instanceof SncfBridgeHandler sncfBridgeHandler) {
+            this.bridgeHandler = sncfBridgeHandler;
+            this.locationProvider = sncfBridgeHandler.getLocationProvider();
         }
     }
 
index 6709a817a3144da2eeb016565e07c1d544bb6f18..f43ea54636e57c4dcd32148d9f030ea6dd582013 100644 (file)
@@ -139,12 +139,12 @@ public class SnmpTargetHandler extends BaseThingHandler implements ResponseListe
                     }
                 } else {
                     Command rawValue = command;
-                    if (command instanceof QuantityType) {
+                    if (command instanceof QuantityType quantityCommand) {
                         Unit<?> channelUnit = channel.unit;
                         if (channelUnit == null) {
-                            rawValue = new DecimalType(((QuantityType<?>) command).toBigDecimal());
+                            rawValue = new DecimalType(quantityCommand.toBigDecimal());
                         } else {
-                            QuantityType<?> convertedValue = ((QuantityType<?>) command).toUnit(channelUnit);
+                            QuantityType<?> convertedValue = quantityCommand.toUnit(channelUnit);
                             if (convertedValue == null) {
                                 logger.warn("Cannot convert '{}' to configured unit '{}'", command, channelUnit);
                                 return;
@@ -443,7 +443,6 @@ public class SnmpTargetHandler extends BaseThingHandler implements ResponseListe
                                             octets[3] << 24 | octets[4] << 16 | octets[5] << 8 | octets[6]);
                                     state = channelUnit == null ? new DecimalType(floatValue)
                                             : new QuantityType<>(floatValue, channelUnit);
-
                                 } else {
                                     throw new UnsupportedOperationException("Unknown opaque datatype" + value);
                                 }
@@ -491,36 +490,36 @@ public class SnmpTargetHandler extends BaseThingHandler implements ResponseListe
     private Variable convertDatatype(Command command, SnmpDatatype datatype) {
         switch (datatype) {
             case INT32 -> {
-                if (command instanceof DecimalType) {
-                    return new Integer32(((DecimalType) command).intValue());
-                } else if (command instanceof StringType) {
-                    return new Integer32((new DecimalType(((StringType) command).toString())).intValue());
+                if (command instanceof DecimalType decimalCommand) {
+                    return new Integer32(decimalCommand.intValue());
+                } else if (command instanceof StringType stringCommand) {
+                    return new Integer32((new DecimalType(stringCommand.toString())).intValue());
                 }
             }
             case UINT32 -> {
-                if (command instanceof DecimalType) {
-                    return new UnsignedInteger32(((DecimalType) command).intValue());
-                } else if (command instanceof StringType) {
-                    return new UnsignedInteger32((new DecimalType(((StringType) command).toString())).intValue());
+                if (command instanceof DecimalType decimalCommand) {
+                    return new UnsignedInteger32(decimalCommand.intValue());
+                } else if (command instanceof StringType stringCommand) {
+                    return new UnsignedInteger32((new DecimalType(stringCommand.toString())).intValue());
                 }
             }
             case COUNTER64 -> {
-                if (command instanceof DecimalType) {
-                    return new Counter64(((DecimalType) command).longValue());
-                } else if (command instanceof StringType) {
-                    return new Counter64((new DecimalType(((StringType) command).toString())).longValue());
+                if (command instanceof DecimalType decimalCommand) {
+                    return new Counter64(decimalCommand.longValue());
+                } else if (command instanceof StringType stringCommand) {
+                    return new Counter64((new DecimalType(stringCommand.toString())).longValue());
                 }
             }
             case FLOAT, STRING -> {
-                if (command instanceof DecimalType) {
-                    return new OctetString(((DecimalType) command).toString());
-                } else if (command instanceof StringType) {
-                    return new OctetString(((StringType) command).toString());
+                if (command instanceof DecimalType decimalCommand) {
+                    return new OctetString(decimalCommand.toString());
+                } else if (command instanceof StringType stringCommand) {
+                    return new OctetString(stringCommand.toString());
                 }
             }
             case HEXSTRING -> {
-                if (command instanceof StringType) {
-                    String commandString = ((StringType) command).toString().toLowerCase();
+                if (command instanceof StringType stringCommand) {
+                    String commandString = stringCommand.toString().toLowerCase();
                     Matcher commandMatcher = HEXSTRING_VALIDITY.matcher(commandString);
                     if (commandMatcher.matches()) {
                         commandString = HEXSTRING_EXTRACTOR.matcher(commandString).replaceAll("");
@@ -529,8 +528,8 @@ public class SnmpTargetHandler extends BaseThingHandler implements ResponseListe
                 }
             }
             case IPADDRESS -> {
-                if (command instanceof StringType) {
-                    return new IpAddress(((StringType) command).toString());
+                if (command instanceof StringType stringCommand) {
+                    return new IpAddress(stringCommand.toString());
                 }
             }
             default -> {
index ac46fd4320309d36cefdf6efce719c1b76d04eac..4b0e29ccc3c09e07639419b6478dfedfe6237d36 100644 (file)
@@ -18,8 +18,8 @@ import static org.mockito.Mockito.*;
 import static org.openhab.binding.snmp.internal.SnmpBindingConstants.THING_TYPE_TARGET;
 
 import java.io.IOException;
-import java.util.Collections;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 import java.util.Vector;
 
@@ -116,7 +116,7 @@ public abstract class AbstractSnmpTargetHandlerTest extends JavaTest {
         setup(SnmpBindingConstants.CHANNEL_TYPE_UID_STRING, channelMode);
 
         PDU responsePDU = new PDU(PDU.RESPONSE,
-                Collections.singletonList(new VariableBinding(new OID(TEST_OID), new OctetString(TEST_STRING))));
+                List.of(new VariableBinding(new OID(TEST_OID), new OctetString(TEST_STRING))));
         ResponseEvent event = new ResponseEvent("test", null, null, responsePDU, null);
 
         thingHandler.onResponse(event);
@@ -132,8 +132,7 @@ public abstract class AbstractSnmpTargetHandlerTest extends JavaTest {
             String onValue, String offValue, Variable value, boolean refresh) {
         setup(SnmpBindingConstants.CHANNEL_TYPE_UID_SWITCH, channelMode, datatype, onValue, offValue);
 
-        PDU responsePDU = new PDU(PDU.RESPONSE,
-                Collections.singletonList(new VariableBinding(new OID(TEST_OID), value)));
+        PDU responsePDU = new PDU(PDU.RESPONSE, List.of(new VariableBinding(new OID(TEST_OID), value)));
         ResponseEvent event = new ResponseEvent("test", null, null, responsePDU, null);
 
         thingHandler.onResponse(event);
index 4d09dd3c465876f0b1fa660c0e78b0ed39b15ee7..0c7a8d5ddbe93353abd24fd029e37d2516640f0c 100644 (file)
@@ -17,7 +17,7 @@ import static org.mockito.ArgumentMatchers.eq;
 import static org.mockito.Mockito.*;
 
 import java.io.IOException;
-import java.util.Collections;
+import java.util.List;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
 import org.junit.jupiter.api.Test;
@@ -93,8 +93,8 @@ public class StringChannelTest extends AbstractSnmpTargetHandlerTest {
     @Test
     public void testStringChannelsProperlyUpdatingOnHexString() throws IOException {
         setup(SnmpBindingConstants.CHANNEL_TYPE_UID_STRING, SnmpChannelMode.READ, SnmpDatatype.HEXSTRING);
-        PDU responsePDU = new PDU(PDU.RESPONSE, Collections
-                .singletonList(new VariableBinding(new OID(TEST_OID), OctetString.fromHexStringPairs("aa11bb"))));
+        PDU responsePDU = new PDU(PDU.RESPONSE,
+                List.of(new VariableBinding(new OID(TEST_OID), OctetString.fromHexStringPairs("aa11bb"))));
         ResponseEvent event = new ResponseEvent("test", null, null, responsePDU, null);
         thingHandler.onResponse(event);
         verify(thingHandlerCallback, atLeast(1)).stateUpdated(eq(CHANNEL_UID), eq(new StringType("aa 11 bb")));
index 0ae04d1446978c9ea491c1a4998f209d01594df5..c2c2063e2bcb337585e51564c1cd15b9ef5dcab7 100644 (file)
@@ -17,7 +17,7 @@ import static org.mockito.ArgumentMatchers.*;
 import static org.mockito.Mockito.*;
 
 import java.io.IOException;
-import java.util.Collections;
+import java.util.List;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
 import org.junit.jupiter.api.Test;
@@ -77,8 +77,7 @@ public class SwitchChannelTest extends AbstractSnmpTargetHandlerTest {
     @Test
     public void testSwitchChannelsProperlyUpdatingOnValue() throws IOException {
         setup(SnmpBindingConstants.CHANNEL_TYPE_UID_SWITCH, SnmpChannelMode.READ, SnmpDatatype.STRING, "on", "off");
-        PDU responsePDU = new PDU(PDU.RESPONSE,
-                Collections.singletonList(new VariableBinding(new OID(TEST_OID), new OctetString("on"))));
+        PDU responsePDU = new PDU(PDU.RESPONSE, List.of(new VariableBinding(new OID(TEST_OID), new OctetString("on"))));
         ResponseEvent event = new ResponseEvent("test", null, null, responsePDU, null);
         thingHandler.onResponse(event);
         verifyResponse(OnOffType.ON);
@@ -87,8 +86,7 @@ public class SwitchChannelTest extends AbstractSnmpTargetHandlerTest {
     @Test
     public void testSwitchChannelsProperlyUpdatingOffValue() throws IOException {
         setup(SnmpBindingConstants.CHANNEL_TYPE_UID_SWITCH, SnmpChannelMode.READ, SnmpDatatype.INT32, "0", "3");
-        PDU responsePDU = new PDU(PDU.RESPONSE,
-                Collections.singletonList(new VariableBinding(new OID(TEST_OID), new Integer32(3))));
+        PDU responsePDU = new PDU(PDU.RESPONSE, List.of(new VariableBinding(new OID(TEST_OID), new Integer32(3))));
         ResponseEvent event = new ResponseEvent("test", null, null, responsePDU, null);
         thingHandler.onResponse(event);
         verifyResponse(OnOffType.OFF);
@@ -98,8 +96,8 @@ public class SwitchChannelTest extends AbstractSnmpTargetHandlerTest {
     public void testSwitchChannelsProperlyUpdatingHexValue() throws IOException {
         setup(SnmpBindingConstants.CHANNEL_TYPE_UID_SWITCH, SnmpChannelMode.READ, SnmpDatatype.HEXSTRING, "AA bb 11",
                 "cc ba 1d");
-        PDU responsePDU = new PDU(PDU.RESPONSE, Collections
-                .singletonList(new VariableBinding(new OID(TEST_OID), OctetString.fromHexStringPairs("aabb11"))));
+        PDU responsePDU = new PDU(PDU.RESPONSE,
+                List.of(new VariableBinding(new OID(TEST_OID), OctetString.fromHexStringPairs("aabb11"))));
         ResponseEvent event = new ResponseEvent("test", null, null, responsePDU, null);
         thingHandler.onResponse(event);
         verifyResponse(OnOffType.ON);
@@ -108,8 +106,7 @@ public class SwitchChannelTest extends AbstractSnmpTargetHandlerTest {
     @Test
     public void testSwitchChannelsIgnoresArbitraryValue() throws IOException {
         setup(SnmpBindingConstants.CHANNEL_TYPE_UID_SWITCH, SnmpChannelMode.READ, SnmpDatatype.COUNTER64, "0", "12223");
-        PDU responsePDU = new PDU(PDU.RESPONSE,
-                Collections.singletonList(new VariableBinding(new OID(TEST_OID), new Counter64(17))));
+        PDU responsePDU = new PDU(PDU.RESPONSE, List.of(new VariableBinding(new OID(TEST_OID), new Counter64(17))));
         ResponseEvent event = new ResponseEvent("test", null, null, responsePDU, null);
         thingHandler.onResponse(event);
         verify(thingHandlerCallback, never()).stateUpdated(eq(CHANNEL_UID), any());
@@ -119,8 +116,7 @@ public class SwitchChannelTest extends AbstractSnmpTargetHandlerTest {
     @Test
     public void testSwitchChannelSendsUndefExceptionValue() throws IOException {
         setup(SnmpBindingConstants.CHANNEL_TYPE_UID_SWITCH, SnmpChannelMode.READ, SnmpDatatype.COUNTER64, "0", "12223");
-        PDU responsePDU = new PDU(PDU.RESPONSE,
-                Collections.singletonList(new VariableBinding(new OID(TEST_OID), Null.noSuchInstance)));
+        PDU responsePDU = new PDU(PDU.RESPONSE, List.of(new VariableBinding(new OID(TEST_OID), Null.noSuchInstance)));
         ResponseEvent event = new ResponseEvent("test", null, null, responsePDU, null);
         thingHandler.onResponse(event);
         verifyResponse(UnDefType.UNDEF);
@@ -130,8 +126,7 @@ public class SwitchChannelTest extends AbstractSnmpTargetHandlerTest {
     public void testSwitchChannelSendsConfiguredExceptionValue() throws IOException {
         setup(SnmpBindingConstants.CHANNEL_TYPE_UID_SWITCH, SnmpChannelMode.READ, SnmpDatatype.COUNTER64, "0", "12223",
                 "OFF");
-        PDU responsePDU = new PDU(PDU.RESPONSE,
-                Collections.singletonList(new VariableBinding(new OID(TEST_OID), Null.noSuchInstance)));
+        PDU responsePDU = new PDU(PDU.RESPONSE, List.of(new VariableBinding(new OID(TEST_OID), Null.noSuchInstance)));
         ResponseEvent event = new ResponseEvent("test", null, null, responsePDU, null);
         thingHandler.onResponse(event);
         verifyResponse(OnOffType.OFF);
index dae67f3b5912ef84565701ab441b9643de4aa78f..4c8e6ee647cdc57d1f48c156c79a3bda3022c233 100644 (file)
@@ -12,7 +12,6 @@
  */
 package org.openhab.binding.solaredge.internal;
 
-import java.util.Collections;
 import java.util.Set;
 import java.util.concurrent.TimeUnit;
 
@@ -111,5 +110,5 @@ public class SolarEdgeBindingConstants {
     public static final String STATUS_NO_METER_CONFIGURED = "@text/status.no.meter.configured";
     public static final String STATUS_WAITING_FOR_LOGIN = "@text/status.waiting.for.login";
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_GENERIC);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_GENERIC);
 }
index 0af1180dc409aebd258da5dad2964ea758d653b8..8ca79b15939d86a45488fdb268a3e05992d8929d 100644 (file)
@@ -234,7 +234,6 @@ public class SolarEdgeGenericHandler extends BaseThingHandler implements SolarEd
     public @Nullable Channel getChannel(String groupId, String channelId) {
         ThingUID thingUID = this.getThing().getUID();
         ChannelGroupUID channelGroupUID = new ChannelGroupUID(thingUID, groupId);
-        Channel channel = getThing().getChannel(new ChannelUID(channelGroupUID, channelId));
-        return channel;
+        return getThing().getChannel(new ChannelUID(channelGroupUID, channelId));
     }
 }
index a9533ad9ece57de0da998a5a55ca74405d7af022..d11209f52f489ceb15fd98841fb5bcc44ad57361 100644 (file)
@@ -89,7 +89,6 @@ public class AggregateDataResponseTransformerPublicApi extends AbstractDataRespo
      */
     private final void fillAggregateData(AggregatePeriod period, String unit, MeterTelemetries meter, String channelId,
             Map<Channel, State> valueMap) {
-
         String group = convertPeriodToGroup(period);
         List<MeterTelemetry> values = meter.values;
 
index 4bee160fd65add7956de076f2347cdfe111ee95b..37a0c862bfd9aa0dd6327d75830a946a3bc497bf 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.solarlog.internal;
 
 import static org.openhab.binding.solarlog.internal.SolarLogBindingConstants.THING_SOLARLOG;
 
-import java.util.Collections;
 import java.util.Set;
 
 import org.openhab.binding.solarlog.internal.handler.SolarLogHandler;
@@ -36,7 +35,7 @@ import org.slf4j.LoggerFactory;
 @Component(configurationPid = "binding.solarlog", service = ThingHandlerFactory.class)
 public class SolarLogHandlerFactory extends BaseThingHandlerFactory {
     private final Logger logger = LoggerFactory.getLogger(SolarLogHandlerFactory.class);
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_SOLARLOG);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_SOLARLOG);
 
     @Override
     public boolean supportsThingType(ThingTypeUID thingTypeUID) {
index 67ce4926445e50e4e9cd204595b3eac53d2a303c..806591bdbd296da8539a06ee88fccb19384a95c3 100644 (file)
@@ -84,8 +84,8 @@ public class SolarwattDevicesDiscoveryService extends AbstractDiscoveryService
 
     @Override
     public void setThingHandler(final @Nullable ThingHandler handler) {
-        if (handler instanceof EnergyManagerHandler) {
-            this.energyManagerHandler = (EnergyManagerHandler) handler;
+        if (handler instanceof EnergyManagerHandler energyManagerHandler) {
+            this.energyManagerHandler = energyManagerHandler;
         }
     }
 
@@ -196,7 +196,7 @@ public class SolarwattDevicesDiscoveryService extends AbstractDiscoveryService
      * @return guid for openhab
      */
     private String rewriteGuid(String emGuid) {
-        return emGuid.replaceAll(":", "-");
+        return emGuid.replace(":", "-");
     }
 
     public class EnergymanagerScan implements Runnable {
index 3f43561b2a453069110a57b1146fbbadc88041fa..526938f943e673edda1c5c7a9c65682369bc33e5 100644 (file)
@@ -27,7 +27,7 @@ public class SolarwattTag {
 
     public SolarwattTag(String tagName) {
         this.tagName = tagName;
-        char chars[] = tagName.toCharArray();
+        char[] chars = tagName.toCharArray();
         chars[0] = Character.toLowerCase(chars[0]);
         this.channelName = new String(chars);
     }
index 28468df54c59f07e0da585bba875a715e1eddacb..756e27711bce1d9613bc96bfb0ee7db644e13b35 100644 (file)
@@ -22,9 +22,9 @@ import java.time.ZoneId;
 import java.time.ZonedDateTime;
 import java.time.temporal.ChronoUnit;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
+import java.util.Set;
 import java.util.concurrent.ScheduledFuture;
 import java.util.concurrent.TimeUnit;
 
@@ -113,7 +113,7 @@ public class EnergyManagerHandler extends BaseBridgeHandler {
      */
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(SolarwattDevicesDiscoveryService.class);
+        return Set.of(SolarwattDevicesDiscoveryService.class);
     }
 
     /**
index 91d85248dd2205b359f2c632754e2e14f29a13ed..8a100bc9376d63b333b4fb7410d0edffdf2533e8 100644 (file)
@@ -212,8 +212,8 @@ public class SimpleDeviceHandler extends BaseThingHandler {
         Bridge bridge = this.getBridge();
         if (bridge != null) {
             BridgeHandler bridgeHandler = bridge.getHandler();
-            if (bridgeHandler instanceof EnergyManagerHandler) {
-                return (EnergyManagerHandler) bridgeHandler;
+            if (bridgeHandler instanceof EnergyManagerHandler energyManagerHandler) {
+                return energyManagerHandler;
             } else {
                 // happens while dynamically reloading the binding
                 this.logger.warn("BridgeHandler is not implementing EnergyManagerHandler {}", bridgeHandler);
index e285cc9aae8daa920f5daa5b358513ba6690616f..f346c8311cb8e0af1d8e6f52150d8363359db2b0 100644 (file)
@@ -64,8 +64,8 @@ public class SomfyMyLinkDeviceDiscoveryService extends AbstractDiscoveryService
 
     @Override
     public void setThingHandler(@Nullable ThingHandler handler) {
-        if (handler instanceof SomfyMyLinkBridgeHandler) {
-            this.mylinkHandler = (SomfyMyLinkBridgeHandler) handler;
+        if (handler instanceof SomfyMyLinkBridgeHandler bridgeHandler) {
+            this.mylinkHandler = bridgeHandler;
         }
     }
 
index 62651cdd9ab41bd1d72450f06e15564684f16abf..4207f1c874aac737642c9d1b07fe9bb52441fba3 100644 (file)
@@ -25,9 +25,9 @@ import java.net.SocketTimeoutException;
 import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.List;
 import java.util.Objects;
+import java.util.Set;
 import java.util.concurrent.CompletableFuture;
 import java.util.concurrent.ExecutionException;
 import java.util.concurrent.ExecutorService;
@@ -145,7 +145,7 @@ public class SomfyMyLinkBridgeHandler extends BaseBridgeHandler {
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(SomfyMyLinkDeviceDiscoveryService.class);
+        return Set.of(SomfyMyLinkDeviceDiscoveryService.class);
     }
 
     private boolean validConfiguration(@Nullable SomfyMyLinkConfiguration config) {
index 33f26a65d670c49e340e9319aa5d9fce04d2e5ae..d1de68ee1a7f84c156342eba194948b523459a8f 100644 (file)
@@ -62,8 +62,8 @@ public class SomfyTahomaCommandExtension extends AbstractConsoleCommandExtension
             SomfyTahomaBridgeHandler bridgeHandler = null;
             if (thing != null) {
                 thingHandler = thing.getHandler();
-                if (thingHandler instanceof SomfyTahomaBridgeHandler) {
-                    bridgeHandler = (SomfyTahomaBridgeHandler) thingHandler;
+                if (thingHandler instanceof SomfyTahomaBridgeHandler tahomaBridgeHandler) {
+                    bridgeHandler = tahomaBridgeHandler;
                 }
             }
             if (thing == null) {
index bd8fb354b643adcefd4a5341334deb364d4a46ee..54f55a4b762b5df6780b4e5cfa924db002ff71ea 100644 (file)
@@ -79,8 +79,8 @@ public class SomfyTahomaItemDiscoveryService extends AbstractDiscoveryService
 
     @Override
     public void setThingHandler(@NonNullByDefault({}) ThingHandler handler) {
-        if (handler instanceof SomfyTahomaBridgeHandler) {
-            bridgeHandler = (SomfyTahomaBridgeHandler) handler;
+        if (handler instanceof SomfyTahomaBridgeHandler tahomaBridgeHandler) {
+            bridgeHandler = tahomaBridgeHandler;
         }
     }
 
index dffde476fa0d2de0a6e33211199f098f616be4f3..8f0f177adae9eeaaea45f1dd5ba89aee4058c7d4 100644 (file)
@@ -475,20 +475,19 @@ public abstract class SomfyTahomaBaseThingHandler extends BaseThingHandler {
     }
 
     public int toInteger(Command command) {
-        return (command instanceof DecimalType) ? ((DecimalType) command).intValue() : 0;
+        return (command instanceof DecimalType dateTimeCommand) ? dateTimeCommand.intValue() : 0;
     }
 
     public @Nullable BigDecimal toTemperature(Command command) {
         BigDecimal temperature = null;
-        if (command instanceof QuantityType<?>) {
-            QuantityType<?> quantity = (QuantityType<?>) command;
-            QuantityType<?> convertedQuantity = quantity.toUnit(getTemperatureUnit());
+        if (command instanceof QuantityType<?> quantityCommand) {
+            QuantityType<?> convertedQuantity = quantityCommand.toUnit(getTemperatureUnit());
             if (convertedQuantity != null) {
-                quantity = convertedQuantity;
+                quantityCommand = convertedQuantity;
             }
-            temperature = quantity.toBigDecimal();
-        } else if (command instanceof DecimalType) {
-            temperature = ((DecimalType) command).toBigDecimal();
+            temperature = quantityCommand.toBigDecimal();
+        } else if (command instanceof DecimalType decimalCommand) {
+            temperature = decimalCommand.toBigDecimal();
         }
         return temperature;
     }
index 664530bf93e2f6192eb0fa34076929965fd5c794..d40841b59b16f63c6a3dbed12d67eb9b535b06ec 100644 (file)
@@ -21,10 +21,10 @@ import java.nio.charset.StandardCharsets;
 import java.time.Duration;
 import java.time.Instant;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 import java.util.concurrent.ConcurrentLinkedQueue;
 import java.util.concurrent.ExecutionException;
 import java.util.concurrent.ScheduledFuture;
@@ -466,7 +466,7 @@ public class SomfyTahomaBridgeHandler extends BaseBridgeHandler {
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(SomfyTahomaItemDiscoveryService.class);
+        return Set.of(SomfyTahomaItemDiscoveryService.class);
     }
 
     @Override
@@ -677,7 +677,7 @@ public class SomfyTahomaBridgeHandler extends BaseBridgeHandler {
 
     private void unregisterExecution(String execId) {
         if (executions.containsValue(execId)) {
-            executions.values().removeAll(Collections.singleton(execId));
+            executions.values().removeAll(Set.of(execId));
         } else {
             logger.debug("Cannot remove execution id: {}, because it is not registered", execId);
         }
index 88a86bbef5f4d086eb4290756827d62a57e0ecaf..b5a8f459e8769b79b8e1bf08d8fd29121a864858 100644 (file)
@@ -44,8 +44,8 @@ public class SomfyTahomaExteriorHeatingSystemHandler extends SomfyTahomaBaseThin
             Channel chLevel = thing.getChannel(HEATING_LEVEL);
             if (chLevel != null) {
                 State newState = parseTahomaState(state);
-                if (newState != null && newState instanceof PercentType) {
-                    int value = ((PercentType) newState).intValue();
+                if (newState instanceof PercentType percentState) {
+                    int value = percentState.intValue();
                     PercentType inverted = new PercentType(100 - value);
                     updateState(chLevel.getUID(), inverted);
                 }
index 449f9127ebe9294bd9ca5ff166e65a27404367ba..437af5088f12f18246ee6aad16de100bcc1f0e00 100644 (file)
@@ -83,14 +83,14 @@ public class SomfyTahomaWaterHeatingSystemHandler extends SomfyTahomaBaseThingHa
 
             Object relaunchValue = data.get("relaunch");
             if (relaunchValue != null) {
-                this.boostMode = relaunchValue.toString().equalsIgnoreCase("on");
+                this.boostMode = "on".equalsIgnoreCase(relaunchValue.toString());
                 logger.debug("Boost Value: {}", this.boostMode);
                 updateState(BOOST_MODE, OnOffType.from(this.boostMode));
             }
 
             Object awayValue = data.get("absence");
             if (awayValue != null) {
-                this.awayMode = awayValue.toString().equalsIgnoreCase("on");
+                this.awayMode = "on".equalsIgnoreCase(awayValue.toString());
                 logger.debug("Away Value: {}", this.awayMode);
                 updateState(AWAY_MODE, OnOffType.from(this.awayMode));
             }
index c56893043ae32ce6247232f26f2d486dda5f6c3e..18856b60b71b2c0bb74ea28ad83d3197331407b6 100644 (file)
@@ -396,8 +396,8 @@ public class SomneoHandler extends BaseThingHandler {
                     }
                     break;
                 case CHANNEL_ALARM_SOUND:
-                    if (command instanceof StringType) {
-                        connector.setAlarmSound(alarmPosition, (StringType) command);
+                    if (command instanceof StringType stringCommand) {
+                        connector.setAlarmSound(alarmPosition, stringCommand);
                     }
                     break;
                 case CHANNEL_ALARM_VOLUME:
index c01378f4b0e3fc1b4a9ac3c5f43f2b97cbdc0ab0..58e43a2fdfc48d4f54ca941227f4205d0627bcce 100644 (file)
@@ -510,7 +510,7 @@ public class SomneoHttpConnector {
             logger.debug("Method failed: {}", statusLine);
         }
 
-        final String encoding = response.getEncoding() != null ? response.getEncoding().replaceAll("\"", "").trim()
+        final String encoding = response.getEncoding() != null ? response.getEncoding().replace("\"", "").trim()
                 : StandardCharsets.UTF_8.name();
 
         try {
index 4d305d6b853ca8a4dc18600f2d42bd7363bf8333..c4d2532764dd3835d87e98c91cf6feb772be67fc 100644 (file)
@@ -1823,8 +1823,8 @@ public class ZonePlayerHandler extends BaseThingHandler implements UpnpIOPartici
                 newValue = "100";
             } else if (command == OnOffType.OFF) {
                 newValue = "0";
-            } else if (command instanceof DecimalType) {
-                newValue = String.valueOf(((DecimalType) command).intValue());
+            } else if (command instanceof DecimalType decimalCommand) {
+                newValue = String.valueOf(decimalCommand.intValue());
             } else {
                 return;
             }
@@ -1880,8 +1880,8 @@ public class ZonePlayerHandler extends BaseThingHandler implements UpnpIOPartici
             } else if (command == IncreaseDecreaseType.DECREASE && currentValue != null) {
                 int i = Integer.valueOf(currentValue);
                 newValue = String.valueOf(Math.max(minValue, i - 1));
-            } else if (command instanceof DecimalType) {
-                newValue = String.valueOf(((DecimalType) command).intValue());
+            } else if (command instanceof DecimalType decimalCommand) {
+                newValue = String.valueOf(decimalCommand.intValue());
             }
         }
         return newValue;
@@ -2317,8 +2317,8 @@ public class ZonePlayerHandler extends BaseThingHandler implements UpnpIOPartici
             Thing thing = localThingRegistry.get(new ThingUID(supportedThingType, remotePlayerName));
             if (thing != null) {
                 ThingHandler handler = thing.getHandler();
-                if (handler instanceof ZonePlayerHandler) {
-                    return (ZonePlayerHandler) handler;
+                if (handler instanceof ZonePlayerHandler zonePlayerHandler) {
+                    return zonePlayerHandler;
                 }
             }
         }
@@ -2326,8 +2326,8 @@ public class ZonePlayerHandler extends BaseThingHandler implements UpnpIOPartici
             if (SonosBindingConstants.SUPPORTED_THING_TYPES_UIDS.contains(aThing.getThingTypeUID())
                     && aThing.getConfiguration().get(ZonePlayerConfiguration.UDN).equals(remotePlayerName)) {
                 ThingHandler handler = aThing.getHandler();
-                if (handler instanceof ZonePlayerHandler) {
-                    return (ZonePlayerHandler) handler;
+                if (handler instanceof ZonePlayerHandler zonePlayerHandler) {
+                    return zonePlayerHandler;
                 }
             }
         }
@@ -2462,8 +2462,8 @@ public class ZonePlayerHandler extends BaseThingHandler implements UpnpIOPartici
     }
 
     public void snoozeAlarm(Command command) {
-        if (isAlarmRunning() && command instanceof DecimalType) {
-            int minutes = ((DecimalType) command).intValue();
+        if (isAlarmRunning() && command instanceof DecimalType decimalCommand) {
+            int minutes = decimalCommand.intValue();
 
             Map<String, String> inputs = new HashMap<>();
 
@@ -3164,11 +3164,11 @@ public class ZonePlayerHandler extends BaseThingHandler implements UpnpIOPartici
     }
 
     public void playTrack(Command command) {
-        if (command instanceof DecimalType) {
+        if (command instanceof DecimalType decimalCommand) {
             try {
                 ZonePlayerHandler coordinator = getCoordinatorHandler();
 
-                String trackNumber = String.valueOf(((DecimalType) command).intValue());
+                String trackNumber = String.valueOf(decimalCommand.intValue());
 
                 coordinator.setCurrentURI(QUEUE_URI + coordinator.getUDN() + "#0", "");
 
@@ -3315,9 +3315,9 @@ public class ZonePlayerHandler extends BaseThingHandler implements UpnpIOPartici
      * Use empty String "" to switch the sleep timer off
      */
     public void setSleepTimer(Command command) {
-        if (command instanceof DecimalType) {
+        if (command instanceof DecimalType decimalCommand) {
             this.service.invokeAction(this, SERVICE_AV_TRANSPORT, ACTION_CONFIGURE_SLEEP_TIMER, Map.of("InstanceID",
-                    "0", "NewSleepTimerDuration", sleepSecondsToTimeStr(((DecimalType) command).longValue())));
+                    "0", "NewSleepTimerDuration", sleepSecondsToTimeStr(decimalCommand.longValue())));
         }
     }
 
index 4600b1824fff5f376aa4eb3de993040f26601d84..7833a4a4f337abc75a794c13df39fd665e680897 100644 (file)
@@ -32,11 +32,11 @@ public class StringUtils {
      * ' - &apos;
      */
     public static String escapeXml(String xml) {
-        xml = xml.replaceAll("&", "&amp;");
-        xml = xml.replaceAll("<", "&lt;");
-        xml = xml.replaceAll(">", "&gt;");
-        xml = xml.replaceAll("\"", "&quot;");
-        xml = xml.replaceAll("'", "&apos;");
+        xml = xml.replace("&", "&amp;");
+        xml = xml.replace("<", "&lt;");
+        xml = xml.replace(">", "&gt;");
+        xml = xml.replace("\"", "&quot;");
+        xml = xml.replace("'", "&apos;");
         return xml;
     }
 
@@ -50,11 +50,11 @@ public class StringUtils {
      * ' - &apos;
      */
     public static String unEscapeXml(String xml) {
-        xml = xml.replaceAll("&amp;", "&");
-        xml = xml.replaceAll("&lt;", "<");
-        xml = xml.replaceAll("&gt;", ">");
-        xml = xml.replaceAll("&quot;", "\"");
-        xml = xml.replaceAll("&apos;", "'");
+        xml = xml.replace("&amp;", "&");
+        xml = xml.replace("&lt;", "<");
+        xml = xml.replace("&gt;", ">");
+        xml = xml.replace("&quot;", "\"");
+        xml = xml.replace("&apos;", "'");
         return xml;
     }
 }
index f0b3bc77c636b27bb4308f86d41f979b743800d6..a10448559e6ec36991fba8a10d9cfb751cc79900 100644 (file)
@@ -252,9 +252,9 @@ abstract class SonyAudioHandler extends BaseThingHandler implements SonyAudioEve
                 updateState(channelUID, new StringType(result.get("soundField")));
             }
         }
-        if (command instanceof StringType) {
+        if (command instanceof StringType stringCommand) {
             logger.debug("handleSoundSettings set {}", command);
-            connection.setSoundSettings("soundField", ((StringType) command).toString());
+            connection.setSoundSettings("soundField", stringCommand.toString());
         }
     }
 
@@ -266,9 +266,9 @@ abstract class SonyAudioHandler extends BaseThingHandler implements SonyAudioEve
                 updateState(channelUID, new StringType(result.get("nightMode")));
             }
         }
-        if (command instanceof OnOffType) {
+        if (command instanceof OnOffType onOffCommand) {
             logger.debug("handleNightMode set {}", command);
-            connection.setSoundSettings("nightMode", ((OnOffType) command) == OnOffType.ON ? "on" : "off");
+            connection.setSoundSettings("nightMode", onOffCommand == OnOffType.ON ? "on" : "off");
         }
     }
 
@@ -286,9 +286,9 @@ abstract class SonyAudioHandler extends BaseThingHandler implements SonyAudioEve
                 throw new IOException(ex.getCause());
             }
         }
-        if (command instanceof OnOffType) {
+        if (command instanceof OnOffType onOffCommand) {
             logger.debug("handlePowerCommand set {} {}", zone, command);
-            connection.setPower(((OnOffType) command) == OnOffType.ON, zone);
+            connection.setPower(onOffCommand == OnOffType.ON, zone);
         }
     }
 
@@ -338,18 +338,18 @@ abstract class SonyAudioHandler extends BaseThingHandler implements SonyAudioEve
                 throw new IOException(ex.getCause());
             }
         }
-        if (command instanceof PercentType) {
+        if (command instanceof PercentType percentCommand) {
             logger.debug("handleVolumeCommand PercentType set {} {}", zone, command);
-            connection.setVolume(((PercentType) command).intValue(), zone);
+            connection.setVolume(percentCommand.intValue(), zone);
         }
         if (command instanceof IncreaseDecreaseType) {
             logger.debug("handleVolumeCommand IncreaseDecreaseType set {} {}", zone, command);
             String change = command == IncreaseDecreaseType.INCREASE ? "+1" : "-1";
             connection.setVolume(change, zone);
         }
-        if (command instanceof OnOffType) {
+        if (command instanceof OnOffType onOffCommand) {
             logger.debug("handleVolumeCommand OnOffType set {} {}", zone, command);
-            connection.setMute(((OnOffType) command) == OnOffType.ON, zone);
+            connection.setMute(onOffCommand == OnOffType.ON, zone);
         }
     }
 
@@ -369,9 +369,9 @@ abstract class SonyAudioHandler extends BaseThingHandler implements SonyAudioEve
                 throw new IOException(ex.getCause());
             }
         }
-        if (command instanceof OnOffType) {
+        if (command instanceof OnOffType onOffCommand) {
             logger.debug("handleMuteCommand set {} {}", zone, command);
-            connection.setMute(((OnOffType) command) == OnOffType.ON, zone);
+            connection.setMute(onOffCommand == OnOffType.ON, zone);
         }
     }
 
@@ -382,8 +382,8 @@ abstract class SonyAudioHandler extends BaseThingHandler implements SonyAudioEve
         if (command instanceof RefreshType) {
             updateState(channelUID, new DecimalType(currentRadioStation));
         }
-        if (command instanceof DecimalType) {
-            currentRadioStation = ((DecimalType) command).intValue();
+        if (command instanceof DecimalType decimalCommand) {
+            currentRadioStation = decimalCommand.intValue();
             String radioCommand = "radio:fm?contentId=" + currentRadioStation;
 
             for (int i = 1; i <= 4; i++) {
@@ -399,8 +399,8 @@ abstract class SonyAudioHandler extends BaseThingHandler implements SonyAudioEve
         if (command instanceof RefreshType) {
             updateState(channelUID, new StringType(""));
         }
-        if (command instanceof StringType) {
-            switch (((StringType) command).toString()) {
+        if (command instanceof StringType stringCommand) {
+            switch (stringCommand.toString()) {
                 case "fwdSeeking":
                     connection.radioSeekFwd();
                     break;
@@ -420,16 +420,16 @@ abstract class SonyAudioHandler extends BaseThingHandler implements SonyAudioEve
         String path = (String) config.get(SonyAudioBindingConstants.SCALAR_PATH_PARAMETER);
         Object port_o = config.get(SonyAudioBindingConstants.SCALAR_PORT_PARAMETER);
         int port = 10000;
-        if (port_o instanceof BigDecimal) {
-            port = ((BigDecimal) port_o).intValue();
+        if (port_o instanceof BigDecimal decimalValue) {
+            port = decimalValue.intValue();
         } else if (port_o instanceof Integer) {
             port = (int) port_o;
         }
 
         Object refresh_o = config.get(SonyAudioBindingConstants.REFRESHINTERVAL);
         int refresh = 0;
-        if (refresh_o instanceof BigDecimal) {
-            refresh = ((BigDecimal) refresh_o).intValue();
+        if (refresh_o instanceof BigDecimal decimalValue) {
+            refresh = decimalValue.intValue();
         } else if (refresh_o instanceof Integer) {
             refresh = (int) refresh_o;
         }
index 2c625e0991c48375aeb3668315fbc384427df1e2..7fdaf5d49c6a0d00bd4b2a002d5304c58b76123f 100644 (file)
@@ -91,7 +91,7 @@ public class SrsZr5Handler extends SonyAudioHandler {
                 if (result != null) {
                     logger.debug("SrsZr5Handler Updating sound field to {} {}", result.get("clearAudio"),
                             result.get("soundField"));
-                    if (result.get("clearAudio").equalsIgnoreCase("on")) {
+                    if ("on".equalsIgnoreCase(result.get("clearAudio"))) {
                         updateState(channelUID, new StringType("clearAudio"));
                     } else {
                         updateState(channelUID, new StringType(result.get("soundField")));
@@ -101,11 +101,11 @@ public class SrsZr5Handler extends SonyAudioHandler {
                 throw new IOException(ex.getCause());
             }
         }
-        if (command instanceof StringType) {
-            if (((StringType) command).toString().equalsIgnoreCase("clearAudio")) {
+        if (command instanceof StringType stringCommand) {
+            if ("clearAudio".equalsIgnoreCase(stringCommand.toString())) {
                 connection.setSoundSettings("clearAudio", "on");
             } else {
-                connection.setSoundSettings("soundField", ((StringType) command).toString());
+                connection.setSoundSettings("soundField", stringCommand.toString());
             }
         }
     }
index 64156adb92560104eef845d9d3b35330d85b98bf..bd62eadf46f335a4b882281c5d5330867c27e1a2 100644 (file)
@@ -127,7 +127,7 @@ public class StrDn1080Handler extends SonyAudioHandler {
                 if (result != null) {
                     logger.debug("StrDn1080Handler Updateing sound field to {} {}", result.get("pureDirect"),
                             result.get("soundField"));
-                    if (result.get("pureDirect").equalsIgnoreCase("on")) {
+                    if ("on".equalsIgnoreCase(result.get("pureDirect"))) {
                         updateState(channelUID, new StringType("pureDirect"));
                     } else {
                         updateState(channelUID, new StringType(result.get("soundField")));
@@ -137,11 +137,11 @@ public class StrDn1080Handler extends SonyAudioHandler {
                 throw new IOException(ex.getCause());
             }
         }
-        if (command instanceof StringType) {
-            if (((StringType) command).toString().equalsIgnoreCase("pureDirect")) {
+        if (command instanceof StringType stringCommand) {
+            if ("pureDirect".equalsIgnoreCase(stringCommand.toString())) {
                 connection.setSoundSettings("pureDirect", "on");
             } else {
-                connection.setSoundSettings("soundField", ((StringType) command).toString());
+                connection.setSoundSettings("soundField", stringCommand.toString());
             }
         }
     }
index fee53a1bb182bdbc300dcacdeb34489419598976..52a3552105bd0c37bc4682384ed64cc1d7751c50 100644 (file)
@@ -118,7 +118,7 @@ public class SonyAudioConnection implements SonyAudioClientSocketEventListener {
             }
         }
 
-        if (json.get("method").getAsString().equalsIgnoreCase("notifyPlayingContentInfo")) {
+        if ("notifyPlayingContentInfo".equalsIgnoreCase(json.get("method").getAsString())) {
             SonyAudioInput input = new SonyAudioInput();
             input.input = param.get("uri").getAsString();
             if (param.has("broadcastFreq")) {
@@ -130,19 +130,19 @@ public class SonyAudioConnection implements SonyAudioClientSocketEventListener {
             listener.updateSeekStation("");
         }
 
-        if (json.get("method").getAsString().equalsIgnoreCase("notifyVolumeInformation")) {
+        if ("notifyVolumeInformation".equalsIgnoreCase(json.get("method").getAsString())) {
             SonyAudioVolume volume = new SonyAudioVolume();
 
             int rawVolume = param.get("volume").getAsInt();
             volume.volume = Math.round(100 * (rawVolume - min_volume) / (max_volume - min_volume));
 
-            volume.mute = param.get("mute").getAsString().equalsIgnoreCase("on");
+            volume.mute = "on".equalsIgnoreCase(param.get("mute").getAsString());
             listener.updateVolume(zone, volume);
         }
 
-        if (json.get("method").getAsString().equalsIgnoreCase("notifyPowerStatus")) {
+        if ("notifyPowerStatus".equalsIgnoreCase(json.get("method").getAsString())) {
             String power = param.get("status").getAsString();
-            listener.updatePowerStatus(zone, power.equalsIgnoreCase("active"));
+            listener.updatePowerStatus(zone, "active".equalsIgnoreCase(power));
         }
 
         listener.updateConnectionState(true);
@@ -193,7 +193,7 @@ public class SonyAudioConnection implements SonyAudioClientSocketEventListener {
 
                 for (Iterator<Notification> iter = notifications.disabled.listIterator(); iter.hasNext();) {
                     Notification a = iter.next();
-                    if (a.name.equalsIgnoreCase("notifyPlayingContentInfo")) {
+                    if ("notifyPlayingContentInfo".equalsIgnoreCase(a.name)) {
                         notifications.enabled.add(a);
                         iter.remove();
                     }
@@ -209,7 +209,7 @@ public class SonyAudioConnection implements SonyAudioClientSocketEventListener {
 
                 for (Iterator<Notification> iter = notifications.disabled.listIterator(); iter.hasNext();) {
                     Notification a = iter.next();
-                    if (a.name.equalsIgnoreCase("notifyVolumeInformation")) {
+                    if ("notifyVolumeInformation".equalsIgnoreCase(a.name)) {
                         notifications.enabled.add(a);
                         iter.remove();
                     }
@@ -225,7 +225,7 @@ public class SonyAudioConnection implements SonyAudioClientSocketEventListener {
 
                 for (Iterator<Notification> iter = notifications.disabled.listIterator(); iter.hasNext();) {
                     Notification a = iter.next();
-                    if (a.name.equalsIgnoreCase("notifyPowerStatus")) {
+                    if ("notifyPowerStatus".equalsIgnoreCase(a.name)) {
                         notifications.enabled.add(a);
                         iter.remove();
                     }
@@ -294,7 +294,7 @@ public class SonyAudioConnection implements SonyAudioClientSocketEventListener {
                     JsonObject terminal = terminals.next().getAsJsonObject();
                     String uri = terminal.get("uri").getAsString();
                     if (uri.equalsIgnoreCase("extOutput:zone?zone=" + Integer.toString(zone))) {
-                        return terminal.get("active").getAsString().equalsIgnoreCase("active") ? true : false;
+                        return "active".equalsIgnoreCase(terminal.get("active").getAsString()) ? true : false;
                     }
                 }
             }
@@ -310,7 +310,7 @@ public class SonyAudioConnection implements SonyAudioClientSocketEventListener {
 
             if (element != null && element.isJsonArray()) {
                 String powerStatus = element.getAsJsonArray().get(0).getAsJsonObject().get("status").getAsString();
-                return powerStatus.equalsIgnoreCase("active") ? true : false;
+                return "active".equalsIgnoreCase(powerStatus) ? true : false;
             }
             throw new IOException("Unexpected responses: Unable to parse GetPowerStatus response message");
         }
@@ -434,7 +434,7 @@ public class SonyAudioConnection implements SonyAudioClientSocketEventListener {
             ret.volume = vol;
 
             String mute = result.get("mute").getAsString();
-            ret.mute = mute.equalsIgnoreCase("on") ? true : false;
+            ret.mute = "on".equalsIgnoreCase(mute) ? true : false;
 
             return ret;
         }
index 07ffde54ae7c0cea3bf8acb445a201a768974f49..006c2925d5c5afba7253030cdf61bfb1c04c673d 100644 (file)
@@ -156,46 +156,46 @@ public class SonyProjectorHandler extends BaseThingHandler {
                         refreshChannel(CHANNEL_XVCOLOR, true);
                         break;
                     case CHANNEL_CONTRAST:
-                        if (command instanceof DecimalType) {
-                            connector.setContrast(((DecimalType) command).intValue());
-                        } else if (command instanceof PercentType) {
-                            connector.setContrast(((PercentType) command).intValue());
+                        if (command instanceof DecimalType decimalCommand) {
+                            connector.setContrast(decimalCommand.intValue());
+                        } else if (command instanceof PercentType percentCommand) {
+                            connector.setContrast(percentCommand.intValue());
                         } else {
                             throw new SonyProjectorException("Invalid command value");
                         }
                         break;
                     case CHANNEL_BRIGHTNESS:
-                        if (command instanceof DecimalType) {
-                            connector.setBrightness(((DecimalType) command).intValue());
-                        } else if (command instanceof PercentType) {
-                            connector.setBrightness(((PercentType) command).intValue());
+                        if (command instanceof DecimalType decimalCommand) {
+                            connector.setBrightness(decimalCommand.intValue());
+                        } else if (command instanceof PercentType percentCommand2) {
+                            connector.setBrightness(percentCommand2.intValue());
                         } else {
                             throw new SonyProjectorException("Invalid command value");
                         }
                         break;
                     case CHANNEL_COLOR:
-                        if (command instanceof DecimalType) {
-                            connector.setColor(((DecimalType) command).intValue());
-                        } else if (command instanceof PercentType) {
-                            connector.setColor(((PercentType) command).intValue());
+                        if (command instanceof DecimalType decimalCommand) {
+                            connector.setColor(decimalCommand.intValue());
+                        } else if (command instanceof PercentType percentCommand3) {
+                            connector.setColor(percentCommand3.intValue());
                         } else {
                             throw new SonyProjectorException("Invalid command value");
                         }
                         break;
                     case CHANNEL_HUE:
-                        if (command instanceof DecimalType) {
-                            connector.setHue(((DecimalType) command).intValue());
-                        } else if (command instanceof PercentType) {
-                            connector.setHue(((PercentType) command).intValue());
+                        if (command instanceof DecimalType decimalCommand) {
+                            connector.setHue(decimalCommand.intValue());
+                        } else if (command instanceof PercentType percentCommand4) {
+                            connector.setHue(percentCommand4.intValue());
                         } else {
                             throw new SonyProjectorException("Invalid command value");
                         }
                         break;
                     case CHANNEL_SHARPNESS:
-                        if (command instanceof DecimalType) {
-                            connector.setSharpness(((DecimalType) command).intValue());
-                        } else if (command instanceof PercentType) {
-                            connector.setSharpness(((PercentType) command).intValue());
+                        if (command instanceof DecimalType decimalCommand) {
+                            connector.setSharpness(decimalCommand.intValue());
+                        } else if (command instanceof PercentType percentCommand5) {
+                            connector.setSharpness(percentCommand5.intValue());
                         } else {
                             throw new SonyProjectorException("Invalid command value");
                         }
@@ -208,10 +208,10 @@ public class SonyProjectorHandler extends BaseThingHandler {
                         refreshChannel(CHANNEL_IRIS_MANUAL, true);
                         break;
                     case CHANNEL_IRIS_MANUAL:
-                        if (command instanceof DecimalType) {
-                            connector.setIrisManual(((DecimalType) command).intValue());
-                        } else if (command instanceof PercentType) {
-                            connector.setIrisManual(((PercentType) command).intValue());
+                        if (command instanceof DecimalType decimalCommand) {
+                            connector.setIrisManual(decimalCommand.intValue());
+                        } else if (command instanceof PercentType percentCommand6) {
+                            connector.setIrisManual(percentCommand6.intValue());
                         } else {
                             throw new SonyProjectorException("Invalid command value");
                         }
index 5ade569beca2e922925bffb4d0ca20b16dc54950..0c40fbe39765f3202115e0276f6869d56d651dbe 100644 (file)
@@ -263,8 +263,7 @@ public class SoulissGatewayDiscovery extends AbstractDiscoveryService
 
     @Override
     public void setThingHandler(ThingHandler handler) {
-        if (handler instanceof SoulissGatewayHandler) {
-            SoulissGatewayHandler localGwHandler = (SoulissGatewayHandler) handler;
+        if (handler instanceof SoulissGatewayHandler localGwHandler) {
             this.soulissGwHandler = localGwHandler;
             localGwHandler.discoverResult = this;
         }
index 476d5e3a0ba3c6e91051772c1fadf4fc5f8feac9..19986eebea398cfc2c5cabf5ccfa028c75d5a019 100644 (file)
@@ -13,7 +13,7 @@
 package org.openhab.binding.souliss.internal.handler;
 
 import java.util.Collection;
-import java.util.Collections;
+import java.util.Set;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 import java.util.concurrent.Future;
@@ -94,7 +94,7 @@ public class SoulissGatewayHandler extends BaseBridgeHandler {
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(SoulissGatewayDiscovery.class);
+        return Set.of(SoulissGatewayDiscovery.class);
     }
 
     @Override
index 3a8f52177c420d19a8540a39a1da56bf68ab360c..e30c80c0e0105343cf250714d6435d4b1e1aa272 100644 (file)
@@ -51,12 +51,12 @@ public class SoulissT13Handler extends SoulissGenericHandler {
     public void setState(@Nullable PrimitiveType state) {
         super.setLastStatusStored();
         if (state != null) {
-            if (state instanceof OnOffType) {
-                this.updateState(SoulissBindingConstants.STATEONOFF_CHANNEL, (OnOffType) state);
+            if (state instanceof OnOffType onOffCommand) {
+                this.updateState(SoulissBindingConstants.STATEONOFF_CHANNEL, onOffCommand);
             }
 
-            if (state instanceof OpenClosedType) {
-                this.updateState(SoulissBindingConstants.STATEOPENCLOSE_CHANNEL, (OpenClosedType) state);
+            if (state instanceof OpenClosedType openClosedCommand) {
+                this.updateState(SoulissBindingConstants.STATEOPENCLOSE_CHANNEL, openClosedCommand);
             }
         }
     }
index c6822f9a63c13eb21bcade9306514006968313df..d3f4202ea4e3c6ed176131e4d8a66526ec6f02f8 100644 (file)
@@ -126,9 +126,7 @@ public class SoulissT16Handler extends SoulissGenericHandler {
                     break;
 
                 case SoulissBindingConstants.LED_COLOR_CHANNEL:
-                    if (command instanceof HSBType) {
-                        HSBType localHsbState = (HSBType) command;
-
+                    if (command instanceof HSBType localHsbState) {
                         updateState(SoulissBindingConstants.DIMMER_BRIGHTNESS_CHANNEL,
                                 PercentType.valueOf(hsbState.getBrightness().toString()));
                         commandSendRgb(SoulissProtocolConstants.SOULISS_T1N_SET,
index cb1fc1d47c75636dec743404f51461619f82be4a..3b56b1586025ac3b5945ad4dfba24e95715d3398 100644 (file)
@@ -79,10 +79,10 @@ public class SoulissT19Handler extends SoulissGenericHandler {
                     break;
 
                 case SoulissBindingConstants.DIMMER_BRIGHTNESS_CHANNEL:
-                    if (command instanceof PercentType) {
-                        updateState(SoulissBindingConstants.DIMMER_BRIGHTNESS_CHANNEL, (PercentType) command);
+                    if (command instanceof PercentType percentCommand) {
+                        updateState(SoulissBindingConstants.DIMMER_BRIGHTNESS_CHANNEL, percentCommand);
                         commandSEND(SoulissProtocolConstants.SOULISS_T1N_SET,
-                                (byte) (((PercentType) command).shortValue() * 255.00 / 100.00));
+                                (byte) (percentCommand.shortValue() * 255.00 / 100.00));
                     } else if (command.equals(OnOffType.ON)) {
                         commandSEND(SoulissProtocolConstants.SOULISS_T1N_ON_CMD);
 
index ebfd78bbcd3f7129c513408bcc935d8ca6f99591..d0112b2a50f2b0a306365028fa49b7879434f4d7 100644 (file)
@@ -88,8 +88,8 @@ public class SoulissT22Handler extends SoulissGenericHandler {
     }
 
     public void setState(PrimitiveType state) {
-        if (state instanceof PercentType) {
-            this.updateState(SoulissBindingConstants.ROLLERSHUTTER_CHANNEL, (PercentType) state);
+        if (state instanceof PercentType percentCommand) {
+            this.updateState(SoulissBindingConstants.ROLLERSHUTTER_CHANNEL, percentCommand);
 
         }
     }
index 63eaad822ec3fe3f74221a8633083f4ed15e15a3..967b09be622457c252651e0780f68afb57ad14bf 100644 (file)
@@ -119,8 +119,8 @@ public class SoulissT31Handler extends SoulissGenericHandler {
                     }
                     break;
                 case SoulissBindingConstants.T31_SETPOINT_CHANNEL:
-                    if (command instanceof QuantityType<?>) {
-                        int uu = HalfFloatUtils.fromFloat(((QuantityType<?>) command).floatValue());
+                    if (command instanceof QuantityType<?> quantityCommand) {
+                        int uu = HalfFloatUtils.fromFloat(quantityCommand.floatValue());
                         byte b2 = (byte) (uu >> 8);
                         byte b1 = (byte) uu;
                         // setpoint command
@@ -151,7 +151,7 @@ public class SoulissT31Handler extends SoulissGenericHandler {
         this.updateState(SoulissBindingConstants.T31_BUTTON_CHANNEL, OnOffType.OFF);
 
         super.setLastStatusStored();
-        if (state instanceof StringType) {
+        if (state instanceof StringType stringState) {
             switch (state.toString()) {
                 case SoulissBindingConstants.T31_FANLOW_MESSAGE_FAN_CHANNEL:
                 case SoulissBindingConstants.T31_FANMEDIUM_MESSAGE_FAN_CHANNEL:
@@ -159,48 +159,48 @@ public class SoulissT31Handler extends SoulissGenericHandler {
                 case SoulissBindingConstants.T31_FANAUTO_MESSAGE_FAN_CHANNEL:
                 case SoulissBindingConstants.T31_FANOFF_MESSAGE_FAN_CHANNEL:
                     if (!fanStateValue.equals(state)) {
-                        this.updateState(SoulissBindingConstants.T31_FAN_CHANNEL, (StringType) state);
-                        fanStateValue = (StringType) state;
+                        this.updateState(SoulissBindingConstants.T31_FAN_CHANNEL, stringState);
+                        fanStateValue = stringState;
                     }
                     break;
 
                 case SoulissBindingConstants.T31_HEATINGMODE_MESSAGE_MODE_CHANNEL:
                     if (!modeStateValue.equals(state)) {
-                        this.updateState(SoulissBindingConstants.T31_MODE_CHANNEL, (StringType) state);
-                        modeStateValue = (StringType) state;
+                        this.updateState(SoulissBindingConstants.T31_MODE_CHANNEL, stringState);
+                        modeStateValue = stringState;
                     }
                     break;
 
                 case SoulissBindingConstants.T31_COOLINGMODE_MESSAGE_MODE_CHANNEL:
                     if (!modeStateValue.equals(state)) {
-                        this.updateState(SoulissBindingConstants.T31_MODE_CHANNEL, (StringType) state);
-                        modeStateValue = (StringType) state;
+                        this.updateState(SoulissBindingConstants.T31_MODE_CHANNEL, stringState);
+                        modeStateValue = stringState;
                     }
                     break;
 
                 case SoulissBindingConstants.T31_OFF_MESSAGE_SYSTEM_CHANNEL:
                     if (!powerState.equals(state)) {
                         this.updateState(SoulissBindingConstants.T31_SYSTEM_CHANNEL, OnOffType.OFF);
-                        powerState = (StringType) state;
+                        powerState = stringState;
                     }
                     break;
                 case SoulissBindingConstants.T31_ON_MESSAGE_SYSTEM_CHANNEL:
                     if (!powerState.equals(state)) {
                         this.updateState(SoulissBindingConstants.T31_SYSTEM_CHANNEL, OnOffType.ON);
-                        powerState = (StringType) state;
+                        powerState = stringState;
                     }
                     break;
 
                 case SoulissBindingConstants.T31_ON_MESSAGE_FIRE_CHANNEL:
                     if (!fireState.equals(state)) {
                         this.updateState(SoulissBindingConstants.T31_FIRE_CHANNEL, OnOffType.ON);
-                        fireState = (StringType) state;
+                        fireState = stringState;
                     }
                     break;
                 case SoulissBindingConstants.T31_OFF_MESSAGE_FIRE_CHANNEL:
                     if (!fireState.equals(state)) {
                         this.updateState(SoulissBindingConstants.T31_FIRE_CHANNEL, OnOffType.OFF);
-                        fireState = (StringType) state;
+                        fireState = stringState;
                     }
                     break;
 
index 6b30284d608b7036bf95f94dc8b86fc97883ed41..2e893fd01fa991e03e80a5e6313914dd062f7d0f 100644 (file)
@@ -75,8 +75,8 @@ public class SoulissT41Handler extends SoulissGenericHandler {
     }
 
     public void setState(PrimitiveType state) {
-        if (state instanceof OnOffType) {
-            this.updateState(SoulissBindingConstants.T4N_ONOFFALARM_CHANNEL, (OnOffType) state);
+        if (state instanceof OnOffType onOffState) {
+            this.updateState(SoulissBindingConstants.T4N_ONOFFALARM_CHANNEL, onOffState);
         } else if (state instanceof StringType) {
             switch (String.valueOf(state)) {
                 case SoulissBindingConstants.T4N_ALARMON_MESSAGE_CHANNEL:
index 5cfe04208dba48f03fbedd3cee7f15b3edeed36b..d338f17afc359dabf0a3c38b0b1b3f703d674d77 100644 (file)
@@ -40,8 +40,8 @@ public class SoulissT6nHandler extends SoulissGenericHandler {
 
     @Override
     public void handleCommand(ChannelUID channelUID, Command command) {
-        if (command instanceof DecimalType) {
-            int uu = HalfFloatUtils.fromFloat(((DecimalType) command).floatValue());
+        if (command instanceof DecimalType decimalCommand) {
+            int uu = HalfFloatUtils.fromFloat(decimalCommand.floatValue());
             byte b2 = (byte) (uu >> 8);
             byte b1 = (byte) uu;
             // setpoint command
index 38da8a39fa6ba8985d4d96d82483bab796551b2e..8338b6e69c7c2baef9e7a04a4be3b29cfe8602db 100644 (file)
@@ -136,7 +136,7 @@ public class SendDispatcherRunnable implements Runnable {
     public void run() {
         DatagramSocket sender = null;
 
-        try (var channel = DatagramChannel.open();) {
+        try (var channel = DatagramChannel.open()) {
             if (checkTime()) {
                 PacketStruct sp = pop();
                 if (sp != null) {
index 3b09827bc4feb8444d7356030adad36094161787..6c43ef3cffaddf7d932a5884a59863c7f9d86292 100644 (file)
@@ -210,7 +210,7 @@ public class SpeedtestHandler extends BaseThingHandler {
         if ((versionString != null) && !versionString.isEmpty()) {
             int newLI = versionString.indexOf(System.lineSeparator());
             String versionLine = versionString.substring(0, newLI);
-            if (versionString.indexOf("Speedtest by Ookla") > -1) {
+            if (versionString.contains("Speedtest by Ookla")) {
                 logger.debug("Speedtest Version: {}", versionLine);
                 return true;
             } else {
@@ -285,7 +285,7 @@ public class SpeedtestHandler extends BaseThingHandler {
         ResultContainer tmpCont = doExecuteRequest(" -f json --accept-license --accept-gdpr" + postCommand,
                 ResultContainer.class);
         if (tmpCont != null) {
-            if (tmpCont.getType().equals("result")) {
+            if ("result".equals(tmpCont.getType())) {
                 pingJitter = tmpCont.getPing().getJitter();
                 pingLatency = tmpCont.getPing().getLatency();
                 downloadBandwidth = tmpCont.getDownload().getBandwidth();
@@ -365,15 +365,13 @@ public class SpeedtestHandler extends BaseThingHandler {
         updateState(new ChannelUID(getThing().getUID(), SpeedtestBindingConstants.UPLOAD_ELAPSED), newState);
 
         updateState(new ChannelUID(getThing().getUID(), SpeedtestBindingConstants.INTERFACE_EXTERNALIP),
-                new StringType(String.valueOf(interfaceExternalIp)));
+                new StringType(interfaceExternalIp));
         updateState(new ChannelUID(getThing().getUID(), SpeedtestBindingConstants.INTERFACE_INTERNALIP),
-                new StringType(String.valueOf(interfaceInternalIp)));
-        updateState(new ChannelUID(getThing().getUID(), SpeedtestBindingConstants.ISP),
-                new StringType(String.valueOf(isp)));
+                new StringType(interfaceInternalIp));
+        updateState(new ChannelUID(getThing().getUID(), SpeedtestBindingConstants.ISP), new StringType(isp));
         updateState(new ChannelUID(getThing().getUID(), SpeedtestBindingConstants.RESULT_URL),
-                new StringType(String.valueOf(resultUrl)));
-        updateState(new ChannelUID(getThing().getUID(), SpeedtestBindingConstants.SERVER),
-                new StringType(String.valueOf(server)));
+                new StringType(resultUrl));
+        updateState(new ChannelUID(getThing().getUID(), SpeedtestBindingConstants.SERVER), new StringType(server));
     }
 
     /**
@@ -489,8 +487,7 @@ public class SpeedtestHandler extends BaseThingHandler {
         } else {
             logger.debug("Splitting by spaces");
             try {
-                String[] splitCmd = commandLine.split(" ");
-                return splitCmd;
+                return commandLine.split(" ");
             } catch (PatternSyntaxException e) {
                 logger.warn("An exception occurred while splitting '{}': '{}'", commandLine, e.getMessage());
                 return new String[] {};
index ce8e46e73f1c51d8830cfb37850ae799fc1b364f..a3d450ecfd9165d17a59164bf7b7987464e4eaaf 100644 (file)
@@ -81,8 +81,8 @@ public class SpotifyHandlerFactory extends BaseThingHandlerFactory {
 
     @Override
     protected synchronized void removeHandler(ThingHandler thingHandler) {
-        if (thingHandler instanceof SpotifyBridgeHandler) {
-            authService.removeSpotifyAccountHandler((SpotifyBridgeHandler) thingHandler);
+        if (thingHandler instanceof SpotifyBridgeHandler bridgeHandler) {
+            authService.removeSpotifyAccountHandler(bridgeHandler);
         }
     }
 }
index 1328cd1e7760c4ff9db6a2e5b1ec56879ba669f0..7538bee8f124c5458702a2e04fb9b222d7da12ed 100644 (file)
@@ -87,8 +87,8 @@ class SpotifyConnector {
         } catch (ExecutionException e) {
             final Throwable cause = e.getCause();
 
-            if (cause instanceof RuntimeException) {
-                throw (RuntimeException) cause;
+            if (cause instanceof RuntimeException runtimeException) {
+                throw runtimeException;
             } else {
                 throw new SpotifyException(e.getMessage(), e);
             }
index 9109d2f5168908692a6cc75bb9f0165660bbba77..eb5576dedc4e279472f18788a7930653bba30d17 100644 (file)
@@ -16,7 +16,6 @@ import static org.openhab.binding.spotify.internal.SpotifyBindingConstants.PROPE
 import static org.openhab.binding.spotify.internal.SpotifyBindingConstants.THING_TYPE_DEVICE;
 
 import java.time.Duration;
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Set;
@@ -52,7 +51,7 @@ public class SpotifyDeviceDiscoveryService extends AbstractDiscoveryService
     // id for device is derived by stripping id of device with this length
     private static final int PLAYER_ID_LENGTH = 4;
     // Only devices can be discovered. A bridge must be manually added.
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_DEVICE);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_DEVICE);
     // The call to listDevices is fast
     private static final int DISCOVERY_TIME_SECONDS = 10;
     // Check every minute for new devices
@@ -90,8 +89,8 @@ public class SpotifyDeviceDiscoveryService extends AbstractDiscoveryService
 
     @Override
     public void setThingHandler(@Nullable ThingHandler handler) {
-        if (handler instanceof SpotifyAccountHandler) {
-            bridgeHandler = (SpotifyAccountHandler) handler;
+        if (handler instanceof SpotifyAccountHandler accountHandler) {
+            bridgeHandler = accountHandler;
             bridgeUID = bridgeHandler.getUID();
         }
     }
index b36ad152cb0ab192ef15e6b3fc46d73f2fe1d021..b118a2392c68c45de0bcdd381e6007d3242e865e 100644 (file)
@@ -101,8 +101,8 @@ class SpotifyHandleCommands {
                 commandRun = handleDevicePlay(command, active, deviceId);
                 break;
             case CHANNEL_DEVICESHUFFLE:
-                if (command instanceof OnOffType) {
-                    spotifyApi.setShuffleState(deviceId, (OnOffType) command);
+                if (command instanceof OnOffType onOffCommand) {
+                    spotifyApi.setShuffleState(deviceId, onOffCommand);
                     commandRun = true;
                 }
                 break;
@@ -112,9 +112,9 @@ class SpotifyHandleCommands {
                     commandRun = true;
                 }
             case CHANNEL_DEVICEVOLUME:
-                if (command instanceof DecimalType) {
-                    final PercentType volume = command instanceof PercentType ? (PercentType) command
-                            : new PercentType(((DecimalType) command).intValue());
+                if (command instanceof DecimalType decimalCommand) {
+                    final PercentType volume = command instanceof PercentType percentType ? percentType
+                            : new PercentType(decimalCommand.intValue());
 
                     spotifyApi.setVolume(deviceId, volume.intValue());
                     commandRun = true;
index 6fdf586b1c0a67545fa2b2e0f1353463b277a30e..a522329380358842d69e93a84f545889d3664b4e 100644 (file)
@@ -88,8 +88,8 @@ public class SqueezeBoxAudioSink extends AudioSinkSync {
         }
 
         String url;
-        if (audioStream instanceof URLAudioStream) {
-            url = ((URLAudioStream) audioStream).getURL();
+        if (audioStream instanceof URLAudioStream urlAudioStream) {
+            url = urlAudioStream.getURL();
             tryClose(audioStream);
         } else {
             try {
index d43ada5c55c496288bb9120ea7a006d6b9e35fd9..31d1ec9df7255a8eafcce07ca41b68384a58ce60 100644 (file)
@@ -149,7 +149,7 @@ public class SqueezeBoxHandlerFactory extends BaseThingHandlerFactory {
 
     @Override
     protected synchronized void removeHandler(ThingHandler thingHandler) {
-        if (thingHandler instanceof SqueezeBoxServerHandler) {
+        if (thingHandler instanceof SqueezeBoxServerHandler serverHandler) {
             logger.trace("removing handler for bridge thing {}", thingHandler.getThing());
 
             ServiceRegistration<?> serviceReg = this.discoveryServiceRegs.get(thingHandler.getThing().getUID());
@@ -162,7 +162,7 @@ public class SqueezeBoxHandlerFactory extends BaseThingHandlerFactory {
                 discoveryService.cancelRequestPlayerJob();
 
                 // Unregister the PlayerListener from the SqueezeBoxServerHandler
-                ((SqueezeBoxServerHandler) thingHandler).unregisterSqueezeBoxPlayerListener(
+                serverHandler.unregisterSqueezeBoxPlayerListener(
                         (SqueezeBoxPlayerEventListener) bundleContext.getService(serviceReg.getReference()));
 
                 // Unregister the PlayerListener service
@@ -173,8 +173,8 @@ public class SqueezeBoxHandlerFactory extends BaseThingHandlerFactory {
             }
         }
 
-        if (thingHandler instanceof SqueezeBoxPlayerHandler) {
-            SqueezeBoxServerHandler bridge = ((SqueezeBoxPlayerHandler) thingHandler).getSqueezeBoxServerHandler();
+        if (thingHandler instanceof SqueezeBoxPlayerHandler playerHandler) {
+            SqueezeBoxServerHandler bridge = playerHandler.getSqueezeBoxServerHandler();
             if (bridge != null) {
                 // Unregister the player's audio sink
                 logger.trace("Unregistering the audio sync service for player thing {}",
@@ -186,7 +186,7 @@ public class SqueezeBoxHandlerFactory extends BaseThingHandlerFactory {
                 }
 
                 logger.trace("removing handler for player thing {}", thingHandler.getThing());
-                bridge.removePlayerCache(((SqueezeBoxPlayerHandler) thingHandler).getMac());
+                bridge.removePlayerCache(playerHandler.getMac());
             }
         }
     }
index 302ad69ff9413826c1c73cf0a504b2537bc38ae2..fce31a41df400725206b0b4fbf6a5964342a53a0 100644 (file)
@@ -15,7 +15,6 @@ package org.openhab.binding.squeezebox.internal.discovery;
 import static org.openhab.binding.squeezebox.internal.SqueezeBoxBindingConstants.SQUEEZEBOXSERVER_THING_TYPE;
 
 import java.net.URI;
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Set;
@@ -51,7 +50,7 @@ public class SqueezeBoxServerDiscoveryParticipant implements UpnpDiscoveryPartic
 
     @Override
     public Set<ThingTypeUID> getSupportedThingTypeUIDs() {
-        return Collections.singleton(SQUEEZEBOXSERVER_THING_TYPE);
+        return Set.of(SQUEEZEBOXSERVER_THING_TYPE);
     }
 
     @Override
index d75bca01e0109837bc69604a54334e3b6ce0037d..a25390ab298d914b6b45362026d8719f3643a9cf 100644 (file)
@@ -105,12 +105,12 @@ public final class SqueezeBoxNotificationListener implements SqueezeBoxPlayerEve
         }
         logger.trace("Mode is {} for player {}", mode, mac);
 
-        if (mode.equals("play")) {
+        if ("play".equals(mode)) {
             this.started.set(true);
-        } else if (this.started.get() && mode.equals("stop")) {
+        } else if (this.started.get() && "stop".equals(mode)) {
             this.stopped.set(true);
         }
-        if (mode.equals("pause")) {
+        if ("pause".equals(mode)) {
             this.paused.set(true);
         }
     }
index 217544e3a7927669688c5602d692bc545ae02316..e87043514b9e0ecda14f04b15936d50cc00730dd 100644 (file)
@@ -73,8 +73,7 @@ import org.slf4j.LoggerFactory;
 public class SqueezeBoxPlayerHandler extends BaseThingHandler implements SqueezeBoxPlayerEventListener {
     private final Logger logger = LoggerFactory.getLogger(SqueezeBoxPlayerHandler.class);
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections
-            .singleton(SQUEEZEBOXPLAYER_THING_TYPE);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(SQUEEZEBOXPLAYER_THING_TYPE);
 
     /**
      * We need to remember some states to change offsets in volume, time index,
@@ -244,8 +243,8 @@ public class SqueezeBoxPlayerHandler extends BaseThingHandler implements Squeeze
                 }
                 break;
             case CHANNEL_VOLUME:
-                if (command instanceof PercentType) {
-                    squeezeBoxServerHandler.setVolume(mac, ((PercentType) command).intValue());
+                if (command instanceof PercentType percentCommand) {
+                    squeezeBoxServerHandler.setVolume(mac, percentCommand.intValue());
                 } else if (command.equals(IncreaseDecreaseType.INCREASE)) {
                     squeezeBoxServerHandler.volumeUp(mac, currentVolume());
                 } else if (command.equals(IncreaseDecreaseType.DECREASE)) {
@@ -317,8 +316,8 @@ public class SqueezeBoxPlayerHandler extends BaseThingHandler implements Squeeze
                 }
                 break;
             case CHANNEL_SLEEP:
-                if (command instanceof DecimalType) {
-                    Duration sleepDuration = Duration.ofMinutes(((DecimalType) command).longValue());
+                if (command instanceof DecimalType decimalCommand) {
+                    Duration sleepDuration = Duration.ofMinutes(decimalCommand.longValue());
                     if (sleepDuration.isNegative() || sleepDuration.compareTo(Duration.ofDays(1)) > 0) {
                         logger.debug("Sleep timer of {} minutes must be >= 0 and <= 1 day", sleepDuration.toMinutes());
                         return;
@@ -647,7 +646,7 @@ public class SqueezeBoxPlayerHandler extends BaseThingHandler implements Squeeze
 
     private int cachedStateAsInt(String key) {
         State state = stateMap.get(key);
-        return state instanceof DecimalType ? ((DecimalType) state).intValue() : 0;
+        return state instanceof DecimalType decimalValue ? decimalValue.intValue() : 0;
     }
 
     /**
index 53fb46cd61b1aa34b5825bad9b82bbf7ac7c05b7..72cf92376903b15c6a570019804d7dc5c52a10f6 100644 (file)
@@ -84,8 +84,7 @@ import com.google.gson.JsonSyntaxException;
 public class SqueezeBoxServerHandler extends BaseBridgeHandler {
     private final Logger logger = LoggerFactory.getLogger(SqueezeBoxServerHandler.class);
 
-    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections
-            .singleton(SQUEEZEBOXSERVER_THING_TYPE);
+    public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(SQUEEZEBOXSERVER_THING_TYPE);
 
     // time in seconds to try to reconnect
     private static final int RECONNECT_TIME = 60;
@@ -262,7 +261,7 @@ public class SqueezeBoxServerHandler extends BaseBridgeHandler {
         int newVolume = volume;
         newVolume = Math.min(100, newVolume);
         newVolume = Math.max(0, newVolume);
-        sendCommand(mac + " mixer volume " + String.valueOf(newVolume));
+        sendCommand(mac + " mixer volume " + newVolume);
     }
 
     public void showString(String mac, String line) {
@@ -270,7 +269,7 @@ public class SqueezeBoxServerHandler extends BaseBridgeHandler {
     }
 
     public void showString(String mac, String line, int duration) {
-        sendCommand(mac + " show line1:" + line + " duration:" + String.valueOf(duration));
+        sendCommand(mac + " show line1:" + line + " duration:" + duration);
     }
 
     public void showStringHuge(String mac, String line) {
@@ -278,7 +277,7 @@ public class SqueezeBoxServerHandler extends BaseBridgeHandler {
     }
 
     public void showStringHuge(String mac, String line, int duration) {
-        sendCommand(mac + " show line1:" + line + " font:huge duration:" + String.valueOf(duration));
+        sendCommand(mac + " show line1:" + line + " font:huge duration:" + duration);
     }
 
     public void showStrings(String mac, String line1, String line2) {
@@ -286,7 +285,7 @@ public class SqueezeBoxServerHandler extends BaseBridgeHandler {
     }
 
     public void showStrings(String mac, String line1, String line2, int duration) {
-        sendCommand(mac + " show line1:" + line1 + " line2:" + line2 + " duration:" + String.valueOf(duration));
+        sendCommand(mac + " show line1:" + line1 + " line2:" + line2 + " duration:" + duration);
     }
 
     public void playFavorite(String mac, String favorite) {
@@ -300,7 +299,7 @@ public class SqueezeBoxServerHandler extends BaseBridgeHandler {
     }
 
     public void sleep(String mac, Duration sleepDuration) {
-        sendCommand(mac + " sleep " + String.valueOf(sleepDuration.toSeconds()));
+        sendCommand(mac + " sleep " + sleepDuration.toSeconds());
     }
 
     /**
@@ -856,18 +855,18 @@ public class SqueezeBoxServerHandler extends BaseBridgeHandler {
             }
             String action = messageParts[2];
             String mode;
-            if (action.equals("newsong")) {
+            if ("newsong".equals(action)) {
                 mode = "play";
                 // Execute in separate thread to avoid delaying listener
                 scheduler.execute(() -> updateCustomButtons(mac));
                 // Set the track duration to 0
                 updatePlayer(listener -> listener.durationEvent(mac, 0));
-            } else if (action.equals("pause")) {
+            } else if ("pause".equals(action)) {
                 if (messageParts.length < 4) {
                     return;
                 }
-                mode = messageParts[3].equals("0") ? "play" : "pause";
-            } else if (action.equals("stop")) {
+                mode = "0".equals(messageParts[3]) ? "play" : "pause";
+            } else if ("stop".equals(action)) {
                 mode = "stop";
             } else if ("play".equals(action) && "playlist".equals(messageParts[1])) {
                 if (messageParts.length >= 4) {
@@ -884,7 +883,7 @@ public class SqueezeBoxServerHandler extends BaseBridgeHandler {
         }
 
         private void handleSourceChangeMessage(String mac, String rawSource) {
-            String source = URLDecoder.decode(rawSource);
+            String source = URLDecoder.decode(rawSource, StandardCharsets.UTF_8);
             updatePlayer(listener -> listener.sourceChangeEvent(mac, source));
         }
 
@@ -893,13 +892,13 @@ public class SqueezeBoxServerHandler extends BaseBridgeHandler {
                 return;
             }
             // server prefsets
-            if (messageParts[2].equals("server")) {
+            if ("server".equals(messageParts[2])) {
                 String function = messageParts[3];
                 String value = messageParts[4];
-                if (function.equals("power")) {
-                    final boolean power = value.equals("1");
+                if ("power".equals(function)) {
+                    final boolean power = "1".equals(value);
                     updatePlayer(listener -> listener.powerChangeEvent(mac, power));
-                } else if (function.equals("volume")) {
+                } else if ("volume".equals(function)) {
                     final int volume = (int) Double.parseDouble(value);
                     updatePlayer(listener -> listener.absoluteVolumeChangeEvent(mac, volume));
                 }
@@ -967,7 +966,7 @@ public class SqueezeBoxServerHandler extends BaseBridgeHandler {
             String quote = includeQuotes.booleanValue() ? "\"" : "";
             StringBuilder sb = new StringBuilder();
             for (Favorite favorite : favorites) {
-                sb.append(favorite.shortId).append("=").append(quote).append(favorite.name.replaceAll(",", ""))
+                sb.append(favorite.shortId).append("=").append(quote).append(favorite.name.replace(",", ""))
                         .append(quote).append(",");
             }
 
@@ -1063,8 +1062,9 @@ public class SqueezeBoxServerHandler extends BaseBridgeHandler {
         List<Thing> things = bridge.getThings();
         for (Thing thing : things) {
             ThingHandler handler = thing.getHandler();
-            if (handler instanceof SqueezeBoxPlayerEventListener && !squeezeBoxPlayerListeners.contains(handler)) {
-                event.updateListener((SqueezeBoxPlayerEventListener) handler);
+            if (handler instanceof SqueezeBoxPlayerEventListener playerEventListener
+                    && !squeezeBoxPlayerListeners.contains(handler)) {
+                event.updateListener(playerEventListener);
             }
         }
     }
index 13a474203364e07f355a520c9cdd80130e28e28a..643352e0f291e923460cf12b2cbd3a2549a6ac77 100644 (file)
@@ -16,7 +16,6 @@ import java.time.LocalDate;
 import java.time.LocalTime;
 import java.time.ZonedDateTime;
 import java.util.Arrays;
-import java.util.Collections;
 import java.util.HashSet;
 import java.util.Set;
 
@@ -48,7 +47,7 @@ public class SurePetcareConstants {
     public static final ThingTypeUID THING_TYPE_FLAP_DEVICE = new ThingTypeUID(BINDING_ID, "flapDevice");
     public static final ThingTypeUID THING_TYPE_FEEDER_DEVICE = new ThingTypeUID(BINDING_ID, "feederDevice");
 
-    public static final Set<ThingTypeUID> BRIDGE_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_BRIDGE);
+    public static final Set<ThingTypeUID> BRIDGE_THING_TYPES_UIDS = Set.of(THING_TYPE_BRIDGE);
     public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = new HashSet<>(Arrays.asList(THING_TYPE_HOUSEHOLD,
             THING_TYPE_PET, THING_TYPE_HUB_DEVICE, THING_TYPE_FLAP_DEVICE, THING_TYPE_FEEDER_DEVICE));
 
index e350eb06c11182c9ef56de5cfbdb7f82e8c85a15..89e6ec1a277e67b8041ae6e2c221fe5752f09524 100644 (file)
@@ -14,7 +14,6 @@ package org.openhab.binding.surepetcare.internal.discovery;
 
 import static org.openhab.binding.surepetcare.internal.SurePetcareConstants.*;
 
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Set;
@@ -51,7 +50,7 @@ public class SurePetcareDiscoveryService extends AbstractDiscoveryService
 
     private final Logger logger = LoggerFactory.getLogger(SurePetcareDiscoveryService.class);
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Collections.singleton(THING_TYPE_BRIDGE);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_BRIDGE);
 
     private static final int DISCOVER_TIMEOUT_SECONDS = 5;
     private static final int DISCOVERY_SCAN_DELAY_MINUTES = 1;
index abd28ca556093ef589e9d9f7c1545e4d6b92acf5..853c1acc7e0c4bd0f6624c8b958be556a0a0e02e 100644 (file)
@@ -15,8 +15,8 @@ package org.openhab.binding.surepetcare.internal.handler;
 import static org.openhab.binding.surepetcare.internal.SurePetcareConstants.*;
 
 import java.util.Collection;
-import java.util.Collections;
 import java.util.Map;
+import java.util.Set;
 import java.util.concurrent.ScheduledFuture;
 import java.util.concurrent.TimeUnit;
 
@@ -113,7 +113,7 @@ public class SurePetcareBridgeHandler extends BaseBridgeHandler {
 
     @Override
     public Collection<Class<? extends ThingHandlerService>> getServices() {
-        return Collections.singleton(SurePetcareDiscoveryService.class);
+        return Set.of(SurePetcareDiscoveryService.class);
     }
 
     @Override
index 516312d725cc67c706b68c8640bad21bab67aff4..c7f98e1eee8e735013f04177412b9fa5edb2c680 100644 (file)
@@ -48,7 +48,7 @@ public class StationDbService {
     @Activate
     public StationDbService() {
         try (InputStream is = Thread.currentThread().getContextClassLoader().getResourceAsStream("/db/stations.json");
-                Reader reader = new InputStreamReader(is, StandardCharsets.UTF_8);) {
+                Reader reader = new InputStreamReader(is, StandardCharsets.UTF_8)) {
             Gson gson = new GsonBuilder().setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_WITH_UNDERSCORES).create();
             stations = Arrays.asList(gson.fromJson(reader, Station[].class));
         } catch (IOException | JsonSyntaxException | JsonIOException e) {
index 5657757b16fd43f25c9d96e610a0f547e613aa9b..f761f3b933208b93507ba0bb0a2eb8f79340f6a0 100644 (file)
@@ -66,7 +66,7 @@ public abstract class Synop {
     private static final int HV_LESS_THAN_10_HP_LIMIT = 96;
     private static final int HV_LESS_THAN_50_HP_LIMIT = 98;
 
-    public static enum HorizontalVisibility {
+    public enum HorizontalVisibility {
         UNDEFINED,
         LESS_THAN_1,
         LESS_THAN_10,
index d33e43b338444afa8515d364b50e4dab54301d45..b76fc6773fef655e6471aef8dc5858f4aa6407b9 100644 (file)
@@ -16,7 +16,6 @@ import static org.openhab.binding.systeminfo.internal.SysteminfoBindingConstants
 
 import java.net.InetAddress;
 import java.net.UnknownHostException;
-import java.util.Collections;
 import java.util.Set;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -46,7 +45,7 @@ public class SysteminfoDiscoveryService extends AbstractDiscoveryService {
 
     private final Logger logger = LoggerFactory.getLogger(SysteminfoDiscoveryService.class);
 
-    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.singleton(THING_TYPE_COMPUTER);
+    private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_COMPUTER);
 
     private static final int DISCOVERY_TIME_SECONDS = 30;
     private static final String THING_UID_VALID_CHARS = "A-Za-z0-9_-";
@@ -82,7 +81,6 @@ public class SysteminfoDiscoveryService extends AbstractDiscoveryService {
 
     protected String getHostName() throws UnknownHostException {
         InetAddress addr = InetAddress.getLocalHost();
-        String hostname = addr.getHostName();
-        return hostname;
+        return addr.getHostName();
     }
 }
index 36ba69e204a1b1dc193492251168885dc4016b90..29f66a9eaafc7f9efa672df163ab689abccb6774 100644 (file)
@@ -675,8 +675,7 @@ public class SysteminfoHandler extends BaseThingHandler {
         }
 
         if (channelGroupID.contains(CHANNEL_GROUP_CURRENT_PROCESS)) {
-            int pid = systeminfo.getCurrentProcessID();
-            return pid;
+            return systeminfo.getCurrentProcessID();
         }
 
         // First try to get device index in group id, delete all non-digits from id
index 8d5822ba34927e1cca0efc1c2c37e2c7652f2119..adc776a5bd74862301790683cb1eeb4abd9e1d72 100644 (file)
@@ -109,7 +109,7 @@ public class TouchWandRestClient {
         String command = buildUrl(CMD_LOGIN) + "user=" + encodedUser + "&" + "psw=" + encodedPass;
         response = sendCommand(command, METHOD_GET, "");
 
-        return !response.equals("Unauthorized");
+        return !"Unauthorized".equals(response);
     }
 
     public String cmdListUnits() {
index 3ab13bf84f152ec7c5d6b387ef9e105cc2523c55..995030b1871151a53f763514c3b49e323586ad51 100644 (file)
@@ -40,7 +40,6 @@ public class AlarmSensorUnitDataDeserializer implements JsonDeserializer<TouchWa
     @Override
     public TouchWandUnitDataAlarmSensor deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context)
             throws JsonParseException {
-
         TouchWandUnitDataAlarmSensor touchWandUnitDataAlarmSensor = new TouchWandUnitDataAlarmSensor();
 
         JsonObject jsonObject = json.getAsJsonObject();
@@ -65,7 +64,6 @@ public class AlarmSensorUnitDataDeserializer implements JsonDeserializer<TouchWa
                 JsonObject.class);
 
         if (currentStatusObj != null) {
-
             TouchWandAlarmSensorCurrentStatus touchWandUnitDataAlarmSensorCurrentStatus = touchWandUnitDataAlarmSensor
                     .getCurrStatus();