package com.processpuzzle.application.domain; import javax.servlet.ServletContext; import org.springframework.core.io.ResourceLoader; public class WebApplicationManager extends ApplicationManager { private ServletContext servletContext; public WebApplicationManager( String applicationStoragePath, ResourceLoader resourceLoader, ServletContext servletContext ) throws InstantiationException { super( applicationStoragePath, resourceLoader ); this.servletContext = servletContext; } public WebApplication installWebApplication( String applicationName, Class<? extends WebApplication> applicationClass, String configurationDescriptorPath ) throws ApplicationInstallationException { return (WebApplication) super.install( applicationName, applicationClass, configurationDescriptorPath ); } @Override protected <A extends Application> A instantiateNewApplication( String applicationName, Class<A> applicationClass, String configurationDescriptorPath ) { //"WebApplicatonManager can only instantiate subclasses of WebApplication." A application = WebApplicationFactory.create( applicationClass, configurationDescriptorPath, servletContext ); return application; } }