public abstract class CrLfDecodingState extends Object implements DecodingState
DecodingState
which decodes a single CRLF
.
If it is found, the bytes are consumed and true
is provided as the product. Otherwise, read bytes are pushed back
to the stream, and false is provided as the
product.
Note that if we find a CR but do not find a following LF, we raise
an error.Constructor and Description |
---|
CrLfDecodingState() |
Modifier and Type | Method and Description |
---|---|
DecodingState |
decode(IoBuffer in,
ProtocolDecoderOutput out)
Invoked when data is available for this state.
|
protected abstract DecodingState |
finishDecode(boolean foundCRLF,
ProtocolDecoderOutput out)
Invoked when this state has found a
CRLF . |
DecodingState |
finishDecode(ProtocolDecoderOutput out)
Invoked when the associated
IoSession is closed. |
public DecodingState decode(IoBuffer in, ProtocolDecoderOutput out) throws Exception
decode
in interface DecodingState
in
- the data to be decoded.out
- used to write decoded objects.this
for loop transitions) or null
if
the state machine has reached its end.Exception
- if the read data violated protocol specification.public DecodingState finishDecode(ProtocolDecoderOutput out) throws Exception
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.finishDecode
in interface DecodingState
out
- used to write decoded objects.this
for loop transitions) or null
if
the state machine has reached its end.Exception
- if the read data violated protocol specification.protected abstract DecodingState finishDecode(boolean foundCRLF, ProtocolDecoderOutput out) throws Exception
CRLF
.foundCRLF
- true if CRLF
was found.out
- the current ProtocolDecoderOutput
used to write
decoded messages.this
for loop transitions) or null
if
the state machine has reached its end.Exception
- if the read data violated protocol specification.Copyright © 2004–2018 Apache MINA Project. All rights reserved.