From d374e48b7938e8ad3514dc5cf8dff619a12595e3 Mon Sep 17 00:00:00 2001 From: Mohit Yadav <105265192+mohityadav766@users.noreply.github.com> Date: Wed, 5 Jun 2024 22:40:02 +0530 Subject: [PATCH] Fix Event Handlers registration Issue (#16544) * Fix Event Handlers Issue * Review Comments --- .../service/events/EventFilter.java | 28 +++++++++++-------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/events/EventFilter.java b/openmetadata-service/src/main/java/org/openmetadata/service/events/EventFilter.java index da54682bf74..cccf68a821c 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/events/EventFilter.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/events/EventFilter.java @@ -13,6 +13,8 @@ package org.openmetadata.service.events; +import static org.openmetadata.common.utils.CommonUtil.nullOrEmpty; + import java.util.ArrayList; import java.util.Arrays; import java.util.HashSet; @@ -44,22 +46,26 @@ public class EventFilter implements ContainerResponseFilter { registerEventHandlers(config); } + @SuppressWarnings("unchecked") private void registerEventHandlers(OpenMetadataApplicationConfig config) { - try { + if (nullOrEmpty(config.getEventHandlerConfiguration())) { Set eventHandlerClassNames = new HashSet<>(config.getEventHandlerConfiguration().getEventHandlerClassNames()); for (String eventHandlerClassName : eventHandlerClassNames) { - @SuppressWarnings("unchecked") - EventHandler eventHandler = - ((Class) Class.forName(eventHandlerClassName)) - .getConstructor() - .newInstance(); - eventHandler.init(config); - eventHandlers.add(eventHandler); - LOG.info("Added event handler {}", eventHandlerClassName); + try { + EventHandler eventHandler = + ((Class) Class.forName(eventHandlerClassName)) + .getConstructor() + .newInstance(); + eventHandler.init(config); + eventHandlers.add(eventHandler); + LOG.info("Added event handler {}", eventHandlerClassName); + } catch (Exception e) { + LOG.info("Exception ", e); + } } - } catch (Exception e) { - LOG.info("Exception ", e); + } else { + LOG.info("Event handler configuration is empty"); } }