Base class for all tasks which deploy a web application to an embedded Jetty web container.
Modifiers | Name | Description |
---|---|---|
static String |
PORT_SYSPROPERTY |
|
protected Thread |
consoleScanner |
A scanner to check ENTER hits on the console. |
protected String |
reload |
|
protected List<Scanner.Listener> |
scannerListeners |
List of Listeners for the scanner. |
Type | Name and description |
---|---|
void |
applyJettyXml() |
void |
configureScanner() |
void |
configureWebApplication() Subclasses should invoke this to setup basic info on the webapp. |
JettyPluginServer |
createServer() create a proxy that wraps a particular jetty version Server object. |
File |
findJettyWebXmlFile(File webInfDir) Try and find a jetty-web.xml file, using some historical naming conventions if necessary. |
void |
finishConfigurationBeforeStart() |
Iterable<File> |
getAdditionalRuntimeJars() Returns the classpath to make available to the web application. |
Connector[] |
getConnectors() |
String |
getContextPath() Returns the context path to use to deploy the web application. |
Integer |
getHttpPort() Returns the TCP port for Jetty to listen on for incoming HTTP requests. |
File |
getJettyConfig() Returns the jetty configuration file to use. |
File |
getOverrideWebXml() |
String |
getReload() Returns the reload mode, which is either "automatic" or "manual" . |
RequestLog |
getRequestLog() |
int |
getScanIntervalSeconds() Returns the interval in seconds between scanning the web app for file changes. |
Scanner |
getScanner() |
List<Scanner.Listener> |
getScannerListeners() |
JettyPluginServer |
getServer() |
String |
getStopKey() Returns the key to use to stop Jetty. |
Integer |
getStopPort() Returns the TCP port for Jetty to listen on for stop requests. |
UserRealm[] |
getUserRealms() |
JettyPluginWebAppContext |
getWebAppConfig() |
File |
getWebDefaultXml() |
boolean |
isDaemon() Specifies whether the Jetty server should run in the background. |
void |
restartWebApp(boolean reconfigureScanner) |
void |
setAdditionalRuntimeJars(Iterable<File> additionalRuntimeJars) |
void |
setConnectors(Connector[] connectors) |
void |
setContextPath(String contextPath) |
void |
setDaemon(boolean daemon) |
void |
setHttpPort(Integer httpPort) |
void |
setJettyConfig(File jettyConfig) |
void |
setOverrideWebXml(File overrideWebXml) |
void |
setReload(String reload) Sets the reload mode, which is either "automatic" or "manual" . |
void |
setRequestLog(RequestLog requestLog) |
void |
setScanIntervalSeconds(int scanIntervalSeconds) Sets the interval in seconds between scanning the web app for file changes. |
void |
setScannerListeners(List<Scanner.Listener> listeners) |
void |
setServer(JettyPluginServer server) |
void |
setStopKey(String stopKey) |
void |
setStopPort(Integer stopPort) |
void |
setUserRealms(UserRealm[] userRealms) |
void |
setWebAppConfig(JettyPluginWebAppContext webAppConfig) |
void |
setWebDefaultXml(File webDefaultXml) |
protected void |
start() |
protected void |
startConsoleScanner() Run a thread that monitors the console input to detect ENTER hits. |
void |
startJetty() |
void |
startJettyInternal() |
void |
validateConfiguration() |
A scanner to check ENTER hits on the console.
List of Listeners for the scanner.
Subclasses should invoke this to setup basic info on the webapp.
create a proxy that wraps a particular jetty version Server object.
Try and find a jetty-web.xml file, using some historical naming conventions if necessary.
Returns the classpath to make available to the web application.
Returns the context path to use to deploy the web application.
Returns the TCP port for Jetty to listen on for incoming HTTP requests.
Returns the jetty configuration file to use. When null
, no configuration file is used.
Returns the reload mode, which is either "automatic"
or "manual"
.
In automatic mode, the web app is scanned for file changes every n seconds, where n is
determined by the scanIntervalSeconds
property. (Note that scanIntervalSeconds
defaults to 0
, which disables automatic reloading.) If files changes are
detected, the web app is reloaded.
In manual mode, the web app is reloaded whenever the Enter key is pressed.
Returns the interval in seconds between scanning the web app for file changes.
If file changes are detected, the web app is reloaded. Only relevant
if reload
is set to "automatic"
. Defaults to 0
,
which disables automatic reloading.
Returns the key to use to stop Jetty.
Returns the TCP port for Jetty to listen on for stop requests.
Specifies whether the Jetty server should run in the background. When true
, this task completes as soon as the server has started. When false
, this task blocks until the Jetty
server is stopped.
Sets the reload mode, which is either "automatic"
or "manual"
.
In automatic mode, the web app is scanned for file changes every n seconds, where n is
determined by the scanIntervalSeconds
property. (Note that scanIntervalSeconds
defaults to 0
, which disables automatic reloading.) If files changes are
detected, the web app is reloaded.
In manual mode, the web app is reloaded whenever the Enter key is pressed.
Sets the interval in seconds between scanning the web app for file changes.
If file changes are detected, the web app is reloaded. Only relevant
if reload
is set to "automatic"
. Defaults to 0
,
which disables automatic reloading.
Run a thread that monitors the console input to detect ENTER hits.