public abstract class AbstractJettyRunTask
extends org.gradle.api.internal.ConventionTask
Task.Namer
Modifier and Type | Field and Description |
---|---|
protected Thread |
consoleScanner
A scanner to check ENTER hits on the console.
|
static String |
PORT_SYSPROPERTY |
protected String |
reload |
protected List<org.mortbay.util.Scanner.Listener> |
scannerListeners
List of Listeners for the scanner.
|
TASK_ACTION, TASK_DEPENDS_ON, TASK_DESCRIPTION, TASK_GROUP, TASK_NAME, TASK_OVERWRITE, TASK_TYPE
Constructor and Description |
---|
AbstractJettyRunTask() |
Modifier and Type | Method and Description |
---|---|
abstract void |
applyJettyXml() |
abstract void |
configureScanner() |
void |
configureWebApplication()
Subclasses should invoke this to setup basic info on the webapp.
|
abstract org.gradle.api.plugins.jetty.internal.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.
|
abstract void |
finishConfigurationBeforeStart() |
Iterable<File> |
getAdditionalRuntimeJars()
Returns the classpath to make available to the web application.
|
org.mortbay.jetty.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" . |
org.mortbay.jetty.RequestLog |
getRequestLog() |
int |
getScanIntervalSeconds()
Returns the interval in seconds between scanning the web app for file changes.
|
org.mortbay.util.Scanner |
getScanner() |
List<org.mortbay.util.Scanner.Listener> |
getScannerListeners() |
org.gradle.api.plugins.jetty.internal.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.
|
org.mortbay.jetty.security.UserRealm[] |
getUserRealms() |
org.gradle.api.plugins.jetty.internal.JettyPluginWebAppContext |
getWebAppConfig() |
File |
getWebDefaultXml() |
boolean |
isDaemon()
Specifies whether the Jetty server should run in the background.
|
abstract void |
restartWebApp(boolean reconfigureScanner) |
void |
setAdditionalRuntimeJars(Iterable<File> additionalRuntimeJars) |
void |
setConnectors(org.mortbay.jetty.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(org.mortbay.jetty.RequestLog requestLog) |
void |
setScanIntervalSeconds(int scanIntervalSeconds)
Sets the interval in seconds between scanning the web app for file changes.
|
void |
setScannerListeners(List<org.mortbay.util.Scanner.Listener> listeners) |
void |
setServer(org.gradle.api.plugins.jetty.internal.JettyPluginServer server) |
void |
setStopKey(String stopKey) |
void |
setStopPort(Integer stopPort) |
void |
setUserRealms(org.mortbay.jetty.security.UserRealm[] userRealms) |
void |
setWebAppConfig(org.gradle.api.plugins.jetty.internal.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() |
abstract void |
validateConfiguration() |
conventionMapping, conventionMapping, getConventionMapping
addValidator, compareTo, configure, deleteAllActions, dependsOn, dependsOnTaskDidWork, doFirst, doFirst, doLast, doLast, execute, executeWithoutThrowingTaskFailure, finalizedBy, getActions, getAnt, getAsDynamicObject, getConvention, getDependsOn, getDescription, getDidWork, getEnabled, getExecuter, getExtensions, getFinalizedBy, getGroup, getInputs, getLogger, getLogging, getMustRunAfter, getName, getOnlyIf, getOutputs, getPath, getProject, getServices, getShouldRunAfter, getStandardOutputCapture, getState, getTaskActions, getTaskDependencies, getTemporaryDir, getTemporaryDirFactory, getValidators, hasProperty, injectIntoNewInstance, isEnabled, leftShift, mustRunAfter, onlyIf, onlyIf, property, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setExecuter, setFinalizedBy, setGroup, setMustRunAfter, setName, setOnlyIf, setOnlyIf, setProject, setProperty, setShouldRunAfter, shouldRunAfter, toString
protected String reload
protected List<org.mortbay.util.Scanner.Listener> scannerListeners
protected Thread consoleScanner
public static final String PORT_SYSPROPERTY
public abstract void validateConfiguration()
public abstract void configureScanner()
public abstract org.gradle.api.plugins.jetty.internal.JettyPluginServer createServer() throws Exception
Exception
public abstract void finishConfigurationBeforeStart() throws Exception
Exception
protected void start()
public org.gradle.api.plugins.jetty.internal.JettyPluginServer getServer()
public void setServer(org.gradle.api.plugins.jetty.internal.JettyPluginServer server)
public void setScannerListeners(List<org.mortbay.util.Scanner.Listener> listeners)
public List<org.mortbay.util.Scanner.Listener> getScannerListeners()
public org.mortbay.util.Scanner getScanner()
public void startJetty()
public void startJettyInternal()
public abstract void restartWebApp(boolean reconfigureScanner) throws Exception
Exception
public void configureWebApplication() throws Exception
Exception
protected void startConsoleScanner()
public File findJettyWebXmlFile(File webInfDir)
@InputFile @Optional public File getWebDefaultXml()
public void setWebDefaultXml(File webDefaultXml)
@InputFile @Optional public File getOverrideWebXml()
public void setOverrideWebXml(File overrideWebXml)
public int getScanIntervalSeconds()
reload
is set to "automatic"
. Defaults to 0
,
which disables automatic reloading.public void setScanIntervalSeconds(int scanIntervalSeconds)
reload
is set to "automatic"
. Defaults to 0
,
which disables automatic reloading.public String getContextPath()
public void setContextPath(String contextPath)
public org.gradle.api.plugins.jetty.internal.JettyPluginWebAppContext getWebAppConfig()
public void setWebAppConfig(org.gradle.api.plugins.jetty.internal.JettyPluginWebAppContext webAppConfig)
public String getReload()
"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.
public void setReload(String reload)
"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.
@InputFile @Optional public File getJettyConfig()
null
, no configuration file is used.public void setJettyConfig(File jettyConfig)
public Integer getStopPort()
public void setStopPort(Integer stopPort)
public String getStopKey()
public void setStopKey(String stopKey)
public boolean isDaemon()
true
, this task completes as soon as the server has started. When false
, this task blocks until the Jetty
server is stopped.public void setDaemon(boolean daemon)
public Integer getHttpPort()
public void setHttpPort(Integer httpPort)
public org.mortbay.jetty.Connector[] getConnectors()
public void setConnectors(org.mortbay.jetty.Connector[] connectors)
public org.mortbay.jetty.security.UserRealm[] getUserRealms()
public void setUserRealms(org.mortbay.jetty.security.UserRealm[] userRealms)
public org.mortbay.jetty.RequestLog getRequestLog()
public void setRequestLog(org.mortbay.jetty.RequestLog requestLog)
@InputFiles public Iterable<File> getAdditionalRuntimeJars()