public final void destroy() { onDestroy(); for (Initializer initializer : initializers) { log.debug("Destroying '{}'", initializer.getClass().getName()); try { initializer.destroy(this); } catch (Exception e) { log.error("Failed to destroy '{}'", initializer.getClass().getName(), e); } } }