001
014
015 package com.liferay.portal.server.capabilities;
016
017 import com.liferay.portal.server.DeepNamedValueScanner;
018
019 import javax.servlet.ServletContext;
020
021
025 public class JettyServerCapabilities implements ServerCapabilities {
026
027 @Override
028 public void determine(ServletContext servletContext) throws Exception {
029 determineSupportsHotDeploy(servletContext);
030 }
031
032 @Override
033 public boolean isSupportsHotDeploy() {
034 return _supportsHotDeploy;
035 }
036
037 protected void determineSupportsHotDeploy(ServletContext servletContext)
038 throws Exception {
039
040 DeepNamedValueScanner deepNamedValueScanner = new DeepNamedValueScanner(
041 "_scanInterval");
042
043 deepNamedValueScanner.setExcludedClassNames("WebAppProvider");
044 deepNamedValueScanner.setIncludedClassNames("org.eclipse.jetty");
045 deepNamedValueScanner.setVisitLists(true);
046
047 deepNamedValueScanner.scan(servletContext);
048
049 Integer scanInterval = (Integer)deepNamedValueScanner.getMatchedValue();
050
051 if ((scanInterval != null) && (scanInterval.intValue() > 0)) {
052 _supportsHotDeploy = true;
053 }
054 else {
055 _supportsHotDeploy = false;
056 }
057 }
058
059 private boolean _supportsHotDeploy;
060
061 }