diff --git a/bundles/org.openhab.binding.lifx/src/main/java/org/openhab/binding/lifx/internal/util/LifxThrottlingUtil.java b/bundles/org.openhab.binding.lifx/src/main/java/org/openhab/binding/lifx/internal/util/LifxThrottlingUtil.java index 8001d1e74b5e7..30d542842266b 100644 --- a/bundles/org.openhab.binding.lifx/src/main/java/org/openhab/binding/lifx/internal/util/LifxThrottlingUtil.java +++ b/bundles/org.openhab.binding.lifx/src/main/java/org/openhab/binding/lifx/internal/util/LifxThrottlingUtil.java @@ -81,7 +81,7 @@ public long getTimestamp() { private static Map macTrackerMapping = new ConcurrentHashMap<>(); - public static void lock(@Nullable MACAddress mac) { + public static void lock(@Nullable MACAddress mac) throws InterruptedException { if (mac != null) { LifxLightCommunicationTracker tracker = getOrCreateTracker(mac); tracker.lock(); @@ -108,14 +108,10 @@ private static LifxLightCommunicationTracker getOrCreateTracker(MACAddress mac) return tracker; } - private static void waitForNextPacketInterval(long timestamp) { + private static void waitForNextPacketInterval(long timestamp) throws InterruptedException { long timeToWait = Math.max(PACKET_INTERVAL - (System.currentTimeMillis() - timestamp), 0); if (timeToWait > 0) { - try { - Thread.sleep(timeToWait); - } catch (InterruptedException e) { - LOGGER.error("An exception occurred while putting the thread to sleep : '{}'", e.getMessage()); - } + Thread.sleep(timeToWait); } } @@ -130,7 +126,7 @@ public static void unlock(@Nullable MACAddress mac) { } } - public static void lock() { + public static void lock() throws InterruptedException { long lastStamp = 0; for (LifxLightCommunicationTracker tracker : trackers) { tracker.lock();