/* */ try
/* */ {
/* 374 */ ClassLoader myCL = getClass().getClassLoader();
/* 375 */ Thread.currentThread().setContextClassLoader(myCL);
/* */
/* 378 */ StopWatch watch = new StopWatch(true);
/* */
/* 381 */ this.startDate = new Date();
/* */
/* 384 */ this.shutdownHook = new ShutdownHook();
/* 385 */ this.shutdownHook.setDaemon(true);
/* */ try
/* */ {
/* 389 */ Runtime.getRuntime().addShutdownHook(this.shutdownHook);
/* 390 */ this.log.debug("Shutdown hook added " + this.shutdownHook);
/* */ }
/* */ catch (Exception e)
/* */ {
/* 394 */ this.log.warn("Failed to add shutdown hook; ignoring", e);
/* */ }
/* */
/* 398 */ doStart(watch);
/* */
/* 401 */ ClassLoader cl = Thread.currentThread().getContextClassLoader();
/* */ try
/* */ {
/* 405 */ for (Bootstrap bootstrap : this.bootstraps)
/* */ {
/* 407 */ Thread.currentThread().setContextClassLoader(bootstrap.getClass().getClassLoader());
/* 408 */ bootstrap.start(this);
/* 409 */ this.startedBootstraps.add(0, bootstrap);
/* */ }
/* */ }
/* */ finally
/* */ {
/* 414 */ Thread.currentThread().setContextClassLoader(cl);
/* */ }
/* */
/* 417 */ if (config.isInstallLifeThread())
/* */ {
/* 419 */ this.log.debug("Installing life thread " + this.lifeThread);
/* 420 */ this.lifeThread = new LifeThread();
/* 421 */ this.lifeThread.start();
/* */ }
/* */
/* 424 */ this.started = true;
/* */
/* 427 */ Notification msg = new Notification("org.jboss.system.server.started", this, 1L);
/* 428 */ msg.setUserData(new Long(watch.getLapTime()));
/* 429 */ sendNotification(msg);
/* */
/* 431 */ watch.stop();
/* */
/* 433 */ if (this.jbossPackage != null)
/* */ {
/* 436 */ this.log.info("JBoss (Microcontainer) [" + this.jbossPackage.getImplementationVersion() + "] Started in " + watch);
/* */ }