public final void initialise() throws InitialisationException { lifecycleManager.checkPhase(Initialisable.PHASE_NAME); if (getParent() != null) { parent.initialise(); } fireSystemEvent(new RegistryNotification(this, RegistryNotification.REGISTRY_INITIALISING)); if (id == null) { logger.warn("No unique id has been set on this registry"); id = UUID.getUUID(); } try { doInitialise(); lifecycleManager.firePhase(getManagementContext(), Initialisable.PHASE_NAME); } catch (InitialisationException e) { throw e; } catch (Exception e) { throw new InitialisationException(e, this); } }