@SuppressWarnings("unchecked")
@Override
public void onApplicationEvent(@Nonnull ContextRefreshedEvent event) {
if (event.getApplicationContext() == this.applicationContext) {
long startTime = System.currentTimeMillis();
Map<String, String> squashedMap = new HashMap<>();
for (ActionsConfiguration configuration : configurations) {
for (ActionDefinition actionDefinition : configuration.getActions()) {
squashedMap.put(actionDefinition.getId(), actionDefinition.getActionClass());
}
}
classes.clear();
for (Map.Entry<String, String> entry : squashedMap.entrySet()) {
Class clazz = scripting.loadClassNN(entry.getValue());
classes.put(entry.getKey(), clazz);
}
log.debug("Actions initialized in {} ms", System.currentTimeMillis() - startTime);
}
}
}