List of usage examples for org.apache.http.impl DefaultHttpServerConnection DefaultHttpServerConnection
DefaultHttpServerConnection
From source file:com.android.unit_tests.TestHttpServer.java
private HttpServerConnection acceptConnection() throws IOException { Socket socket = this.serversocket.accept(); DefaultHttpServerConnection conn = new DefaultHttpServerConnection(); conn.bind(socket, this.params); return conn;// ww w .j av a 2 s.com }
From source file:com.navjagpal.fileshare.WebServer.java
public void handleRequest(Socket socket) { try {//ww w . j ava2s . c o m DefaultHttpServerConnection serverConnection = new DefaultHttpServerConnection(); serverConnection.bind(socket, new BasicHttpParams()); HttpRequest request = serverConnection.receiveRequestHeader(); RequestLine requestLine = request.getRequestLine(); /* First make sure user is logged in if that is required. */ boolean loggedIn = false; if (mSharedPreferences.getBoolean(FileSharingService.PREFS_REQUIRE_LOGIN, false)) { /* Does the user have a valid cookie? */ Header cookiesHeader = request.getFirstHeader("Cookie"); if (cookiesHeader != null) { String cookies = cookiesHeader.getValue(); String cookie = cookies.substring(cookies.indexOf("id=") + "id=".length()); loggedIn = isValidCookie(cookie); } } else { loggedIn = true; } if (!loggedIn) { /* Could be the result of the login form. */ if (requestLine.getUri().equals("/login")) { handleLoginRequest(serverConnection, request, requestLine); } else { sendLoginForm(serverConnection, requestLine); } } else if (requestLine.getUri().equals("/")) { Log.i(TAG, "Sending shared folder listing"); sendSharedFolderListing(serverConnection); } else if (requestLine.getMethod().equals("GET") && requestLine.getUri().startsWith("/folder")) { Log.i(TAG, "Sending list of shared files"); sendSharedFilesList(serverConnection, requestLine); } else if (requestLine.getUri().startsWith("/zip")) { Log.i(TAG, "Sending zip file."); sendFolderContent(serverConnection, requestLine); } else if (requestLine.getUri().startsWith("/file")) { Log.i(TAG, "Sending file content"); sendFileContent(serverConnection, requestLine); } else if (requestLine.getMethod().equals("POST")) { Log.i(TAG, "User is uploading file"); handleUploadRequest(serverConnection, request, requestLine); } else if (requestLine.getUri().startsWith("/playlist")) { Log.i(TAG, "User is requesting playlist"); sendPlaylist(serverConnection, requestLine); } else { Log.i(TAG, "No action for " + requestLine.getUri()); sendNotFound(serverConnection); } serverConnection.flush(); serverConnection.close(); } catch (IOException e) { Log.e(TAG, "Problem with socket " + e.toString()); } catch (HttpException e) { Log.e(TAG, "Problemw with HTTP server " + e.toString()); } }
From source file:org.teleal.cling.transport.impl.apache.StreamServerImpl.java
public void run() { log.fine("Entering blocking receiving loop, listening for HTTP stream requests on: " + serverSocket.getLocalSocketAddress()); while (!stopped) { try {//from ww w.ja v a 2 s . co m // Block until we have a connection Socket clientSocket = serverSocket.accept(); log.fine("Incoming connection from: " + clientSocket.getInetAddress()); // if (HTTPServerData.HOST != null // && // !clientSocket.getInetAddress().getHostAddress().equals(HTTPServerData.HOST) // && !configuration.isExported()) { // clientSocket.close(); // continue; // } // We have to force this fantastic library to accept HTTP // methods which are not in the holy RFCs. DefaultHttpServerConnection httpServerConnection = new DefaultHttpServerConnection() { @Override protected HttpRequestFactory createHttpRequestFactory() { return new UpnpHttpRequestFactory(); } }; httpServerConnection.bind(clientSocket, globalParams); // Wrap the processing of the request in a UpnpStream UpnpStream connectionStream = new HttpServerConnectionUpnpStream(router.getProtocolFactory(), httpServerConnection, globalParams); router.received(connectionStream); } catch (InterruptedIOException ex) { log.info("I/O has been interrupted, stopping receiving loop, bytes transfered: " + ex.bytesTransferred); break; } catch (SocketException ex) { if (!stopped) { // That's not good, could be anything log.info("Exception using server socket: " + ex.getMessage()); } else { // Well, it's just been stopped so that's totally fine and // expected } break; } catch (IOException ex) { log.info("Exception initializing receiving loop: " + ex.getMessage()); break; } } try { log.fine("Receiving loop stopped"); if (!serverSocket.isClosed()) { log.fine("Closing streaming server socket"); serverSocket.close(); } } catch (Exception ex) { log.info("Exception closing streaming server socket: " + ex.getMessage()); } }
From source file:ut.ee.mh.WebServer.java
public void handleRequest(Socket socket) { try {//from w ww. j a v a2 s . c o m DefaultHttpServerConnection serverConnection = new DefaultHttpServerConnection(); serverConnection.bind(socket, new BasicHttpParams()); HttpRequest request = serverConnection.receiveRequestHeader(); RequestLine requestLine = request.getRequestLine(); BasicHttpEntityEnclosingRequest enclosingRequest = new BasicHttpEntityEnclosingRequest( request.getRequestLine()); serverConnection.receiveRequestEntity(enclosingRequest); /* First make sure user is logged in if that is required. */ boolean loggedIn = false; if (mSharedPreferences.getBoolean(FileSharingService.PREFS_REQUIRE_LOGIN, false)) { /* Does the user have a valid cookie? */ Header cookiesHeader = request.getFirstHeader("Cookie"); if (cookiesHeader != null) { String cookies = cookiesHeader.getValue(); String cookie = cookies.substring(cookies.indexOf("id=") + "id=".length()); loggedIn = isValidCookie(cookie); } } else { loggedIn = true; } // if (!loggedIn) { /* Could be the result of the login form. */ if (requestLine.getUri().equals("/getLocation")) { handlePostRequest(serverConnection, request, requestLine); } // } else if (requestLine.getUri().equals("/")) { Log.i(TAG, "Sending shared folder listing"); sendSharedFolderListing(serverConnection); } else if (requestLine.getMethod().equals("GET") && requestLine.getUri().startsWith("/folder")) { Log.i(TAG, "Sending list of shared files"); sendSharedFilesList(serverConnection, requestLine); } else if (requestLine.getUri().startsWith("/zip")) { Log.i(TAG, "Sending zip file."); sendFolderContent(serverConnection, requestLine); } else if (requestLine.getUri().startsWith("/file")) { Log.i(TAG, "Sending file content"); sendFileContent(serverConnection, requestLine); } else if (requestLine.getMethod().equals("POST")) { Log.i(TAG, "User is uploading file"); handleUploadRequest(serverConnection, request, requestLine); } else if (requestLine.getUri().startsWith("/playlist")) { Log.i(TAG, "User is requesting playlist"); sendPlaylist(serverConnection, requestLine); } else { Log.i(TAG, "No action for " + requestLine.getUri()); sendNotFound(serverConnection); } serverConnection.flush(); serverConnection.close(); } catch (IOException e) { Log.e(TAG, "Problem with socket " + e.toString()); } catch (HttpException e) { Log.e(TAG, "Problemw with HTTP server " + e.toString()); } }
From source file:com.devoteam.srit.xmlloader.http.nio.NIOSocketServerListener.java
public void acceptReady() { try {/* w ww . ja v a2 s.co m*/ SocketChannel socketChannel = this.channel.accept(); NIOSocketServerHttp socketServerHttp = new NIOSocketServerHttp(); HybridSocket socket = new HybridSocket(socketServerHttp); InetSocketAddress remoteInetSocketAddress = (InetSocketAddress) socketChannel.socket() .getRemoteSocketAddress(); InetSocketAddress localInetSocketAddress = (InetSocketAddress) socketChannel.socket() .getLocalSocketAddress(); String connectionName = "HTTPServerConnection" + Stack.nextTransactionId(); String remoteHost = remoteInetSocketAddress.getAddress().getHostAddress(); String remotePort = Integer.toString(remoteInetSocketAddress.getPort()); String localHost = localInetSocketAddress.getAddress().getHostAddress(); String localPort = Integer.toString(localInetSocketAddress.getPort()); NIOChannelHttp channelHTTP = new NIOChannelHttp(connectionName, localHost, localPort, remoteHost, remotePort, StackFactory.PROTOCOL_HTTP, secure); DefaultHttpServerConnection serverConnection = new DefaultHttpServerConnection(); socketServerHttp.init(serverConnection, channelHTTP); channelHTTP.setSocketServerHttp(socketServerHttp); StackFactory.getStack(StackFactory.PROTOCOL_HTTP).openChannel(channelHTTP); if (socketChannel instanceof SSLSocketChannel) StackHttp.ioReactor.openTLS((SSLSocketChannel) socketChannel, socket); else StackHttp.ioReactor.openTCP(socketChannel, socket); serverConnection.bind(socket, new BasicHttpParams()); } catch (Exception e) { GlobalLogger.instance().getApplicationLogger().error(TextEvent.Topic.PROTOCOL, e, "Exception in SocketServerListener secure=", secure); e.printStackTrace(); } }
From source file:com.yanzhenjie.andserver.CoreThread.java
@Override public void run() { // HTTP Attribute. HttpParams httpParams = createHttpParams(); // ??/* w ww .j a v a2 s .co m*/ HttpProcessor httpProcessor = createHttpProcessor(); // Http? HttpRequestHandlerResolver handlerRegistry = registerRequestHandler(); // HTTP? HttpService httpService = createHttpService(httpParams, httpProcessor, handlerRegistry); try { mServerSocket = new ServerSocket(); mServerSocket.setReuseAddress(true); try { mServerSocket.bind(new InetSocketAddress(mPort)); } catch (final IOException ignored) { if (mListener != null) Executors.getInstance().handler(new Runnable() { @Override public void run() { mListener.onError(ignored); } }); return; } if (mListener != null) Executors.getInstance().handler(new Runnable() { @Override public void run() { mListener.onStarted(); } }); isLoop = true; while (isLoop) { if (!mServerSocket.isClosed()) { Socket socket = mServerSocket.accept(); DefaultHttpServerConnection serverConnection = new DefaultHttpServerConnection(); serverConnection.bind(socket, httpParams); // Dispatch request handler. HandleRequestThread requestTask = new HandleRequestThread(this, httpService, serverConnection); requestTask.setDaemon(true); Executors.getInstance().executorService(requestTask); } } } catch (final Exception ignored) { ignored.printStackTrace(); } finally { shutdown(); } }
From source file:android.webkit.cts.CtsTestServer.java
protected DefaultHttpServerConnection createHttpServerConnection() { return new DefaultHttpServerConnection(); }