Package org.xlightweb.AbstractHttpConnection

Examples of org.xlightweb.AbstractHttpConnection.IMessageHandler


 
    final ByteBuffer[] parserBody(AbstractHttpConnection httpConnection, ByteBuffer[] rawData) throws IOException {

        dataSource.parse(rawData);
        if (dataSource.isComplete()) {
            IMessageHandler mh = messageHandler;
            reset();
           
            if (mh != null) {
                mh.onMessageReceived();
            }
        }
       
        rawData = HttpUtils.compact(rawData);
       
View Full Code Here


     
      switch (getBodyType(requestHeader)) {
       
        case BODY_TYPE_EMTPY:
          request = new HttpRequest(requestHeader);
          IMessageHandler messageHandler = messageHeaderHandler.onMessageHeaderReceived(request);
          messageHandler.onMessageReceived();
         
          rawData = HttpUtils.compact(rawData);
          reset();
         
          // next request? (-> pipelining)
View Full Code Here

 
    final ByteBuffer[] parserBody(AbstractHttpConnection httpConnection, ByteBuffer[] rawData) throws IOException {

        dataSource.parse(rawData);
        if (dataSource.isComplete()) {
            IMessageHandler mh = messageHandler;
            reset();
           
            if (mh != null) {
                mh.onMessageReceived();
            }
        }
       
        rawData = HttpUtils.compact(rawData);
       
View Full Code Here

        switch (bodyType) {
         
          case BODY_TYPE_EMTPY:
            HttpResponse response = new HttpResponse(responseHeader);
           
            IMessageHandler messageHandler = messageHeaderHandler.onMessageHeaderReceived(response);
            setMessageHandler(messageHandler);
            reset();
           
            // next response? (-> pipelining)
            if (rawData != null) {
View Full Code Here

        }
       
        dataSource.parse(rawData);
        dataSource.onDisconnect();  
       
        IMessageHandler messageHandler = messageHeaderHandler.onMessageHeaderReceived(response);
        setMessageHandler(messageHandler)
  }
View Full Code Here

     
      setState(RECEIVING_BODY);
     
      parserBody(rawData);

      IMessageHandler messageHandler = httpConnection.getMessageHandler();
      if (messageHandler == null) {
        throw new IOException("no message handler set");
      }

      messageHandler.onMessage(response);
      return;
    }

   
    if (responseHeader != null) {

      httpConnection.setLastTimeHeaderReceivedMillis(System.currentTimeMillis());
      httpConnection.incCountMessageReceived();
       
      IMessageHandler messageHandler = httpConnection.getMessageHandler();
      if (messageHandler == null) {
        throw new IOException("no message handler set");
      }

      try {
       
        HttpResponse response = null;
       
        switch (getBodyType(httpConnection, responseHeader,  messageHandler.isBodylessMessageExpected())) {
         
          case BODY_TYPE_EMTPY:
            response = new HttpResponse(responseHeader);
            reset();
            break;

           
          case BODY_TYPE_BOUND:
            setBodyParser(new FullMessageBodyParser(httpConnection, responseHeader));
            response = new HttpResponse(responseHeader);
            response.setBodyDataSourceSilence(getBodyParser().getDataSource());
            setState(RECEIVING_BODY);
           
            response.getNonBlockingBody().setBodyDataReceiveTimeoutMillis(httpConnection.getBodyDataReceiveTimeoutMillis());
            parserBody(rawData);
            break;
           
          case BODY_TYPE_SIMPLE:
            setBodyParser(new SimpleMessageBodyParser(httpConnection, responseHeader));
            response = new HttpResponse(responseHeader);
            response.setBodyDataSourceSilence(getBodyParser().getDataSource());
            setState(RECEIVING_BODY);
           
            response.getNonBlockingBody().setBodyDataReceiveTimeoutMillis(httpConnection.getBodyDataReceiveTimeoutMillis());
            parserBody(rawData);
            break;
           
          case BODY_TYPE_MULTIPART_BYTERANGE:
            setBodyParser(new MultipartByteRangeMessageBodyParser(httpConnection, responseHeader));
            response = new HttpResponse(responseHeader);
            response.setBodyDataSourceSilence(getBodyParser().getDataSource());
            setState(RECEIVING_BODY);
           
            response.getNonBlockingBody().setBodyDataReceiveTimeoutMillis(httpConnection.getBodyDataReceiveTimeoutMillis());
            parserBody(rawData);
            break;
           
           
          default// BODY_TYPE_CHUNKED
            setBodyParser(new FullMessageChunkedBodyParser(httpConnection, responseHeader));
            response = new HttpResponse(responseHeader);
            response.setBodyDataSourceSilence(getBodyParser().getDataSource());
            setState(RECEIVING_BODY);

            response.getNonBlockingBody().setBodyDataReceiveTimeoutMillis(httpConnection.getBodyDataReceiveTimeoutMillis());
            parserBody(rawData);
           
            break;
        }
       
        messageHandler.onMessage(response);
        return;
     
      } catch (BadMessageException bme) {
        throw bme;
       
      } catch (IOException ioe) {
        messageHandler.onException(ioe);
        throw ioe;
      }
    }
  }
View Full Code Here

        switch (bodyType) {
         
          case BODY_TYPE_EMTPY:
            HttpResponse response = new HttpResponse(responseHeader);
           
            IMessageHandler messageHandler = messageHeaderHandler.onMessageHeaderReceived(response);
            setMessageHandler(messageHandler);
            reset();
           
            // next response? (-> pipelining)
            if (rawData != null) {
View Full Code Here

        }
       
        dataSource.parse(rawData);
        dataSource.onDisconnect();  
       
        IMessageHandler messageHandler = messageHeaderHandler.onMessageHeaderReceived(response);
        setMessageHandler(messageHandler)
  }
View Full Code Here

 
    final ByteBuffer[] parserBody(AbstractHttpConnection httpConnection, ByteBuffer[] rawData) throws IOException {

        dataSource.parse(rawData);
        if (dataSource.isComplete()) {
            IMessageHandler mh = messageHandler;
            reset();
           
            if (mh != null) {
                mh.onMessageReceived();
            }
        }
       
        rawData = HttpUtils.compact(rawData);
       
View Full Code Here

     
      switch (getBodyType(requestHeader)) {
       
        case BODY_TYPE_EMTPY:
          request = new HttpRequest(requestHeader);
          IMessageHandler messageHandler = messageHeaderHandler.onMessageHeaderReceived(request);
          messageHandler.onMessageReceived();
         
          rawData = HttpUtils.compact(rawData);
          reset();
         
          // next request? (-> pipelining)
View Full Code Here

TOP

Related Classes of org.xlightweb.AbstractHttpConnection.IMessageHandler

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.