From c88ba6d829b5c4430a5851c1c953e94ea93a692f Mon Sep 17 00:00:00 2001 From: ritchie Date: Sun, 10 May 2015 15:09:48 +0200 Subject: #131 socket timeout configurable --- core/src/main/java/fi/iki/elonen/NanoHTTPD.java | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'core/src/main/java') diff --git a/core/src/main/java/fi/iki/elonen/NanoHTTPD.java b/core/src/main/java/fi/iki/elonen/NanoHTTPD.java index 08b64c6..34cd213 100644 --- a/core/src/main/java/fi/iki/elonen/NanoHTTPD.java +++ b/core/src/main/java/fi/iki/elonen/NanoHTTPD.java @@ -1615,6 +1615,18 @@ public abstract class NanoHTTPD { * if the socket is in use. */ public void start() throws IOException { + start(NanoHTTPD.SOCKET_READ_TIMEOUT); + } + + /** + * Start the server. + * + * @param timeout + * timeout to use for socket connections. + * @throws IOException + * if the socket is in use. + */ + public void start(final int timeout) throws IOException { if (this.sslServerSocketFactory != null) { SSLServerSocket ss = (SSLServerSocket) this.sslServerSocketFactory.createServerSocket(); ss.setNeedClientAuth(false); @@ -1633,7 +1645,7 @@ public abstract class NanoHTTPD { try { final Socket finalAccept = NanoHTTPD.this.myServerSocket.accept(); registerConnection(finalAccept); - finalAccept.setSoTimeout(NanoHTTPD.SOCKET_READ_TIMEOUT); + finalAccept.setSoTimeout(timeout); final InputStream inputStream = finalAccept.getInputStream(); NanoHTTPD.this.asyncRunner.exec(new Runnable() { -- cgit v1.2.3