Class SkippingState
java.lang.Object
org.apache.mina.filter.codec.statemachine.SkippingState
- All Implemented Interfaces:
DecodingState
- Direct Known Subclasses:
LinearWhitespaceSkippingState
DecodingState which skips data until canSkip(byte) returns
false.-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract booleancanSkip(byte b) Called to determine whether the specified byte can be skipped.decode(IoBuffer in, ProtocolDecoderOutput out) Invoked when data is available for this state.protected abstract DecodingStatefinishDecode(int skippedBytes) Invoked when this state cannot skip any more bytes.Invoked when the associatedIoSessionis closed.
-
Field Details
-
skippedBytes
private int skippedBytes
-
-
Constructor Details
-
SkippingState
public SkippingState()
-
-
Method Details
-
decode
Invoked when data is available for this state.- Specified by:
decodein interfaceDecodingState- Parameters:
in- the data to be decoded.out- used to write decoded objects.- Returns:
- the next state if a state transition was triggered (use
thisfor loop transitions) ornullif the state machine has reached its end. - Throws:
Exception- if the read data violated protocol specification.
-
finishDecode
Invoked when the associatedIoSessionis closed. This method is useful when you deal with protocols which don't specify the length of a message (e.g. HTTP responses withoutcontent-lengthheader). Implement this method to process the remaining data thatDecodingState.decode(IoBuffer, ProtocolDecoderOutput)method didn't process completely.- Specified by:
finishDecodein interfaceDecodingState- Parameters:
out- used to write decoded objects.- Returns:
- the next state if a state transition was triggered (use
thisfor loop transitions) ornullif the state machine has reached its end. - Throws:
Exception- if the read data violated protocol specification.
-
canSkip
protected abstract boolean canSkip(byte b) Called to determine whether the specified byte can be skipped.- Parameters:
b- the byte to check.- Returns:
trueif the byte can be skipped.
-
finishDecode
Invoked when this state cannot skip any more bytes.- Parameters:
skippedBytes- the number of bytes skipped.- Returns:
- the next state if a state transition was triggered (use
thisfor loop transitions) ornullif the state machine has reached its end. - Throws:
Exception- if the read data violated protocol specification.
-