public void stop(ExtendedDeploymentContext context, Logger logger) { ClassLoader currentClassLoader = Thread.currentThread().getContextClassLoader(); try { Thread.currentThread().setContextClassLoader(appClassLoader); context.setClassLoader(appClassLoader); super.stop(context, logger); for (ModuleInfo module : getModuleInfos()) { module.stop(getSubContext(module, context), logger); } if (events!=null) { events.send(new Event<ApplicationInfo>(Deployment.APPLICATION_STOPPED, this), false); } } finally { Thread.currentThread().setContextClassLoader(currentClassLoader); } }
public void stop(ExtendedDeploymentContext context, Logger logger) { ClassLoader currentClassLoader = Thread.currentThread().getContextClassLoader(); try { Thread.currentThread().setContextClassLoader(appClassLoader); context.setClassLoader(appClassLoader); super.stop(context, logger); for (ModuleInfo module : reversedModules) { module.stop(getSubContext(module, context), logger); } if (events!=null) { events.send(new Event<ApplicationInfo>(Deployment.APPLICATION_STOPPED, this), false); } } finally { Thread.currentThread().setContextClassLoader(currentClassLoader); } }
public void unload(ExtendedDeploymentContext context) { Logger logger = context.getLogger(); if (!isLoaded) { logger.fine("Application is already unloaded."); return; } ClassLoader currentClassLoader = Thread.currentThread().getContextClassLoader(); try { Thread.currentThread().setContextClassLoader(appClassLoader); context.setClassLoader(appClassLoader); super.unload(context); for (ModuleInfo module : reversedModules) { module.unload(getSubContext(module, context)); } isLoaded = false; if (events!=null) { events.send(new Event<ApplicationInfo>(Deployment.APPLICATION_UNLOADED, this), false); } } finally { Thread.currentThread().setContextClassLoader(currentClassLoader); context.setClassLoader(null); } }
public void clean(ExtendedDeploymentContext context) throws Exception { // clean the app level classloader if it's not already // cleaned if (appClassLoader != null) { try { PreDestroy.class.cast(appClassLoader).preDestroy(); } catch (Exception e) { // ignore, the class loader does not need to be // explicitely stopped or already stopped } appClassLoader = null; } super.clean(context); for (ModuleInfo info : modules) { info.clean(getSubContext(info,context)); info = null; } if (events!=null) { events.send(new EventListener.Event<DeploymentContext>(Deployment.APPLICATION_CLEANED, context), false); } }
super.unload(context); for (ModuleInfo module : getModuleInfos()) { module.unload(getSubContext(module, context));
public void clean(ExtendedDeploymentContext context) throws Exception { super.clean(context); for (ModuleInfo info : reversedModules) { info.clean(getSubContext(info,context)); info = null;
tracing.addModuleMark(DeploymentTracing.ModuleMark.LOAD, module.getName()); module.load(getSubContext(module,context), tracker); if (tracing!=null) { tracing.addModuleMark(DeploymentTracing.ModuleMark.LOADED, module.getName());
tracing.addModuleMark(DeploymentTracing.ModuleMark.LOAD, module.getName()); module.load(getSubContext(module,context), tracker); if (tracing!=null) { tracing.addModuleMark(DeploymentTracing.ModuleMark.LOADED, module.getName());
public void start( ExtendedDeploymentContext context, ProgressTracker tracker) throws Exception { DeploymentTracing tracing = context.getModuleMetaData(DeploymentTracing.class); if (tracing!=null) { tracing.addMark(DeploymentTracing.Mark.START); } super.start(context, tracker); // registers all deployed items. for (ModuleInfo module : getModuleInfos()) { if (tracing!=null) { tracing.addModuleMark(DeploymentTracing.ModuleMark.START, module.getName()); } module.start(getSubContext(module, context), tracker); if (tracing!=null) { tracing.addModuleMark( DeploymentTracing.ModuleMark.STARTED, module.getName()); } } if (tracing!=null) { tracing.addMark(DeploymentTracing.Mark.START_EVENTS); } if (events!=null) { events.send(new Event<ApplicationInfo>(Deployment.APPLICATION_STARTED, this), false); } if (tracing!=null) { tracing.addMark(DeploymentTracing.Mark.STARTED); } }
public void start( ExtendedDeploymentContext context, ProgressTracker tracker) throws Exception { DeploymentTracing tracing = context.getModuleMetaData(DeploymentTracing.class); if (tracing!=null) { tracing.addMark(DeploymentTracing.Mark.START); } super.start(context, tracker); // registers all deployed items. for (ModuleInfo module : getModuleInfos()) { if (tracing!=null) { tracing.addModuleMark(DeploymentTracing.ModuleMark.START, module.getName()); } module.start(getSubContext(module, context), tracker); if (tracing!=null) { tracing.addModuleMark( DeploymentTracing.ModuleMark.STARTED, module.getName()); } } if (tracing!=null) { tracing.addMark(DeploymentTracing.Mark.START_EVENTS); } if (events!=null) { events.send(new Event<ApplicationInfo>(Deployment.APPLICATION_STARTED, this), false); } if (tracing!=null) { tracing.addMark(DeploymentTracing.Mark.STARTED); } }