private List<String> getDeployments() { synchronized (registrations) { List<String> deployments = new ArrayList<>(registrations.size()); for (RegistrationImpl registration : registrations) { deployments.add(registration.deploymentInfo.getDeploymentName()); } return deployments; } }
private List<String> getDeployments() { synchronized (registrations) { List<String> deployments = new ArrayList<>(registrations.size()); for (RegistrationImpl registration : registrations) { deployments.add(registration.deploymentInfo.getDeploymentName()); } return deployments; } }
private List<String> getDeployments() { synchronized (registrations) { List<String> deployments = new ArrayList<>(registrations.size()); for (RegistrationImpl registration : registrations) { deployments.add(registration.deploymentInfo.getDeploymentName()); } return deployments; } }
@Override public String getID() { return deployment.getDeploymentInfo().getDeploymentName(); }
@Override public void removeDeployment(final DeploymentInfo deploymentInfo) { final DeploymentManager deploymentManager = deployments.get(deploymentInfo.getDeploymentName()); if (deploymentManager.getState() != DeploymentManager.State.UNDEPLOYED) { throw UndertowServletMessages.MESSAGES.canOnlyRemoveDeploymentsWhenUndeployed(deploymentManager.getState()); } deployments.remove(deploymentInfo.getDeploymentName()); deploymentsByPath.remove(deploymentInfo.getContextPath()); }
@Override public DeploymentManager addDeployment(final DeploymentInfo deployment) { final DeploymentInfo dep = deployment.clone(); DeploymentManager deploymentManager = new DeploymentManagerImpl(dep, this); deployments.put(dep.getDeploymentName(), deploymentManager); deploymentsByPath.put(dep.getContextPath(), deploymentManager); return deploymentManager; }
@Override public SessionManager createSessionManager(Deployment deployment) { return new UndertowSipManager(deployment.getDeploymentInfo().getDeploymentName(), maxSessions); } }
@Override public SessionManager createSessionManager(Deployment deployment) { return new UndertowSipManager(deployment.getDeploymentInfo().getDeploymentName(), maxSessions); } }
private void removeDeployment(Deployment deployment) { if (this.managers.remove(deployment.getDeploymentInfo().getDeploymentName()) != null) { deployment.getSessionManager().removeSessionListener(this.listener.get()); } }
private void addDeployment(Deployment deployment) { SessionManager manager = deployment.getSessionManager(); if (this.managers.putIfAbsent(deployment.getDeploymentInfo().getDeploymentName(), deployment.getSessionManager()) == null) { manager.registerSessionListener(this.listener.get()); } }
private HttpHandler handleDevelopmentModePersistentSessions(HttpHandler next, final DeploymentInfo deploymentInfo, final SessionManager sessionManager, final ServletContextImpl servletContext) { final SessionPersistenceManager sessionPersistenceManager = deploymentInfo.getSessionPersistenceManager(); if (sessionPersistenceManager != null) { SessionRestoringHandler handler = new SessionRestoringHandler(deployment.getDeploymentInfo().getDeploymentName(), sessionManager, servletContext, next, sessionPersistenceManager); deployment.addLifecycleObjects(handler); return handler; } return next; }
private void undeploy(DeploymentManager deploymentManager) { final Deployment deployment = deploymentManager.getDeployment(); CamelLogger.LOGGER.debug("Undeploying endpoint {}", deployment.getDeploymentInfo().getDeploymentName()); final ClassLoader old = Thread.currentThread().getContextClassLoader(); Thread.currentThread().setContextClassLoader(deployment.getDeploymentInfo().getClassLoader()); try { try { hostSupplier.getValue().unregisterDeployment(deployment); deploymentManager.stop(); } catch (ServletException e) { throw new RuntimeException(e); } deploymentManager.undeploy(); servletContainerServiceSupplier.getValue().getServletContainer().removeDeployment(deployment.getDeploymentInfo()); } finally { Thread.currentThread().setContextClassLoader(old); } }
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { if(servletContext.getDeployment().getDeploymentState() != DeploymentManager.State.STARTED) { throw UndertowServletMessages.MESSAGES.deploymentStopped(servletContext.getDeployment().getDeploymentInfo().getDeploymentName()); } if (!started) { start(); } getFilter().doFilter(request, response, chain); }
@Override public SessionManager createSessionManager(Deployment deployment) { return new InMemorySessionManager(deployment.getDeploymentInfo().getSessionIdGenerator(), deployment.getDeploymentInfo().getDeploymentName(), maxSessions, expireOldestUnusedSessionOnMax, deployment.getDeploymentInfo().getMetricsCollector() != null); } }
private HttpHandler handleDevelopmentModePersistentSessions(HttpHandler next, final DeploymentInfo deploymentInfo, final SessionManager sessionManager, final ServletContext servletContext) { final SessionPersistenceManager sessionPersistenceManager = deploymentInfo.getSessionPersistenceManager(); if (sessionPersistenceManager != null) { SessionRestoringHandler handler = new ConvergedSessionRestoringHandler(super.getDeployment().getDeploymentInfo().getDeploymentName(), sessionManager, servletContext, next, sessionPersistenceManager); //((DeploymentImpl)super.getDeployment()).addLifecycleObjects(handler); this.invokeDeploymentMethod(((DeploymentImpl)super.getDeployment()), "addLifecycleObjects", new Class[]{SessionRestoringHandler.class}, new Object[]{handler}); return handler; } return next; } }
private HttpHandler handleDevelopmentModePersistentSessions(HttpHandler next, final DeploymentInfo deploymentInfo, final SessionManager sessionManager, final ServletContext servletContext) { final SessionPersistenceManager sessionPersistenceManager = deploymentInfo.getSessionPersistenceManager(); if (sessionPersistenceManager != null) { SessionRestoringHandler handler = new ConvergedSessionRestoringHandler(super.getDeployment().getDeploymentInfo().getDeploymentName(), sessionManager, servletContext, next, sessionPersistenceManager); //((DeploymentImpl)super.getDeployment()).addLifecycleObjects(handler); this.invokeDeploymentMethod(((DeploymentImpl)super.getDeployment()), "addLifecycleObjects", new Class[]{SessionRestoringHandler.class}, new Object[]{handler}); return handler; } return next; } }
public InstanceHandle<? extends Servlet> getServlet() throws ServletException { if(servletContext.getDeployment().getDeploymentState() != DeploymentManager.State.STARTED) { throw UndertowServletMessages.MESSAGES.deploymentStopped(servletContext.getDeployment().getDeploymentInfo().getDeploymentName()); } if (!started) { synchronized (this) { if (!started) { instanceStrategy.start(); started = true; } } } return instanceStrategy.getServlet(); }
private ServletContext buildServletContext(String contextName) throws ServletException { ServletContainer servletContainer = new ServletContainerImpl(); DeploymentInfo deploymentInfo = new DeploymentInfo(); deploymentInfo.setClassLoader(Thread.currentThread().getContextClassLoader()); deploymentInfo.setDeploymentName("cxf-undertow"); deploymentInfo.setContextPath(contextName); ServletInfo asyncServlet = new ServletInfo(ServletPathMatches.DEFAULT_SERVLET_NAME, CxfUndertowServlet.class); deploymentInfo.addServlet(asyncServlet); servletContainer.addDeployment(deploymentInfo); DeploymentManager deploymentManager = servletContainer.getDeployment(deploymentInfo.getDeploymentName()); deploymentManager.deploy(); deploymentManager.start(); return deploymentManager.getDeployment().getServletContext(); }
private ServletContext buildServletContext(String contextName) throws ServletException { ServletContainer servletContainer = new ServletContainerImpl(); DeploymentInfo deploymentInfo = new DeploymentInfo(); deploymentInfo.setClassLoader(Thread.currentThread().getContextClassLoader()); deploymentInfo.setDeploymentName("cxf-undertow"); deploymentInfo.setContextPath(contextName); ServletInfo asyncServlet = new ServletInfo(ServletPathMatches.DEFAULT_SERVLET_NAME, CxfUndertowServlet.class); deploymentInfo.addServlet(asyncServlet); servletContainer.addDeployment(deploymentInfo); DeploymentManager deploymentManager = servletContainer.getDeployment(deploymentInfo.getDeploymentName()); deploymentManager.deploy(); deploymentManager.start(); return deploymentManager.getDeployment().getServletContext(); }
public void forceInit() throws ServletException { if (!started) { if(servletContext.getDeployment().getDeploymentState() != DeploymentManager.State.STARTED) { throw UndertowServletMessages.MESSAGES.deploymentStopped(servletContext.getDeployment().getDeploymentInfo().getDeploymentName()); } synchronized (this) { if (!started) { try { instanceStrategy.start(); } catch (UnavailableException e) { handleUnavailableException(e); } started = true; } } } }