in disco-java-agent/disco-java-agent-core/src/main/java/software/amazon/disco/agent/plugin/PluginDiscovery.java [334:354]
static void processListenerClasses(String pluginName, String listenerClassNames, boolean bootstrap) throws Exception {
if (listenerClassNames != null) {
String[] classNames = splitString(listenerClassNames);
for (String className : classNames) {
if (LogManager.isDebugEnabled()) {
log.debug("DiSCo(Core) attempting to add Listener from plugin using class: " + className);
}
try {
Class<?> clazz = classForName(className.trim(), bootstrap);
if (Listener.class.isAssignableFrom(clazz)) {
ClassInfo installableInfo = new ClassInfo(pluginName, clazz, bootstrap);
listenerClasses.add(installableInfo);
} else {
log.warn("DiSCo(Core) specified Listener is not an instance of Listener: " + className);
}
} catch (ClassNotFoundException e) {
log.warn("DiSCo(Core) failed to instantiate Listener: " + className, e);
}
}
}
}