From 5fda1432303e04bb6d5dcf9981977e278ce54317 Mon Sep 17 00:00:00 2001 From: Markus Rathgeb Date: Thu, 20 Jun 2019 21:35:43 +0200 Subject: [PATCH] simplify contains, get, compute separation (#887) Signed-off-by: Markus Rathgeb --- .../core/ephemeris/internal/EphemerisManagerImpl.java | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/bundles/org.openhab.core.ephemeris/src/main/java/org/eclipse/smarthome/core/ephemeris/internal/EphemerisManagerImpl.java b/bundles/org.openhab.core.ephemeris/src/main/java/org/eclipse/smarthome/core/ephemeris/internal/EphemerisManagerImpl.java index 1f080cf4c..f38068f19 100644 --- a/bundles/org.openhab.core.ephemeris/src/main/java/org/eclipse/smarthome/core/ephemeris/internal/EphemerisManagerImpl.java +++ b/bundles/org.openhab.core.ephemeris/src/main/java/org/eclipse/smarthome/core/ephemeris/internal/EphemerisManagerImpl.java @@ -141,14 +141,12 @@ public class EphemerisManagerImpl implements EphemerisManager, ConfigOptionProvi } private HolidayManager getHolidayManager(Object managerKey) { - if (!holidayManagers.containsKey(managerKey)) { - ManagerParameter parameters = managerKey.getClass() == String.class + return holidayManagers.computeIfAbsent(managerKey, key -> { + final ManagerParameter parameters = managerKey.getClass() == String.class ? ManagerParameters.create((String) managerKey) : ManagerParameters.create((URL) managerKey); - - holidayManagers.put(managerKey, HolidayManager.getInstance(parameters)); - } - return holidayManagers.get(managerKey); + return HolidayManager.getInstance(parameters); + }); } private Optional getHoliday(ZonedDateTime date) {