Java 17 features (T-Z) (#15576)
- 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 - remove null check before instanceof Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
This commit is contained in:
@@ -57,8 +57,7 @@ public class TouchWandAlarmSensorHandler extends TouchWandBaseUnitHandler {
|
||||
|
||||
@Override
|
||||
void updateTouchWandUnitState(TouchWandUnitData unitData) {
|
||||
if (unitData instanceof TouchWandUnitDataAlarmSensor) {
|
||||
TouchWandUnitDataAlarmSensor sensor = (TouchWandUnitDataAlarmSensor) unitData;
|
||||
if (unitData instanceof TouchWandUnitDataAlarmSensor sensor) {
|
||||
if (isFirstUpdateTouchWandUnitState) {
|
||||
removeUnsupportedChannels(sensor);
|
||||
isFirstUpdateTouchWandUnitState = false;
|
||||
|
||||
@@ -42,21 +42,21 @@ public class TouchWandBSensorHandler extends TouchWandBaseUnitHandler {
|
||||
|
||||
@Override
|
||||
void updateTouchWandUnitState(TouchWandUnitData unitData) {
|
||||
if (unitData instanceof TouchWandBSensorUnitData) {
|
||||
if (unitData instanceof TouchWandBSensorUnitData bSensorUnitData) {
|
||||
if (isFirstUpdateTouchWandUnitState) {
|
||||
removeUnsupportedChannels((TouchWandBSensorUnitData) unitData);
|
||||
removeUnsupportedChannels(bSensorUnitData);
|
||||
isFirstUpdateTouchWandUnitState = false;
|
||||
}
|
||||
String sensorSubType = ((TouchWandBSensorUnitData) unitData).getIdData().getSubType();
|
||||
String sensorSubType = bSensorUnitData.getIdData().getSubType();
|
||||
switch (sensorSubType) {
|
||||
case BSENSOR_SUBTYPE_DOORWINDOW:
|
||||
updateChannelDoorWindow((TouchWandBSensorUnitData) unitData);
|
||||
updateChannelDoorWindow(bSensorUnitData);
|
||||
break;
|
||||
case BSENSOR_SUBTYPE_MOTION:
|
||||
updateChannelMotion((TouchWandBSensorUnitData) unitData);
|
||||
updateChannelMotion(bSensorUnitData);
|
||||
break;
|
||||
case BSENSOR_SUBTYPE_SMOKE:
|
||||
updateChannelSmoke((TouchWandBSensorUnitData) unitData);
|
||||
updateChannelSmoke(bSensorUnitData);
|
||||
break;
|
||||
default:
|
||||
}
|
||||
|
||||
@@ -137,7 +137,7 @@ public abstract class TouchWandBaseUnitHandler extends BaseThingHandler implemen
|
||||
|
||||
@Override
|
||||
public void onItemStatusUpdate(TouchWandUnitData unitData) {
|
||||
if (unitData.getStatus().equals("ALIVE")) {
|
||||
if ("ALIVE".equals(unitData.getStatus())) {
|
||||
updateStatus(ThingStatus.ONLINE);
|
||||
} else {
|
||||
// updateStatus(ThingStatus.OFFLINE); // comment - OFFLINE status is not accurate at the moment
|
||||
|
||||
@@ -15,7 +15,6 @@ package org.openhab.binding.touchwand.internal;
|
||||
import static org.openhab.binding.touchwand.internal.TouchWandBindingConstants.THING_TYPE_BRIDGE;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
@@ -45,7 +44,7 @@ import org.slf4j.LoggerFactory;
|
||||
*/
|
||||
@NonNullByDefault
|
||||
public class TouchWandBridgeHandler extends BaseBridgeHandler implements TouchWandUnitStatusUpdateListener {
|
||||
public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Collections.singleton(THING_TYPE_BRIDGE);
|
||||
public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_BRIDGE);
|
||||
private final Logger logger = LoggerFactory.getLogger(TouchWandBridgeHandler.class);
|
||||
private boolean addSecondaryUnits;
|
||||
private @Nullable TouchWandWebSockets touchWandWebSockets;
|
||||
@@ -138,6 +137,6 @@ public class TouchWandBridgeHandler extends BaseBridgeHandler implements TouchWa
|
||||
|
||||
@Override
|
||||
public Collection<Class<? extends ThingHandlerService>> getServices() {
|
||||
return Collections.singleton(TouchWandUnitDiscoveryService.class);
|
||||
return Set.of(TouchWandUnitDiscoveryService.class);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -39,8 +39,8 @@ public class TouchWandDimmerHandler extends TouchWandBaseUnitHandler {
|
||||
void touchWandUnitHandleCommand(Command command) {
|
||||
TouchWandBridgeHandler touchWandBridgeHandler = bridgeHandler;
|
||||
if (touchWandBridgeHandler != null) {
|
||||
if (command instanceof OnOffType) {
|
||||
touchWandBridgeHandler.touchWandClient.cmdSwitchOnOff(unitId, (OnOffType) command);
|
||||
if (command instanceof OnOffType onOffCommand) {
|
||||
touchWandBridgeHandler.touchWandClient.cmdSwitchOnOff(unitId, onOffCommand);
|
||||
} else {
|
||||
touchWandBridgeHandler.touchWandClient.cmdDimmerPosition(unitId, command.toString());
|
||||
}
|
||||
@@ -49,8 +49,8 @@ public class TouchWandDimmerHandler extends TouchWandBaseUnitHandler {
|
||||
|
||||
@Override
|
||||
void updateTouchWandUnitState(TouchWandUnitData unitData) {
|
||||
if (unitData instanceof TouchWandShutterSwitchUnitData) {
|
||||
int status = ((TouchWandShutterSwitchUnitData) unitData).getCurrStatus();
|
||||
if (unitData instanceof TouchWandShutterSwitchUnitData shutterSwitchUnitData) {
|
||||
int status = shutterSwitchUnitData.getCurrStatus();
|
||||
PercentType state = PercentType.ZERO;
|
||||
int convertStatus = status;
|
||||
state = new PercentType(convertStatus);
|
||||
|
||||
@@ -203,8 +203,7 @@ public class TouchWandRestClient {
|
||||
}
|
||||
|
||||
private String buildUrl(String command) {
|
||||
String url = "http://" + touchWandIpAddr + ":" + touchWandPort + COMMAND_MAP.get(command);
|
||||
return url;
|
||||
return "http://" + touchWandIpAddr + ":" + touchWandPort + COMMAND_MAP.get(command);
|
||||
}
|
||||
|
||||
private synchronized String sendCommand(String command, HttpMethod method, String content) {
|
||||
|
||||
@@ -59,8 +59,8 @@ public class TouchWandShutterHandler extends TouchWandBaseUnitHandler {
|
||||
|
||||
@Override
|
||||
void updateTouchWandUnitState(TouchWandUnitData unitData) {
|
||||
if (unitData instanceof TouchWandShutterSwitchUnitData) {
|
||||
int status = ((TouchWandShutterSwitchUnitData) unitData).getCurrStatus();
|
||||
if (unitData instanceof TouchWandShutterSwitchUnitData shutterSwitchUnitData) {
|
||||
int status = shutterSwitchUnitData.getCurrStatus();
|
||||
PercentType state = PercentType.ZERO;
|
||||
int convertStatus = 100 - status;
|
||||
state = new PercentType(convertStatus);
|
||||
|
||||
@@ -37,9 +37,9 @@ public class TouchWandSwitchHandler extends TouchWandBaseUnitHandler {
|
||||
|
||||
@Override
|
||||
void updateTouchWandUnitState(TouchWandUnitData unitData) {
|
||||
if (unitData instanceof TouchWandShutterSwitchUnitData) {
|
||||
if (unitData instanceof TouchWandShutterSwitchUnitData shutterSwitchUnitData) {
|
||||
OnOffType state;
|
||||
int status = ((TouchWandShutterSwitchUnitData) unitData).getCurrStatus();
|
||||
int status = shutterSwitchUnitData.getCurrStatus();
|
||||
String sStatus = Integer.toString(status);
|
||||
|
||||
if (sStatus.equals(SWITCH_STATUS_OFF)) {
|
||||
@@ -58,10 +58,10 @@ public class TouchWandSwitchHandler extends TouchWandBaseUnitHandler {
|
||||
|
||||
@Override
|
||||
void touchWandUnitHandleCommand(Command command) {
|
||||
if (command instanceof OnOffType) {
|
||||
if (command instanceof OnOffType onOffCommand) {
|
||||
TouchWandBridgeHandler touchWandBridgeHandler = bridgeHandler;
|
||||
if (touchWandBridgeHandler != null) {
|
||||
touchWandBridgeHandler.touchWandClient.cmdSwitchOnOff(unitId, (OnOffType) command);
|
||||
touchWandBridgeHandler.touchWandClient.cmdSwitchOnOff(unitId, onOffCommand);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -40,8 +40,7 @@ public class TouchWandThermostatHandler extends TouchWandBaseUnitHandler {
|
||||
|
||||
@Override
|
||||
void updateTouchWandUnitState(TouchWandUnitData unitData) {
|
||||
if (unitData instanceof TouchWandThermostatUnitData) {
|
||||
TouchWandThermostatUnitData thermostat = (TouchWandThermostatUnitData) unitData;
|
||||
if (unitData instanceof TouchWandThermostatUnitData thermostat) {
|
||||
updateThermostatState(thermostat);
|
||||
updateTargetTemperature(thermostat);
|
||||
updateRoomTemperature(thermostat);
|
||||
@@ -56,12 +55,12 @@ public class TouchWandThermostatHandler extends TouchWandBaseUnitHandler {
|
||||
void touchWandUnitHandleCommand(Command command) {
|
||||
TouchWandBridgeHandler touchWandBridgeHandler = bridgeHandler;
|
||||
if (touchWandBridgeHandler != null) {
|
||||
if (command instanceof OnOffType) {
|
||||
touchWandBridgeHandler.touchWandClient.cmdThermostatOnOff(unitId, (OnOffType) command);
|
||||
if (command instanceof OnOffType onOffCommand) {
|
||||
touchWandBridgeHandler.touchWandClient.cmdThermostatOnOff(unitId, onOffCommand);
|
||||
return;
|
||||
}
|
||||
if (command instanceof QuantityType) {
|
||||
final QuantityType<?> value = ((QuantityType<?>) command).toUnit(SIUnits.CELSIUS);
|
||||
if (command instanceof QuantityType quantityCommand) {
|
||||
final QuantityType<?> value = quantityCommand.toUnit(SIUnits.CELSIUS);
|
||||
String targetTemperature = String.valueOf(value.intValue());
|
||||
touchWandBridgeHandler.touchWandClient.cmdThermostatTargetTemperature(unitId, targetTemperature);
|
||||
return;
|
||||
|
||||
@@ -48,8 +48,8 @@ public class TouchWandWallControllerHandler extends TouchWandBaseUnitHandler {
|
||||
|
||||
@Override
|
||||
void updateTouchWandUnitState(TouchWandUnitData unitData) {
|
||||
if (unitData instanceof TouchWandUnitDataWallController) {
|
||||
Csc status = ((TouchWandUnitDataWallController) unitData).getCurrStatus();
|
||||
if (unitData instanceof TouchWandUnitDataWallController unitDataWallController) {
|
||||
Csc status = unitDataWallController.getCurrStatus();
|
||||
long ts = status.getTs();
|
||||
long timeDiff = ts - timeLastEventMs;
|
||||
if ((timeDiff) > ADJACENT_EVENT_FILTER_TIME_MILLISEC) {
|
||||
|
||||
@@ -79,7 +79,7 @@ public class TouchWandWebSockets {
|
||||
|
||||
public void connect() {
|
||||
try {
|
||||
uri = new URI("ws://" + controllerAddress + ":" + String.valueOf(port) + WS_ENDPOINT_TOUCHWAND);
|
||||
uri = new URI("ws://" + controllerAddress + ":" + port + WS_ENDPOINT_TOUCHWAND);
|
||||
} catch (URISyntaxException e) {
|
||||
logger.warn("URI not valid {} message {}", uri, e.getMessage());
|
||||
return;
|
||||
@@ -152,12 +152,12 @@ public class TouchWandWebSockets {
|
||||
TouchWandUnitData touchWandUnit;
|
||||
try {
|
||||
JsonObject unitObj = JsonParser.parseString(msg).getAsJsonObject();
|
||||
boolean eventUnitChanged = unitObj.get("type").getAsString().equals("UNIT_CHANGED");
|
||||
boolean eventUnitChanged = "UNIT_CHANGED".equals(unitObj.get("type").getAsString());
|
||||
if (!eventUnitChanged) {
|
||||
return;
|
||||
}
|
||||
touchWandUnit = TouchWandUnitFromJson.parseResponse(unitObj.get("unit").getAsJsonObject());
|
||||
if (!touchWandUnit.getStatus().equals("ALIVE")) {
|
||||
if (!"ALIVE".equals(touchWandUnit.getStatus())) {
|
||||
logger.debug("UNIT_CHANGED unit status not ALIVE : {}", touchWandUnit.getStatus());
|
||||
}
|
||||
boolean supportedUnitType = Arrays.asList(SUPPORTED_TOUCHWAND_TYPES).contains(touchWandUnit.getType());
|
||||
|
||||
@@ -91,7 +91,7 @@ public class TouchWandControllerDiscoveryService extends AbstractDiscoveryServic
|
||||
}
|
||||
|
||||
private void addDeviceDiscoveryResult(String label, String ip) {
|
||||
String id = ip.replaceAll("\\.", "");
|
||||
String id = ip.replace(".", "");
|
||||
ThingUID thingUID = new ThingUID(THING_TYPE_BRIDGE, id);
|
||||
Map<String, Object> properties = new HashMap<>();
|
||||
properties.put("label", label);
|
||||
@@ -138,7 +138,7 @@ public class TouchWandControllerDiscoveryService extends AbstractDiscoveryServic
|
||||
String sentence = new String(dgram.getData(), 0, dgram.getLength(), StandardCharsets.US_ASCII);
|
||||
JsonObject bridge = JsonParser.parseString(sentence).getAsJsonObject();//
|
||||
String name = bridge.get("name").getAsString();
|
||||
addDeviceDiscoveryResult(name, address.getHostAddress().toString());
|
||||
addDeviceDiscoveryResult(name, address.getHostAddress());
|
||||
logger.debug("Received Datagram from {}:{} on Port {} message {}", address.getHostAddress(),
|
||||
dgram.getPort(), mySocket.getLocalPort(), sentence);
|
||||
}
|
||||
|
||||
@@ -191,8 +191,8 @@ public class TouchWandUnitDiscoveryService extends AbstractDiscoveryService impl
|
||||
|
||||
@Override
|
||||
public void setThingHandler(@NonNullByDefault({}) ThingHandler handler) {
|
||||
if (handler instanceof TouchWandBridgeHandler) {
|
||||
touchWandBridgeHandler = (TouchWandBridgeHandler) handler;
|
||||
if (handler instanceof TouchWandBridgeHandler touchWandBridgeHandler) {
|
||||
this.touchWandBridgeHandler = touchWandBridgeHandler;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -69,7 +69,7 @@ public class AlarmSensorUnitDataDeserializer implements JsonDeserializer<TouchWa
|
||||
|
||||
for (Entry<String, JsonElement> entry : currentStatusObj.entrySet()) {
|
||||
String key = entry.getKey();
|
||||
String splits[] = key.split("_"); // the key is xxxx_n where xxx is sensor type and n is
|
||||
String[] splits = key.split("_"); // the key is xxxx_n where xxx is sensor type and n is
|
||||
String keyName = splits[0];
|
||||
int index = 0;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user