Merge remote-tracking branch 'origin/jetty-10.0.x' into jetty-10.0.x-well-known-listing
This commit is contained in:
commit
1d539c74c5
|
@ -24,6 +24,8 @@ updates:
|
|||
versions: [ ">=1.1.0" ]
|
||||
- dependency-name: "org.infinispan:*"
|
||||
versions: [ ">=12" ]
|
||||
- dependency-name: "org.jboss.weld.servlet:*"
|
||||
versions: [ ">=4.0.0" ]
|
||||
|
||||
- package-ecosystem: "maven"
|
||||
directory: "/"
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
--add-exports jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED
|
||||
--add-exports jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED
|
||||
--add-exports jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED
|
||||
--add-exports jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED
|
||||
--add-exports jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED
|
||||
--add-exports jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED
|
||||
--add-exports jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED
|
||||
--add-exports jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED
|
||||
--add-opens jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED
|
||||
--add-opens jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED
|
|
@ -7,12 +7,12 @@ pipeline {
|
|||
stages {
|
||||
stage("Parallel Stage") {
|
||||
parallel {
|
||||
stage("Build / Test - JDK11") {
|
||||
stage("Build / Test - JDK17") {
|
||||
agent { node { label 'linux' } }
|
||||
steps {
|
||||
container('jetty-build') {
|
||||
timeout( time: 120, unit: 'MINUTES' ) {
|
||||
mavenBuild( "jdk11", "clean install -Perrorprone", "maven3")
|
||||
mavenBuild( "jdk17", "clean install -Perrorprone", "maven3")
|
||||
// Collect up the jacoco execution results (only on main build)
|
||||
jacoco inclusionPattern: '**/org/eclipse/jetty/**/*.class',
|
||||
exclusionPattern: '' +
|
||||
|
@ -31,19 +31,19 @@ pipeline {
|
|||
execPattern: '**/target/jacoco.exec',
|
||||
classPattern: '**/target/classes',
|
||||
sourcePattern: '**/src/main/java'
|
||||
recordIssues id: "jdk11", name: "Static Analysis jdk11", aggregatingResults: true, enabledForFailure: true, tools: [mavenConsole(), java(), checkStyle(), spotBugs(), pmdParser(), errorProne()]
|
||||
recordIssues id: "jdk17", name: "Static Analysis jdk17", aggregatingResults: true, enabledForFailure: true, tools: [mavenConsole(), java(), checkStyle(), errorProne(), spotBugs()]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
stage("Build / Test - JDK17") {
|
||||
stage("Build / Test - JDK11") {
|
||||
agent { node { label 'linux' } }
|
||||
steps {
|
||||
container( 'jetty-build' ) {
|
||||
timeout( time: 120, unit: 'MINUTES' ) {
|
||||
mavenBuild( "jdk17", "clean install -Dspotbugs.skip=true -Djacoco.skip=true", "maven3")
|
||||
recordIssues id: "jdk17", name: "Static Analysis jdk17", aggregatingResults: true, enabledForFailure: true, tools: [mavenConsole(), java(), checkStyle(), spotBugs(), pmdParser()]
|
||||
mavenBuild( "jdk11", "clean install -Dspotbugs.skip=true -Djacoco.skip=true", "maven3")
|
||||
recordIssues id: "jdk11", name: "Static Analysis jdk11", aggregatingResults: true, enabledForFailure: true, tools: [mavenConsole(), java(), checkStyle()]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
127
VERSION.txt
127
VERSION.txt
|
@ -1,4 +1,95 @@
|
|||
jetty-10.0.8-SNAPSHOT
|
||||
jetty-10.0.9-SNAPSHOT
|
||||
|
||||
jetty-10.0.8 - 07 February 2022
|
||||
+ 2504 Expose more WebSocket details in JMX and Server Dump
|
||||
+ 4275 Path Normalization/Traversal - Context Matching
|
||||
+ 4317 EventSource does not work with GzipHandler
|
||||
+ 6017 Property overriding does not work
|
||||
+ 6282 SecuredRedirectHandler should probably redirect with 301
|
||||
+ 6497 Replace SameFileAliasChecker
|
||||
+ 6728 QUIC and HTTP/3
|
||||
+ 6730 HTTP3: update Quiche to 0.9.0
|
||||
+ 6965 Expose Spec `ServerContainer.upgrade()` API
|
||||
+ 6973 Jetty starts consuming CPU that remains high even without any traffic
|
||||
+ 6974 Major websocket memory change in 9.4.36
|
||||
+ 6980 ELContextCleaner failed because cannot access a member of class
|
||||
javax.el.BeanELResolver with modifiers "private static final"
|
||||
+ 6987 jetty-unixdomain-server is missing from jetty-bom
|
||||
+ 6990 UnixDomainServerConnector throws misleading exception on invalid socket
|
||||
path
|
||||
+ 7008 Problem with jetty.sh start regression 10.0.6 -> 10.0.7 when using
|
||||
JETTY_USER
|
||||
+ 7012 Remove all old geronimo spec jars from jetty-10
|
||||
+ 7031 ResponseWriter.println(char) does not print newline
|
||||
+ 7042 Simplify configuration to use different OpenIdConfiguration per webapp.
|
||||
+ 7059 NPE in AllowedResourceAliasChecker.getPath()
|
||||
+ 7063 Simplify command line use of org.eclipse.jetty.util.Password
|
||||
+ 7064 Cleanup or clarify `(null)` in output of `--list-config`
|
||||
+ 7086 WebSocket: java.lang.IllegalStateException: already released
|
||||
RetainableByteBuffer
|
||||
+ 7103 Rework LaF of distro landing page
|
||||
+ 7107 Client timeout and async close exceptions when setting max duration on
|
||||
pool
|
||||
+ 7109 Deprecate UnixSocket JNR support
|
||||
+ 7111 Add support to deprecate jetty-home modules
|
||||
+ 7113 Improve Unix-Domain client documentation
|
||||
+ 7124 Add default methods on LifeCycle.Listener interface
|
||||
+ 7131 Use Charset instead of encoding string where possible
|
||||
+ 7157 Multiplexed connection pools retain CLOSED entries
|
||||
+ 7160 HttpURI considers %25 to be ambiguous, preventing access to static
|
||||
resources with % in their name
|
||||
+ 7240 Clarify and javadoc InvocationType
|
||||
+ 7243 Reset pooled ByteBuffer endianness
|
||||
+ 7262 Allow the SerlvetHandler.getFilterChain method to be overridden.
|
||||
+ 7277 Allow override of `ServletRequest.getLocalName()` and `.getLocalPort()`
|
||||
in post-intermediary scenarios
|
||||
+ 7280 Interceptors don't get destroyed in HttpInput
|
||||
+ 7281 EOFs are not passed to interceptors any more - shouldn't they?
|
||||
+ 7284 HttpInput reopen/recycle cleanup
|
||||
+ 7297 Deprecate log4j 1.x support
|
||||
+ 7313 addBean(_attributes); only called in the Convenience constructor of
|
||||
org.eclipse.jetty.server.Server
|
||||
+ 7327 jetty-slf4j-impl missing from BOM
|
||||
+ 7348 Slow CONNECT request causes NPE
|
||||
+ 7351 Large WebSocket payloads with permessage-deflate hang on 10.0.7
|
||||
+ 7354 Demo jars should not be in jetty-home
|
||||
+ 7369 Document CustomRequestLog
|
||||
+ 7375 Some environments require Request scoping during session save
|
||||
+ 7435 Investigate Infinispan transitive dependencies
|
||||
+ 7496 Transient 400: Bad Request responses in jetty-9.4.45.v20220128
|
||||
+ 7514 Adding InheritedListeners to already-started components can cause
|
||||
IllegalStateException
|
||||
+ 7523 Typo in AnnotationConfiguration
|
||||
+ 7524 Missing package in JmxConfiguration
|
||||
+ 7529 Upgrade quiche to version 0.11.0
|
||||
|
||||
jetty-9.4.45.v20220203 - 03 February 2022
|
||||
+ 4275 Path Normalization/Traversal - Context Matching
|
||||
+ 6497 Replace SameFileAliasChecker
|
||||
+ 6687 Upgrade Infinispan in all active Jetty branches
|
||||
+ 6965 Expose Spec `ServerContainer.upgrade()` API
|
||||
+ 6969 Getting 404 failures when trying to enable `logging-log4j` module.
|
||||
+ 6974 Major websocket memory change in 9.4.36
|
||||
+ 7031 ResponseWriter.println(char) does not print newline
|
||||
+ 7059 NPE in AllowedResourceAliasChecker.getPath()
|
||||
+ 7073 Error in parse parameter in broken UTF-8 encoding
|
||||
+ 7078 CompressionPools are not shared between multiple contexts for 9.4
|
||||
WebSocket
|
||||
+ 7107 Client timeout and async close exceptions when setting max duration on
|
||||
pool
|
||||
+ 7124 Add default methods on LifeCycle.Listener interface
|
||||
+ 7157 Multiplexed connection pools retain CLOSED entries
|
||||
+ 7243 Reset pooled ByteBuffer endianness
|
||||
+ 7266 Wrong ALPN jars are selected for newer versions of JDK8
|
||||
+ 7271 It is necessary to set MAX_CAPACITY to ArrayTernaryTrie/ArrayTrie
|
||||
+ 7277 Allow override of `ServletRequest.getLocalName()` and `.getLocalPort()`
|
||||
in post-intermediary scenarios
|
||||
+ 7297 Deprecate log4j 1.x support
|
||||
+ 7348 Slow CONNECT request causes NPE
|
||||
+ 7375 Some environments require Request scoping during session save
|
||||
+ 7435 Investigate Infinispan transitive dependencies
|
||||
+ 7440 ContextHandler.getAliasChecks() breaks Spring Boot
|
||||
+ 7496 Transient 400: Bad Request responses in jetty-9.4.45.v20220128
|
||||
|
||||
jetty-10.0.7 - 06 October 2021
|
||||
+ 3514 Use interpolation of versions from pom in mod files
|
||||
|
@ -13,15 +104,15 @@ jetty-10.0.7 - 06 October 2021
|
|||
active modules
|
||||
+ 6487 Expose ServletHolder getter in ServletHandler$ChainEnd for auditing
|
||||
libraries to use
|
||||
+ 6489 Some URI valid compliance modes cannot be set in .ini file.
|
||||
+ 6489 Some URI valid compliance modes cannot be set in .ini file
|
||||
+ 6491 onDataAvailable() not called when HttpParser is closed prematurely
|
||||
+ 6497 Replace SameFileAliasChecker
|
||||
+ 6520 Error page has HTML error when writePoweredBy is enabled.
|
||||
+ 6520 Error page has HTML error when writePoweredBy is enabled
|
||||
+ 6544 Using jetty.gzip.excludedMimeTypeList property results in an error
|
||||
+ 6545 image/webp MIME type support
|
||||
+ 6552 FileBufferedInterceptor.dispose not working due to locked file
|
||||
+ 6553 Review usage of Authentication.UNAUTHENTICATED in SecurityHandler
|
||||
+ 6554 Allow creation of DefaultIdentityService without realmName.
|
||||
+ 6554 Allow creation of DefaultIdentityService without realmName
|
||||
+ 6556 MemcachedSessionDataMap needs to set the context classloader before
|
||||
serialization/deseriazliation.
|
||||
+ 6558 Allow to configure return type in JSON array parsing
|
||||
|
@ -36,7 +127,7 @@ jetty-10.0.7 - 06 October 2021
|
|||
+ 6617 Add basic auth support for OpenId token endpoint (client_secret_basic)
|
||||
+ 6618 ID token `azp` claim should not be required if `aud` is single value
|
||||
array
|
||||
+ 6642 WebSocket handling of Connection: upgrade,close.
|
||||
+ 6642 WebSocket handling of Connection: upgrade,close
|
||||
+ 6646 Deadlock in HTTP2Flusher when using a small thread pool due to
|
||||
incorrect InvocableType
|
||||
+ 6652 Improve ReservedThreadExecutor dump
|
||||
|
@ -57,6 +148,32 @@ jetty-10.0.7 - 06 October 2021
|
|||
+ 6883 Welcome file redirects do not honor the relativeRedirectAllowed option
|
||||
+ 6938 module-info.java file do not use the canonical order for the elements
|
||||
|
||||
jetty-9.4.44.v20210927 - 27 September 2021
|
||||
+ 3514 Use interpolation of versions from pom in mod files
|
||||
+ 6369 Increment default jetty.http2.rateControl.maxEventsPerSecond
|
||||
+ 6372 Review socket options configuration
|
||||
+ 6487 Expose ServletHolder getter in ServletHandler$ChainEnd for auditing
|
||||
libraries to use
|
||||
+ 6491 onDataAvailable() not called when HttpParser is closed prematurely
|
||||
+ 6520 Error page has HTML error when writePoweredBy is enabled
|
||||
+ 6545 image/webp MIME type support
|
||||
+ 6553 Review usage of Authentication.UNAUTHENTICATED in SecurityHandler
|
||||
+ 6554 Allow creation of DefaultIdentityService without realmName
|
||||
+ 6558 Allow to configure return type in JSON array parsing
|
||||
+ 6562 HttpOutput.write(ByteBuffer buffer)
|
||||
+ 6603 HTTP/2 max local stream count exceeded
|
||||
+ 6617 Add basic auth support for OpenId token endpoint (client_secret_basic)
|
||||
+ 6618 ID token `azp` claim should not be required if `aud` is single value
|
||||
array
|
||||
+ 6652 Improve ReservedThreadExecutor dump
|
||||
+ 6671 Update to apache jsp 8.5.70
|
||||
+ 6772 Update to asm 9.2
|
||||
+ 6853 Remove pack200 plugins
|
||||
+ 6860 Correct IPv6 format
|
||||
+ 6869 Correct Content-Type within HTML error pages
|
||||
+ 6870 Encode control characters in URIUtil.encodePath
|
||||
+ 6883 Welcome file redirects do not honor the relativeRedirectAllowed option
|
||||
|
||||
jetty-10.0.6 - 29 June 2021
|
||||
+ 6375 Always check XML `Set` elements with `property` attribute
|
||||
+ 6382 HttpClient TimeoutException message reports transient values
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>apache-jstl</artifactId>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
-->
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>build-resources</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
<name>Jetty :: Build Resources</name>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
|
@ -15,7 +15,7 @@
|
|||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<!-- versions for these plugins are not based on parent pom -->
|
||||
<maven.deploy.plugin.version>3.0.0-M2</maven.deploy.plugin.version>
|
||||
<maven.javadoc.plugin.version>3.3.1</maven.javadoc.plugin.version>
|
||||
<maven.javadoc.plugin.version>3.3.2</maven.javadoc.plugin.version>
|
||||
<maven.remote-resources.plugin.version>1.6.0</maven.remote-resources.plugin.version>
|
||||
<maven.surefire.plugin.version>3.0.0-M5</maven.surefire.plugin.version>
|
||||
</properties>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.demos</groupId>
|
||||
<artifactId>demo-async-rest-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.demos</groupId>
|
||||
<artifactId>demo-async-rest-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.demos</groupId>
|
||||
<artifactId>demo-async-rest-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.demos</groupId>
|
||||
<artifactId>demos-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.demos</groupId>
|
||||
<artifactId>demos-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>demo-jaas-webapp</artifactId>
|
||||
<name>Demo :: JAAS :: WebApp</name>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.demos</groupId>
|
||||
<artifactId>demos-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.demos</groupId>
|
||||
<artifactId>demos-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>demo-jndi-webapp</artifactId>
|
||||
<name>Demo :: JNDI :: WebApp</name>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.demos</groupId>
|
||||
<artifactId>demos-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.demos</groupId>
|
||||
<artifactId>demos-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<name>Demo :: Mock Resources</name>
|
||||
<artifactId>demo-mock-resources</artifactId>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.demos</groupId>
|
||||
<artifactId>demos-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>demo-proxy-webapp</artifactId>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.demos</groupId>
|
||||
<artifactId>demos-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.demos</groupId>
|
||||
<artifactId>demos-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
<relativePath>../../pom.xml</relativePath>
|
||||
</parent>
|
||||
<artifactId>demo-container-initializer</artifactId>
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.demos</groupId>
|
||||
<artifactId>demos-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
<relativePath>../../pom.xml</relativePath>
|
||||
</parent>
|
||||
<name>Demo :: Servlet Spec :: Webapp</name>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.demos</groupId>
|
||||
<artifactId>demos-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
<relativePath>../../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.demos</groupId>
|
||||
<artifactId>demos-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<name>Demo :: Servlet Spec</name>
|
||||
<artifactId>demo-spec</artifactId>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.demos</groupId>
|
||||
<artifactId>demos-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>demos-jetty-embedded</artifactId>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.documentation</groupId>
|
||||
<artifactId>documentation-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.documentation</groupId>
|
||||
<artifactId>documentation-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
@ -14,7 +14,6 @@
|
|||
<properties>
|
||||
<sources-directory>${project.build.directory}/jetty-sources</sources-directory>
|
||||
<sonar.skip>true</sonar.skip>
|
||||
<pmd.skip>true</pmd.skip>
|
||||
<spotbugs.skip>true</spotbugs.skip>
|
||||
<checkstyle.skip>true</checkstyle.skip>
|
||||
</properties>
|
||||
|
@ -109,6 +108,10 @@
|
|||
infinispan-remote,
|
||||
jetty-test-helper,
|
||||
alpn-api,
|
||||
quic-quiche,
|
||||
quic-quiche-common,
|
||||
quic-quiche-foreign-incubator,
|
||||
quic-quiche-jna,
|
||||
javax.servlet,
|
||||
javax.websocket,
|
||||
jetty-servlet-api,
|
||||
|
@ -148,8 +151,6 @@
|
|||
org.eclipse.jetty.http3.qpack.internal.*;
|
||||
org.eclipse.jetty.http3.server.internal;
|
||||
org.eclipse.jetty.quic.common.internal;
|
||||
org.eclipse.jetty.quic.quiche;
|
||||
org.eclipse.jetty.quic.quiche.*;
|
||||
org.eclipse.jetty.quic.server.internal;
|
||||
</excludePackageNames>
|
||||
</configuration>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-alpn-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>jetty-alpn-client</artifactId>
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-alpn-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-alpn-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-alpn-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-alpn-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-alpn-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>jetty-alpn-server</artifactId>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>jetty-alpn-parent</artifactId>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>jetty-ant</artifactId>
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>jetty-bom</artifactId>
|
||||
|
@ -53,419 +53,419 @@
|
|||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>apache-jsp</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>apache-jstl</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-alpn-client</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-alpn-java-client</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-alpn-java-server</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-alpn-conscrypt-client</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-alpn-conscrypt-server</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-alpn-server</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-annotations</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-ant</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-client</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-cdi</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-deploy</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.fcgi</groupId>
|
||||
<artifactId>fcgi-client</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.fcgi</groupId>
|
||||
<artifactId>fcgi-server</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.gcloud</groupId>
|
||||
<artifactId>jetty-gcloud-session-manager</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-home</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
<type>zip</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-home</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
<type>tar.gz</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-http</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.http2</groupId>
|
||||
<artifactId>http2-client</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.http2</groupId>
|
||||
<artifactId>http2-common</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.http2</groupId>
|
||||
<artifactId>http2-hpack</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.http2</groupId>
|
||||
<artifactId>http2-http-client-transport</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.http2</groupId>
|
||||
<artifactId>http2-server</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.http3</groupId>
|
||||
<artifactId>http3-client</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.http3</groupId>
|
||||
<artifactId>http3-common</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.http3</groupId>
|
||||
<artifactId>http3-http-client-transport</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.http3</groupId>
|
||||
<artifactId>http3-qpack</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.http3</groupId>
|
||||
<artifactId>http3-server</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-http-spi</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>infinispan-common</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>infinispan-remote</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>infinispan-remote-query</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>infinispan-embedded</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>infinispan-embedded-query</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-hazelcast</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-io</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-jaas</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-jaspi</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-jmx</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-jndi</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-keystore</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.memcached</groupId>
|
||||
<artifactId>jetty-memcached-sessions</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-nosql</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.osgi</groupId>
|
||||
<artifactId>jetty-osgi-alpn</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.osgi</groupId>
|
||||
<artifactId>jetty-osgi-boot</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.osgi</groupId>
|
||||
<artifactId>jetty-osgi-boot-jsp</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.osgi</groupId>
|
||||
<artifactId>jetty-osgi-boot-warurl</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.quic</groupId>
|
||||
<artifactId>quic-client</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.quic</groupId>
|
||||
<artifactId>quic-common</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.quic</groupId>
|
||||
<artifactId>quic-quiche-common</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.quic</groupId>
|
||||
<artifactId>quic-quiche-jna</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.quic</groupId>
|
||||
<artifactId>quic-server</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.osgi</groupId>
|
||||
<artifactId>jetty-httpservice</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-plus</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-proxy</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-quickstart</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-rewrite</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-security</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-openid</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-server</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-servlet</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-servlets</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-slf4j-impl</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-unixdomain-server</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-unixsocket-common</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-unixsocket-client</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-unixsocket-server</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-util</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-util-ajax</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-webapp</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.websocket</groupId>
|
||||
<artifactId>websocket-javax-client</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.websocket</groupId>
|
||||
<artifactId>websocket-javax-server</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.websocket</groupId>
|
||||
<artifactId>websocket-javax-common</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.websocket</groupId>
|
||||
<artifactId>websocket-jetty-api</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.websocket</groupId>
|
||||
<artifactId>websocket-jetty-client</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.websocket</groupId>
|
||||
<artifactId>websocket-jetty-common</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.websocket</groupId>
|
||||
<artifactId>websocket-jetty-server</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.websocket</groupId>
|
||||
<artifactId>websocket-servlet</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.websocket</groupId>
|
||||
<artifactId>websocket-core-common</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.websocket</groupId>
|
||||
<artifactId>websocket-core-client</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.websocket</groupId>
|
||||
<artifactId>websocket-core-server</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-xml</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</dependencyManagement>
|
||||
|
@ -481,7 +481,7 @@
|
|||
<dependency>
|
||||
<groupId>org.eclipse.jetty.quic</groupId>
|
||||
<artifactId>quic-quiche-foreign-incubator</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</dependencyManagement>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -279,7 +279,7 @@ public interface Request
|
|||
|
||||
/**
|
||||
* Shortcut method to specify a file as a content for this request, with the default content type of
|
||||
* "application/octect-stream".
|
||||
* "application/octet-stream".
|
||||
*
|
||||
* @param file the file to upload
|
||||
* @return this request object
|
||||
|
|
|
@ -54,6 +54,8 @@ import org.junit.jupiter.params.ParameterizedTest;
|
|||
import org.junit.jupiter.params.provider.MethodSource;
|
||||
|
||||
import static org.hamcrest.MatcherAssert.assertThat;
|
||||
import static org.hamcrest.Matchers.is;
|
||||
import static org.hamcrest.Matchers.lessThanOrEqualTo;
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||
|
||||
|
@ -75,11 +77,6 @@ public class ConnectionPoolTest
|
|||
return Stream.of(DUPLEX, MULTIPLEX, RANDOM, DUPLEX_MAX_DURATION, ROUND_ROBIN);
|
||||
}
|
||||
|
||||
public static Stream<ConnectionPoolFactory> poolsNoMaxDuration()
|
||||
{
|
||||
return Stream.of(DUPLEX, MULTIPLEX, RANDOM, ROUND_ROBIN);
|
||||
}
|
||||
|
||||
public static Stream<ConnectionPoolFactory> poolsNoRoundRobin()
|
||||
{
|
||||
return Stream.of(DUPLEX, MULTIPLEX, RANDOM, DUPLEX_MAX_DURATION);
|
||||
|
@ -316,7 +313,10 @@ public class ConnectionPoolTest
|
|||
assertEquals(1, destinations.size());
|
||||
HttpDestination destination = (HttpDestination)destinations.get(0);
|
||||
AbstractConnectionPool connectionPool = (AbstractConnectionPool)destination.getConnectionPool();
|
||||
assertEquals(2, connectionPool.getConnectionCount());
|
||||
if (DUPLEX_MAX_DURATION == factory)
|
||||
assertThat(connectionPool.getConnectionCount(), lessThanOrEqualTo(2)); // The connections can expire upon release.
|
||||
else
|
||||
assertThat(connectionPool.getConnectionCount(), is(2));
|
||||
}
|
||||
|
||||
@ParameterizedTest
|
||||
|
@ -376,8 +376,7 @@ public class ConnectionPoolTest
|
|||
}
|
||||
|
||||
@ParameterizedTest
|
||||
// Connection pool aggressively closes expired connections upon release, which interferes with this test's assertion.
|
||||
@MethodSource("poolsNoMaxDuration")
|
||||
@MethodSource("pools")
|
||||
public void testConcurrentRequestsAllBlockedOnServerWithLargeConnectionPool(ConnectionPoolFactory factory) throws Exception
|
||||
{
|
||||
int count = 50;
|
||||
|
@ -385,8 +384,7 @@ public class ConnectionPoolTest
|
|||
}
|
||||
|
||||
@ParameterizedTest
|
||||
// Connection pool aggressively closes expired connections upon release, which interferes with this test's assertion.
|
||||
@MethodSource("poolsNoMaxDuration")
|
||||
@MethodSource("pools")
|
||||
public void testConcurrentRequestsAllBlockedOnServerWithExactConnectionPool(ConnectionPoolFactory factory) throws Exception
|
||||
{
|
||||
int count = 50;
|
||||
|
@ -449,9 +447,13 @@ public class ConnectionPoolTest
|
|||
assertTrue(latch.await(5, TimeUnit.SECONDS), "server requests " + barrier.getNumberWaiting() + "<" + count + " - client: " + client.dump());
|
||||
List<Destination> destinations = client.getDestinations();
|
||||
assertEquals(1, destinations.size());
|
||||
HttpDestination destination = (HttpDestination)destinations.get(0);
|
||||
AbstractConnectionPool connectionPool = (AbstractConnectionPool)destination.getConnectionPool();
|
||||
assertThat(connectionPool.getConnectionCount(), Matchers.greaterThanOrEqualTo(count));
|
||||
// The max duration connection pool aggressively closes expired connections upon release, which interferes with this assertion.
|
||||
if (DUPLEX_MAX_DURATION != factory)
|
||||
{
|
||||
HttpDestination destination = (HttpDestination)destinations.get(0);
|
||||
AbstractConnectionPool connectionPool = (AbstractConnectionPool)destination.getConnectionPool();
|
||||
assertThat(connectionPool.getConnectionCount(), Matchers.greaterThanOrEqualTo(count));
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -588,8 +590,17 @@ public class ConnectionPoolTest
|
|||
AbstractConnectionPool connectionPool = (AbstractConnectionPool)destination.getConnectionPool();
|
||||
|
||||
assertEquals(0, connectionPool.getActiveConnectionCount());
|
||||
assertEquals(1, connectionPool.getIdleConnectionCount());
|
||||
assertEquals(1, connectionPool.getConnectionCount());
|
||||
if (DUPLEX_MAX_DURATION == factory)
|
||||
{
|
||||
// The connections can expire upon release.
|
||||
assertThat(connectionPool.getIdleConnectionCount(), lessThanOrEqualTo(1));
|
||||
assertThat(connectionPool.getConnectionCount(), lessThanOrEqualTo(1));
|
||||
}
|
||||
else
|
||||
{
|
||||
assertThat(connectionPool.getIdleConnectionCount(), is(1));
|
||||
assertThat(connectionPool.getConnectionCount(), is(1));
|
||||
}
|
||||
|
||||
// Send second request, max usage count will be reached,
|
||||
// the only connection must be closed.
|
||||
|
@ -625,7 +636,10 @@ public class ConnectionPoolTest
|
|||
// Trigger the creation of a destination, that will create the connection pool.
|
||||
HttpDestination destination = client.resolveDestination(new Origin("http", "localhost", connector.getLocalPort()));
|
||||
AbstractConnectionPool connectionPool = (AbstractConnectionPool)destination.getConnectionPool();
|
||||
assertEquals(1, connectionPool.getConnectionCount());
|
||||
if (DUPLEX_MAX_DURATION == factory)
|
||||
assertThat(connectionPool.getConnectionCount(), lessThanOrEqualTo(1)); // The connections can expire upon release.
|
||||
else
|
||||
assertThat(connectionPool.getConnectionCount(), is(1));
|
||||
|
||||
// Wait for the pre-created connections to idle timeout.
|
||||
Thread.sleep(idleTimeout + idleTimeout / 2);
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -57,7 +57,6 @@ public class PropertiesConfigurationManager implements ConfigurationManager, Dum
|
|||
this(null);
|
||||
}
|
||||
|
||||
@ManagedAttribute("A file or URL of properties")
|
||||
public void setFile(String resource) throws IOException
|
||||
{
|
||||
_properties = resource;
|
||||
|
@ -65,6 +64,7 @@ public class PropertiesConfigurationManager implements ConfigurationManager, Dum
|
|||
loadProperties(_properties);
|
||||
}
|
||||
|
||||
@ManagedAttribute("A file or URL of properties")
|
||||
public String getFile()
|
||||
{
|
||||
return _properties;
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.fcgi</groupId>
|
||||
<artifactId>fcgi-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.fcgi</groupId>
|
||||
<artifactId>fcgi-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.gcloud</groupId>
|
||||
<artifactId>gcloud-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
@ -13,7 +13,7 @@
|
|||
<name>Jetty :: GCloud</name>
|
||||
|
||||
<properties>
|
||||
<gcloud.version>2.2.3</gcloud.version>
|
||||
<gcloud.version>2.2.4</gcloud.version>
|
||||
</properties>
|
||||
|
||||
<modules>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>jetty-home</artifactId>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>jetty-http-spi</artifactId>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.http2</groupId>
|
||||
<artifactId>http2-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.http2</groupId>
|
||||
<artifactId>http2-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.http2</groupId>
|
||||
<artifactId>http2-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.http2</groupId>
|
||||
<artifactId>http2-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.http2</groupId>
|
||||
<artifactId>http2-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.http3</groupId>
|
||||
<artifactId>http3-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.http3</groupId>
|
||||
<artifactId>http3-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.http3</groupId>
|
||||
<artifactId>http3-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.http3</groupId>
|
||||
<artifactId>http3-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.http3</groupId>
|
||||
<artifactId>http3-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.http3</groupId>
|
||||
<artifactId>http3-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>infinispan-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>infinispan-common</artifactId>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>infinispan-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>infinispan-embedded-query</artifactId>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>infinispan-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>infinispan-embedded</artifactId>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>infinispan-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>infinispan-remote-query</artifactId>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>infinispan-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>infinispan-remote</artifactId>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>jetty-io</artifactId>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>jetty-jmx</artifactId>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>jetty-jspc-maven-plugin</artifactId>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>jetty-keystore</artifactId>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>jetty-maven-plugin</artifactId>
|
||||
|
|
|
@ -19,13 +19,16 @@ import java.io.OutputStream;
|
|||
import java.net.ConnectException;
|
||||
import java.net.InetAddress;
|
||||
import java.net.Socket;
|
||||
import java.util.Optional;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.concurrent.TimeoutException;
|
||||
|
||||
import org.apache.maven.plugin.MojoExecutionException;
|
||||
import org.apache.maven.plugin.MojoFailureException;
|
||||
import org.apache.maven.plugins.annotations.Mojo;
|
||||
import org.apache.maven.plugins.annotations.Parameter;
|
||||
|
||||
|
||||
/**
|
||||
* This goal stops a running instance of jetty.
|
||||
*
|
||||
|
@ -72,38 +75,146 @@ public class JettyStopMojo extends AbstractWebAppMojo
|
|||
|
||||
String command = "forcestop";
|
||||
|
||||
try (Socket s = new Socket(InetAddress.getByName("127.0.0.1"), stopPort);)
|
||||
if (stopWait > 0)
|
||||
{
|
||||
OutputStream out = s.getOutputStream();
|
||||
out.write((stopKey + "\r\n" + command + "\r\n").getBytes());
|
||||
out.flush();
|
||||
|
||||
if (stopWait > 0)
|
||||
//try to get the pid of the forked jetty process
|
||||
Long pid = null;
|
||||
try
|
||||
{
|
||||
s.setSoTimeout(stopWait * 1000);
|
||||
s.getInputStream();
|
||||
String response = send(stopKey + "\r\n" + "pid" + "\r\n", stopWait);
|
||||
pid = Long.valueOf(response);
|
||||
}
|
||||
catch (NumberFormatException e)
|
||||
{
|
||||
getLog().info("Server returned bad pid");
|
||||
}
|
||||
catch (ConnectException e)
|
||||
{
|
||||
//jetty not running, no point continuing
|
||||
getLog().info("Jetty not running!");
|
||||
return;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
//jetty running, try to stop it regardless of error
|
||||
getLog().error(e);
|
||||
}
|
||||
|
||||
getLog().info("Waiting " + stopWait + " seconds for jetty to stop");
|
||||
LineNumberReader lin = new LineNumberReader(new InputStreamReader(s.getInputStream()));
|
||||
String response;
|
||||
boolean stopped = false;
|
||||
while (!stopped && ((response = lin.readLine()) != null))
|
||||
//now send the stop command and wait for confirmation - either an ack from jetty, or
|
||||
//that the process has stopped
|
||||
if (pid == null)
|
||||
{
|
||||
//no pid, so just wait until jetty reports itself stopped
|
||||
try
|
||||
{
|
||||
getLog().info("Waiting " + stopWait + " seconds for jetty to stop");
|
||||
String response = send(stopKey + "\r\n" + command + "\r\n", stopWait);
|
||||
|
||||
if ("Stopped".equals(response))
|
||||
{
|
||||
stopped = true;
|
||||
getLog().info("Server reports itself as stopped");
|
||||
}
|
||||
else
|
||||
getLog().info("Couldn't verify server as stopped, received " + response);
|
||||
}
|
||||
catch (ConnectException e)
|
||||
{
|
||||
getLog().info("Jetty not running!");
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
getLog().error(e);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//wait for pid to stop
|
||||
getLog().info("Waiting " + stopWait + " seconds for jetty " + pid + " to stop");
|
||||
Optional<ProcessHandle> optional = ProcessHandle.of(pid);
|
||||
optional.ifPresentOrElse(p ->
|
||||
{
|
||||
try
|
||||
{
|
||||
send(stopKey + "\r\n" + command + "\r\n", 0);
|
||||
CompletableFuture<ProcessHandle> future = p.onExit();
|
||||
if (p.isAlive())
|
||||
{
|
||||
p = future.get(stopWait, TimeUnit.SECONDS);
|
||||
}
|
||||
|
||||
if (p.isAlive())
|
||||
getLog().info("Couldn't verify server process stop");
|
||||
else
|
||||
getLog().info("Server process stopped");
|
||||
}
|
||||
catch (ConnectException e)
|
||||
{
|
||||
//jetty not listening on the given port, don't wait for the process
|
||||
getLog().info("Jetty not running!");
|
||||
}
|
||||
catch (TimeoutException e)
|
||||
{
|
||||
getLog().error("Timeout expired while waiting for server process to stop");
|
||||
}
|
||||
catch (Throwable e)
|
||||
{
|
||||
getLog().error(e);
|
||||
}
|
||||
}, () -> getLog().info("Process not running"));
|
||||
}
|
||||
}
|
||||
catch (ConnectException e)
|
||||
else
|
||||
{
|
||||
getLog().info("Jetty not running!");
|
||||
//send the stop command but don't wait to verify the stop
|
||||
getLog().info("Stopping jetty");
|
||||
try
|
||||
{
|
||||
send(stopKey + "\r\n" + command + "\r\n", 0);
|
||||
}
|
||||
catch (ConnectException e)
|
||||
{
|
||||
getLog().info("Jetty not running!");
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
getLog().error(e);
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
}
|
||||
|
||||
/**
|
||||
* Send a command to a jetty process, optionally waiting for a response.
|
||||
*
|
||||
* @param command the command to send
|
||||
* @param wait length of time in sec to wait for a response
|
||||
* @return the response, if any, to the command
|
||||
* @throws Exception
|
||||
*/
|
||||
private String send(String command, int wait)
|
||||
throws Exception
|
||||
{
|
||||
String response = null;
|
||||
try (Socket s = new Socket(InetAddress.getByName("127.0.0.1"), stopPort); OutputStream out = s.getOutputStream();)
|
||||
{
|
||||
getLog().error(e);
|
||||
out.write(command.getBytes());
|
||||
out.flush();
|
||||
|
||||
if (wait > 0)
|
||||
{
|
||||
//Wait for a response
|
||||
s.setSoTimeout(wait * 1000);
|
||||
|
||||
try (LineNumberReader lin = new LineNumberReader(new InputStreamReader(s.getInputStream()));)
|
||||
{
|
||||
response = lin.readLine();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//Wait only a small amount of time to ensure TCP has sent the message
|
||||
s.setSoTimeout(1000);
|
||||
s.getInputStream().read();
|
||||
}
|
||||
|
||||
return response;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,74 @@
|
|||
//
|
||||
// ========================================================================
|
||||
// Copyright (c) 1995-2022 Mort Bay Consulting Pty Ltd and others.
|
||||
//
|
||||
// This program and the accompanying materials are made available under the
|
||||
// terms of the Eclipse Public License v. 2.0 which is available at
|
||||
// https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
|
||||
// which is available at https://www.apache.org/licenses/LICENSE-2.0.
|
||||
//
|
||||
// SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
|
||||
// ========================================================================
|
||||
//
|
||||
|
||||
package org.eclipse.jetty.maven.plugin;
|
||||
|
||||
import java.net.ServerSocket;
|
||||
|
||||
import org.eclipse.jetty.toolchain.test.IO;
|
||||
|
||||
/**
|
||||
* MockShutdownMonitor
|
||||
* A helper class that grabs a ServerSocket, spawns a thread and then
|
||||
* passes the ServerSocket to the Runnable. This class has a main so
|
||||
* that it can be used for forking, to mimic the actions of the
|
||||
* org.eclipse.jetty.server.ShutdownMonitor.
|
||||
*/
|
||||
public class MockShutdownMonitor
|
||||
{
|
||||
String key;
|
||||
MockShutdownMonitorRunnable testerRunnable;
|
||||
ServerSocket serverSocket;
|
||||
|
||||
public MockShutdownMonitor(String key, MockShutdownMonitorRunnable testerRunnable)
|
||||
throws Exception
|
||||
{
|
||||
this.key = key;
|
||||
this.testerRunnable = testerRunnable;
|
||||
listen();
|
||||
}
|
||||
|
||||
private ServerSocket listen()
|
||||
throws Exception
|
||||
{
|
||||
serverSocket = new ServerSocket(0);
|
||||
try
|
||||
{
|
||||
serverSocket.setReuseAddress(true);
|
||||
return serverSocket;
|
||||
}
|
||||
catch (Throwable e)
|
||||
{
|
||||
IO.close(serverSocket);
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
public int getPort()
|
||||
{
|
||||
if (serverSocket == null)
|
||||
return 0;
|
||||
return serverSocket.getLocalPort();
|
||||
}
|
||||
|
||||
public void start()
|
||||
throws Exception
|
||||
{
|
||||
testerRunnable.setServerSocket(serverSocket);
|
||||
testerRunnable.setKey(key);
|
||||
Thread thread = new Thread(testerRunnable);
|
||||
thread.setDaemon(true);
|
||||
thread.setName("Tester Thread");
|
||||
thread.start();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,111 @@
|
|||
//
|
||||
// ========================================================================
|
||||
// Copyright (c) 1995-2022 Mort Bay Consulting Pty Ltd and others.
|
||||
//
|
||||
// This program and the accompanying materials are made available under the
|
||||
// terms of the Eclipse Public License v. 2.0 which is available at
|
||||
// https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
|
||||
// which is available at https://www.apache.org/licenses/LICENSE-2.0.
|
||||
//
|
||||
// SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
|
||||
// ========================================================================
|
||||
//
|
||||
|
||||
package org.eclipse.jetty.maven.plugin;
|
||||
|
||||
import java.io.InputStreamReader;
|
||||
import java.io.LineNumberReader;
|
||||
import java.io.OutputStream;
|
||||
import java.net.ServerSocket;
|
||||
import java.net.Socket;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
|
||||
import org.eclipse.jetty.toolchain.test.IO;
|
||||
|
||||
/**
|
||||
* MockShutdownMonitorRunnable
|
||||
*
|
||||
* Mimics the actions of the org.eclipse.jetty.server.ShutdownMonitor.ShutdownMonitorRunnable
|
||||
* to aid testing.
|
||||
*/
|
||||
public class MockShutdownMonitorRunnable implements Runnable
|
||||
{
|
||||
ServerSocket serverSocket;
|
||||
String key;
|
||||
String statusResponse = "OK";
|
||||
String pidResponse;
|
||||
String defaultResponse = "Stopped";
|
||||
boolean exit;
|
||||
|
||||
public void setExit(boolean exit)
|
||||
{
|
||||
this.exit = exit;
|
||||
}
|
||||
|
||||
public void setKey(String key)
|
||||
{
|
||||
this.key = key;
|
||||
}
|
||||
|
||||
public void setServerSocket(ServerSocket serverSocket)
|
||||
{
|
||||
this.serverSocket = serverSocket;
|
||||
}
|
||||
|
||||
public void setPidResponse(String pidResponse)
|
||||
{
|
||||
this.pidResponse = pidResponse;
|
||||
}
|
||||
|
||||
public void run()
|
||||
{
|
||||
try
|
||||
{
|
||||
while (true)
|
||||
{
|
||||
try (Socket socket = serverSocket.accept())
|
||||
{
|
||||
LineNumberReader reader = new LineNumberReader(new InputStreamReader(socket.getInputStream()));
|
||||
String receivedKey = reader.readLine();
|
||||
if (!key.equals(receivedKey))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
String cmd = reader.readLine();
|
||||
OutputStream out = socket.getOutputStream();
|
||||
|
||||
if ("status".equalsIgnoreCase(cmd))
|
||||
{
|
||||
out.write((statusResponse + "\r\n").getBytes(StandardCharsets.UTF_8));
|
||||
out.flush();
|
||||
}
|
||||
else if ("pid".equalsIgnoreCase(cmd))
|
||||
{
|
||||
out.write((pidResponse + "\r\n").getBytes(StandardCharsets.UTF_8));
|
||||
out.flush();
|
||||
}
|
||||
else
|
||||
{
|
||||
out.write((defaultResponse + "\r\n").getBytes(StandardCharsets.UTF_8));
|
||||
out.flush();
|
||||
if (exit)
|
||||
System.exit(0);
|
||||
}
|
||||
}
|
||||
catch (Throwable x)
|
||||
{
|
||||
x.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Throwable x)
|
||||
{
|
||||
x.printStackTrace();
|
||||
}
|
||||
finally
|
||||
{
|
||||
IO.close(serverSocket);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,279 @@
|
|||
//
|
||||
// ========================================================================
|
||||
// Copyright (c) 1995-2022 Mort Bay Consulting Pty Ltd and others.
|
||||
//
|
||||
// This program and the accompanying materials are made available under the
|
||||
// terms of the Eclipse Public License v. 2.0 which is available at
|
||||
// https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
|
||||
// which is available at https://www.apache.org/licenses/LICENSE-2.0.
|
||||
//
|
||||
// SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
|
||||
// ========================================================================
|
||||
//
|
||||
|
||||
package org.eclipse.jetty.maven.plugin;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileReader;
|
||||
import java.io.LineNumberReader;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.eclipse.jetty.server.ShutdownMonitor;
|
||||
import org.eclipse.jetty.toolchain.test.MavenTestingUtils;
|
||||
import org.hamcrest.Matchers;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static org.hamcrest.MatcherAssert.assertThat;
|
||||
import static org.junit.jupiter.api.Assertions.assertNotNull;
|
||||
|
||||
public class TestJettyStopMojo
|
||||
{
|
||||
/**
|
||||
* ShutdownMonitorMain
|
||||
* Kick off the ShutdownMonitor and wait for it to exit.
|
||||
*/
|
||||
public static final class ShutdownMonitorMain
|
||||
{
|
||||
public static void main(String[] args)
|
||||
{
|
||||
try
|
||||
{
|
||||
ShutdownMonitor monitor = ShutdownMonitor.getInstance();
|
||||
monitor.setPort(0);
|
||||
monitor.start();
|
||||
monitor.await();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static class TestLog implements org.apache.maven.plugin.logging.Log
|
||||
{
|
||||
List<String> sink = new ArrayList<>();
|
||||
|
||||
@Override
|
||||
public boolean isDebugEnabled()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void debug(CharSequence content)
|
||||
{
|
||||
sink.add(content.toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void debug(CharSequence content, Throwable error)
|
||||
{
|
||||
sink.add(content.toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void debug(Throwable error)
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isInfoEnabled()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void info(CharSequence content)
|
||||
{
|
||||
sink.add(content.toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void info(CharSequence content, Throwable error)
|
||||
{
|
||||
sink.add(content.toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void info(Throwable error)
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isWarnEnabled()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void warn(CharSequence content)
|
||||
{
|
||||
sink.add(content.toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void warn(CharSequence content, Throwable error)
|
||||
{
|
||||
sink.add(content.toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void warn(Throwable error)
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isErrorEnabled()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void error(CharSequence content)
|
||||
{
|
||||
sink.add(content.toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void error(CharSequence content, Throwable error)
|
||||
{
|
||||
sink.add(content.toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void error(Throwable error)
|
||||
{
|
||||
}
|
||||
|
||||
public void assertContains(String str)
|
||||
{
|
||||
assertThat(sink, Matchers.hasItem(str));
|
||||
}
|
||||
|
||||
public void dumpStdErr()
|
||||
{
|
||||
for (String s : sink)
|
||||
{
|
||||
System.err.println(s);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testStopNoWait() throws Exception
|
||||
{
|
||||
//send a stop message and don't wait for the reply or the process to shutdown
|
||||
String stopKey = "foo";
|
||||
MockShutdownMonitorRunnable runnable = new MockShutdownMonitorRunnable();
|
||||
runnable.setPidResponse("abcd");
|
||||
MockShutdownMonitor monitor = new MockShutdownMonitor(stopKey, runnable);
|
||||
monitor.start();
|
||||
|
||||
TestLog log = new TestLog();
|
||||
JettyStopMojo mojo = new JettyStopMojo();
|
||||
mojo.stopKey = stopKey;
|
||||
mojo.stopPort = monitor.getPort();
|
||||
mojo.setLog(log);
|
||||
|
||||
mojo.execute();
|
||||
|
||||
log.assertContains("Stopping jetty");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testStopWaitBadPid() throws Exception
|
||||
{
|
||||
//test that even if we receive a bad pid, we still send the stop command and wait to
|
||||
//receive acknowledgement, but we don't wait for the process to exit
|
||||
String stopKey = "foo";
|
||||
MockShutdownMonitorRunnable runnable = new MockShutdownMonitorRunnable();
|
||||
runnable.setPidResponse("abcd");
|
||||
MockShutdownMonitor monitor = new MockShutdownMonitor(stopKey, runnable);
|
||||
monitor.start();
|
||||
|
||||
TestLog log = new TestLog();
|
||||
JettyStopMojo mojo = new JettyStopMojo();
|
||||
mojo.stopWait = 5;
|
||||
mojo.stopKey = stopKey;
|
||||
mojo.stopPort = monitor.getPort();
|
||||
mojo.setLog(log);
|
||||
|
||||
mojo.execute();
|
||||
|
||||
log.assertContains("Server returned bad pid");
|
||||
log.assertContains("Server reports itself as stopped");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testStopWait() throws Exception
|
||||
{
|
||||
//test that we will communicate with a remote process and wait for it to exit
|
||||
String stopKey = "foo";
|
||||
List<String> cmd = new ArrayList<>();
|
||||
String java = "java";
|
||||
String[] javaexes = new String[]{"java", "java.exe"};
|
||||
File javaHomeDir = new File(System.getProperty("java.home"));
|
||||
Path javaHomePath = javaHomeDir.toPath();
|
||||
for (String javaexe : javaexes)
|
||||
{
|
||||
Path javaBinPath = javaHomePath.resolve(Paths.get("bin", javaexe));
|
||||
if (Files.exists(javaBinPath) && !Files.isDirectory(javaBinPath))
|
||||
java = javaBinPath.toFile().getAbsolutePath();
|
||||
}
|
||||
|
||||
cmd.add(java);
|
||||
cmd.add("-DSTOP.KEY=" + stopKey);
|
||||
cmd.add("-DDEBUG=true");
|
||||
cmd.add("-cp");
|
||||
cmd.add(System.getProperty("java.class.path"));
|
||||
cmd.add(ShutdownMonitorMain.class.getName());
|
||||
|
||||
ProcessBuilder command = new ProcessBuilder(cmd);
|
||||
File file = MavenTestingUtils.getTargetFile("tester.out");
|
||||
command.redirectOutput(file);
|
||||
command.redirectErrorStream(true);
|
||||
command.directory(MavenTestingUtils.getTargetDir());
|
||||
Process fork = command.start();
|
||||
|
||||
Thread.sleep(500);
|
||||
while (!file.exists() && file.length() == 0)
|
||||
{
|
||||
Thread.sleep(300);
|
||||
}
|
||||
|
||||
String tmp = "";
|
||||
String port = null;
|
||||
try (LineNumberReader reader = new LineNumberReader(new FileReader(file)))
|
||||
{
|
||||
while (port == null && tmp != null)
|
||||
{
|
||||
tmp = reader.readLine();
|
||||
if (tmp != null)
|
||||
{
|
||||
if (tmp.startsWith("STOP.PORT="))
|
||||
port = tmp.substring(10);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
assertNotNull(port);
|
||||
|
||||
TestLog log = new TestLog();
|
||||
JettyStopMojo mojo = new JettyStopMojo();
|
||||
mojo.stopWait = 5;
|
||||
mojo.stopKey = stopKey;
|
||||
mojo.stopPort = Integer.parseInt(port);
|
||||
mojo.setLog(log);
|
||||
|
||||
mojo.execute();
|
||||
|
||||
log.dumpStdErr();
|
||||
log.assertContains("Waiting " + mojo.stopWait + " seconds for jetty " + fork.pid() + " to stop");
|
||||
log.assertContains("Server process stopped");
|
||||
}
|
||||
}
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.memcached</groupId>
|
||||
<artifactId>memcached-parent</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>jetty-nosql</artifactId>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -24,6 +24,7 @@ import org.eclipse.jetty.client.HttpClient;
|
|||
import org.eclipse.jetty.client.http.HttpClientTransportOverHTTP;
|
||||
import org.eclipse.jetty.io.ClientConnector;
|
||||
import org.eclipse.jetty.util.ajax.JSON;
|
||||
import org.eclipse.jetty.util.annotation.Name;
|
||||
import org.eclipse.jetty.util.component.ContainerLifeCycle;
|
||||
import org.eclipse.jetty.util.ssl.SslContextFactory;
|
||||
import org.slf4j.Logger;
|
||||
|
@ -86,8 +87,13 @@ public class OpenIdConfiguration extends ContainerLifeCycle
|
|||
* @param authMethod Authentication method to use with the Token Endpoint.
|
||||
* @param httpClient The {@link HttpClient} instance to use.
|
||||
*/
|
||||
public OpenIdConfiguration(String issuer, String authorizationEndpoint, String tokenEndpoint,
|
||||
String clientId, String clientSecret, String authMethod, HttpClient httpClient)
|
||||
public OpenIdConfiguration(@Name("issuer") String issuer,
|
||||
@Name("authorizationEndpoint") String authorizationEndpoint,
|
||||
@Name("tokenEndpoint") String tokenEndpoint,
|
||||
@Name("clientId") String clientId,
|
||||
@Name("clientSecret") String clientSecret,
|
||||
@Name("authMethod") String authMethod,
|
||||
@Name("httpClient") HttpClient httpClient)
|
||||
{
|
||||
this.issuer = issuer;
|
||||
this.clientId = clientId;
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.osgi</groupId>
|
||||
<artifactId>jetty-osgi-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<!-- TODO: review if this module is still needed -->
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.osgi</groupId>
|
||||
<artifactId>jetty-osgi-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>jetty-osgi-boot-jsp</artifactId>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.osgi</groupId>
|
||||
<artifactId>jetty-osgi-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.osgi</groupId>
|
||||
<artifactId>jetty-osgi-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>jetty-osgi-boot</artifactId>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.osgi</groupId>
|
||||
<artifactId>jetty-osgi-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>jetty-httpservice</artifactId>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.osgi</groupId>
|
||||
<artifactId>jetty-osgi-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>test-jetty-osgi-context</artifactId>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.osgi</groupId>
|
||||
<artifactId>jetty-osgi-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.osgi</groupId>
|
||||
<artifactId>jetty-osgi-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>test-jetty-osgi-server</artifactId>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.osgi</groupId>
|
||||
<artifactId>jetty-osgi-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>test-jetty-osgi-webapp-resources</artifactId>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<parent>
|
||||
<groupId>org.eclipse.jetty.osgi</groupId>
|
||||
<artifactId>jetty-osgi-project</artifactId>
|
||||
<version>10.0.8-SNAPSHOT</version>
|
||||
<version>10.0.9-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue