public abstract class HTTPServer
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
private class |
HTTPServer.ServerThread |
Modifier and Type | Field and Description |
---|---|
protected java.lang.String |
loginPass |
protected java.lang.String |
loginUser |
protected java.util.HashMap<java.lang.String,java.lang.String> |
mimeTypes |
protected int |
port |
protected boolean |
printExceptions |
protected boolean |
running |
protected java.net.ServerSocket |
serverSocket |
protected HTTPServer.ServerThread |
serverThread |
protected boolean |
useSSL |
Constructor and Description |
---|
HTTPServer(int port)
Creates a new instance of ScreenShotServer
|
Modifier and Type | Method and Description |
---|---|
static void |
badRequest(java.io.OutputStream out) |
static void |
copyStream(java.io.InputStream in,
java.io.OutputStream out) |
java.lang.String |
getLoginPassword() |
java.lang.String |
getLoginUser() |
protected abstract boolean |
getPage(java.io.OutputStream out,
java.lang.String[] parameters)
Gets the contents of the page for the given request.
|
static java.lang.String |
getParamValue(java.lang.String param,
java.lang.String[] params)
Returns the first parameter value with the given key.
|
int |
getPort() |
java.lang.String |
getRealm() |
protected void |
handleRequest(java.net.Socket s)
Handles http request.
|
protected void |
handleRequest(java.net.Socket s,
java.lang.String get)
Handles the request by getting the contents of the page using getPage.
|
boolean |
isRunning() |
boolean |
isUseSSL() |
static void |
notFound(java.io.OutputStream out)
A convenience method to respond with a not found message.
|
static java.lang.String[] |
parseGetParams(java.lang.String get)
Parses parameters from url.
|
protected void |
registerMimeTypes() |
void |
returnFile(java.io.OutputStream out,
java.io.File f) |
void |
setLogin(java.lang.String user,
java.lang.String password)
Set credential required to use the server.
|
void |
setPort(int p) |
void |
setPrintExceptions(boolean value) |
void |
setUseSSL(boolean value)
Enables or disables use of SSL sockets.
|
void |
start()
Starts the server.
|
void |
stopServer()
Stops the server and waits for the server thread to die before returning.
|
static void |
writeHeader(java.io.OutputStream out,
java.lang.String contentType) |
void |
writeHeaderForFile(java.io.OutputStream out,
java.io.File f) |
void |
writeHeaderForFile(java.io.OutputStream out,
java.lang.String extension) |
static void |
writeHTMLHeader(java.io.OutputStream out) |
static void |
writeInternalServerError(java.io.OutputStream out,
java.lang.String message,
java.lang.Throwable t) |
static void |
writeSimpleHTML(java.io.OutputStream out,
java.lang.String title,
java.lang.String content) |
protected int port
protected boolean running
protected boolean printExceptions
protected boolean useSSL
protected java.lang.String loginUser
protected java.lang.String loginPass
protected java.net.ServerSocket serverSocket
protected HTTPServer.ServerThread serverThread
protected java.util.HashMap<java.lang.String,java.lang.String> mimeTypes
public HTTPServer(int port)
protected void registerMimeTypes()
protected void handleRequest(java.net.Socket s) throws java.io.IOException
java.io.IOException
public java.lang.String getRealm()
public static void copyStream(java.io.InputStream in, java.io.OutputStream out) throws java.io.IOException
java.io.IOException
public void returnFile(java.io.OutputStream out, java.io.File f) throws java.io.IOException
java.io.IOException
public void writeHeaderForFile(java.io.OutputStream out, java.lang.String extension) throws java.io.IOException
java.io.IOException
public void writeHeaderForFile(java.io.OutputStream out, java.io.File f) throws java.io.IOException
java.io.IOException
public static void writeHTMLHeader(java.io.OutputStream out) throws java.io.IOException
java.io.IOException
public static void writeHeader(java.io.OutputStream out, java.lang.String contentType) throws java.io.IOException
java.io.IOException
public static void writeSimpleHTML(java.io.OutputStream out, java.lang.String title, java.lang.String content) throws java.io.IOException
java.io.IOException
public static void writeInternalServerError(java.io.OutputStream out, java.lang.String message, java.lang.Throwable t) throws java.io.IOException
java.io.IOException
protected void handleRequest(java.net.Socket s, java.lang.String get) throws java.io.IOException
java.io.IOException
protected abstract boolean getPage(java.io.OutputStream out, java.lang.String[] parameters)
public static java.lang.String[] parseGetParams(java.lang.String get)
public static void notFound(java.io.OutputStream out) throws java.io.IOException
java.io.IOException
public static void badRequest(java.io.OutputStream out) throws java.io.IOException
java.io.IOException
public static java.lang.String getParamValue(java.lang.String param, java.lang.String[] params)
param
- The key of the param to find.params
- The parameters as returned by parseGetParams.public void setPrintExceptions(boolean value)
public int getPort()
public void setPort(int p)
public void setLogin(java.lang.String user, java.lang.String password)
public java.lang.String getLoginUser()
public java.lang.String getLoginPassword()
public void setUseSSL(boolean value)
public boolean isUseSSL()
public void start()
public boolean isRunning()
public void stopServer()
Copyright 2004-2015 Wandora Team