public class HttpServer extends Object implements FilterContainer
Modifier and Type | Class and Description |
---|---|
static class |
HttpServer.DummyServletFilter |
static class |
HttpServer.QuotingInputFilter
A Servlet input filter that quotes all HTML active characters in the
parameter names and values.
|
static class |
HttpServer.StackServlet
A very simple servlet to serve up a text representation of the current
stack traces.
|
Modifier and Type | Field and Description |
---|---|
static String |
CONF_CONTEXT_ATTRIBUTE |
protected Map<org.mortbay.jetty.servlet.Context,Boolean> |
defaultContexts |
protected List<String> |
filterNames |
protected boolean |
findPort |
protected org.mortbay.jetty.Connector |
listener |
static org.apache.commons.logging.Log |
LOG |
protected org.mortbay.jetty.webapp.WebAppContext |
webAppContext |
protected org.mortbay.jetty.Server |
webServer |
Constructor and Description |
---|
HttpServer(String name,
String bindAddress,
int port,
boolean findPort,
org.apache.hadoop.conf.Configuration conf) |
Modifier and Type | Method and Description |
---|---|
void |
addContext(org.mortbay.jetty.servlet.Context ctxt,
boolean isFiltered) |
protected void |
addContext(String pathSpec,
String dir,
boolean isFiltered)
Add a context
|
protected void |
addDefaultApps(org.mortbay.jetty.handler.ContextHandlerCollection parent,
String appDir)
Add default apps.
|
protected void |
addDefaultServlets()
Add default servlets.
|
void |
addFilter(String name,
String classname,
Map<String,String> parameters)
Add a filter to the container.
|
protected void |
addFilterPathMapping(String pathSpec,
org.mortbay.jetty.servlet.Context webAppCtx)
Add the path spec to the filter path mapping.
|
void |
addGlobalFilter(String name,
String classname,
Map<String,String> parameters)
Add a global filter to the container.
|
void |
addInternalServlet(String name,
String pathSpec,
Class<? extends javax.servlet.http.HttpServlet> clazz)
Deprecated.
this is a temporary method
|
void |
addInternalServlet(String name,
String pathSpec,
Class<? extends javax.servlet.http.HttpServlet> clazz,
boolean requireAuth,
boolean useKsslForAuth)
Add an internal servlet in the server, specifying whether or not to
protect with Kerberos authentication.
|
void |
addJerseyResourcePackage(String packageName,
String pathSpec)
Add a Jersey resource package.
|
void |
addServlet(String name,
String pathSpec,
Class<? extends javax.servlet.http.HttpServlet> clazz)
Add a servlet in the server.
|
org.mortbay.jetty.Connector |
createBaseListener(org.apache.hadoop.conf.Configuration conf)
Create a required listener for the Jetty instance listening on the port
provided.
|
static org.mortbay.jetty.Connector |
createDefaultChannelConnector() |
protected void |
defineFilter(org.mortbay.jetty.servlet.Context ctx,
String name,
String classname,
Map<String,String> parameters,
String[] urls)
Define a filter for a context and set up default url mappings.
|
Object |
getAttribute(String name)
Get the value in the webapp context.
|
int |
getPort()
Get the port that the server is on
|
protected String |
getWebAppsPath()
Get the pathname to the webapps files.
|
void |
join() |
void |
setAttribute(org.mortbay.jetty.servlet.Context context,
String name,
Object value)
Set a value in the webapp context.
|
void |
setAttribute(String name,
Object value)
Set a value in the webapp context.
|
void |
setThreads(int min,
int max)
Set the min, max number of worker threads (simultaneous connections).
|
void |
start()
Start the server.
|
void |
stop()
stop the server
|
public static final org.apache.commons.logging.Log LOG
public static final String CONF_CONTEXT_ATTRIBUTE
protected final org.mortbay.jetty.Server webServer
protected final org.mortbay.jetty.Connector listener
protected final org.mortbay.jetty.webapp.WebAppContext webAppContext
protected final boolean findPort
public HttpServer(String name, String bindAddress, int port, boolean findPort, org.apache.hadoop.conf.Configuration conf) throws IOException
IOException
public org.mortbay.jetty.Connector createBaseListener(org.apache.hadoop.conf.Configuration conf) throws IOException
IOException
public static org.mortbay.jetty.Connector createDefaultChannelConnector()
protected void addDefaultApps(org.mortbay.jetty.handler.ContextHandlerCollection parent, String appDir) throws IOException
appDir
- The application directoryIOException
protected void addDefaultServlets()
public void addContext(org.mortbay.jetty.servlet.Context ctxt, boolean isFiltered) throws IOException
IOException
protected void addContext(String pathSpec, String dir, boolean isFiltered) throws IOException
pathSpec
- The path spec for the contextdir
- The directory containing the contextisFiltered
- if true, the servlet is added to the filter path mappingIOException
public void setAttribute(String name, Object value)
name
- The name of the attributevalue
- The value of the attributepublic void setAttribute(org.mortbay.jetty.servlet.Context context, String name, Object value)
context
- Context to add attributename
- The name of the attributevalue
- The value of the attributepublic void addJerseyResourcePackage(String packageName, String pathSpec)
packageName
- The Java package name containing the Jersey resource.pathSpec
- The path spec for the servletpublic void addServlet(String name, String pathSpec, Class<? extends javax.servlet.http.HttpServlet> clazz)
name
- The name of the servlet (can be passed as null)pathSpec
- The path spec for the servletclazz
- The servlet class@Deprecated public void addInternalServlet(String name, String pathSpec, Class<? extends javax.servlet.http.HttpServlet> clazz)
name
- The name of the servlet (can be passed as null)pathSpec
- The path spec for the servletclazz
- The servlet classpublic void addInternalServlet(String name, String pathSpec, Class<? extends javax.servlet.http.HttpServlet> clazz, boolean requireAuth, boolean useKsslForAuth)
name
- The name of the servlet (can be passed as null)pathSpec
- The path spec for the servletclazz
- The servlet classrequireAuth
- Require Kerberos authenticate to access servletuseKsslForAuth
- true to use KSSL for auth, false to use SPNEGOpublic void addFilter(String name, String classname, Map<String,String> parameters)
addFilter
in interface FilterContainer
name
- Filter nameclassname
- Filter class nameparameters
- a map from parameter names to initial valuespublic void addGlobalFilter(String name, String classname, Map<String,String> parameters)
addGlobalFilter
in interface FilterContainer
name
- filter nameclassname
- filter class nameparameters
- a map from parameter names to initial valuesprotected void defineFilter(org.mortbay.jetty.servlet.Context ctx, String name, String classname, Map<String,String> parameters, String[] urls)
protected void addFilterPathMapping(String pathSpec, org.mortbay.jetty.servlet.Context webAppCtx)
pathSpec
- The path specwebAppCtx
- The WebApplicationContext to add topublic Object getAttribute(String name)
name
- The name of the attributeprotected String getWebAppsPath() throws IOException
IOException
- if 'webapps' directory cannot be found on CLASSPATH.public int getPort()
public void setThreads(int min, int max)
public void start() throws IOException
IOException
public void join() throws InterruptedException
InterruptedException
Copyright © 2020. All rights reserved.