Commit Graph

37 Commits

Author SHA1 Message Date
Greg Wilkins cd191e4d78 disable test on windows
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2021-03-25 10:16:26 +11:00
Joakim Erdfelt e81c847998
Happy New Year 2021 (Jetty 10 edition)
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2021-01-21 15:05:57 -06:00
Joakim Erdfelt f0badc5c5e
Issue #5784 - Fixing source header text: EPL-2.0 OR Apache-2.0
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-12-10 16:04:50 -06:00
Joakim Erdfelt ea60815dfd
Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2020-10-12 08:50:32 -05:00
Joakim Erdfelt 4a4257d4d1
Minimal change to setDefaultHostnameVerifier to allow compilation of tests
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-10-12 06:43:53 -05:00
Greg Wilkins 8c7e34f37d
Jetty 10.0.x immutable meta data (#4777)
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>
2020-04-28 13:36:44 +02:00
Joakim Erdfelt 57604d0955
Issue #4572 - Mechanical Change to use org.slf4j
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-03-16 15:48:25 -05:00
Joakim Erdfelt 8b7e64915f
Issue #4572 - Replace Jetty Logging with SLF4J
* Introducing jetty-slf4j-impl
* Make Jetty use org.slf4j
* Removed most of org.eclipse.jetty.util.log classes
* Left org.eclipse.jetty.util.log.Log and
       org.eclipse.jetty.util.log.Logger but as
  simple bridge classes that are deprecated
* Migrated code using org.eclipse.jetty.util.log.StacklessLogging
  to org.eclipse.jetty.logging.StacklessLogging found in
  the jetty-slf4j-impl
* Moved logging start modules from jetty-util to jetty-home
* Simplified logging start modules
* Updated code that was using StdErrLog directly
* Updating module-info.java for org.slf4j
* removing org.eclipse.jetty.util.log.class references
* jetty-start supports manually declared default provider
  + and we use it to default "logging" to the "logging-jetty" provider
* Cleaning up jetty-maven-plugin and IT testing for Logging
* Using old slf4j for it testing
* Updating compiler config to show Xlint:exports warnings
* Updating console-capture and logging-noop
* Adding slf4j bridge (capture) jetty modules
* Updates to jetty logging module locations
* Changing reference to slf4j dependent mod
* Process requested enabled modules in topological order
* Limiting inclusions in shaded jetty-start
  + Also adding note to jetty-util classes that are used by
    jetty-start
* Default logging level on baseline logging config is INFO (not DEBUG)
* Changing from system to server classes in logging
* Updating other modules to use new logging names

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-03-16 11:21:54 -05:00
Simone Bordet 5f82e17d2f Issue #3578 - Adopt EPL-2.0 for Jetty-10.
WIP: updated copyright headers for Java files.

TODO: doc files and META-INF files inside jars.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2020-01-09 20:10:19 +01:00
Simone Bordet a5c99207fc Merged branch 'jetty-9.4.x' into 'jetty-10.0.x'. 2020-01-07 17:02:40 +01:00
Simone Bordet 923ec38adf Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2020-01-07 16:51:25 +01:00
olivier lamy ff48fba585 happy new year
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2020-01-02 21:59:21 +01:00
olivier lamy e1371a1c13 happy new year
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2020-01-02 21:54:05 +01:00
Simone Bordet e3bb5a7515 Issue #4225 - Fix JPMS transitivity.
Reworked all module-info.java files to take into
account JPMS transitivity.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-12-19 18:17:35 +01:00
Greg Wilkins b7a7a53a18
Jetty 10.0.x reformat (#3812)
* Removing Legacy Method Separators
* Restyling branch `jetty-9.4.x`
* Applying changes highlighted by checkstyle
* Removing Legacy Method Separators
* Restyling branch `jetty-10.0.x`
* Applying checkstyle changes
* Applying checkstyle changes
* Applying XML restyling
* Restyling XML in branch `jetty-10.0.x`
* Fixing XML codestyle for IntelliJ
* Fixing XML style mistakes
* Fixing XML restyling in branch `jetty-10.0.x`
* Revert "Applying XML restyling"
* Updating checkstyle for XML codestyle
* Revert "Restyling XML in branch `jetty-10.0.x`"

# Conflicts:
#	jetty-xml/src/test/resources/org/eclipse/jetty/xml/configureWithAttr.xml
#	jetty-xml/src/test/resources/org/eclipse/jetty/xml/configureWithElements.xml

* Adding back build-resources
* Reformatting pom.xml files
* Disabling Checkstyle job
* fixed empty string on line wrap
* reformatted with latest intellij style
* misc checkstyle fixes

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-06-24 17:42:39 +02:00
Greg Wilkins 9706d70484
Jetty 9.4.x reformat (#3811)
* Removing Legacy Method Separators
* Restyling branch `jetty-9.4.x`
* Applying changes highlighted by checkstyle
* Applying XML restyling
* Fixing XML codestyle for IntelliJ
* Fixing XML style mistakes
* Revert "Applying XML restyling"
* Updating checkstyle for XML codestyle
* Reformatting pom.xml files
* Fixed empty string from line wraps
* Update intellij style to not do expression relative formatting. Reformatted code based on that.
* Increasing line split on Eclipse IDE Formatter to 512
* Restoring setting on internal default value.
+ IntelliJ will not export settings on things that set to their
  internal default values.
  We want to keep those values as a hedge against future default
  value changes in future releases of IntelliJ.
* Fixing intellij codestyle
* do not allow single line simple methods
* misc checkstyle fixes
* re-exported with correct name and all values

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-06-24 17:40:30 +02:00
Simone Bordet 30704fa5f0 Disabled Conscrypt test due to a Conscrypt bug.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-04-16 21:34:32 +02:00
Simone Bordet 47253bae60 Merged branch 'jetty-9.4.x' into 'jetty-10.0.x'. 2019-04-16 21:33:32 +02:00
Simone Bordet d6b6aa4285 Increased connection timeouts.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-04-16 16:38:17 +02:00
Simone Bordet 8e48f516c4 Merged branch 'jetty-9.4.x' into 'jetty-10.0.x'. 2019-04-16 11:50:01 +02:00
Simone Bordet 267991982e Increased timeouts for tests that connect to external sites.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-04-16 11:43:49 +02:00
Simone Bordet c7a2d8b7c6 Merged branch 'jetty-9.4.x' into 'jetty-10.0.x'. 2019-04-15 18:22:09 +02:00
Simone Bordet 64549fb19c Updated Conscrypt to 2.1.0.
Tagged tests that connect to external servers as "external".

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-04-15 18:10:21 +02:00
Simone Bordet 6fb243ff6c Issue #3464 - Split SslContextFactory into Client and Server
Introduced SslContextFactory subclasses Client and Server.
Replaced all usages of SslContextFactory with either Client or Server
as required.

Refactored configuration checking so that warnings are not emitted
when non necessary.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-03-21 14:42:42 +01:00
Simone Bordet ec8a1bdb23
Merge pull request #3313 from eclipse/jetty-10.0.x-1350-dynamic_client_transport
Issue #1350 - Dynamic selection of the transport to use based on ALPN on the client side.
2019-03-19 15:31:11 +01:00
Joakim Erdfelt 95a6b76851 Merge branch `jetty-9.4.x` into `jetty-10.0.x`
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>

# Conflicts:
#	examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneWebApp.java
#	jetty-osgi/test-jetty-osgi/pom.xml
#	jetty-server/src/main/java/org/eclipse/jetty/server/Server.java
#	jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketServerFactory.java
2019-03-15 16:00:59 -05:00
Simone Bordet 123918018e Issue #3425 - Upgrade conscrypt version to 2.0.0 and remove usage of reflection.
Small fixes after review.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-03-15 09:19:16 +01:00
olivier lamy adbfcbcf60 - Issue #3425 upgrade conscrypt to 2.0.0 and get rid of reflection usage
- align conscrypt version in conscrypt.mod file
- add more simple unit test to test conscrypt alpn usage

Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2019-03-13 11:35:10 +01:00
Simone Bordet aa211b033d Issue #1350 - Dynamic selection of the transport to use based on ALPN on the client side.
Introduced `HttpClientTransportDynamic` to be able to switch transport dynamically.
Refactored other transports and HttpDestination, removing now unnecessary classes.

Introduced ProxyProtocolClientConnectionFactory and used it for testing.
Updated OSGi tests now that jetty-client depends on jetty-alpn-client.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-03-06 10:26:10 +01:00
Simone Bordet b9f89af847 Fixes #3320 - Review Jetty 10 module-info.java.
Reviewed module-info.java files.
For those that have a "requires static" added a comment about
why the dependency is optional.
Rearranged directives in alphabetical order.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-02-08 17:30:27 +01:00
olivier lamy 63f2023e05 happy new year!!
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2019-01-01 12:17:53 +10:00
Olivier Lamy 9b7afd8a03
Happy new year!! (#3232)
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2019-01-01 11:52:16 +10:00
Simone Bordet f0fbd63a55 Merged branch 'jetty-9.4.x' into 'jetty-10.0.x'. 2018-11-22 12:56:25 +01:00
Simone Bordet 5f972b451c
Jetty 10.0.x 2978 add module info (#3120)
Fixes #2978 - Add module-info to relevant Jetty modules.

Added module-info.java for Jetty modules that are not test modules.
Moved jetty-http test utility classes to new module "jetty-http-tools".
Removed generation of test-jar from websocket-core.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-11-22 12:37:35 +01:00
Joakim Erdfelt 21365234f8 Issue #2108 - Updating license headers for year 2018 2018-01-09 09:44:41 -06:00
Greg Wilkins 35d0b59434 Issue #215 Conscrypt module for SSL and ALPN
Upgraded to RC11
2017-09-26 10:09:30 +10:00
Greg Wilkins 31a9b6f2e8 Issue #215 Conscrypt module for SSL and ALPN
Squash of the following commits:

commit 53e503b48d290e2ff83b214fd81572bf4cacd9ab
Merge: cc4ed73 d77ba82
Author: Greg Wilkins <gregw@webtide.com>
Date:   Thu Sep 21 07:27:45 2017 +1000

    Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-9.4.x-215-conscrypt-alpn

commit cc4ed73ae45e69addbb31221a860dd0984d92ac5
Author: Greg Wilkins <gregw@webtide.com>
Date:   Thu Sep 21 07:26:45 2017 +1000

    Issue #215 Conscrypt module debug

commit f640693f7ef61f8012d1454b2ed364740b330a6e
Author: Simone Bordet <simone.bordet@gmail.com>
Date:   Wed Sep 20 18:23:51 2017 +0200

    Issue #215 - Consider native ALPN/SSL provider.

    Fixed server-side ALPN negotiation for Conscrypt.

commit 669e992624a0f8f23103c70ba895b877dcec2404
Author: Simone Bordet <simone.bordet@gmail.com>
Date:   Wed Sep 20 16:56:20 2017 +0200

    Issue #215 - Consider native ALPN/SSL provider.

    Fixed client-side ALPN negotiation for Conscrypt.

commit aa873263d73c19461890bd1f9a417c796412b3d2
Author: Simone Bordet <simone.bordet@gmail.com>
Date:   Wed Sep 20 15:26:45 2017 +0200

    Issue #215 - Consider native ALPN/SSL provider.

    Code cleanups.

    Changed ALPNProcessor.init(boolean) to init().
    Removed unnecessary try/catches and simplified exception handling.

commit db9b169c35da956bcc42013f9bb8acddd7238d14
Author: Greg Wilkins <gregw@webtide.com>
Date:   Wed Sep 20 18:07:30 2017 +1000

    Issue #215 Conscrypt SSL pom cleanups

commit 096572e029352428275e86a964fa92dbeee19a65
Author: Greg Wilkins <gregw@webtide.com>
Date:   Wed Sep 20 15:57:20 2017 +1000

    Issue #215 Conscrypt SSL ALPN cleanups

commit b3c1bcb1fa9a7e15517a348270738e24c7b0a820
Merge: c836708 effec06
Author: Greg Wilkins <gregw@webtide.com>
Date:   Wed Sep 20 15:46:13 2017 +1000

    Merge branch 'jetty-9.4.x' into jetty-9.4.x-215-conscrypt-alpn

commit c836708a9bcd5fb61ed26302eb7d71b618cce329
Merge: de039d4 d9ecd5e
Author: Greg Wilkins <gregw@webtide.com>
Date:   Wed Sep 20 14:56:06 2017 +1000

    Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-9.4.x-215-conscrypt-alpn

commit de039d42f23f9caa239e5ddee0242b9a83a45441
Author: Greg Wilkins <gregw@webtide.com>
Date:   Tue Sep 19 17:19:49 2017 +1000

    Fix #1823 MimeTypes for ResourceHandler mp4

commit ff1e08434415cd6d909715547c2a54dbd0fc5dee
Author: Greg Wilkins <gregw@webtide.com>
Date:   Tue Sep 19 14:21:39 2017 +1000

    Issue #215

commit 3bb63147ebf4967698f51a65f009d80010038b20
Author: Greg Wilkins <gregw@webtide.com>
Date:   Tue Sep 19 14:08:05 2017 +1000

    Issue #215

    Use conscrypt 1.0.0.RC10 uber jar

commit 8b18099fde67f12d0e98d0b414568c9b76835459
Merge: 06f6530 eee4117
Author: Greg Wilkins <gregw@webtide.com>
Date:   Tue Sep 19 10:35:43 2017 +1000

    Merge branch 'jetty-9.4.x' into jetty-9.4.x-conscrypt-alpn

commit 06f65305d536250c5dfa2aaa84ffacdac113c8fc
Author: Greg Wilkins <gregw@webtide.com>
Date:   Thu Sep 14 16:04:05 2017 +1000

    Issue #215 Conscrypt ALPN provider

    First attempt at client support

commit 32d77461935263da86fb363233af0aa5a159d1fc
Author: Greg Wilkins <gregw@webtide.com>
Date:   Thu Sep 14 09:48:43 2017 +1000

    Issue #215 Conscrypt ALPN provider

commit bc051dca5e3ea7fed6ddb3a25ba5cecbd1c5b18b
Merge: 573c9f0 6c47126
Author: Greg Wilkins <gregw@webtide.com>
Date:   Thu Sep 14 08:49:10 2017 +1000

    Merge branch 'jetty-9.4.x' into jetty-9.4.x-conscrypt-alpn

commit 573c9f060172b2863b0b0a94c1ec2fb9a8762fa2
Merge: 47e22fe 3399fd3
Author: Greg Wilkins <gregw@webtide.com>
Date:   Wed Sep 13 15:24:27 2017 +1000

    Merge branch 'jetty-9.4.x' into jetty-9.4.x-conscrypt-alpn

commit 47e22fe2e4f8e3cc71f3117ad7d789dc3ea56675
Merge: 63ffa2b 187f37d
Author: Greg Wilkins <gregw@webtide.com>
Date:   Wed Sep 13 11:04:24 2017 +1000

    Merge branch 'jetty-9.4.x' into jetty-9.4.x-conscrypt-alpn

commit 63ffa2bdc13fa85d02459855a3f8e0de4f4b4f1b
Merge: cf1443d a0cb424
Author: Greg Wilkins <gregw@webtide.com>
Date:   Tue Sep 12 09:04:45 2017 +1000

    Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-9.4.x-conscrypt-alpn

commit cf1443d3ab71ac1aec7f153c233e869a3d6f783f
Author: Greg Wilkins <gregw@webtide.com>
Date:   Tue Sep 12 09:03:52 2017 +1000

    Issue #215 Conscrypt ALPN provider

commit a37aec327274042e1007f4146a3c3ec06fb424d9
Author: Greg Wilkins <gregw@webtide.com>
Date:   Thu Sep 7 21:19:28 2017 +1000

    Issue #215 Conscrypt ALPN provider

commit 6d7f39b2b0e53570afa61be5abfef2a352f80cf3
Author: Greg Wilkins <gregw@webtide.com>
Date:   Thu Sep 7 18:22:19 2017 +1000

    Issue #215 Conscrypt ALPN provider

commit a7d0f46b57091550724242693559d786180896ff
Author: Greg Wilkins <gregw@webtide.com>
Date:   Thu Sep 7 18:16:35 2017 +1000

    Issue #215 Conscrypt ALPN provider
2017-09-21 07:34:25 +10:00