diff --git a/plugins/network-elements/juniper-contrail/src/main/java/org/apache/cloudstack/network/contrail/management/EventUtils.java b/plugins/network-elements/juniper-contrail/src/main/java/org/apache/cloudstack/network/contrail/management/EventUtils.java index d47bf6eceeb..338caca1fbe 100644 --- a/plugins/network-elements/juniper-contrail/src/main/java/org/apache/cloudstack/network/contrail/management/EventUtils.java +++ b/plugins/network-elements/juniper-contrail/src/main/java/org/apache/cloudstack/network/contrail/management/EventUtils.java @@ -48,6 +48,10 @@ public class EventUtils { private static EventDistributor eventDistributor; + private static final String MODULE_TOP_LEVEL_PACKAGE = + EventUtils.class.getPackage().getName().substring(0, + EventUtils.class.getPackage().getName().lastIndexOf('.')); + public EventUtils() { } @@ -143,6 +147,13 @@ public class EventUtils { @Override public void interceptComplete(Method method, Object target, Object event) { ActionEvent actionEvent = method.getAnnotation(ActionEvent.class); + boolean sameModule = false; + if (target != null && target.getClass().getPackage() != null) { + sameModule = target.getClass().getPackage().getName().startsWith(MODULE_TOP_LEVEL_PACKAGE); + } + if (!sameModule) { + return; + } if (actionEvent != null) { CallContext ctx = CallContext.current(); if (!actionEvent.create()) {