Class ConsumeToCrLfDecodingState

    • Constructor Detail

      • ConsumeToCrLfDecodingState

        public ConsumeToCrLfDecodingState()
        Creates a new instance.
    • Method Detail

      • decode

        public DecodingState decode​(IoBuffer in,
                                    ProtocolDecoderOutput out)
                             throws Exception
        Invoked when data is available for this state.
        Specified by:
        decode in interface DecodingState
        Parameters:
        in - the data to be decoded.
        out - used to write decoded objects.
        Returns:
        the next state if a state transition was triggered (use this for loop transitions) or null if the state machine has reached its end.
        Throws:
        Exception - if the read data violated protocol specification.
      • finishDecode

        public DecodingState finishDecode​(ProtocolDecoderOutput out)
                                   throws Exception
        Invoked when the associated IoSession is closed. This method is useful when you deal with protocols which don't specify the length of a message (e.g. HTTP responses without content-length header). Implement this method to process the remaining data that DecodingState.decode(IoBuffer, ProtocolDecoderOutput) method didn't process completely.
        Specified by:
        finishDecode in interface DecodingState
        Parameters:
        out - used to write decoded objects.
        Returns:
        the next state if a state transition was triggered (use this for loop transitions) or null if the state machine has reached its end.
        Throws:
        Exception - if the read data violated protocol specification.
      • finishDecode

        protected abstract DecodingState finishDecode​(IoBuffer product,
                                                      ProtocolDecoderOutput out)
                                               throws Exception
        Invoked when this state has reached a CRLF.
        Parameters:
        product - the read bytes including the CRLF.
        out - the current ProtocolDecoderOutput used to write decoded messages.
        Returns:
        the next state if a state transition was triggered (use this for loop transitions) or null if the state machine has reached its end.
        Throws:
        Exception - if the read data violated protocol specification.