Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue #9554 - move common hpack/qpack code to jetty-http #9628

Merged
merged 4 commits into from
Apr 11, 2023

Conversation

lachlan-roberts
Copy link
Contributor

@lachlan-roberts lachlan-roberts commented Apr 5, 2023

Issue #9554

move common hpack/qpack code to jetty-http

@lachlan-roberts lachlan-roberts changed the title Issue 9554 Issue #9554 - move common hpack/qpack code to jetty-http Apr 5, 2023
Copy link
Contributor

@gregw gregw left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So if I'm reading this right, h2 had a stateless Huffman class with encode and decode methods, but h3 separated those into a stateless HuffmanEncoder and a stateful HuffmanDecoder class, that uses the table in 'HuffmanEncoder`. Is that correct?

If so, I'd kind of prefer if we kept the stateless Huffman with the tables and static methods. Then introduce just a HuffmanDecoder class that does the stateful decoding. Perhaps use a Record to hold the state in the base class so it can be passed in by the stateful class

@lachlan-roberts
Copy link
Contributor Author

@gregw I moved out the static huffman codes into a Huffman class.

@lachlan-roberts lachlan-roberts merged commit 7ebd07d into jetty-12.0.x Apr 11, 2023
@lachlan-roberts lachlan-roberts deleted the jetty-12.0.x-9554-Hpack-Qpack branch April 11, 2023 06:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Move (qpack/hpack) HuffmanDecoder / HuffmanEncoder / NBitInteger* to common location
2 participants