Interface DevAppServer
- All Known Implementing Classes:
DevAppServerImpl
public interface DevAppServer
DevAppServer launches a local Jetty server (by default) with a single
hosted web application. It can be invoked from the command-line by
providing the path to the directory in which the application resides as the
only argument.
Over time, the environment provided by this class should come to
resemble the environment provided to hosted applications in
production. For example, stub applications of all of the API's
should be provided, and similar security restrictions should be
enforced.-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringDevAppServerlistens on this network address for incoming HTTP requests.static final intDevAppServerlistens on this port for incoming HTTP requests. -
Method Summary
Modifier and TypeMethodDescriptionReturns theAppContextfor the main container.Returns theAppContextcorresponding to the HTTP request (or background thread) associated with the current thread, ornullif the current thread is not associated with any HTTP request (or background thread).intgetPort()Get the properties that are used by the local services to configure themselves.voidShut down the server after all outstanding requests have completed.restart()Restart the server to reload disk and class changes.voidsetServiceProperties(Map<String, String> properties) Sets the properties that will be used by the local services to configure themselves.voidsetThrowOnEnvironmentVariableMismatch(boolean throwOnMismatch) Reset the container EnvironmentVariableMismatchSeverity.voidshutdown()Shut down the server.start()Starts the server.
-
Field Details
-
DEFAULT_HTTP_ADDRESS
DevAppServerlistens on this network address for incoming HTTP requests. This can be overriden with--address=<addr>.- See Also:
-
DEFAULT_HTTP_PORT
static final int DEFAULT_HTTP_PORTDevAppServerlistens on this port for incoming HTTP requests. This can be overriden with--port=NNNN.- See Also:
-
-
Method Details
-
setServiceProperties
Sets the properties that will be used by the local services to configure themselves. This method must be called before the server has been started.- Parameters:
properties- a, maybenull, set of properties.- Throws:
IllegalStateException- if the server has already been started.
-
getServiceProperties
Get the properties that are used by the local services to configure themselves.- Returns:
- service properties.
-
start
Starts the server.- Returns:
- a latch that will be decremented to zero when the server is shutdown or restarted.
- Throws:
IllegalStateException- If the server has already been started or shutdown.com.google.apphosting.utils.config.AppEngineConfigException- If no WEB-INF directory can be found or WEB-INF/appengine-web.xml does not exist.Exception
-
restart
Restart the server to reload disk and class changes.- Returns:
- a latch that will be decremented to zero when the server is shutdown or restarted.
- Throws:
IllegalStateException- If the server has not been started or has already been shutdown.Exception
-
shutdown
Shut down the server.- Throws:
IllegalStateException- If the server has not been started or has already been shutdown.Exception
-
gracefulShutdown
void gracefulShutdown()Shut down the server after all outstanding requests have completed. -
getPort
int getPort()- Returns:
- the servlet container listener port number.
-
getAppContext
AppContext getAppContext()Returns theAppContextfor the main container. Useful in embedding scenarios to allow the embedder to install servlets, etc. Any such modification should be done before callingstart().- See Also:
-
getCurrentAppContext
AppContext getCurrentAppContext()Returns theAppContextcorresponding to the HTTP request (or background thread) associated with the current thread, ornullif the current thread is not associated with any HTTP request (or background thread). -
setThrowOnEnvironmentVariableMismatch
void setThrowOnEnvironmentVariableMismatch(boolean throwOnMismatch) Reset the container EnvironmentVariableMismatchSeverity.
-