import java.net.URLDecoder;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
-import java.util.*;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
import java.util.stream.Collectors;
import javax.net.ssl.HttpsURLConnection;
import static org.openhab.binding.amazonechocontrol.internal.AmazonEchoControlBindingConstants.*;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Hashtable;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
import static org.openhab.binding.amazonechocontrol.internal.AmazonEchoControlBindingConstants.*;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import java.text.SimpleDateFormat;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Base64;
+import java.util.Collections;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Random;
+import java.util.Scanner;
+import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.Future;
import java.util.concurrent.LinkedBlockingQueue;
import static org.openhab.binding.amazonechocontrol.internal.AmazonEchoControlBindingConstants.*;
-import java.util.*;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Hashtable;
+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.stream.Collectors;
import java.net.URLEncoder;
import java.net.UnknownHostException;
import java.time.ZonedDateTime;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
import java.util.concurrent.CopyOnWriteArraySet;
import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.ScheduledFuture;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
import java.time.temporal.ChronoUnit;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit;
import static org.openhab.binding.amazonechocontrol.internal.AmazonEchoControlBindingConstants.DEVICE_PROPERTY_ID;
import static org.openhab.binding.amazonechocontrol.internal.smarthome.Constants.SUPPORTED_INTERFACES;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
import java.util.function.Function;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import com.google.gson.*;
+import com.google.gson.Gson;
+import com.google.gson.JsonArray;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonNull;
+import com.google.gson.JsonObject;
/**
* @author Lukas Knoeller - Initial contribution
package org.openhab.binding.amazonechocontrol.internal.smarthome;
import java.io.IOException;
-import java.util.*;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Objects;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
*/
package org.openhab.binding.androiddebugbridge.internal;
-import java.io.*;
+import java.io.ByteArrayOutputStream;
+import java.io.File;
+import java.io.IOException;
import java.net.InetSocketAddress;
import java.net.Socket;
import java.net.URLEncoder;
import java.security.spec.InvalidKeySpecException;
import java.util.Arrays;
import java.util.Base64;
-import java.util.concurrent.*;
+import java.util.concurrent.ExecutionException;
+import java.util.concurrent.Future;
+import java.util.concurrent.ScheduledExecutorService;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.TimeoutException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public void startPackage(String packageName)
throws InterruptedException, AndroidDebugBridgeDeviceException, TimeoutException, ExecutionException {
var out = runAdbShell("monkey", "--pct-syskeys", "0", "-p", packageName, "-v", "1");
- if (out.contains("monkey aborted"))
+ if (out.contains("monkey aborted")) {
throw new AndroidDebugBridgeDeviceException("Unable to open package");
+ }
}
public void stopPackage(String packageName)
var lineParts = targetLine.split(" ");
if (lineParts.length >= 2) {
var packageActivityName = lineParts[lineParts.length - 2];
- if (packageActivityName.contains("/"))
+ if (packageActivityName.contains("/")) {
return packageActivityName.split("/")[0];
+ }
}
throw new AndroidDebugBridgeDeviceReadException("Unable to read package name");
}
String volumeResp = runAdbShell("media", "volume", "--show", "--stream", String.valueOf(stream), "--get", "|",
"grep", "volume");
Matcher matcher = VOLUME_PATTERN.matcher(volumeResp);
- if (!matcher.find())
+ if (!matcher.find()) {
throw new AndroidDebugBridgeDeviceReadException("Unable to get volume info");
+ }
var volumeInfo = new VolumeInfo(Integer.parseInt(matcher.group("current")),
Integer.parseInt(matcher.group("min")), Integer.parseInt(matcher.group("max")));
logger.debug("Device {}:{} VolumeInfo: current {}, min {}, max {}", this.ip, this.port, volumeInfo.current,
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
-import java.util.*;
+import java.util.Collections;
+import java.util.Dictionary;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Map;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.TimeoutException;
import java.util.function.Function;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
-import org.openhab.core.library.types.*;
+import org.openhab.core.library.types.DecimalType;
+import org.openhab.core.library.types.NextPreviousType;
+import org.openhab.core.library.types.OnOffType;
+import org.openhab.core.library.types.PercentType;
+import org.openhab.core.library.types.PlayPauseType;
+import org.openhab.core.library.types.RewindFastforwardType;
+import org.openhab.core.library.types.StringType;
import org.openhab.core.thing.ChannelUID;
import org.openhab.core.thing.Thing;
import org.openhab.core.thing.ThingStatus;
public void checkConnection() {
var currentConfig = config;
- if (currentConfig == null)
+ if (currentConfig == null) {
return;
+ }
try {
logger.debug("Refresh device {} status", currentConfig.ip);
if (adbConnection.isConnected()) {
import static org.openhab.binding.automower.internal.AutomowerBindingConstants.*;
-import java.time.*;
+import java.time.Instant;
+import java.time.ZonedDateTime;
import java.util.Collection;
import java.util.Collections;
import java.util.Map;
* Timestamp returned by the API doesn't have offset and it always in the current time zone - it can be treated as
* UTC.
* Method builds a ZonedDateTime with same hour value but in the current system timezone.
- *
+ *
* @param timestamp - Automower API timestamp
* @return ZonedDateTime in system timezone
*/
String[] zones = zoneinfo.split("%3b");
- for (int i = 1; i < 9; i++)
+ for (int i = 1; i < 9; i++) {
info.zone[i] = "1".equals(zones[i - 1]);
+ }
return info;
}
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
-import org.openhab.binding.deconz.internal.handler.*;
+import org.openhab.binding.deconz.internal.handler.DeconzBridgeHandler;
+import org.openhab.binding.deconz.internal.handler.GroupThingHandler;
+import org.openhab.binding.deconz.internal.handler.LightThingHandler;
+import org.openhab.binding.deconz.internal.handler.SensorThermostatThingHandler;
+import org.openhab.binding.deconz.internal.handler.SensorThingHandler;
import org.openhab.binding.deconz.internal.netutils.AsyncHttpClient;
-import org.openhab.binding.deconz.internal.types.*;
+import org.openhab.binding.deconz.internal.types.GroupType;
+import org.openhab.binding.deconz.internal.types.GroupTypeDeserializer;
+import org.openhab.binding.deconz.internal.types.LightType;
+import org.openhab.binding.deconz.internal.types.LightTypeDeserializer;
+import org.openhab.binding.deconz.internal.types.ResourceType;
+import org.openhab.binding.deconz.internal.types.ResourceTypeDeserializer;
+import org.openhab.binding.deconz.internal.types.ThermostatMode;
+import org.openhab.binding.deconz.internal.types.ThermostatModeGsonTypeAdapter;
import org.openhab.core.io.net.http.HttpClientFactory;
import org.openhab.core.io.net.http.WebSocketFactory;
import org.openhab.core.thing.Bridge;
import static org.openhab.binding.deconz.internal.Util.buildUrl;
import java.net.SocketTimeoutException;
-import java.util.*;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.Set;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.CompletionException;
import java.util.concurrent.ScheduledFuture;
import org.openhab.binding.deconz.internal.dto.GroupMessage;
import org.openhab.binding.deconz.internal.dto.GroupState;
import org.openhab.binding.deconz.internal.types.ResourceType;
-import org.openhab.core.library.types.*;
+import org.openhab.core.library.types.DecimalType;
+import org.openhab.core.library.types.HSBType;
+import org.openhab.core.library.types.OnOffType;
+import org.openhab.core.library.types.PercentType;
+import org.openhab.core.library.types.StringType;
import org.openhab.core.thing.ChannelUID;
import org.openhab.core.thing.Thing;
import org.openhab.core.thing.ThingStatus;
import static org.openhab.binding.deconz.internal.Util.*;
import java.math.BigDecimal;
-import java.util.*;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
import java.util.stream.Collectors;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.openhab.binding.deconz.internal.dto.LightMessage;
import org.openhab.binding.deconz.internal.dto.LightState;
import org.openhab.binding.deconz.internal.types.ResourceType;
-import org.openhab.core.library.types.*;
+import org.openhab.core.library.types.DecimalType;
+import org.openhab.core.library.types.HSBType;
+import org.openhab.core.library.types.IncreaseDecreaseType;
+import org.openhab.core.library.types.OnOffType;
+import org.openhab.core.library.types.PercentType;
+import org.openhab.core.library.types.QuantityType;
+import org.openhab.core.library.types.StopMoveType;
+import org.openhab.core.library.types.StringType;
+import org.openhab.core.library.types.UpDownType;
import org.openhab.core.library.unit.Units;
import org.openhab.core.thing.ChannelUID;
import org.openhab.core.thing.Thing;
import org.openhab.core.thing.ThingTypeUID;
import org.openhab.core.thing.binding.builder.ChannelBuilder;
import org.openhab.core.thing.binding.builder.ThingBuilder;
-import org.openhab.core.types.*;
+import org.openhab.core.types.Command;
+import org.openhab.core.types.CommandDescriptionBuilder;
+import org.openhab.core.types.CommandOption;
+import org.openhab.core.types.RefreshType;
+import org.openhab.core.types.StateDescription;
+import org.openhab.core.types.StateDescriptionFragmentBuilder;
+import org.openhab.core.types.UnDefType;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.openhab.binding.deconz.internal.discovery.ThingDiscoveryService;
import org.openhab.binding.deconz.internal.dto.BridgeFullState;
import org.openhab.binding.deconz.internal.handler.DeconzBridgeHandler;
-import org.openhab.binding.deconz.internal.types.*;
+import org.openhab.binding.deconz.internal.types.GroupType;
+import org.openhab.binding.deconz.internal.types.GroupTypeDeserializer;
+import org.openhab.binding.deconz.internal.types.LightType;
+import org.openhab.binding.deconz.internal.types.LightTypeDeserializer;
+import org.openhab.binding.deconz.internal.types.ResourceType;
+import org.openhab.binding.deconz.internal.types.ResourceTypeDeserializer;
+import org.openhab.binding.deconz.internal.types.ThermostatMode;
+import org.openhab.binding.deconz.internal.types.ThermostatModeGsonTypeAdapter;
import org.openhab.core.config.discovery.DiscoveryListener;
import org.openhab.core.library.types.DateTimeType;
import org.openhab.core.thing.Bridge;
import org.openhab.binding.enigma2.internal.Enigma2Configuration;
import org.openhab.binding.enigma2.internal.Enigma2RemoteKey;
import org.openhab.binding.enigma2.internal.actions.Enigma2Actions;
-import org.openhab.core.library.types.*;
+import org.openhab.core.library.types.DecimalType;
+import org.openhab.core.library.types.NextPreviousType;
+import org.openhab.core.library.types.OnOffType;
+import org.openhab.core.library.types.PercentType;
+import org.openhab.core.library.types.PlayPauseType;
+import org.openhab.core.library.types.StringType;
import org.openhab.core.thing.ChannelUID;
import org.openhab.core.thing.Thing;
import org.openhab.core.thing.ThingStatus;
/**
* Getter for Test-Injection
- *
+ *
* @return Enigma2Client.
*/
Optional<Enigma2Client> getEnigma2Client() {
Function<String, State> getCurrentStateFunc, Configuration config) {
EnOceanChannelTariffInfoConfig c = config.as(EnOceanChannelTariffInfoConfig.class);
- if (c.tariff != getTariffInfo())
+ if (c.tariff != getTariffInfo()) {
return UnDefType.UNDEF;
+ }
switch (channelTypeId) {
case CHANNEL_INSTANTPOWER:
*/
package org.openhab.binding.gardena.internal;
-import java.util.*;
-import java.util.concurrent.*;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.ExecutionException;
+import java.util.concurrent.ScheduledExecutorService;
+import java.util.concurrent.ScheduledFuture;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.TimeoutException;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
import org.openhab.binding.gardena.internal.exception.GardenaException;
import org.openhab.binding.gardena.internal.model.DataItemDeserializer;
import org.openhab.binding.gardena.internal.model.dto.Device;
-import org.openhab.binding.gardena.internal.model.dto.api.*;
+import org.openhab.binding.gardena.internal.model.dto.api.CreateWebSocketRequest;
+import org.openhab.binding.gardena.internal.model.dto.api.DataItem;
+import org.openhab.binding.gardena.internal.model.dto.api.LocationDataItem;
+import org.openhab.binding.gardena.internal.model.dto.api.LocationResponse;
+import org.openhab.binding.gardena.internal.model.dto.api.LocationsResponse;
+import org.openhab.binding.gardena.internal.model.dto.api.PostOAuth2Response;
+import org.openhab.binding.gardena.internal.model.dto.api.WebSocketCreatedResponse;
import org.openhab.binding.gardena.internal.model.dto.command.GardenaCommand;
import org.openhab.binding.gardena.internal.model.dto.command.GardenaCommandRequest;
import org.openhab.core.io.net.http.HttpClientFactory;
/**
* Stops the client.
*/
+ @Override
public void dispose() {
logger.debug("Disposing GardenaSmart");
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
import org.eclipse.jetty.websocket.api.Session;
-import org.eclipse.jetty.websocket.api.annotations.*;
+import org.eclipse.jetty.websocket.api.annotations.OnWebSocketClose;
+import org.eclipse.jetty.websocket.api.annotations.OnWebSocketConnect;
+import org.eclipse.jetty.websocket.api.annotations.OnWebSocketError;
+import org.eclipse.jetty.websocket.api.annotations.OnWebSocketFrame;
+import org.eclipse.jetty.websocket.api.annotations.OnWebSocketMessage;
+import org.eclipse.jetty.websocket.api.annotations.WebSocket;
import org.eclipse.jetty.websocket.api.extensions.Frame;
import org.eclipse.jetty.websocket.client.WebSocketClient;
import org.eclipse.jetty.websocket.common.WebSocketSession;
import org.openhab.binding.gardena.internal.util.UidUtils;
import org.openhab.core.io.net.http.HttpClientFactory;
import org.openhab.core.io.net.http.WebSocketFactory;
-import org.openhab.core.thing.*;
+import org.openhab.core.thing.Bridge;
+import org.openhab.core.thing.Channel;
+import org.openhab.core.thing.ChannelUID;
+import org.openhab.core.thing.Thing;
+import org.openhab.core.thing.ThingStatus;
+import org.openhab.core.thing.ThingStatusDetail;
+import org.openhab.core.thing.ThingUID;
import org.openhab.core.thing.binding.BaseBridgeHandler;
import org.openhab.core.thing.binding.ThingHandlerService;
import org.openhab.core.types.Command;
package org.openhab.binding.gardena.internal.handler;
import static org.openhab.binding.gardena.internal.GardenaBindingConstants.*;
-import static org.openhab.binding.gardena.internal.model.dto.command.MowerCommand.MowerControl;
-import static org.openhab.binding.gardena.internal.model.dto.command.PowerSocketCommand.PowerSocketControl;
-import static org.openhab.binding.gardena.internal.model.dto.command.ValveCommand.ValveControl;
-import static org.openhab.binding.gardena.internal.model.dto.command.ValveSetCommand.ValveSetControl;
import java.time.ZonedDateTime;
import java.util.Date;
import org.openhab.binding.gardena.internal.exception.GardenaException;
import org.openhab.binding.gardena.internal.model.dto.Device;
import org.openhab.binding.gardena.internal.model.dto.api.DataItem;
-import org.openhab.binding.gardena.internal.model.dto.command.*;
+import org.openhab.binding.gardena.internal.model.dto.command.GardenaCommand;
+import org.openhab.binding.gardena.internal.model.dto.command.MowerCommand;
+import org.openhab.binding.gardena.internal.model.dto.command.MowerCommand.MowerControl;
+import org.openhab.binding.gardena.internal.model.dto.command.PowerSocketCommand;
+import org.openhab.binding.gardena.internal.model.dto.command.PowerSocketCommand.PowerSocketControl;
+import org.openhab.binding.gardena.internal.model.dto.command.ValveCommand;
+import org.openhab.binding.gardena.internal.model.dto.command.ValveCommand.ValveControl;
+import org.openhab.binding.gardena.internal.model.dto.command.ValveSetCommand;
+import org.openhab.binding.gardena.internal.model.dto.command.ValveSetCommand.ValveSetControl;
import org.openhab.binding.gardena.internal.util.PropertyUtils;
import org.openhab.binding.gardena.internal.util.StringUtils;
import org.openhab.binding.gardena.internal.util.UidUtils;
import org.openhab.core.i18n.TimeZoneProvider;
-import org.openhab.core.library.types.*;
-import org.openhab.core.thing.*;
+import org.openhab.core.library.types.DateTimeType;
+import org.openhab.core.library.types.DecimalType;
+import org.openhab.core.library.types.OnOffType;
+import org.openhab.core.library.types.QuantityType;
+import org.openhab.core.library.types.StringType;
+import org.openhab.core.thing.Bridge;
+import org.openhab.core.thing.Channel;
+import org.openhab.core.thing.ChannelUID;
+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.ThingHandler;
import org.openhab.core.types.Command;
import org.openhab.binding.gardena.internal.exception.GardenaException;
import org.openhab.binding.gardena.internal.model.dto.api.DataItem;
-import com.google.gson.*;
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.google.gson.JsonDeserializationContext;
+import com.google.gson.JsonDeserializer;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
+import com.google.gson.JsonParseException;
/**
* Custom deserializer for Gardena DataItems.
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.openhab.binding.gardena.internal.exception.GardenaException;
-import org.openhab.binding.gardena.internal.model.dto.api.*;
+import org.openhab.binding.gardena.internal.model.dto.api.CommonServiceDataItem;
+import org.openhab.binding.gardena.internal.model.dto.api.DataItem;
+import org.openhab.binding.gardena.internal.model.dto.api.DeviceDataItem;
+import org.openhab.binding.gardena.internal.model.dto.api.LocationDataItem;
+import org.openhab.binding.gardena.internal.model.dto.api.MowerServiceDataItem;
+import org.openhab.binding.gardena.internal.model.dto.api.PowerSocketServiceDataItem;
+import org.openhab.binding.gardena.internal.model.dto.api.SensorServiceDataItem;
+import org.openhab.binding.gardena.internal.model.dto.api.ValveServiceDataItem;
+import org.openhab.binding.gardena.internal.model.dto.api.ValveSetServiceDataItem;
/**
* Creates the dataItem object based on the device type.
import java.util.Map;
import org.openhab.binding.gardena.internal.exception.GardenaException;
-import org.openhab.binding.gardena.internal.model.dto.api.*;
+import org.openhab.binding.gardena.internal.model.dto.api.CommonServiceDataItem;
+import org.openhab.binding.gardena.internal.model.dto.api.DataItem;
+import org.openhab.binding.gardena.internal.model.dto.api.DeviceDataItem;
+import org.openhab.binding.gardena.internal.model.dto.api.LocationDataItem;
+import org.openhab.binding.gardena.internal.model.dto.api.MowerServiceDataItem;
+import org.openhab.binding.gardena.internal.model.dto.api.PowerSocketServiceDataItem;
+import org.openhab.binding.gardena.internal.model.dto.api.SensorServiceDataItem;
+import org.openhab.binding.gardena.internal.model.dto.api.ValveServiceDataItem;
+import org.openhab.binding.gardena.internal.model.dto.api.ValveSetServiceDataItem;
import org.openhab.binding.gardena.internal.util.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
*/
package org.openhab.binding.gpio.internal.handler;
-import static org.openhab.binding.gpio.internal.GPIOBindingConstants.CHANNEL_TYPE_DIGITAL_INPUT;
-import static org.openhab.binding.gpio.internal.GPIOBindingConstants.CHANNEL_TYPE_DIGITAL_OUTPUT;
+import static org.openhab.binding.gpio.internal.GPIOBindingConstants.*;
import java.util.HashMap;
import java.util.Map;
import org.openhab.binding.gpio.internal.configuration.GPIOInputConfiguration;
import org.openhab.binding.gpio.internal.configuration.GPIOOutputConfiguration;
import org.openhab.binding.gpio.internal.configuration.PigpioConfiguration;
-import org.openhab.core.thing.*;
+import org.openhab.core.thing.ChannelUID;
+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.type.ChannelTypeUID;
import org.openhab.core.types.Command;
import org.openhab.binding.gpstracker.internal.GPSTrackerBindingConstants;
import org.openhab.core.library.CoreItemFactory;
import org.openhab.core.thing.Channel;
-import org.openhab.core.thing.profiles.*;
+import org.openhab.core.thing.profiles.Profile;
+import org.openhab.core.thing.profiles.ProfileAdvisor;
+import org.openhab.core.thing.profiles.ProfileCallback;
+import org.openhab.core.thing.profiles.ProfileContext;
+import org.openhab.core.thing.profiles.ProfileFactory;
+import org.openhab.core.thing.profiles.ProfileType;
+import org.openhab.core.thing.profiles.ProfileTypeBuilder;
+import org.openhab.core.thing.profiles.ProfileTypeProvider;
+import org.openhab.core.thing.profiles.ProfileTypeUID;
+import org.openhab.core.thing.profiles.TriggerProfileType;
import org.openhab.core.thing.type.ChannelType;
import org.openhab.core.thing.type.ChannelTypeUID;
import org.osgi.service.component.annotations.Component;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
import org.openhab.core.library.types.PercentType;
-import org.openhab.core.types.*;
+import org.openhab.core.types.State;
+import org.openhab.core.types.UnDefType;
/**
* The position of a single shade, as returned by the HD PowerView hub
/**
* Secondary actuator position
- *
+ *
* here we have to use Integer objects rather than just int primitives because
* these are secondary optional position elements in the JSON payload, so the
* GSON de-serializer might leave them as null
/**
* Create a ShadePosition position instance with just a primary actuator
* position
- *
+ *
* @param coordSys the Coordinate System to be used
* @param percent the percentage position within that Coordinate System
* @return the ShadePosition instance
/**
* Create a ShadePosition position instance with both a primary and a secondary
* actuator position
- *
+ *
* @param primaryCoordSys the Coordinate System to be used for the primary
* position
* @param primaryPercent the percentage position for primary position
/**
* Constructor for ShadePosition position with both a primary and a secondary
* actuator position
- *
+ *
* @param primaryCoordSys the Coordinate System to be used for the primary
* position
* @param primaryPercent the percentage position for primary position
/**
* For a given Actuator Class and Coordinate System, map the ShadePosition's
* state to an OpenHAB State
- *
+ *
* @param actuatorClass the requested Actuator Class
* @param coordSys the requested Coordinate System
* @return the corresponding OpenHAB State
/**
* Determine the Coordinate System used for the given Actuator Class (if any)
- *
+ *
* @param actuatorClass the requested Actuator Class
* @return the Coordinate System used for that Actuator Class, or ERROR_UNKNOWN
* if the Actuator Class is not implemented
*
* All these types use the same coordinate system; which is inverted in relation
* to that of OpenHAB
- *
+ *
* If the slats have a defined position then the shade position must by
* definition be 100%
*/
case VANE_COORDS:
/*
* Vane angle of the primary rail of a bottom-up single action shade
- *
+ *
* If the shades are not open, the vane position is undefined; if the the shades
* are exactly open then the vanes are at zero; otherwise return the actual vane
* position itself
- *
+ *
* note: sometimes the hub may return a value of position1 > MAX_VANE (seems to
* be a bug in the hub) so we avoid an out of range exception via the Math.min()
* function below..
case ZERO_IS_OPEN:
/*
* Secondary, upper, top-down rail of a dual action shade
- *
+ *
* Uses a coordinate system that is NOT inverted in relation to OpenHAB
*/
position2 = Integer.valueOf((int) Math.round(percent.doubleValue() / 100 * MAX_SHADE));
case ZERO_IS_OPEN:
/*
* Secondary, upper, top-down rail of a dual action shade
- *
+ *
* Uses a coordinate system that is NOT inverted in relation to OpenHAB
*/
if (posKind2.intValue() != 3) {
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
-import org.openhab.binding.heos.internal.handler.*;
+import org.openhab.binding.heos.internal.handler.HeosBridgeHandler;
+import org.openhab.binding.heos.internal.handler.HeosChannelHandler;
+import org.openhab.binding.heos.internal.handler.HeosChannelHandlerBuildGroup;
+import org.openhab.binding.heos.internal.handler.HeosChannelHandlerClearQueue;
+import org.openhab.binding.heos.internal.handler.HeosChannelHandlerControl;
+import org.openhab.binding.heos.internal.handler.HeosChannelHandlerFavorite;
+import org.openhab.binding.heos.internal.handler.HeosChannelHandlerGrouping;
+import org.openhab.binding.heos.internal.handler.HeosChannelHandlerInputs;
+import org.openhab.binding.heos.internal.handler.HeosChannelHandlerMute;
+import org.openhab.binding.heos.internal.handler.HeosChannelHandlerNowPlaying;
+import org.openhab.binding.heos.internal.handler.HeosChannelHandlerPlayURL;
+import org.openhab.binding.heos.internal.handler.HeosChannelHandlerPlayerSelect;
+import org.openhab.binding.heos.internal.handler.HeosChannelHandlerPlaylist;
+import org.openhab.binding.heos.internal.handler.HeosChannelHandlerQueue;
+import org.openhab.binding.heos.internal.handler.HeosChannelHandlerRawCommand;
+import org.openhab.binding.heos.internal.handler.HeosChannelHandlerReboot;
+import org.openhab.binding.heos.internal.handler.HeosChannelHandlerRepeatMode;
+import org.openhab.binding.heos.internal.handler.HeosChannelHandlerShuffleMode;
+import org.openhab.binding.heos.internal.handler.HeosChannelHandlerVolume;
+import org.openhab.binding.heos.internal.handler.HeosDynamicStateDescriptionProvider;
import org.openhab.binding.heos.internal.resources.HeosEventListener;
import org.openhab.core.thing.ChannelUID;
import org.openhab.core.thing.type.ChannelTypeUID;
import java.beans.PropertyChangeListener;
import java.io.IOException;
-import java.util.concurrent.*;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+import java.util.concurrent.ScheduledExecutorService;
+import java.util.concurrent.ScheduledFuture;
+import java.util.concurrent.TimeUnit;
import java.util.function.Consumer;
import org.eclipse.jdt.annotation.NonNullByDefault;
dp.setUnit("dBm");
}
// Bypass: For at least one device the CCU does not send a unit together with the value
- if (dp.getUnit() == null && dp.getName().startsWith(HomematicConstants.DATAPOINT_NAME_OPERATING_VOLTAGE))
+ if (dp.getUnit() == null && dp.getName().startsWith(HomematicConstants.DATAPOINT_NAME_OPERATING_VOLTAGE)) {
dp.setUnit("V");
+ }
HmValueType valueType = HmValueType.parse(type);
if (valueType == null || valueType == HmValueType.UNKNOWN) {
loadHomematicChannelValues(device.getChannel(0));
ThingStatus oldStatus = thing.getStatus();
- if (oldStatus == ThingStatus.UNINITIALIZED)
+ if (oldStatus == ThingStatus.UNINITIALIZED) {
return;
+ }
ThingStatus newStatus = ThingStatus.ONLINE;
ThingStatusDetail newDetail = ThingStatusDetail.NONE;
case "m3":
return ITEM_TYPE_NUMBER + ":Volume";
case "":
- if (dpName.startsWith(DATAPOINT_NAME_OPERATING_VOLTAGE))
+ if (dpName.startsWith(DATAPOINT_NAME_OPERATING_VOLTAGE)) {
return ITEM_TYPE_NUMBER + ":ElectricPotential";
+ }
case "s":
case "min":
case "minutes":
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URISyntaxException;
-import java.util.*;
+import java.util.Base64;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.TimeUnit;
import java.util.function.Function;
import org.openhab.binding.http.internal.config.HttpChannelConfig;
import org.openhab.binding.http.internal.config.HttpChannelMode;
import org.openhab.binding.http.internal.config.HttpThingConfig;
-import org.openhab.binding.http.internal.converter.*;
-import org.openhab.binding.http.internal.http.*;
+import org.openhab.binding.http.internal.converter.AbstractTransformingItemConverter;
+import org.openhab.binding.http.internal.converter.ColorItemConverter;
+import org.openhab.binding.http.internal.converter.DimmerItemConverter;
+import org.openhab.binding.http.internal.converter.FixedValueMappingItemConverter;
+import org.openhab.binding.http.internal.converter.GenericItemConverter;
+import org.openhab.binding.http.internal.converter.ImageItemConverter;
+import org.openhab.binding.http.internal.converter.ItemValueConverter;
+import org.openhab.binding.http.internal.converter.NumberItemConverter;
+import org.openhab.binding.http.internal.converter.PlayerItemConverter;
+import org.openhab.binding.http.internal.converter.RollershutterItemConverter;
+import org.openhab.binding.http.internal.http.Content;
+import org.openhab.binding.http.internal.http.HttpAuthException;
+import org.openhab.binding.http.internal.http.HttpResponseListener;
+import org.openhab.binding.http.internal.http.RateLimitedHttpClient;
+import org.openhab.binding.http.internal.http.RefreshingUrlCache;
import org.openhab.binding.http.internal.transform.ValueTransformationProvider;
import org.openhab.core.library.types.DateTimeType;
import org.openhab.core.library.types.PointType;
*/
package org.openhab.binding.http.internal;
-import java.net.*;
+import java.net.IDN;
+import java.net.MalformedURLException;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.net.URL;
import java.nio.charset.StandardCharsets;
import java.util.stream.Collectors;
import java.util.stream.StreamSupport;
package org.openhab.binding.http.internal.http;
import java.net.URI;
-import java.util.concurrent.*;
+import java.util.concurrent.CancellationException;
+import java.util.concurrent.CompletableFuture;
+import java.util.concurrent.LinkedBlockingQueue;
+import java.util.concurrent.RejectedExecutionException;
+import java.util.concurrent.ScheduledExecutorService;
+import java.util.concurrent.ScheduledFuture;
+import java.util.concurrent.TimeUnit;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
/**
* Set a new delay
- *
+ *
* @param delay in ms between to requests
*/
public void setDelay(int delay) {
*/
package org.openhab.binding.http.internal.http;
-import java.net.*;
+import java.net.MalformedURLException;
+import java.net.URI;
+import java.net.URISyntaxException;
import java.util.Date;
import java.util.List;
import java.util.Optional;
import java.util.Set;
-import java.util.concurrent.*;
+import java.util.concurrent.CancellationException;
+import java.util.concurrent.CompletableFuture;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.ScheduledExecutorService;
+import java.util.concurrent.ScheduledFuture;
+import java.util.concurrent.TimeUnit;
import java.util.function.Consumer;
import org.eclipse.jdt.annotation.NonNullByDefault;
import static org.openhab.binding.innogysmarthome.internal.InnogyBindingConstants.*;
-import java.util.*;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
import org.openhab.binding.innogysmarthome.internal.client.entity.capability.Capability;
import org.openhab.binding.innogysmarthome.internal.client.entity.location.Location;
import org.openhab.binding.innogysmarthome.internal.client.entity.device.Device;
import org.openhab.binding.innogysmarthome.internal.client.entity.event.Event;
import org.openhab.binding.innogysmarthome.internal.listener.DeviceStatusListener;
-import org.openhab.core.library.types.*;
+import org.openhab.core.library.types.DecimalType;
+import org.openhab.core.library.types.OnOffType;
+import org.openhab.core.library.types.OpenClosedType;
+import org.openhab.core.library.types.PercentType;
+import org.openhab.core.library.types.StopMoveType;
+import org.openhab.core.library.types.StringType;
+import org.openhab.core.library.types.UpDownType;
import org.openhab.core.thing.Bridge;
import org.openhab.core.thing.Channel;
import org.openhab.core.thing.ChannelUID;
import static org.openhab.binding.innogysmarthome.internal.InnogyBindingConstants.BATTERY_POWERED_DEVICES;
import java.io.IOException;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
import java.lang.reflect.Type;
import java.math.BigDecimal;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import org.eclipse.jdt.annotation.Nullable;
import org.openhab.binding.jablotron.internal.handler.JablotronBridgeHandler;
import org.openhab.binding.jablotron.internal.model.JablotronDiscoveredService;
-import org.openhab.core.config.discovery.*;
+import org.openhab.core.config.discovery.AbstractDiscoveryService;
+import org.openhab.core.config.discovery.DiscoveryResultBuilder;
+import org.openhab.core.config.discovery.DiscoveryService;
import org.openhab.core.thing.ThingStatus;
import org.openhab.core.thing.ThingTypeUID;
import org.openhab.core.thing.ThingUID;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
import org.openhab.binding.jablotron.internal.config.JablotronDeviceConfig;
-import org.openhab.binding.jablotron.internal.model.*;
+import org.openhab.binding.jablotron.internal.model.JablotronControlResponse;
+import org.openhab.binding.jablotron.internal.model.JablotronDataUpdateResponse;
+import org.openhab.binding.jablotron.internal.model.JablotronDiscoveredService;
+import org.openhab.binding.jablotron.internal.model.JablotronHistoryDataEvent;
+import org.openhab.binding.jablotron.internal.model.JablotronService;
+import org.openhab.binding.jablotron.internal.model.JablotronServiceData;
+import org.openhab.binding.jablotron.internal.model.JablotronServiceDetail;
+import org.openhab.binding.jablotron.internal.model.JablotronServiceDetailSegment;
import org.openhab.core.cache.ExpiringCache;
import org.openhab.core.library.types.DateTimeType;
import org.openhab.core.library.types.StringType;
-import org.openhab.core.thing.*;
+import org.openhab.core.thing.Bridge;
+import org.openhab.core.thing.Thing;
+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.types.State;
import org.slf4j.Logger;
import org.eclipse.jetty.http.HttpMethod;
import org.openhab.binding.jablotron.internal.config.JablotronBridgeConfig;
import org.openhab.binding.jablotron.internal.discovery.JablotronDiscoveryService;
-import org.openhab.binding.jablotron.internal.model.*;
+import org.openhab.binding.jablotron.internal.model.JablotronControlResponse;
+import org.openhab.binding.jablotron.internal.model.JablotronDataUpdateResponse;
+import org.openhab.binding.jablotron.internal.model.JablotronDiscoveredService;
+import org.openhab.binding.jablotron.internal.model.JablotronGetEventHistoryResponse;
+import org.openhab.binding.jablotron.internal.model.JablotronGetServiceResponse;
+import org.openhab.binding.jablotron.internal.model.JablotronHistoryDataEvent;
+import org.openhab.binding.jablotron.internal.model.JablotronLoginResponse;
import org.openhab.binding.jablotron.internal.model.ja100f.JablotronGetPGResponse;
import org.openhab.binding.jablotron.internal.model.ja100f.JablotronGetSectionsResponse;
-import org.openhab.core.thing.*;
+import org.openhab.core.thing.Bridge;
+import org.openhab.core.thing.ChannelUID;
+import org.openhab.core.thing.Thing;
+import org.openhab.core.thing.ThingStatus;
+import org.openhab.core.thing.ThingStatusDetail;
import org.openhab.core.thing.binding.BaseBridgeHandler;
import org.openhab.core.thing.binding.ThingHandlerService;
import org.openhab.core.types.Command;
import java.io.File;
import java.io.IOException;
-import java.nio.file.*;
+import java.nio.file.FileSystems;
+import java.nio.file.Path;
+import java.nio.file.StandardWatchEventKinds;
+import java.nio.file.WatchKey;
+import java.nio.file.WatchService;
import java.time.Duration;
import java.util.Collections;
import java.util.concurrent.Future;
import java.io.IOException;
import java.nio.channels.SelectionKey;
import java.nio.channels.Selector;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
import org.openhab.core.library.CoreItemFactory;
import org.openhab.core.library.types.OpenClosedType;
import org.openhab.core.library.types.StringType;
-import org.openhab.core.thing.*;
+import org.openhab.core.thing.Channel;
+import org.openhab.core.thing.ChannelUID;
+import org.openhab.core.thing.CommonTriggerEvents;
+import org.openhab.core.thing.Thing;
+import org.openhab.core.thing.ThingStatus;
+import org.openhab.core.thing.ThingStatusDetail;
import org.openhab.core.thing.binding.builder.ChannelBuilder;
import org.openhab.core.thing.binding.builder.ThingBuilder;
import org.openhab.core.types.Command;
import java.lang.reflect.Type;
-import com.google.gson.*;
+import com.google.gson.JsonArray;
+import com.google.gson.JsonDeserializationContext;
+import com.google.gson.JsonDeserializer;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonParseException;
/**
* The {@link ConnectionDeserializer} will de-serialize a connection-list
import org.openhab.core.io.transport.mqtt.MqttConnectionObserver;
import org.openhab.core.io.transport.mqtt.MqttConnectionState;
import org.openhab.core.io.transport.mqtt.MqttService;
-import org.openhab.core.thing.*;
+import org.openhab.core.thing.Bridge;
+import org.openhab.core.thing.Channel;
+import org.openhab.core.thing.ChannelUID;
+import org.openhab.core.thing.ThingStatus;
+import org.openhab.core.thing.ThingStatusDetail;
import org.openhab.core.thing.binding.BaseBridgeHandler;
import org.openhab.core.thing.binding.ThingHandlerService;
import org.openhab.core.types.Command;
*/
package org.openhab.binding.neato.internal;
-import static org.openhab.binding.neato.internal.classes.Category.HOUSE;
-import static org.openhab.binding.neato.internal.classes.Category.MAP;
+import static org.openhab.binding.neato.internal.classes.Category.*;
import static org.openhab.binding.neato.internal.classes.Mode.TURBO;
import static org.openhab.binding.neato.internal.classes.NavigationMode.DEEP;
import javax.crypto.Mac;
import javax.crypto.spec.SecretKeySpec;
-import org.openhab.binding.neato.internal.classes.*;
+import org.openhab.binding.neato.internal.classes.ErrorMessage;
+import org.openhab.binding.neato.internal.classes.NeatoGeneralInfo;
+import org.openhab.binding.neato.internal.classes.NeatoRobotInfo;
+import org.openhab.binding.neato.internal.classes.NeatoState;
import org.openhab.binding.neato.internal.config.NeatoRobotConfig;
import org.openhab.core.io.net.http.HttpUtil;
import org.openhab.core.util.HexUtils;
import org.osgi.framework.Bundle;
import org.osgi.framework.FrameworkUtil;
-import io.swagger.client.model.*;
+import io.swagger.client.model.NAHealthyHomeCoach;
+import io.swagger.client.model.NAMain;
+import io.swagger.client.model.NAPlug;
+import io.swagger.client.model.NAStationModule;
+import io.swagger.client.model.NAWelcomeCamera;
+import io.swagger.client.model.NAWelcomeHome;
/**
* The {@link NetatmoModuleDiscoveryService} searches for available Netatmo
*
* @param channelUID the channel sending the command
* @param command the command received
- *
+ *
*/
@Override
public void handleCommand(ChannelUID channelUID, Command command) {
int value = ((DecimalType) command).intValue();
if (value >= MIN_EQ && value <= MAX_EQ) {
// device can only accept even values
- if (value % 2 == 1)
+ if (value % 2 == 1) {
value++;
+ }
logger.debug("Got treble command {} zone {}", value, target);
connector.sendCfgCommand(target, NuvoCommand.TREBLE, String.valueOf(value));
}
if (command instanceof DecimalType) {
int value = ((DecimalType) command).intValue();
if (value >= MIN_EQ && value <= MAX_EQ) {
- if (value % 2 == 1)
+ if (value % 2 == 1) {
value++;
+ }
logger.debug("Got bass command {} zone {}", value, target);
connector.sendCfgCommand(target, NuvoCommand.BASS, String.valueOf(value));
}
if (command instanceof DecimalType) {
int value = ((DecimalType) command).intValue();
if (value >= MIN_EQ && value <= MAX_EQ) {
- if (value % 2 == 1)
+ if (value % 2 == 1) {
value++;
+ }
logger.debug("Got balance command {} zone {}", value, target);
connector.sendCfgCommand(target, NuvoCommand.BALANCE,
NuvoStatusCodes.getBalanceFromInt(value));
*/
package org.openhab.binding.nzwateralerts.internal.handler;
-import static org.openhab.binding.nzwateralerts.internal.NZWaterAlertsBindingConstants.*;
+import static org.openhab.binding.nzwateralerts.internal.NZWaterAlertsBindingConstants.CHANNEL_ALERTLEVEL;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
final NZWaterAlertsBinder localBinder = binder;
if (CHANNEL_ALERTLEVEL.equals(channelUID.getId())) {
if (command instanceof RefreshType) {
- if (localBinder != null)
+ if (localBinder != null) {
localBinder.update();
+ }
}
}
}
*/
package org.openhab.binding.onewire.internal.handler;
-import static org.openhab.binding.onewire.internal.OwBindingConstants.CHANNEL_DIGITAL;
-import static org.openhab.binding.onewire.internal.OwBindingConstants.THING_TYPE_BASIC;
+import static org.openhab.binding.onewire.internal.OwBindingConstants.*;
import java.util.Collections;
import java.util.Set;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.openhab.binding.onewire.internal.OwDynamicStateDescriptionProvider;
-import org.openhab.binding.onewire.internal.device.*;
+import org.openhab.binding.onewire.internal.device.AbstractDigitalOwDevice;
+import org.openhab.binding.onewire.internal.device.DS18x20;
+import org.openhab.binding.onewire.internal.device.DS2401;
+import org.openhab.binding.onewire.internal.device.DS2405;
+import org.openhab.binding.onewire.internal.device.DS2406_DS2413;
+import org.openhab.binding.onewire.internal.device.DS2408;
+import org.openhab.binding.onewire.internal.device.DS2423;
+import org.openhab.binding.onewire.internal.device.OwSensorType;
import org.openhab.core.library.types.OnOffType;
import org.openhab.core.thing.Bridge;
import org.openhab.core.thing.ChannelUID;
package org.openhab.binding.openweathermap.internal.handler;
import static org.openhab.binding.openweathermap.internal.OpenWeatherMapBindingConstants.*;
-import static org.openhab.core.library.unit.MetricPrefix.HECTO;
-import static org.openhab.core.library.unit.MetricPrefix.KILO;
-import static org.openhab.core.library.unit.MetricPrefix.MILLI;
+import static org.openhab.core.library.unit.MetricPrefix.*;
import static org.openhab.core.library.unit.SIUnits.*;
import static org.openhab.core.library.unit.Units.*;
import org.openhab.binding.openweathermap.internal.connection.OpenWeatherMapCommunicationException;
import org.openhab.binding.openweathermap.internal.connection.OpenWeatherMapConfigurationException;
import org.openhab.binding.openweathermap.internal.connection.OpenWeatherMapConnection;
-import org.openhab.binding.openweathermap.internal.dto.onecallhist.*;
+import org.openhab.binding.openweathermap.internal.dto.onecallhist.Hourly;
import org.openhab.binding.openweathermap.internal.dto.onecallhist.OpenWeatherMapOneCallHistAPIData;
+import org.openhab.binding.openweathermap.internal.dto.onecallhist.Rain;
+import org.openhab.binding.openweathermap.internal.dto.onecallhist.Snow;
import org.openhab.core.i18n.TimeZoneProvider;
import org.openhab.core.library.types.QuantityType;
import org.openhab.core.thing.ChannelUID;
*/
package org.openhab.binding.pilight.internal;
-import java.io.*;
+import java.io.BufferedReader;
+import java.io.Closeable;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.PrintStream;
import java.net.Socket;
import java.util.Collections;
-import java.util.concurrent.*;
+import java.util.concurrent.ConcurrentLinkedQueue;
+import java.util.concurrent.ScheduledExecutorService;
+import java.util.concurrent.ScheduledFuture;
+import java.util.concurrent.TimeUnit;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
-import org.openhab.binding.pilight.internal.dto.*;
+import org.openhab.binding.pilight.internal.dto.Action;
+import org.openhab.binding.pilight.internal.dto.AllStatus;
+import org.openhab.binding.pilight.internal.dto.Identification;
+import org.openhab.binding.pilight.internal.dto.Message;
+import org.openhab.binding.pilight.internal.dto.Options;
+import org.openhab.binding.pilight.internal.dto.Response;
+import org.openhab.binding.pilight.internal.dto.Status;
+import org.openhab.binding.pilight.internal.dto.Version;
import org.openhab.core.thing.ThingStatus;
import org.openhab.core.thing.ThingStatusDetail;
import org.slf4j.Logger;
/**
* Stops the listener
*/
+ @Override
public void close() {
disconnect();
Thread.currentThread().interrupt();
*/
package org.openhab.binding.pilight.internal.discovery;
-import java.io.*;
-import java.net.*;
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.net.DatagramPacket;
+import java.net.DatagramSocket;
+import java.net.Inet4Address;
+import java.net.InetAddress;
+import java.net.InetSocketAddress;
+import java.net.NetworkInterface;
import java.nio.charset.StandardCharsets;
-import java.util.*;
+import java.util.Collections;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Scanner;
+import java.util.Set;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit;
import static org.openhab.binding.pilight.internal.PilightBindingConstants.*;
-import java.util.*;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Set;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit;
import org.openhab.binding.pilight.internal.dto.Config;
import org.openhab.binding.pilight.internal.dto.Device;
import org.openhab.binding.pilight.internal.dto.Status;
-import org.openhab.core.thing.*;
+import org.openhab.core.thing.Bridge;
+import org.openhab.core.thing.ChannelUID;
+import org.openhab.core.thing.Thing;
+import org.openhab.core.thing.ThingStatus;
import org.openhab.core.thing.binding.BaseThingHandler;
import org.openhab.core.thing.binding.BridgeHandler;
import org.openhab.core.types.Command;
import org.openhab.binding.pilight.internal.PilightBridgeConfiguration;
import org.openhab.binding.pilight.internal.PilightConnector;
import org.openhab.binding.pilight.internal.discovery.PilightDeviceDiscoveryService;
-import org.openhab.binding.pilight.internal.dto.*;
+import org.openhab.binding.pilight.internal.dto.Action;
+import org.openhab.binding.pilight.internal.dto.Config;
+import org.openhab.binding.pilight.internal.dto.DeviceType;
+import org.openhab.binding.pilight.internal.dto.Status;
+import org.openhab.binding.pilight.internal.dto.Version;
import org.openhab.core.common.NamedThreadFactory;
-import org.openhab.core.thing.*;
+import org.openhab.core.thing.Bridge;
+import org.openhab.core.thing.ChannelUID;
+import org.openhab.core.thing.Thing;
+import org.openhab.core.thing.ThingStatus;
+import org.openhab.core.thing.ThingStatusDetail;
import org.openhab.core.thing.binding.BaseBridgeHandler;
import org.openhab.core.thing.binding.ThingHandler;
import org.openhab.core.thing.binding.ThingHandlerService;
@Override
public boolean equals(Object o) {
- if (this == o)
+ if (this == o) {
return true;
- if (o == null || getClass() != o.getClass())
+ }
+ if (o == null || getClass() != o.getClass()) {
return false;
+ }
DiscoveryRawResponseDTO that = (DiscoveryRawResponseDTO) o;
return response == that.response && data.equals(that.data) && Objects.equals(ipAddress, that.ipAddress);
}
@Override
public boolean equals(Object o) {
- if (this == o)
+ if (this == o) {
return true;
- if (o == null || getClass() != o.getClass())
+ }
+ if (o == null || getClass() != o.getClass()) {
return false;
+ }
DiscoveryResponseDTO that = (DiscoveryResponseDTO) o;
return serialNumber.equals(that.serialNumber) && regId.equals(that.regId) && sak.equals(that.sak)
&& name.equals(that.name) && macAddress.equals(that.macAddress) && version.equals(that.version);
@Override
public boolean equals(Object o) {
- if (this == o)
+ if (this == o) {
return true;
- if (o == null || getClass() != o.getClass())
+ }
+ if (o == null || getClass() != o.getClass()) {
return false;
+ }
SwitchResponseDTO that = (SwitchResponseDTO) o;
return response == that.response && code == that.code;
}
@Override
public boolean equals(Object o) {
- if (this == o)
+ if (this == o) {
return true;
- if (o == null || getClass() != o.getClass())
+ }
+ if (o == null || getClass() != o.getClass()) {
return false;
+ }
UdpResponseDTO that = (UdpResponseDTO) o;
return answer.equals(that.answer) && ipAddress.equals(that.ipAddress);
}
* also known as the Climatix IC server account )
*
* @author Andrew Fiddian-Green - Initial contribution
- *
+ *
*/
@NonNullByDefault
public class RdsCloudHandler extends BaseBridgeHandler {
return;
}
- if (logger.isDebugEnabled())
+ if (logger.isDebugEnabled()) {
logger.debug("polling interval={}", config.pollingInterval);
+ }
if (config.pollingInterval < FAST_POLL_INTERVAL || config.pollingInterval > LAZY_POLL_INTERVAL) {
updateStatus(ThingStatus.OFFLINE, ThingStatusDetail.CONFIGURATION_ERROR,
if (valueIsPrimitive) {
JsonPrimitive primitiveType = value.getAsJsonPrimitive();
pointType = primitiveType.isString() ? PointType.STRING : PointType.NUMBER;
- } else
+ } else {
pointType = PointType.NESTED_NUMBER;
+ }
}
BasePoint point;
*/
package org.openhab.binding.smartthings.internal.discovery;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit;
import java.math.BigDecimal;
import java.time.ZoneOffset;
import java.time.ZonedDateTime;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Optional;
import java.util.concurrent.Future;
import java.util.concurrent.TimeUnit;
/**
* Update channels with new forecast data.
- *
+ *
* @param timeSeries A {@link TimeSeries} object containing forecasts.
*/
private void updateChannels(TimeSeries timeSeries) {
/**
* Dispose the {@link org.openhab.core.thing.binding.ThingHandler}. Cancel scheduled jobs
*/
+ @Override
public void dispose() {
cancelPolling();
}
/**
* Checks if it is a new hour.
- *
+ *
* @return true if the current time is more than one hour after currentHour, otherwise false.
*/
private boolean isItNewHour() {
/**
* Call Smhi's endpoint to check for the time of the last forecast, to see if a new one is available.
- *
+ *
* @return true if the time of the latest forecast is equal to or after currentHour, otherwise false
*/
private boolean isForecastUpdated() {
/**
* Get the current time rounded down to hour
- *
+ *
* @return A {@link ZonedDateTime} corresponding to the last even hour
*/
private ZonedDateTime calculateCurrentHour() {
/**
* Get the current time rounded down to day
- *
+ *
* @return A {@link ZonedDateTime} corresponding to the last even day.
*/
private ZonedDateTime calculateCurrentDay() {
/**
* Creates channels based on selections in thing configuration
- *
+ *
* @return
*/
private List<Channel> createChannels() {
if (listener != null) {
try {
Frame nextFrame = teleinfoStream.readNextFrame();
- if (nextFrame != null)
+ if (nextFrame != null) {
listener.onFrameReceived(nextFrame);
+ }
} catch (InvalidFrameException e) {
logger.warn("Got invalid frame. Detail: \"{}\"", e.getLocalizedMessage());
listener.onInvalidFrameReceived(this, e);
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
-import org.openhab.core.thing.type.*;
+import org.openhab.core.thing.type.ChannelType;
+import org.openhab.core.thing.type.ChannelTypeBuilder;
+import org.openhab.core.thing.type.ChannelTypeProvider;
+import org.openhab.core.thing.type.ChannelTypeUID;
+import org.openhab.core.thing.type.StateChannelTypeBuilder;
import org.openhab.core.types.StateDescriptionFragmentBuilder;
import org.osgi.service.component.annotations.Component;
*/
package org.openhab.binding.tr064.internal;
-import static org.openhab.binding.tr064.internal.Tr064BindingConstants.THING_TYPE_SUBDEVICE;
-import static org.openhab.binding.tr064.internal.Tr064BindingConstants.THING_TYPE_SUBDEVICE_LAN;
+import static org.openhab.binding.tr064.internal.Tr064BindingConstants.*;
-import java.util.*;
+import java.util.Collections;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
import static org.openhab.binding.tr064.internal.Tr064BindingConstants.THING_TYPE_FRITZBOX;
-import java.util.*;
+import java.util.Set;
import java.util.stream.Collectors;
import java.util.stream.Stream;
*/
package org.openhab.binding.tr064.internal;
-import static org.openhab.binding.tr064.internal.Tr064BindingConstants.THING_TYPE_FRITZBOX;
-import static org.openhab.binding.tr064.internal.Tr064BindingConstants.THING_TYPE_GENERIC;
+import static org.openhab.binding.tr064.internal.Tr064BindingConstants.*;
import java.net.URI;
import java.net.URISyntaxException;
import java.time.Duration;
-import java.util.*;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Set;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
import org.openhab.binding.tr064.internal.util.SCPDUtil;
import org.openhab.binding.tr064.internal.util.Util;
import org.openhab.core.cache.ExpiringCacheMap;
-import org.openhab.core.thing.*;
+import org.openhab.core.thing.Bridge;
+import org.openhab.core.thing.ChannelUID;
+import org.openhab.core.thing.ThingStatus;
+import org.openhab.core.thing.ThingStatusDetail;
+import org.openhab.core.thing.ThingTypeUID;
+import org.openhab.core.thing.ThingUID;
import org.openhab.core.thing.binding.BaseBridgeHandler;
import org.openhab.core.thing.binding.ThingHandlerService;
import org.openhab.core.thing.binding.builder.ThingBuilder;
*/
package org.openhab.binding.tr064.internal;
-import static org.openhab.binding.tr064.internal.Tr064BindingConstants.THING_TYPE_SUBDEVICE;
-import static org.openhab.binding.tr064.internal.Tr064BindingConstants.THING_TYPE_SUBDEVICE_LAN;
+import static org.openhab.binding.tr064.internal.Tr064BindingConstants.*;
import java.util.HashMap;
import java.util.Map;
import org.openhab.binding.tr064.internal.util.SCPDUtil;
import org.openhab.binding.tr064.internal.util.Util;
import org.openhab.core.cache.ExpiringCacheMap;
-import org.openhab.core.thing.*;
+import org.openhab.core.thing.Bridge;
+import org.openhab.core.thing.ChannelUID;
+import org.openhab.core.thing.Thing;
+import org.openhab.core.thing.ThingStatus;
+import org.openhab.core.thing.ThingStatusDetail;
+import org.openhab.core.thing.ThingStatusInfo;
+import org.openhab.core.thing.ThingTypeUID;
import org.openhab.core.thing.binding.BaseThingHandler;
import org.openhab.core.thing.binding.builder.ThingBuilder;
import org.openhab.core.types.Command;
*/
package org.openhab.binding.tr064.internal.phonebook;
-import java.util.*;
+import java.util.Collection;
+import java.util.Optional;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
import static java.util.Comparator.comparing;
import java.net.URI;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import java.util.stream.Collectors;
import java.util.concurrent.TimeoutException;
import java.util.stream.Collectors;
-import javax.xml.soap.*;
+import javax.xml.soap.MessageFactory;
+import javax.xml.soap.MimeHeader;
+import javax.xml.soap.MimeHeaders;
+import javax.xml.soap.SOAPBody;
+import javax.xml.soap.SOAPElement;
+import javax.xml.soap.SOAPEnvelope;
+import javax.xml.soap.SOAPException;
+import javax.xml.soap.SOAPMessage;
+import javax.xml.soap.SOAPPart;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jetty.client.HttpClient;
@Override
public boolean equals(@Nullable Object o) {
- if (this == o)
+ if (this == o) {
return true;
- if (o == null || getClass() != o.getClass())
+ }
+ if (o == null || getClass() != o.getClass()) {
return false;
+ }
SOAPRequest that = (SOAPRequest) o;
- if (!service.equals(that.service))
+ if (!service.equals(that.service)) {
return false;
- if (!soapAction.equals(that.soapAction))
+ }
+ if (!soapAction.equals(that.soapAction)) {
return false;
+ }
return arguments.equals(that.arguments);
}
import static org.openhab.binding.unifiedremote.internal.UnifiedRemoteBindingConstants.*;
import java.io.IOException;
-import java.net.*;
+import java.net.DatagramPacket;
+import java.net.DatagramSocket;
+import java.net.InetAddress;
+import java.net.SocketException;
+import java.net.SocketTimeoutException;
import java.text.ParseException;
import java.util.Arrays;
import java.util.HashMap;
String host = receivePacket.getAddress().getHostAddress();
String reply = new String(receivePacket.getData()).replaceAll("[\\p{C}]", NON_PRINTABLE_CHARTS_REPLACEMENT)
.replaceAll("[^\\x00-\\x7F]", NON_PRINTABLE_CHARTS_REPLACEMENT);
- if (!reply.startsWith(DISCOVERY_RESPONSE_PREFIX))
+ if (!reply.startsWith(DISCOVERY_RESPONSE_PREFIX)) {
throw new ParseException("Bad discovery response prefix", 0);
+ }
String[] parts = Arrays
.stream(reply.replace(DISCOVERY_RESPONSE_PREFIX, "").split(NON_PRINTABLE_CHARTS_REPLACEMENT))
.filter((String e) -> e.length() != 0).toArray(String[]::new);
*/
package org.openhab.binding.unifiedremote.internal;
-import static org.openhab.binding.unifiedremote.internal.UnifiedRemoteBindingConstants.MOUSE_CHANNEL;
-import static org.openhab.binding.unifiedremote.internal.UnifiedRemoteBindingConstants.SEND_KEY_CHANNEL;
+import static org.openhab.binding.unifiedremote.internal.UnifiedRemoteBindingConstants.*;
import java.net.ConnectException;
import java.net.NoRouteToHostException;
@Override
public void handleCommand(ChannelUID channelUID, Command command) {
String channelId = channelUID.getId();
- if (!isLinked(channelId))
+ if (!isLinked(channelId)) {
return;
+ }
String stringCommand = command.toFullString();
UnifiedRemoteConnection urConnection = connection;
try {
connectionCheckerSchedule = scheduler.scheduleWithFixedDelay(() -> {
try {
UnifiedRemoteConnection urConnection = connection;
- if (urConnection == null)
+ if (urConnection == null) {
return;
+ }
ThingStatus status = thing.getStatus();
if ((status == ThingStatus.OFFLINE || status == ThingStatus.UNKNOWN) && connection != null) {
urConnection.authenticate();
}
private void scheduleReadDataJob(int initialDelay) {
- if (initialDelay < 0)
+ if (initialDelay < 0) {
initialDelay = 0;
+ }
readDataInterval = getConfigAs(ValloxMVConfig.class).getUpdateinterval();
- if (readDataInterval < 15)
+ if (readDataInterval < 15) {
readDataInterval = 60;
+ }
logger.debug("Data table request interval {} seconds, Request in {} seconds", readDataInterval, initialDelay);
*/
private void stopRefreshThread(boolean force) {
ScheduledFuture<?> refreshThread = refreshThreadFuture;
- if (refreshThread != null)
+ if (refreshThread != null) {
refreshThread.cancel(force);
+ }
}
}
} catch (IOException e) {
// cleanup after timeout
try {
- if (localOut != null)
+ if (localOut != null) {
localOut.close();
- if (localIn != null)
+ }
+ if (localIn != null) {
localIn.close();
+ }
localSocket.close();
} catch (IOException ex) {
}
import java.io.IOException;
import java.net.URI;
import java.util.Map;
-import java.util.concurrent.*;
+import java.util.concurrent.ExecutionException;
+import java.util.concurrent.Future;
+import java.util.concurrent.ScheduledFuture;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.TimeoutException;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import java.net.URI;
import java.time.Duration;
import java.time.Instant;
-import java.util.*;
+import java.util.Map;
+import java.util.Optional;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit;
import org.eclipse.jetty.client.HttpClient;
import org.eclipse.jetty.websocket.client.WebSocketClient;
import org.openhab.binding.webthing.internal.channel.Channels;
-import org.openhab.binding.webthing.internal.client.*;
+import org.openhab.binding.webthing.internal.client.ConsumedThing;
+import org.openhab.binding.webthing.internal.client.ConsumedThingFactory;
import org.openhab.binding.webthing.internal.link.ChannelToPropertyLink;
import org.openhab.binding.webthing.internal.link.PropertyToChannelLink;
import org.openhab.binding.webthing.internal.link.UnknownPropertyException;
-import org.openhab.core.thing.*;
+import org.openhab.core.thing.ChannelUID;
+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.types.Command;
import org.openhab.core.types.RefreshType;
*/
package org.openhab.binding.webthing.internal.discovery;
-import static org.openhab.binding.webthing.internal.WebThingBindingConstants.MDNS_SERVICE_TYPE;
-import static org.openhab.binding.webthing.internal.WebThingBindingConstants.THING_TYPE_UID;
+import static org.openhab.binding.webthing.internal.WebThingBindingConstants.*;
import java.io.IOException;
import java.net.URI;
import java.time.Duration;
import java.time.Instant;
-import java.util.*;
-import java.util.concurrent.*;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Set;
+import java.util.concurrent.Callable;
+import java.util.concurrent.CopyOnWriteArrayList;
+import java.util.concurrent.ExecutionException;
+import java.util.concurrent.Future;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.TimeoutException;
import javax.jmdns.ServiceEvent;
import javax.jmdns.ServiceInfo;
*/
package org.openhab.binding.webthing.internal.link;
-import java.awt.*;
+import java.awt.Color;
import java.math.BigDecimal;
import java.util.Collection;
import java.util.Locale;
import org.eclipse.jdt.annotation.NonNullByDefault;
-import org.openhab.core.library.types.*;
+import org.openhab.core.library.types.DecimalType;
+import org.openhab.core.library.types.HSBType;
+import org.openhab.core.library.types.OnOffType;
+import org.openhab.core.library.types.OpenClosedType;
+import org.openhab.core.library.types.PercentType;
+import org.openhab.core.library.types.StringType;
import org.openhab.core.types.Command;
import org.openhab.core.types.State;
/**
* create a TypeConverter for a given Item type and property type
- *
+ *
* @param itemType the item type
* @param propertyType the property type
* @return the type converter
*/
package org.openhab.binding.webthing.internal.client;
-import static org.mockito.ArgumentMatchers.argThat;
-import static org.mockito.ArgumentMatchers.eq;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.when;
+import static org.mockito.ArgumentMatchers.*;
+import static org.mockito.Mockito.*;
import java.nio.ByteBuffer;
import java.nio.charset.StandardCharsets;
-import java.util.concurrent.*;
+import java.util.concurrent.TimeUnit;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
*/
package org.openhab.binding.webthing.internal.link;
-import static org.junit.jupiter.api.Assertions.*;
+import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.mockito.Mockito.*;
import java.net.URI;
import org.openhab.binding.webthing.internal.client.Mocks;
import org.openhab.binding.webthing.internal.client.WebthingTest;
import org.openhab.binding.webthing.internal.client.dto.PropertyStatusMessage;
-import org.openhab.core.library.types.*;
-import org.openhab.core.thing.*;
+import org.openhab.core.library.types.DecimalType;
+import org.openhab.core.library.types.HSBType;
+import org.openhab.core.library.types.OnOffType;
+import org.openhab.core.library.types.OpenClosedType;
+import org.openhab.core.library.types.PercentType;
+import org.openhab.core.library.types.StringType;
+import org.openhab.core.thing.ChannelUID;
+import org.openhab.core.thing.ThingUID;
import org.openhab.core.types.Command;
import org.openhab.core.types.State;
import org.eclipse.jetty.client.api.AuthenticationStore;
import org.eclipse.jetty.client.util.DigestAuthentication;
import org.eclipse.jetty.client.util.StringContentProvider;
-import org.openhab.core.thing.*;
+import org.openhab.core.thing.Channel;
+import org.openhab.core.thing.ChannelUID;
+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.types.Command;
import org.openhab.core.types.RefreshType;
}
public static <T> T requireNonNull(@Nullable T obj) throws WlanThermoInputException {
- if (obj == null)
+ if (obj == null) {
throw new WlanThermoInputException();
+ }
return obj;
}
}
import org.openhab.binding.wlanthermo.internal.api.esp32.dto.data.Pm;
import org.openhab.binding.wlanthermo.internal.api.esp32.dto.data.System;
import org.openhab.binding.wlanthermo.internal.api.esp32.dto.settings.Settings;
-import org.openhab.core.library.types.*;
+import org.openhab.core.library.types.DecimalType;
+import org.openhab.core.library.types.HSBType;
+import org.openhab.core.library.types.OnOffType;
+import org.openhab.core.library.types.QuantityType;
+import org.openhab.core.library.types.StringType;
import org.openhab.core.library.unit.ImperialUnits;
import org.openhab.core.library.unit.SIUnits;
import org.openhab.core.library.unit.Units;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jetty.client.HttpClient;
-import org.openhab.binding.wlanthermo.internal.*;
+import org.openhab.binding.wlanthermo.internal.WlanThermoBindingConstants;
+import org.openhab.binding.wlanthermo.internal.WlanThermoException;
+import org.openhab.binding.wlanthermo.internal.WlanThermoHandler;
+import org.openhab.binding.wlanthermo.internal.WlanThermoInputException;
+import org.openhab.binding.wlanthermo.internal.WlanThermoUnknownChannelException;
import org.openhab.binding.wlanthermo.internal.api.esp32.dto.data.Data;
import org.openhab.binding.wlanthermo.internal.api.esp32.dto.settings.Settings;
-import org.openhab.core.thing.*;
+import org.openhab.core.thing.Channel;
+import org.openhab.core.thing.ChannelUID;
+import org.openhab.core.thing.Thing;
import org.openhab.core.types.Command;
import org.openhab.core.types.State;
import static org.openhab.binding.wlanthermo.internal.WlanThermoBindingConstants.*;
import static org.openhab.binding.wlanthermo.internal.WlanThermoUtil.requireNonNull;
-import java.awt.*;
+import java.awt.Color;
import javax.measure.Unit;
import javax.measure.quantity.Temperature;
import org.openhab.binding.wlanthermo.internal.WlanThermoBindingConstants;
import org.openhab.binding.wlanthermo.internal.WlanThermoInputException;
import org.openhab.binding.wlanthermo.internal.WlanThermoUnknownChannelException;
-import org.openhab.binding.wlanthermo.internal.api.mini.dto.builtin.*;
-import org.openhab.core.library.types.*;
+import org.openhab.binding.wlanthermo.internal.api.mini.dto.builtin.App;
+import org.openhab.binding.wlanthermo.internal.api.mini.dto.builtin.Channel;
+import org.openhab.binding.wlanthermo.internal.api.mini.dto.builtin.Data;
+import org.openhab.binding.wlanthermo.internal.api.mini.dto.builtin.Pit;
+import org.openhab.core.library.types.DecimalType;
+import org.openhab.core.library.types.HSBType;
+import org.openhab.core.library.types.OnOffType;
+import org.openhab.core.library.types.QuantityType;
+import org.openhab.core.library.types.StringType;
import org.openhab.core.library.unit.ImperialUnits;
import org.openhab.core.library.unit.SIUnits;
import org.openhab.core.thing.ChannelUID;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jetty.client.HttpClient;
-import org.openhab.binding.wlanthermo.internal.*;
+import org.openhab.binding.wlanthermo.internal.WlanThermoException;
+import org.openhab.binding.wlanthermo.internal.WlanThermoHandler;
+import org.openhab.binding.wlanthermo.internal.WlanThermoInputException;
+import org.openhab.binding.wlanthermo.internal.WlanThermoUnknownChannelException;
import org.openhab.binding.wlanthermo.internal.api.mini.dto.builtin.App;
-import org.openhab.core.thing.*;
+import org.openhab.core.thing.Channel;
+import org.openhab.core.thing.ChannelUID;
+import org.openhab.core.thing.Thing;
import org.openhab.core.types.Command;
import org.openhab.core.types.State;
import static org.openhab.binding.wlanthermo.internal.WlanThermoBindingConstants.*;
import static org.openhab.binding.wlanthermo.internal.WlanThermoUtil.requireNonNull;
-import java.awt.*;
+import java.awt.Color;
import java.math.BigInteger;
import java.util.List;
import org.openhab.binding.wlanthermo.internal.api.nano.dto.data.Pm;
import org.openhab.binding.wlanthermo.internal.api.nano.dto.data.System;
import org.openhab.binding.wlanthermo.internal.api.nano.dto.settings.Settings;
-import org.openhab.core.library.types.*;
+import org.openhab.core.library.types.DecimalType;
+import org.openhab.core.library.types.HSBType;
+import org.openhab.core.library.types.OnOffType;
+import org.openhab.core.library.types.QuantityType;
+import org.openhab.core.library.types.StringType;
import org.openhab.core.library.unit.ImperialUnits;
import org.openhab.core.library.unit.SIUnits;
import org.openhab.core.library.unit.Units;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jetty.client.HttpClient;
-import org.openhab.binding.wlanthermo.internal.*;
+import org.openhab.binding.wlanthermo.internal.WlanThermoException;
+import org.openhab.binding.wlanthermo.internal.WlanThermoHandler;
+import org.openhab.binding.wlanthermo.internal.WlanThermoInputException;
+import org.openhab.binding.wlanthermo.internal.WlanThermoUnknownChannelException;
import org.openhab.binding.wlanthermo.internal.api.nano.dto.data.Data;
import org.openhab.binding.wlanthermo.internal.api.nano.dto.settings.Settings;
-import org.openhab.core.thing.*;
+import org.openhab.core.thing.Channel;
+import org.openhab.core.thing.ChannelUID;
+import org.openhab.core.thing.Thing;
import org.openhab.core.types.Command;
import org.openhab.core.types.State;
package org.openhab.binding.wlanthermo.internal.api.esp32;
import static org.openhab.binding.wlanthermo.internal.WlanThermoBindingConstants.*;
-import static org.openhab.binding.wlanthermo.internal.WlanThermoBindingConstants.TRIGGER_NONE;
-import java.awt.*;
+import java.awt.Color;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.nio.charset.StandardCharsets;
import org.openhab.binding.wlanthermo.internal.WlanThermoUtil;
import org.openhab.binding.wlanthermo.internal.api.esp32.dto.data.Data;
import org.openhab.binding.wlanthermo.internal.api.esp32.dto.settings.Settings;
-import org.openhab.core.library.types.*;
+import org.openhab.core.library.types.DecimalType;
+import org.openhab.core.library.types.HSBType;
+import org.openhab.core.library.types.OnOffType;
+import org.openhab.core.library.types.QuantityType;
+import org.openhab.core.library.types.StringType;
import org.openhab.core.library.unit.SIUnits;
import org.openhab.core.library.unit.Units;
import org.openhab.core.thing.ChannelUID;
import static org.openhab.binding.wlanthermo.internal.WlanThermoBindingConstants.*;
-import java.awt.*;
+import java.awt.Color;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.nio.charset.StandardCharsets;
import org.openhab.binding.wlanthermo.internal.WlanThermoUnknownChannelException;
import org.openhab.binding.wlanthermo.internal.WlanThermoUtil;
import org.openhab.binding.wlanthermo.internal.api.mini.dto.builtin.App;
-import org.openhab.core.library.types.*;
+import org.openhab.core.library.types.DecimalType;
+import org.openhab.core.library.types.HSBType;
+import org.openhab.core.library.types.OnOffType;
+import org.openhab.core.library.types.QuantityType;
+import org.openhab.core.library.types.StringType;
import org.openhab.core.library.unit.ImperialUnits;
import org.openhab.core.thing.ChannelUID;
import org.openhab.core.thing.ThingUID;
import static org.openhab.binding.wlanthermo.internal.WlanThermoBindingConstants.*;
-import java.awt.*;
+import java.awt.Color;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.nio.charset.StandardCharsets;
import org.openhab.binding.wlanthermo.internal.WlanThermoUtil;
import org.openhab.binding.wlanthermo.internal.api.nano.dto.data.Data;
import org.openhab.binding.wlanthermo.internal.api.nano.dto.settings.Settings;
-import org.openhab.core.library.types.*;
+import org.openhab.core.library.types.DecimalType;
+import org.openhab.core.library.types.HSBType;
+import org.openhab.core.library.types.OnOffType;
+import org.openhab.core.library.types.QuantityType;
+import org.openhab.core.library.types.StringType;
import org.openhab.core.library.unit.SIUnits;
import org.openhab.core.library.unit.Units;
import org.openhab.core.thing.ChannelUID;
import java.util.Map;
import java.util.concurrent.TimeUnit;
-import org.jivesoftware.smack.*;
+import org.jivesoftware.smack.SmackException;
+import org.jivesoftware.smack.XMPPException;
import org.openhab.binding.xmppclient.internal.XMPPClient;
import org.openhab.binding.xmppclient.internal.action.XMPPActions;
import org.openhab.core.thing.Bridge;
import java.util.HashSet;
import java.util.Set;
-import org.openhab.binding.yeelight.internal.handler.*;
+import org.openhab.binding.yeelight.internal.handler.YeelightCeilingHandler;
+import org.openhab.binding.yeelight.internal.handler.YeelightCeilingWithAmbientHandler;
+import org.openhab.binding.yeelight.internal.handler.YeelightCeilingWithNightHandler;
+import org.openhab.binding.yeelight.internal.handler.YeelightColorHandler;
+import org.openhab.binding.yeelight.internal.handler.YeelightStripeHandler;
+import org.openhab.binding.yeelight.internal.handler.YeelightWhiteHandler;
import org.openhab.core.thing.Thing;
import org.openhab.core.thing.ThingTypeUID;
import org.openhab.core.thing.binding.BaseThingHandlerFactory;
import org.openhab.binding.yeelight.internal.lib.listeners.DeviceConnectionStateListener;
import org.openhab.binding.yeelight.internal.lib.listeners.DeviceStatusChangeListener;
import org.openhab.binding.yeelight.internal.lib.services.DeviceManager;
-import org.openhab.core.library.types.*;
-import org.openhab.core.thing.*;
+import org.openhab.core.library.types.DecimalType;
+import org.openhab.core.library.types.HSBType;
+import org.openhab.core.library.types.IncreaseDecreaseType;
+import org.openhab.core.library.types.OnOffType;
+import org.openhab.core.library.types.PercentType;
+import org.openhab.core.library.types.StringType;
+import org.openhab.core.thing.ChannelUID;
+import org.openhab.core.thing.Thing;
+import org.openhab.core.thing.ThingStatus;
+import org.openhab.core.thing.ThingStatusDetail;
+import org.openhab.core.thing.ThingTypeUID;
import org.openhab.core.thing.binding.BaseThingHandler;
import org.openhab.core.types.Command;
import org.openhab.core.types.RefreshType;
*/
package org.openhab.io.hueemulation.internal.rest;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+import java.util.Objects;
+import java.util.UUID;
import java.util.stream.Collectors;
import javax.ws.rs.Consumes;
public static NumberItem createNumberItem(String name, Number value) {
NumberItem numberItem = new NumberItem(name);
- if (value instanceof Integer || value instanceof Long)
+ if (value instanceof Integer || value instanceof Long) {
numberItem.setState(new DecimalType(value.longValue()));
- else
+ } else {
numberItem.setState(new DecimalType(value.doubleValue()));
+ }
return numberItem;
}
}
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
-import java.util.*;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Hashtable;
+import java.util.Map;
+import java.util.Objects;
import javax.imageio.ImageIO;
import javax.servlet.Servlet;
import static org.junit.jupiter.api.Assertions.*;
-import java.io.*;
+import java.io.File;
+import java.io.FileReader;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.io.PrintStream;
import java.util.Locale;
import java.util.Properties;
import java.util.concurrent.Callable;