Package org.eclipse.jetty.http2.parser
Class Parser
java.lang.Object
org.eclipse.jetty.http2.parser.Parser
- Direct Known Subclasses:
ServerParser
The HTTP/2 protocol parser.
This parser makes use of the HeaderParser and of
BodyParsers to parse HTTP/2 frames.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceprivate static enum -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final BodyParser[]private final org.eclipse.jetty.io.ByteBufferPoolprivate booleanprivate final HeaderParserprivate final HpackDecoderprivate Parser.Listenerprivate static final org.eclipse.jetty.util.log.Loggerprivate intprivate intprivate Parser.Stateprivate UnknownBodyParser -
Constructor Summary
ConstructorsConstructorDescriptionParser(org.eclipse.jetty.io.ByteBufferPool byteBufferPool, int maxHeaderSize) Parser(org.eclipse.jetty.io.ByteBufferPool byteBufferPool, int maxHeaderSize, RateControl rateControl) Parser(org.eclipse.jetty.io.ByteBufferPool byteBufferPool, Parser.Listener listener, int maxDynamicTableSize, int maxHeaderSize) Deprecated. -
Method Summary
Modifier and TypeMethodDescriptionprivate booleanconnectionFailure(ByteBuffer buffer, ErrorCode error, String reason) protected intprotected Parser.ListenerintDeprecated.intintprotected booleanhasFlag(int bit) voidinit(UnaryOperator<Parser.Listener> wrapper) Deprecated.voidinit(Parser.Listener listener) protected voidnotifyConnectionFailure(int error, String reason) voidparse(ByteBuffer buffer) Parses the givenbufferbytes and emit events to aParser.Listener.protected booleanparseBody(ByteBuffer buffer) protected booleanparseHeader(ByteBuffer buffer) private voidreset()voidsetMaxFrameLength(int maxFrameSize) Deprecated.voidsetMaxFrameSize(int maxFrameSize) voidsetMaxSettingsKeys(int maxSettingsKeys)
-
Field Details
-
LOG
private static final org.eclipse.jetty.util.log.Logger LOG -
byteBufferPool
private final org.eclipse.jetty.io.ByteBufferPool byteBufferPool -
headerParser
-
hpackDecoder
-
bodyParsers
-
listener
-
unknownBodyParser
-
maxFrameSize
private int maxFrameSize -
maxSettingsKeys
private int maxSettingsKeys -
continuation
private boolean continuation -
state
-
-
Constructor Details
-
Parser
@Deprecated public Parser(org.eclipse.jetty.io.ByteBufferPool byteBufferPool, Parser.Listener listener, int maxDynamicTableSize, int maxHeaderSize) Deprecated. -
Parser
public Parser(org.eclipse.jetty.io.ByteBufferPool byteBufferPool, int maxHeaderSize) -
Parser
public Parser(org.eclipse.jetty.io.ByteBufferPool byteBufferPool, int maxHeaderSize, RateControl rateControl)
-
-
Method Details
-
init
Deprecated. -
init
-
getListener
-
getHpackDecoder
-
reset
private void reset() -
parse
Parses the given
bufferbytes and emit events to aParser.Listener.When this method returns, the buffer may not be fully consumed, so invocations to this method should be wrapped in a loop:
while (buffer.hasRemaining()) parser.parse(buffer);- Parameters:
buffer- the buffer to parse
-
parseHeader
-
parseBody
-
connectionFailure
-
getFrameType
protected int getFrameType() -
hasFlag
protected boolean hasFlag(int bit) -
getMaxFrameLength
Deprecated. -
setMaxFrameLength
Deprecated. -
getMaxFrameSize
public int getMaxFrameSize() -
setMaxFrameSize
public void setMaxFrameSize(int maxFrameSize) -
getMaxSettingsKeys
public int getMaxSettingsKeys() -
setMaxSettingsKeys
public void setMaxSettingsKeys(int maxSettingsKeys) -
notifyConnectionFailure
-