8c7e34f37d
Made HttpURI, HttpFields and MetaData immutable. The first two follow the same builder pattern and MetaData is constructor injection only. * Immutable version of HttpFields Preserve API and usage of HttpFields class while providing a read only interface and immutable implementation. Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable version of HttpFields Use an ArrayList in HttpFields. While slightly slower than the array, it will mostly be used as a builder pattern for an Immutable Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable version of HttpFields Fixed exception type. Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable version of HttpFields asImmutable method Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData Made HttpURIU immutable with a builder pattern. MetaData immutable and working within http module. Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData Fixes from review Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData Passing tests upto and including jetty-server Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData Cleanup of HttpURI.Builder API as suggested in PR. Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData Added builder for MetaData.Request Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData more api fixes Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP making HttpFiels itself immutable. Currently working up to jetty-servlet. Need to consider if content-length really is meta data and how much and when can we trust it. Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP Need to consider if content-length really is meta data and how much and when can we trust it. Also need to consider difference between h2 and h1 authority in metadata. Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP jetty-client and jetty-servlet passing tests. Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP Better align the style of immutability between `HttpFields` and `HttpURI`. They both now have static build() and from() methods, plus Builder and Immutable implementations. Potentially `Builder` could be renamed as `Mutable` Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP http2-server tests passed Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP http2-client tests passed Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP cleann build? Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP fix Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP more test fixes Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP Cleanups, mostly using EMPTY when appropriate. Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP Cleanups, use immutable Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP No trailers for connect Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP Fix CONNECT path handling Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP fixed rewrite query handling Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP rename Builders to Muttables Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP misc cleanups Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP Revert to using arrays due to garbage generated by streams and iterators (12% of a simple benchmark!). Even if this garbage is an artifact of the JIT being disabled by observation, it can hide other allocations, so best to just use simple arrays! Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP More optimizations and better test coverage. Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable Metadata various cleanups Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP More optimizations Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP review changes Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP changes after review: + less usage of Mutable + more usage of EMPTY + restored fragment handling Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP changes after review: + less usage of Mutable + less usage of asImmutable Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData WIP changes after review: + less usage of Mutable Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData changes after review: + better handling of URI in ContextHandler Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData changes after review: + downcast in test to access mutable response headers. Signed-off-by: Greg Wilkins <gregw@webtide.com> * Immutable MetaData changes after review: + use put instead of add for one time headers Signed-off-by: Greg Wilkins <gregw@webtide.com> * private Signed-off-by: Greg Wilkins <gregw@webtide.com> |
||
---|---|---|
.. | ||
src | ||
pom.xml |