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
BodyParser
s to parse HTTP/2 frames.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interface
private static enum
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final BodyParser[]
private final org.eclipse.jetty.io.ByteBufferPool
private boolean
private final HeaderParser
private final HpackDecoder
private Parser.Listener
private static final org.eclipse.jetty.util.log.Logger
private int
private int
private Parser.State
private 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 boolean
connectionFailure
(ByteBuffer buffer, ErrorCode error, String reason) protected int
protected Parser.Listener
int
Deprecated.int
int
protected boolean
hasFlag
(int bit) void
init
(UnaryOperator<Parser.Listener> wrapper) Deprecated.void
init
(Parser.Listener listener) protected void
notifyConnectionFailure
(int error, String reason) void
parse
(ByteBuffer buffer) Parses the givenbuffer
bytes and emit events to aParser.Listener
.protected boolean
parseBody
(ByteBuffer buffer) protected boolean
parseHeader
(ByteBuffer buffer) private void
reset()
void
setMaxFrameLength
(int maxFrameSize) Deprecated.void
setMaxFrameSize
(int maxFrameSize) void
setMaxSettingsKeys
(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
buffer
bytes 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
-