Skip to content

Commit c9a9266

Browse files
committed
Registry: Avoid warn log when adding ActionType/Metadata several times
Fix openhab/openhab-addons#18945 Regression from #4880 For Metadata, it was reported on the community forum, it occured when an item is linked to several channels. Signed-off-by: Laurent Garnier <lg.hc@free.fr>
1 parent ff11565 commit c9a9266

1 file changed

Lines changed: 14 additions & 5 deletions

File tree

bundles/org.openhab.core/src/main/java/org/openhab/core/common/registry/AbstractRegistry.java

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -192,11 +192,20 @@ private boolean added(Provider<E> provider, E element, Collection<E> providerEle
192192
E existingElement = identifierToElement.get(uid);
193193
if (existingElement != null) {
194194
Provider<E> existingElementProvider = elementToProvider.get(existingElement);
195-
logger.warn(
196-
"Cannot add \"{}\" with key \"{}\". It exists already from provider \"{}\"! Failed to add a second with the same UID from provider \"{}\"!",
197-
element.getClass().getSimpleName(), uid,
198-
existingElementProvider != null ? existingElementProvider.getClass().getSimpleName() : null,
199-
provider.getClass().getSimpleName());
195+
String elementClassName = element.getClass().getSimpleName();
196+
if ("ActionType".equals(elementClassName) || "Metadata".equals(elementClassName)) {
197+
logger.debug(
198+
"Cannot add \"{}\" with key \"{}\". It exists already from provider \"{}\"! Failed to add a second with the same UID from provider \"{}\"!",
199+
elementClassName, uid,
200+
existingElementProvider != null ? existingElementProvider.getClass().getSimpleName() : null,
201+
provider.getClass().getSimpleName());
202+
} else {
203+
logger.warn(
204+
"Cannot add \"{}\" with key \"{}\". It exists already from provider \"{}\"! Failed to add a second with the same UID from provider \"{}\"!",
205+
elementClassName, uid,
206+
existingElementProvider != null ? existingElementProvider.getClass().getSimpleName() : null,
207+
provider.getClass().getSimpleName());
208+
}
200209
return false;
201210
}
202211
try {

0 commit comments

Comments
 (0)