public abstract class NanoHTTPD {
private final static String charset = "UTF-8";
private final static String defContentHeaderCharset = charset;
private final static String responseCharset = charset;
private final static String printWriterCharset = charset;
private final static String decodePercent = charset;
private final static String httpHeadCharset = charset.toLowerCase();
/**
* Pluggable strategy for asynchronously executing requests.
*/
public interface AsyncRunner {
void closeAll();
void closed(ClientHandler clientHandler);
void exec(ClientHandler code);
}
/**
* The runnable that will be used for every new client connection.
*/
public class ClientHandler implements Runnable {
private final InputStream inputStream;
private final Socket acceptSocket;
private ClientHandler(InputStream inputStream, Socket acceptSocket) {
this.inputStream = inputStream;
this.acceptSocket = acceptSocket;