From 4830fd15e94492b3ac4eb5ed772d7746a92d2a49 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Wed, 6 Jun 2018 16:42:54 -0500 Subject: [PATCH 001/931] Updating to version 9.2.25.v20180606 --- VERSION.txt | 8 +++++++- aggregates/jetty-all/pom.xml | 2 +- apache-jsp/pom.xml | 2 +- apache-jstl/pom.xml | 2 +- examples/async-rest/async-rest-jar/pom.xml | 2 +- examples/async-rest/async-rest-webapp/pom.xml | 2 +- examples/async-rest/pom.xml | 2 +- examples/embedded/pom.xml | 2 +- examples/pom.xml | 2 +- jetty-alpn/jetty-alpn-client/pom.xml | 2 +- jetty-alpn/jetty-alpn-server/pom.xml | 2 +- jetty-alpn/pom.xml | 2 +- jetty-annotations/pom.xml | 2 +- jetty-ant/pom.xml | 2 +- jetty-cdi/pom.xml | 2 +- jetty-client/pom.xml | 2 +- jetty-continuation/pom.xml | 2 +- jetty-deploy/pom.xml | 2 +- jetty-distribution/pom.xml | 2 +- jetty-fcgi/fcgi-client/pom.xml | 2 +- jetty-fcgi/fcgi-server/pom.xml | 2 +- jetty-fcgi/pom.xml | 2 +- jetty-http-spi/pom.xml | 2 +- jetty-http/pom.xml | 2 +- jetty-io/pom.xml | 2 +- jetty-jaas/pom.xml | 2 +- jetty-jaspi/pom.xml | 2 +- jetty-jmx/pom.xml | 2 +- jetty-jndi/pom.xml | 2 +- jetty-jsp/pom.xml | 2 +- jetty-jspc-maven-plugin/pom.xml | 2 +- jetty-maven-plugin/pom.xml | 2 +- jetty-monitor/pom.xml | 2 +- jetty-nosql/pom.xml | 2 +- jetty-osgi/jetty-osgi-alpn/pom.xml | 2 +- jetty-osgi/jetty-osgi-boot-jsp/pom.xml | 2 +- jetty-osgi/jetty-osgi-boot-warurl/pom.xml | 2 +- jetty-osgi/jetty-osgi-boot/pom.xml | 2 +- jetty-osgi/jetty-osgi-httpservice/pom.xml | 2 +- jetty-osgi/pom.xml | 2 +- jetty-osgi/test-jetty-osgi-context/pom.xml | 2 +- jetty-osgi/test-jetty-osgi-webapp/pom.xml | 2 +- jetty-osgi/test-jetty-osgi/pom.xml | 2 +- jetty-plus/pom.xml | 2 +- jetty-proxy/pom.xml | 2 +- jetty-quickstart/pom.xml | 2 +- jetty-rewrite/pom.xml | 2 +- jetty-runner/pom.xml | 2 +- jetty-security/pom.xml | 2 +- jetty-server/pom.xml | 2 +- jetty-servlet/pom.xml | 2 +- jetty-servlets/pom.xml | 2 +- jetty-spdy/pom.xml | 2 +- jetty-spdy/spdy-alpn-tests/pom.xml | 2 +- jetty-spdy/spdy-client/pom.xml | 2 +- jetty-spdy/spdy-core/pom.xml | 2 +- jetty-spdy/spdy-example-webapp/pom.xml | 2 +- jetty-spdy/spdy-http-client-transport/pom.xml | 2 +- jetty-spdy/spdy-http-common/pom.xml | 2 +- jetty-spdy/spdy-http-server/pom.xml | 2 +- jetty-spdy/spdy-server/pom.xml | 2 +- jetty-spring/pom.xml | 2 +- jetty-start/pom.xml | 2 +- jetty-util-ajax/pom.xml | 2 +- jetty-util/pom.xml | 2 +- jetty-webapp/pom.xml | 2 +- jetty-websocket/javax-websocket-client-impl/pom.xml | 2 +- jetty-websocket/javax-websocket-server-impl/pom.xml | 2 +- jetty-websocket/pom.xml | 2 +- jetty-websocket/websocket-api/pom.xml | 2 +- jetty-websocket/websocket-client/pom.xml | 2 +- jetty-websocket/websocket-common/pom.xml | 2 +- jetty-websocket/websocket-server/pom.xml | 2 +- jetty-websocket/websocket-servlet/pom.xml | 2 +- jetty-xml/pom.xml | 2 +- pom.xml | 2 +- tests/pom.xml | 2 +- tests/test-continuation/pom.xml | 2 +- tests/test-integration/pom.xml | 2 +- tests/test-jmx/jmx-webapp-it/pom.xml | 2 +- tests/test-jmx/jmx-webapp/pom.xml | 2 +- tests/test-jmx/pom.xml | 2 +- tests/test-loginservice/pom.xml | 2 +- tests/test-quickstart/pom.xml | 2 +- tests/test-sessions/pom.xml | 2 +- tests/test-sessions/test-hash-sessions/pom.xml | 2 +- tests/test-sessions/test-jdbc-sessions/pom.xml | 2 +- tests/test-sessions/test-mongodb-sessions/pom.xml | 2 +- tests/test-sessions/test-sessions-common/pom.xml | 2 +- tests/test-webapps/pom.xml | 2 +- tests/test-webapps/test-jaas-webapp/pom.xml | 2 +- tests/test-webapps/test-jetty-webapp/pom.xml | 2 +- tests/test-webapps/test-jndi-webapp/pom.xml | 2 +- tests/test-webapps/test-mock-resources/pom.xml | 2 +- tests/test-webapps/test-proxy-webapp/pom.xml | 2 +- tests/test-webapps/test-servlet-spec/pom.xml | 2 +- .../test-servlet-spec/test-container-initializer/pom.xml | 2 +- .../test-servlet-spec/test-spec-webapp/pom.xml | 2 +- .../test-servlet-spec/test-web-fragment/pom.xml | 2 +- tests/test-webapps/test-webapp-rfc2616/pom.xml | 2 +- 100 files changed, 106 insertions(+), 100 deletions(-) diff --git a/VERSION.txt b/VERSION.txt index 5f76c236137..1013951088a 100644 --- a/VERSION.txt +++ b/VERSION.txt @@ -1,4 +1,10 @@ -jetty-9.2.25-SNAPSHOT +jetty-9.2.25.v20180606 - 06 June 2018 + + 2114 Fix NPE in JettyHttpServerProvider + + 2135 Android 8.1 needs direct buffers for SSL/TLS to work + + 2529 HttpParser cleanup + + 2603 WebSocket ByteAccumulator initialized with wrong maximum + + 2604 WebSocket ByteAccumulator should report sizes in + MessageTooLargeException jetty-9.2.24.v20180105 - 05 January 2018 + 2065 Backport #347 to Jetty 9.2.x diff --git a/aggregates/jetty-all/pom.xml b/aggregates/jetty-all/pom.xml index 5c3678a795d..af2e0e56167 100644 --- a/aggregates/jetty-all/pom.xml +++ b/aggregates/jetty-all/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 ../../pom.xml 4.0.0 diff --git a/apache-jsp/pom.xml b/apache-jsp/pom.xml index c88650c52ac..10a1fb444d9 100644 --- a/apache-jsp/pom.xml +++ b/apache-jsp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 apache-jsp diff --git a/apache-jstl/pom.xml b/apache-jstl/pom.xml index d5c618e371e..75b076e74f2 100644 --- a/apache-jstl/pom.xml +++ b/apache-jstl/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 apache-jstl diff --git a/examples/async-rest/async-rest-jar/pom.xml b/examples/async-rest/async-rest-jar/pom.xml index 15d7ffc9415..54d070cb166 100644 --- a/examples/async-rest/async-rest-jar/pom.xml +++ b/examples/async-rest/async-rest-jar/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty example-async-rest - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 org.eclipse.jetty.example-async-rest diff --git a/examples/async-rest/async-rest-webapp/pom.xml b/examples/async-rest/async-rest-webapp/pom.xml index b0c6f033ed7..ba63eaed5ae 100644 --- a/examples/async-rest/async-rest-webapp/pom.xml +++ b/examples/async-rest/async-rest-webapp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty example-async-rest - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 org.eclipse.jetty.example-async-rest diff --git a/examples/async-rest/pom.xml b/examples/async-rest/pom.xml index 634bf3cf1da..5d460853633 100644 --- a/examples/async-rest/pom.xml +++ b/examples/async-rest/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.examples examples-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 ../pom.xml 4.0.0 diff --git a/examples/embedded/pom.xml b/examples/embedded/pom.xml index a22184fdef7..4fe89817a1d 100644 --- a/examples/embedded/pom.xml +++ b/examples/embedded/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.examples examples-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 ../pom.xml 4.0.0 diff --git a/examples/pom.xml b/examples/pom.xml index 74d8b501eaf..100ec14f587 100644 --- a/examples/pom.xml +++ b/examples/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 ../pom.xml org.eclipse.jetty.examples diff --git a/jetty-alpn/jetty-alpn-client/pom.xml b/jetty-alpn/jetty-alpn-client/pom.xml index 3963e78e211..cd02dbd744a 100644 --- a/jetty-alpn/jetty-alpn-client/pom.xml +++ b/jetty-alpn/jetty-alpn-client/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-alpn-client diff --git a/jetty-alpn/jetty-alpn-server/pom.xml b/jetty-alpn/jetty-alpn-server/pom.xml index 65b067b0d89..75d03dad6eb 100644 --- a/jetty-alpn/jetty-alpn-server/pom.xml +++ b/jetty-alpn/jetty-alpn-server/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-alpn-server diff --git a/jetty-alpn/pom.xml b/jetty-alpn/pom.xml index f1c144f91f4..29742cc06a1 100644 --- a/jetty-alpn/pom.xml +++ b/jetty-alpn/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-alpn-parent diff --git a/jetty-annotations/pom.xml b/jetty-annotations/pom.xml index 4fcad3f1955..e64862d7218 100644 --- a/jetty-annotations/pom.xml +++ b/jetty-annotations/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-annotations diff --git a/jetty-ant/pom.xml b/jetty-ant/pom.xml index 724ce21d9f8..eeb25f75f98 100644 --- a/jetty-ant/pom.xml +++ b/jetty-ant/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-ant diff --git a/jetty-cdi/pom.xml b/jetty-cdi/pom.xml index 99a19e7784a..9afb5ece660 100644 --- a/jetty-cdi/pom.xml +++ b/jetty-cdi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-cdi diff --git a/jetty-client/pom.xml b/jetty-client/pom.xml index f48ec8b897b..90b50095a94 100644 --- a/jetty-client/pom.xml +++ b/jetty-client/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 diff --git a/jetty-continuation/pom.xml b/jetty-continuation/pom.xml index 6eca3ac1a40..dc298b21676 100644 --- a/jetty-continuation/pom.xml +++ b/jetty-continuation/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-continuation diff --git a/jetty-deploy/pom.xml b/jetty-deploy/pom.xml index c9f9dd2c742..d024f27e4d0 100644 --- a/jetty-deploy/pom.xml +++ b/jetty-deploy/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-deploy diff --git a/jetty-distribution/pom.xml b/jetty-distribution/pom.xml index a5c8e58b074..ab0a86109d1 100644 --- a/jetty-distribution/pom.xml +++ b/jetty-distribution/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 jetty-distribution Jetty :: Distribution Assemblies diff --git a/jetty-fcgi/fcgi-client/pom.xml b/jetty-fcgi/fcgi-client/pom.xml index 0327bcb5c65..4c9df6c7631 100644 --- a/jetty-fcgi/fcgi-client/pom.xml +++ b/jetty-fcgi/fcgi-client/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.fcgi fcgi-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 diff --git a/jetty-fcgi/fcgi-server/pom.xml b/jetty-fcgi/fcgi-server/pom.xml index c6123a1720a..5e7cd432fa1 100644 --- a/jetty-fcgi/fcgi-server/pom.xml +++ b/jetty-fcgi/fcgi-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.fcgi fcgi-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 diff --git a/jetty-fcgi/pom.xml b/jetty-fcgi/pom.xml index b9d6cef2a9f..b998572abf7 100644 --- a/jetty-fcgi/pom.xml +++ b/jetty-fcgi/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 diff --git a/jetty-http-spi/pom.xml b/jetty-http-spi/pom.xml index f472d74c509..ac0e92bc7f5 100644 --- a/jetty-http-spi/pom.xml +++ b/jetty-http-spi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-http-spi diff --git a/jetty-http/pom.xml b/jetty-http/pom.xml index 80c95701855..d1752dd243e 100644 --- a/jetty-http/pom.xml +++ b/jetty-http/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-http diff --git a/jetty-io/pom.xml b/jetty-io/pom.xml index 454f77c6726..9ac1f8d0b2d 100644 --- a/jetty-io/pom.xml +++ b/jetty-io/pom.xml @@ -2,7 +2,7 @@ jetty-project org.eclipse.jetty - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-io diff --git a/jetty-jaas/pom.xml b/jetty-jaas/pom.xml index b1d9175233a..0e7ee80bc38 100644 --- a/jetty-jaas/pom.xml +++ b/jetty-jaas/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-jaas diff --git a/jetty-jaspi/pom.xml b/jetty-jaspi/pom.xml index 4b6c832444b..14ec5883538 100644 --- a/jetty-jaspi/pom.xml +++ b/jetty-jaspi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-jaspi diff --git a/jetty-jmx/pom.xml b/jetty-jmx/pom.xml index 5063254a3b0..b6dea02a252 100644 --- a/jetty-jmx/pom.xml +++ b/jetty-jmx/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-jmx diff --git a/jetty-jndi/pom.xml b/jetty-jndi/pom.xml index 98b4f8203d0..121bf1dcbfd 100644 --- a/jetty-jndi/pom.xml +++ b/jetty-jndi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-jndi diff --git a/jetty-jsp/pom.xml b/jetty-jsp/pom.xml index 8501f075d96..f95902adfb0 100644 --- a/jetty-jsp/pom.xml +++ b/jetty-jsp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-jsp diff --git a/jetty-jspc-maven-plugin/pom.xml b/jetty-jspc-maven-plugin/pom.xml index a612da5f032..6b02000b133 100644 --- a/jetty-jspc-maven-plugin/pom.xml +++ b/jetty-jspc-maven-plugin/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-jspc-maven-plugin diff --git a/jetty-maven-plugin/pom.xml b/jetty-maven-plugin/pom.xml index e0f4d51545b..a58b681390f 100644 --- a/jetty-maven-plugin/pom.xml +++ b/jetty-maven-plugin/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-maven-plugin diff --git a/jetty-monitor/pom.xml b/jetty-monitor/pom.xml index 35abd3a11d1..2ef66081d3a 100644 --- a/jetty-monitor/pom.xml +++ b/jetty-monitor/pom.xml @@ -19,7 +19,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-monitor diff --git a/jetty-nosql/pom.xml b/jetty-nosql/pom.xml index ae10b41e544..3fc27823a4f 100644 --- a/jetty-nosql/pom.xml +++ b/jetty-nosql/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-nosql diff --git a/jetty-osgi/jetty-osgi-alpn/pom.xml b/jetty-osgi/jetty-osgi-alpn/pom.xml index 0d6c6554412..6196dd2c036 100644 --- a/jetty-osgi/jetty-osgi-alpn/pom.xml +++ b/jetty-osgi/jetty-osgi-alpn/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-osgi-alpn diff --git a/jetty-osgi/jetty-osgi-boot-jsp/pom.xml b/jetty-osgi/jetty-osgi-boot-jsp/pom.xml index cc7de7f6c3c..f520362fd75 100644 --- a/jetty-osgi/jetty-osgi-boot-jsp/pom.xml +++ b/jetty-osgi/jetty-osgi-boot-jsp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-osgi-boot-jsp diff --git a/jetty-osgi/jetty-osgi-boot-warurl/pom.xml b/jetty-osgi/jetty-osgi-boot-warurl/pom.xml index 795ebfc4617..4ee73967df7 100644 --- a/jetty-osgi/jetty-osgi-boot-warurl/pom.xml +++ b/jetty-osgi/jetty-osgi-boot-warurl/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 ../pom.xml 4.0.0 diff --git a/jetty-osgi/jetty-osgi-boot/pom.xml b/jetty-osgi/jetty-osgi-boot/pom.xml index 7e3f6d13284..2ad55d1ba40 100644 --- a/jetty-osgi/jetty-osgi-boot/pom.xml +++ b/jetty-osgi/jetty-osgi-boot/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-osgi-boot diff --git a/jetty-osgi/jetty-osgi-httpservice/pom.xml b/jetty-osgi/jetty-osgi-httpservice/pom.xml index 84d5b836332..46c7c703127 100644 --- a/jetty-osgi/jetty-osgi-httpservice/pom.xml +++ b/jetty-osgi/jetty-osgi-httpservice/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-httpservice diff --git a/jetty-osgi/pom.xml b/jetty-osgi/pom.xml index cfd9c18c6ac..d8107f1ab6f 100644 --- a/jetty-osgi/pom.xml +++ b/jetty-osgi/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 org.eclipse.jetty.osgi jetty-osgi-project diff --git a/jetty-osgi/test-jetty-osgi-context/pom.xml b/jetty-osgi/test-jetty-osgi-context/pom.xml index 432486a2ff5..506669f3b03 100644 --- a/jetty-osgi/test-jetty-osgi-context/pom.xml +++ b/jetty-osgi/test-jetty-osgi-context/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 test-jetty-osgi-context diff --git a/jetty-osgi/test-jetty-osgi-webapp/pom.xml b/jetty-osgi/test-jetty-osgi-webapp/pom.xml index dcee1aab6b7..3794a0c208c 100644 --- a/jetty-osgi/test-jetty-osgi-webapp/pom.xml +++ b/jetty-osgi/test-jetty-osgi-webapp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 ../pom.xml 4.0.0 diff --git a/jetty-osgi/test-jetty-osgi/pom.xml b/jetty-osgi/test-jetty-osgi/pom.xml index 645fcc008ea..4d499bfa859 100644 --- a/jetty-osgi/test-jetty-osgi/pom.xml +++ b/jetty-osgi/test-jetty-osgi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 ../pom.xml 4.0.0 diff --git a/jetty-plus/pom.xml b/jetty-plus/pom.xml index 7296b0bf0f0..517c845c499 100644 --- a/jetty-plus/pom.xml +++ b/jetty-plus/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-plus diff --git a/jetty-proxy/pom.xml b/jetty-proxy/pom.xml index 1b808ba9ce1..c9d2aec5414 100644 --- a/jetty-proxy/pom.xml +++ b/jetty-proxy/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-proxy diff --git a/jetty-quickstart/pom.xml b/jetty-quickstart/pom.xml index 6f4ea12e2e3..b13eaae3158 100644 --- a/jetty-quickstart/pom.xml +++ b/jetty-quickstart/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 org.eclipse.jetty diff --git a/jetty-rewrite/pom.xml b/jetty-rewrite/pom.xml index 9a528b8417a..14d62e98f35 100644 --- a/jetty-rewrite/pom.xml +++ b/jetty-rewrite/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-rewrite diff --git a/jetty-runner/pom.xml b/jetty-runner/pom.xml index 5eb2b8c5a8b..44d71816c53 100644 --- a/jetty-runner/pom.xml +++ b/jetty-runner/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-runner diff --git a/jetty-security/pom.xml b/jetty-security/pom.xml index aecf4965537..74a7461abaa 100644 --- a/jetty-security/pom.xml +++ b/jetty-security/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-security diff --git a/jetty-server/pom.xml b/jetty-server/pom.xml index f1e71d497a5..57b542f9e21 100644 --- a/jetty-server/pom.xml +++ b/jetty-server/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-server diff --git a/jetty-servlet/pom.xml b/jetty-servlet/pom.xml index c0946468d4e..b3009326a63 100644 --- a/jetty-servlet/pom.xml +++ b/jetty-servlet/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-servlet diff --git a/jetty-servlets/pom.xml b/jetty-servlets/pom.xml index c2d2f212970..fb723984a49 100644 --- a/jetty-servlets/pom.xml +++ b/jetty-servlets/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-servlets diff --git a/jetty-spdy/pom.xml b/jetty-spdy/pom.xml index fd9504c9d92..b4abc54ce93 100644 --- a/jetty-spdy/pom.xml +++ b/jetty-spdy/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 diff --git a/jetty-spdy/spdy-alpn-tests/pom.xml b/jetty-spdy/spdy-alpn-tests/pom.xml index 6d63403d755..081d694f982 100644 --- a/jetty-spdy/spdy-alpn-tests/pom.xml +++ b/jetty-spdy/spdy-alpn-tests/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 diff --git a/jetty-spdy/spdy-client/pom.xml b/jetty-spdy/spdy-client/pom.xml index cd0170a8ee4..606b83877c9 100644 --- a/jetty-spdy/spdy-client/pom.xml +++ b/jetty-spdy/spdy-client/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 diff --git a/jetty-spdy/spdy-core/pom.xml b/jetty-spdy/spdy-core/pom.xml index 24b7a99b807..e7577e82723 100644 --- a/jetty-spdy/spdy-core/pom.xml +++ b/jetty-spdy/spdy-core/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 diff --git a/jetty-spdy/spdy-example-webapp/pom.xml b/jetty-spdy/spdy-example-webapp/pom.xml index 7844f4fad99..dd09968c5c8 100644 --- a/jetty-spdy/spdy-example-webapp/pom.xml +++ b/jetty-spdy/spdy-example-webapp/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 spdy-example-webapp diff --git a/jetty-spdy/spdy-http-client-transport/pom.xml b/jetty-spdy/spdy-http-client-transport/pom.xml index 63d92c1bd32..4375088443f 100644 --- a/jetty-spdy/spdy-http-client-transport/pom.xml +++ b/jetty-spdy/spdy-http-client-transport/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 diff --git a/jetty-spdy/spdy-http-common/pom.xml b/jetty-spdy/spdy-http-common/pom.xml index a1f8856faf1..2b829884b29 100644 --- a/jetty-spdy/spdy-http-common/pom.xml +++ b/jetty-spdy/spdy-http-common/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 diff --git a/jetty-spdy/spdy-http-server/pom.xml b/jetty-spdy/spdy-http-server/pom.xml index 00e72e16a7b..bad678c2285 100644 --- a/jetty-spdy/spdy-http-server/pom.xml +++ b/jetty-spdy/spdy-http-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 spdy-http-server diff --git a/jetty-spdy/spdy-server/pom.xml b/jetty-spdy/spdy-server/pom.xml index 4fdf66a24c2..42498b73e2d 100644 --- a/jetty-spdy/spdy-server/pom.xml +++ b/jetty-spdy/spdy-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 diff --git a/jetty-spring/pom.xml b/jetty-spring/pom.xml index e313e44271e..86c584c02a6 100644 --- a/jetty-spring/pom.xml +++ b/jetty-spring/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-spring diff --git a/jetty-start/pom.xml b/jetty-start/pom.xml index bf0a681a33d..b0fed5e2bbb 100644 --- a/jetty-start/pom.xml +++ b/jetty-start/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-start diff --git a/jetty-util-ajax/pom.xml b/jetty-util-ajax/pom.xml index 4ffb82a374c..ad96aa04cd8 100644 --- a/jetty-util-ajax/pom.xml +++ b/jetty-util-ajax/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-util-ajax diff --git a/jetty-util/pom.xml b/jetty-util/pom.xml index 0832030661b..3a089eba951 100644 --- a/jetty-util/pom.xml +++ b/jetty-util/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-util diff --git a/jetty-webapp/pom.xml b/jetty-webapp/pom.xml index ab5a73ae9fb..394f1fe26a2 100644 --- a/jetty-webapp/pom.xml +++ b/jetty-webapp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-webapp diff --git a/jetty-websocket/javax-websocket-client-impl/pom.xml b/jetty-websocket/javax-websocket-client-impl/pom.xml index b90280b9c5b..07bfe454af4 100644 --- a/jetty-websocket/javax-websocket-client-impl/pom.xml +++ b/jetty-websocket/javax-websocket-client-impl/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 diff --git a/jetty-websocket/javax-websocket-server-impl/pom.xml b/jetty-websocket/javax-websocket-server-impl/pom.xml index 6e1bbb5a26f..fd931fe45c6 100644 --- a/jetty-websocket/javax-websocket-server-impl/pom.xml +++ b/jetty-websocket/javax-websocket-server-impl/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 diff --git a/jetty-websocket/pom.xml b/jetty-websocket/pom.xml index a247c5b2968..1fac39b3463 100644 --- a/jetty-websocket/pom.xml +++ b/jetty-websocket/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 diff --git a/jetty-websocket/websocket-api/pom.xml b/jetty-websocket/websocket-api/pom.xml index 2b48e948ff1..a65aa3e7ab0 100644 --- a/jetty-websocket/websocket-api/pom.xml +++ b/jetty-websocket/websocket-api/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 diff --git a/jetty-websocket/websocket-client/pom.xml b/jetty-websocket/websocket-client/pom.xml index 8bd09b409b8..40c904a75f7 100644 --- a/jetty-websocket/websocket-client/pom.xml +++ b/jetty-websocket/websocket-client/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 diff --git a/jetty-websocket/websocket-common/pom.xml b/jetty-websocket/websocket-common/pom.xml index f03a66accd2..7c7cada0030 100644 --- a/jetty-websocket/websocket-common/pom.xml +++ b/jetty-websocket/websocket-common/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 diff --git a/jetty-websocket/websocket-server/pom.xml b/jetty-websocket/websocket-server/pom.xml index 951c676b9db..b1310dab328 100644 --- a/jetty-websocket/websocket-server/pom.xml +++ b/jetty-websocket/websocket-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 diff --git a/jetty-websocket/websocket-servlet/pom.xml b/jetty-websocket/websocket-servlet/pom.xml index e48aee37e30..e44289a2a21 100644 --- a/jetty-websocket/websocket-servlet/pom.xml +++ b/jetty-websocket/websocket-servlet/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 diff --git a/jetty-xml/pom.xml b/jetty-xml/pom.xml index eca99ca9690..a66997eddff 100644 --- a/jetty-xml/pom.xml +++ b/jetty-xml/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jetty-xml diff --git a/pom.xml b/pom.xml index 0496e8214eb..53115a6ad08 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ 23 jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 Jetty :: Project http://www.eclipse.org/jetty pom diff --git a/tests/pom.xml b/tests/pom.xml index e491d3edcff..4aeaa341ab3 100644 --- a/tests/pom.xml +++ b/tests/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty jetty-project - 9.2.25-SNAPSHOT + 9.2.25.v20180606 ../pom.xml org.eclipse.jetty.tests diff --git a/tests/test-continuation/pom.xml b/tests/test-continuation/pom.xml index 5a293942953..421fc6b97dd 100644 --- a/tests/test-continuation/pom.xml +++ b/tests/test-continuation/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 ../pom.xml 4.0.0 diff --git a/tests/test-integration/pom.xml b/tests/test-integration/pom.xml index c7b2ea7483b..8cc1d8b4790 100644 --- a/tests/test-integration/pom.xml +++ b/tests/test-integration/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 test-integration diff --git a/tests/test-jmx/jmx-webapp-it/pom.xml b/tests/test-jmx/jmx-webapp-it/pom.xml index 594f1faeb3c..daee1a18246 100644 --- a/tests/test-jmx/jmx-webapp-it/pom.xml +++ b/tests/test-jmx/jmx-webapp-it/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests test-jmx-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 jmx-webapp-it diff --git a/tests/test-jmx/jmx-webapp/pom.xml b/tests/test-jmx/jmx-webapp/pom.xml index 2eb5b01fa6a..a19c438ccfe 100644 --- a/tests/test-jmx/jmx-webapp/pom.xml +++ b/tests/test-jmx/jmx-webapp/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-jmx-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 jmx-webapp war diff --git a/tests/test-jmx/pom.xml b/tests/test-jmx/pom.xml index 985a84e1624..e854299ace3 100644 --- a/tests/test-jmx/pom.xml +++ b/tests/test-jmx/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 4.0.0 test-jmx-parent diff --git a/tests/test-loginservice/pom.xml b/tests/test-loginservice/pom.xml index 943186912b4..28b9e739ad4 100644 --- a/tests/test-loginservice/pom.xml +++ b/tests/test-loginservice/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 test-loginservice Jetty Tests :: Login Service diff --git a/tests/test-quickstart/pom.xml b/tests/test-quickstart/pom.xml index db1a7a2a0a4..7c3a63444ed 100644 --- a/tests/test-quickstart/pom.xml +++ b/tests/test-quickstart/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 ../pom.xml 4.0.0 diff --git a/tests/test-sessions/pom.xml b/tests/test-sessions/pom.xml index 7a70a0c8067..4e2b488cb66 100644 --- a/tests/test-sessions/pom.xml +++ b/tests/test-sessions/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 test-sessions-parent Jetty Tests :: Sessions :: Parent diff --git a/tests/test-sessions/test-hash-sessions/pom.xml b/tests/test-sessions/test-hash-sessions/pom.xml index d56855097fa..874c40c5327 100644 --- a/tests/test-sessions/test-hash-sessions/pom.xml +++ b/tests/test-sessions/test-hash-sessions/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 test-hash-sessions Jetty Tests :: Sessions :: Hash diff --git a/tests/test-sessions/test-jdbc-sessions/pom.xml b/tests/test-sessions/test-jdbc-sessions/pom.xml index 3002d8395c9..3c5f30863a9 100644 --- a/tests/test-sessions/test-jdbc-sessions/pom.xml +++ b/tests/test-sessions/test-jdbc-sessions/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 test-jdbc-sessions Jetty Tests :: Sessions :: JDBC diff --git a/tests/test-sessions/test-mongodb-sessions/pom.xml b/tests/test-sessions/test-mongodb-sessions/pom.xml index 974d72dbf8a..df65ff85f9e 100644 --- a/tests/test-sessions/test-mongodb-sessions/pom.xml +++ b/tests/test-sessions/test-mongodb-sessions/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 test-mongodb-sessions Jetty Tests :: Sessions :: Mongo diff --git a/tests/test-sessions/test-sessions-common/pom.xml b/tests/test-sessions/test-sessions-common/pom.xml index a062c51d023..bdfbf77dfdd 100644 --- a/tests/test-sessions/test-sessions-common/pom.xml +++ b/tests/test-sessions/test-sessions-common/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 test-sessions-common Jetty Tests :: Sessions :: Common diff --git a/tests/test-webapps/pom.xml b/tests/test-webapps/pom.xml index b51e8c593e6..b0e0f982cc5 100644 --- a/tests/test-webapps/pom.xml +++ b/tests/test-webapps/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 ../pom.xml test-webapps-parent diff --git a/tests/test-webapps/test-jaas-webapp/pom.xml b/tests/test-webapps/test-jaas-webapp/pom.xml index 44c8ce8fde6..2580405f1b2 100644 --- a/tests/test-webapps/test-jaas-webapp/pom.xml +++ b/tests/test-webapps/test-jaas-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 test-jaas-webapp Jetty Tests :: WebApp :: JAAS diff --git a/tests/test-webapps/test-jetty-webapp/pom.xml b/tests/test-webapps/test-jetty-webapp/pom.xml index 1663ae3429e..f999633862f 100644 --- a/tests/test-webapps/test-jetty-webapp/pom.xml +++ b/tests/test-webapps/test-jetty-webapp/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 ../pom.xml 4.0.0 diff --git a/tests/test-webapps/test-jndi-webapp/pom.xml b/tests/test-webapps/test-jndi-webapp/pom.xml index f692707834b..c02f2ae5ac3 100644 --- a/tests/test-webapps/test-jndi-webapp/pom.xml +++ b/tests/test-webapps/test-jndi-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 test-jndi-webapp Jetty Tests :: WebApp :: JNDI diff --git a/tests/test-webapps/test-mock-resources/pom.xml b/tests/test-webapps/test-mock-resources/pom.xml index 86f8c79a872..3af0e8d2a29 100644 --- a/tests/test-webapps/test-mock-resources/pom.xml +++ b/tests/test-webapps/test-mock-resources/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 Jetty Tests :: WebApp :: Mock Resources test-mock-resources diff --git a/tests/test-webapps/test-proxy-webapp/pom.xml b/tests/test-webapps/test-proxy-webapp/pom.xml index 0656ea27759..13f7c8b65ac 100644 --- a/tests/test-webapps/test-proxy-webapp/pom.xml +++ b/tests/test-webapps/test-proxy-webapp/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 ../pom.xml 4.0.0 diff --git a/tests/test-webapps/test-servlet-spec/pom.xml b/tests/test-webapps/test-servlet-spec/pom.xml index 799f8eb17a9..a24df1a6e95 100644 --- a/tests/test-webapps/test-servlet-spec/pom.xml +++ b/tests/test-webapps/test-servlet-spec/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 test-servlet-spec-parent Jetty Tests :: Spec Test WebApp :: Parent diff --git a/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml b/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml index 788971ce193..70c78f6b9ec 100644 --- a/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml +++ b/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-servlet-spec-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 test-container-initializer jar diff --git a/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml b/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml index c7c51d7c9e2..e2ba8810101 100644 --- a/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml +++ b/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-servlet-spec-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 Jetty Tests :: Webapps :: Spec Webapp test-spec-webapp diff --git a/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml b/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml index f089cd10ab7..9ecd50971e0 100644 --- a/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml +++ b/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-servlet-spec-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 Jetty Tests :: WebApp :: Servlet Spec :: Fragment Jar org.eclipse.jetty.tests diff --git a/tests/test-webapps/test-webapp-rfc2616/pom.xml b/tests/test-webapps/test-webapp-rfc2616/pom.xml index 7d61146c82b..a39137eef2b 100644 --- a/tests/test-webapps/test-webapp-rfc2616/pom.xml +++ b/tests/test-webapps/test-webapp-rfc2616/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.25-SNAPSHOT + 9.2.25.v20180606 test-webapp-rfc2616 Jetty Tests :: WebApp :: RFC2616 From 0e6c91b6043a033c65d8d0c33d66c87f6bece60a Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Wed, 6 Jun 2018 18:54:58 -0500 Subject: [PATCH 002/931] Updating to version 9.2.26-SNAPSHOT --- VERSION.txt | 2 ++ aggregates/jetty-all/pom.xml | 2 +- apache-jsp/pom.xml | 2 +- apache-jstl/pom.xml | 2 +- examples/async-rest/async-rest-jar/pom.xml | 2 +- examples/async-rest/async-rest-webapp/pom.xml | 2 +- examples/async-rest/pom.xml | 2 +- examples/embedded/pom.xml | 2 +- examples/pom.xml | 2 +- jetty-alpn/jetty-alpn-client/pom.xml | 2 +- jetty-alpn/jetty-alpn-server/pom.xml | 2 +- jetty-alpn/pom.xml | 2 +- jetty-annotations/pom.xml | 2 +- jetty-ant/pom.xml | 2 +- jetty-cdi/pom.xml | 2 +- jetty-client/pom.xml | 2 +- jetty-continuation/pom.xml | 2 +- jetty-deploy/pom.xml | 2 +- jetty-distribution/pom.xml | 2 +- jetty-fcgi/fcgi-client/pom.xml | 2 +- jetty-fcgi/fcgi-server/pom.xml | 2 +- jetty-fcgi/pom.xml | 2 +- jetty-http-spi/pom.xml | 2 +- jetty-http/pom.xml | 2 +- jetty-io/pom.xml | 2 +- jetty-jaas/pom.xml | 2 +- jetty-jaspi/pom.xml | 2 +- jetty-jmx/pom.xml | 2 +- jetty-jndi/pom.xml | 2 +- jetty-jsp/pom.xml | 2 +- jetty-jspc-maven-plugin/pom.xml | 2 +- jetty-maven-plugin/pom.xml | 2 +- jetty-monitor/pom.xml | 2 +- jetty-nosql/pom.xml | 2 +- jetty-osgi/jetty-osgi-alpn/pom.xml | 2 +- jetty-osgi/jetty-osgi-boot-jsp/pom.xml | 2 +- jetty-osgi/jetty-osgi-boot-warurl/pom.xml | 2 +- jetty-osgi/jetty-osgi-boot/pom.xml | 2 +- jetty-osgi/jetty-osgi-httpservice/pom.xml | 2 +- jetty-osgi/pom.xml | 2 +- jetty-osgi/test-jetty-osgi-context/pom.xml | 2 +- jetty-osgi/test-jetty-osgi-webapp/pom.xml | 2 +- jetty-osgi/test-jetty-osgi/pom.xml | 2 +- jetty-plus/pom.xml | 2 +- jetty-proxy/pom.xml | 2 +- jetty-quickstart/pom.xml | 2 +- jetty-rewrite/pom.xml | 2 +- jetty-runner/pom.xml | 2 +- jetty-security/pom.xml | 2 +- jetty-server/pom.xml | 2 +- jetty-servlet/pom.xml | 2 +- jetty-servlets/pom.xml | 2 +- jetty-spdy/pom.xml | 2 +- jetty-spdy/spdy-alpn-tests/pom.xml | 2 +- jetty-spdy/spdy-client/pom.xml | 2 +- jetty-spdy/spdy-core/pom.xml | 2 +- jetty-spdy/spdy-example-webapp/pom.xml | 2 +- jetty-spdy/spdy-http-client-transport/pom.xml | 2 +- jetty-spdy/spdy-http-common/pom.xml | 2 +- jetty-spdy/spdy-http-server/pom.xml | 2 +- jetty-spdy/spdy-server/pom.xml | 2 +- jetty-spring/pom.xml | 2 +- jetty-start/pom.xml | 2 +- jetty-util-ajax/pom.xml | 2 +- jetty-util/pom.xml | 2 +- jetty-webapp/pom.xml | 2 +- jetty-websocket/javax-websocket-client-impl/pom.xml | 2 +- jetty-websocket/javax-websocket-server-impl/pom.xml | 2 +- jetty-websocket/pom.xml | 2 +- jetty-websocket/websocket-api/pom.xml | 2 +- jetty-websocket/websocket-client/pom.xml | 2 +- jetty-websocket/websocket-common/pom.xml | 2 +- jetty-websocket/websocket-server/pom.xml | 2 +- jetty-websocket/websocket-servlet/pom.xml | 2 +- jetty-xml/pom.xml | 2 +- pom.xml | 2 +- tests/pom.xml | 2 +- tests/test-continuation/pom.xml | 2 +- tests/test-integration/pom.xml | 2 +- tests/test-jmx/jmx-webapp-it/pom.xml | 2 +- tests/test-jmx/jmx-webapp/pom.xml | 2 +- tests/test-jmx/pom.xml | 2 +- tests/test-loginservice/pom.xml | 2 +- tests/test-quickstart/pom.xml | 2 +- tests/test-sessions/pom.xml | 2 +- tests/test-sessions/test-hash-sessions/pom.xml | 2 +- tests/test-sessions/test-jdbc-sessions/pom.xml | 2 +- tests/test-sessions/test-mongodb-sessions/pom.xml | 2 +- tests/test-sessions/test-sessions-common/pom.xml | 2 +- tests/test-webapps/pom.xml | 2 +- tests/test-webapps/test-jaas-webapp/pom.xml | 2 +- tests/test-webapps/test-jetty-webapp/pom.xml | 2 +- tests/test-webapps/test-jndi-webapp/pom.xml | 2 +- tests/test-webapps/test-mock-resources/pom.xml | 2 +- tests/test-webapps/test-proxy-webapp/pom.xml | 2 +- tests/test-webapps/test-servlet-spec/pom.xml | 2 +- .../test-servlet-spec/test-container-initializer/pom.xml | 2 +- tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml | 2 +- tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml | 2 +- tests/test-webapps/test-webapp-rfc2616/pom.xml | 2 +- 100 files changed, 101 insertions(+), 99 deletions(-) diff --git a/VERSION.txt b/VERSION.txt index 1013951088a..78f4358fd8d 100644 --- a/VERSION.txt +++ b/VERSION.txt @@ -1,3 +1,5 @@ +jetty-9.2.26-SNAPSHOT + jetty-9.2.25.v20180606 - 06 June 2018 + 2114 Fix NPE in JettyHttpServerProvider + 2135 Android 8.1 needs direct buffers for SSL/TLS to work diff --git a/aggregates/jetty-all/pom.xml b/aggregates/jetty-all/pom.xml index af2e0e56167..46275a0dd5a 100644 --- a/aggregates/jetty-all/pom.xml +++ b/aggregates/jetty-all/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT ../../pom.xml 4.0.0 diff --git a/apache-jsp/pom.xml b/apache-jsp/pom.xml index 10a1fb444d9..c44da4b5148 100644 --- a/apache-jsp/pom.xml +++ b/apache-jsp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 apache-jsp diff --git a/apache-jstl/pom.xml b/apache-jstl/pom.xml index 75b076e74f2..4ffe61c95ec 100644 --- a/apache-jstl/pom.xml +++ b/apache-jstl/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 apache-jstl diff --git a/examples/async-rest/async-rest-jar/pom.xml b/examples/async-rest/async-rest-jar/pom.xml index 54d070cb166..4cfdcb41bdf 100644 --- a/examples/async-rest/async-rest-jar/pom.xml +++ b/examples/async-rest/async-rest-jar/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty example-async-rest - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 org.eclipse.jetty.example-async-rest diff --git a/examples/async-rest/async-rest-webapp/pom.xml b/examples/async-rest/async-rest-webapp/pom.xml index ba63eaed5ae..78b5a8e0c77 100644 --- a/examples/async-rest/async-rest-webapp/pom.xml +++ b/examples/async-rest/async-rest-webapp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty example-async-rest - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 org.eclipse.jetty.example-async-rest diff --git a/examples/async-rest/pom.xml b/examples/async-rest/pom.xml index 5d460853633..3a46314461a 100644 --- a/examples/async-rest/pom.xml +++ b/examples/async-rest/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.examples examples-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT ../pom.xml 4.0.0 diff --git a/examples/embedded/pom.xml b/examples/embedded/pom.xml index 4fe89817a1d..a1a7ade90aa 100644 --- a/examples/embedded/pom.xml +++ b/examples/embedded/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.examples examples-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT ../pom.xml 4.0.0 diff --git a/examples/pom.xml b/examples/pom.xml index 100ec14f587..d6526112276 100644 --- a/examples/pom.xml +++ b/examples/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT ../pom.xml org.eclipse.jetty.examples diff --git a/jetty-alpn/jetty-alpn-client/pom.xml b/jetty-alpn/jetty-alpn-client/pom.xml index cd02dbd744a..7a48b78644a 100644 --- a/jetty-alpn/jetty-alpn-client/pom.xml +++ b/jetty-alpn/jetty-alpn-client/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-alpn-client diff --git a/jetty-alpn/jetty-alpn-server/pom.xml b/jetty-alpn/jetty-alpn-server/pom.xml index 75d03dad6eb..86b64fd7064 100644 --- a/jetty-alpn/jetty-alpn-server/pom.xml +++ b/jetty-alpn/jetty-alpn-server/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-alpn-server diff --git a/jetty-alpn/pom.xml b/jetty-alpn/pom.xml index 29742cc06a1..2c5566456d5 100644 --- a/jetty-alpn/pom.xml +++ b/jetty-alpn/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-alpn-parent diff --git a/jetty-annotations/pom.xml b/jetty-annotations/pom.xml index e64862d7218..f90c291164e 100644 --- a/jetty-annotations/pom.xml +++ b/jetty-annotations/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-annotations diff --git a/jetty-ant/pom.xml b/jetty-ant/pom.xml index eeb25f75f98..9df91a3cb69 100644 --- a/jetty-ant/pom.xml +++ b/jetty-ant/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-ant diff --git a/jetty-cdi/pom.xml b/jetty-cdi/pom.xml index 9afb5ece660..c07c74329fb 100644 --- a/jetty-cdi/pom.xml +++ b/jetty-cdi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-cdi diff --git a/jetty-client/pom.xml b/jetty-client/pom.xml index 90b50095a94..410a485850d 100644 --- a/jetty-client/pom.xml +++ b/jetty-client/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 diff --git a/jetty-continuation/pom.xml b/jetty-continuation/pom.xml index dc298b21676..fea53658928 100644 --- a/jetty-continuation/pom.xml +++ b/jetty-continuation/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-continuation diff --git a/jetty-deploy/pom.xml b/jetty-deploy/pom.xml index d024f27e4d0..4c7df31fadf 100644 --- a/jetty-deploy/pom.xml +++ b/jetty-deploy/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-deploy diff --git a/jetty-distribution/pom.xml b/jetty-distribution/pom.xml index ab0a86109d1..c4ffd23c5b2 100644 --- a/jetty-distribution/pom.xml +++ b/jetty-distribution/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT jetty-distribution Jetty :: Distribution Assemblies diff --git a/jetty-fcgi/fcgi-client/pom.xml b/jetty-fcgi/fcgi-client/pom.xml index 4c9df6c7631..b4be85c1444 100644 --- a/jetty-fcgi/fcgi-client/pom.xml +++ b/jetty-fcgi/fcgi-client/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.fcgi fcgi-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 diff --git a/jetty-fcgi/fcgi-server/pom.xml b/jetty-fcgi/fcgi-server/pom.xml index 5e7cd432fa1..5e1cf0f1dbb 100644 --- a/jetty-fcgi/fcgi-server/pom.xml +++ b/jetty-fcgi/fcgi-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.fcgi fcgi-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 diff --git a/jetty-fcgi/pom.xml b/jetty-fcgi/pom.xml index b998572abf7..15e85bd6bce 100644 --- a/jetty-fcgi/pom.xml +++ b/jetty-fcgi/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 diff --git a/jetty-http-spi/pom.xml b/jetty-http-spi/pom.xml index ac0e92bc7f5..1be7dc8b136 100644 --- a/jetty-http-spi/pom.xml +++ b/jetty-http-spi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-http-spi diff --git a/jetty-http/pom.xml b/jetty-http/pom.xml index d1752dd243e..581981e4532 100644 --- a/jetty-http/pom.xml +++ b/jetty-http/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-http diff --git a/jetty-io/pom.xml b/jetty-io/pom.xml index 9ac1f8d0b2d..4fbb5ad38dd 100644 --- a/jetty-io/pom.xml +++ b/jetty-io/pom.xml @@ -2,7 +2,7 @@ jetty-project org.eclipse.jetty - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-io diff --git a/jetty-jaas/pom.xml b/jetty-jaas/pom.xml index 0e7ee80bc38..c26aa541af8 100644 --- a/jetty-jaas/pom.xml +++ b/jetty-jaas/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-jaas diff --git a/jetty-jaspi/pom.xml b/jetty-jaspi/pom.xml index 14ec5883538..1b0bc2e311f 100644 --- a/jetty-jaspi/pom.xml +++ b/jetty-jaspi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-jaspi diff --git a/jetty-jmx/pom.xml b/jetty-jmx/pom.xml index b6dea02a252..0bdacb41afd 100644 --- a/jetty-jmx/pom.xml +++ b/jetty-jmx/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-jmx diff --git a/jetty-jndi/pom.xml b/jetty-jndi/pom.xml index 121bf1dcbfd..10e6ad05a85 100644 --- a/jetty-jndi/pom.xml +++ b/jetty-jndi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-jndi diff --git a/jetty-jsp/pom.xml b/jetty-jsp/pom.xml index f95902adfb0..62e6a7d3750 100644 --- a/jetty-jsp/pom.xml +++ b/jetty-jsp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-jsp diff --git a/jetty-jspc-maven-plugin/pom.xml b/jetty-jspc-maven-plugin/pom.xml index 6b02000b133..aa7f7e6a400 100644 --- a/jetty-jspc-maven-plugin/pom.xml +++ b/jetty-jspc-maven-plugin/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-jspc-maven-plugin diff --git a/jetty-maven-plugin/pom.xml b/jetty-maven-plugin/pom.xml index a58b681390f..cdbec464d4e 100644 --- a/jetty-maven-plugin/pom.xml +++ b/jetty-maven-plugin/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-maven-plugin diff --git a/jetty-monitor/pom.xml b/jetty-monitor/pom.xml index 2ef66081d3a..a7bb5a03125 100644 --- a/jetty-monitor/pom.xml +++ b/jetty-monitor/pom.xml @@ -19,7 +19,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-monitor diff --git a/jetty-nosql/pom.xml b/jetty-nosql/pom.xml index 3fc27823a4f..5072af8dd6f 100644 --- a/jetty-nosql/pom.xml +++ b/jetty-nosql/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-nosql diff --git a/jetty-osgi/jetty-osgi-alpn/pom.xml b/jetty-osgi/jetty-osgi-alpn/pom.xml index 6196dd2c036..56dbf437ad4 100644 --- a/jetty-osgi/jetty-osgi-alpn/pom.xml +++ b/jetty-osgi/jetty-osgi-alpn/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-osgi-alpn diff --git a/jetty-osgi/jetty-osgi-boot-jsp/pom.xml b/jetty-osgi/jetty-osgi-boot-jsp/pom.xml index f520362fd75..66f45398575 100644 --- a/jetty-osgi/jetty-osgi-boot-jsp/pom.xml +++ b/jetty-osgi/jetty-osgi-boot-jsp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-osgi-boot-jsp diff --git a/jetty-osgi/jetty-osgi-boot-warurl/pom.xml b/jetty-osgi/jetty-osgi-boot-warurl/pom.xml index 4ee73967df7..865e022e788 100644 --- a/jetty-osgi/jetty-osgi-boot-warurl/pom.xml +++ b/jetty-osgi/jetty-osgi-boot-warurl/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT ../pom.xml 4.0.0 diff --git a/jetty-osgi/jetty-osgi-boot/pom.xml b/jetty-osgi/jetty-osgi-boot/pom.xml index 2ad55d1ba40..e36d1464b40 100644 --- a/jetty-osgi/jetty-osgi-boot/pom.xml +++ b/jetty-osgi/jetty-osgi-boot/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-osgi-boot diff --git a/jetty-osgi/jetty-osgi-httpservice/pom.xml b/jetty-osgi/jetty-osgi-httpservice/pom.xml index 46c7c703127..c25d36bbc71 100644 --- a/jetty-osgi/jetty-osgi-httpservice/pom.xml +++ b/jetty-osgi/jetty-osgi-httpservice/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-httpservice diff --git a/jetty-osgi/pom.xml b/jetty-osgi/pom.xml index d8107f1ab6f..98a433dba56 100644 --- a/jetty-osgi/pom.xml +++ b/jetty-osgi/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT org.eclipse.jetty.osgi jetty-osgi-project diff --git a/jetty-osgi/test-jetty-osgi-context/pom.xml b/jetty-osgi/test-jetty-osgi-context/pom.xml index 506669f3b03..0f1737cb115 100644 --- a/jetty-osgi/test-jetty-osgi-context/pom.xml +++ b/jetty-osgi/test-jetty-osgi-context/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 test-jetty-osgi-context diff --git a/jetty-osgi/test-jetty-osgi-webapp/pom.xml b/jetty-osgi/test-jetty-osgi-webapp/pom.xml index 3794a0c208c..a412d33eb36 100644 --- a/jetty-osgi/test-jetty-osgi-webapp/pom.xml +++ b/jetty-osgi/test-jetty-osgi-webapp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT ../pom.xml 4.0.0 diff --git a/jetty-osgi/test-jetty-osgi/pom.xml b/jetty-osgi/test-jetty-osgi/pom.xml index 4d499bfa859..ae2c6558c87 100644 --- a/jetty-osgi/test-jetty-osgi/pom.xml +++ b/jetty-osgi/test-jetty-osgi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT ../pom.xml 4.0.0 diff --git a/jetty-plus/pom.xml b/jetty-plus/pom.xml index 517c845c499..d4acb9ba85b 100644 --- a/jetty-plus/pom.xml +++ b/jetty-plus/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-plus diff --git a/jetty-proxy/pom.xml b/jetty-proxy/pom.xml index c9d2aec5414..3efa50d3880 100644 --- a/jetty-proxy/pom.xml +++ b/jetty-proxy/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-proxy diff --git a/jetty-quickstart/pom.xml b/jetty-quickstart/pom.xml index b13eaae3158..a85df8ed269 100644 --- a/jetty-quickstart/pom.xml +++ b/jetty-quickstart/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 org.eclipse.jetty diff --git a/jetty-rewrite/pom.xml b/jetty-rewrite/pom.xml index 14d62e98f35..3ad82928343 100644 --- a/jetty-rewrite/pom.xml +++ b/jetty-rewrite/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-rewrite diff --git a/jetty-runner/pom.xml b/jetty-runner/pom.xml index 44d71816c53..6d960d14c5a 100644 --- a/jetty-runner/pom.xml +++ b/jetty-runner/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-runner diff --git a/jetty-security/pom.xml b/jetty-security/pom.xml index 74a7461abaa..2ade2e89e17 100644 --- a/jetty-security/pom.xml +++ b/jetty-security/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-security diff --git a/jetty-server/pom.xml b/jetty-server/pom.xml index 57b542f9e21..adc09327ad3 100644 --- a/jetty-server/pom.xml +++ b/jetty-server/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-server diff --git a/jetty-servlet/pom.xml b/jetty-servlet/pom.xml index b3009326a63..8b279fd32d8 100644 --- a/jetty-servlet/pom.xml +++ b/jetty-servlet/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-servlet diff --git a/jetty-servlets/pom.xml b/jetty-servlets/pom.xml index fb723984a49..2b601fb85f8 100644 --- a/jetty-servlets/pom.xml +++ b/jetty-servlets/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-servlets diff --git a/jetty-spdy/pom.xml b/jetty-spdy/pom.xml index b4abc54ce93..52774d69c7a 100644 --- a/jetty-spdy/pom.xml +++ b/jetty-spdy/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 diff --git a/jetty-spdy/spdy-alpn-tests/pom.xml b/jetty-spdy/spdy-alpn-tests/pom.xml index 081d694f982..b50298e92a6 100644 --- a/jetty-spdy/spdy-alpn-tests/pom.xml +++ b/jetty-spdy/spdy-alpn-tests/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 diff --git a/jetty-spdy/spdy-client/pom.xml b/jetty-spdy/spdy-client/pom.xml index 606b83877c9..dec0421cc88 100644 --- a/jetty-spdy/spdy-client/pom.xml +++ b/jetty-spdy/spdy-client/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 diff --git a/jetty-spdy/spdy-core/pom.xml b/jetty-spdy/spdy-core/pom.xml index e7577e82723..64adf741bfe 100644 --- a/jetty-spdy/spdy-core/pom.xml +++ b/jetty-spdy/spdy-core/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 diff --git a/jetty-spdy/spdy-example-webapp/pom.xml b/jetty-spdy/spdy-example-webapp/pom.xml index dd09968c5c8..c68277b2f57 100644 --- a/jetty-spdy/spdy-example-webapp/pom.xml +++ b/jetty-spdy/spdy-example-webapp/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 spdy-example-webapp diff --git a/jetty-spdy/spdy-http-client-transport/pom.xml b/jetty-spdy/spdy-http-client-transport/pom.xml index 4375088443f..9c140f80f8c 100644 --- a/jetty-spdy/spdy-http-client-transport/pom.xml +++ b/jetty-spdy/spdy-http-client-transport/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 diff --git a/jetty-spdy/spdy-http-common/pom.xml b/jetty-spdy/spdy-http-common/pom.xml index 2b829884b29..e52ec2d7476 100644 --- a/jetty-spdy/spdy-http-common/pom.xml +++ b/jetty-spdy/spdy-http-common/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 diff --git a/jetty-spdy/spdy-http-server/pom.xml b/jetty-spdy/spdy-http-server/pom.xml index bad678c2285..ba3980ffd42 100644 --- a/jetty-spdy/spdy-http-server/pom.xml +++ b/jetty-spdy/spdy-http-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 spdy-http-server diff --git a/jetty-spdy/spdy-server/pom.xml b/jetty-spdy/spdy-server/pom.xml index 42498b73e2d..6ee8673f241 100644 --- a/jetty-spdy/spdy-server/pom.xml +++ b/jetty-spdy/spdy-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 diff --git a/jetty-spring/pom.xml b/jetty-spring/pom.xml index 86c584c02a6..2cd3bc9319b 100644 --- a/jetty-spring/pom.xml +++ b/jetty-spring/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-spring diff --git a/jetty-start/pom.xml b/jetty-start/pom.xml index b0fed5e2bbb..a75c9c80b77 100644 --- a/jetty-start/pom.xml +++ b/jetty-start/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-start diff --git a/jetty-util-ajax/pom.xml b/jetty-util-ajax/pom.xml index ad96aa04cd8..e322daf11dd 100644 --- a/jetty-util-ajax/pom.xml +++ b/jetty-util-ajax/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-util-ajax diff --git a/jetty-util/pom.xml b/jetty-util/pom.xml index 3a089eba951..5ad8c050ba5 100644 --- a/jetty-util/pom.xml +++ b/jetty-util/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-util diff --git a/jetty-webapp/pom.xml b/jetty-webapp/pom.xml index 394f1fe26a2..875759a234c 100644 --- a/jetty-webapp/pom.xml +++ b/jetty-webapp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-webapp diff --git a/jetty-websocket/javax-websocket-client-impl/pom.xml b/jetty-websocket/javax-websocket-client-impl/pom.xml index 07bfe454af4..29846fcdd91 100644 --- a/jetty-websocket/javax-websocket-client-impl/pom.xml +++ b/jetty-websocket/javax-websocket-client-impl/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/javax-websocket-server-impl/pom.xml b/jetty-websocket/javax-websocket-server-impl/pom.xml index fd931fe45c6..d1e909578b8 100644 --- a/jetty-websocket/javax-websocket-server-impl/pom.xml +++ b/jetty-websocket/javax-websocket-server-impl/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/pom.xml b/jetty-websocket/pom.xml index 1fac39b3463..49d3cee3e8f 100644 --- a/jetty-websocket/pom.xml +++ b/jetty-websocket/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/websocket-api/pom.xml b/jetty-websocket/websocket-api/pom.xml index a65aa3e7ab0..087501046a6 100644 --- a/jetty-websocket/websocket-api/pom.xml +++ b/jetty-websocket/websocket-api/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/websocket-client/pom.xml b/jetty-websocket/websocket-client/pom.xml index 40c904a75f7..d20fe3298c0 100644 --- a/jetty-websocket/websocket-client/pom.xml +++ b/jetty-websocket/websocket-client/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/websocket-common/pom.xml b/jetty-websocket/websocket-common/pom.xml index 7c7cada0030..c527936f840 100644 --- a/jetty-websocket/websocket-common/pom.xml +++ b/jetty-websocket/websocket-common/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/websocket-server/pom.xml b/jetty-websocket/websocket-server/pom.xml index b1310dab328..cd153b03f7f 100644 --- a/jetty-websocket/websocket-server/pom.xml +++ b/jetty-websocket/websocket-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/websocket-servlet/pom.xml b/jetty-websocket/websocket-servlet/pom.xml index e44289a2a21..3398ade69c9 100644 --- a/jetty-websocket/websocket-servlet/pom.xml +++ b/jetty-websocket/websocket-servlet/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 diff --git a/jetty-xml/pom.xml b/jetty-xml/pom.xml index a66997eddff..e651f840183 100644 --- a/jetty-xml/pom.xml +++ b/jetty-xml/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jetty-xml diff --git a/pom.xml b/pom.xml index 53115a6ad08..ccbfac33552 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ 23 jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT Jetty :: Project http://www.eclipse.org/jetty pom diff --git a/tests/pom.xml b/tests/pom.xml index 4aeaa341ab3..a42c15fedcd 100644 --- a/tests/pom.xml +++ b/tests/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty jetty-project - 9.2.25.v20180606 + 9.2.26-SNAPSHOT ../pom.xml org.eclipse.jetty.tests diff --git a/tests/test-continuation/pom.xml b/tests/test-continuation/pom.xml index 421fc6b97dd..5ee8ccd12a4 100644 --- a/tests/test-continuation/pom.xml +++ b/tests/test-continuation/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT ../pom.xml 4.0.0 diff --git a/tests/test-integration/pom.xml b/tests/test-integration/pom.xml index 8cc1d8b4790..a549315d293 100644 --- a/tests/test-integration/pom.xml +++ b/tests/test-integration/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 test-integration diff --git a/tests/test-jmx/jmx-webapp-it/pom.xml b/tests/test-jmx/jmx-webapp-it/pom.xml index daee1a18246..8d8cb04e8d3 100644 --- a/tests/test-jmx/jmx-webapp-it/pom.xml +++ b/tests/test-jmx/jmx-webapp-it/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests test-jmx-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 jmx-webapp-it diff --git a/tests/test-jmx/jmx-webapp/pom.xml b/tests/test-jmx/jmx-webapp/pom.xml index a19c438ccfe..deb0b3d23ac 100644 --- a/tests/test-jmx/jmx-webapp/pom.xml +++ b/tests/test-jmx/jmx-webapp/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-jmx-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT jmx-webapp war diff --git a/tests/test-jmx/pom.xml b/tests/test-jmx/pom.xml index e854299ace3..aee3685f95f 100644 --- a/tests/test-jmx/pom.xml +++ b/tests/test-jmx/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT 4.0.0 test-jmx-parent diff --git a/tests/test-loginservice/pom.xml b/tests/test-loginservice/pom.xml index 28b9e739ad4..06bbbf74829 100644 --- a/tests/test-loginservice/pom.xml +++ b/tests/test-loginservice/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT test-loginservice Jetty Tests :: Login Service diff --git a/tests/test-quickstart/pom.xml b/tests/test-quickstart/pom.xml index 7c3a63444ed..6b97be6e4e1 100644 --- a/tests/test-quickstart/pom.xml +++ b/tests/test-quickstart/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT ../pom.xml 4.0.0 diff --git a/tests/test-sessions/pom.xml b/tests/test-sessions/pom.xml index 4e2b488cb66..edb434c81e4 100644 --- a/tests/test-sessions/pom.xml +++ b/tests/test-sessions/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT test-sessions-parent Jetty Tests :: Sessions :: Parent diff --git a/tests/test-sessions/test-hash-sessions/pom.xml b/tests/test-sessions/test-hash-sessions/pom.xml index 874c40c5327..0e5089305f6 100644 --- a/tests/test-sessions/test-hash-sessions/pom.xml +++ b/tests/test-sessions/test-hash-sessions/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT test-hash-sessions Jetty Tests :: Sessions :: Hash diff --git a/tests/test-sessions/test-jdbc-sessions/pom.xml b/tests/test-sessions/test-jdbc-sessions/pom.xml index 3c5f30863a9..4ce7881ca06 100644 --- a/tests/test-sessions/test-jdbc-sessions/pom.xml +++ b/tests/test-sessions/test-jdbc-sessions/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT test-jdbc-sessions Jetty Tests :: Sessions :: JDBC diff --git a/tests/test-sessions/test-mongodb-sessions/pom.xml b/tests/test-sessions/test-mongodb-sessions/pom.xml index df65ff85f9e..eef996be78e 100644 --- a/tests/test-sessions/test-mongodb-sessions/pom.xml +++ b/tests/test-sessions/test-mongodb-sessions/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT test-mongodb-sessions Jetty Tests :: Sessions :: Mongo diff --git a/tests/test-sessions/test-sessions-common/pom.xml b/tests/test-sessions/test-sessions-common/pom.xml index bdfbf77dfdd..70cda9b32f9 100644 --- a/tests/test-sessions/test-sessions-common/pom.xml +++ b/tests/test-sessions/test-sessions-common/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT test-sessions-common Jetty Tests :: Sessions :: Common diff --git a/tests/test-webapps/pom.xml b/tests/test-webapps/pom.xml index b0e0f982cc5..ce95b6d441c 100644 --- a/tests/test-webapps/pom.xml +++ b/tests/test-webapps/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT ../pom.xml test-webapps-parent diff --git a/tests/test-webapps/test-jaas-webapp/pom.xml b/tests/test-webapps/test-jaas-webapp/pom.xml index 2580405f1b2..b110679b351 100644 --- a/tests/test-webapps/test-jaas-webapp/pom.xml +++ b/tests/test-webapps/test-jaas-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT test-jaas-webapp Jetty Tests :: WebApp :: JAAS diff --git a/tests/test-webapps/test-jetty-webapp/pom.xml b/tests/test-webapps/test-jetty-webapp/pom.xml index f999633862f..d46692b5a51 100644 --- a/tests/test-webapps/test-jetty-webapp/pom.xml +++ b/tests/test-webapps/test-jetty-webapp/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT ../pom.xml 4.0.0 diff --git a/tests/test-webapps/test-jndi-webapp/pom.xml b/tests/test-webapps/test-jndi-webapp/pom.xml index c02f2ae5ac3..8f3ca7d141d 100644 --- a/tests/test-webapps/test-jndi-webapp/pom.xml +++ b/tests/test-webapps/test-jndi-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT test-jndi-webapp Jetty Tests :: WebApp :: JNDI diff --git a/tests/test-webapps/test-mock-resources/pom.xml b/tests/test-webapps/test-mock-resources/pom.xml index 3af0e8d2a29..0232ced3d3a 100644 --- a/tests/test-webapps/test-mock-resources/pom.xml +++ b/tests/test-webapps/test-mock-resources/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT Jetty Tests :: WebApp :: Mock Resources test-mock-resources diff --git a/tests/test-webapps/test-proxy-webapp/pom.xml b/tests/test-webapps/test-proxy-webapp/pom.xml index 13f7c8b65ac..16265cc08e0 100644 --- a/tests/test-webapps/test-proxy-webapp/pom.xml +++ b/tests/test-webapps/test-proxy-webapp/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT ../pom.xml 4.0.0 diff --git a/tests/test-webapps/test-servlet-spec/pom.xml b/tests/test-webapps/test-servlet-spec/pom.xml index a24df1a6e95..5e03a728374 100644 --- a/tests/test-webapps/test-servlet-spec/pom.xml +++ b/tests/test-webapps/test-servlet-spec/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT test-servlet-spec-parent Jetty Tests :: Spec Test WebApp :: Parent diff --git a/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml b/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml index 70c78f6b9ec..c3a7b03e1cc 100644 --- a/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml +++ b/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-servlet-spec-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT test-container-initializer jar diff --git a/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml b/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml index e2ba8810101..d778d049004 100644 --- a/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml +++ b/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-servlet-spec-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT Jetty Tests :: Webapps :: Spec Webapp test-spec-webapp diff --git a/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml b/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml index 9ecd50971e0..6a8fb4bbcaf 100644 --- a/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml +++ b/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-servlet-spec-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT Jetty Tests :: WebApp :: Servlet Spec :: Fragment Jar org.eclipse.jetty.tests diff --git a/tests/test-webapps/test-webapp-rfc2616/pom.xml b/tests/test-webapps/test-webapp-rfc2616/pom.xml index a39137eef2b..6c9762ab738 100644 --- a/tests/test-webapps/test-webapp-rfc2616/pom.xml +++ b/tests/test-webapps/test-webapp-rfc2616/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.25.v20180606 + 9.2.26-SNAPSHOT test-webapp-rfc2616 Jetty Tests :: WebApp :: RFC2616 From cfcecce2f97b415e1a51037d1290631c27362a51 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Mon, 6 Aug 2018 10:29:57 -0500 Subject: [PATCH 003/931] Bumping up jetty-version-maven-plugin version --- pom.xml | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index d5a7529b133..58667c8c7c7 100644 --- a/pom.xml +++ b/pom.xml @@ -294,7 +294,7 @@ org.eclipse.jetty.toolchain jetty-version-maven-plugin - 2.3 + 2.5 org.apache.maven.plugins @@ -773,12 +773,27 @@ generate-resources update-version-text + tag true true false true + Tag for release: jetty-${project.version} + + jetty-documentation/.* + examples/.* + aggregates/.* + .*/test-.* + .*/.*-test/.* + .*/.*-tests/.* + .*/src/test/.* + \.git.* + .*\.md$ + .*\.txt$ + Jenkinsfile + From 8c637489ae2bdc2d281b8db171e7427a47fdcc2b Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Mon, 6 Aug 2018 10:51:25 -0500 Subject: [PATCH 004/931] Updating to version 9.2.26.v20180806 --- VERSION.txt | 3 ++- aggregates/jetty-all/pom.xml | 2 +- apache-jsp/pom.xml | 2 +- apache-jstl/pom.xml | 2 +- examples/async-rest/async-rest-jar/pom.xml | 2 +- examples/async-rest/async-rest-webapp/pom.xml | 2 +- examples/async-rest/pom.xml | 2 +- examples/embedded/pom.xml | 2 +- examples/pom.xml | 2 +- jetty-alpn/jetty-alpn-client/pom.xml | 2 +- jetty-alpn/jetty-alpn-server/pom.xml | 2 +- jetty-alpn/pom.xml | 2 +- jetty-annotations/pom.xml | 2 +- jetty-ant/pom.xml | 2 +- jetty-cdi/pom.xml | 2 +- jetty-client/pom.xml | 2 +- jetty-continuation/pom.xml | 2 +- jetty-deploy/pom.xml | 2 +- jetty-distribution/pom.xml | 2 +- jetty-fcgi/fcgi-client/pom.xml | 2 +- jetty-fcgi/fcgi-server/pom.xml | 2 +- jetty-fcgi/pom.xml | 2 +- jetty-http-spi/pom.xml | 2 +- jetty-http/pom.xml | 2 +- jetty-io/pom.xml | 2 +- jetty-jaas/pom.xml | 2 +- jetty-jaspi/pom.xml | 2 +- jetty-jmx/pom.xml | 2 +- jetty-jndi/pom.xml | 2 +- jetty-jsp/pom.xml | 2 +- jetty-jspc-maven-plugin/pom.xml | 2 +- jetty-maven-plugin/pom.xml | 2 +- jetty-monitor/pom.xml | 2 +- jetty-nosql/pom.xml | 2 +- jetty-osgi/jetty-osgi-alpn/pom.xml | 2 +- jetty-osgi/jetty-osgi-boot-jsp/pom.xml | 2 +- jetty-osgi/jetty-osgi-boot-warurl/pom.xml | 2 +- jetty-osgi/jetty-osgi-boot/pom.xml | 2 +- jetty-osgi/jetty-osgi-httpservice/pom.xml | 2 +- jetty-osgi/pom.xml | 2 +- jetty-osgi/test-jetty-osgi-context/pom.xml | 2 +- jetty-osgi/test-jetty-osgi-webapp/pom.xml | 2 +- jetty-osgi/test-jetty-osgi/pom.xml | 2 +- jetty-plus/pom.xml | 2 +- jetty-proxy/pom.xml | 2 +- jetty-quickstart/pom.xml | 2 +- jetty-rewrite/pom.xml | 2 +- jetty-runner/pom.xml | 2 +- jetty-security/pom.xml | 2 +- jetty-server/pom.xml | 2 +- jetty-servlet/pom.xml | 2 +- jetty-servlets/pom.xml | 2 +- jetty-spdy/pom.xml | 2 +- jetty-spdy/spdy-alpn-tests/pom.xml | 2 +- jetty-spdy/spdy-client/pom.xml | 2 +- jetty-spdy/spdy-core/pom.xml | 2 +- jetty-spdy/spdy-example-webapp/pom.xml | 2 +- jetty-spdy/spdy-http-client-transport/pom.xml | 2 +- jetty-spdy/spdy-http-common/pom.xml | 2 +- jetty-spdy/spdy-http-server/pom.xml | 2 +- jetty-spdy/spdy-server/pom.xml | 2 +- jetty-spring/pom.xml | 2 +- jetty-start/pom.xml | 2 +- jetty-util-ajax/pom.xml | 2 +- jetty-util/pom.xml | 2 +- jetty-webapp/pom.xml | 2 +- jetty-websocket/javax-websocket-client-impl/pom.xml | 2 +- jetty-websocket/javax-websocket-server-impl/pom.xml | 2 +- jetty-websocket/pom.xml | 2 +- jetty-websocket/websocket-api/pom.xml | 2 +- jetty-websocket/websocket-client/pom.xml | 2 +- jetty-websocket/websocket-common/pom.xml | 2 +- jetty-websocket/websocket-server/pom.xml | 2 +- jetty-websocket/websocket-servlet/pom.xml | 2 +- jetty-xml/pom.xml | 2 +- pom.xml | 2 +- tests/pom.xml | 2 +- tests/test-continuation/pom.xml | 2 +- tests/test-integration/pom.xml | 2 +- tests/test-jmx/jmx-webapp-it/pom.xml | 2 +- tests/test-jmx/jmx-webapp/pom.xml | 2 +- tests/test-jmx/pom.xml | 2 +- tests/test-loginservice/pom.xml | 2 +- tests/test-quickstart/pom.xml | 2 +- tests/test-sessions/pom.xml | 2 +- tests/test-sessions/test-hash-sessions/pom.xml | 2 +- tests/test-sessions/test-jdbc-sessions/pom.xml | 2 +- tests/test-sessions/test-mongodb-sessions/pom.xml | 2 +- tests/test-sessions/test-sessions-common/pom.xml | 2 +- tests/test-webapps/pom.xml | 2 +- tests/test-webapps/test-jaas-webapp/pom.xml | 2 +- tests/test-webapps/test-jetty-webapp/pom.xml | 2 +- tests/test-webapps/test-jndi-webapp/pom.xml | 2 +- tests/test-webapps/test-mock-resources/pom.xml | 2 +- tests/test-webapps/test-proxy-webapp/pom.xml | 2 +- tests/test-webapps/test-servlet-spec/pom.xml | 2 +- .../test-servlet-spec/test-container-initializer/pom.xml | 2 +- tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml | 2 +- tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml | 2 +- tests/test-webapps/test-webapp-rfc2616/pom.xml | 2 +- 100 files changed, 101 insertions(+), 100 deletions(-) diff --git a/VERSION.txt b/VERSION.txt index 78f4358fd8d..5d07ac103e4 100644 --- a/VERSION.txt +++ b/VERSION.txt @@ -1,4 +1,5 @@ -jetty-9.2.26-SNAPSHOT +jetty-9.2.26.v20180806 - 06 August 2018 + + 2777 Workaround for Conscrypt's ssl == null jetty-9.2.25.v20180606 - 06 June 2018 + 2114 Fix NPE in JettyHttpServerProvider diff --git a/aggregates/jetty-all/pom.xml b/aggregates/jetty-all/pom.xml index 46275a0dd5a..ed0ead9f890 100644 --- a/aggregates/jetty-all/pom.xml +++ b/aggregates/jetty-all/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 ../../pom.xml 4.0.0 diff --git a/apache-jsp/pom.xml b/apache-jsp/pom.xml index c44da4b5148..9bfe3c45ce9 100644 --- a/apache-jsp/pom.xml +++ b/apache-jsp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 apache-jsp diff --git a/apache-jstl/pom.xml b/apache-jstl/pom.xml index 4ffe61c95ec..aec74571ccb 100644 --- a/apache-jstl/pom.xml +++ b/apache-jstl/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 apache-jstl diff --git a/examples/async-rest/async-rest-jar/pom.xml b/examples/async-rest/async-rest-jar/pom.xml index 4cfdcb41bdf..e380e3f9a77 100644 --- a/examples/async-rest/async-rest-jar/pom.xml +++ b/examples/async-rest/async-rest-jar/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty example-async-rest - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 org.eclipse.jetty.example-async-rest diff --git a/examples/async-rest/async-rest-webapp/pom.xml b/examples/async-rest/async-rest-webapp/pom.xml index 78b5a8e0c77..4820813e79e 100644 --- a/examples/async-rest/async-rest-webapp/pom.xml +++ b/examples/async-rest/async-rest-webapp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty example-async-rest - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 org.eclipse.jetty.example-async-rest diff --git a/examples/async-rest/pom.xml b/examples/async-rest/pom.xml index 3a46314461a..241d39d2546 100644 --- a/examples/async-rest/pom.xml +++ b/examples/async-rest/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.examples examples-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 ../pom.xml 4.0.0 diff --git a/examples/embedded/pom.xml b/examples/embedded/pom.xml index a1a7ade90aa..fb31c5b0405 100644 --- a/examples/embedded/pom.xml +++ b/examples/embedded/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.examples examples-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 ../pom.xml 4.0.0 diff --git a/examples/pom.xml b/examples/pom.xml index d6526112276..0c0075d5bf6 100644 --- a/examples/pom.xml +++ b/examples/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 ../pom.xml org.eclipse.jetty.examples diff --git a/jetty-alpn/jetty-alpn-client/pom.xml b/jetty-alpn/jetty-alpn-client/pom.xml index 7a48b78644a..d0616121e41 100644 --- a/jetty-alpn/jetty-alpn-client/pom.xml +++ b/jetty-alpn/jetty-alpn-client/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-alpn-client diff --git a/jetty-alpn/jetty-alpn-server/pom.xml b/jetty-alpn/jetty-alpn-server/pom.xml index 86b64fd7064..de68df7858c 100644 --- a/jetty-alpn/jetty-alpn-server/pom.xml +++ b/jetty-alpn/jetty-alpn-server/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-alpn-server diff --git a/jetty-alpn/pom.xml b/jetty-alpn/pom.xml index 2c5566456d5..85154357a90 100644 --- a/jetty-alpn/pom.xml +++ b/jetty-alpn/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-alpn-parent diff --git a/jetty-annotations/pom.xml b/jetty-annotations/pom.xml index f90c291164e..31ee1e8e093 100644 --- a/jetty-annotations/pom.xml +++ b/jetty-annotations/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-annotations diff --git a/jetty-ant/pom.xml b/jetty-ant/pom.xml index 9df91a3cb69..29fbc436287 100644 --- a/jetty-ant/pom.xml +++ b/jetty-ant/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-ant diff --git a/jetty-cdi/pom.xml b/jetty-cdi/pom.xml index c07c74329fb..c18f7fba7ab 100644 --- a/jetty-cdi/pom.xml +++ b/jetty-cdi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-cdi diff --git a/jetty-client/pom.xml b/jetty-client/pom.xml index 410a485850d..defad19b51d 100644 --- a/jetty-client/pom.xml +++ b/jetty-client/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 diff --git a/jetty-continuation/pom.xml b/jetty-continuation/pom.xml index fea53658928..f54695f42d2 100644 --- a/jetty-continuation/pom.xml +++ b/jetty-continuation/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-continuation diff --git a/jetty-deploy/pom.xml b/jetty-deploy/pom.xml index 4c7df31fadf..c501094dc3e 100644 --- a/jetty-deploy/pom.xml +++ b/jetty-deploy/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-deploy diff --git a/jetty-distribution/pom.xml b/jetty-distribution/pom.xml index c4ffd23c5b2..661ca0ca033 100644 --- a/jetty-distribution/pom.xml +++ b/jetty-distribution/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 jetty-distribution Jetty :: Distribution Assemblies diff --git a/jetty-fcgi/fcgi-client/pom.xml b/jetty-fcgi/fcgi-client/pom.xml index b4be85c1444..64743578fb9 100644 --- a/jetty-fcgi/fcgi-client/pom.xml +++ b/jetty-fcgi/fcgi-client/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.fcgi fcgi-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 diff --git a/jetty-fcgi/fcgi-server/pom.xml b/jetty-fcgi/fcgi-server/pom.xml index 5e1cf0f1dbb..03b552836eb 100644 --- a/jetty-fcgi/fcgi-server/pom.xml +++ b/jetty-fcgi/fcgi-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.fcgi fcgi-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 diff --git a/jetty-fcgi/pom.xml b/jetty-fcgi/pom.xml index 15e85bd6bce..7cca2e55ecd 100644 --- a/jetty-fcgi/pom.xml +++ b/jetty-fcgi/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 diff --git a/jetty-http-spi/pom.xml b/jetty-http-spi/pom.xml index 1be7dc8b136..7d2ba0256ca 100644 --- a/jetty-http-spi/pom.xml +++ b/jetty-http-spi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-http-spi diff --git a/jetty-http/pom.xml b/jetty-http/pom.xml index 581981e4532..d033f367bea 100644 --- a/jetty-http/pom.xml +++ b/jetty-http/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-http diff --git a/jetty-io/pom.xml b/jetty-io/pom.xml index 4fbb5ad38dd..0221e56b829 100644 --- a/jetty-io/pom.xml +++ b/jetty-io/pom.xml @@ -2,7 +2,7 @@ jetty-project org.eclipse.jetty - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-io diff --git a/jetty-jaas/pom.xml b/jetty-jaas/pom.xml index c26aa541af8..c86cda58457 100644 --- a/jetty-jaas/pom.xml +++ b/jetty-jaas/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-jaas diff --git a/jetty-jaspi/pom.xml b/jetty-jaspi/pom.xml index 1b0bc2e311f..b6d9057cd33 100644 --- a/jetty-jaspi/pom.xml +++ b/jetty-jaspi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-jaspi diff --git a/jetty-jmx/pom.xml b/jetty-jmx/pom.xml index 0bdacb41afd..7d0f0c31d00 100644 --- a/jetty-jmx/pom.xml +++ b/jetty-jmx/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-jmx diff --git a/jetty-jndi/pom.xml b/jetty-jndi/pom.xml index 10e6ad05a85..1fded7d9ed8 100644 --- a/jetty-jndi/pom.xml +++ b/jetty-jndi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-jndi diff --git a/jetty-jsp/pom.xml b/jetty-jsp/pom.xml index 62e6a7d3750..fb62079098f 100644 --- a/jetty-jsp/pom.xml +++ b/jetty-jsp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-jsp diff --git a/jetty-jspc-maven-plugin/pom.xml b/jetty-jspc-maven-plugin/pom.xml index aa7f7e6a400..81414fff871 100644 --- a/jetty-jspc-maven-plugin/pom.xml +++ b/jetty-jspc-maven-plugin/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-jspc-maven-plugin diff --git a/jetty-maven-plugin/pom.xml b/jetty-maven-plugin/pom.xml index cdbec464d4e..83790efb866 100644 --- a/jetty-maven-plugin/pom.xml +++ b/jetty-maven-plugin/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-maven-plugin diff --git a/jetty-monitor/pom.xml b/jetty-monitor/pom.xml index a7bb5a03125..891c7f69d68 100644 --- a/jetty-monitor/pom.xml +++ b/jetty-monitor/pom.xml @@ -19,7 +19,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-monitor diff --git a/jetty-nosql/pom.xml b/jetty-nosql/pom.xml index 5072af8dd6f..39618771fae 100644 --- a/jetty-nosql/pom.xml +++ b/jetty-nosql/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-nosql diff --git a/jetty-osgi/jetty-osgi-alpn/pom.xml b/jetty-osgi/jetty-osgi-alpn/pom.xml index 56dbf437ad4..d664c0f7d08 100644 --- a/jetty-osgi/jetty-osgi-alpn/pom.xml +++ b/jetty-osgi/jetty-osgi-alpn/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-osgi-alpn diff --git a/jetty-osgi/jetty-osgi-boot-jsp/pom.xml b/jetty-osgi/jetty-osgi-boot-jsp/pom.xml index 66f45398575..93efface4d5 100644 --- a/jetty-osgi/jetty-osgi-boot-jsp/pom.xml +++ b/jetty-osgi/jetty-osgi-boot-jsp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-osgi-boot-jsp diff --git a/jetty-osgi/jetty-osgi-boot-warurl/pom.xml b/jetty-osgi/jetty-osgi-boot-warurl/pom.xml index 865e022e788..28db3086b56 100644 --- a/jetty-osgi/jetty-osgi-boot-warurl/pom.xml +++ b/jetty-osgi/jetty-osgi-boot-warurl/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 ../pom.xml 4.0.0 diff --git a/jetty-osgi/jetty-osgi-boot/pom.xml b/jetty-osgi/jetty-osgi-boot/pom.xml index e36d1464b40..c8661b94c56 100644 --- a/jetty-osgi/jetty-osgi-boot/pom.xml +++ b/jetty-osgi/jetty-osgi-boot/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-osgi-boot diff --git a/jetty-osgi/jetty-osgi-httpservice/pom.xml b/jetty-osgi/jetty-osgi-httpservice/pom.xml index c25d36bbc71..929abf75b3e 100644 --- a/jetty-osgi/jetty-osgi-httpservice/pom.xml +++ b/jetty-osgi/jetty-osgi-httpservice/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-httpservice diff --git a/jetty-osgi/pom.xml b/jetty-osgi/pom.xml index 98a433dba56..7776a757012 100644 --- a/jetty-osgi/pom.xml +++ b/jetty-osgi/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 org.eclipse.jetty.osgi jetty-osgi-project diff --git a/jetty-osgi/test-jetty-osgi-context/pom.xml b/jetty-osgi/test-jetty-osgi-context/pom.xml index 0f1737cb115..42df47f5e5e 100644 --- a/jetty-osgi/test-jetty-osgi-context/pom.xml +++ b/jetty-osgi/test-jetty-osgi-context/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 test-jetty-osgi-context diff --git a/jetty-osgi/test-jetty-osgi-webapp/pom.xml b/jetty-osgi/test-jetty-osgi-webapp/pom.xml index a412d33eb36..dbe5e946f63 100644 --- a/jetty-osgi/test-jetty-osgi-webapp/pom.xml +++ b/jetty-osgi/test-jetty-osgi-webapp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 ../pom.xml 4.0.0 diff --git a/jetty-osgi/test-jetty-osgi/pom.xml b/jetty-osgi/test-jetty-osgi/pom.xml index ae2c6558c87..74e82fa7b1c 100644 --- a/jetty-osgi/test-jetty-osgi/pom.xml +++ b/jetty-osgi/test-jetty-osgi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 ../pom.xml 4.0.0 diff --git a/jetty-plus/pom.xml b/jetty-plus/pom.xml index d4acb9ba85b..8b4fe5de358 100644 --- a/jetty-plus/pom.xml +++ b/jetty-plus/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-plus diff --git a/jetty-proxy/pom.xml b/jetty-proxy/pom.xml index 3efa50d3880..f05370e7c40 100644 --- a/jetty-proxy/pom.xml +++ b/jetty-proxy/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-proxy diff --git a/jetty-quickstart/pom.xml b/jetty-quickstart/pom.xml index a85df8ed269..e25a2d20abc 100644 --- a/jetty-quickstart/pom.xml +++ b/jetty-quickstart/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 org.eclipse.jetty diff --git a/jetty-rewrite/pom.xml b/jetty-rewrite/pom.xml index 3ad82928343..1bf24b1b699 100644 --- a/jetty-rewrite/pom.xml +++ b/jetty-rewrite/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-rewrite diff --git a/jetty-runner/pom.xml b/jetty-runner/pom.xml index 6d960d14c5a..c48e5dcc2a0 100644 --- a/jetty-runner/pom.xml +++ b/jetty-runner/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-runner diff --git a/jetty-security/pom.xml b/jetty-security/pom.xml index 2ade2e89e17..eb342dd69f2 100644 --- a/jetty-security/pom.xml +++ b/jetty-security/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-security diff --git a/jetty-server/pom.xml b/jetty-server/pom.xml index adc09327ad3..4b050113c57 100644 --- a/jetty-server/pom.xml +++ b/jetty-server/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-server diff --git a/jetty-servlet/pom.xml b/jetty-servlet/pom.xml index 8b279fd32d8..ed45020d79b 100644 --- a/jetty-servlet/pom.xml +++ b/jetty-servlet/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-servlet diff --git a/jetty-servlets/pom.xml b/jetty-servlets/pom.xml index 2b601fb85f8..676d1248a3f 100644 --- a/jetty-servlets/pom.xml +++ b/jetty-servlets/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-servlets diff --git a/jetty-spdy/pom.xml b/jetty-spdy/pom.xml index 52774d69c7a..0964acced83 100644 --- a/jetty-spdy/pom.xml +++ b/jetty-spdy/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 diff --git a/jetty-spdy/spdy-alpn-tests/pom.xml b/jetty-spdy/spdy-alpn-tests/pom.xml index b50298e92a6..1cd632188e8 100644 --- a/jetty-spdy/spdy-alpn-tests/pom.xml +++ b/jetty-spdy/spdy-alpn-tests/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 diff --git a/jetty-spdy/spdy-client/pom.xml b/jetty-spdy/spdy-client/pom.xml index dec0421cc88..60d0beb43a8 100644 --- a/jetty-spdy/spdy-client/pom.xml +++ b/jetty-spdy/spdy-client/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 diff --git a/jetty-spdy/spdy-core/pom.xml b/jetty-spdy/spdy-core/pom.xml index 64adf741bfe..0171b96124d 100644 --- a/jetty-spdy/spdy-core/pom.xml +++ b/jetty-spdy/spdy-core/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 diff --git a/jetty-spdy/spdy-example-webapp/pom.xml b/jetty-spdy/spdy-example-webapp/pom.xml index c68277b2f57..0df85ac68d2 100644 --- a/jetty-spdy/spdy-example-webapp/pom.xml +++ b/jetty-spdy/spdy-example-webapp/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 spdy-example-webapp diff --git a/jetty-spdy/spdy-http-client-transport/pom.xml b/jetty-spdy/spdy-http-client-transport/pom.xml index 9c140f80f8c..1689cea8086 100644 --- a/jetty-spdy/spdy-http-client-transport/pom.xml +++ b/jetty-spdy/spdy-http-client-transport/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 diff --git a/jetty-spdy/spdy-http-common/pom.xml b/jetty-spdy/spdy-http-common/pom.xml index e52ec2d7476..270139655ff 100644 --- a/jetty-spdy/spdy-http-common/pom.xml +++ b/jetty-spdy/spdy-http-common/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 diff --git a/jetty-spdy/spdy-http-server/pom.xml b/jetty-spdy/spdy-http-server/pom.xml index ba3980ffd42..4041c36732f 100644 --- a/jetty-spdy/spdy-http-server/pom.xml +++ b/jetty-spdy/spdy-http-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 spdy-http-server diff --git a/jetty-spdy/spdy-server/pom.xml b/jetty-spdy/spdy-server/pom.xml index 6ee8673f241..a39327d2f97 100644 --- a/jetty-spdy/spdy-server/pom.xml +++ b/jetty-spdy/spdy-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 diff --git a/jetty-spring/pom.xml b/jetty-spring/pom.xml index 2cd3bc9319b..3fe022aa4cc 100644 --- a/jetty-spring/pom.xml +++ b/jetty-spring/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-spring diff --git a/jetty-start/pom.xml b/jetty-start/pom.xml index a75c9c80b77..ee6f2b2b046 100644 --- a/jetty-start/pom.xml +++ b/jetty-start/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-start diff --git a/jetty-util-ajax/pom.xml b/jetty-util-ajax/pom.xml index e322daf11dd..7c295181b88 100644 --- a/jetty-util-ajax/pom.xml +++ b/jetty-util-ajax/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-util-ajax diff --git a/jetty-util/pom.xml b/jetty-util/pom.xml index 5ad8c050ba5..57ab70fda37 100644 --- a/jetty-util/pom.xml +++ b/jetty-util/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-util diff --git a/jetty-webapp/pom.xml b/jetty-webapp/pom.xml index 875759a234c..4d10b681213 100644 --- a/jetty-webapp/pom.xml +++ b/jetty-webapp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-webapp diff --git a/jetty-websocket/javax-websocket-client-impl/pom.xml b/jetty-websocket/javax-websocket-client-impl/pom.xml index 29846fcdd91..9f8736ef2fc 100644 --- a/jetty-websocket/javax-websocket-client-impl/pom.xml +++ b/jetty-websocket/javax-websocket-client-impl/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 diff --git a/jetty-websocket/javax-websocket-server-impl/pom.xml b/jetty-websocket/javax-websocket-server-impl/pom.xml index d1e909578b8..ef63bf5af0c 100644 --- a/jetty-websocket/javax-websocket-server-impl/pom.xml +++ b/jetty-websocket/javax-websocket-server-impl/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 diff --git a/jetty-websocket/pom.xml b/jetty-websocket/pom.xml index 49d3cee3e8f..553765f47ec 100644 --- a/jetty-websocket/pom.xml +++ b/jetty-websocket/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 diff --git a/jetty-websocket/websocket-api/pom.xml b/jetty-websocket/websocket-api/pom.xml index 087501046a6..d8798661a86 100644 --- a/jetty-websocket/websocket-api/pom.xml +++ b/jetty-websocket/websocket-api/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 diff --git a/jetty-websocket/websocket-client/pom.xml b/jetty-websocket/websocket-client/pom.xml index d20fe3298c0..528cce984cf 100644 --- a/jetty-websocket/websocket-client/pom.xml +++ b/jetty-websocket/websocket-client/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 diff --git a/jetty-websocket/websocket-common/pom.xml b/jetty-websocket/websocket-common/pom.xml index c527936f840..c9d6f12d6a2 100644 --- a/jetty-websocket/websocket-common/pom.xml +++ b/jetty-websocket/websocket-common/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 diff --git a/jetty-websocket/websocket-server/pom.xml b/jetty-websocket/websocket-server/pom.xml index cd153b03f7f..3902157e55b 100644 --- a/jetty-websocket/websocket-server/pom.xml +++ b/jetty-websocket/websocket-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 diff --git a/jetty-websocket/websocket-servlet/pom.xml b/jetty-websocket/websocket-servlet/pom.xml index 3398ade69c9..fbfe4161cfd 100644 --- a/jetty-websocket/websocket-servlet/pom.xml +++ b/jetty-websocket/websocket-servlet/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 diff --git a/jetty-xml/pom.xml b/jetty-xml/pom.xml index e651f840183..b67e5c109b3 100644 --- a/jetty-xml/pom.xml +++ b/jetty-xml/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jetty-xml diff --git a/pom.xml b/pom.xml index 58667c8c7c7..db26676e6b3 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ 23 jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 Jetty :: Project http://www.eclipse.org/jetty pom diff --git a/tests/pom.xml b/tests/pom.xml index a42c15fedcd..400630bdade 100644 --- a/tests/pom.xml +++ b/tests/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty jetty-project - 9.2.26-SNAPSHOT + 9.2.26.v20180806 ../pom.xml org.eclipse.jetty.tests diff --git a/tests/test-continuation/pom.xml b/tests/test-continuation/pom.xml index 5ee8ccd12a4..8ef796a4201 100644 --- a/tests/test-continuation/pom.xml +++ b/tests/test-continuation/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 ../pom.xml 4.0.0 diff --git a/tests/test-integration/pom.xml b/tests/test-integration/pom.xml index a549315d293..5bbdd42c1d7 100644 --- a/tests/test-integration/pom.xml +++ b/tests/test-integration/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 test-integration diff --git a/tests/test-jmx/jmx-webapp-it/pom.xml b/tests/test-jmx/jmx-webapp-it/pom.xml index 8d8cb04e8d3..26b14bea2c9 100644 --- a/tests/test-jmx/jmx-webapp-it/pom.xml +++ b/tests/test-jmx/jmx-webapp-it/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests test-jmx-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 jmx-webapp-it diff --git a/tests/test-jmx/jmx-webapp/pom.xml b/tests/test-jmx/jmx-webapp/pom.xml index deb0b3d23ac..d0d94c604ac 100644 --- a/tests/test-jmx/jmx-webapp/pom.xml +++ b/tests/test-jmx/jmx-webapp/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-jmx-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 jmx-webapp war diff --git a/tests/test-jmx/pom.xml b/tests/test-jmx/pom.xml index aee3685f95f..2562e237c47 100644 --- a/tests/test-jmx/pom.xml +++ b/tests/test-jmx/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 4.0.0 test-jmx-parent diff --git a/tests/test-loginservice/pom.xml b/tests/test-loginservice/pom.xml index 06bbbf74829..d9d9ab403be 100644 --- a/tests/test-loginservice/pom.xml +++ b/tests/test-loginservice/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 test-loginservice Jetty Tests :: Login Service diff --git a/tests/test-quickstart/pom.xml b/tests/test-quickstart/pom.xml index 6b97be6e4e1..2a48f2438fc 100644 --- a/tests/test-quickstart/pom.xml +++ b/tests/test-quickstart/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 ../pom.xml 4.0.0 diff --git a/tests/test-sessions/pom.xml b/tests/test-sessions/pom.xml index edb434c81e4..1d894e7e6bf 100644 --- a/tests/test-sessions/pom.xml +++ b/tests/test-sessions/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 test-sessions-parent Jetty Tests :: Sessions :: Parent diff --git a/tests/test-sessions/test-hash-sessions/pom.xml b/tests/test-sessions/test-hash-sessions/pom.xml index 0e5089305f6..375e8ecc4ed 100644 --- a/tests/test-sessions/test-hash-sessions/pom.xml +++ b/tests/test-sessions/test-hash-sessions/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 test-hash-sessions Jetty Tests :: Sessions :: Hash diff --git a/tests/test-sessions/test-jdbc-sessions/pom.xml b/tests/test-sessions/test-jdbc-sessions/pom.xml index 4ce7881ca06..025717bc05d 100644 --- a/tests/test-sessions/test-jdbc-sessions/pom.xml +++ b/tests/test-sessions/test-jdbc-sessions/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 test-jdbc-sessions Jetty Tests :: Sessions :: JDBC diff --git a/tests/test-sessions/test-mongodb-sessions/pom.xml b/tests/test-sessions/test-mongodb-sessions/pom.xml index eef996be78e..55d3a1398f5 100644 --- a/tests/test-sessions/test-mongodb-sessions/pom.xml +++ b/tests/test-sessions/test-mongodb-sessions/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 test-mongodb-sessions Jetty Tests :: Sessions :: Mongo diff --git a/tests/test-sessions/test-sessions-common/pom.xml b/tests/test-sessions/test-sessions-common/pom.xml index 70cda9b32f9..9b33930fb0e 100644 --- a/tests/test-sessions/test-sessions-common/pom.xml +++ b/tests/test-sessions/test-sessions-common/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 test-sessions-common Jetty Tests :: Sessions :: Common diff --git a/tests/test-webapps/pom.xml b/tests/test-webapps/pom.xml index ce95b6d441c..0b3f7d6a4dd 100644 --- a/tests/test-webapps/pom.xml +++ b/tests/test-webapps/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 ../pom.xml test-webapps-parent diff --git a/tests/test-webapps/test-jaas-webapp/pom.xml b/tests/test-webapps/test-jaas-webapp/pom.xml index b110679b351..d339f3fff94 100644 --- a/tests/test-webapps/test-jaas-webapp/pom.xml +++ b/tests/test-webapps/test-jaas-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 test-jaas-webapp Jetty Tests :: WebApp :: JAAS diff --git a/tests/test-webapps/test-jetty-webapp/pom.xml b/tests/test-webapps/test-jetty-webapp/pom.xml index d46692b5a51..25f15ec6afe 100644 --- a/tests/test-webapps/test-jetty-webapp/pom.xml +++ b/tests/test-webapps/test-jetty-webapp/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 ../pom.xml 4.0.0 diff --git a/tests/test-webapps/test-jndi-webapp/pom.xml b/tests/test-webapps/test-jndi-webapp/pom.xml index 8f3ca7d141d..20208049b42 100644 --- a/tests/test-webapps/test-jndi-webapp/pom.xml +++ b/tests/test-webapps/test-jndi-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 test-jndi-webapp Jetty Tests :: WebApp :: JNDI diff --git a/tests/test-webapps/test-mock-resources/pom.xml b/tests/test-webapps/test-mock-resources/pom.xml index 0232ced3d3a..5bb2975e126 100644 --- a/tests/test-webapps/test-mock-resources/pom.xml +++ b/tests/test-webapps/test-mock-resources/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 Jetty Tests :: WebApp :: Mock Resources test-mock-resources diff --git a/tests/test-webapps/test-proxy-webapp/pom.xml b/tests/test-webapps/test-proxy-webapp/pom.xml index 16265cc08e0..8f4c62e5c39 100644 --- a/tests/test-webapps/test-proxy-webapp/pom.xml +++ b/tests/test-webapps/test-proxy-webapp/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 ../pom.xml 4.0.0 diff --git a/tests/test-webapps/test-servlet-spec/pom.xml b/tests/test-webapps/test-servlet-spec/pom.xml index 5e03a728374..debb66d1600 100644 --- a/tests/test-webapps/test-servlet-spec/pom.xml +++ b/tests/test-webapps/test-servlet-spec/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 test-servlet-spec-parent Jetty Tests :: Spec Test WebApp :: Parent diff --git a/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml b/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml index c3a7b03e1cc..fa13db399cc 100644 --- a/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml +++ b/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-servlet-spec-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 test-container-initializer jar diff --git a/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml b/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml index d778d049004..975d778e406 100644 --- a/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml +++ b/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-servlet-spec-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 Jetty Tests :: Webapps :: Spec Webapp test-spec-webapp diff --git a/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml b/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml index 6a8fb4bbcaf..ace589208f8 100644 --- a/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml +++ b/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-servlet-spec-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 Jetty Tests :: WebApp :: Servlet Spec :: Fragment Jar org.eclipse.jetty.tests diff --git a/tests/test-webapps/test-webapp-rfc2616/pom.xml b/tests/test-webapps/test-webapp-rfc2616/pom.xml index 6c9762ab738..4ebd1f4ccae 100644 --- a/tests/test-webapps/test-webapp-rfc2616/pom.xml +++ b/tests/test-webapps/test-webapp-rfc2616/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.26-SNAPSHOT + 9.2.26.v20180806 test-webapp-rfc2616 Jetty Tests :: WebApp :: RFC2616 From 516d93c488a92278114fbd3e46a9d9f8ab97a451 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Mon, 6 Aug 2018 11:33:22 -0500 Subject: [PATCH 005/931] Updating to version 9.2.27-SNAPSHOT --- VERSION.txt | 2 ++ aggregates/jetty-all/pom.xml | 2 +- apache-jsp/pom.xml | 2 +- apache-jstl/pom.xml | 2 +- examples/async-rest/async-rest-jar/pom.xml | 2 +- examples/async-rest/async-rest-webapp/pom.xml | 2 +- examples/async-rest/pom.xml | 2 +- examples/embedded/pom.xml | 2 +- examples/pom.xml | 2 +- jetty-alpn/jetty-alpn-client/pom.xml | 2 +- jetty-alpn/jetty-alpn-server/pom.xml | 2 +- jetty-alpn/pom.xml | 2 +- jetty-annotations/pom.xml | 2 +- jetty-ant/pom.xml | 2 +- jetty-cdi/pom.xml | 2 +- jetty-client/pom.xml | 2 +- jetty-continuation/pom.xml | 2 +- jetty-deploy/pom.xml | 2 +- jetty-distribution/pom.xml | 2 +- jetty-fcgi/fcgi-client/pom.xml | 2 +- jetty-fcgi/fcgi-server/pom.xml | 2 +- jetty-fcgi/pom.xml | 2 +- jetty-http-spi/pom.xml | 2 +- jetty-http/pom.xml | 2 +- jetty-io/pom.xml | 2 +- jetty-jaas/pom.xml | 2 +- jetty-jaspi/pom.xml | 2 +- jetty-jmx/pom.xml | 2 +- jetty-jndi/pom.xml | 2 +- jetty-jsp/pom.xml | 2 +- jetty-jspc-maven-plugin/pom.xml | 2 +- jetty-maven-plugin/pom.xml | 2 +- jetty-monitor/pom.xml | 2 +- jetty-nosql/pom.xml | 2 +- jetty-osgi/jetty-osgi-alpn/pom.xml | 2 +- jetty-osgi/jetty-osgi-boot-jsp/pom.xml | 2 +- jetty-osgi/jetty-osgi-boot-warurl/pom.xml | 2 +- jetty-osgi/jetty-osgi-boot/pom.xml | 2 +- jetty-osgi/jetty-osgi-httpservice/pom.xml | 2 +- jetty-osgi/pom.xml | 2 +- jetty-osgi/test-jetty-osgi-context/pom.xml | 2 +- jetty-osgi/test-jetty-osgi-webapp/pom.xml | 2 +- jetty-osgi/test-jetty-osgi/pom.xml | 2 +- jetty-plus/pom.xml | 2 +- jetty-proxy/pom.xml | 2 +- jetty-quickstart/pom.xml | 2 +- jetty-rewrite/pom.xml | 2 +- jetty-runner/pom.xml | 2 +- jetty-security/pom.xml | 2 +- jetty-server/pom.xml | 2 +- jetty-servlet/pom.xml | 2 +- jetty-servlets/pom.xml | 2 +- jetty-spdy/pom.xml | 2 +- jetty-spdy/spdy-alpn-tests/pom.xml | 2 +- jetty-spdy/spdy-client/pom.xml | 2 +- jetty-spdy/spdy-core/pom.xml | 2 +- jetty-spdy/spdy-example-webapp/pom.xml | 2 +- jetty-spdy/spdy-http-client-transport/pom.xml | 2 +- jetty-spdy/spdy-http-common/pom.xml | 2 +- jetty-spdy/spdy-http-server/pom.xml | 2 +- jetty-spdy/spdy-server/pom.xml | 2 +- jetty-spring/pom.xml | 2 +- jetty-start/pom.xml | 2 +- jetty-util-ajax/pom.xml | 2 +- jetty-util/pom.xml | 2 +- jetty-webapp/pom.xml | 2 +- jetty-websocket/javax-websocket-client-impl/pom.xml | 2 +- jetty-websocket/javax-websocket-server-impl/pom.xml | 2 +- jetty-websocket/pom.xml | 2 +- jetty-websocket/websocket-api/pom.xml | 2 +- jetty-websocket/websocket-client/pom.xml | 2 +- jetty-websocket/websocket-common/pom.xml | 2 +- jetty-websocket/websocket-server/pom.xml | 2 +- jetty-websocket/websocket-servlet/pom.xml | 2 +- jetty-xml/pom.xml | 2 +- pom.xml | 2 +- tests/pom.xml | 2 +- tests/test-continuation/pom.xml | 2 +- tests/test-integration/pom.xml | 2 +- tests/test-jmx/jmx-webapp-it/pom.xml | 2 +- tests/test-jmx/jmx-webapp/pom.xml | 2 +- tests/test-jmx/pom.xml | 2 +- tests/test-loginservice/pom.xml | 2 +- tests/test-quickstart/pom.xml | 2 +- tests/test-sessions/pom.xml | 2 +- tests/test-sessions/test-hash-sessions/pom.xml | 2 +- tests/test-sessions/test-jdbc-sessions/pom.xml | 2 +- tests/test-sessions/test-mongodb-sessions/pom.xml | 2 +- tests/test-sessions/test-sessions-common/pom.xml | 2 +- tests/test-webapps/pom.xml | 2 +- tests/test-webapps/test-jaas-webapp/pom.xml | 2 +- tests/test-webapps/test-jetty-webapp/pom.xml | 2 +- tests/test-webapps/test-jndi-webapp/pom.xml | 2 +- tests/test-webapps/test-mock-resources/pom.xml | 2 +- tests/test-webapps/test-proxy-webapp/pom.xml | 2 +- tests/test-webapps/test-servlet-spec/pom.xml | 2 +- .../test-servlet-spec/test-container-initializer/pom.xml | 2 +- tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml | 2 +- tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml | 2 +- tests/test-webapps/test-webapp-rfc2616/pom.xml | 2 +- 100 files changed, 101 insertions(+), 99 deletions(-) diff --git a/VERSION.txt b/VERSION.txt index 5d07ac103e4..2fe4ae07f17 100644 --- a/VERSION.txt +++ b/VERSION.txt @@ -1,3 +1,5 @@ +jetty-9.2.27-SNAPSHOT + jetty-9.2.26.v20180806 - 06 August 2018 + 2777 Workaround for Conscrypt's ssl == null diff --git a/aggregates/jetty-all/pom.xml b/aggregates/jetty-all/pom.xml index ed0ead9f890..84f5832f730 100644 --- a/aggregates/jetty-all/pom.xml +++ b/aggregates/jetty-all/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT ../../pom.xml 4.0.0 diff --git a/apache-jsp/pom.xml b/apache-jsp/pom.xml index 9bfe3c45ce9..48c5b7afa75 100644 --- a/apache-jsp/pom.xml +++ b/apache-jsp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 apache-jsp diff --git a/apache-jstl/pom.xml b/apache-jstl/pom.xml index aec74571ccb..65a1824f9f1 100644 --- a/apache-jstl/pom.xml +++ b/apache-jstl/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 apache-jstl diff --git a/examples/async-rest/async-rest-jar/pom.xml b/examples/async-rest/async-rest-jar/pom.xml index e380e3f9a77..443cd64ba24 100644 --- a/examples/async-rest/async-rest-jar/pom.xml +++ b/examples/async-rest/async-rest-jar/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty example-async-rest - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 org.eclipse.jetty.example-async-rest diff --git a/examples/async-rest/async-rest-webapp/pom.xml b/examples/async-rest/async-rest-webapp/pom.xml index 4820813e79e..fcc3e2b4d3f 100644 --- a/examples/async-rest/async-rest-webapp/pom.xml +++ b/examples/async-rest/async-rest-webapp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty example-async-rest - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 org.eclipse.jetty.example-async-rest diff --git a/examples/async-rest/pom.xml b/examples/async-rest/pom.xml index 241d39d2546..e8a8448f167 100644 --- a/examples/async-rest/pom.xml +++ b/examples/async-rest/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.examples examples-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT ../pom.xml 4.0.0 diff --git a/examples/embedded/pom.xml b/examples/embedded/pom.xml index fb31c5b0405..ad63d3a2001 100644 --- a/examples/embedded/pom.xml +++ b/examples/embedded/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.examples examples-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT ../pom.xml 4.0.0 diff --git a/examples/pom.xml b/examples/pom.xml index 0c0075d5bf6..885af48aa09 100644 --- a/examples/pom.xml +++ b/examples/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT ../pom.xml org.eclipse.jetty.examples diff --git a/jetty-alpn/jetty-alpn-client/pom.xml b/jetty-alpn/jetty-alpn-client/pom.xml index d0616121e41..31e7baa17e9 100644 --- a/jetty-alpn/jetty-alpn-client/pom.xml +++ b/jetty-alpn/jetty-alpn-client/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-alpn-client diff --git a/jetty-alpn/jetty-alpn-server/pom.xml b/jetty-alpn/jetty-alpn-server/pom.xml index de68df7858c..7f31167a105 100644 --- a/jetty-alpn/jetty-alpn-server/pom.xml +++ b/jetty-alpn/jetty-alpn-server/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-alpn-server diff --git a/jetty-alpn/pom.xml b/jetty-alpn/pom.xml index 85154357a90..8faa43a968e 100644 --- a/jetty-alpn/pom.xml +++ b/jetty-alpn/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-alpn-parent diff --git a/jetty-annotations/pom.xml b/jetty-annotations/pom.xml index 31ee1e8e093..8a51ae812c0 100644 --- a/jetty-annotations/pom.xml +++ b/jetty-annotations/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-annotations diff --git a/jetty-ant/pom.xml b/jetty-ant/pom.xml index 29fbc436287..b597a2cd263 100644 --- a/jetty-ant/pom.xml +++ b/jetty-ant/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-ant diff --git a/jetty-cdi/pom.xml b/jetty-cdi/pom.xml index c18f7fba7ab..8b4666a6c88 100644 --- a/jetty-cdi/pom.xml +++ b/jetty-cdi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-cdi diff --git a/jetty-client/pom.xml b/jetty-client/pom.xml index defad19b51d..0e8e3a24370 100644 --- a/jetty-client/pom.xml +++ b/jetty-client/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 diff --git a/jetty-continuation/pom.xml b/jetty-continuation/pom.xml index f54695f42d2..f7b874d3fc3 100644 --- a/jetty-continuation/pom.xml +++ b/jetty-continuation/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-continuation diff --git a/jetty-deploy/pom.xml b/jetty-deploy/pom.xml index c501094dc3e..c78d6c1d1fb 100644 --- a/jetty-deploy/pom.xml +++ b/jetty-deploy/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-deploy diff --git a/jetty-distribution/pom.xml b/jetty-distribution/pom.xml index 661ca0ca033..b7c67a5d177 100644 --- a/jetty-distribution/pom.xml +++ b/jetty-distribution/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT jetty-distribution Jetty :: Distribution Assemblies diff --git a/jetty-fcgi/fcgi-client/pom.xml b/jetty-fcgi/fcgi-client/pom.xml index 64743578fb9..10a580a0fb4 100644 --- a/jetty-fcgi/fcgi-client/pom.xml +++ b/jetty-fcgi/fcgi-client/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.fcgi fcgi-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 diff --git a/jetty-fcgi/fcgi-server/pom.xml b/jetty-fcgi/fcgi-server/pom.xml index 03b552836eb..e617a1f270a 100644 --- a/jetty-fcgi/fcgi-server/pom.xml +++ b/jetty-fcgi/fcgi-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.fcgi fcgi-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 diff --git a/jetty-fcgi/pom.xml b/jetty-fcgi/pom.xml index 7cca2e55ecd..ec7243205df 100644 --- a/jetty-fcgi/pom.xml +++ b/jetty-fcgi/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 diff --git a/jetty-http-spi/pom.xml b/jetty-http-spi/pom.xml index 7d2ba0256ca..e861e66c3e9 100644 --- a/jetty-http-spi/pom.xml +++ b/jetty-http-spi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-http-spi diff --git a/jetty-http/pom.xml b/jetty-http/pom.xml index d033f367bea..8c786b8f2b8 100644 --- a/jetty-http/pom.xml +++ b/jetty-http/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-http diff --git a/jetty-io/pom.xml b/jetty-io/pom.xml index 0221e56b829..c070adeb1a4 100644 --- a/jetty-io/pom.xml +++ b/jetty-io/pom.xml @@ -2,7 +2,7 @@ jetty-project org.eclipse.jetty - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-io diff --git a/jetty-jaas/pom.xml b/jetty-jaas/pom.xml index c86cda58457..8b02e3839d2 100644 --- a/jetty-jaas/pom.xml +++ b/jetty-jaas/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-jaas diff --git a/jetty-jaspi/pom.xml b/jetty-jaspi/pom.xml index b6d9057cd33..5e4ea10687e 100644 --- a/jetty-jaspi/pom.xml +++ b/jetty-jaspi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-jaspi diff --git a/jetty-jmx/pom.xml b/jetty-jmx/pom.xml index 7d0f0c31d00..3672e08b445 100644 --- a/jetty-jmx/pom.xml +++ b/jetty-jmx/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-jmx diff --git a/jetty-jndi/pom.xml b/jetty-jndi/pom.xml index 1fded7d9ed8..ad832aa6b59 100644 --- a/jetty-jndi/pom.xml +++ b/jetty-jndi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-jndi diff --git a/jetty-jsp/pom.xml b/jetty-jsp/pom.xml index fb62079098f..ea6c8ac3e16 100644 --- a/jetty-jsp/pom.xml +++ b/jetty-jsp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-jsp diff --git a/jetty-jspc-maven-plugin/pom.xml b/jetty-jspc-maven-plugin/pom.xml index 81414fff871..f34604fb72d 100644 --- a/jetty-jspc-maven-plugin/pom.xml +++ b/jetty-jspc-maven-plugin/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-jspc-maven-plugin diff --git a/jetty-maven-plugin/pom.xml b/jetty-maven-plugin/pom.xml index 83790efb866..f64f66e47f8 100644 --- a/jetty-maven-plugin/pom.xml +++ b/jetty-maven-plugin/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-maven-plugin diff --git a/jetty-monitor/pom.xml b/jetty-monitor/pom.xml index 891c7f69d68..ee1ff3a7665 100644 --- a/jetty-monitor/pom.xml +++ b/jetty-monitor/pom.xml @@ -19,7 +19,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-monitor diff --git a/jetty-nosql/pom.xml b/jetty-nosql/pom.xml index 39618771fae..81833e69e09 100644 --- a/jetty-nosql/pom.xml +++ b/jetty-nosql/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-nosql diff --git a/jetty-osgi/jetty-osgi-alpn/pom.xml b/jetty-osgi/jetty-osgi-alpn/pom.xml index d664c0f7d08..b708db21574 100644 --- a/jetty-osgi/jetty-osgi-alpn/pom.xml +++ b/jetty-osgi/jetty-osgi-alpn/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-osgi-alpn diff --git a/jetty-osgi/jetty-osgi-boot-jsp/pom.xml b/jetty-osgi/jetty-osgi-boot-jsp/pom.xml index 93efface4d5..7c3339cb7ab 100644 --- a/jetty-osgi/jetty-osgi-boot-jsp/pom.xml +++ b/jetty-osgi/jetty-osgi-boot-jsp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-osgi-boot-jsp diff --git a/jetty-osgi/jetty-osgi-boot-warurl/pom.xml b/jetty-osgi/jetty-osgi-boot-warurl/pom.xml index 28db3086b56..2b4fb085909 100644 --- a/jetty-osgi/jetty-osgi-boot-warurl/pom.xml +++ b/jetty-osgi/jetty-osgi-boot-warurl/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT ../pom.xml 4.0.0 diff --git a/jetty-osgi/jetty-osgi-boot/pom.xml b/jetty-osgi/jetty-osgi-boot/pom.xml index c8661b94c56..60bee9cd7b5 100644 --- a/jetty-osgi/jetty-osgi-boot/pom.xml +++ b/jetty-osgi/jetty-osgi-boot/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-osgi-boot diff --git a/jetty-osgi/jetty-osgi-httpservice/pom.xml b/jetty-osgi/jetty-osgi-httpservice/pom.xml index 929abf75b3e..95d7c9aa8b2 100644 --- a/jetty-osgi/jetty-osgi-httpservice/pom.xml +++ b/jetty-osgi/jetty-osgi-httpservice/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-httpservice diff --git a/jetty-osgi/pom.xml b/jetty-osgi/pom.xml index 7776a757012..8a60580773e 100644 --- a/jetty-osgi/pom.xml +++ b/jetty-osgi/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT org.eclipse.jetty.osgi jetty-osgi-project diff --git a/jetty-osgi/test-jetty-osgi-context/pom.xml b/jetty-osgi/test-jetty-osgi-context/pom.xml index 42df47f5e5e..40f32beec27 100644 --- a/jetty-osgi/test-jetty-osgi-context/pom.xml +++ b/jetty-osgi/test-jetty-osgi-context/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 test-jetty-osgi-context diff --git a/jetty-osgi/test-jetty-osgi-webapp/pom.xml b/jetty-osgi/test-jetty-osgi-webapp/pom.xml index dbe5e946f63..077376c7a5b 100644 --- a/jetty-osgi/test-jetty-osgi-webapp/pom.xml +++ b/jetty-osgi/test-jetty-osgi-webapp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT ../pom.xml 4.0.0 diff --git a/jetty-osgi/test-jetty-osgi/pom.xml b/jetty-osgi/test-jetty-osgi/pom.xml index 74e82fa7b1c..570074ecc25 100644 --- a/jetty-osgi/test-jetty-osgi/pom.xml +++ b/jetty-osgi/test-jetty-osgi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT ../pom.xml 4.0.0 diff --git a/jetty-plus/pom.xml b/jetty-plus/pom.xml index 8b4fe5de358..62a7c335a3d 100644 --- a/jetty-plus/pom.xml +++ b/jetty-plus/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-plus diff --git a/jetty-proxy/pom.xml b/jetty-proxy/pom.xml index f05370e7c40..d984de9e7b4 100644 --- a/jetty-proxy/pom.xml +++ b/jetty-proxy/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-proxy diff --git a/jetty-quickstart/pom.xml b/jetty-quickstart/pom.xml index e25a2d20abc..9ad6faf3045 100644 --- a/jetty-quickstart/pom.xml +++ b/jetty-quickstart/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 org.eclipse.jetty diff --git a/jetty-rewrite/pom.xml b/jetty-rewrite/pom.xml index 1bf24b1b699..86d2951fd7c 100644 --- a/jetty-rewrite/pom.xml +++ b/jetty-rewrite/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-rewrite diff --git a/jetty-runner/pom.xml b/jetty-runner/pom.xml index c48e5dcc2a0..92864ba5770 100644 --- a/jetty-runner/pom.xml +++ b/jetty-runner/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-runner diff --git a/jetty-security/pom.xml b/jetty-security/pom.xml index eb342dd69f2..634f3ea90e9 100644 --- a/jetty-security/pom.xml +++ b/jetty-security/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-security diff --git a/jetty-server/pom.xml b/jetty-server/pom.xml index 4b050113c57..6de3073cf5a 100644 --- a/jetty-server/pom.xml +++ b/jetty-server/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-server diff --git a/jetty-servlet/pom.xml b/jetty-servlet/pom.xml index ed45020d79b..37c0197c533 100644 --- a/jetty-servlet/pom.xml +++ b/jetty-servlet/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-servlet diff --git a/jetty-servlets/pom.xml b/jetty-servlets/pom.xml index 676d1248a3f..0ef30d6a6d3 100644 --- a/jetty-servlets/pom.xml +++ b/jetty-servlets/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-servlets diff --git a/jetty-spdy/pom.xml b/jetty-spdy/pom.xml index 0964acced83..aee083e135e 100644 --- a/jetty-spdy/pom.xml +++ b/jetty-spdy/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 diff --git a/jetty-spdy/spdy-alpn-tests/pom.xml b/jetty-spdy/spdy-alpn-tests/pom.xml index 1cd632188e8..1ff5db8d963 100644 --- a/jetty-spdy/spdy-alpn-tests/pom.xml +++ b/jetty-spdy/spdy-alpn-tests/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 diff --git a/jetty-spdy/spdy-client/pom.xml b/jetty-spdy/spdy-client/pom.xml index 60d0beb43a8..d8e2a5e95a8 100644 --- a/jetty-spdy/spdy-client/pom.xml +++ b/jetty-spdy/spdy-client/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 diff --git a/jetty-spdy/spdy-core/pom.xml b/jetty-spdy/spdy-core/pom.xml index 0171b96124d..d08d1bba459 100644 --- a/jetty-spdy/spdy-core/pom.xml +++ b/jetty-spdy/spdy-core/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 diff --git a/jetty-spdy/spdy-example-webapp/pom.xml b/jetty-spdy/spdy-example-webapp/pom.xml index 0df85ac68d2..edd9e8ce3ce 100644 --- a/jetty-spdy/spdy-example-webapp/pom.xml +++ b/jetty-spdy/spdy-example-webapp/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 spdy-example-webapp diff --git a/jetty-spdy/spdy-http-client-transport/pom.xml b/jetty-spdy/spdy-http-client-transport/pom.xml index 1689cea8086..ce96fa4a9ee 100644 --- a/jetty-spdy/spdy-http-client-transport/pom.xml +++ b/jetty-spdy/spdy-http-client-transport/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 diff --git a/jetty-spdy/spdy-http-common/pom.xml b/jetty-spdy/spdy-http-common/pom.xml index 270139655ff..1ecabb8fde0 100644 --- a/jetty-spdy/spdy-http-common/pom.xml +++ b/jetty-spdy/spdy-http-common/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 diff --git a/jetty-spdy/spdy-http-server/pom.xml b/jetty-spdy/spdy-http-server/pom.xml index 4041c36732f..734e4fb14e5 100644 --- a/jetty-spdy/spdy-http-server/pom.xml +++ b/jetty-spdy/spdy-http-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 spdy-http-server diff --git a/jetty-spdy/spdy-server/pom.xml b/jetty-spdy/spdy-server/pom.xml index a39327d2f97..217d6405771 100644 --- a/jetty-spdy/spdy-server/pom.xml +++ b/jetty-spdy/spdy-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.spdy spdy-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 diff --git a/jetty-spring/pom.xml b/jetty-spring/pom.xml index 3fe022aa4cc..a1dcddc169e 100644 --- a/jetty-spring/pom.xml +++ b/jetty-spring/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-spring diff --git a/jetty-start/pom.xml b/jetty-start/pom.xml index ee6f2b2b046..1b8f034da63 100644 --- a/jetty-start/pom.xml +++ b/jetty-start/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-start diff --git a/jetty-util-ajax/pom.xml b/jetty-util-ajax/pom.xml index 7c295181b88..ba232226234 100644 --- a/jetty-util-ajax/pom.xml +++ b/jetty-util-ajax/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-util-ajax diff --git a/jetty-util/pom.xml b/jetty-util/pom.xml index 57ab70fda37..541b1125a8e 100644 --- a/jetty-util/pom.xml +++ b/jetty-util/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-util diff --git a/jetty-webapp/pom.xml b/jetty-webapp/pom.xml index 4d10b681213..926a4cd8035 100644 --- a/jetty-webapp/pom.xml +++ b/jetty-webapp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-webapp diff --git a/jetty-websocket/javax-websocket-client-impl/pom.xml b/jetty-websocket/javax-websocket-client-impl/pom.xml index 9f8736ef2fc..08fecca5e28 100644 --- a/jetty-websocket/javax-websocket-client-impl/pom.xml +++ b/jetty-websocket/javax-websocket-client-impl/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/javax-websocket-server-impl/pom.xml b/jetty-websocket/javax-websocket-server-impl/pom.xml index ef63bf5af0c..85ea17f8ca9 100644 --- a/jetty-websocket/javax-websocket-server-impl/pom.xml +++ b/jetty-websocket/javax-websocket-server-impl/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/pom.xml b/jetty-websocket/pom.xml index 553765f47ec..dbc00f83f2b 100644 --- a/jetty-websocket/pom.xml +++ b/jetty-websocket/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/websocket-api/pom.xml b/jetty-websocket/websocket-api/pom.xml index d8798661a86..c8c9fbb3c3d 100644 --- a/jetty-websocket/websocket-api/pom.xml +++ b/jetty-websocket/websocket-api/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/websocket-client/pom.xml b/jetty-websocket/websocket-client/pom.xml index 528cce984cf..83f218b5d0d 100644 --- a/jetty-websocket/websocket-client/pom.xml +++ b/jetty-websocket/websocket-client/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/websocket-common/pom.xml b/jetty-websocket/websocket-common/pom.xml index c9d6f12d6a2..a550fc6f0a9 100644 --- a/jetty-websocket/websocket-common/pom.xml +++ b/jetty-websocket/websocket-common/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/websocket-server/pom.xml b/jetty-websocket/websocket-server/pom.xml index 3902157e55b..adfae0410a2 100644 --- a/jetty-websocket/websocket-server/pom.xml +++ b/jetty-websocket/websocket-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/websocket-servlet/pom.xml b/jetty-websocket/websocket-servlet/pom.xml index fbfe4161cfd..089fb800afe 100644 --- a/jetty-websocket/websocket-servlet/pom.xml +++ b/jetty-websocket/websocket-servlet/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 diff --git a/jetty-xml/pom.xml b/jetty-xml/pom.xml index b67e5c109b3..ad99d75856c 100644 --- a/jetty-xml/pom.xml +++ b/jetty-xml/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jetty-xml diff --git a/pom.xml b/pom.xml index db26676e6b3..fc489b8a551 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ 23 jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT Jetty :: Project http://www.eclipse.org/jetty pom diff --git a/tests/pom.xml b/tests/pom.xml index 400630bdade..15911b49972 100644 --- a/tests/pom.xml +++ b/tests/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty jetty-project - 9.2.26.v20180806 + 9.2.27-SNAPSHOT ../pom.xml org.eclipse.jetty.tests diff --git a/tests/test-continuation/pom.xml b/tests/test-continuation/pom.xml index 8ef796a4201..ee6b4f54d27 100644 --- a/tests/test-continuation/pom.xml +++ b/tests/test-continuation/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT ../pom.xml 4.0.0 diff --git a/tests/test-integration/pom.xml b/tests/test-integration/pom.xml index 5bbdd42c1d7..22d6dbb705e 100644 --- a/tests/test-integration/pom.xml +++ b/tests/test-integration/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 test-integration diff --git a/tests/test-jmx/jmx-webapp-it/pom.xml b/tests/test-jmx/jmx-webapp-it/pom.xml index 26b14bea2c9..6b4c877e49c 100644 --- a/tests/test-jmx/jmx-webapp-it/pom.xml +++ b/tests/test-jmx/jmx-webapp-it/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests test-jmx-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 jmx-webapp-it diff --git a/tests/test-jmx/jmx-webapp/pom.xml b/tests/test-jmx/jmx-webapp/pom.xml index d0d94c604ac..b5836c53d09 100644 --- a/tests/test-jmx/jmx-webapp/pom.xml +++ b/tests/test-jmx/jmx-webapp/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-jmx-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT jmx-webapp war diff --git a/tests/test-jmx/pom.xml b/tests/test-jmx/pom.xml index 2562e237c47..dbe38b67b5a 100644 --- a/tests/test-jmx/pom.xml +++ b/tests/test-jmx/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT 4.0.0 test-jmx-parent diff --git a/tests/test-loginservice/pom.xml b/tests/test-loginservice/pom.xml index d9d9ab403be..f81d8112243 100644 --- a/tests/test-loginservice/pom.xml +++ b/tests/test-loginservice/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT test-loginservice Jetty Tests :: Login Service diff --git a/tests/test-quickstart/pom.xml b/tests/test-quickstart/pom.xml index 2a48f2438fc..14bc941608f 100644 --- a/tests/test-quickstart/pom.xml +++ b/tests/test-quickstart/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT ../pom.xml 4.0.0 diff --git a/tests/test-sessions/pom.xml b/tests/test-sessions/pom.xml index 1d894e7e6bf..facd3f681c1 100644 --- a/tests/test-sessions/pom.xml +++ b/tests/test-sessions/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT test-sessions-parent Jetty Tests :: Sessions :: Parent diff --git a/tests/test-sessions/test-hash-sessions/pom.xml b/tests/test-sessions/test-hash-sessions/pom.xml index 375e8ecc4ed..1846f68e049 100644 --- a/tests/test-sessions/test-hash-sessions/pom.xml +++ b/tests/test-sessions/test-hash-sessions/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT test-hash-sessions Jetty Tests :: Sessions :: Hash diff --git a/tests/test-sessions/test-jdbc-sessions/pom.xml b/tests/test-sessions/test-jdbc-sessions/pom.xml index 025717bc05d..75282f128cc 100644 --- a/tests/test-sessions/test-jdbc-sessions/pom.xml +++ b/tests/test-sessions/test-jdbc-sessions/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT test-jdbc-sessions Jetty Tests :: Sessions :: JDBC diff --git a/tests/test-sessions/test-mongodb-sessions/pom.xml b/tests/test-sessions/test-mongodb-sessions/pom.xml index 55d3a1398f5..2ba303e53a3 100644 --- a/tests/test-sessions/test-mongodb-sessions/pom.xml +++ b/tests/test-sessions/test-mongodb-sessions/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT test-mongodb-sessions Jetty Tests :: Sessions :: Mongo diff --git a/tests/test-sessions/test-sessions-common/pom.xml b/tests/test-sessions/test-sessions-common/pom.xml index 9b33930fb0e..e42a35f24ba 100644 --- a/tests/test-sessions/test-sessions-common/pom.xml +++ b/tests/test-sessions/test-sessions-common/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT test-sessions-common Jetty Tests :: Sessions :: Common diff --git a/tests/test-webapps/pom.xml b/tests/test-webapps/pom.xml index 0b3f7d6a4dd..3b1608f2e57 100644 --- a/tests/test-webapps/pom.xml +++ b/tests/test-webapps/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests tests-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT ../pom.xml test-webapps-parent diff --git a/tests/test-webapps/test-jaas-webapp/pom.xml b/tests/test-webapps/test-jaas-webapp/pom.xml index d339f3fff94..71d64bbddab 100644 --- a/tests/test-webapps/test-jaas-webapp/pom.xml +++ b/tests/test-webapps/test-jaas-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT test-jaas-webapp Jetty Tests :: WebApp :: JAAS diff --git a/tests/test-webapps/test-jetty-webapp/pom.xml b/tests/test-webapps/test-jetty-webapp/pom.xml index 25f15ec6afe..9caaaf9089e 100644 --- a/tests/test-webapps/test-jetty-webapp/pom.xml +++ b/tests/test-webapps/test-jetty-webapp/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT ../pom.xml 4.0.0 diff --git a/tests/test-webapps/test-jndi-webapp/pom.xml b/tests/test-webapps/test-jndi-webapp/pom.xml index 20208049b42..934b703c9cb 100644 --- a/tests/test-webapps/test-jndi-webapp/pom.xml +++ b/tests/test-webapps/test-jndi-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT test-jndi-webapp Jetty Tests :: WebApp :: JNDI diff --git a/tests/test-webapps/test-mock-resources/pom.xml b/tests/test-webapps/test-mock-resources/pom.xml index 5bb2975e126..b5831ad89cb 100644 --- a/tests/test-webapps/test-mock-resources/pom.xml +++ b/tests/test-webapps/test-mock-resources/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT Jetty Tests :: WebApp :: Mock Resources test-mock-resources diff --git a/tests/test-webapps/test-proxy-webapp/pom.xml b/tests/test-webapps/test-proxy-webapp/pom.xml index 8f4c62e5c39..a037a816178 100644 --- a/tests/test-webapps/test-proxy-webapp/pom.xml +++ b/tests/test-webapps/test-proxy-webapp/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT ../pom.xml 4.0.0 diff --git a/tests/test-webapps/test-servlet-spec/pom.xml b/tests/test-webapps/test-servlet-spec/pom.xml index debb66d1600..a4bf8c7b138 100644 --- a/tests/test-webapps/test-servlet-spec/pom.xml +++ b/tests/test-webapps/test-servlet-spec/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT test-servlet-spec-parent Jetty Tests :: Spec Test WebApp :: Parent diff --git a/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml b/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml index fa13db399cc..d48a34d792d 100644 --- a/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml +++ b/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-servlet-spec-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT test-container-initializer jar diff --git a/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml b/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml index 975d778e406..536b0d4f030 100644 --- a/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml +++ b/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-servlet-spec-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT Jetty Tests :: Webapps :: Spec Webapp test-spec-webapp diff --git a/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml b/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml index ace589208f8..18bc5075c0a 100644 --- a/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml +++ b/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-servlet-spec-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT Jetty Tests :: WebApp :: Servlet Spec :: Fragment Jar org.eclipse.jetty.tests diff --git a/tests/test-webapps/test-webapp-rfc2616/pom.xml b/tests/test-webapps/test-webapp-rfc2616/pom.xml index 4ebd1f4ccae..f2192ab49ec 100644 --- a/tests/test-webapps/test-webapp-rfc2616/pom.xml +++ b/tests/test-webapps/test-webapp-rfc2616/pom.xml @@ -21,7 +21,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.2.26.v20180806 + 9.2.27-SNAPSHOT test-webapp-rfc2616 Jetty Tests :: WebApp :: RFC2616 From e7a6a079c78bce859c80fdb042e646874e802533 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Tue, 14 Aug 2018 15:32:37 -0500 Subject: [PATCH 006/931] Attempting to fix jetty-9.2.x build --- Jenkinsfile | 112 ++++++++++++++++++++++++++++++++-------------------- 1 file changed, 70 insertions(+), 42 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 9eb318be89f..f7760dc3152 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -2,12 +2,16 @@ node { // System Dependent Locations - def mvntool = tool name: 'maven3', type: 'hudson.tasks.Maven$MavenInstallation' + def mvntool = tool name: 'maven3.5', type: 'hudson.tasks.Maven$MavenInstallation' def jdktool = tool name: 'jdk7', type: 'hudson.model.JDK' + def mvnName = 'maven3.5' + def localRepo = "${env.JENKINS_HOME}/${env.EXECUTOR_NUMBER}" // ".repository" // + def settingsName = 'oss-settings.xml' + def mavenOpts = '-Xms1g -Xmx4g -XX:MaxPermSize=512m -Djava.awt.headless=true -Dhttps.protocols=TLSv1,TLSv1.1,TLSv1.2' // Environment List mvnEnv = ["PATH+MVN=${mvntool}/bin", "PATH+JDK=${jdktool}/bin", "JAVA_HOME=${jdktool}/", "MAVEN_HOME=${mvntool}"] - mvnEnv.add("MAVEN_OPTS=-Xms256m -Xmx1024m -XX:MaxPermSize=512m -Djava.awt.headless=true") + mvnEnv.add("MAVEN_OPTS=$mavenOpts") try { @@ -24,7 +28,15 @@ node { stage('Compile') { withEnv(mvnEnv) { timeout(time: 15, unit: 'MINUTES') { - sh "mvn -B clean install -Dtest=None" + withmaven( + maven: mvnName, + jdk: "$jdk", + publisherStrategy: 'EXPLICIT', + globalMavenSettingsConfig: settingsName, + mavenOpts: mavenOpts, + mavenLocalRepo: localRepo) { + sh "mvn -B clean install -Dtest=None" + } } } } @@ -38,7 +50,15 @@ node { stage('Javadoc') { withEnv(mvnEnv) { timeout(time: 15, unit: 'MINUTES') { - sh "mvn -B javadoc:javadoc" + withmaven( + maven: mvnName, + jdk: "$jdk", + publisherStrategy: 'EXPLICIT', + globalMavenSettingsConfig: settingsName, + mavenOpts: mavenOpts, + mavenLocalRepo: localRepo) { + sh "mvn -B javadoc:javadoc" + } } } } @@ -52,43 +72,51 @@ node { stage('Test') { withEnv(mvnEnv) { timeout(time: 60, unit: 'MINUTES') { - // Run test phase / ignore test failures - sh "mvn -B install -Dmaven.test.failure.ignore=true" - // Report failures in the jenkins UI - step([$class: 'JUnitResultArchiver', - testResults: '**/target/surefire-reports/TEST-*.xml']) - // Collect up the jacoco execution results - def jacocoExcludes = - // build tools - "**/org/eclipse/jetty/ant/**" + - ",**/org/eclipse/jetty/maven/**" + - ",**/org/eclipse/jetty/jspc/**" + - // example code / documentation - ",**/org/eclipse/jetty/embedded/**" + - ",**/org/eclipse/jetty/asyncrest/**" + - ",**/org/eclipse/jetty/demo/**" + - // special environments / late integrations - ",**/org/eclipse/jetty/gcloud/**" + - ",**/org/eclipse/jetty/infinispan/**" + - ",**/org/eclipse/jetty/osgi/**" + - ",**/org/eclipse/jetty/spring/**" + - ",**/org/eclipse/jetty/http/spi/**" + - // test classes - ",**/org/eclipse/jetty/tests/**" + - ",**/org/eclipse/jetty/test/**"; - step([$class: 'JacocoPublisher', - inclusionPattern: '**/org/eclipse/jetty/**/*.class', - exclusionPattern: jacocoExcludes, - execPattern: '**/target/jacoco.exec', - classPattern: '**/target/classes', - sourcePattern: '**/src/main/java']) - // Report on Maven and Javadoc warnings - step([$class: 'WarningsPublisher', - consoleParsers: [ - [parserName: 'Maven'], - [parserName: 'JavaDoc'], - [parserName: 'JavaC'] - ]]) + withmaven( + maven: mvnName, + jdk: "$jdk", + publisherStrategy: 'EXPLICIT', + globalMavenSettingsConfig: settingsName, + mavenOpts: mavenOpts, + mavenLocalRepo: localRepo) { + // Run test phase / ignore test failures + sh "mvn -B install -Dmaven.test.failure.ignore=true" + // Report failures in the jenkins UI + step([$class : 'JUnitResultArchiver', + testResults: '**/target/surefire-reports/TEST-*.xml']) + // Collect up the jacoco execution results + def jacocoExcludes = + // build tools + "**/org/eclipse/jetty/ant/**" + + ",**/org/eclipse/jetty/maven/**" + + ",**/org/eclipse/jetty/jspc/**" + + // example code / documentation + ",**/org/eclipse/jetty/embedded/**" + + ",**/org/eclipse/jetty/asyncrest/**" + + ",**/org/eclipse/jetty/demo/**" + + // special environments / late integrations + ",**/org/eclipse/jetty/gcloud/**" + + ",**/org/eclipse/jetty/infinispan/**" + + ",**/org/eclipse/jetty/osgi/**" + + ",**/org/eclipse/jetty/spring/**" + + ",**/org/eclipse/jetty/http/spi/**" + + // test classes + ",**/org/eclipse/jetty/tests/**" + + ",**/org/eclipse/jetty/test/**"; + step([$class: 'JacocoPublisher', + inclusionPattern: '**/org/eclipse/jetty/**/*.class', + exclusionPattern: jacocoExcludes, + execPattern: '**/target/jacoco.exec', + classPattern: '**/target/classes', + sourcePattern: '**/src/main/java']) + // Report on Maven and Javadoc warnings + step([$class: 'WarningsPublisher', + consoleParsers: [ + [parserName: 'Maven'], + [parserName: 'JavaDoc'], + [parserName: 'JavaC'] + ]]) + } } if(isUnstable()) { @@ -108,7 +136,7 @@ def isActiveBranch() { def branchName = "${env.BRANCH_NAME}" return ( branchName == "master" || - branchName.startsWith("jetty-") ); + ( branchName.startsWith("jetty-") && branchName.endsWith(".x") ) ) } // Test if the Jenkins Pipeline or Step has marked the From 589f4c04a40cf08a501ae6015b5b322da64abf83 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Tue, 14 Aug 2018 15:35:52 -0500 Subject: [PATCH 007/931] Attempting to fix jetty-9.2.x build --- Jenkinsfile | 124 ++++++++++------------------------------------------ 1 file changed, 24 insertions(+), 100 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index f7760dc3152..8a34460cef1 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -13,62 +13,42 @@ node { List mvnEnv = ["PATH+MVN=${mvntool}/bin", "PATH+JDK=${jdktool}/bin", "JAVA_HOME=${jdktool}/", "MAVEN_HOME=${mvntool}"] mvnEnv.add("MAVEN_OPTS=$mavenOpts") - try - { - stage('Checkout') { - checkout scm - } - } catch (Exception e) { - notifyBuild("Checkout Failure") - throw e + stage('Checkout') { + checkout scm } - try - { - stage('Compile') { - withEnv(mvnEnv) { - timeout(time: 15, unit: 'MINUTES') { - withmaven( - maven: mvnName, - jdk: "$jdk", - publisherStrategy: 'EXPLICIT', - globalMavenSettingsConfig: settingsName, - mavenOpts: mavenOpts, - mavenLocalRepo: localRepo) { - sh "mvn -B clean install -Dtest=None" - } + stage('Compile') { + withEnv(mvnEnv) { + timeout(time: 15, unit: 'MINUTES') { + withmaven( + maven: mvnName, + jdk: "$jdk", + publisherStrategy: 'EXPLICIT', + globalMavenSettingsConfig: settingsName, + mavenOpts: mavenOpts, + mavenLocalRepo: localRepo) { + sh "mvn -B clean install -Dtest=None" } } } - } catch(Exception e) { - notifyBuild("Compile Failure") - throw e } - try - { - stage('Javadoc') { - withEnv(mvnEnv) { - timeout(time: 15, unit: 'MINUTES') { - withmaven( - maven: mvnName, - jdk: "$jdk", - publisherStrategy: 'EXPLICIT', - globalMavenSettingsConfig: settingsName, - mavenOpts: mavenOpts, - mavenLocalRepo: localRepo) { - sh "mvn -B javadoc:javadoc" - } + stage('Javadoc') { + withEnv(mvnEnv) { + timeout(time: 15, unit: 'MINUTES') { + withmaven( + maven: mvnName, + jdk: "$jdk", + publisherStrategy: 'EXPLICIT', + globalMavenSettingsConfig: settingsName, + mavenOpts: mavenOpts, + mavenLocalRepo: localRepo) { + sh "mvn -B javadoc:javadoc" } } } - } catch(Exception e) { - notifyBuild("Javadoc Failure") - throw e } - try - { stage('Test') { withEnv(mvnEnv) { timeout(time: 60, unit: 'MINUTES') { @@ -118,64 +98,8 @@ node { ]]) } } - if(isUnstable()) - { - notifyBuild("Unstable / Test Errors") - } } } - } catch(Exception e) { - notifyBuild("Test Failure") - throw e - } } -// True if this build is part of the "active" branches -// for Jetty. -def isActiveBranch() -{ - def branchName = "${env.BRANCH_NAME}" - return ( branchName == "master" || - ( branchName.startsWith("jetty-") && branchName.endsWith(".x") ) ) -} - -// Test if the Jenkins Pipeline or Step has marked the -// current build as unstable -def isUnstable() -{ - return currentBuild.result == "UNSTABLE" -} - -// Send a notification about the build status -def notifyBuild(String buildStatus) -{ - if ( !isActiveBranch() ) - { - // don't send notifications on transient branches - return - } - - // default the value - buildStatus = buildStatus ?: "UNKNOWN" - - def email = "${env.EMAILADDRESS}" - def summary = "${env.JOB_NAME}#${env.BUILD_NUMBER} - ${buildStatus}" - def detail = """

Job: ${env.JOB_NAME} [#${env.BUILD_NUMBER}]

-

${buildStatus}

- - - - -
Build${env.BUILD_URL}
Console${env.BUILD_URL}console
Test Report${env.BUILD_URL}testReport/
- """ - - emailext ( - to: email, - subject: summary, - body: detail - ) - -} - - // vim: et:ts=2:sw=2:ft=groovy From 6ec3321c16b00fcc7f001935719f84b4e879b431 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Tue, 14 Aug 2018 15:37:39 -0500 Subject: [PATCH 008/931] Attempting to fix jetty-9.2.x build --- Jenkinsfile | 103 ++++++++++++++++++++++++++-------------------------- 1 file changed, 52 insertions(+), 51 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 8a34460cef1..5da4a893415 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,9 +1,10 @@ #!groovy -node { +node("linux") { // System Dependent Locations + def jdk = 'jdk7' def mvntool = tool name: 'maven3.5', type: 'hudson.tasks.Maven$MavenInstallation' - def jdktool = tool name: 'jdk7', type: 'hudson.model.JDK' + def jdktool = tool name: $jdk, type: 'hudson.model.JDK' def mvnName = 'maven3.5' def localRepo = "${env.JENKINS_HOME}/${env.EXECUTOR_NUMBER}" // ".repository" // def settingsName = 'oss-settings.xml' @@ -49,57 +50,57 @@ node { } } - stage('Test') { - withEnv(mvnEnv) { - timeout(time: 60, unit: 'MINUTES') { - withmaven( - maven: mvnName, - jdk: "$jdk", - publisherStrategy: 'EXPLICIT', - globalMavenSettingsConfig: settingsName, - mavenOpts: mavenOpts, - mavenLocalRepo: localRepo) { - // Run test phase / ignore test failures - sh "mvn -B install -Dmaven.test.failure.ignore=true" - // Report failures in the jenkins UI - step([$class : 'JUnitResultArchiver', - testResults: '**/target/surefire-reports/TEST-*.xml']) - // Collect up the jacoco execution results - def jacocoExcludes = - // build tools - "**/org/eclipse/jetty/ant/**" + - ",**/org/eclipse/jetty/maven/**" + - ",**/org/eclipse/jetty/jspc/**" + - // example code / documentation - ",**/org/eclipse/jetty/embedded/**" + - ",**/org/eclipse/jetty/asyncrest/**" + - ",**/org/eclipse/jetty/demo/**" + - // special environments / late integrations - ",**/org/eclipse/jetty/gcloud/**" + - ",**/org/eclipse/jetty/infinispan/**" + - ",**/org/eclipse/jetty/osgi/**" + - ",**/org/eclipse/jetty/spring/**" + - ",**/org/eclipse/jetty/http/spi/**" + - // test classes - ",**/org/eclipse/jetty/tests/**" + - ",**/org/eclipse/jetty/test/**"; - step([$class: 'JacocoPublisher', - inclusionPattern: '**/org/eclipse/jetty/**/*.class', - exclusionPattern: jacocoExcludes, - execPattern: '**/target/jacoco.exec', - classPattern: '**/target/classes', - sourcePattern: '**/src/main/java']) - // Report on Maven and Javadoc warnings - step([$class: 'WarningsPublisher', - consoleParsers: [ - [parserName: 'Maven'], - [parserName: 'JavaDoc'], - [parserName: 'JavaC'] - ]]) - } - } + stage('Test') { + withEnv(mvnEnv) { + timeout(time: 60, unit: 'MINUTES') { + withmaven( + maven: mvnName, + jdk: "$jdk", + publisherStrategy: 'EXPLICIT', + globalMavenSettingsConfig: settingsName, + mavenOpts: mavenOpts, + mavenLocalRepo: localRepo) { + // Run test phase / ignore test failures + sh "mvn -B install -Dmaven.test.failure.ignore=true" + // Report failures in the jenkins UI + step([$class : 'JUnitResultArchiver', + testResults: '**/target/surefire-reports/TEST-*.xml']) + // Collect up the jacoco execution results + def jacocoExcludes = + // build tools + "**/org/eclipse/jetty/ant/**" + + ",**/org/eclipse/jetty/maven/**" + + ",**/org/eclipse/jetty/jspc/**" + + // example code / documentation + ",**/org/eclipse/jetty/embedded/**" + + ",**/org/eclipse/jetty/asyncrest/**" + + ",**/org/eclipse/jetty/demo/**" + + // special environments / late integrations + ",**/org/eclipse/jetty/gcloud/**" + + ",**/org/eclipse/jetty/infinispan/**" + + ",**/org/eclipse/jetty/osgi/**" + + ",**/org/eclipse/jetty/spring/**" + + ",**/org/eclipse/jetty/http/spi/**" + + // test classes + ",**/org/eclipse/jetty/tests/**" + + ",**/org/eclipse/jetty/test/**"; + step([$class: 'JacocoPublisher', + inclusionPattern: '**/org/eclipse/jetty/**/*.class', + exclusionPattern: jacocoExcludes, + execPattern: '**/target/jacoco.exec', + classPattern: '**/target/classes', + sourcePattern: '**/src/main/java']) + // Report on Maven and Javadoc warnings + step([$class: 'WarningsPublisher', + consoleParsers: [ + [parserName: 'Maven'], + [parserName: 'JavaDoc'], + [parserName: 'JavaC'] + ]]) + } } } + } } // vim: et:ts=2:sw=2:ft=groovy From 283fa32e5962982a2f867b37d1557c966baef581 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Tue, 14 Aug 2018 15:39:08 -0500 Subject: [PATCH 009/931] Attempting to fix jetty-9.2.x build --- Jenkinsfile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 5da4a893415..9a355449f0e 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,10 +1,11 @@ #!groovy +def jdk = 'jdk7' + node("linux") { // System Dependent Locations - def jdk = 'jdk7' def mvntool = tool name: 'maven3.5', type: 'hudson.tasks.Maven$MavenInstallation' - def jdktool = tool name: $jdk, type: 'hudson.model.JDK' + def jdktool = tool name: "$jdk", type: 'hudson.model.JDK' def mvnName = 'maven3.5' def localRepo = "${env.JENKINS_HOME}/${env.EXECUTOR_NUMBER}" // ".repository" // def settingsName = 'oss-settings.xml' From 73d940680aa8bbc2fd521d1fe8026e6bd1c6a4d0 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Tue, 14 Aug 2018 15:39:58 -0500 Subject: [PATCH 010/931] Attempting to fix jetty-9.2.x build --- Jenkinsfile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 9a355449f0e..ad11acdc88a 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -22,7 +22,7 @@ node("linux") { stage('Compile') { withEnv(mvnEnv) { timeout(time: 15, unit: 'MINUTES') { - withmaven( + withMaven( maven: mvnName, jdk: "$jdk", publisherStrategy: 'EXPLICIT', @@ -38,7 +38,7 @@ node("linux") { stage('Javadoc') { withEnv(mvnEnv) { timeout(time: 15, unit: 'MINUTES') { - withmaven( + withMaven( maven: mvnName, jdk: "$jdk", publisherStrategy: 'EXPLICIT', @@ -54,7 +54,7 @@ node("linux") { stage('Test') { withEnv(mvnEnv) { timeout(time: 60, unit: 'MINUTES') { - withmaven( + withMaven( maven: mvnName, jdk: "$jdk", publisherStrategy: 'EXPLICIT', From e0a92f6181fcbc2cf168250cd66fbe5a37aa407b Mon Sep 17 00:00:00 2001 From: Roland Grunberg Date: Tue, 14 Aug 2018 19:26:37 -0400 Subject: [PATCH 011/931] Issue #2794 - Add profile for jar signing with eclipse-jarsigner-plugin. (#2803) Create a profile 'eclipse-sign' that is enabled when the property by the same name is defined, in order to handle the signing of Eclipse bundles by the configured signing service. Signed-off-by: Roland Grunberg --- pom.xml | 67 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) diff --git a/pom.xml b/pom.xml index fc489b8a551..c98ee1d6811 100644 --- a/pom.xml +++ b/pom.xml @@ -21,6 +21,8 @@ undefined undefined + 1.2.0 + 1.1.5 scm:git:https://github.com/eclipse/jetty.project.git @@ -1052,6 +1054,60 @@ 7.1.3.v20150130 + + eclipse-sign + + + eclipse-sign + + + + + + org.eclipse.tycho.extras + tycho-pack200a-plugin + ${tycho-version} + + + pack200-normalize + + normalize + + package + + + + + org.eclipse.cbi.maven.plugins + eclipse-jarsigner-plugin + ${cbi-plugins.version} + + + sign + package + + sign + + + + + + org.eclipse.tycho.extras + tycho-pack200b-plugin + ${tycho-version} + + + pack200-pack + + pack + + package + + + + + + 8u00 @@ -1461,4 +1517,15 @@ + + + + cbi-releases + https://repo.eclipse.org/content/repositories/cbi-releases/ + + false + + + + From 74e30605ed39cbe98a5838f94b680618f2330af2 Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Wed, 15 Aug 2018 22:10:26 +1000 Subject: [PATCH 012/931] should fix osgi test with missing dependencies (#2809) Signed-off-by: olivier lamy --- jetty-osgi/test-jetty-osgi/pom.xml | 3 +++ .../org/eclipse/jetty/osgi/test/TestJettyOSGiBootCore.java | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/jetty-osgi/test-jetty-osgi/pom.xml b/jetty-osgi/test-jetty-osgi/pom.xml index 570074ecc25..7b3316522a5 100644 --- a/jetty-osgi/test-jetty-osgi/pom.xml +++ b/jetty-osgi/test-jetty-osgi/pom.xml @@ -391,6 +391,9 @@ -Dmortbay-alpn-boot=${settings.localRepository}/org/mortbay/jetty/alpn/alpn-boot/${alpn.version}/alpn-boot-${alpn.version}.jar + + ${settings.localRepository} +
diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootCore.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootCore.java index 8baf71a67b8..519b78aae1b 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootCore.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootCore.java @@ -28,6 +28,7 @@ import java.util.List; import javax.inject.Inject; +import org.eclipse.jetty.util.StringUtil; import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; @@ -82,6 +83,10 @@ public class TestJettyOSGiBootCore { List + org.apache.maven.plugins maven-dependency-plugin + org.ops4j.pax.exam diff --git a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/CookiePatternRuleTest.java b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/CookiePatternRuleTest.java index 651fd354971..edfa3de5b24 100644 --- a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/CookiePatternRuleTest.java +++ b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/CookiePatternRuleTest.java @@ -42,7 +42,7 @@ import java.io.StringReader; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.*; -import static org.junit.Assert.fail; +import static org.junit.jupiter.api.Assertions.fail; public class CookiePatternRuleTest diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/CustomResourcesMonitorTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/CustomResourcesMonitorTest.java index 57b4a5fe9a4..0048f34fcdb 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/CustomResourcesMonitorTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/CustomResourcesMonitorTest.java @@ -27,7 +27,6 @@ import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; - import java.io.IOException; import java.io.InputStream; import java.net.Socket; @@ -38,7 +37,8 @@ import java.util.List; import java.util.stream.Collectors; import java.util.stream.Stream; -import static org.junit.Assert.*; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.junit.jupiter.api.Assertions.*; public class CustomResourcesMonitorTest { @@ -111,28 +111,14 @@ public class CustomResourcesMonitorTest InputStream input1 = socket1.getInputStream(); assertTrue(_fileOnDirectoryMonitor.isLowOnResources()); - try - { - input1.read(); - fail(); - } - catch (SocketTimeoutException expected) - { - } + assertThrows(SocketTimeoutException.class, () -> input1.read()); // Wait a couple of lowResources idleTimeouts. Thread.sleep(2 * lowResourcesIdleTimeout); // Verify the new socket is still open. assertTrue(_fileOnDirectoryMonitor.isLowOnResources()); - try - { - input1.read(); - fail(); - } - catch (SocketTimeoutException expected) - { - } + assertThrows(SocketTimeoutException.class, () -> input1.read()); Files.delete( tmpFile ); diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/LowResourcesMonitorTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/LowResourcesMonitorTest.java index 9d7bf40fcba..6cebfcdada6 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/LowResourcesMonitorTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/LowResourcesMonitorTest.java @@ -23,6 +23,7 @@ import org.eclipse.jetty.util.thread.QueuedThreadPool; import org.eclipse.jetty.util.thread.TimerScheduler; import org.hamcrest.Matchers; import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; @@ -38,7 +39,6 @@ import java.util.concurrent.CountDownLatch; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.equalTo; import static org.hamcrest.Matchers.not; -import static org.junit.Assert.fail; import static org.junit.jupiter.api.Assertions.*; public class LowResourcesMonitorTest @@ -248,28 +248,15 @@ public class LowResourcesMonitorTest InputStream input1 = socket1.getInputStream(); assertTrue(_lowResourcesMonitor.isLowOnResources()); - try - { - input1.read(); - fail(); - } - catch (SocketTimeoutException expected) - { - } + assertThrows( SocketTimeoutException.class, () -> input1.read()); // Wait a couple of lowResources idleTimeouts. Thread.sleep(2 * lowResourcesIdleTimeout); // Verify the new socket is still open. assertTrue(_lowResourcesMonitor.isLowOnResources()); - try - { - input1.read(); - fail(); - } - catch (SocketTimeoutException expected) - { - } + assertThrows( SocketTimeoutException.class, () -> input1.read()); + // Let the maxLowResourcesTime elapse. Thread.sleep(maxLowResourcesTime); diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/GzipHandlerTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/GzipHandlerTest.java index c720e0f3e15..48a39b7d2e7 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/GzipHandlerTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/GzipHandlerTest.java @@ -18,15 +18,26 @@ package org.eclipse.jetty.servlet; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.contains; -import static org.hamcrest.Matchers.containsString; -import static org.hamcrest.Matchers.equalToIgnoringCase; -import static org.hamcrest.Matchers.is; -import static org.hamcrest.Matchers.not; -import static org.hamcrest.Matchers.nullValue; -import static org.junit.jupiter.api.Assertions.assertEquals; +import org.eclipse.jetty.http.HttpTester; +import org.eclipse.jetty.server.LocalConnector; +import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.server.handler.gzip.GzipHandler; +import org.eclipse.jetty.util.IO; +import org.hamcrest.Matchers; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import javax.servlet.DispatcherType; +import javax.servlet.Filter; +import javax.servlet.FilterChain; +import javax.servlet.FilterConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; @@ -40,22 +51,9 @@ import java.util.Enumeration; import java.util.zip.GZIPInputStream; import java.util.zip.GZIPOutputStream; -import javax.servlet.*; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.eclipse.jetty.http.HttpTester; -import org.eclipse.jetty.server.Dispatcher; -import org.eclipse.jetty.server.LocalConnector; -import org.eclipse.jetty.server.Server; -import org.eclipse.jetty.server.handler.gzip.GzipHandler; -import org.eclipse.jetty.util.IO; -import org.hamcrest.Matchers; -import org.junit.Assert; -import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.*; +import static org.junit.jupiter.api.Assertions.assertEquals; @SuppressWarnings("serial") public class GzipHandlerTest @@ -616,9 +614,9 @@ public class GzipHandlerTest public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { if (request.getParameter("X-Content-Encoding")!=null) - Assert.assertEquals(-1,request.getContentLength()); + assertEquals(-1,request.getContentLength()); else if (request.getContentLength()>=0) - Assert.assertThat(request.getParameter("X-Content-Encoding"),Matchers.nullValue()); + assertThat(request.getParameter("X-Content-Encoding"),Matchers.nullValue()); chain.doFilter(request,response); } diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/TypeUtilTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/TypeUtilTest.java index dc103c1b1d4..6349a364fae 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/TypeUtilTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/TypeUtilTest.java @@ -21,10 +21,10 @@ package org.eclipse.jetty.util; import static org.hamcrest.CoreMatchers.containsString; import static org.hamcrest.MatcherAssert.assertThat; -import static org.junit.Assume.assumeTrue; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.jupiter.api.Assumptions.assumeTrue; import java.nio.file.Path; import java.nio.file.Paths; diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/statistic/RateStatisticTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/statistic/RateStatisticTest.java index 0a768d4f990..9ef3e5578d2 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/statistic/RateStatisticTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/statistic/RateStatisticTest.java @@ -24,7 +24,8 @@ import org.hamcrest.Matchers; import org.junit.jupiter.api.Test; import static org.hamcrest.Matchers.equalTo; -import static org.junit.Assert.assertThat; +import static org.hamcrest.MatcherAssert.assertThat; + /* ------------------------------------------------------------ */ diff --git a/pom.xml b/pom.xml index 08f256d856f..4df812973df 100644 --- a/pom.xml +++ b/pom.xml @@ -37,6 +37,8 @@ 2.4.5.Final 1.0.5 + + false 2.22.0 @@ -49,7 +51,7 @@ - 5.0 + 5.1 @@ -647,6 +649,8 @@ ${project.build.directory} ${unix.socket.tmp} + true + ${jetty.testtracker.log} diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/JettyDistro.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/JettyDistro.java index 3cc69f47f27..27994a3e1d3 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/JettyDistro.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/JettyDistro.java @@ -258,7 +258,7 @@ public class JettyDistro */ public JettyDistro(Class clazz, String artifact) throws IOException { - this.jettyHomeDir = MavenTestingUtils.getTargetTestingDir(clazz,"jettyHome"); + this.jettyHomeDir = MavenTestingUtils.getTargetTestingPath(clazz,"jettyHome").toFile(); if (artifact != null) { this.artifactName = artifact; diff --git a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredOrphanedSessionTest.java b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredOrphanedSessionTest.java index 0e54b028bc3..fb192d31b60 100644 --- a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredOrphanedSessionTest.java +++ b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredOrphanedSessionTest.java @@ -22,6 +22,7 @@ package org.eclipse.jetty.gcloud.session; import org.eclipse.jetty.server.session.AbstractClusteredOrphanedSessionTest; import org.eclipse.jetty.server.session.SessionDataStoreFactory; import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; /** @@ -32,10 +33,25 @@ import org.junit.jupiter.api.Test; public class ClusteredOrphanedSessionTest extends AbstractClusteredOrphanedSessionTest { + public static GCloudSessionTestSupport __testSupport; + + @BeforeAll + public static void setUp () throws Exception + { + __testSupport = new GCloudSessionTestSupport(); + __testSupport.setUp(); + } + + @AfterAll + public static void tearDown () throws Exception + { + __testSupport.tearDown(); + } + @AfterAll public static void teardown () throws Exception { - GCloudTestSuite.__testSupport.deleteSessions(); + __testSupport.deleteSessions(); } @@ -46,7 +62,7 @@ public class ClusteredOrphanedSessionTest extends AbstractClusteredOrphanedSessi @Override public SessionDataStoreFactory createSessionDataStoreFactory() { - return GCloudSessionTestSupport.newSessionDataStoreFactory(GCloudTestSuite.__testSupport.getDatastore()); + return GCloudSessionTestSupport.newSessionDataStoreFactory(__testSupport.getDatastore()); } diff --git a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredSessionScavengingTest.java b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredSessionScavengingTest.java index ab430f9c03a..31393388e63 100644 --- a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredSessionScavengingTest.java +++ b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredSessionScavengingTest.java @@ -22,6 +22,7 @@ package org.eclipse.jetty.gcloud.session; import org.eclipse.jetty.server.session.AbstractClusteredSessionScavengingTest; import org.eclipse.jetty.server.session.SessionDataStoreFactory; import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.BeforeAll; /** * ClusteredSessionScavengingTest @@ -30,11 +31,26 @@ import org.junit.jupiter.api.AfterAll; */ public class ClusteredSessionScavengingTest extends AbstractClusteredSessionScavengingTest { - + + public static GCloudSessionTestSupport __testSupport; + + @BeforeAll + public static void setUp () throws Exception + { + __testSupport = new GCloudSessionTestSupport(); + __testSupport.setUp(); + } + + @AfterAll + public static void tearDown () throws Exception + { + __testSupport.tearDown(); + } + @AfterAll public static void teardown () throws Exception { - GCloudTestSuite.__testSupport.deleteSessions(); + __testSupport.deleteSessions(); } @@ -44,7 +60,7 @@ public class ClusteredSessionScavengingTest extends AbstractClusteredSessionScav @Override public SessionDataStoreFactory createSessionDataStoreFactory() { - return GCloudSessionTestSupport.newSessionDataStoreFactory(GCloudTestSuite.__testSupport.getDatastore()); + return GCloudSessionTestSupport.newSessionDataStoreFactory(__testSupport.getDatastore()); } diff --git a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStoreTest.java b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStoreTest.java index b652e034d7b..d10de993b63 100644 --- a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStoreTest.java +++ b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStoreTest.java @@ -22,7 +22,9 @@ package org.eclipse.jetty.gcloud.session; import org.eclipse.jetty.server.session.AbstractSessionDataStoreTest; import org.eclipse.jetty.server.session.SessionData; import org.eclipse.jetty.server.session.SessionDataStoreFactory; +import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeAll; /** * GCloudSessionDataStoreTest @@ -32,24 +34,39 @@ import org.junit.jupiter.api.AfterEach; public class GCloudSessionDataStoreTest extends AbstractSessionDataStoreTest { + public static GCloudSessionTestSupport __testSupport; + + @BeforeAll + public static void setUp () throws Exception + { + __testSupport = new GCloudSessionTestSupport(); + __testSupport.setUp(); + } + + @AfterAll + public static void tearDown () throws Exception + { + __testSupport.tearDown(); + } + @AfterEach public void teardown () throws Exception { - GCloudTestSuite.__testSupport.deleteSessions(); + __testSupport.deleteSessions(); } @Override public SessionDataStoreFactory createSessionDataStoreFactory() { - return GCloudSessionTestSupport.newSessionDataStoreFactory(GCloudTestSuite.__testSupport.getDatastore()); + return GCloudSessionTestSupport.newSessionDataStoreFactory(__testSupport.getDatastore()); } @Override public void persistSession(SessionData data) throws Exception { - GCloudTestSuite.__testSupport.createSession(data.getId(), data.getContextPath(), data.getVhost(), data.getLastNode(), data.getCreated(), + __testSupport.createSession(data.getId(), data.getContextPath(), data.getVhost(), data.getLastNode(), data.getCreated(), data.getAccessed(), data.getLastAccessed(), data.getMaxInactiveMs(), data.getExpiry(), data.getCookieSet(), data.getLastSaved(), data.getAllAttributes()); @@ -60,7 +77,7 @@ public class GCloudSessionDataStoreTest extends AbstractSessionDataStoreTest public void persistUnreadableSession(SessionData data) throws Exception { - GCloudTestSuite.__testSupport.createSession(data.getId(), data.getContextPath(), data.getVhost(), data.getLastNode(), data.getCreated(), + __testSupport.createSession(data.getId(), data.getContextPath(), data.getVhost(), data.getLastNode(), data.getCreated(), data.getAccessed(), data.getLastAccessed(), data.getMaxInactiveMs(), data.getExpiry(), data.getCookieSet(), data.getLastSaved(), null); } @@ -69,7 +86,7 @@ public class GCloudSessionDataStoreTest extends AbstractSessionDataStoreTest @Override public boolean checkSessionExists(SessionData data) throws Exception { - return GCloudTestSuite.__testSupport.checkSessionExists(data.getId()); + return __testSupport.checkSessionExists(data.getId()); } @@ -79,7 +96,7 @@ public class GCloudSessionDataStoreTest extends AbstractSessionDataStoreTest @Override public boolean checkSessionPersisted(SessionData data) throws Exception { - return GCloudTestSuite.__testSupport.checkSessionPersisted(data); + return __testSupport.checkSessionPersisted(data); } } diff --git a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/GCloudTestSuite.java b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/GCloudTestSuite.java deleted file mode 100644 index a77dd76aceb..00000000000 --- a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/GCloudTestSuite.java +++ /dev/null @@ -1,55 +0,0 @@ -// -// ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -// - -package org.eclipse.jetty.gcloud.session; - -import org.junit.jupiter.api.AfterAll; -import org.junit.jupiter.api.BeforeAll; -import org.junit.runner.RunWith; -import org.junit.runners.Suite; - -/** - * GCloudTestSuite - * - * Sets up the gcloud emulator once before running all tests. - * - */ -@RunWith(Suite.class) -@Suite.SuiteClasses({ - GCloudSessionDataStoreTest.class, - InvalidationSessionTest.class, - ClusteredSessionScavengingTest.class, - ClusteredOrphanedSessionTest.class -}) -public class GCloudTestSuite -{ - public static GCloudSessionTestSupport __testSupport; - - @BeforeAll - public static void setUp () throws Exception - { - __testSupport = new GCloudSessionTestSupport(); - __testSupport.setUp(); - } - - @AfterAll - public static void tearDown () throws Exception - { - __testSupport.tearDown(); - } -} diff --git a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/InvalidationSessionTest.java b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/InvalidationSessionTest.java index 476c8dd9e18..3e7809aa82a 100644 --- a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/InvalidationSessionTest.java +++ b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/InvalidationSessionTest.java @@ -23,6 +23,7 @@ package org.eclipse.jetty.gcloud.session; import org.eclipse.jetty.server.session.AbstractClusteredInvalidationSessionTest; import org.eclipse.jetty.server.session.SessionDataStoreFactory; import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.BeforeAll; /** * InvalidationSessionTest @@ -31,11 +32,26 @@ import org.junit.jupiter.api.AfterAll; */ public class InvalidationSessionTest extends AbstractClusteredInvalidationSessionTest { - + + public static GCloudSessionTestSupport __testSupport; + + @BeforeAll + public static void setUp () throws Exception + { + __testSupport = new GCloudSessionTestSupport(); + __testSupport.setUp(); + } + + @AfterAll + public static void tearDown () throws Exception + { + __testSupport.tearDown(); + } + @AfterAll public static void teardown () throws Exception { - GCloudTestSuite.__testSupport.deleteSessions(); + __testSupport.deleteSessions(); } /** @@ -44,6 +60,6 @@ public class InvalidationSessionTest extends AbstractClusteredInvalidationSessio @Override public SessionDataStoreFactory createSessionDataStoreFactory() { - return GCloudSessionTestSupport.newSessionDataStoreFactory(GCloudTestSuite.__testSupport.getDatastore()); + return GCloudSessionTestSupport.newSessionDataStoreFactory(__testSupport.getDatastore()); } } From 7a2ba10ed62d4727ecc993d07583072f03935e0c Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Fri, 21 Sep 2018 10:38:23 +0200 Subject: [PATCH 036/931] Issue #2727 - Revisit JMX MBean lookup behavior. Improved lookup of MBean constructor, now done only once. Cleaned up tests. Signed-off-by: Simone Bordet --- .../org/eclipse/jetty/jmx/MBeanContainer.java | 38 ++- .../java/org/eclipse/jetty/jmx/MetaData.java | 84 ++++--- .../org/eclipse/jetty/jmx/ObjectMBean.java | 12 +- .../test/java/com/acme/DerivedExtended.java | 1 - .../eclipse/jetty/jmx/MBeanContainerTest.java | 47 +--- .../eclipse/jetty/jmx/ObjectMBeanTest.java | 188 +++++---------- .../jetty/jmx/ObjectMBeanUtilTest.java | 224 ++++-------------- .../java/org/eclipse/jetty/jmx/PojoTest.java | 12 +- .../test/resources/jetty-logging.properties | 2 +- 9 files changed, 218 insertions(+), 390 deletions(-) diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java index c5f22c38a40..3f2ea7bb4f9 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java @@ -19,6 +19,7 @@ package org.eclipse.jetty.jmx; import java.io.IOException; +import java.lang.reflect.Constructor; import java.util.Arrays; import java.util.Collections; import java.util.List; @@ -34,7 +35,9 @@ import javax.management.InstanceNotFoundException; import javax.management.MBeanRegistrationException; import javax.management.MBeanServer; import javax.management.ObjectName; +import javax.management.modelmbean.ModelMBean; +import org.eclipse.jetty.util.Loader; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.component.Container; @@ -151,7 +154,7 @@ public class MBeanContainer implements Container.InheritedListener, Dumpable, De if (mbean instanceof ObjectMBean) ((ObjectMBean)mbean).setMBeanContainer(container); if (LOG.isDebugEnabled()) - LOG.debug("mbeanFor {} is {}", o, mbean); + LOG.debug("MBean for {} is {}", o, mbean); return mbean; } @@ -161,7 +164,11 @@ public class MBeanContainer implements Container.InheritedListener, Dumpable, De return null; MetaData metaData = getMetaData(container, klass); if (metaData != null) + { + if (LOG.isDebugEnabled()) + LOG.debug("Found cached {}", metaData); return metaData; + } return newMetaData(container, klass); } @@ -175,12 +182,12 @@ public class MBeanContainer implements Container.InheritedListener, Dumpable, De if (klass == null) return null; if (klass == Object.class) - return new MetaData(klass, null, Collections.emptyList()); + return new MetaData(klass, null, null, Collections.emptyList()); List interfaces = Arrays.stream(klass.getInterfaces()) - .map(iClass -> findMetaData(container, iClass)) + .map(intf -> findMetaData(container, intf)) .collect(Collectors.toList()); - MetaData metaData = new MetaData(klass, findMetaData(container, klass.getSuperclass()), interfaces); + MetaData metaData = new MetaData(klass, findConstructor(klass), findMetaData(container, klass.getSuperclass()), interfaces); if (container != null) { @@ -195,6 +202,29 @@ public class MBeanContainer implements Container.InheritedListener, Dumpable, De return metaData; } + private static Constructor findConstructor(Class klass) + { + String pName = klass.getPackage().getName(); + String cName = klass.getName().substring(pName.length() + 1); + String mName = pName + ".jmx." + cName + "MBean"; + try + { + Class mbeanClass = Loader.loadClass(mName); + Constructor constructor = ModelMBean.class.isAssignableFrom(mbeanClass) + ? mbeanClass.getConstructor() + : mbeanClass.getConstructor(Object.class); + if (LOG.isDebugEnabled()) + LOG.debug("Found MBean wrapper: {} for {}", mName, klass.getName()); + return constructor; + } + catch (Throwable x) + { + if (LOG.isDebugEnabled()) + LOG.debug("MBean wrapper not found: {} for {}", mName, klass.getName()); + return null; + } + } + /** * Lookup an object name by instance * diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java index 9f3b8882068..c081178b050 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java @@ -45,7 +45,6 @@ import javax.management.ObjectName; import javax.management.ReflectionException; import javax.management.modelmbean.ModelMBean; -import org.eclipse.jetty.util.Loader; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.annotation.ManagedOperation; @@ -59,21 +58,24 @@ class MetaData private final Map _attributes = new HashMap<>(); private final Map _operations = new HashMap<>(); + private final Class _klass; private final MetaData _parent; private final List _interfaces; private final Constructor _constructor; private final MBeanInfo _info; - MetaData(Class klass, MetaData parent, List interfaces) + MetaData(Class klass, Constructor constructor, MetaData parent, List interfaces) { + _klass = klass; _parent = parent; _interfaces = interfaces; - _constructor = findConstructor(klass); + _constructor = constructor; if (_constructor != null) parseMethods(klass, _constructor.getDeclaringClass()); else parseMethods(klass); _info = buildMBeanInfo(klass); + } Object newInstance(Object bean) @@ -93,7 +95,7 @@ class MetaData return _info; } - Object getAttribute(String name, ObjectMBean mbean) throws AttributeNotFoundException, ReflectionException + Object getAttribute(String name, ObjectMBean mbean) throws AttributeNotFoundException, ReflectionException, MBeanException { AttributeInfo info = findAttribute(name); if (info == null) @@ -101,7 +103,7 @@ class MetaData return info.getAttribute(mbean); } - void setAttribute(Attribute attribute, ObjectMBean mbean) throws AttributeNotFoundException, ReflectionException + void setAttribute(Attribute attribute, ObjectMBean mbean) throws AttributeNotFoundException, ReflectionException, MBeanException { if (attribute == null) return; @@ -114,6 +116,8 @@ class MetaData private AttributeInfo findAttribute(String name) { + if (name == null) + return null; AttributeInfo result = _attributes.get(name); if (result != null) return result; @@ -153,24 +157,6 @@ class MetaData return null; } - private static Constructor findConstructor(Class klass) - { - try - { - String pName = klass.getPackage().getName(); - String cName = klass.getName().substring(pName.length() + 1); - String mName = pName + ".jmx." + cName + "MBean"; - Class mbeanClass = Loader.loadClass(mName); - return ModelMBean.class.isAssignableFrom(mbeanClass) - ? mbeanClass.getConstructor() - : mbeanClass.getConstructor(Object.class); - } - catch (Throwable x) - { - return null; - } - } - private static Object newInstance(Constructor constructor, Object bean) { try @@ -190,6 +176,7 @@ class MetaData { for (Class klass : classes) { + // Only work on the public method of the class, not of the hierarchy. for (Method method : klass.getDeclaredMethods()) { if (!Modifier.isPublic(method.getModifiers())) @@ -198,12 +185,16 @@ class MetaData if (attribute != null) { AttributeInfo info = new AttributeInfo(attribute, method); + if (LOG.isDebugEnabled()) + LOG.debug("Found attribute for {}: {}", klass.getName(), info); _attributes.put(info._name, info); } ManagedOperation operation = method.getAnnotation(ManagedOperation.class); if (operation != null) { OperationInfo info = new OperationInfo(operation, method); + if (LOG.isDebugEnabled()) + LOG.debug("Found operation for {}: {}", klass.getName(), info); _operations.put(info._name, info); } } @@ -284,6 +275,21 @@ class MetaData _parent.collectMBeanOperationInfos(operationInfos); } + private static MBeanException toMBeanException(InvocationTargetException x) + { + Throwable cause = x.getCause(); + if (cause instanceof Exception) + return new MBeanException((Exception)cause); + else + return new MBeanException(x); + } + + @Override + public String toString() + { + return String.format("%s@%x[%s]", getClass().getSimpleName(), hashCode(), _klass.getName()); + } + private static class AttributeInfo { private final String _name; @@ -318,7 +324,7 @@ class MetaData _setter != null, getter.getName().startsWith("is")); } - Object getAttribute(ObjectMBean mbean) throws ReflectionException + Object getAttribute(ObjectMBean mbean) throws ReflectionException, MBeanException { try { @@ -338,13 +344,17 @@ class MetaData names[i] = mbean.findObjectName(Array.get(result, i)); return names; } + catch (InvocationTargetException x) + { + throw toMBeanException(x); + } catch (Exception x) { throw new ReflectionException(x); } } - void setAttribute(Object value, ObjectMBean mbean) throws ReflectionException + void setAttribute(Object value, ObjectMBean mbean) throws ReflectionException, MBeanException { try { @@ -370,6 +380,10 @@ class MetaData Array.set(result, i, mbean.findBean(names[i])); _setter.invoke(target, result); } + catch (InvocationTargetException x) + { + throw toMBeanException(x); + } catch (Exception x) { throw new ReflectionException(x); @@ -404,6 +418,13 @@ class MetaData return setter; } + + @Override + public String toString() + { + return String.format("%s@%x[%s,proxied=%b,convert=%b]", getClass().getSimpleName(), hashCode(), + _name, _proxied, _convert); + } } private static class OperationInfo @@ -464,11 +485,7 @@ class MetaData } catch (InvocationTargetException x) { - Throwable cause = x.getCause(); - if (cause instanceof Exception) - throw new MBeanException((Exception)cause); - else - throw new MBeanException(new RuntimeException(cause)); + throw toMBeanException(x); } catch (Exception x) { @@ -498,5 +515,12 @@ class MetaData } return result; } + + @Override + public String toString() + { + return String.format("%s@%x[%s,proxied=%b,convert=%b]", getClass().getSimpleName(), hashCode(), + _name, _proxied, _convert); + } } } diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/ObjectMBean.java b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/ObjectMBean.java index 2bd6b08ac6b..5782ffe660e 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/ObjectMBean.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/ObjectMBean.java @@ -139,7 +139,7 @@ public class ObjectMBean implements DynamicMBean } @Override - public Object getAttribute(String name) throws AttributeNotFoundException, ReflectionException + public Object getAttribute(String name) throws AttributeNotFoundException, ReflectionException, MBeanException { ClassLoader prevLoader = Thread.currentThread().getContextClassLoader(); try @@ -164,14 +164,15 @@ public class ObjectMBean implements DynamicMBean } catch (Throwable x) { - LOG.info(x); + if (LOG.isDebugEnabled()) + LOG.debug(x); } } return results; } @Override - public void setAttribute(Attribute attribute) throws AttributeNotFoundException, ReflectionException + public void setAttribute(Attribute attribute) throws AttributeNotFoundException, ReflectionException, MBeanException { ClassLoader prevLoader = Thread.currentThread().getContextClassLoader(); try @@ -197,7 +198,8 @@ public class ObjectMBean implements DynamicMBean } catch (Throwable x) { - LOG.info(x); + if (LOG.isDebugEnabled()) + LOG.debug(x); } } return results; @@ -227,7 +229,7 @@ public class ObjectMBean implements DynamicMBean return _mbeanContainer.findBean(objectName); } - private MetaData metaData() + MetaData metaData() { if (_metaData == null) _metaData = MBeanContainer.findMetaData(_mbeanContainer, _managed.getClass()); diff --git a/jetty-jmx/src/test/java/com/acme/DerivedExtended.java b/jetty-jmx/src/test/java/com/acme/DerivedExtended.java index b25280e2154..daa3f34aea5 100644 --- a/jetty-jmx/src/test/java/com/acme/DerivedExtended.java +++ b/jetty-jmx/src/test/java/com/acme/DerivedExtended.java @@ -25,7 +25,6 @@ import org.eclipse.jetty.util.annotation.ManagedOperation; @ManagedObject(value = "Test the mbean extended stuff") public class DerivedExtended extends Derived { - private String doodle4 = "doodle4"; @ManagedAttribute(value = "The doodle4 name of something", name = "doodle4", setter = "setDoodle4") diff --git a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/MBeanContainerTest.java b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/MBeanContainerTest.java index ded64808426..630c95374a8 100644 --- a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/MBeanContainerTest.java +++ b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/MBeanContainerTest.java @@ -18,24 +18,23 @@ package org.eclipse.jetty.jmx; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertNull; -import static org.junit.jupiter.api.Assertions.assertTrue; - -import com.acme.Managed; - import java.lang.management.ManagementFactory; import javax.management.MBeanServer; import javax.management.ObjectName; +import com.acme.Managed; import org.eclipse.jetty.util.component.Container; import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertNull; +import static org.junit.jupiter.api.Assertions.assertTrue; + public class MBeanContainerTest { private MBeanContainer mbeanContainer; @@ -54,27 +53,21 @@ public class MBeanContainerTest @Test public void testMakeName() { - // given beanName = "mngd:bean"; - // when beanName = mbeanContainer.makeName(beanName); - // then assertEquals("mngd_bean", beanName, "Bean name should be mngd_bean"); } @Test public void testFindBean() { - // given managed = getManaged(); - // when objectName = mbeanContainer.findMBean(managed); assertNotNull(objectName); - // then assertEquals(managed, mbeanContainer.findBean(objectName), "Bean must be added"); assertNull(mbeanContainer.findBean(null), "It must return null as there is no bean with the name null"); } @@ -104,40 +97,31 @@ public class MBeanContainerTest @Test public void testDomain() { - // given String domain = "Test"; - // when mbeanContainer.setDomain(domain); - // then assertEquals(domain, mbeanContainer.getDomain(), "Domain name must be Test"); } @Test - public void testBeanAdded() throws Exception + public void testBeanAdded() { - // given setBeanAdded(); - // when objectName = mbeanContainer.findMBean(managed); - // then assertTrue(mbeanServer.isRegistered(objectName), "Bean must have been registered"); } @Test - public void testBeanAddedNullCheck() throws Exception + public void testBeanAddedNullCheck() { - // given setBeanAdded(); Integer mbeanCount = mbeanServer.getMBeanCount(); - // when mbeanContainer.beanAdded(null, null); - // then assertEquals(mbeanCount, mbeanServer.getMBeanCount(), "MBean count must not change after beanAdded(null, null) call"); } @@ -150,15 +134,12 @@ public class MBeanContainerTest } @Test - public void testBeanRemoved() throws Exception + public void testBeanRemoved() { - // given setUpBeanRemoved(); - // when mbeanContainer.beanRemoved(null, managed); - // then assertNull(mbeanContainer.findMBean(managed), "Bean shouldn't be registered with container as we removed the bean"); } @@ -200,30 +181,24 @@ public class MBeanContainerTest } @Test - public void testDestroy() throws Exception + public void testDestroy() { - // given setUpDestroy(); - // when objectName = mbeanContainer.findMBean(managed); mbeanContainer.destroy(); - // then assertFalse(mbeanContainer.getMBeanServer().isRegistered(objectName), "Unregistered bean - managed"); } @Test public void testDestroyInstanceNotFoundException() throws Exception { - // given setUpDestroy(); - // when objectName = mbeanContainer.findMBean(managed); mbeanContainer.getMBeanServer().unregisterMBean(objectName); - // then assertFalse(mbeanContainer.getMBeanServer().isRegistered(objectName), "Unregistered bean - managed"); // this flow covers InstanceNotFoundException. Actual code just eating // the exception. i.e Actual code just printing the stacktrace, whenever diff --git a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ObjectMBeanTest.java b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ObjectMBeanTest.java index 0fd87499096..00b6b81b952 100644 --- a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ObjectMBeanTest.java +++ b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ObjectMBeanTest.java @@ -26,202 +26,126 @@ import javax.management.MBeanOperationInfo; import javax.management.MBeanParameterInfo; import com.acme.Derived; -import org.eclipse.jetty.util.log.Log; -import org.eclipse.jetty.util.log.Logger; -import org.eclipse.jetty.util.thread.QueuedThreadPool; +import com.acme.Managed; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertNotSame; +import static org.junit.jupiter.api.Assertions.assertSame; import static org.junit.jupiter.api.Assertions.assertTrue; public class ObjectMBeanTest { - private static final Logger LOG = Log.getLogger(ObjectMBeanTest.class); - - private static MBeanContainer container; + private MBeanContainer container; @BeforeEach - public void before() throws Exception + public void before() { container = new MBeanContainer(ManagementFactory.getPlatformMBeanServer()); } @AfterEach - public void after() throws Exception + public void after() { container.destroy(); container = null; } - /* - * this test uses the com.acme.Derived test classes - */ + @Test + public void testMetaDataCaching() + { + Derived derived = new Derived(); + ObjectMBean derivedMBean = (ObjectMBean)container.mbeanFor(derived); + ObjectMBean derivedMBean2 = (ObjectMBean)container.mbeanFor(derived); + assertNotSame(derivedMBean, derivedMBean2); + assertSame(derivedMBean.metaData(), derivedMBean2.metaData()); + } + @Test public void testDerivedAttributes() throws Exception { Derived derived = new Derived(); - ObjectMBean mbean = (ObjectMBean)ObjectMBean.mbeanFor(derived); + Managed managed = derived.getManagedInstance(); + ObjectMBean derivedMBean = (ObjectMBean)container.mbeanFor(derived); + ObjectMBean managedMBean = (ObjectMBean)container.mbeanFor(managed); - ObjectMBean managed = (ObjectMBean)ObjectMBean.mbeanFor(derived.getManagedInstance()); - mbean.setMBeanContainer(container); - managed.setMBeanContainer(container); + container.beanAdded(null, derived); + container.beanAdded(null, managed); - container.beanAdded(null,derived); - container.beanAdded(null,derived.getManagedInstance()); + MBeanInfo derivedInfo = derivedMBean.getMBeanInfo(); + assertNotNull(derivedInfo); + MBeanInfo managedInfo = managedMBean.getMBeanInfo(); + assertNotNull(managedInfo); - MBeanInfo toss = managed.getMBeanInfo(); + assertEquals("com.acme.Derived", derivedInfo.getClassName(), "name does not match"); + assertEquals("Test the mbean stuff", derivedInfo.getDescription(), "description does not match"); + assertEquals(6, derivedInfo.getAttributes().length, "attribute count does not match"); + assertEquals("Full Name", derivedMBean.getAttribute("fname"), "attribute values does not match"); - assertNotNull(mbean.getMBeanInfo()); - - MBeanInfo info = mbean.getMBeanInfo(); - - assertEquals("com.acme.Derived", info.getClassName(), "name does not match"); - assertEquals("Test the mbean stuff", info.getDescription(), "description does not match"); - - // for ( MBeanAttributeInfo i : info.getAttributes()) - // { - // LOG.debug(i.toString()); - // } - - /* - * 2 attributes from lifecycle and 2 from Derived and 1 from MBean - */ - assertEquals(6, info.getAttributes().length, "attribute count does not match"); - - assertEquals("Full Name", mbean.getAttribute("fname"), "attribute values does not match"); - - mbean.setAttribute(new Attribute("fname","Fuller Name")); - - assertEquals("Fuller Name", mbean.getAttribute("fname"), "set attribute value does not match"); - - assertEquals("goop", mbean.getAttribute("goop"), "proxy attribute values do not match"); - - // Thread.sleep(100000); + derivedMBean.setAttribute(new Attribute("fname", "Fuller Name")); + assertEquals("Fuller Name", derivedMBean.getAttribute("fname"), "set attribute value does not match"); + assertEquals("goop", derivedMBean.getAttribute("goop"), "proxy attribute values do not match"); } @Test public void testDerivedOperations() throws Exception { Derived derived = new Derived(); - ObjectMBean mbean = (ObjectMBean)ObjectMBean.mbeanFor(derived); + ObjectMBean mbean = (ObjectMBean)container.mbeanFor(derived); - mbean.setMBeanContainer(container); - - container.beanAdded(null,derived); + container.beanAdded(null, derived); MBeanInfo info = mbean.getMBeanInfo(); - assertEquals(5, info.getOperations().length, "operation count does not match"); - MBeanOperationInfo[] opinfos = info.getOperations(); + MBeanOperationInfo[] operationInfos = info.getOperations(); boolean publish = false; boolean doodle = false; boolean good = false; - for (int i = 0; i < opinfos.length; ++i) + for (MBeanOperationInfo operationInfo : operationInfos) { - MBeanOperationInfo opinfo = opinfos[i]; - - if ("publish".equals(opinfo.getName())) + if ("publish".equals(operationInfo.getName())) { publish = true; - assertEquals("publish something", opinfo.getDescription(), "description doesn't match"); + assertEquals("publish something", operationInfo.getDescription(), "description doesn't match"); } - if ("doodle".equals(opinfo.getName())) + if ("doodle".equals(operationInfo.getName())) { doodle = true; - assertEquals("Doodle something", opinfo.getDescription(), "description doesn't match"); - - MBeanParameterInfo[] pinfos = opinfo.getSignature(); - - assertEquals("A description of the argument", pinfos[0].getDescription(), "parameter description doesn't match"); - assertEquals("doodle", pinfos[0].getName(), "parameter name doesn't match"); + assertEquals("Doodle something", operationInfo.getDescription(), "description doesn't match"); + MBeanParameterInfo[] parameterInfos = operationInfo.getSignature(); + assertEquals("A description of the argument", parameterInfos[0].getDescription(), "parameter description doesn't match"); + assertEquals("doodle", parameterInfos[0].getName(), "parameter name doesn't match"); } - // This is a proxied operation on the JMX wrapper - if ("good".equals(opinfo.getName())) + // This is a proxied operation on the MBean wrapper. + if ("good".equals(operationInfo.getName())) { good = true; - - assertEquals("test of proxy operations", opinfo.getDescription(), "description does not match"); - assertEquals("not bad",mbean.invoke("good",new Object[] {}, new String[] {}), "execution contexts wrong"); + assertEquals("test of proxy operations", operationInfo.getDescription(), "description does not match"); + assertEquals("not bad", mbean.invoke("good", new Object[]{}, new String[]{}), "execution contexts wrong"); } } assertTrue(publish, "publish operation was not not found"); assertTrue(doodle, "doodle operation was not not found"); assertTrue(good, "good operation was not not found"); - } @Test - public void testDerivedObjectAttributes() throws Exception + public void testMethodNameMining() { - Derived derived = new Derived(); - ObjectMBean mbean = (ObjectMBean)ObjectMBean.mbeanFor(derived); - - ObjectMBean managed = (ObjectMBean)ObjectMBean.mbeanFor(derived.getManagedInstance()); - mbean.setMBeanContainer(container); - managed.setMBeanContainer(container); - - assertNotNull(mbean.getMBeanInfo()); - - container.beanAdded(null,derived); - container.beanAdded(null,derived.getManagedInstance()); - container.beanAdded(null,mbean); - container.beanAdded(null,managed); - - // Managed managedInstance = (Managed)mbean.getAttribute("managedInstance"); - // assertNotNull(managedInstance); - // assertEquals("foo", managedInstance.getManaged(), "managed instance returning nonsense"); - + assertEquals("fullName", MetaData.toAttributeName("getFullName")); + assertEquals("fullName", MetaData.toAttributeName("getfullName")); + assertEquals("fullName", MetaData.toAttributeName("isFullName")); + assertEquals("fullName", MetaData.toAttributeName("isfullName")); + assertEquals("fullName", MetaData.toAttributeName("setFullName")); + assertEquals("fullName", MetaData.toAttributeName("setfullName")); + assertEquals("fullName", MetaData.toAttributeName("FullName")); + assertEquals("fullName", MetaData.toAttributeName("fullName")); } - - @Test - @Disabled("ignore, used in testing jconsole atm") - public void testThreadPool() throws Exception - { - - Derived derived = new Derived(); - ObjectMBean mbean = (ObjectMBean)ObjectMBean.mbeanFor(derived); - - ObjectMBean managed = (ObjectMBean)ObjectMBean.mbeanFor(derived.getManagedInstance()); - mbean.setMBeanContainer(container); - managed.setMBeanContainer(container); - - QueuedThreadPool qtp = new QueuedThreadPool(); - - ObjectMBean bqtp = (ObjectMBean)ObjectMBean.mbeanFor(qtp); - - bqtp.getMBeanInfo(); - - container.beanAdded(null,derived); - container.beanAdded(null,derived.getManagedInstance()); - container.beanAdded(null,mbean); - container.beanAdded(null,managed); - container.beanAdded(null,qtp); - - Thread.sleep(10000000); - - } - - @Test - public void testMethodNameMining() throws Exception - { - ObjectMBean mbean = new ObjectMBean(new Derived()); - - assertEquals("fullName",MetaData.toAttributeName("getFullName")); - assertEquals("fullName",MetaData.toAttributeName("getfullName")); - assertEquals("fullName",MetaData.toAttributeName("isFullName")); - assertEquals("fullName",MetaData.toAttributeName("isfullName")); - assertEquals("fullName",MetaData.toAttributeName("setFullName")); - assertEquals("fullName",MetaData.toAttributeName("setfullName")); - assertEquals("fullName",MetaData.toAttributeName("FullName")); - assertEquals("fullName",MetaData.toAttributeName("fullName")); - } - } diff --git a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ObjectMBeanUtilTest.java b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ObjectMBeanUtilTest.java index cebfc1d9e42..0f1321bbbfe 100644 --- a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ObjectMBeanUtilTest.java +++ b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ObjectMBeanUtilTest.java @@ -32,11 +32,6 @@ import javax.management.ReflectionException; import com.acme.Derived; import com.acme.DerivedExtended; import com.acme.DerivedManaged; -import org.eclipse.jetty.util.log.Log; -import org.eclipse.jetty.util.log.Logger; -import org.eclipse.jetty.util.log.StdErrLog; -import org.junit.jupiter.api.AfterAll; -import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -47,56 +42,20 @@ import static org.junit.jupiter.api.Assertions.assertThrows; public class ObjectMBeanUtilTest { - private ObjectMBean objectMBean; - private DerivedExtended derivedExtended; - private MBeanContainer container; - private MBeanInfo objectMBeanInfo; - - private Object mBean; - - private String value; - private Attribute attribute; - - private AttributeList attributes; - private ObjectMBean mBeanDerivedManaged; - - private Derived[] derivedes; - - private ArrayList aliasNames; - private DerivedManaged derivedManaged; - private static final int EMPTY = 0; - - @BeforeAll - public static void beforeClass() - { - Logger ombLog = Log.getLogger(ObjectMBean.class); - if (ombLog instanceof StdErrLog && !ombLog.isDebugEnabled()) - ((StdErrLog)ombLog).setHideStacks(true); - } - - @AfterAll - public static void afterClass() - { - Logger ombLog = Log.getLogger(ObjectMBean.class); - if (ombLog instanceof StdErrLog) - ((StdErrLog)ombLog).setHideStacks(false); - } - @BeforeEach public void setUp() { - derivedExtended = new DerivedExtended(); - objectMBean = new ObjectMBean(derivedExtended); container = new MBeanContainer(ManagementFactory.getPlatformMBeanServer()); - objectMBean.setMBeanContainer(container); + derivedExtended = new DerivedExtended(); + objectMBean = (ObjectMBean)container.mbeanFor(derivedExtended); objectMBeanInfo = objectMBean.getMBeanInfo(); } @@ -114,131 +73,93 @@ public class ObjectMBeanUtilTest @Test public void testMbeanForNullCheck() { - // when - mBean = ObjectMBean.mbeanFor(null); - - // then + Object mBean = container.mbeanFor(null); assertNull(mBean, "As we are passing null value the output should be null"); } @Test - public void testGetAttributeReflectionException() throws Exception + public void testGetAttributeMBeanException() throws Exception { - // given - setUpGetAttribute("doodle4","charu"); + Attribute attribute = new Attribute("doodle4", "charu"); + objectMBean.setAttribute(attribute); - // when - ReflectionException e = assertThrows(ReflectionException.class, ()-> { - objectMBean.getAttribute("doodle4"); - }); + MBeanException e = assertThrows(MBeanException.class, () -> objectMBean.getAttribute("doodle4")); - // then assertNotNull(e, "An InvocationTargetException must have occurred by now as doodle4() internally throwing exception"); } - private void setUpGetAttribute(String property, String value) throws Exception - { - Attribute attribute = new Attribute(property,value); - objectMBean.setAttribute(attribute); - } - @Test - public void testGetAttributeAttributeNotFoundException() throws Exception + public void testGetAttributeAttributeNotFoundException() { - // when - AttributeNotFoundException e = assertThrows(AttributeNotFoundException.class, ()->{ - objectMBean.getAttribute("ffname"); - }); + AttributeNotFoundException e = assertThrows(AttributeNotFoundException.class, () -> objectMBean.getAttribute("ffname")); - // then - assertNotNull(e, "An AttributeNotFoundException must have occurred by now as there is no " + "attribute with the name ffname in bean"); + assertNotNull(e, "An AttributeNotFoundException must have occurred by now as there is no attribute with the name ffname in bean"); } @Test public void testSetAttributeWithCorrectAttrName() throws Exception { - // given - setUpGetAttribute("fname","charu"); + Attribute attribute = new Attribute("fname", "charu"); + objectMBean.setAttribute(attribute); - // when - value = (String)objectMBean.getAttribute("fname"); + String value = (String)objectMBean.getAttribute("fname"); - // then - assertEquals("charu", value, "Attribute(fname) value must be equl to charu"); + assertEquals("charu", value, "Attribute(fname) value must be equal to charu"); } @Test public void testSetAttributeNullCheck() throws Exception { - // given objectMBean.setAttribute(null); - // when - AttributeNotFoundException e = assertThrows(AttributeNotFoundException.class, ()->{ - objectMBean.getAttribute(null); - }); + AttributeNotFoundException e = assertThrows(AttributeNotFoundException.class, () -> objectMBean.getAttribute(null)); - // then - assertNotNull(e,"An AttributeNotFoundException must have occurred by now as there is no attribute with the name null"); + assertNotNull(e, "An AttributeNotFoundException must have occurred by now as there is no attribute with the name null"); } @Test - public void testSetAttributeAttributeWithWrongAttrName() throws Exception + public void testSetAttributeAttributeWithWrongAttrName() { - // given - attribute = new Attribute("fnameee","charu"); + attribute = new Attribute("fnameee", "charu"); - // when - AttributeNotFoundException e = assertThrows(AttributeNotFoundException.class, ()->{ - objectMBean.setAttribute(attribute); - }); + AttributeNotFoundException e = assertThrows(AttributeNotFoundException.class, () -> objectMBean.setAttribute(attribute)); - // then assertNotNull(e, "An AttributeNotFoundException must have occurred by now as there is no attribute " + "with the name ffname in bean"); } @Test - public void testSetAttributesWithCorrectValues() throws Exception + public void testSetAttributesWithCorrectValues() { - // given - attributes = getAttributes("fname","vijay"); - attributes = objectMBean.setAttributes(attributes); + AttributeList attributes = getAttributes("fname", "vijay"); + objectMBean.setAttributes(attributes); - // when - attributes = objectMBean.getAttributes(new String[] - { "fname" }); + attributes = objectMBean.getAttributes(new String[]{"fname"}); - // then + assertEquals(1, attributes.size()); assertEquals("vijay", ((Attribute)(attributes.get(0))).getValue(), "Fname value must be equal to vijay"); } @Test - public void testSetAttributesForArrayTypeAttribue() throws Exception + public void testSetAttributesForArrayTypeAttribute() throws Exception { - // given - derivedes = getArrayTypeAttribute(); + Derived[] deriveds = getArrayTypeAttribute(); - // when - derivedManaged.setAddresses(derivedes); + derivedManaged.setAddresses(deriveds); mBeanDerivedManaged.getMBeanInfo(); - // then assertNotNull(mBeanDerivedManaged.getAttribute("addresses"), "Address object shouldn't be null"); } @Test public void testSetAttributesForCollectionTypeAttribue() throws Exception { - // given - aliasNames = getCollectionTypeAttribute(); + ArrayList aliasNames = new ArrayList<>(Arrays.asList(getArrayTypeAttribute())); - // when derivedManaged.setAliasNames(aliasNames); mBeanDerivedManaged.getMBeanInfo(); - // then assertNotNull(mBeanDerivedManaged.getAttribute("aliasNames"), "Address object shouldn't be null"); - assertNull(mBeanDerivedManaged.getAttribute("derived"), "Derived object shouldn't registerd with container so its value will be null"); + assertNull(mBeanDerivedManaged.getAttribute("derived"), "Derived object shouldn't registered with container so its value will be null"); } private Derived[] getArrayTypeAttribute() @@ -248,119 +169,74 @@ public class ObjectMBeanUtilTest MBeanContainer mBeanDerivedManagedContainer = new MBeanContainer(ManagementFactory.getPlatformMBeanServer()); mBeanDerivedManaged.setMBeanContainer(mBeanDerivedManagedContainer); Derived derived0 = new Derived(); - mBeanDerivedManagedContainer.beanAdded(null,derived0); - Derived[] derivedes = new Derived[3]; + mBeanDerivedManagedContainer.beanAdded(null, derived0); + Derived[] deriveds = new Derived[3]; for (int i = 0; i < 3; i++) - { - derivedes[i] = new Derived(); - } - derivedManaged.setAddresses(derivedes); + deriveds[i] = new Derived(); + derivedManaged.setAddresses(deriveds); mBeanDerivedManaged.getMBeanInfo(); - ArrayList aliasNames = new ArrayList(Arrays.asList(derivedes)); + ArrayList aliasNames = new ArrayList<>(Arrays.asList(deriveds)); derivedManaged.setAliasNames(aliasNames); - return derivedes; - } - - private ArrayList getCollectionTypeAttribute() - { - ArrayList aliasNames = new ArrayList(Arrays.asList(getArrayTypeAttribute())); - return aliasNames; + return deriveds; } @Test public void testSetAttributesException() { - // given - attributes = getAttributes("fnameee","charu"); + AttributeList attributes = getAttributes("fnameee", "charu"); - // when attributes = objectMBean.setAttributes(attributes); - // then // Original code eating the exception and returning zero size list - assertEquals(EMPTY,attributes.size(),"As there is no attribute with the name fnameee, this should return empty"); + assertEquals(0, attributes.size(), "As there is no attribute with the name fnameee, this should return empty"); } private AttributeList getAttributes(String name, String value) { - Attribute attribute = new Attribute(name,value); + Attribute attribute = new Attribute(name, value); AttributeList attributes = new AttributeList(); attributes.add(attribute); return attributes; } @Test - public void testInvokeMBeanException() throws Exception + public void testInvokeMBeanException() { - // given - setMBeanInfoForInvoke(); + ReflectionException e = assertThrows(ReflectionException.class, () -> objectMBean.invoke("doodle2", new Object[0], new String[0])); - // when - ReflectionException e = assertThrows(ReflectionException.class, ()->{ - objectMBean.invoke("doodle2",new Object[] {},new String[] {}); - }); - - // then assertNotNull(e, "An ReflectionException must have occurred by now as doodle2() in Derived bean is private"); } @Test - public void testInvokeReflectionException() throws Exception + public void testInvokeReflectionException() { - // given - setMBeanInfoForInvoke(); + MBeanException e = assertThrows(MBeanException.class, () -> objectMBean.invoke("doodle1", new Object[0], new String[0])); - // when - MBeanException e = assertThrows(MBeanException.class, ()->{ - objectMBean.invoke("doodle1",new Object[] {},new String[] {}); - }); - - // then assertNotNull(e, "MBeanException is null"); } @Test public void testInvoke() throws Exception { - // given - setMBeanInfoForInvoke(); + String value = (String)objectMBean.invoke("good", new Object[0], new String[0]); - // when - value = (String)objectMBean.invoke("good",new Object[] {},new String[] {}); - - // then assertEquals("not bad", value, "Method(good) invocation on objectMBean must return not bad"); } @Test - public void testInvokeNoSuchMethodException() throws Exception + public void testInvokeNoSuchMethodException() { - // given - setMBeanInfoForInvoke(); + // DerivedMBean contains a managed method with the name good, + // we must call this method without any arguments. + ReflectionException e = assertThrows(ReflectionException.class, () -> + objectMBean.invoke("good", new Object[0], new String[]{"int aone"})); - // when - // DerivedMBean contains a managed method with the name good,we must - // call this method without any arguments - ReflectionException e = assertThrows(ReflectionException.class, ()->{ - objectMBean.invoke("good",new Object[] {},new String[] - { "int aone" }); - }); - - // then assertNotNull(e, "An ReflectionException must have occurred by now as we cannot call a methow with wrong signature"); - - } - - private void setMBeanInfoForInvoke() - { - objectMBean = (ObjectMBean)ObjectMBean.mbeanFor(derivedExtended); - container.beanAdded(null,derivedExtended); - objectMBean.getMBeanInfo(); } @Test - public void testToVariableName() + public void testToAttributeName() { - assertEquals("fullName",MetaData.toAttributeName("isfullName")); + assertEquals("fullName", MetaData.toAttributeName("isfullName")); } } diff --git a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/PojoTest.java b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/PojoTest.java index 3ea782d22ff..2d1aad0bae0 100644 --- a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/PojoTest.java +++ b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/PojoTest.java @@ -20,27 +20,25 @@ package org.eclipse.jetty.jmx; import java.util.Arrays; import java.util.List; -import org.eclipse.jetty.util.log.jmx.LogMBean; -import org.junit.jupiter.api.Test; + import com.openpojo.reflection.impl.PojoClassFactory; import com.openpojo.validation.Validator; import com.openpojo.validation.ValidatorBuilder; import com.openpojo.validation.test.impl.GetterTester; import com.openpojo.validation.test.impl.SetterTester; +import org.eclipse.jetty.util.log.jmx.LogMBean; +import org.junit.jupiter.api.Test; /* * This class tests all the getters and setters for a given list of classes. */ public class PojoTest { - - private Validator validator; - @Test public void testOpenPojo() { - validator = ValidatorBuilder.create().with(new SetterTester()).with(new GetterTester()).build(); - List classes = Arrays.asList(MBeanContainer.class,ObjectMBean.class,LogMBean.class); + Validator validator = ValidatorBuilder.create().with(new SetterTester()).with(new GetterTester()).build(); + List classes = Arrays.asList(MBeanContainer.class, ObjectMBean.class, LogMBean.class); for (Class clazz : classes) { validator.validate(PojoClassFactory.getPojoClass(clazz)); diff --git a/jetty-jmx/src/test/resources/jetty-logging.properties b/jetty-jmx/src/test/resources/jetty-logging.properties index f0392ad78c1..ad4b63c91cc 100644 --- a/jetty-jmx/src/test/resources/jetty-logging.properties +++ b/jetty-jmx/src/test/resources/jetty-logging.properties @@ -1,2 +1,2 @@ org.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.StdErrLog -org.eclipse.jetty.jmx.LEVEL=INFO +#org.eclipse.jetty.jmx.LEVEL=DEBUG From 87f39449a9283282a5b04854aed75032331b3cd6 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Fri, 21 Sep 2018 10:56:13 +0200 Subject: [PATCH 037/931] Issue #2727 - Revisit JMX MBean lookup behavior. Fixed NPE in case the class is an interface. Signed-off-by: Simone Bordet --- jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java index c081178b050..b7d978a37cc 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java @@ -217,7 +217,7 @@ class MetaData klass = klass.getComponentType(); if (klass.isPrimitive()) return false; - while (klass != Object.class) + while (klass != null) { if (klass.isAnnotationPresent(ManagedObject.class)) return true; From 2673ae98c2d44c1253366e7d3205109ae0f6d4b8 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Fri, 21 Sep 2018 17:56:43 +0200 Subject: [PATCH 038/931] Issue #2727 - Revisit JMX MBean lookup behavior. Optimized creation of MBeanInfo. Rather than collecting attributes from the whole hierarchy, just merge the local attributes with the ones from the parent, using a Set to discard duplicates. Signed-off-by: Simone Bordet --- .../java/org/eclipse/jetty/jmx/MetaData.java | 28 +++++++++++++------ 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java index b7d978a37cc..6ac8fd60284 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java @@ -24,12 +24,13 @@ import java.lang.reflect.Constructor; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.lang.reflect.Modifier; -import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Locale; import java.util.Map; +import java.util.Set; import java.util.stream.Collectors; import javax.management.Attribute; @@ -75,7 +76,6 @@ class MetaData else parseMethods(klass); _info = buildMBeanInfo(klass); - } Object newInstance(Object bean) @@ -244,35 +244,45 @@ class MetaData ManagedObject managedObject = klass.getAnnotation(ManagedObject.class); String description = managedObject == null ? "" : managedObject.value(); - List attributeInfos = new ArrayList<>(); + Set attributeInfos = new HashSet<>(); collectMBeanAttributeInfos(attributeInfos); - List operationInfos = new ArrayList<>(); + Set operationInfos = new HashSet<>(); collectMBeanOperationInfos(operationInfos); - return new MBeanInfo(klass.getName(), description, attributeInfos.toArray(new MBeanAttributeInfo[0]), new MBeanConstructorInfo[0], operationInfos.toArray(new MBeanOperationInfo[0]), new MBeanNotificationInfo[0]); + MBeanAttributeInfo[] attributes = attributeInfos.toArray(new MBeanAttributeInfo[0]); + MBeanOperationInfo[] operations = operationInfos.toArray(new MBeanOperationInfo[0]); + return new MBeanInfo(klass.getName(), description, attributes, new MBeanConstructorInfo[0], operations, new MBeanNotificationInfo[0]); } - private void collectMBeanAttributeInfos(List attributeInfos) + private void collectMBeanAttributeInfos(Set attributeInfos) { + // Priority to local attributes, then to interfaces then to superClass. _attributes.values().stream() .map(info -> info._info) .collect(Collectors.toCollection(() -> attributeInfos)); for (MetaData intf : _interfaces) intf.collectMBeanAttributeInfos(attributeInfos); if (_parent != null) - _parent.collectMBeanAttributeInfos(attributeInfos); + { + MBeanInfo parentInfo = _parent.getMBeanInfo(); + attributeInfos.addAll(Arrays.asList(parentInfo.getAttributes())); + } } - private void collectMBeanOperationInfos(List operationInfos) + private void collectMBeanOperationInfos(Set operationInfos) { + // Priority to local operations, then to interfaces then to superClass. _operations.values().stream() .map(info -> info._info) .collect(Collectors.toCollection(() -> operationInfos)); for (MetaData intf : _interfaces) intf.collectMBeanOperationInfos(operationInfos); if (_parent != null) - _parent.collectMBeanOperationInfos(operationInfos); + { + MBeanInfo parentInfo = _parent.getMBeanInfo(); + operationInfos.addAll(Arrays.asList(parentInfo.getOperations())); + } } private static MBeanException toMBeanException(InvocationTargetException x) From 53565047e0bb4b3f5db448ce4b9b4aa1ccd1e8e8 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Sun, 23 Sep 2018 12:06:53 +0200 Subject: [PATCH 039/931] Issue #2727 - Revisit JMX MBean lookup behavior. Fixed creation of MBeanInfo. Avoiding duplicating *Info by collecting them in a Map. Signed-off-by: Simone Bordet --- .../org/eclipse/jetty/jmx/MBeanContainer.java | 2 + .../java/org/eclipse/jetty/jmx/MetaData.java | 53 +++++++++++-------- 2 files changed, 33 insertions(+), 22 deletions(-) diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java index 3f2ea7bb4f9..fb324bf1aae 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java @@ -196,6 +196,8 @@ public class MBeanContainer implements Container.InheritedListener, Dumpable, De MetaData existing = container._metaData.putIfAbsent(klass, metaData); if (existing != null) metaData = existing; + if (LOG.isDebugEnabled()) + LOG.debug("Cached {}", metaData); } } diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java index 6ac8fd60284..425422f5a5f 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java @@ -26,11 +26,9 @@ import java.lang.reflect.Method; import java.lang.reflect.Modifier; import java.util.Arrays; import java.util.HashMap; -import java.util.HashSet; import java.util.List; import java.util.Locale; import java.util.Map; -import java.util.Set; import java.util.stream.Collectors; import javax.management.Attribute; @@ -56,6 +54,10 @@ import org.eclipse.jetty.util.log.Logger; class MetaData { private static final Logger LOG = Log.getLogger(MetaData.class); + private static final MBeanAttributeInfo[] NO_ATTRIBUTES = new MBeanAttributeInfo[0]; + private static final MBeanConstructorInfo[] NO_CONSTRUCTORS = new MBeanConstructorInfo[0]; + private static final MBeanOperationInfo[] NO_OPERATIONS = new MBeanOperationInfo[0]; + private static final MBeanNotificationInfo[] NO_NOTIFICATIONS = new MBeanNotificationInfo[0]; private final Map _attributes = new HashMap<>(); private final Map _operations = new HashMap<>(); @@ -244,45 +246,51 @@ class MetaData ManagedObject managedObject = klass.getAnnotation(ManagedObject.class); String description = managedObject == null ? "" : managedObject.value(); - Set attributeInfos = new HashSet<>(); + Map attributeInfos = new HashMap<>(); collectMBeanAttributeInfos(attributeInfos); - Set operationInfos = new HashSet<>(); + Map operationInfos = new HashMap<>(); collectMBeanOperationInfos(operationInfos); - MBeanAttributeInfo[] attributes = attributeInfos.toArray(new MBeanAttributeInfo[0]); - MBeanOperationInfo[] operations = operationInfos.toArray(new MBeanOperationInfo[0]); - return new MBeanInfo(klass.getName(), description, attributes, new MBeanConstructorInfo[0], operations, new MBeanNotificationInfo[0]); + MBeanInfo mbeanInfo = _parent == null ? null : _parent.getMBeanInfo(); + MBeanAttributeInfo[] attributes = attributeInfos.values().toArray(NO_ATTRIBUTES); + MBeanConstructorInfo[] constructors = mbeanInfo == null ? NO_CONSTRUCTORS : mbeanInfo.getConstructors(); + MBeanOperationInfo[] operations = operationInfos.values().toArray(NO_OPERATIONS); + MBeanNotificationInfo[] notifications = mbeanInfo == null ? NO_NOTIFICATIONS : mbeanInfo.getNotifications(); + return new MBeanInfo(klass.getName(), description, attributes, constructors, operations, notifications); } - private void collectMBeanAttributeInfos(Set attributeInfos) + private void collectMBeanAttributeInfos(Map attributeInfos) { - // Priority to local attributes, then to interfaces then to superClass. - _attributes.values().stream() - .map(info -> info._info) - .collect(Collectors.toCollection(() -> attributeInfos)); + // Start with interfaces, overwrite with superClass, then overwrite with local attributes. for (MetaData intf : _interfaces) intf.collectMBeanAttributeInfos(attributeInfos); if (_parent != null) { - MBeanInfo parentInfo = _parent.getMBeanInfo(); - attributeInfos.addAll(Arrays.asList(parentInfo.getAttributes())); + MBeanAttributeInfo[] parentAttributes = _parent.getMBeanInfo().getAttributes(); + for (MBeanAttributeInfo parentAttribute : parentAttributes) + attributeInfos.put(parentAttribute.getName(), parentAttribute); } + for (Map.Entry entry : _attributes.entrySet()) + attributeInfos.put(entry.getKey(), entry.getValue()._info); } - private void collectMBeanOperationInfos(Set operationInfos) + private void collectMBeanOperationInfos(Map operationInfos) { - // Priority to local operations, then to interfaces then to superClass. - _operations.values().stream() - .map(info -> info._info) - .collect(Collectors.toCollection(() -> operationInfos)); + // Start with interfaces, overwrite with superClass, then overwrite with local operations. for (MetaData intf : _interfaces) intf.collectMBeanOperationInfos(operationInfos); if (_parent != null) { - MBeanInfo parentInfo = _parent.getMBeanInfo(); - operationInfos.addAll(Arrays.asList(parentInfo.getOperations())); + MBeanOperationInfo[] parentOperations = _parent.getMBeanInfo().getOperations(); + for (MBeanOperationInfo parentOperation : parentOperations) + { + String signature = signature(parentOperation.getName(), Arrays.stream(parentOperation.getSignature()).map(MBeanParameterInfo::getType).toArray(String[]::new)); + operationInfos.put(signature, parentOperation); + } } + for (Map.Entry entry : _operations.entrySet()) + operationInfos.put(entry.getKey(), entry.getValue()._info); } private static MBeanException toMBeanException(InvocationTargetException x) @@ -297,7 +305,8 @@ class MetaData @Override public String toString() { - return String.format("%s@%x[%s]", getClass().getSimpleName(), hashCode(), _klass.getName()); + return String.format("%s@%x[%s, attrs=%s, opers=%s]", getClass().getSimpleName(), hashCode(), + _klass.getName(), _attributes.keySet(), _operations.keySet()); } private static class AttributeInfo From 304eac7460974a1690cb0b755dcd88a7fcdd21ff Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Mon, 24 Sep 2018 16:41:03 +1000 Subject: [PATCH 040/931] improved debug (more to do) Signed-off-by: Greg Wilkins --- .../src/main/resources/jetty-logging.properties | 1 + .../java/org/eclipse/jetty/jmx/MBeanContainer.java | 12 ++++++++++++ .../main/java/org/eclipse/jetty/jmx/MetaData.java | 12 ++++++++---- .../org/eclipse/jetty/server/AbstractConnector.java | 2 +- 4 files changed, 22 insertions(+), 5 deletions(-) diff --git a/examples/embedded/src/main/resources/jetty-logging.properties b/examples/embedded/src/main/resources/jetty-logging.properties index 810f9896c7e..08b834611b3 100644 --- a/examples/embedded/src/main/resources/jetty-logging.properties +++ b/examples/embedded/src/main/resources/jetty-logging.properties @@ -9,3 +9,4 @@ #org.eclipse.jetty.server.LEVEL=DEBUG #org.eclipse.jetty.servlets.LEVEL=DEBUG #org.eclipse.jetty.alpn.LEVEL=DEBUG +org.eclipse.jetty.jmx.LEVEL=DEBUG diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java index fb324bf1aae..1a49a9ee80e 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java @@ -32,6 +32,7 @@ import java.util.concurrent.atomic.AtomicInteger; import java.util.stream.Collectors; import javax.management.InstanceNotFoundException; +import javax.management.MBeanInfo; import javax.management.MBeanRegistrationException; import javax.management.MBeanServer; import javax.management.ObjectName; @@ -154,7 +155,18 @@ public class MBeanContainer implements Container.InheritedListener, Dumpable, De if (mbean instanceof ObjectMBean) ((ObjectMBean)mbean).setMBeanContainer(container); if (LOG.isDebugEnabled()) + { LOG.debug("MBean for {} is {}", o, mbean); + if (mbean instanceof ObjectMBean) + { + MBeanInfo info =((ObjectMBean)mbean).getMBeanInfo(); + for (Object a :info.getAttributes()) + LOG.debug(" {}", a); + for (Object a :info.getOperations()) + LOG.debug(" {}", a); + + } + } return mbean; } diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java index 425422f5a5f..24d80292968 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java @@ -188,7 +188,7 @@ class MetaData { AttributeInfo info = new AttributeInfo(attribute, method); if (LOG.isDebugEnabled()) - LOG.debug("Found attribute for {}: {}", klass.getName(), info); + LOG.debug("Found attribute {} for {}: {}", info._name, klass.getName(), info); _attributes.put(info._name, info); } ManagedOperation operation = method.getAnnotation(ManagedOperation.class); @@ -196,7 +196,7 @@ class MetaData { OperationInfo info = new OperationInfo(operation, method); if (LOG.isDebugEnabled()) - LOG.debug("Found operation for {}: {}", klass.getName(), info); + LOG.debug("Found operation {} for {}: {}", info._name, klass.getName(), info); _operations.put(info._name, info); } } @@ -375,6 +375,8 @@ class MetaData void setAttribute(Object value, ObjectMBean mbean) throws ReflectionException, MBeanException { + if (LOG.isDebugEnabled()) + LOG.debug("setAttribute {}.{}={} {}",mbean,_info.getName(), value, _info); try { if (_setter == null) @@ -441,8 +443,8 @@ class MetaData @Override public String toString() { - return String.format("%s@%x[%s,proxied=%b,convert=%b]", getClass().getSimpleName(), hashCode(), - _name, _proxied, _convert); + return String.format("%s@%x[%s,proxied=%b,convert=%b,info=%s]", getClass().getSimpleName(), hashCode(), + _name, _proxied, _convert, _info); } } @@ -484,6 +486,8 @@ class MetaData public Object invoke(Object[] args, ObjectMBean mbean) throws ReflectionException, MBeanException { + if (LOG.isDebugEnabled()) + LOG.debug("invoke {}.{}({}) {}",mbean,_info.getName(), Arrays.asList(args), _info); try { Object target = mbean.getManagedObject(); diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractConnector.java b/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractConnector.java index 224f523b129..80d61b8dd09 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractConnector.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractConnector.java @@ -226,7 +226,7 @@ public abstract class AbstractConnector extends ContainerLifeCycle implements Co } @Override - @ManagedAttribute("Idle timeout") + @ManagedAttribute public long getIdleTimeout() { return _idleTimeout; From 87aba86d745257314363cd9e75b0b9ba45a3c2f2 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Mon, 24 Sep 2018 17:00:58 +1000 Subject: [PATCH 041/931] fix findAttribute Signed-off-by: Greg Wilkins --- .../java/org/eclipse/jetty/jmx/MetaData.java | 25 +++++++++++++------ 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java index 24d80292968..11b0fda18e1 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java @@ -120,18 +120,27 @@ class MetaData { if (name == null) return null; - AttributeInfo result = _attributes.get(name); - if (result != null) - return result; + + AttributeInfo result = null; for (MetaData intf : _interfaces) { - result = intf.findAttribute(name); - if (result != null) - return result; + AttributeInfo r = intf.findAttribute(name); + if (r != null) + result = r; } + if (_parent != null) - return _parent.findAttribute(name); - return null; + { + AttributeInfo r = _parent.findAttribute(name); + if (r != null) + result = r; + } + + AttributeInfo r = _attributes.get(name); + if (r != null) + result = r; + + return result; } Object invoke(String name, String[] params, Object[] args, ObjectMBean mbean) throws ReflectionException, MBeanException From 92e70f2c84fc8fe017fe361f32adca875c7b05e7 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Mon, 24 Sep 2018 10:49:29 +0200 Subject: [PATCH 042/931] Issue #2727 - Revisit JMX MBean lookup behavior. Fixed invoke() lookup. Signed-off-by: Simone Bordet --- .../main/resources/jetty-logging.properties | 2 +- .../org/eclipse/jetty/jmx/MBeanContainer.java | 11 ++++---- .../java/org/eclipse/jetty/jmx/MetaData.java | 28 ++++++++++++------- .../jetty/server/AbstractConnector.java | 2 +- 4 files changed, 25 insertions(+), 18 deletions(-) diff --git a/examples/embedded/src/main/resources/jetty-logging.properties b/examples/embedded/src/main/resources/jetty-logging.properties index 08b834611b3..c0a226179d4 100644 --- a/examples/embedded/src/main/resources/jetty-logging.properties +++ b/examples/embedded/src/main/resources/jetty-logging.properties @@ -9,4 +9,4 @@ #org.eclipse.jetty.server.LEVEL=DEBUG #org.eclipse.jetty.servlets.LEVEL=DEBUG #org.eclipse.jetty.alpn.LEVEL=DEBUG -org.eclipse.jetty.jmx.LEVEL=DEBUG +#org.eclipse.jetty.jmx.LEVEL=DEBUG diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java index 1a49a9ee80e..17ef201b4e7 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java @@ -159,12 +159,11 @@ public class MBeanContainer implements Container.InheritedListener, Dumpable, De LOG.debug("MBean for {} is {}", o, mbean); if (mbean instanceof ObjectMBean) { - MBeanInfo info =((ObjectMBean)mbean).getMBeanInfo(); - for (Object a :info.getAttributes()) - LOG.debug(" {}", a); - for (Object a :info.getOperations()) - LOG.debug(" {}", a); - + MBeanInfo info = ((ObjectMBean)mbean).getMBeanInfo(); + for (Object a : info.getAttributes()) + LOG.debug(" {}", a); + for (Object a : info.getOperations()) + LOG.debug(" {}", a); } } return mbean; diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java index 11b0fda18e1..c290c727770 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java @@ -154,18 +154,26 @@ class MetaData private OperationInfo findOperation(String signature) { - OperationInfo result = _operations.get(signature); - if (result != null) - return result; + OperationInfo result = null; for (MetaData intf : _interfaces) { - result = intf.findOperation(signature); - if (result != null) - return result; + OperationInfo r = intf.findOperation(signature); + if (r != null) + result = r; } + if (_parent != null) - return _parent.findOperation(signature); - return null; + { + OperationInfo r = _parent.findOperation(signature); + if (r != null) + result = r; + } + + OperationInfo r = _operations.get(signature); + if (r != null) + result = r; + + return result; } private static Object newInstance(Constructor constructor, Object bean) @@ -385,7 +393,7 @@ class MetaData void setAttribute(Object value, ObjectMBean mbean) throws ReflectionException, MBeanException { if (LOG.isDebugEnabled()) - LOG.debug("setAttribute {}.{}={} {}",mbean,_info.getName(), value, _info); + LOG.debug("setAttribute {}.{}={} {}", mbean, _info.getName(), value, _info); try { if (_setter == null) @@ -496,7 +504,7 @@ class MetaData public Object invoke(Object[] args, ObjectMBean mbean) throws ReflectionException, MBeanException { if (LOG.isDebugEnabled()) - LOG.debug("invoke {}.{}({}) {}",mbean,_info.getName(), Arrays.asList(args), _info); + LOG.debug("invoke {}.{}({}) {}", mbean, _info.getName(), Arrays.asList(args), _info); try { Object target = mbean.getManagedObject(); diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractConnector.java b/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractConnector.java index 80d61b8dd09..ec7b51c62b4 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractConnector.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractConnector.java @@ -226,7 +226,7 @@ public abstract class AbstractConnector extends ContainerLifeCycle implements Co } @Override - @ManagedAttribute + @ManagedAttribute("The connection idle timeout in milliseconds") public long getIdleTimeout() { return _idleTimeout; From 08d0092cbde6fda3f664dd34b272c9fcd07c357f Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Tue, 25 Sep 2018 20:52:49 +1000 Subject: [PATCH 043/931] add a sys property with the it so we know which one fail otherwise it is always same name in jenkins (#2928) Signed-off-by: olivier lamy --- .../src/it/jetty-cdi-run-forked/pom.xml | 1 + .../src/it/jetty-deploy-war-mojo-it/pom.xml | 1 + .../jetty-simple-webapp/pom.xml | 1 + .../jetty-simple-webapp/pom.xml | 1 + .../jetty-run-mojo-it/jetty-simple-webapp/pom.xml | 1 + .../jetty-simple-webapp/pom.xml | 1 + .../jetty-simple-webapp/pom.xml | 1 + .../jetty-start-mojo-it/jetty-simple-webapp/pom.xml | 1 + .../src/it/run-mojo-gwt-it/beer-server/pom.xml | 1 + .../jetty/maven/plugin/it/TestGetContent.java | 13 +++++++------ 10 files changed, 16 insertions(+), 6 deletions(-) diff --git a/jetty-maven-plugin/src/it/jetty-cdi-run-forked/pom.xml b/jetty-maven-plugin/src/it/jetty-cdi-run-forked/pom.xml index 9208f7ecd10..0933746e86a 100644 --- a/jetty-maven-plugin/src/it/jetty-cdi-run-forked/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-cdi-run-forked/pom.xml @@ -57,6 +57,7 @@ ${jetty.port.file} true + ${project.groupId}:${project.artifactId} org.eclipse.jetty:jetty-maven-plugin diff --git a/jetty-maven-plugin/src/it/jetty-deploy-war-mojo-it/pom.xml b/jetty-maven-plugin/src/it/jetty-deploy-war-mojo-it/pom.xml index 528b0890f38..2ca1b218e2d 100644 --- a/jetty-maven-plugin/src/it/jetty-deploy-war-mojo-it/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-deploy-war-mojo-it/pom.xml @@ -43,6 +43,7 @@ ${jetty.port.file} + ${project.groupId}:${project.artifactId} Bean Validation Webapp example diff --git a/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-webapp/pom.xml b/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-webapp/pom.xml index 168dd7e7b2e..a1d4c8c1ea1 100644 --- a/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-webapp/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-webapp/pom.xml @@ -70,6 +70,7 @@ ${jetty.port.file} true true + ${project.groupId}:${project.artifactId} org.eclipse.jetty:jetty-maven-plugin diff --git a/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-webapp/pom.xml b/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-webapp/pom.xml index c8af2120bd4..9ba881556cf 100644 --- a/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-webapp/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-webapp/pom.xml @@ -70,6 +70,7 @@ ${jetty.port.file} true true + ${project.groupId}:${project.artifactId} org.eclipse.jetty:jetty-maven-plugin diff --git a/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-webapp/pom.xml b/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-webapp/pom.xml index d8514ea74e5..099146ad7e0 100644 --- a/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-webapp/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-webapp/pom.xml @@ -73,6 +73,7 @@ ${jetty.port.file} true true + ${project.groupId}:${project.artifactId} org.eclipse.jetty:jetty-maven-plugin diff --git a/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-webapp/pom.xml b/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-webapp/pom.xml index 0d75cad9095..ccb42203249 100644 --- a/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-webapp/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-webapp/pom.xml @@ -71,6 +71,7 @@ ${jetty.port.file} true true + ${project.groupId}:${project.artifactId} org.eclipse.jetty:jetty-maven-plugin diff --git a/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-webapp/pom.xml b/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-webapp/pom.xml index 6ab552d13e2..8b6c7257ac4 100644 --- a/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-webapp/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-webapp/pom.xml @@ -71,6 +71,7 @@ ${jetty.port.file} true true + ${project.groupId}:${project.artifactId} org.eclipse.jetty:jetty-maven-plugin diff --git a/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-webapp/pom.xml b/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-webapp/pom.xml index feea2dbd628..d807ad4c34f 100644 --- a/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-webapp/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-webapp/pom.xml @@ -69,6 +69,7 @@ ${jetty.port.file} true true + ${project.groupId}:${project.artifactId} org.eclipse.jetty:jetty-maven-plugin diff --git a/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-server/pom.xml b/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-server/pom.xml index eb5310f1eaa..9e6afd3bd7a 100644 --- a/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-server/pom.xml +++ b/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-server/pom.xml @@ -74,6 +74,7 @@ ${jetty.port.file} Please enter your name + ${project.groupId}:${project.artifactId} org.eclipse.jetty:jetty-maven-plugin diff --git a/jetty-maven-plugin/src/test/java/org/eclipse/jetty/maven/plugin/it/TestGetContent.java b/jetty-maven-plugin/src/test/java/org/eclipse/jetty/maven/plugin/it/TestGetContent.java index 5c74d08c79f..51495bf8d05 100644 --- a/jetty-maven-plugin/src/test/java/org/eclipse/jetty/maven/plugin/it/TestGetContent.java +++ b/jetty-maven-plugin/src/test/java/org/eclipse/jetty/maven/plugin/it/TestGetContent.java @@ -51,23 +51,24 @@ public class TestGetContent if (Boolean.getBoolean( "helloServlet" )) { String response = httpClient.GET( "http://localhost:" + port + "/hello?name=beer" ).getContentAsString(); - assertEquals( "Hello beer", response.trim() ); + assertEquals( "Hello beer", response.trim(), "it test " + System.getProperty( "maven.it.name" ) ); response = httpClient.GET( "http://localhost:" + port + "/hello?name=foo" ).getContentAsString(); - assertEquals( "Hello foo", response.trim() ); + assertEquals( "Hello foo", response.trim(), "it test " + System.getProperty( "maven.it.name" ) ); System.out.println( "helloServlet" ); } if (Boolean.getBoolean( "pingServlet" )) { - System.out.println( "pingServlet ok" ); - String response = httpClient.GET( "http://localhost:" + port + "/ping?name=beer" ).getContentAsString(); - assertEquals( "pong beer", response.trim() ); System.out.println( "pingServlet" ); + String response = httpClient.GET( "http://localhost:" + port + "/ping?name=beer" ).getContentAsString(); + assertEquals( "pong beer", response.trim(), "it test " + System.getProperty( "maven.it.name" ) ); + System.out.println( "pingServlet ok" ); } String contentCheck = System.getProperty( "contentCheck" ); if(StringUtils.isNotBlank( contentCheck ) ) { String response = httpClient.GET( "http://localhost:" + port ).getContentAsString(); - assertTrue(response.contains(contentCheck), "response not contentCheck: " + contentCheck + ", response:" + response); + assertTrue(response.contains(contentCheck), "it test " + System.getProperty( "maven.it.name" ) + + ", response not contentCheck: " + contentCheck + ", response:" + response); System.out.println( "contentCheck" ); } } From e4ff653295a0fe72b43736a74a9249c8c3b5b479 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 25 Sep 2018 22:11:25 +0200 Subject: [PATCH 044/931] Issue #2191 - JPMS Support. Introduced --jpms option in jetty-start to run Jetty from the module-path. Introduced [jpms] sections in *.mod files, to specify JPMS command line options that needs to be added to the command line generated by jetty-start. Bumped java.transaction-api to 1.3 because it has Automatic-Module-Name. Fixed ASM version lookup using ManifestUtils. Fixed WebInfConfiguration.findAndFilterContainerPaths() to properly scan the module-path, which may contain both files and directories. Signed-off-by: Simone Bordet --- .../src/main/config/modules/annotations.mod | 3 + .../jetty/annotations/AnnotationParser.java | 73 ++++---- .../startup/startup-base-vs-home.adoc | 2 +- .../startup/startup-classpath.adoc | 2 +- jetty-plus/pom.xml | 2 +- jetty-quickstart/pom.xml | 2 - .../java/org/eclipse/jetty/start/Main.java | 18 +- .../java/org/eclipse/jetty/start/Module.java | 11 ++ .../java/org/eclipse/jetty/start/Modules.java | 4 + .../org/eclipse/jetty/start/StartArgs.java | 159 +++++++++++++++++- .../org/eclipse/jetty/util/ManifestUtils.java | 28 +++ .../src/main/config/modules/webapp.mod | 3 + .../jetty/webapp/WebInfConfiguration.java | 44 ++--- pom.xml | 2 +- tests/test-quickstart/pom.xml | 1 - 15 files changed, 274 insertions(+), 80 deletions(-) diff --git a/jetty-annotations/src/main/config/modules/annotations.mod b/jetty-annotations/src/main/config/modules/annotations.mod index ca8c3bad139..5c58290955c 100644 --- a/jetty-annotations/src/main/config/modules/annotations.mod +++ b/jetty-annotations/src/main/config/modules/annotations.mod @@ -13,3 +13,6 @@ lib/annotations/*.jar [xml] # Enable annotation scanning webapp configurations etc/jetty-annotations.xml + +[jpms] +add-modules:org.objectweb.asm diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java index b6d9d35ceff..0b3fe364b6d 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java @@ -24,7 +24,6 @@ import java.io.InputStream; import java.net.URI; import java.net.URL; import java.nio.file.Path; -import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; import java.util.Collections; @@ -36,6 +35,7 @@ import java.util.concurrent.ConcurrentHashMap; import org.eclipse.jetty.util.JavaVersion; import org.eclipse.jetty.util.Loader; +import org.eclipse.jetty.util.ManifestUtils; import org.eclipse.jetty.util.MultiException; import org.eclipse.jetty.util.MultiReleaseJarFile; import org.eclipse.jetty.util.log.Log; @@ -69,9 +69,8 @@ import org.objectweb.asm.Opcodes; public class AnnotationParser { private static final Logger LOG = Log.getLogger(AnnotationParser.class); - protected static int ASM_OPCODE_VERSION = Opcodes.ASM6; //compatibility of api - protected static String ASM_OPCODE_VERSION_STR = "ASM6"; - + private static final int ASM_OPCODE_VERSION = Opcodes.ASM6; //compatibility of api + /** * Map of classnames scanned and the first location from which scan occurred */ @@ -86,48 +85,44 @@ public class AnnotationParser public static int asmVersion () { int asmVersion = ASM_OPCODE_VERSION; - Package asm = Opcodes.class.getPackage(); - if (asm == null) - LOG.warn("Unknown asm runtime version, assuming version {}", ASM_OPCODE_VERSION_STR); + String version = ManifestUtils.getVersion(Opcodes.class).orElse(null); + if (version == null) + { + LOG.warn("Unknown ASM version, assuming {}", ASM_OPCODE_VERSION); + } else { - String s = asm.getImplementationVersion(); - if (s==null) - LOG.info("Unknown asm implementation version, assuming version {}", ASM_OPCODE_VERSION_STR); - else + int dot = version.indexOf('.'); + version = version.substring(0, (dot < 0 ? version.length() : dot)).trim(); + try { - int dot = s.indexOf('.'); - s = s.substring(0, (dot < 0 ? s.length() : dot)).trim(); - try + int v = Integer.parseInt(version); + switch (v) { - int v = Integer.parseInt(s); - switch (v) + case 4: { - case 4: - { - asmVersion = Opcodes.ASM4; - break; - } - case 5: - { - asmVersion = Opcodes.ASM5; - break; - } - case 6: - { - asmVersion = Opcodes.ASM6; - break; - } - default: - { - LOG.warn("Unrecognized runtime asm version, assuming {}", ASM_OPCODE_VERSION_STR); - } + asmVersion = Opcodes.ASM4; + break; + } + case 5: + { + asmVersion = Opcodes.ASM5; + break; + } + case 6: + { + asmVersion = Opcodes.ASM6; + break; + } + default: + { + LOG.warn("Unrecognized ASM version, assuming {}", ASM_OPCODE_VERSION); } } - catch (NumberFormatException e) - { - LOG.warn("Unable to parse runtime asm version, assuming version {}", ASM_OPCODE_VERSION_STR); - } + } + catch (NumberFormatException e) + { + LOG.warn("Unable to parse ASM version, assuming {}", ASM_OPCODE_VERSION); } } return asmVersion; diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/startup-base-vs-home.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/startup-base-vs-home.adoc index e5c347a8a00..93634198870 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/startup-base-vs-home.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/startup-base-vs-home.adoc @@ -170,7 +170,7 @@ Note: order presented here is how they would appear on the classpath. 13: {VERSION} | ${jetty.home}/lib/jetty-jndi-{VERSION}.jar 14: 1.1.0.v201105071233 | ${jetty.home}/lib/jndi/javax.activation-1.1.0.v201105071233.jar 15: 1.4.1.v201005082020 | ${jetty.home}/lib/jndi/javax.mail.glassfish-1.4.1.v201005082020.jar -16: 1.2 | ${jetty.home}/lib/jndi/javax.transaction-api-1.2.jar +16: 1.3 | ${jetty.home}/lib/jndi/javax.transaction-api-1.3.jar 17: {VERSION} | ${jetty.home}/lib/jetty-rewrite-{VERSION}.jar 18: {VERSION} | ${jetty.home}/lib/jetty-security-{VERSION}.jar 19: {VERSION} | ${jetty.home}/lib/jetty-servlet-{VERSION}.jar diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/startup-classpath.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/startup-classpath.adoc index 4a51bc158bb..648664e42f6 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/startup-classpath.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/startup-classpath.adoc @@ -80,7 +80,7 @@ Note: order presented here is how they would appear on the classpath. 13: {VERSION} | ${jetty.home}/lib/jetty-jndi-{VERSION}.jar 14: 1.1.0.v201105071233 | ${jetty.home}/lib/jndi/javax.activation-1.1.0.v201105071233.jar 15: 1.4.1.v201005082020 | ${jetty.home}/lib/jndi/javax.mail.glassfish-1.4.1.v201005082020.jar -16: 1.2 | ${jetty.home}/lib/jndi/javax.transaction-api-1.2.jar +16: 1.3 | ${jetty.home}/lib/jndi/javax.transaction-api-1.3.jar 17: {VERSION} | ${jetty.home}/lib/jetty-rewrite-{VERSION}.jar 18: {VERSION} | ${jetty.home}/lib/jetty-security-{VERSION}.jar 19: {VERSION} | ${jetty.home}/lib/jetty-servlet-{VERSION}.jar diff --git a/jetty-plus/pom.xml b/jetty-plus/pom.xml index 5f5cdb99982..e1a32f8345f 100644 --- a/jetty-plus/pom.xml +++ b/jetty-plus/pom.xml @@ -43,7 +43,7 @@ true - javax.transaction*;version="[1.1,1.3)",* + javax.transaction*;version="[1.3)",* diff --git a/jetty-quickstart/pom.xml b/jetty-quickstart/pom.xml index 1f76a98f0cb..4547244c9c4 100644 --- a/jetty-quickstart/pom.xml +++ b/jetty-quickstart/pom.xml @@ -37,7 +37,6 @@ javax.transaction javax.transaction-api - 1.2 compile @@ -49,7 +48,6 @@ org.eclipse.jetty.orbit javax.mail.glassfish - 1.4.1.v201005082020 test diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/Main.java b/jetty-start/src/main/java/org/eclipse/jetty/start/Main.java index 59c7dc72a46..c032034f2ed 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/Main.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/Main.java @@ -18,11 +18,6 @@ package org.eclipse.jetty.start; -import static org.eclipse.jetty.start.UsageException.ERR_BAD_STOP_PROPS; -import static org.eclipse.jetty.start.UsageException.ERR_INVOKE_MAIN; -import static org.eclipse.jetty.start.UsageException.ERR_NOT_STOPPED; -import static org.eclipse.jetty.start.UsageException.ERR_UNKNOWN; - import java.io.BufferedReader; import java.io.File; import java.io.IOException; @@ -44,6 +39,11 @@ import org.eclipse.jetty.start.Props.Prop; import org.eclipse.jetty.start.config.CommandLineConfigSource; import org.eclipse.jetty.start.config.ConfigSource; +import static org.eclipse.jetty.start.UsageException.ERR_BAD_STOP_PROPS; +import static org.eclipse.jetty.start.UsageException.ERR_INVOKE_MAIN; +import static org.eclipse.jetty.start.UsageException.ERR_NOT_STOPPED; +import static org.eclipse.jetty.start.UsageException.ERR_UNKNOWN; + /** * Main start class. *

@@ -353,9 +353,13 @@ public class Main // ------------------------------------------------------------ // 6) Resolve Extra XMLs args.resolveExtraXmls(); - + // ------------------------------------------------------------ - // 9) Resolve Property Files + // 7) JPMS Expansion + args.expandJPMS(activeModules); + + // ------------------------------------------------------------ + // 8) Resolve Property Files args.resolvePropertyFiles(); return args; diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/Module.java b/jetty-start/src/main/java/org/eclipse/jetty/start/Module.java index 0bdd74b2b11..d449001d39c 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/Module.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/Module.java @@ -89,6 +89,9 @@ public class Module implements Comparable /** List of library options for this Module */ private final List _libs=new ArrayList<>(); + + /** List of JPMS options for this Module */ + private final List _jpms=new ArrayList<>(); /** List of files for this Module */ private final List _files=new ArrayList<>(); @@ -229,6 +232,11 @@ public class Module implements Comparable { return _xmls; } + + public List getJPMS() + { + return _jpms; + } public Version getVersion() { @@ -350,6 +358,9 @@ public class Module implements Comparable case "LIBS": _libs.add(line); break; + case "JPMS": + _jpms.add(line); + break; case "LICENSE": case "LICENSES": case "LICENCE": diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/Modules.java b/jetty-start/src/main/java/org/eclipse/jetty/start/Modules.java index 69bcad311d9..e5930122ca4 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/Modules.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/Modules.java @@ -154,6 +154,10 @@ public class Modules implements Iterable { System.out.printf(" XML: %s%n",xml); } + for (String jpms : module.getJPMS()) + { + System.out.printf(" JPMS: %s%n",jpms); + } for (String jvm : module.getJvmArgs()) { System.out.printf(" JVM: %s%n",jvm); diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java b/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java index 69c61b54023..cb363dfd485 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java @@ -27,9 +27,12 @@ import java.net.URL; import java.nio.file.Files; import java.nio.file.Path; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collections; import java.util.HashMap; import java.util.HashSet; +import java.util.LinkedHashMap; +import java.util.LinkedHashSet; import java.util.List; import java.util.ListIterator; import java.util.Map; @@ -37,6 +40,8 @@ import java.util.Properties; import java.util.Set; import java.util.StringTokenizer; import java.util.jar.Manifest; +import java.util.stream.Collectors; +import java.util.stream.StreamSupport; import org.eclipse.jetty.start.Props.Prop; import org.eclipse.jetty.start.config.ConfigSource; @@ -109,7 +114,8 @@ public class StartArgs System.setProperty("jetty.tag.version", tag); } - private static final String SERVER_MAIN = "org.eclipse.jetty.xml.XmlConfiguration"; + private static final String MAIN_CLASS = "org.eclipse.jetty.xml.XmlConfiguration"; + private static final String MODULE_MAIN_CLASS = "org.eclipse.jetty.xml/org.eclipse.jetty.xml.XmlConfiguration"; private final BaseHome baseHome; @@ -131,6 +137,13 @@ public class StartArgs /** List of all active [xml] sections from enabled modules */ private List xmls = new ArrayList<>(); + /** List of all active [jpms] sections for enabled modules */ + private Set jmodAdds = new LinkedHashSet<>(); + private Map> jmodPatch = new LinkedHashMap<>(); + private Map> jmodOpens = new LinkedHashMap<>(); + private Map> jmodExports = new LinkedHashMap<>(); + private Map> jmodReads = new LinkedHashMap<>(); + /** JVM arguments, found via command line and in all active [exec] sections from enabled modules */ private List jvmArgs = new ArrayList<>(); @@ -173,6 +186,7 @@ public class StartArgs private boolean listConfig = false; private boolean version = false; private boolean dryRun = false; + private boolean jpms = false; private boolean createStartd = false; private boolean updateIni = false; private String mavenBaseUri; @@ -540,6 +554,57 @@ public class StartArgs } } + void expandJPMS(List activeModules) + { + for (Module module : activeModules) + { + for (String line : module.getJPMS()) + { + line = properties.expand(line); + String directive; + if (line.startsWith(directive = "add-modules:")) + { + String[] names = line.substring(directive.length()).split(","); + Arrays.stream(names).map(String::trim).collect(Collectors.toCollection(() -> jmodAdds)); + } + else if (line.startsWith(directive = "patch-module:")) + { + parseJPMSKeyValue(module, line, directive, File.pathSeparator, jmodPatch); + } + else if (line.startsWith(directive = "add-opens:")) + { + parseJPMSKeyValue(module, line, directive, ",", jmodOpens); + } + else if (line.startsWith(directive = "add-exports:")) + { + parseJPMSKeyValue(module, line, directive, ",", jmodExports); + } + else if (line.startsWith(directive = "add-reads:")) + { + parseJPMSKeyValue(module, line, directive, ",", jmodReads); + } + else + { + throw new IllegalArgumentException("Invalid [jpms] directive " + directive + " in module " + module.getName() + ": " + line); + } + } + } + StartLog.debug("Expanded JPMS directives:%nadd-modules: %s%npatch-modules: %s%nadd-opens: %s%nadd-exports: %s%nadd-reads: %s", + jmodAdds, jmodPatch, jmodOpens, jmodExports, jmodReads); + } + + private void parseJPMSKeyValue(Module module, String line, String directive, String delimiter, Map> output) + { + String value = line.substring(directive.length()); + int equals = value.indexOf('='); + if (equals <= 0) + throw new IllegalArgumentException("Invalid [jpms] directive " + directive + " in module " + module.getName() + ": " + line); + String key = value.substring(0, equals).trim(); + List values = Arrays.asList(value.substring(equals + 1).split(delimiter)); + values = values.stream().map(String::trim).collect(Collectors.toList()); + output.computeIfAbsent(key, k -> new LinkedHashSet<>()).addAll(values); + } + public List getStartModules() { return startModules; @@ -611,9 +676,76 @@ public class StartArgs cmd.addEqualsArg("-D" + propKey,value); } - cmd.addRawArg("-cp"); - cmd.addRawArg(classpath.toString()); - cmd.addRawArg(getMainClassname()); + if (isJPMS()) + { + Map> dirsAndFiles = StreamSupport.stream(classpath.spliterator(), false) + .collect(Collectors.groupingBy(File::isDirectory)); + List files = dirsAndFiles.get(false); + if (!files.isEmpty()) + { + cmd.addRawArg("--module-path"); + String modules = files.stream() + .map(File::getAbsolutePath) + .collect(Collectors.joining(File.pathSeparator)); + cmd.addRawArg(modules); + } + List dirs = dirsAndFiles.get(true); + if (!dirs.isEmpty()) + { + cmd.addRawArg("--class-path"); + String directories = dirs.stream() + .map(File::getAbsolutePath) + .collect(Collectors.joining(File.pathSeparator)); + cmd.addRawArg(directories); + } + + if (!jmodAdds.isEmpty()) + { + cmd.addRawArg("--add-modules"); + cmd.addRawArg(String.join(",", jmodAdds)); + } + if (!jmodPatch.isEmpty()) + { + for (Map.Entry> entry : jmodPatch.entrySet()) + { + cmd.addRawArg("--patch-module"); + cmd.addRawArg(entry.getKey() + "=" + String.join(File.pathSeparator, entry.getValue())); + } + } + if (!jmodOpens.isEmpty()) + { + for (Map.Entry> entry : jmodOpens.entrySet()) + { + cmd.addRawArg("--add-opens"); + cmd.addRawArg(entry.getKey() + "=" + String.join(",", entry.getValue())); + } + } + if (!jmodExports.isEmpty()) + { + for (Map.Entry> entry : jmodExports.entrySet()) + { + cmd.addRawArg("--add-exports"); + cmd.addRawArg(entry.getKey() + "=" + String.join(",", entry.getValue())); + } + } + if (!jmodReads.isEmpty()) + { + for (Map.Entry> entry : jmodReads.entrySet()) + { + cmd.addRawArg("--add-reads"); + cmd.addRawArg(entry.getKey() + "=" + String.join(",", entry.getValue())); + } + } + + cmd.addRawArg("--module"); + cmd.addRawArg(getMainClassname()); + } + else + { + cmd.addRawArg("-cp"); + cmd.addRawArg(classpath.toString()); + cmd.addRawArg(getMainClassname()); + } } @@ -656,8 +788,8 @@ public class StartArgs public String getMainClassname() { - String mainclass = System.getProperty("jetty.server",SERVER_MAIN); - return System.getProperty("main.class",mainclass); + String mainClass = System.getProperty("jetty.server", isJPMS() ? MODULE_MAIN_CLASS : MAIN_CLASS); + return System.getProperty("main.class", mainClass); } public String getMavenLocalRepoDir() @@ -764,6 +896,11 @@ public class StartArgs return createFiles; } + public boolean isJPMS() + { + return jpms; + } + public boolean isDryRun() { return dryRun; @@ -781,7 +918,7 @@ public class StartArgs public boolean isNormalMainClass() { - return SERVER_MAIN.equals(getMainClassname()); + return MAIN_CLASS.equals(getMainClassname()); } public boolean isHelp() @@ -973,6 +1110,14 @@ public class StartArgs return; } + if ("--jpms".equals(arg)) + { + jpms = true; + // Need to fork because we cannot use JDK 9 Module APIs. + exec = true; + return; + } + if ("--dry-run".equals(arg) || "--exec-print".equals(arg)) { dryRun = true; diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ManifestUtils.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ManifestUtils.java index f39d54caa3b..83e9f5517a8 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ManifestUtils.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ManifestUtils.java @@ -54,4 +54,32 @@ public class ManifestUtils return Optional.empty(); } } + + /** + *

Attempts to return the version of the jar/module for the given class.

+ *

First, retrieves the {@code Implementation-Version} main attribute of the manifest; + * if that is missing, retrieves the JPMS module version (via reflection); + * if that is missing, returns an empty Optional.

+ * + * @param klass the class of the jar/module to retrieve the version + * @return the jar/module version, or an empty Optional + */ + public static Optional getVersion(Class klass) + { + Optional version = getManifest(klass).map(Manifest::getMainAttributes) + .map(attributes -> attributes.getValue("Implementation-Version")); + if (version.isPresent()) + return version; + + try + { + Object module = klass.getClass().getMethod("getModule").invoke(klass); + Object descriptor = module.getClass().getMethod("getDescriptor").invoke(module); + return (Optional)descriptor.getClass().getMethod("rawVersion").invoke(descriptor); + } + catch (Throwable x) + { + return Optional.empty(); + } + } } diff --git a/jetty-webapp/src/main/config/modules/webapp.mod b/jetty-webapp/src/main/config/modules/webapp.mod index 8b9186549bc..d41e57ce4a9 100644 --- a/jetty-webapp/src/main/config/modules/webapp.mod +++ b/jetty-webapp/src/main/config/modules/webapp.mod @@ -30,3 +30,6 @@ lib/jetty-webapp-${jetty.version}.jar ## #jetty.webapp.addSystemClasses+=,org.example. #jetty.webapp.addServerClasses+=,org.example. + +[jpms] +add-modules:java.instrument diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebInfConfiguration.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebInfConfiguration.java index 8e7dc4b550f..d5cc4c1b09d 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebInfConfiguration.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebInfConfiguration.java @@ -159,8 +159,6 @@ public class WebInfConfiguration extends AbstractConfiguration context.getMetaData().setWebInfClassesDirs(findClassDirs(context)); } - - /** * Find jars and directories that are on the container's classpath * and apply an optional filter. The filter is a pattern applied to the @@ -177,15 +175,14 @@ public class WebInfConfiguration extends AbstractConfiguration * @param context the WebAppContext being deployed * @throws Exception if unable to apply optional filtering on the container's classpath */ - public void findAndFilterContainerPaths (final WebAppContext context) - throws Exception + public void findAndFilterContainerPaths (final WebAppContext context) throws Exception { //assume the target jvm is the same as that running int targetPlatform = JavaVersion.VERSION.getPlatform(); //allow user to specify target jvm different to current runtime Object target = context.getAttribute(JavaVersion.JAVA_TARGET_PLATFORM); if (target!=null) - targetPlatform = Integer.valueOf(target.toString()).intValue(); + targetPlatform = Integer.parseInt(target.toString()); //Apply an initial name filter to the jars to select which will be eventually //scanned for META-INF info and annotations. The filter is based on inclusion patterns. @@ -199,7 +196,7 @@ public class WebInfConfiguration extends AbstractConfiguration List containerUris = new ArrayList<>(); - while (loader != null && (loader instanceof URLClassLoader)) + while (loader instanceof URLClassLoader) { URL[] urls = ((URLClassLoader)loader).getURLs(); if (urls != null) @@ -219,12 +216,13 @@ public class WebInfConfiguration extends AbstractConfiguration loader = loader.getParent(); } - if (LOG.isDebugEnabled()) LOG.debug("Matching container urls {}", containerUris); + if (LOG.isDebugEnabled()) + LOG.debug("Matching container urls {}", containerUris); containerPathNameMatcher.match(containerUris); //if running on jvm 9 or above, we we won't be able to look at the application classloader //to extract urls, so we need to examine the classpath instead. - if (JavaVersion.VERSION.getPlatform() >= 9) + if (targetPlatform >= 9) { tmp = System.getProperty("java.class.path"); if (tmp != null) @@ -236,7 +234,8 @@ public class WebInfConfiguration extends AbstractConfiguration File f = new File(entry); cpUris.add(f.toURI()); } - if (LOG.isDebugEnabled()) LOG.debug("Matching java.class.path {}", cpUris); + if (LOG.isDebugEnabled()) + LOG.debug("Matching java.class.path {}", cpUris); containerPathNameMatcher.match(cpUris); } } @@ -253,28 +252,33 @@ public class WebInfConfiguration extends AbstractConfiguration { List moduleUris = new ArrayList<>(); String[] entries = tmp.split(File.pathSeparator); - for (String entry:entries) + for (String entry : entries) { - File dir = new File(entry); - File[] files = dir.listFiles(); - if (files != null) + File file = new File(entry); + if (file.isDirectory()) { - for (File f:files) + File[] files = file.listFiles(); + if (files != null) { - moduleUris.add(f.toURI()); + for (File f : files) + moduleUris.add(f.toURI()); } } - + else + { + moduleUris.add(file.toURI()); + } } - if (LOG.isDebugEnabled()) LOG.debug("Matching jdk.module.path {}", moduleUris); + if (LOG.isDebugEnabled()) + LOG.debug("Matching jdk.module.path {}", moduleUris); containerPathNameMatcher.match(moduleUris); } } - if (LOG.isDebugEnabled()) LOG.debug("Container paths selected:{}", context.getMetaData().getContainerResources()); + if (LOG.isDebugEnabled()) + LOG.debug("Container paths selected:{}", context.getMetaData().getContainerResources()); } - - + /** * Finds the jars that are either physically or virtually in * WEB-INF/lib, and applies an optional filter to their full diff --git a/pom.xml b/pom.xml index 5f952f93347..0edb642ac71 100644 --- a/pom.xml +++ b/pom.xml @@ -1020,7 +1020,7 @@ javax.transaction javax.transaction-api - 1.2 + 1.3 provided diff --git a/tests/test-quickstart/pom.xml b/tests/test-quickstart/pom.xml index 013d9ca080a..1fd74d1ce22 100644 --- a/tests/test-quickstart/pom.xml +++ b/tests/test-quickstart/pom.xml @@ -44,7 +44,6 @@ javax.transaction javax.transaction-api - 1.2 org.eclipse.jetty.tests From 5593e5b479291c36ab3703d37753663c90c4cce6 Mon Sep 17 00:00:00 2001 From: Jan Bartel Date: Wed, 26 Sep 2018 11:27:57 +1000 Subject: [PATCH 045/931] Jetty 9.4.x 2903 delay listener instantiation (#2930) * Issue #2903 Ensure listeners not instantiated for quickstart gen Signed-off-by: Jan Bartel --- .../annotations/WebListenerAnnotation.java | 6 +- jetty-maven-plugin/pom.xml | 20 ++++ .../QuickStartDescriptorGenerator.java | 9 +- .../jetty/quickstart/TestQuickStart.java | 7 +- .../eclipse/jetty/servlet/ListenerHolder.java | 94 +++++++++++++++---- .../jetty/servlet/ServletContextHandler.java | 9 +- .../webapp/StandardDescriptorProcessor.java | 24 +---- 7 files changed, 118 insertions(+), 51 deletions(-) diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebListenerAnnotation.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebListenerAnnotation.java index 5478d5637ab..89f9ba4f704 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebListenerAnnotation.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebListenerAnnotation.java @@ -81,12 +81,10 @@ public class WebListenerAnnotation extends DiscoveredAnnotation { MetaData metaData = _context.getMetaData(); if (metaData.getOrigin(clazz.getName()+".listener") == Origin.NotSet) - { - java.util.EventListener listener = (java.util.EventListener)_context.getServletContext().createInstance(clazz); + { ListenerHolder h = _context.getServletHandler().newListenerHolder(new Source(Source.Origin.ANNOTATION, clazz.getName())); - h.setListener(listener); + h.setHeldClass(clazz); _context.getServletHandler().addListener(h); - _context.addEventListener(listener); } } else diff --git a/jetty-maven-plugin/pom.xml b/jetty-maven-plugin/pom.xml index c4d02c88a29..d631db23eb0 100644 --- a/jetty-maven-plugin/pom.xml +++ b/jetty-maven-plugin/pom.xml @@ -185,6 +185,26 @@ jetty-server ${project.version} + + org.eclipse.jetty + jetty-servlet + ${project.version} + + + org.eclipse.jetty + jetty-client + ${project.version} + + + org.eclipse.jetty + jetty-http + ${project.version} + + + org.eclipse.jetty + jetty-io + ${project.version} + org.eclipse.jetty jetty-jmx diff --git a/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartDescriptorGenerator.java b/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartDescriptorGenerator.java index 9a27e1e36c2..896bc4f84bf 100644 --- a/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartDescriptorGenerator.java +++ b/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartDescriptorGenerator.java @@ -51,6 +51,7 @@ import org.eclipse.jetty.security.authentication.FormAuthenticator; import org.eclipse.jetty.servlet.ErrorPageErrorHandler; import org.eclipse.jetty.servlet.FilterHolder; import org.eclipse.jetty.servlet.FilterMapping; +import org.eclipse.jetty.servlet.ListenerHolder; import org.eclipse.jetty.servlet.ServletContextHandler.JspConfig; import org.eclipse.jetty.servlet.ServletHandler; import org.eclipse.jetty.servlet.ServletHolder; @@ -176,10 +177,10 @@ public class QuickStartDescriptorGenerator .tag("param-value",_webApp.getInitParameter(p)) .closeTag(); - if (_webApp.getEventListeners() != null) - for (EventListener e : _webApp.getEventListeners()) - out.openTag("listener",origin(md,e.getClass().getCanonicalName() + ".listener")) - .tag("listener-class",e.getClass().getCanonicalName()) + if (_webApp.getServletHandler().getListeners() != null) + for (ListenerHolder e : _webApp.getServletHandler().getListeners()) + out.openTag("listener",origin(md,e.getClassName() + ".listener")) + .tag("listener-class",e.getClassName()) .closeTag(); ServletHandler servlets = _webApp.getServletHandler(); diff --git a/jetty-quickstart/src/test/java/org/eclipse/jetty/quickstart/TestQuickStart.java b/jetty-quickstart/src/test/java/org/eclipse/jetty/quickstart/TestQuickStart.java index 0636f18b921..df0a5aa91d1 100644 --- a/jetty-quickstart/src/test/java/org/eclipse/jetty/quickstart/TestQuickStart.java +++ b/jetty-quickstart/src/test/java/org/eclipse/jetty/quickstart/TestQuickStart.java @@ -24,6 +24,7 @@ import static org.junit.jupiter.api.Assertions.*; import java.io.File; import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.servlet.ListenerHolder; import org.eclipse.jetty.servlet.ServletHolder; import org.eclipse.jetty.toolchain.test.FS; import org.eclipse.jetty.toolchain.test.MavenTestingUtils; @@ -69,8 +70,10 @@ public class TestQuickStart ServletHolder fooHolder = new ServletHolder(); fooHolder.setServlet(new FooServlet()); fooHolder.setName("foo"); - quickstart.getServletHandler().addServlet(fooHolder); - quickstart.addEventListener(new FooContextListener()); + quickstart.getServletHandler().addServlet(fooHolder); + ListenerHolder lholder = new ListenerHolder(); + lholder.setListener(new FooContextListener()); + quickstart.getServletHandler().addListener(lholder); server.setHandler(quickstart); server.start(); server.stop(); diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ListenerHolder.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ListenerHolder.java index d09e298e7e8..9e94f463f62 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ListenerHolder.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ListenerHolder.java @@ -21,54 +21,112 @@ package org.eclipse.jetty.servlet; import java.util.EventListener; +import javax.servlet.ServletContext; +import javax.servlet.ServletException; + /** * ListenerHolder * - * Specialization of AbstractHolder for servlet listeners. This + * Specialization of BaseHolder for servlet listeners. This * allows us to record where the listener originated - web.xml, * annotation, api etc. */ public class ListenerHolder extends BaseHolder { private EventListener _listener; + private boolean _initialized = false; + public ListenerHolder () + { + this (Source.EMBEDDED); + } + public ListenerHolder(Source source) { super(source); } - - public void setListener(EventListener listener) - { - _listener = listener; - setClassName(listener.getClass().getName()); - setHeldClass(listener.getClass()); - _extInstance=true; - } - + public EventListener getListener() { return _listener; } + /** + * Set an explicit instance. In this case, + * just like ServletHolder and FilterHolder, + * the listener will not be introspected for + * annotations like Resource etc. + * + * @param listener + */ + public void setListener (EventListener listener) + { + _listener = listener; + _extInstance=true; + setHeldClass(_listener.getClass()); + setClassName(_listener.getClass().getName()); + } + + + public void initialize (ServletContext context) throws Exception + { + if (!_initialized) + { + initialize(); + + if (_listener == null) + { + //create an instance of the listener and decorate it + try + { + _listener = (context instanceof ServletContextHandler.Context) + ?((ServletContextHandler.Context)context).createListener(getHeldClass()) + :getHeldClass().getDeclaredConstructor().newInstance(); + + } + catch (ServletException se) + { + Throwable cause = se.getRootCause(); + if (cause instanceof InstantiationException) + throw (InstantiationException)cause; + if (cause instanceof IllegalAccessException) + throw (IllegalAccessException)cause; + throw se; + } + } + _initialized = true; + } + } + @Override public void doStart() throws Exception { - //Listeners always have an instance eagerly created, it cannot be deferred to the doStart method - if (_listener == null) - throw new IllegalStateException("No listener instance"); - super.doStart(); + if (!java.util.EventListener.class.isAssignableFrom(_class)) + { + String msg = _class+" is not a java.util.EventListener"; + super.stop(); + throw new IllegalStateException(msg); + } } + + @Override + public void doStop() throws Exception + { + super.doStop(); + if (!_extInstance) + _listener = null; + _initialized = false; + } + @Override public String toString() { - return super.toString()+(_listener == null?"":": "+getClassName()); - } - - + return super.toString()+": "+getClassName(); + } } diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletContextHandler.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletContextHandler.java index ec0b6e853d2..8729025410b 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletContextHandler.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletContextHandler.java @@ -356,13 +356,16 @@ public class ServletContextHandler extends ContextHandler if (_servletHandler != null) { - // Call decorators on all holders, and also on any EventListeners before - // decorators are called on any other classes (like servlets and filters) + //Ensure listener instances are created, added to ContextHandler if(_servletHandler.getListeners() != null) { for (ListenerHolder holder:_servletHandler.getListeners()) { - _objFactory.decorate(holder.getListener()); + holder.start(); + //we need to pass in the context because the ServletHandler has not + //yet got a reference to the ServletContext (happens in super.startContext) + holder.initialize(_scontext); + addEventListener(holder.getListener()); } } } diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/StandardDescriptorProcessor.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/StandardDescriptorProcessor.java index cae3782b160..fdfaede611b 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/StandardDescriptorProcessor.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/StandardDescriptorProcessor.java @@ -1911,17 +1911,11 @@ public class StandardDescriptorProcessor extends IterativeDescriptorProcessor } ((WebDescriptor)descriptor).addClassName(className); - - Class listenerClass = (Class)context.loadClass(className); - listener = newListenerInstance(context,listenerClass, descriptor); - if (!(listener instanceof EventListener)) - { - LOG.warn("Not an EventListener: " + listener); - return; - } - context.addEventListener(listener); + + ListenerHolder h = context.getServletHandler().newListenerHolder(new Source (Source.Origin.DESCRIPTOR, descriptor.getResource().toString())); + h.setClassName(className); + context.getServletHandler().addListener(h); context.getMetaData().setOrigin(className+".listener", descriptor); - } } catch (Exception e) @@ -1960,14 +1954,4 @@ public class StandardDescriptorProcessor extends IterativeDescriptorProcessor ((ConstraintAware)context.getSecurityHandler()).setDenyUncoveredHttpMethods(true); } - - public EventListener newListenerInstance(WebAppContext context,Class clazz, Descriptor descriptor) throws Exception - { - ListenerHolder h = context.getServletHandler().newListenerHolder(new Source (Source.Origin.DESCRIPTOR, descriptor.getResource().toString())); - EventListener l = context.getServletContext().createInstance(clazz); - h.setListener(l); - context.getServletHandler().addListener(h); - return l; - - } } From 22cbbdc90047ca1632622192a07dae92cdf44369 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Wed, 26 Sep 2018 12:41:12 +0200 Subject: [PATCH 046/931] Issue #2191 - JPMS Support. Reverted wrong change in WebInfConfiguration.findAndFilterContainerPaths(). Signed-off-by: Simone Bordet --- .../java/org/eclipse/jetty/webapp/WebInfConfiguration.java | 5 +++-- jetty-webapp/src/test/resources/jetty-logging.properties | 3 +-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebInfConfiguration.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebInfConfiguration.java index d5cc4c1b09d..f38bc347ad8 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebInfConfiguration.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebInfConfiguration.java @@ -178,8 +178,9 @@ public class WebInfConfiguration extends AbstractConfiguration public void findAndFilterContainerPaths (final WebAppContext context) throws Exception { //assume the target jvm is the same as that running - int targetPlatform = JavaVersion.VERSION.getPlatform(); + int currentPlatform = JavaVersion.VERSION.getPlatform(); //allow user to specify target jvm different to current runtime + int targetPlatform = currentPlatform; Object target = context.getAttribute(JavaVersion.JAVA_TARGET_PLATFORM); if (target!=null) targetPlatform = Integer.parseInt(target.toString()); @@ -222,7 +223,7 @@ public class WebInfConfiguration extends AbstractConfiguration //if running on jvm 9 or above, we we won't be able to look at the application classloader //to extract urls, so we need to examine the classpath instead. - if (targetPlatform >= 9) + if (currentPlatform >= 9) { tmp = System.getProperty("java.class.path"); if (tmp != null) diff --git a/jetty-webapp/src/test/resources/jetty-logging.properties b/jetty-webapp/src/test/resources/jetty-logging.properties index 4c4c7f8eddc..3c7f5b26a47 100644 --- a/jetty-webapp/src/test/resources/jetty-logging.properties +++ b/jetty-webapp/src/test/resources/jetty-logging.properties @@ -1,6 +1,5 @@ -# Setup default logging implementation for during testing org.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.StdErrLog -org.eclipse.jetty.LEVEL=INFO +#org.eclipse.jetty.LEVEL=DEBUG # org.eclipse.jetty.webapp.WebAppClassLoader.LEVEL=DEBUG # org.eclipse.jetty.util.LEVEL=DEBUG # org.eclipse.jetty.util.PathWatcher.Noisy.LEVEL=OFF From 81d02893dc441db989b47d57546d40d3a4c426a8 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Wed, 26 Sep 2018 13:21:40 +0200 Subject: [PATCH 047/931] Issue #2191 - JPMS Support. Using BaseHome.getPaths() to resolve paths for patches modules. Signed-off-by: Simone Bordet --- .../org/eclipse/jetty/start/StartArgs.java | 37 +++++++++++++------ 1 file changed, 25 insertions(+), 12 deletions(-) diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java b/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java index cb363dfd485..314c9ed3bf4 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java @@ -554,7 +554,7 @@ public class StartArgs } } - void expandJPMS(List activeModules) + void expandJPMS(List activeModules) throws IOException { for (Module module : activeModules) { @@ -569,19 +569,19 @@ public class StartArgs } else if (line.startsWith(directive = "patch-module:")) { - parseJPMSKeyValue(module, line, directive, File.pathSeparator, jmodPatch); + parseJPMSKeyValue(module, line, directive, true, jmodPatch); } else if (line.startsWith(directive = "add-opens:")) { - parseJPMSKeyValue(module, line, directive, ",", jmodOpens); + parseJPMSKeyValue(module, line, directive, false, jmodOpens); } else if (line.startsWith(directive = "add-exports:")) { - parseJPMSKeyValue(module, line, directive, ",", jmodExports); + parseJPMSKeyValue(module, line, directive, false, jmodExports); } else if (line.startsWith(directive = "add-reads:")) { - parseJPMSKeyValue(module, line, directive, ",", jmodReads); + parseJPMSKeyValue(module, line, directive, false, jmodReads); } else { @@ -593,16 +593,29 @@ public class StartArgs jmodAdds, jmodPatch, jmodOpens, jmodExports, jmodReads); } - private void parseJPMSKeyValue(Module module, String line, String directive, String delimiter, Map> output) + private void parseJPMSKeyValue(Module module, String line, String directive, boolean valueIsFile, Map> output) throws IOException { - String value = line.substring(directive.length()); - int equals = value.indexOf('='); + String valueString = line.substring(directive.length()); + int equals = valueString.indexOf('='); if (equals <= 0) throw new IllegalArgumentException("Invalid [jpms] directive " + directive + " in module " + module.getName() + ": " + line); - String key = value.substring(0, equals).trim(); - List values = Arrays.asList(value.substring(equals + 1).split(delimiter)); - values = values.stream().map(String::trim).collect(Collectors.toList()); - output.computeIfAbsent(key, k -> new LinkedHashSet<>()).addAll(values); + String delimiter = valueIsFile ? File.pathSeparator : ","; + String key = valueString.substring(0, equals).trim(); + String[] values = valueString.substring(equals + 1).split(delimiter); + Set result = output.computeIfAbsent(key, k -> new LinkedHashSet<>()); + for (String value : values) + { + value = value.trim(); + if (valueIsFile) + { + List paths = baseHome.getPaths(value); + paths.stream().map(Path::toAbsolutePath).map(Path::toString).collect(Collectors.toCollection(() -> result)); + } + else + { + result.add(value); + } + } } public List getStartModules() From 7e68ef1e1787bc634123f2787eb68699d88748d9 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Wed, 26 Sep 2018 13:22:29 +0200 Subject: [PATCH 048/931] Issue #2191 - JPMS Support. Now server.mod patches the servlet.api JPMS module with jetty-schemas.jar. Signed-off-by: Simone Bordet --- jetty-server/src/main/config/modules/server.mod | 3 +++ 1 file changed, 3 insertions(+) diff --git a/jetty-server/src/main/config/modules/server.mod b/jetty-server/src/main/config/modules/server.mod index f739beafbbb..2bd4718fd0d 100644 --- a/jetty-server/src/main/config/modules/server.mod +++ b/jetty-server/src/main/config/modules/server.mod @@ -24,6 +24,9 @@ lib/jetty-io-${jetty.version}.jar [xml] etc/jetty.xml +[jpms] +patch-module: servlet.api=lib/jetty-schemas-3.1.jar + [ini-template] ### Common HTTP configuration ## Scheme to use to build URIs for secure redirects From 587ecfeb9c60ff34e932e04a21c44e67b83fd28e Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Wed, 26 Sep 2018 13:36:51 +0200 Subject: [PATCH 049/931] Issue #2191 - JPMS Support. Code cleanups. Signed-off-by: Simone Bordet --- .../org/eclipse/jetty/start/StartArgs.java | 74 +++++-------------- 1 file changed, 20 insertions(+), 54 deletions(-) diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java b/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java index 314c9ed3bf4..e9c8e1464c8 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java @@ -416,8 +416,7 @@ public class StartArgs return; } - List sortedKeys = new ArrayList<>(); - sortedKeys.addAll(systemPropertySource.keySet()); + List sortedKeys = new ArrayList<>(systemPropertySource.keySet()); Collections.sort(sortedKeys); for (String key : sortedKeys) @@ -459,11 +458,8 @@ public class StartArgs /** * Expand any command line added {@code --lib} lib references. - * - * @throws IOException - * if unable to expand the libraries */ - public void expandSystemProperties() throws IOException + public void expandSystemProperties() { StartLog.debug("Expanding System Properties"); @@ -480,7 +476,7 @@ public class StartArgs } /** - * Expand any command line added --lib lib references. + * Expand any command line added {@code --lib} lib references. * * @throws IOException * if unable to expand the libraries @@ -665,7 +661,7 @@ public class StartArgs cmd.addRawArg("-Djetty.home=" + baseHome.getHome()); cmd.addRawArg("-Djetty.base=" + baseHome.getBase()); - for (String x : jvmArgs) + for (String x : getJvmArgs()) { if (x.startsWith("-D")) { @@ -717,37 +713,25 @@ public class StartArgs cmd.addRawArg("--add-modules"); cmd.addRawArg(String.join(",", jmodAdds)); } - if (!jmodPatch.isEmpty()) + for (Map.Entry> entry : jmodPatch.entrySet()) { - for (Map.Entry> entry : jmodPatch.entrySet()) - { - cmd.addRawArg("--patch-module"); - cmd.addRawArg(entry.getKey() + "=" + String.join(File.pathSeparator, entry.getValue())); - } + cmd.addRawArg("--patch-module"); + cmd.addRawArg(entry.getKey() + "=" + String.join(File.pathSeparator, entry.getValue())); } - if (!jmodOpens.isEmpty()) + for (Map.Entry> entry : jmodOpens.entrySet()) { - for (Map.Entry> entry : jmodOpens.entrySet()) - { - cmd.addRawArg("--add-opens"); - cmd.addRawArg(entry.getKey() + "=" + String.join(",", entry.getValue())); - } + cmd.addRawArg("--add-opens"); + cmd.addRawArg(entry.getKey() + "=" + String.join(",", entry.getValue())); } - if (!jmodExports.isEmpty()) + for (Map.Entry> entry : jmodExports.entrySet()) { - for (Map.Entry> entry : jmodExports.entrySet()) - { - cmd.addRawArg("--add-exports"); - cmd.addRawArg(entry.getKey() + "=" + String.join(",", entry.getValue())); - } + cmd.addRawArg("--add-exports"); + cmd.addRawArg(entry.getKey() + "=" + String.join(",", entry.getValue())); } - if (!jmodReads.isEmpty()) + for (Map.Entry> entry : jmodReads.entrySet()) { - for (Map.Entry> entry : jmodReads.entrySet()) - { - cmd.addRawArg("--add-reads"); - cmd.addRawArg(entry.getKey() + "=" + String.join(",", entry.getValue())); - } + cmd.addRawArg("--add-reads"); + cmd.addRawArg(entry.getKey() + "=" + String.join(",", entry.getValue())); } cmd.addRawArg("--module"); @@ -1241,10 +1225,7 @@ public class StartArgs if (arg.startsWith("--skip-file-validation=")) { List moduleNames = Props.getValues(arg); - for (String moduleName : moduleNames) - { - skipFileValidationModules.add(moduleName); - } + skipFileValidationModules.addAll(moduleNames); return; } @@ -1388,12 +1369,7 @@ public class StartArgs for (String moduleName : moduleNames) { modules.add(moduleName); - List list = sources.get(moduleName); - if (list == null) - { - list = new ArrayList<>(); - sources.put(moduleName,list); - } + List list = sources.computeIfAbsent(moduleName, k -> new ArrayList<>()); list.add(source); } } @@ -1484,17 +1460,7 @@ public class StartArgs @Override public String toString() { - StringBuilder builder = new StringBuilder(); - builder.append("StartArgs [enabledModules="); - builder.append(modules); - builder.append(", xmlRefs="); - builder.append(xmlRefs); - builder.append(", properties="); - builder.append(properties); - builder.append(", jvmArgs="); - builder.append(jvmArgs); - builder.append("]"); - return builder.toString(); + return String.format("%s[enabledModules=%s, xmlRefs=%s, properties=%s, jvmArgs=%s]", + getClass().getSimpleName(), modules, xmlRefs, properties, jvmArgs); } - } From c3ca4b7ee9d979e6d2e975bff521e4b3746c0c62 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Fri, 28 Sep 2018 15:29:32 +1000 Subject: [PATCH 050/931] Issue #2936 Test bad message error page Signed-off-by: Greg Wilkins --- .../eclipse/jetty/servlet/ErrorPageTest.java | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java index dd2f1f7bfec..5ca8913035c 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java @@ -31,6 +31,7 @@ import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.eclipse.jetty.http.BadMessageException; import org.eclipse.jetty.server.Dispatcher; import org.eclipse.jetty.server.HttpChannel; import org.eclipse.jetty.server.LocalConnector; @@ -63,11 +64,13 @@ public class ErrorPageTest context.addServlet(FailServlet.class, "/fail/*"); context.addServlet(FailClosedServlet.class, "/fail-closed/*"); context.addServlet(ErrorServlet.class, "/error/*"); + context.addServlet(AppServlet.class, "/app/*"); ErrorPageErrorHandler error = new ErrorPageErrorHandler(); context.setErrorHandler(error); error.addErrorPage(599,"/error/599"); error.addErrorPage(IllegalStateException.class.getCanonicalName(),"/error/TestException"); + error.addErrorPage(BadMessageException.class,"/error/TestException"); error.addErrorPage(ErrorPageErrorHandler.GLOBAL_ERROR_PAGE,"/error/GlobalErrorPage"); _server.start(); @@ -157,6 +160,33 @@ public class ErrorPageTest } } + @Test + public void testBadMessage() throws Exception + { + String response = _connector.getResponse("GET /app?baa=%88%A4 HTTP/1.0\r\n\r\n"); + assertThat(response, Matchers.containsString("HTTP/1.1 400 Unable to parse URI query")); + assertThat(response, Matchers.containsString("ERROR_PAGE: /TestException")); + assertThat(response, Matchers.containsString("ERROR_MESSAGE: Unable to parse URI query")); + assertThat(response, Matchers.containsString("ERROR_CODE: 400")); + assertThat(response, Matchers.containsString("ERROR_EXCEPTION: org.eclipse.jetty.http.BadMessageException: 400: Unable to parse URI query")); + assertThat(response, Matchers.containsString("ERROR_EXCEPTION_TYPE: class org.eclipse.jetty.http.BadMessageException")); + assertThat(response, Matchers.containsString("ERROR_SERVLET: org.eclipse.jetty.servlet.ErrorPageTest$AppServlet-")); + assertThat(response, Matchers.containsString("ERROR_REQUEST_URI: /app")); + assertThat(response, Matchers.containsString("getParameterMap()= {}")); + } + + + public static class AppServlet extends HttpServlet implements Servlet + { + @Override + protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + { + PrintWriter writer = response.getWriter(); + writer.println(request.getRequestURI()); + writer.println(request.getParameterMap().toString()); + } + } + public static class FailServlet extends HttpServlet implements Servlet { @Override @@ -202,6 +232,7 @@ public class ErrorPageTest writer.println("ERROR_EXCEPTION_TYPE: " + request.getAttribute(Dispatcher.ERROR_EXCEPTION_TYPE)); writer.println("ERROR_SERVLET: " + request.getAttribute(Dispatcher.ERROR_SERVLET_NAME)); writer.println("ERROR_REQUEST_URI: " + request.getAttribute(Dispatcher.ERROR_REQUEST_URI)); + writer.println("getParameterMap()= " + request.getParameterMap()); } } From 2b11d30a45969aa126bdbc53d68f98ef1ff22987 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Fri, 28 Sep 2018 09:29:52 +0200 Subject: [PATCH 051/931] Issue #2868 - Adding SPNEGO authentication support for Jetty Client. Renamed server-side classes and added javadocs. Deprecated old server-side classes in favor of the new ones. Signed-off-by: Simone Bordet --- .../client/util/SPNEGOAuthenticationTest.java | 10 ++--- ...va => ConfigurableSpnegoLoginService.java} | 41 +++++++++++++++++-- .../jetty/security/SpnegoLoginService.java | 4 ++ ...a => ConfigurableSpnegoAuthenticator.java} | 19 +++++++-- .../authentication/SpnegoAuthenticator.java | 4 ++ 5 files changed, 66 insertions(+), 12 deletions(-) rename jetty-security/src/main/java/org/eclipse/jetty/security/{SpnegoLoginService2.java => ConfigurableSpnegoLoginService.java} (86%) rename jetty-security/src/main/java/org/eclipse/jetty/security/authentication/{SpnegoAuthenticator2.java => ConfigurableSpnegoAuthenticator.java} (91%) diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/util/SPNEGOAuthenticationTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/util/SPNEGOAuthenticationTest.java index 906a36d751a..df8453def1b 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/util/SPNEGOAuthenticationTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/util/SPNEGOAuthenticationTest.java @@ -39,12 +39,12 @@ import org.eclipse.jetty.client.api.AuthenticationStore; import org.eclipse.jetty.client.api.ContentResponse; import org.eclipse.jetty.client.api.Request; import org.eclipse.jetty.client.api.Response; +import org.eclipse.jetty.security.ConfigurableSpnegoLoginService; import org.eclipse.jetty.security.ConstraintMapping; import org.eclipse.jetty.security.ConstraintSecurityHandler; import org.eclipse.jetty.security.HashLoginService; -import org.eclipse.jetty.security.SpnegoLoginService2; import org.eclipse.jetty.security.authentication.AuthorizationService; -import org.eclipse.jetty.security.authentication.SpnegoAuthenticator2; +import org.eclipse.jetty.security.authentication.ConfigurableSpnegoAuthenticator; import org.eclipse.jetty.server.Handler; import org.eclipse.jetty.server.Server; import org.eclipse.jetty.server.session.DefaultSessionIdManager; @@ -88,7 +88,7 @@ public class SPNEGOAuthenticationTest extends AbstractHttpClientServerTest private Path serviceKeyTabPath = testDirPath.resolve("service.keytab"); private Path clientKeyTabPath = testDirPath.resolve("client.keytab"); private SimpleKdcServer kdc; - private SpnegoAuthenticator2 authenticator; + private ConfigurableSpnegoAuthenticator authenticator; @BeforeEach public void prepare() throws Exception @@ -123,7 +123,7 @@ public class SPNEGOAuthenticationTest extends AbstractHttpClientServerTest server = new Server(); server.setSessionIdManager(new DefaultSessionIdManager(server)); HashLoginService authorizationService = new HashLoginService(realm, realmPropsPath.toString()); - SpnegoLoginService2 loginService = new SpnegoLoginService2(realm, AuthorizationService.from(authorizationService, "")); + ConfigurableSpnegoLoginService loginService = new ConfigurableSpnegoLoginService(realm, AuthorizationService.from(authorizationService, "")); loginService.addBean(authorizationService); loginService.setKeyTabPath(serviceKeyTabPath); loginService.setServiceName(serviceName); @@ -138,7 +138,7 @@ public class SPNEGOAuthenticationTest extends AbstractHttpClientServerTest mapping.setPathSpec("/secure"); mapping.setConstraint(constraint); securityHandler.addConstraintMapping(mapping); - authenticator = new SpnegoAuthenticator2(); + authenticator = new ConfigurableSpnegoAuthenticator(); securityHandler.setAuthenticator(authenticator); securityHandler.setLoginService(loginService); securityHandler.setHandler(handler); diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/SpnegoLoginService2.java b/jetty-security/src/main/java/org/eclipse/jetty/security/ConfigurableSpnegoLoginService.java similarity index 86% rename from jetty-security/src/main/java/org/eclipse/jetty/security/SpnegoLoginService2.java rename to jetty-security/src/main/java/org/eclipse/jetty/security/ConfigurableSpnegoLoginService.java index 84c981a1817..48e9cc88047 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/SpnegoLoginService2.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/ConfigurableSpnegoLoginService.java @@ -46,9 +46,20 @@ import org.ietf.jgss.GSSManager; import org.ietf.jgss.GSSName; import org.ietf.jgss.Oid; -public class SpnegoLoginService2 extends ContainerLifeCycle implements LoginService +/** + *

A configurable (as opposed to using system properties) SPNEGO LoginService.

+ *

At startup, this LoginService will login via JAAS the service principal, composed + * of the {@link #getServiceName() service name} and the {@link #getHostName() host name}, + * for example {@code HTTP/wonder.com}, using a {@code keyTab} file as the service principal + * credentials.

+ *

Upon receiving a HTTP request, the server tries to authenticate the client + * calling {@link #login(String, Object, ServletRequest)} where the GSS APIs are used to + * verify client tokens and (perhaps after a few round-trips) a {@code GSSContext} is + * established.

+ */ +public class ConfigurableSpnegoLoginService extends ContainerLifeCycle implements LoginService { - private static final Logger LOG = Log.getLogger(SpnegoLoginService2.class); + private static final Logger LOG = Log.getLogger(ConfigurableSpnegoLoginService.class); private final GSSManager _gssManager = GSSManager.getInstance(); private final String _realm; @@ -59,43 +70,67 @@ public class SpnegoLoginService2 extends ContainerLifeCycle implements LoginServ private String _hostName; private SpnegoContext _context; - public SpnegoLoginService2(String realm, AuthorizationService authorizationService) + public ConfigurableSpnegoLoginService(String realm, AuthorizationService authorizationService) { _realm = realm; _authorizationService = authorizationService; } + /** + * @return the realm name + */ @Override public String getName() { return _realm; } + /** + * @return the path of the keyTab file containing service credentials + */ public Path getKeyTabPath() { return _keyTabPath; } + /** + * @param keyTabFile the path of the keyTab file containing service credentials + */ public void setKeyTabPath(Path keyTabFile) { _keyTabPath = keyTabFile; } + /** + * @return the service name, typically "HTTP" + * @see #getHostName() + */ public String getServiceName() { return _serviceName; } + /** + * @param serviceName the service name + * @see #setHostName(String) + */ public void setServiceName(String serviceName) { _serviceName = serviceName; } + /** + * @return the host name of the service + * @see #setServiceName(String) + */ public String getHostName() { return _hostName; } + /** + * @param hostName the host name of the service + */ public void setHostName(String hostName) { _hostName = hostName; diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/SpnegoLoginService.java b/jetty-security/src/main/java/org/eclipse/jetty/security/SpnegoLoginService.java index 5ea42ddb145..41f30f0a736 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/SpnegoLoginService.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/SpnegoLoginService.java @@ -36,6 +36,10 @@ import org.ietf.jgss.GSSManager; import org.ietf.jgss.GSSName; import org.ietf.jgss.Oid; +/** + * @deprecated use {@link ConfigurableSpnegoLoginService} instead + */ +@Deprecated public class SpnegoLoginService extends AbstractLifeCycle implements LoginService { private static final Logger LOG = Log.getLogger(SpnegoLoginService.class); diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SpnegoAuthenticator2.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/ConfigurableSpnegoAuthenticator.java similarity index 91% rename from jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SpnegoAuthenticator2.java rename to jetty-security/src/main/java/org/eclipse/jetty/security/authentication/ConfigurableSpnegoAuthenticator.java index 5e8bb43e881..59e0611af14 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SpnegoAuthenticator2.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/ConfigurableSpnegoAuthenticator.java @@ -42,14 +42,22 @@ import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.util.security.Constraint; -public class SpnegoAuthenticator2 extends LoginAuthenticator +/** + *

A LoginAuthenticator that uses SPNEGO and the GSS API to authenticate requests.

+ *

A successful authentication from a client is cached for a configurable + * {@link #getAuthenticationDuration() duration} using the HTTP session; this avoids + * that the client is asked to authenticate for every request.

+ * + * @see org.eclipse.jetty.security.ConfigurableSpnegoLoginService + */ +public class ConfigurableSpnegoAuthenticator extends LoginAuthenticator { - private static final Logger LOG = Log.getLogger(SpnegoAuthenticator2.class); + private static final Logger LOG = Log.getLogger(ConfigurableSpnegoAuthenticator.class); private final String _authMethod; private Duration _authenticationDuration = Duration.ofNanos(-1); - public SpnegoAuthenticator2() + public ConfigurableSpnegoAuthenticator() { this(Constraint.__SPNEGO_AUTH); } @@ -59,7 +67,7 @@ public class SpnegoAuthenticator2 extends LoginAuthenticator * * @param authMethod the auth method */ - public SpnegoAuthenticator2(String authMethod) + public ConfigurableSpnegoAuthenticator(String authMethod) { _authMethod = authMethod; } @@ -70,6 +78,9 @@ public class SpnegoAuthenticator2 extends LoginAuthenticator return _authMethod; } + /** + * @return the authentication duration + */ public Duration getAuthenticationDuration() { return _authenticationDuration; diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SpnegoAuthenticator.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SpnegoAuthenticator.java index 0dfe1b6add5..8142eb7c4d8 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SpnegoAuthenticator.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SpnegoAuthenticator.java @@ -35,6 +35,10 @@ import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.util.security.Constraint; +/** + * @deprecated use {@link ConfigurableSpnegoAuthenticator} instead. + */ +@Deprecated public class SpnegoAuthenticator extends LoginAuthenticator { private static final Logger LOG = Log.getLogger(SpnegoAuthenticator.class); From 02eccd55aeb988c8a0eba9c9d442e60575e1f0f0 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Fri, 28 Sep 2018 10:22:51 +0200 Subject: [PATCH 052/931] Issue #2191 - JPMS Support. NPE fixes. Signed-off-by: Simone Bordet --- .../src/main/java/org/eclipse/jetty/start/StartArgs.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java b/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java index e9c8e1464c8..58a31811064 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java @@ -690,7 +690,7 @@ public class StartArgs Map> dirsAndFiles = StreamSupport.stream(classpath.spliterator(), false) .collect(Collectors.groupingBy(File::isDirectory)); List files = dirsAndFiles.get(false); - if (!files.isEmpty()) + if (files != null && !files.isEmpty()) { cmd.addRawArg("--module-path"); String modules = files.stream() @@ -699,7 +699,7 @@ public class StartArgs cmd.addRawArg(modules); } List dirs = dirsAndFiles.get(true); - if (!dirs.isEmpty()) + if (dirs != null && !dirs.isEmpty()) { cmd.addRawArg("--class-path"); String directories = dirs.stream() From 5cac3376c60e024b70a18b31d41759dfe9775891 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Fri, 28 Sep 2018 13:23:43 +0200 Subject: [PATCH 053/931] Issue #2191 - JPMS Support. JPMS documentation. Signed-off-by: Simone Bordet --- .../administration/startup/chapter.adoc | 1 + .../administration/startup/startup-jpms.adoc | 190 ++++++++++++++++++ 2 files changed, 191 insertions(+) create mode 100644 jetty-documentation/src/main/asciidoc/administration/startup/startup-jpms.adoc diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/chapter.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/chapter.adoc index 441d8d47d87..3b63ab8ae5e 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/chapter.adoc @@ -28,3 +28,4 @@ include::custom-modules.adoc[] include::startup-xml-config.adoc[] include::startup-unix-service.adoc[] include::startup-windows-service.adoc[] +include::startup-jpms.adoc[] diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/startup-jpms.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/startup-jpms.adoc new file mode 100644 index 00000000000..b6fdb7b9671 --- /dev/null +++ b/jetty-documentation/src/main/asciidoc/administration/startup/startup-jpms.adoc @@ -0,0 +1,190 @@ +// +// ======================================================================== +// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// ======================================================================== +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +[[startup-overview]] +=== Startup using the Java Platform Module System (JPMS) + +Jetty modules are also automatic https://en.wikipedia.org/wiki/Java_Platform_Module_System[JPMS] +modules via the `Automatic-Module-Name` attribute in the jar's `MANIFEST.MF` file. + +This makes possible to run Jetty from the module-path, rather than the class-path. + +We recommend to use JDK 11 or greater due to the fact that JDK 11 removed all the +"enterprise" modules from the JDK. +The classes in these "enterprise" modules were bundled with JDK 8, and present in +"enterprise" modules in JDK 9 and JDK 10. +With JDK 11, these "enterprise" classes are either not available in the JDK (because +their corresponding module was removed), or they are present in a different module. + +Some of these "enterprise" classes are required by Jetty or by applications running +in Jetty, so it is better to use a stable source for those classes by using JDK 11 +or greater. + +==== Starting Jetty on the module-path + +To start Jetty on the module-path, rather than the class-path, it is enough to add +the `--jpms` option to the command line, for example: + +[source, screen, subs="{sub-order}"] +.... +$ mkdir my-jetty-base +$ cd my-jetty-base +$ java -jar $JETTY_HOME/start.jar --add-to-start=http +INFO : server transitively enabled, ini template available with --add-to-start=server +INFO : http initialized in ${jetty.base}/start.ini +INFO : threadpool transitively enabled, ini template available with --add-to-start=threadpool +INFO : Base directory was modified +$ java -jar $JETTY_HOME/start.jar --jpms +.... + +The example above creates a link:#startup-base-and-home[Jetty base directory] and +enables the `http` module using `--add-to-start`. +Then starts Jetty on the module-path using the `--jpms` option. + +---- +[NOTE] +When running on the module-path using the `--jpms` option, the Jetty start mechanism +will fork a second JVM passing it the right JVM options to run on the module-path. + +You will have two JVMs running: one that runs `start.jar` and one that runs Jetty on +the module-path. +---- + +If you are interested in the details of how the command line to run Jetty on the +module-path looks like, you can add the `--dry-run` option: + +[source, screen, subs="{sub-order}"] +.... +$ java -jar $JETTY_HOME/start.jar --jpms --dry-run +.... + +You will see something like this (broken in sections for clarity): + +[source, screen, subs="{sub-order}"] +.... +/opt/openjdk-11+28/bin/java +--module-path /opt/jetty/lib/servlet-api-3.1.jar:/opt/jetty/lib/jetty-schemas-3.1.jar:/opt/jetty/lib/jetty-http-9.4.13-SNAPSHOT.jar:... +--patch-module servlet.api=/opt/jetty/lib/jetty-schemas-3.1.jar +--module org.eclipse.jetty.xml/org.eclipse.jetty.xml.XmlConfiguration /opt/jetty/etc/jetty-threadpool.xml /opt/jetty/etc/jetty.xml ... +.... + +The `--module-path` option specifies the list of Jetty jars. This list depends +on the Jetty modules that have been enabled via `--add-to-start`. + +The `--patch-module` option is necessary for Servlet and JSP Containers to find XML DTDs +and XML Schemas required to validate the various XML files present in web applications +(such as `web.xml` and others). + +The `--module` option tells the JVM to run main class `XmlConfiguration` from the +`org.eclipse.jetty.xml` module, with the given XML files as program arguments. + +When the JVM starts, module `org.eclipse.jetty.xml` is added to the set of JPMS +_root modules_; all other Jetty modules, being automatic, will be resolved and added +to the module graph; jars that are not modules such as `servlet-api-3.1.jar` are on +the module-path and therefore will be made automatic modules by the JVM (hence the +derived module name `servlet.api` for this jar, referenced by the `--patch-module` +command line option above). + +==== Advanced JPMS Configuration + +Web applications may need additional services from the Servlet Container, such as +JDBC `DataSource` references or JTA `UserTransaction` references. + +For example, for JDBC it is typical to store in JNDI a reference to the connection +pool's `DataSource` (for example `com.zaxxer.hikari.HikariDataSource`) or a +reference directly to the JDBC driver's `DataSource` (for example +`com.mysql.jdbc.jdbc2.optional.MysqlDataSource`). +Jetty needs to be able to instantiate those classes and therefore needs to be able +to load those classes and all their super-classes, among which `javax.sql.DataSource`. + +When Jetty runs on the class-path, this is easily achieved by using a +link:#custom-modules[custom module]: + +[source, screen, subs="{sub-order}"] +.mysql.mod +.... +[description] +MySQL module + +[lib] +lib/mysql/mysql-connector-java-*.jar +.... + +However, when running on the module-path, things are quite different. + +Class `javax.sql.DataSource` is in a JDK bundled module named `java.sql`, which is +not automatic (it's a proper JPMS module) and it is not in the _root modules_ set; +because it is not an automatic module, it is not added to the module graph, and +therefore needs to be added explicitly using the JVM command line `--add-modules`. + +To add the JPMS module `java.sql` to the module graph, you need to modify +`mysql.mod` in the following way: + +[source, screen, subs="{sub-order}"] +.mysql.mod +.... +[description] +MySQL module + +[lib] +lib/mysql/mysql-connector-java-*.jar + +[jpms] +add-modules: java.sql +.... + +The new `[jpms]` section is only used when Jetty is started on the module-path +via the `--jpms` command line option. + +Assuming that `mysql-connector-java-*.jar` is a non JPMS modular jar, or an +automatic JPMS modular jar, the Jetty start mechanism will add +`mysql-connector-java-*.jar` to the module-path, and will add the JVM command +line option `--add-modules java.sql`. + +If `mysql-connector-java-*.jar` were a proper JPMS modular jar with name +(for example) `com.mysql.jdbc`, then it would need to be explicitly added to +the module graph, in this way: + +[source, screen, subs="{sub-order}"] +.mysql.mod +.... +[description] +MySQL module + +[lib] +lib/mysql/mysql-connector-java-*.jar + +[jpms] +add-modules: com.mysql.jdbc +.... + +Now we don't need to add JPMS module `java.sql` explicitly because it would be +a dependency of the `com.mysql.jdbc` module and therefore automatically added +to the module graph. + +The `[jpms]` section has the following format: + +[source, screen, subs="{sub-order}"] +.... +[jpms] +add-modules: (,)* +patch-module: =(:)* +add-opens: /=(,)* +add-exports: /=(,)* +add-reads: =(,)* +.... From b3739f42b85fc1870ef520625185ebee591a61ef Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Sun, 30 Sep 2018 07:01:06 -0500 Subject: [PATCH 054/931] Issue #2936 - Improving testcase to replicate reported scenario as described --- .../eclipse/jetty/servlet/ErrorPageTest.java | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java index 5ca8913035c..b611afb6f6f 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java @@ -65,12 +65,15 @@ public class ErrorPageTest context.addServlet(FailClosedServlet.class, "/fail-closed/*"); context.addServlet(ErrorServlet.class, "/error/*"); context.addServlet(AppServlet.class, "/app/*"); + context.addServlet(LongerAppServlet.class, "/longer.app/*"); ErrorPageErrorHandler error = new ErrorPageErrorHandler(); context.setErrorHandler(error); error.addErrorPage(599,"/error/599"); + error.addErrorPage(400,"/error/400"); + // error.addErrorPage(500,"/error/500"); error.addErrorPage(IllegalStateException.class.getCanonicalName(),"/error/TestException"); - error.addErrorPage(BadMessageException.class,"/error/TestException"); + error.addErrorPage(BadMessageException.class,"/error/BadMessageException"); error.addErrorPage(ErrorPageErrorHandler.GLOBAL_ERROR_PAGE,"/error/GlobalErrorPage"); _server.start(); @@ -164,8 +167,8 @@ public class ErrorPageTest public void testBadMessage() throws Exception { String response = _connector.getResponse("GET /app?baa=%88%A4 HTTP/1.0\r\n\r\n"); - assertThat(response, Matchers.containsString("HTTP/1.1 400 Unable to parse URI query")); - assertThat(response, Matchers.containsString("ERROR_PAGE: /TestException")); + assertThat(response, Matchers.containsString("HTTP/1.1 400 Bad Request")); + assertThat(response, Matchers.containsString("ERROR_PAGE: /BadMessageException")); assertThat(response, Matchers.containsString("ERROR_MESSAGE: Unable to parse URI query")); assertThat(response, Matchers.containsString("ERROR_CODE: 400")); assertThat(response, Matchers.containsString("ERROR_EXCEPTION: org.eclipse.jetty.http.BadMessageException: 400: Unable to parse URI query")); @@ -177,13 +180,21 @@ public class ErrorPageTest public static class AppServlet extends HttpServlet implements Servlet + { + @Override + protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + { + request.getRequestDispatcher("/longer.app/").forward(request, response); + } + } + + public static class LongerAppServlet extends HttpServlet implements Servlet { @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter writer = response.getWriter(); writer.println(request.getRequestURI()); - writer.println(request.getParameterMap().toString()); } } From fe66e3d0cbda56c05c5e9de2cb7b59cd199c7096 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Mon, 1 Oct 2018 10:43:57 -0500 Subject: [PATCH 055/931] Issue #2936 - Allow Dispatcher.error() to work for BadMessageException Signed-off-by: Joakim Erdfelt --- .../org/eclipse/jetty/server/Dispatcher.java | 21 +++++++++++++++++-- .../eclipse/jetty/servlet/ErrorPageTest.java | 6 +++--- 2 files changed, 22 insertions(+), 5 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Dispatcher.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Dispatcher.java index bba38c90b6e..d2033a488b7 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Dispatcher.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Dispatcher.java @@ -31,6 +31,7 @@ import javax.servlet.ServletResponse; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.eclipse.jetty.http.BadMessageException; import org.eclipse.jetty.http.HttpURI; import org.eclipse.jetty.server.handler.ContextHandler; import org.eclipse.jetty.util.Attributes; @@ -195,8 +196,24 @@ public class Dispatcher implements RequestDispatcher baseRequest.setContextPath(_contextHandler.getContextPath()); baseRequest.setServletPath(null); baseRequest.setPathInfo(_pathInContext); - if (_uri.getQuery()!=null || old_uri.getQuery()!=null) - baseRequest.mergeQueryParameters(old_uri.getQuery(),_uri.getQuery(), true); + + if (_uri.getQuery() != null || old_uri.getQuery() != null) + { + try + { + baseRequest.mergeQueryParameters(old_uri.getQuery(), _uri.getQuery(), true); + } + catch (BadMessageException e) + { + // Only throw BME if not in Error Dispatch Mode + // This allows application ErrorPageErrorHandler to handle BME messages + Boolean inErrorDispatch = (Boolean) request.getAttribute(__ERROR_DISPATCH); + if(inErrorDispatch == null || !inErrorDispatch) + { + throw e; + } + } + } baseRequest.setAttributes(attr); diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java index b611afb6f6f..7fd8431a4cb 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java @@ -167,11 +167,11 @@ public class ErrorPageTest public void testBadMessage() throws Exception { String response = _connector.getResponse("GET /app?baa=%88%A4 HTTP/1.0\r\n\r\n"); - assertThat(response, Matchers.containsString("HTTP/1.1 400 Bad Request")); + assertThat(response, Matchers.containsString("HTTP/1.1 400 Bad query encoding")); assertThat(response, Matchers.containsString("ERROR_PAGE: /BadMessageException")); - assertThat(response, Matchers.containsString("ERROR_MESSAGE: Unable to parse URI query")); + assertThat(response, Matchers.containsString("ERROR_MESSAGE: Bad query encoding")); assertThat(response, Matchers.containsString("ERROR_CODE: 400")); - assertThat(response, Matchers.containsString("ERROR_EXCEPTION: org.eclipse.jetty.http.BadMessageException: 400: Unable to parse URI query")); + assertThat(response, Matchers.containsString("ERROR_EXCEPTION: org.eclipse.jetty.http.BadMessageException: 400: Bad query encoding")); assertThat(response, Matchers.containsString("ERROR_EXCEPTION_TYPE: class org.eclipse.jetty.http.BadMessageException")); assertThat(response, Matchers.containsString("ERROR_SERVLET: org.eclipse.jetty.servlet.ErrorPageTest$AppServlet-")); assertThat(response, Matchers.containsString("ERROR_REQUEST_URI: /app")); From a094dbaa697b06b640deae5e2b083f89b4637310 Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Tue, 2 Oct 2018 16:44:24 +1000 Subject: [PATCH 056/931] fix osgi tests not running as paxexam is not junit5 ready (#2945) * fix osgi tests not running as paxexam is not junit5 ready Signed-off-by: olivier lamy * upgrade pax exam to 4.12.0 Signed-off-by: olivier lamy * cleanup comment, using transitive deps from pax-exam-junit4 Signed-off-by: olivier lamy --- jetty-osgi/test-jetty-osgi/pom.xml | 21 +++++++++------------ pom.xml | 7 ------- 2 files changed, 9 insertions(+), 19 deletions(-) diff --git a/jetty-osgi/test-jetty-osgi/pom.xml b/jetty-osgi/test-jetty-osgi/pom.xml index 921948f8ea6..40340aa2fbb 100644 --- a/jetty-osgi/test-jetty-osgi/pom.xml +++ b/jetty-osgi/test-jetty-osgi/pom.xml @@ -14,7 +14,7 @@ ${project.groupId}.boot.test.osgi http://download.eclipse.org/jetty/orbit/ target/distribution - 4.11.0 + 4.12.0 2.5.2 1.0 true @@ -45,15 +45,6 @@ pax-exam-junit4 ${exam.version} test - -
org.ops4j.pax.exam @@ -405,13 +396,11 @@ org.ow2.asm asm - ${asm.version} test org.ow2.asm asm-commons - ${asm.version} test @@ -438,6 +427,14 @@ ${settings.localRepository}
+ + + + org.apache.maven.surefire + surefire-junit47 + ${maven.surefire.version} + + diff --git a/pom.xml b/pom.xml index 4df812973df..fae174072ef 100644 --- a/pom.xml +++ b/pom.xml @@ -469,13 +469,6 @@ org.apache.maven.plugins maven-failsafe-plugin ${maven.surefire.version} - - - org.junit.jupiter - junit-jupiter-engine - ${junit.version} - - org.apache.maven.plugins From 27efa6e2ad7a046120472587736594b2e9b6e1fb Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 2 Oct 2018 11:24:45 +0200 Subject: [PATCH 057/931] Issue #2868 - Adding SPNEGO authentication support for Jetty Client. Added client-side classes javadocs. Signed-off-by: Simone Bordet --- .../client/util/SPNEGOAuthentication.java | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/SPNEGOAuthentication.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/SPNEGOAuthentication.java index 7fd33f988be..5a383bedc56 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/SPNEGOAuthentication.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/SPNEGOAuthentication.java @@ -36,6 +36,8 @@ import javax.security.auth.login.Configuration; import javax.security.auth.login.LoginContext; import javax.security.auth.login.LoginException; +import org.eclipse.jetty.client.HttpClient; +import org.eclipse.jetty.client.api.AuthenticationStore; import org.eclipse.jetty.client.api.ContentResponse; import org.eclipse.jetty.client.api.Request; import org.eclipse.jetty.http.HttpHeader; @@ -48,6 +50,16 @@ import org.ietf.jgss.GSSManager; import org.ietf.jgss.GSSName; import org.ietf.jgss.Oid; +/** + *

Implementation of the SPNEGO (or "Negotiate") authentication defined in RFC 4559.

+ *

A {@link #getUserName() user} is logged in via JAAS (either via userName/password or + * via userName/keyTab) once only.

+ *

For every request that needs authentication, a {@link GSSContext} is initiated and + * later established after reading the response from the server.

+ *

Applications should create objects of this class and add them to the + * {@link AuthenticationStore} retrieved from the {@link HttpClient} + * via {@link HttpClient#getAuthenticationStore()}.

+ */ public class SPNEGOAuthentication extends AbstractAuthentication { private static final Logger LOG = Log.getLogger(SPNEGOAuthentication.class); @@ -73,71 +85,117 @@ public class SPNEGOAuthentication extends AbstractAuthentication return NEGOTIATE; } + /** + * @return the user name of the user to login + */ public String getUserName() { return userName; } + /** + * @param userName user name of the user to login + */ public void setUserName(String userName) { this.userName = userName; } + /** + * @return the password of the user to login + */ public String getUserPassword() { return userPassword; } + /** + * @param userPassword the password of the user to login + * @see #setUserKeyTabPath(Path) + */ public void setUserPassword(String userPassword) { this.userPassword = userPassword; } + /** + * @return the path of the keyTab file with the user credentials + */ public Path getUserKeyTabPath() { return userKeyTabPath; } + /** + * @param userKeyTabPath the path of the keyTab file with the user credentials + * @see #setUserPassword(String) + */ public void setUserKeyTabPath(Path userKeyTabPath) { this.userKeyTabPath = userKeyTabPath; } + /** + * @return the name of the service to use + */ public String getServiceName() { return serviceName; } + /** + * @param serviceName the name of the service to use + */ public void setServiceName(String serviceName) { this.serviceName = serviceName; } + /** + * @return whether to use the ticket cache during login + */ public boolean isUseTicketCache() { return useTicketCache; } + /** + * @param useTicketCache whether to use the ticket cache during login + * @see #setTicketCachePath(Path) + */ public void setUseTicketCache(boolean useTicketCache) { this.useTicketCache = useTicketCache; } + /** + * @return the path of the ticket cache file + */ public Path getTicketCachePath() { return ticketCachePath; } + /** + * @param ticketCachePath the path of the ticket cache file + * @see #setUseTicketCache(boolean) + */ public void setTicketCachePath(Path ticketCachePath) { this.ticketCachePath = ticketCachePath; } + /** + * @return whether to renew the ticket granting ticket + */ public boolean isRenewTGT() { return renewTGT; } + /** + * @param renewTGT whether to renew the ticket granting ticket + */ public void setRenewTGT(boolean renewTGT) { this.renewTGT = renewTGT; From 6b5a46b63b61d82c3403a2fc6aa571a8a3e77237 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 2 Oct 2018 11:26:32 +0200 Subject: [PATCH 058/931] Issue #2868 - Adding SPNEGO authentication support for Jetty Client. Avoid hardcoded KDC port in tests. Updated Krb5LoginModule options with refreshKrb5Config=true, to make sure the KDC configuration is re-read for every test. Signed-off-by: Simone Bordet --- .../jetty/client/util/SPNEGOAuthentication.java | 1 + .../jetty/client/util/SPNEGOAuthenticationTest.java | 11 ++++++++++- .../security/ConfigurableSpnegoLoginService.java | 1 + 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/SPNEGOAuthentication.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/SPNEGOAuthentication.java index 5a383bedc56..601f4abfd24 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/SPNEGOAuthentication.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/SPNEGOAuthentication.java @@ -349,6 +349,7 @@ public class SPNEGOAuthentication extends AbstractAuthentication Map options = new HashMap<>(); if (LOG.isDebugEnabled()) options.put("debug", "true"); + options.put("refreshKrb5Config", "true"); options.put("principal", getUserName()); options.put("isInitiator", "true"); Path keyTabPath = getUserKeyTabPath(); diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/util/SPNEGOAuthenticationTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/util/SPNEGOAuthenticationTest.java index df8453def1b..1185418006a 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/util/SPNEGOAuthenticationTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/util/SPNEGOAuthenticationTest.java @@ -27,6 +27,7 @@ import java.nio.file.Path; import java.time.Duration; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; +import java.util.stream.Collectors; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -102,13 +103,21 @@ public class SPNEGOAuthenticationTest extends AbstractHttpClientServerTest kdc.setAllowTcp(true); kdc.setKdcRealm(realm); kdc.setWorkDir(testDirPath.toFile()); - kdc.setKdcTcpPort(8844); kdc.init(); kdc.createAndExportPrincipals(serviceKeyTabPath.toFile(), serviceName + "/" + serviceHost); kdc.createPrincipal(clientName + "@" + realm, clientPassword); kdc.exportPrincipal(clientName, clientKeyTabPath.toFile()); kdc.start(); + + if (LOG.isDebugEnabled()) + { + LOG.debug("KDC started on port {}", kdc.getKdcTcpPort()); + String krb5 = Files.readAllLines(testDirPath.resolve("krb5.conf")).stream() + .filter(line -> !line.startsWith("#")) + .collect(Collectors.joining(System.lineSeparator())); + LOG.debug("krb5.conf{}{}", System.lineSeparator(), krb5); + } } @AfterEach diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/ConfigurableSpnegoLoginService.java b/jetty-security/src/main/java/org/eclipse/jetty/security/ConfigurableSpnegoLoginService.java index 48e9cc88047..fe256d8e749 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/ConfigurableSpnegoLoginService.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/ConfigurableSpnegoLoginService.java @@ -295,6 +295,7 @@ public class ConfigurableSpnegoLoginService extends ContainerLifeCycle implement if (LOG.isDebugEnabled()) options.put("debug", "true"); options.put("doNotPrompt", "true"); + options.put("refreshKrb5Config", "true"); options.put("principal", principal); options.put("useKeyTab", "true"); Path keyTabPath = getKeyTabPath(); From 20fff533c80f3b60939a5e72e7ac22260bf129a2 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 2 Oct 2018 11:59:52 +0200 Subject: [PATCH 059/931] Issue #2868 - Adding SPNEGO authentication support for Jetty Client. Updated server-side authentication logic after review. Signed-off-by: Simone Bordet --- .../ConfigurableSpnegoAuthenticator.java | 79 +++++++++---------- 1 file changed, 37 insertions(+), 42 deletions(-) diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/ConfigurableSpnegoAuthenticator.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/ConfigurableSpnegoAuthenticator.java index 59e0611af14..23873e0f36d 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/ConfigurableSpnegoAuthenticator.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/ConfigurableSpnegoAuthenticator.java @@ -108,8 +108,44 @@ public class ConfigurableSpnegoAuthenticator extends LoginAuthenticator HttpServletRequest request = (HttpServletRequest)req; HttpServletResponse response = (HttpServletResponse)res; + String header = request.getHeader(HttpHeader.AUTHORIZATION.asString()); + String spnegoToken = getSpnegoToken(header); HttpSession httpSession = request.getSession(false); - if (httpSession != null) + + // We have a token from the client, so run the login. + if (header != null && spnegoToken != null) + { + SpnegoUserIdentity identity = (SpnegoUserIdentity)login(null, spnegoToken, request); + if (identity.isEstablished()) + { + if (LOG.isDebugEnabled()) + LOG.debug("Sending final challenge"); + SpnegoUserPrincipal principal = (SpnegoUserPrincipal)identity.getUserPrincipal(); + setSpnegoToken(response, principal.getEncodedToken()); + + Duration authnDuration = getAuthenticationDuration(); + if (!authnDuration.isNegative()) + { + if (httpSession == null) + httpSession = request.getSession(true); + httpSession.setAttribute(UserIdentityHolder.ATTRIBUTE, new UserIdentityHolder(identity)); + } + return new UserAuthentication(getAuthMethod(), identity); + } + else + { + if (DeferredAuthentication.isDeferred(response)) + return Authentication.UNAUTHENTICATED; + if (LOG.isDebugEnabled()) + LOG.debug("Sending intermediate challenge"); + SpnegoUserPrincipal principal = (SpnegoUserPrincipal)identity.getUserPrincipal(); + sendChallenge(response, principal.getEncodedToken()); + return Authentication.SEND_CONTINUE; + } + } + // No token from the client; check if the client has logged in + // successfully before and the authentication has not expired. + else if (httpSession != null) { UserIdentityHolder holder = (UserIdentityHolder)httpSession.getAttribute(UserIdentityHolder.ATTRIBUTE); if (holder != null) @@ -130,47 +166,6 @@ public class ConfigurableSpnegoAuthenticator extends LoginAuthenticator } } - String header = request.getHeader(HttpHeader.AUTHORIZATION.asString()); - String spnegoToken = getSpnegoToken(header); - - // The client has responded to the challenge we sent previously. - if (header != null && spnegoToken != null) - { - SpnegoUserIdentity identity = (SpnegoUserIdentity)login(null, spnegoToken, request); - if (identity != null) - { - if (identity.isEstablished()) - { - if (!DeferredAuthentication.isDeferred(response)) - { - if (LOG.isDebugEnabled()) - LOG.debug("Sending final challenge"); - SpnegoUserPrincipal principal = (SpnegoUserPrincipal)identity.getUserPrincipal(); - setSpnegoToken(response, principal.getEncodedToken()); - } - - Duration authnDuration = getAuthenticationDuration(); - if (!authnDuration.isNegative()) - { - if (httpSession == null) - httpSession = request.getSession(true); - httpSession.setAttribute(UserIdentityHolder.ATTRIBUTE, new UserIdentityHolder(identity)); - } - return new UserAuthentication(getAuthMethod(), identity); - } - else - { - if (DeferredAuthentication.isDeferred(response)) - return Authentication.UNAUTHENTICATED; - if (LOG.isDebugEnabled()) - LOG.debug("Sending intermediate challenge"); - SpnegoUserPrincipal principal = (SpnegoUserPrincipal)identity.getUserPrincipal(); - sendChallenge(response, principal.getEncodedToken()); - return Authentication.SEND_CONTINUE; - } - } - } - if (DeferredAuthentication.isDeferred(response)) return Authentication.UNAUTHENTICATED; From 42de1dffe0b7e195f6f87e0ad53598acb62f69bb Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 2 Oct 2018 13:25:33 +0200 Subject: [PATCH 060/931] Issue #2868 - Adding SPNEGO authentication support for Jetty Client. Fixed server-side logic after review. Signed-off-by: Simone Bordet --- .../ConfigurableSpnegoAuthenticator.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/ConfigurableSpnegoAuthenticator.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/ConfigurableSpnegoAuthenticator.java index 23873e0f36d..6cae1a4745b 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/ConfigurableSpnegoAuthenticator.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/ConfigurableSpnegoAuthenticator.java @@ -118,10 +118,15 @@ public class ConfigurableSpnegoAuthenticator extends LoginAuthenticator SpnegoUserIdentity identity = (SpnegoUserIdentity)login(null, spnegoToken, request); if (identity.isEstablished()) { - if (LOG.isDebugEnabled()) - LOG.debug("Sending final challenge"); - SpnegoUserPrincipal principal = (SpnegoUserPrincipal)identity.getUserPrincipal(); - setSpnegoToken(response, principal.getEncodedToken()); + if (!DeferredAuthentication.isDeferred(response)) + { + if (LOG.isDebugEnabled()) + LOG.debug("Sending final token"); + // Send to the client the final token so that the + // client can establish the GSS context with the server. + SpnegoUserPrincipal principal = (SpnegoUserPrincipal)identity.getUserPrincipal(); + setSpnegoToken(response, principal.getEncodedToken()); + } Duration authnDuration = getAuthenticationDuration(); if (!authnDuration.isNegative()) From 103b1292ea42d625c38d73b168a879e0e52bcafa Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 2 Oct 2018 15:16:40 +0200 Subject: [PATCH 061/931] Fixed annotations on tests that should run on specific JDK versions. Signed-off-by: Simone Bordet --- .../jetty/client/ssl/SslBytesClientTest.java | 15 ++++++----- .../jetty/client/ssl/SslBytesServerTest.java | 25 +++++++++++-------- .../jetty/util/MultiReleaseJarFileTest.java | 12 ++++----- 3 files changed, 27 insertions(+), 25 deletions(-) diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesClientTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesClientTest.java index a738af91c95..b30c0a39765 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesClientTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesClientTest.java @@ -18,11 +18,6 @@ package org.eclipse.jetty.client.ssl; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNull; -import static org.junit.jupiter.api.Assertions.assertThrows; -import static org.junit.jupiter.api.Assertions.assertTrue; - import java.io.BufferedReader; import java.io.File; import java.io.InputStream; @@ -54,9 +49,13 @@ import org.junit.jupiter.api.Test; import org.junit.jupiter.api.condition.EnabledOnJre; import org.junit.jupiter.api.condition.JRE; -/* This whole test is very specific to how TLS < 1.3 works. - * Starting in Java 11, TLS/1.3 is now enabled by default. - */ +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNull; +import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.jupiter.api.Assertions.assertTrue; + +// This whole test is very specific to how TLS < 1.3 works. +// Starting in Java 11, TLS/1.3 is now enabled by default. @EnabledOnJre({JRE.JAVA_8, JRE.JAVA_9, JRE.JAVA_10}) public class SslBytesClientTest extends SslBytesTest { diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesServerTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesServerTest.java index 92c3ff6ef8c..1fc70235043 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesServerTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesServerTest.java @@ -18,12 +18,6 @@ package org.eclipse.jetty.client.ssl; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.junit.jupiter.api.Assertions.*; -import static org.junit.jupiter.api.Assumptions.assumeTrue; -import static org.junit.jupiter.api.condition.OS.LINUX; -import static org.junit.jupiter.api.condition.OS.WINDOWS; - import java.io.BufferedReader; import java.io.EOFException; import java.io.File; @@ -72,20 +66,31 @@ import org.eclipse.jetty.server.ServerConnector; import org.eclipse.jetty.server.SslConnectionFactory; import org.eclipse.jetty.server.handler.AbstractHandler; import org.eclipse.jetty.toolchain.test.MavenTestingUtils; -import org.eclipse.jetty.util.JavaVersion; import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.ssl.SslContextFactory; import org.hamcrest.Matchers; - import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Assumptions; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import org.junit.jupiter.api.condition.DisabledOnJre; import org.junit.jupiter.api.condition.DisabledOnOs; +import org.junit.jupiter.api.condition.EnabledOnJre; import org.junit.jupiter.api.condition.EnabledOnOs; import org.junit.jupiter.api.condition.JRE; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertNull; +import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.jupiter.api.Assertions.fail; +import static org.junit.jupiter.api.condition.OS.LINUX; +import static org.junit.jupiter.api.condition.OS.WINDOWS; + +// This whole test is very specific to how TLS < 1.3 works. +@EnabledOnJre({JRE.JAVA_8, JRE.JAVA_9, JRE.JAVA_10}) public class SslBytesServerTest extends SslBytesTest { private final AtomicInteger sslFills = new AtomicInteger(); @@ -101,8 +106,6 @@ public class SslBytesServerTest extends SslBytesTest private SimpleProxy proxy; private Runnable idleHook; - // This whole test is very specific to how TLS < 1.3 works. - @DisabledOnJre( JRE.JAVA_11 ) @BeforeEach public void init() throws Exception { diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/MultiReleaseJarFileTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/MultiReleaseJarFileTest.java index e22e98065b2..eaffe9edd5b 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/MultiReleaseJarFileTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/MultiReleaseJarFileTest.java @@ -18,10 +18,6 @@ package org.eclipse.jetty.util; -import static org.hamcrest.Matchers.is; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.junit.jupiter.api.Assertions.assertTrue; - import java.io.File; import java.net.URL; import java.net.URLClassLoader; @@ -31,9 +27,13 @@ import org.eclipse.jetty.toolchain.test.MavenTestingUtils; import org.eclipse.jetty.util.MultiReleaseJarFile.VersionedJarEntry; import org.hamcrest.Matchers; import org.junit.jupiter.api.Test; -import org.junit.jupiter.api.condition.EnabledOnJre; +import org.junit.jupiter.api.condition.DisabledOnJre; import org.junit.jupiter.api.condition.JRE; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; +import static org.junit.jupiter.api.Assertions.assertTrue; + public class MultiReleaseJarFileTest { private File example = MavenTestingUtils.getTestResourceFile("example.jar"); @@ -124,7 +124,7 @@ public class MultiReleaseJarFileTest @Test - @EnabledOnJre({JRE.JAVA_9, JRE.JAVA_10, JRE.JAVA_11}) + @DisabledOnJre(JRE.JAVA_8) public void testClassLoaderJava9() throws Exception { try(URLClassLoader loader = new URLClassLoader(new URL[]{example.toURI().toURL()})) From 57ef060325ba094b2d44264d1c0e2f24918d50b7 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Tue, 2 Oct 2018 08:39:05 -0500 Subject: [PATCH 062/931] Issue #2936 - Allow Dispatcher.error() to work for BadMessageException + Applying fixes from review Signed-off-by: Joakim Erdfelt --- .../org/eclipse/jetty/server/Dispatcher.java | 11 +++++++-- .../eclipse/jetty/servlet/ErrorPageTest.java | 24 ++++++++++--------- 2 files changed, 22 insertions(+), 13 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Dispatcher.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Dispatcher.java index d2033a488b7..c1baef1553d 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Dispatcher.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Dispatcher.java @@ -36,9 +36,13 @@ import org.eclipse.jetty.http.HttpURI; import org.eclipse.jetty.server.handler.ContextHandler; import org.eclipse.jetty.util.Attributes; import org.eclipse.jetty.util.MultiMap; +import org.eclipse.jetty.util.log.Log; +import org.eclipse.jetty.util.log.Logger; public class Dispatcher implements RequestDispatcher { + private static final Logger LOG = Log.getLogger(Dispatcher.class); + public final static String __ERROR_DISPATCH="org.eclipse.jetty.server.Dispatcher.ERROR"; /** Dispatch include attribute names */ @@ -207,11 +211,14 @@ public class Dispatcher implements RequestDispatcher { // Only throw BME if not in Error Dispatch Mode // This allows application ErrorPageErrorHandler to handle BME messages - Boolean inErrorDispatch = (Boolean) request.getAttribute(__ERROR_DISPATCH); - if(inErrorDispatch == null || !inErrorDispatch) + if (dispatch != DispatcherType.ERROR) { throw e; } + else + { + LOG.warn("Ignoring Original Bad Request Query String: " + old_uri, e); + } } } diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java index 7fd8431a4cb..a0c230d5fec 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java @@ -92,7 +92,6 @@ public class ErrorPageTest public void testSendErrorClosedResponse() throws Exception { String response = _connector.getResponse("GET /fail-closed/ HTTP/1.0\r\n\r\n"); - System.out.println(response); assertThat(response,Matchers.containsString("HTTP/1.1 599 599")); assertThat(response,Matchers.containsString("DISPATCH: ERROR")); assertThat(response,Matchers.containsString("ERROR_PAGE: /599")); @@ -166,16 +165,19 @@ public class ErrorPageTest @Test public void testBadMessage() throws Exception { - String response = _connector.getResponse("GET /app?baa=%88%A4 HTTP/1.0\r\n\r\n"); - assertThat(response, Matchers.containsString("HTTP/1.1 400 Bad query encoding")); - assertThat(response, Matchers.containsString("ERROR_PAGE: /BadMessageException")); - assertThat(response, Matchers.containsString("ERROR_MESSAGE: Bad query encoding")); - assertThat(response, Matchers.containsString("ERROR_CODE: 400")); - assertThat(response, Matchers.containsString("ERROR_EXCEPTION: org.eclipse.jetty.http.BadMessageException: 400: Bad query encoding")); - assertThat(response, Matchers.containsString("ERROR_EXCEPTION_TYPE: class org.eclipse.jetty.http.BadMessageException")); - assertThat(response, Matchers.containsString("ERROR_SERVLET: org.eclipse.jetty.servlet.ErrorPageTest$AppServlet-")); - assertThat(response, Matchers.containsString("ERROR_REQUEST_URI: /app")); - assertThat(response, Matchers.containsString("getParameterMap()= {}")); + try (StacklessLogging ignore = new StacklessLogging(Dispatcher.class)) + { + String response = _connector.getResponse("GET /app?baa=%88%A4 HTTP/1.0\r\n\r\n"); + assertThat(response, Matchers.containsString("HTTP/1.1 400 Bad query encoding")); + assertThat(response, Matchers.containsString("ERROR_PAGE: /BadMessageException")); + assertThat(response, Matchers.containsString("ERROR_MESSAGE: Bad query encoding")); + assertThat(response, Matchers.containsString("ERROR_CODE: 400")); + assertThat(response, Matchers.containsString("ERROR_EXCEPTION: org.eclipse.jetty.http.BadMessageException: 400: Bad query encoding")); + assertThat(response, Matchers.containsString("ERROR_EXCEPTION_TYPE: class org.eclipse.jetty.http.BadMessageException")); + assertThat(response, Matchers.containsString("ERROR_SERVLET: org.eclipse.jetty.servlet.ErrorPageTest$AppServlet-")); + assertThat(response, Matchers.containsString("ERROR_REQUEST_URI: /app")); + assertThat(response, Matchers.containsString("getParameterMap()= {}")); + } } From 06430f1b041f55551f1afe075dd92fe9f5d00d3f Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 2 Oct 2018 16:10:52 +0200 Subject: [PATCH 063/931] Issue #2868 - Adding SPNEGO authentication support for Jetty Client. Restored behavior where authentication results are stored no matter the response status. Signed-off-by: Simone Bordet --- .../eclipse/jetty/client/AuthenticationProtocolHandler.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/AuthenticationProtocolHandler.java b/jetty-client/src/main/java/org/eclipse/jetty/client/AuthenticationProtocolHandler.java index 3e40ae4fe6a..11328247ad1 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/AuthenticationProtocolHandler.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/AuthenticationProtocolHandler.java @@ -37,7 +37,6 @@ import org.eclipse.jetty.client.api.Result; import org.eclipse.jetty.client.util.BufferingResponseListener; import org.eclipse.jetty.http.HttpField; import org.eclipse.jetty.http.HttpHeader; -import org.eclipse.jetty.http.HttpStatus; import org.eclipse.jetty.http.QuotedCSV; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -310,8 +309,7 @@ public abstract class AuthenticationProtocolHandler implements ProtocolHandler @Override public void onSuccess(Response response) { - if (response.getStatus() == HttpStatus.OK_200) - client.getAuthenticationStore().addAuthenticationResult(authenticationResult); + client.getAuthenticationStore().addAuthenticationResult(authenticationResult); } } } From 462668e80a111ac343dedb4c8a46cd41e9ebd6d5 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 2 Oct 2018 21:54:05 +0200 Subject: [PATCH 064/931] Issue #2868 - Adding SPNEGO authentication support for Jetty Client. Running tests only on JDK 11, as apparently other JDKs have problems with AES encryption/decryption. Another hypothesis is that Kerby does AES encryption differently from what earlier JDKs expect. Signed-off-by: Simone Bordet --- .../client/util/SPNEGOAuthenticationTest.java | 20 ++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/util/SPNEGOAuthenticationTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/util/SPNEGOAuthenticationTest.java index 1185418006a..8fa771ad4cd 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/util/SPNEGOAuthenticationTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/util/SPNEGOAuthenticationTest.java @@ -57,6 +57,8 @@ import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.util.security.Constraint; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.condition.DisabledOnJre; +import org.junit.jupiter.api.condition.JRE; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.ArgumentsSource; @@ -64,6 +66,10 @@ import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; import static org.junit.jupiter.api.Assertions.assertNull; +// Apparently only JDK 11 is able to run these tests. +// See for example: https://bugs.openjdk.java.net/browse/JDK-8202439 +// where apparently the compiler gets the AES CPU instructions wrong. +@DisabledOnJre({JRE.JAVA_8, JRE.JAVA_9, JRE.JAVA_10}) public class SPNEGOAuthenticationTest extends AbstractHttpClientServerTest { private static final Logger LOG = Log.getLogger(SPNEGOAuthenticationTest.class); @@ -180,7 +186,7 @@ public class SPNEGOAuthenticationTest extends AbstractHttpClientServerTest // Request without Authentication causes a 401 Request request = client.newRequest(uri).path("/secure"); - ContentResponse response = request.timeout(5, TimeUnit.SECONDS).send(); + ContentResponse response = request.timeout(15, TimeUnit.SECONDS).send(); assertNotNull(response); assertEquals(401, response.getStatus()); @@ -197,7 +203,7 @@ public class SPNEGOAuthenticationTest extends AbstractHttpClientServerTest // Request with authentication causes a 401 (no previous successful authentication) + 200 request = client.newRequest(uri).path("/secure"); - response = request.timeout(5, TimeUnit.SECONDS).send(); + response = request.timeout(15, TimeUnit.SECONDS).send(); assertNotNull(response); assertEquals(200, response.getStatus()); // Authentication results for SPNEGO cannot be cached. @@ -217,7 +223,7 @@ public class SPNEGOAuthenticationTest extends AbstractHttpClientServerTest // The server has infinite authentication duration, so // subsequent requests will be preemptively authorized. request = client.newRequest(uri).path("/secure"); - response = request.timeout(5, TimeUnit.SECONDS).send(); + response = request.timeout(15, TimeUnit.SECONDS).send(); assertNotNull(response); assertEquals(200, response.getStatus()); assertEquals(1, requests.get()); @@ -259,14 +265,14 @@ public class SPNEGOAuthenticationTest extends AbstractHttpClientServerTest }); Request request = client.newRequest(uri).path("/secure"); - Response response = request.timeout(5, TimeUnit.SECONDS).send(); + Response response = request.timeout(15, TimeUnit.SECONDS).send(); assertEquals(200, response.getStatus()); // Expect 401 + 200. assertEquals(2, requests.get()); requests.set(0); request = client.newRequest(uri).path("/secure"); - response = request.timeout(5, TimeUnit.SECONDS).send(); + response = request.timeout(15, TimeUnit.SECONDS).send(); assertEquals(200, response.getStatus()); // Authentication not expired on server, expect 200 only. assertEquals(1, requests.get()); @@ -276,7 +282,7 @@ public class SPNEGOAuthenticationTest extends AbstractHttpClientServerTest requests.set(0); request = client.newRequest(uri).path("/secure"); - response = request.timeout(5, TimeUnit.SECONDS).send(); + response = request.timeout(15, TimeUnit.SECONDS).send(); assertEquals(200, response.getStatus()); // Authentication expired, expect 401 + 200. assertEquals(2, requests.get()); @@ -287,7 +293,7 @@ public class SPNEGOAuthenticationTest extends AbstractHttpClientServerTest requests.set(0); ByteArrayInputStream input = new ByteArrayInputStream("hello_world".getBytes(StandardCharsets.UTF_8)); request = client.newRequest(uri).method("POST").path("/secure").content(new InputStreamContentProvider(input)); - response = request.timeout(5, TimeUnit.SECONDS).send(); + response = request.timeout(15, TimeUnit.SECONDS).send(); assertEquals(200, response.getStatus()); // Authentication expired, but POSTs are allowed. assertEquals(1, requests.get()); From 85d512ceecef5bcc8604f309ca8319f4cd92793c Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 2 Oct 2018 21:55:09 +0200 Subject: [PATCH 065/931] Restored proper test timeout. Signed-off-by: Simone Bordet --- .../eclipse/jetty/proxy/ProxyServletTest.java | 26 ++++++++----------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServletTest.java b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServletTest.java index 076945ed9db..715ca1e4967 100644 --- a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServletTest.java +++ b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServletTest.java @@ -18,16 +18,6 @@ package org.eclipse.jetty.proxy; -import static org.eclipse.jetty.http.HttpFieldsMatchers.containsHeader; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.instanceOf; -import static org.junit.jupiter.api.Assertions.assertArrayEquals; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertThrows; -import static org.junit.jupiter.api.Assertions.assertTrue; - -import java.io.ByteArrayOutputStream; import java.io.EOFException; import java.io.IOException; import java.io.InputStream; @@ -73,7 +63,6 @@ import javax.servlet.http.HttpServletResponse; import org.eclipse.jetty.client.DuplexConnectionPool; import org.eclipse.jetty.client.HttpClient; -import org.eclipse.jetty.client.HttpContentResponse; import org.eclipse.jetty.client.HttpProxy; import org.eclipse.jetty.client.api.ContentResponse; import org.eclipse.jetty.client.api.Request; @@ -96,7 +85,6 @@ import org.eclipse.jetty.servlet.FilterHolder; import org.eclipse.jetty.servlet.ServletContextHandler; import org.eclipse.jetty.servlet.ServletHolder; import org.eclipse.jetty.toolchain.test.MavenTestingUtils; -import org.eclipse.jetty.util.Callback; import org.eclipse.jetty.util.IO; import org.eclipse.jetty.util.thread.QueuedThreadPool; import org.hamcrest.Matchers; @@ -105,7 +93,15 @@ import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.Arguments; import org.junit.jupiter.params.provider.MethodSource; -import org.junit.jupiter.params.provider.ValueSource; + +import static org.eclipse.jetty.http.HttpFieldsMatchers.containsHeader; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.instanceOf; +import static org.junit.jupiter.api.Assertions.assertArrayEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.jupiter.api.Assertions.assertTrue; public class ProxyServletTest { @@ -1400,8 +1396,8 @@ public class ProxyServletTest // Wait more than the idle timeout to break the connection. Thread.sleep(2 * idleTimeout); - assertTrue(serverLatch.await(555, TimeUnit.SECONDS)); - assertTrue(clientLatch.await(555, TimeUnit.SECONDS)); + assertTrue(serverLatch.await(5, TimeUnit.SECONDS)); + assertTrue(clientLatch.await(5, TimeUnit.SECONDS)); } @ParameterizedTest From baca9cae3982a51a39c406f9f3a457caa4fbf700 Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Wed, 3 Oct 2018 09:54:05 +1000 Subject: [PATCH 066/931] Use cache to download to mongo and upgrade mongodb plugin (#2949) * cache downloading mongodb and upgrade mongodb embeded plugin Signed-off-by: olivier lamy * force mongodb version Signed-off-by: olivier lamy --- tests/test-sessions/test-mongodb-sessions/pom.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/test-sessions/test-mongodb-sessions/pom.xml b/tests/test-sessions/test-mongodb-sessions/pom.xml index c1f719beadc..bc6224e3b78 100644 --- a/tests/test-sessions/test-mongodb-sessions/pom.xml +++ b/tests/test-sessions/test-mongodb-sessions/pom.xml @@ -121,7 +121,7 @@ com.github.joelittlejohn.embedmongo embedmongo-maven-plugin - 0.3.5 + 0.4.1 @@ -137,6 +137,8 @@ false + https://jenkins.webtide.net/userContent/ + 2.2.1 From 9d37feba3c6c9982883c51a2380cf1330b2125ce Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Wed, 3 Oct 2018 10:00:14 +1000 Subject: [PATCH 067/931] Cleanup after #2903 (#2933) Improved dump output of ServletHandler and ContextHandler Fixed duplicate listeners Removed unused fields Signed-off-by: Greg Wilkins --- .../jetty/embedded/OneServletContext.java | 80 +++++++++++++++++- .../jetty/server/handler/ContextHandler.java | 11 ++- .../eclipse/jetty/servlet/FilterMapping.java | 34 ++++++-- .../eclipse/jetty/servlet/ListenerHolder.java | 7 +- .../jetty/servlet/ServletContextHandler.java | 11 +-- .../eclipse/jetty/servlet/ServletHandler.java | 84 ++++++------------- .../util/component/DumpableCollection.java | 9 +- .../webapp/StandardDescriptorProcessor.java | 10 +-- 8 files changed, 155 insertions(+), 91 deletions(-) diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContext.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContext.java index a09dab91db1..832aa5af384 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContext.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContext.java @@ -20,8 +20,23 @@ package org.eclipse.jetty.embedded; import org.eclipse.jetty.server.Server; import org.eclipse.jetty.servlet.DefaultServlet; +import org.eclipse.jetty.servlet.ListenerHolder; import org.eclipse.jetty.servlet.ServletContextHandler; +import javax.servlet.DispatcherType; +import javax.servlet.Filter; +import javax.servlet.FilterChain; +import javax.servlet.FilterConfig; +import javax.servlet.ServletContextEvent; +import javax.servlet.ServletContextListener; +import javax.servlet.ServletException; +import javax.servlet.ServletRequest; +import javax.servlet.ServletRequestEvent; +import javax.servlet.ServletRequestListener; +import javax.servlet.ServletResponse; +import java.io.IOException; +import java.util.EnumSet; + public class OneServletContext { public static void main( String[] args ) throws Exception @@ -35,11 +50,72 @@ public class OneServletContext server.setHandler(context); // Add dump servlet - context.addServlet(DumpServlet.class, "/dump/*"); - // Add default servlet + context.addServlet( + context.addServlet(DumpServlet.class, "/dump/*"), + "*.dump"); + context.addServlet(HelloServlet.class, "/hello/*"); context.addServlet(DefaultServlet.class, "/"); + context.addFilter(TestFilter.class,"/*", EnumSet.of(DispatcherType.REQUEST)); + context.addFilter(TestFilter.class,"/test", EnumSet.of(DispatcherType.REQUEST,DispatcherType.ASYNC)); + context.addFilter(TestFilter.class,"*.test", EnumSet.of(DispatcherType.REQUEST,DispatcherType.INCLUDE,DispatcherType.FORWARD)); + + context.getServletHandler().addListener(new ListenerHolder(InitListener.class)); + context.getServletHandler().addListener(new ListenerHolder(RequestListener.class)); + server.start(); + server.dumpStdErr(); server.join(); } + + + public static class TestFilter implements Filter + { + @Override + public void init(FilterConfig filterConfig) throws ServletException + { + + } + + @Override + public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException + { + chain.doFilter(request, response); + } + + @Override + public void destroy() + { + + } + } + + public static class InitListener implements ServletContextListener + { + @Override + public void contextInitialized(ServletContextEvent sce) + { + } + + @Override + public void contextDestroyed(ServletContextEvent sce) + { + } + } + + + public static class RequestListener implements ServletRequestListener + { + @Override + public void requestDestroyed(ServletRequestEvent sre) + { + + } + + @Override + public void requestInitialized(ServletRequestEvent sre) + { + + } + } } diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java index e3fa2e32d81..e9560d603b2 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java @@ -201,7 +201,6 @@ public class ContextHandler extends ScopedHandler implements Attributes, Gracefu private final List _servletRequestAttributeListeners = new CopyOnWriteArrayList<>(); private final List _contextListeners = new CopyOnWriteArrayList<>(); private final List _durableListeners = new CopyOnWriteArrayList<>(); - private Map _managedAttributes; private String[] _protectedTargets; private final CopyOnWriteArrayList _aliasChecks = new CopyOnWriteArrayList(); @@ -258,9 +257,10 @@ public class ContextHandler extends ScopedHandler implements Attributes, Gracefu public void dump(Appendable out, String indent) throws IOException { dumpBeans(out,indent,Collections.singletonList(new ClassLoaderDump(getClassLoader())), - Collections.singletonList(new DumpableCollection("Handler attributes " + this,((AttributesMap)getAttributes()).getAttributeEntrySet())), - Collections.singletonList(new DumpableCollection("Context attributes " + this,((Context)getServletContext()).getAttributeEntrySet())), - Collections.singletonList(new DumpableCollection("Initparams " + this,getInitParams().entrySet()))); + Collections.singletonList(new DumpableCollection("eventListeners "+this,_eventListeners)), + Collections.singletonList(new DumpableCollection("handler attributes " + this,((AttributesMap)getAttributes()).getAttributeEntrySet())), + Collections.singletonList(new DumpableCollection("context attributes " + this,((Context)getServletContext()).getAttributeEntrySet())), + Collections.singletonList(new DumpableCollection("initparams " + this,getInitParams().entrySet()))); } /* ------------------------------------------------------------ */ @@ -1553,10 +1553,9 @@ public class ContextHandler extends ScopedHandler implements Attributes, Gracefu } /* ------------------------------------------------------------ */ + @Deprecated public void setManagedAttribute(String name, Object value) { - Object old = _managedAttributes.put(name,value); - updateBean(old,value); } /* ------------------------------------------------------------ */ diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterMapping.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterMapping.java index e37eef01166..50a1f6bf94e 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterMapping.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterMapping.java @@ -19,7 +19,9 @@ package org.eclipse.jetty.servlet; import java.io.IOException; +import java.util.Arrays; import java.util.EnumSet; +import java.util.stream.Collectors; import javax.servlet.DispatcherType; @@ -86,11 +88,31 @@ public class FilterMapping implements Dumpable throw new IllegalArgumentException(type.toString()); } + /* ------------------------------------------------------------ */ + /** Dispatch type from name + * @param type the dispatcher type + * @return the type constant ({@link #REQUEST}, {@link #ASYNC}, {@link #FORWARD}, {@link #INCLUDE}, or {@link #ERROR}) + */ + public static DispatcherType dispatch(int type) + { + switch(type) + { + case REQUEST: + return DispatcherType.REQUEST; + case ASYNC: + return DispatcherType.ASYNC; + case FORWARD: + return DispatcherType.FORWARD; + case INCLUDE: + return DispatcherType.INCLUDE; + case ERROR: + return DispatcherType.ERROR; + } + throw new IllegalArgumentException(Integer.toString(type)); + } /* ------------------------------------------------------------ */ /* ------------------------------------------------------------ */ - - private int _dispatches=DEFAULT; private String _filterName; private transient FilterHolder _holder; @@ -122,7 +144,7 @@ public class FilterMapping implements Dumpable /* ------------------------------------------------------------ */ /** Check if this filter applies to a particular dispatch type. * @param type The type of request: - * {@link Handler#REQUEST}, {@link Handler#FORWARD}, {@link Handler#INCLUDE} or {@link Handler#ERROR}. + * {@link #REQUEST}, {@link #FORWARD}, {@link #INCLUDE} or {@link #ERROR}. * @return true if this filter applies */ boolean appliesTo(int type) @@ -295,9 +317,9 @@ public class FilterMapping implements Dumpable public String toString() { return - TypeUtil.asList(_pathSpecs)+"/"+ - TypeUtil.asList(_servletNames)+"=="+ - _dispatches+"=>"+ + TypeUtil.asList(_pathSpecs)+"/"+ + TypeUtil.asList(_servletNames)+"/"+ + Arrays.stream(DispatcherType.values()).filter(this::appliesTo).collect(Collectors.toSet())+"=>"+ _filterName; } diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ListenerHolder.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ListenerHolder.java index 9e94f463f62..b3aa0e4c845 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ListenerHolder.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ListenerHolder.java @@ -46,7 +46,12 @@ public class ListenerHolder extends BaseHolder { super(source); } - + + public ListenerHolder(Class listenerClass) + { + super(Source.EMBEDDED); + setHeldClass(listenerClass); + } public EventListener getListener() { diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletContextHandler.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletContextHandler.java index 8729025410b..21f51b86ad7 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletContextHandler.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletContextHandler.java @@ -153,7 +153,7 @@ public class ServletContextHandler extends ContextHandler /* ------------------------------------------------------------ */ public ServletContextHandler(HandlerContainer parent, String contextPath, SessionHandler sessionHandler, SecurityHandler securityHandler, ServletHandler servletHandler, ErrorHandler errorHandler,int options) { - super((ContextHandler.Context)null); + super(parent, contextPath); _options=options; _scontext = new Context(); _sessionHandler = sessionHandler; @@ -163,15 +163,6 @@ public class ServletContextHandler extends ContextHandler _objFactory = new DecoratedObjectFactory(); _objFactory.addDecorator(new DeprecationWarning()); - if (contextPath!=null) - setContextPath(contextPath); - - if (parent instanceof HandlerWrapper) - ((HandlerWrapper)parent).setHandler(this); - else if (parent instanceof HandlerCollection) - ((HandlerCollection)parent).addHandler(this); - - // Link the handlers relinkHandlers(); diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHandler.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHandler.java index 4ddaf61793f..34adff4bf68 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHandler.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHandler.java @@ -32,6 +32,7 @@ import java.util.Set; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentLinkedQueue; import java.util.concurrent.ConcurrentMap; +import java.util.stream.Stream; import javax.servlet.DispatcherType; import javax.servlet.Filter; @@ -67,6 +68,7 @@ import org.eclipse.jetty.util.MultiMap; import org.eclipse.jetty.util.URIUtil; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; +import org.eclipse.jetty.util.component.DumpableCollection; import org.eclipse.jetty.util.component.LifeCycle; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -124,8 +126,6 @@ public class ServletHandler extends ScopedHandler @SuppressWarnings("unchecked") protected final Queue[] _chainLRU = new Queue[FilterMapping.ALL]; - - /* ------------------------------------------------------------ */ /** Constructor. */ @@ -133,6 +133,18 @@ public class ServletHandler extends ScopedHandler { } + /* ------------------------------------------------------------ */ + @Override + public void dump(Appendable out, String indent) throws IOException + { + dumpBeans(out,indent, + Collections.singletonList(new DumpableCollection("listeners "+this,_listeners)), + Collections.singletonList(new DumpableCollection("filters "+this,_filters)), + Collections.singletonList(new DumpableCollection("filterMappings "+this,_filterMappings)), + Collections.singletonList(new DumpableCollection("servlets "+this,_servlets)), + Collections.singletonList(new DumpableCollection("servletMappings "+this,_servletMappings))); + } + /* ----------------------------------------------------------------- */ @Override protected synchronized void doStart() @@ -178,7 +190,7 @@ public class ServletHandler extends ScopedHandler if (_contextHandler==null) initialize(); - + super.doStart(); } @@ -257,10 +269,8 @@ public class ServletHandler extends ScopedHandler //Retain only filters and mappings that were added using jetty api (ie Source.EMBEDDED) FilterHolder[] fhs = (FilterHolder[]) LazyList.toArray(filterHolders, FilterHolder.class); - updateBeans(_filters, fhs); _filters = fhs; FilterMapping[] fms = (FilterMapping[]) LazyList.toArray(filterMappings, FilterMapping.class); - updateBeans(_filterMappings, fms); _filterMappings = fms; _matchAfterIndex = (_filterMappings == null || _filterMappings.length == 0 ? -1 : _filterMappings.length-1); @@ -302,10 +312,8 @@ public class ServletHandler extends ScopedHandler //Retain only Servlets and mappings added via jetty apis (ie Source.EMBEDDED) ServletHolder[] shs = (ServletHolder[]) LazyList.toArray(servletHolders, ServletHolder.class); - updateBeans(_servlets, shs); _servlets = shs; ServletMapping[] sms = (ServletMapping[])LazyList.toArray(servletMappings, ServletMapping.class); - updateBeans(_servletMappings, sms); _servletMappings = sms; //Retain only Listeners added via jetty apis (is Source.EMBEDDED) @@ -327,7 +335,6 @@ public class ServletHandler extends ScopedHandler } } ListenerHolder[] listeners = (ListenerHolder[])LazyList.toArray(listenerHolders, ListenerHolder.class); - updateBeans(_listeners, listeners); _listeners = listeners; //will be regenerated on next start @@ -730,60 +737,26 @@ public class ServletHandler extends ScopedHandler { MultiException mx = new MultiException(); - //start filter holders now - if (_filters != null) - { - for (FilterHolder f: _filters) - { + Stream.concat(Stream.concat( + Arrays.stream(_filters), + Arrays.stream(_servlets).sorted()), + Arrays.stream(_listeners)) + .forEach(h->{ try { - f.start(); - f.initialize(); - } - catch (Exception e) - { - mx.add(e); - } - } - } - - // Sort and Initialize servlets - if (_servlets!=null) - { - ServletHolder[] servlets = _servlets.clone(); - Arrays.sort(servlets); - for (ServletHolder servlet : servlets) - { - try - { - servlet.start(); - servlet.initialize(); + if (!h.isStarted()) + { + h.start(); + h.initialize(); + } } catch (Throwable e) { LOG.debug(Log.EXCEPTION, e); mx.add(e); } - } - } + }); - //any other beans - for (Holder h: getBeans(Holder.class)) - { - try - { - if (!h.isStarted()) - { - h.start(); - h.initialize(); - } - } - catch (Exception e) - { - mx.add(e); - } - } - mx.ifExceptionThrow(); } @@ -820,7 +793,6 @@ public class ServletHandler extends ScopedHandler for (ListenerHolder holder:listeners) holder.setServletHandler(this); - updateBeans(_listeners,listeners); _listeners = listeners; } @@ -1537,7 +1509,6 @@ public class ServletHandler extends ScopedHandler */ public void setFilterMappings(FilterMapping[] filterMappings) { - updateBeans(_filterMappings,filterMappings); _filterMappings = filterMappings; if (isStarted()) updateMappings(); invalidateChainsCache(); @@ -1550,7 +1521,6 @@ public class ServletHandler extends ScopedHandler for (FilterHolder holder:holders) holder.setServletHandler(this); - updateBeans(_filters,holders); _filters=holders; updateNameMappings(); invalidateChainsCache(); @@ -1562,7 +1532,6 @@ public class ServletHandler extends ScopedHandler */ public void setServletMappings(ServletMapping[] servletMappings) { - updateBeans(_servletMappings,servletMappings); _servletMappings = servletMappings; if (isStarted()) updateMappings(); invalidateChainsCache(); @@ -1578,7 +1547,6 @@ public class ServletHandler extends ScopedHandler for (ServletHolder holder:holders) holder.setServletHandler(this); - updateBeans(_servlets,holders); _servlets=holders; updateNameMappings(); invalidateChainsCache(); diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/component/DumpableCollection.java b/jetty-util/src/main/java/org/eclipse/jetty/util/component/DumpableCollection.java index 369e440758e..0fb4c13f139 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/component/DumpableCollection.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/component/DumpableCollection.java @@ -19,7 +19,9 @@ package org.eclipse.jetty.util.component; import java.io.IOException; +import java.util.Arrays; import java.util.Collection; +import java.util.Collections; public class DumpableCollection implements Dumpable { @@ -31,7 +33,12 @@ public class DumpableCollection implements Dumpable _name=name; _collection=collection; } - + + public DumpableCollection(String name,Object... items) + { + this(name, items==null?Collections.emptyList():Arrays.asList(items)); + } + @Override public String dump() { diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/StandardDescriptorProcessor.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/StandardDescriptorProcessor.java index fdfaede611b..21454cb806d 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/StandardDescriptorProcessor.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/StandardDescriptorProcessor.java @@ -1900,14 +1900,10 @@ public class StandardDescriptorProcessor extends IterativeDescriptorProcessor { //Servlet Spec 3.0 p 74 //Duplicate listener declarations don't result in duplicate listener instances - EventListener[] listeners=context.getEventListeners(); - if (listeners!=null) + for (ListenerHolder holder : context.getServletHandler().getListeners()) { - for (EventListener l : listeners) - { - if (l.getClass().getName().equals(className)) - return; - } + if (holder.getClassName().equals(className)) + return; } ((WebDescriptor)descriptor).addClassName(className); From 64dc93050049c2f21a7b5af1092a22a0cc10801b Mon Sep 17 00:00:00 2001 From: WalkerWatch Date: Wed, 3 Oct 2018 11:13:40 -0400 Subject: [PATCH 068/931] Clarify Websocket intro. Resolves #2951 --- .../development/websockets/intro/chapter.adoc | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/jetty-documentation/src/main/asciidoc/development/websockets/intro/chapter.adoc b/jetty-documentation/src/main/asciidoc/development/websockets/intro/chapter.adoc index fab182278a7..9a43439e238 100644 --- a/jetty-documentation/src/main/asciidoc/development/websockets/intro/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/development/websockets/intro/chapter.adoc @@ -19,14 +19,11 @@ [[websocket-intro]] == WebSocket Introduction -WebSocket is a new protocol for bidirectional communications over HTTP. - -It is based on a low level framing protocol that delivers messages in either UTF-8 TEXT or BINARY format. - -A single message in WebSocket can be of any size (the underlying framing however does have a single frame limit of http://en.wikipedia.org/wiki/9223372036854775807[63-bits]) +WebSocket is a new protocol for bidirectional communications initiated via HTTP/1.1 upgrade and providing basic message framing, layered over TCP. +It is based on a low-level framing protocol that delivers messages in either UTF-8 TEXT or BINARY format. +A single message in WebSocket can be of any size (the underlying framing however does have a single frame limit of http://en.wikipedia.org/wiki/9223372036854775807[63-bits]). There can be an unlimited number of messages sent. - Messages are sent sequentially, the base protocol does not support interleaved messages. A WebSocket connection goes through some basic state changes: @@ -78,11 +75,9 @@ https://datatracker.ietf.org/doc/draft-ietf-hybi-websocket-perframe-compression/ Per Frame Compression Extension. + An early extension draft from the Google/Chromium team that would provide WebSocket frame compression. -+ perframe-compression using deflate algorithm is present on many versions of Chrome/Chromium. + Jetty's support for perframe-compression is based on the draft-04 spec. -+ This standard is being replaced with permessage-compression. https://datatracker.ietf.org/doc/draft-tyoshino-hybi-permessage-compression/[permessage-compression]:: @@ -108,12 +103,11 @@ Java WebSocket Server API:: === Enabling WebSocket -To enable websocket, you need to link:#enabling-modules[enable] the `websocket` link:#enabling-modules[module]. +To enable Websocket, you need to enable the `websocket` link:#enabling-modules[module]. -Once this module is enabled for your jetty base, it will apply to all webapps deployed to that base. -If you want to be more selective about which webapps use websocket, then you can: +Once this module is enabled for your Jetty base, it will apply to all webapps deployed to that base. If you want to be more selective about which webapps use Websocket, then you can: -Disable jsr-356 for a particular webapp::: +Disable JSR-356 for a particular webapp::: You can disable jsr-356 for a particular webapp by setting the link:#context_attributes[context attribute] `org.eclipse.jetty.websocket.jsr356` to `false`. This will mean that websockets are not available to your webapp, however deployment time scanning for websocket-related classes such as endpoints will still occur. This can be a significant impost if your webapp contains a lot of classes and/or jar files. From 20db6700c0912c421adc6c612cece2051d204a7d Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Wed, 3 Oct 2018 18:24:59 +0200 Subject: [PATCH 069/931] Fixes #859 - Stack overflow error in jetty high level API. Now executing the call to abort() so that the stack overflow is avoided. Signed-off-by: Simone Bordet --- .../org/eclipse/jetty/client/HttpSender.java | 23 +++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpSender.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpSender.java index d2d620c5e9a..a3093b994b2 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpSender.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpSender.java @@ -19,6 +19,8 @@ package org.eclipse.jetty.client; import java.nio.ByteBuffer; +import java.util.concurrent.Executor; +import java.util.concurrent.RejectedExecutionException; import java.util.concurrent.atomic.AtomicReference; import java.util.function.Supplier; @@ -338,18 +340,31 @@ public abstract class HttpSender implements AsyncContentProvider.Listener } } - protected boolean anyToFailure(Throwable failure) + private void anyToFailure(Throwable failure) { HttpExchange exchange = getHttpExchange(); if (exchange == null) - return false; + return; // Mark atomically the request as completed, with respect // to concurrency between request success and request failure. if (exchange.requestComplete(failure)) - return abort(exchange, failure); + executeAbort(exchange, failure); + } - return false; + private void executeAbort(HttpExchange exchange, Throwable failure) + { + try + { + Executor executor = getHttpChannel().getHttpDestination().getHttpClient().getExecutor(); + executor.execute(() -> abort(exchange, failure)); + } + catch (RejectedExecutionException x) + { + if (LOG.isDebugEnabled()) + LOG.debug(x); + abort(exchange, failure); + } } private void terminateRequest(HttpExchange exchange) From 76a9be8a822781489885483cee1ab33395435904 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Wed, 3 Oct 2018 19:24:05 +0200 Subject: [PATCH 070/931] Issue #2191 - JPMS Support. Restored error message in case of wrong ASM version. Signed-off-by: Simone Bordet --- .../org/eclipse/jetty/annotations/AnnotationParser.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java index 0b3fe364b6d..e0b146bb006 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java @@ -84,11 +84,12 @@ public class AnnotationParser */ public static int asmVersion () { + String asmString = "ASM6"; int asmVersion = ASM_OPCODE_VERSION; String version = ManifestUtils.getVersion(Opcodes.class).orElse(null); if (version == null) { - LOG.warn("Unknown ASM version, assuming {}", ASM_OPCODE_VERSION); + LOG.warn("Unknown ASM version, assuming {}", asmString); } else { @@ -116,13 +117,13 @@ public class AnnotationParser } default: { - LOG.warn("Unrecognized ASM version, assuming {}", ASM_OPCODE_VERSION); + LOG.warn("Unrecognized ASM version, assuming {}", asmString); } } } catch (NumberFormatException e) { - LOG.warn("Unable to parse ASM version, assuming {}", ASM_OPCODE_VERSION); + LOG.warn("Unable to parse ASM version, assuming {}", asmString); } } return asmVersion; From 8e44abb1135f6b3e96b6040bebf2fb5b60c8754f Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Wed, 3 Oct 2018 22:20:58 +0200 Subject: [PATCH 071/931] Issue #2191 - JPMS Support. Fixed OSGi manifest version reference. Signed-off-by: Simone Bordet --- jetty-plus/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jetty-plus/pom.xml b/jetty-plus/pom.xml index e1a32f8345f..69a5a8a1980 100644 --- a/jetty-plus/pom.xml +++ b/jetty-plus/pom.xml @@ -43,7 +43,7 @@ true - javax.transaction*;version="[1.3)",* + javax.transaction.*;version="1.3",* From 4dcc7cbae6d5411d26094b52a7dfe05d93b05b43 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Thu, 4 Oct 2018 00:43:52 +0200 Subject: [PATCH 072/931] Issue #2191 - JPMS Support. Restored String constant for the ASM version. Signed-off-by: Simone Bordet --- .../org/eclipse/jetty/annotations/AnnotationParser.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java index e0b146bb006..9ab39a1de78 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java @@ -70,6 +70,7 @@ public class AnnotationParser { private static final Logger LOG = Log.getLogger(AnnotationParser.class); private static final int ASM_OPCODE_VERSION = Opcodes.ASM6; //compatibility of api + private static final String ASM_OPCODE_VERSION_STR = "ASM6"; /** * Map of classnames scanned and the first location from which scan occurred @@ -84,12 +85,11 @@ public class AnnotationParser */ public static int asmVersion () { - String asmString = "ASM6"; int asmVersion = ASM_OPCODE_VERSION; String version = ManifestUtils.getVersion(Opcodes.class).orElse(null); if (version == null) { - LOG.warn("Unknown ASM version, assuming {}", asmString); + LOG.warn("Unknown ASM version, assuming {}", ASM_OPCODE_VERSION_STR); } else { @@ -117,13 +117,13 @@ public class AnnotationParser } default: { - LOG.warn("Unrecognized ASM version, assuming {}", asmString); + LOG.warn("Unrecognized ASM version, assuming {}", ASM_OPCODE_VERSION_STR); } } } catch (NumberFormatException e) { - LOG.warn("Unable to parse ASM version, assuming {}", asmString); + LOG.warn("Unable to parse ASM version, assuming {}", ASM_OPCODE_VERSION_STR); } } return asmVersion; From 9f7f0bdc5f3eb90157398cad2a64745a275844e9 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Thu, 4 Oct 2018 13:30:11 +1000 Subject: [PATCH 073/931] Pass BadMessageException from parser to HttpReceiverOVerHTTP This change has already mostly been made in 9.4, so essentially this is a back port. However the primary signature of HttpParser.Handler for badMessage has not been changed and a default method used to handle the cause. This avoids breaking any usages of the interface. Signed-off-by: Greg Wilkins --- .../jetty/client/HttpResponseException.java | 7 ++++++- .../client/http/HttpReceiverOverHTTP.java | 8 +++++++- .../client/http/HttpReceiverOverHTTPTest.java | 3 +++ .../org/eclipse/jetty/http/HttpParser.java | 18 ++++++++++++------ 4 files changed, 28 insertions(+), 8 deletions(-) diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpResponseException.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpResponseException.java index e494170c34e..b9e568d5821 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpResponseException.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpResponseException.java @@ -26,7 +26,12 @@ public class HttpResponseException extends RuntimeException public HttpResponseException(String message, Response response) { - super(message); + this(message, response, null); + } + + public HttpResponseException(String message, Response response, Throwable cause) + { + super(message, cause); this.response = response; } diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTP.java b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTP.java index 3f839e7c535..8bc0ba2b3f2 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTP.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTP.java @@ -302,13 +302,19 @@ public class HttpReceiverOverHTTP extends HttpReceiver implements HttpParser.Res @Override public void badMessage(int status, String reason) + { + badMessage(status, reason, null); + } + + @Override + public void badMessage(int status, String reason, Throwable cause) { HttpExchange exchange = getHttpExchange(); if (exchange != null) { HttpResponse response = exchange.getResponse(); response.status(status).reason(reason); - failAndClose(new HttpResponseException("HTTP protocol violation: bad response on " + getHttpConnection(), response)); + failAndClose(new HttpResponseException("HTTP protocol violation: bad response on " + getHttpConnection(), response, cause)); } } diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTPTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTPTest.java index 7702d27e8e8..cfef6dc577e 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTPTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTPTest.java @@ -32,6 +32,7 @@ import org.eclipse.jetty.client.HttpResponseException; import org.eclipse.jetty.client.Origin; import org.eclipse.jetty.client.api.Response; import org.eclipse.jetty.client.util.FutureResponseListener; +import org.eclipse.jetty.http.BadMessageException; import org.eclipse.jetty.http.HttpFields; import org.eclipse.jetty.http.HttpHeader; import org.eclipse.jetty.http.HttpVersion; @@ -204,6 +205,8 @@ public class HttpReceiverOverHTTPTest catch (ExecutionException e) { Assert.assertTrue(e.getCause() instanceof HttpResponseException); + Assert.assertTrue(e.getCause().getCause() instanceof BadMessageException); + Assert.assertTrue(e.getCause().getCause().getCause() instanceof NumberFormatException); } } diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java index 914a4068256..530b8c16644 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java @@ -996,7 +996,7 @@ public class HttpParser catch(NumberFormatException e) { LOG.ignore(e); - throw new BadMessageException(HttpStatus.BAD_REQUEST_400,"Invalid Content-Length Value"); + throw new BadMessageException(HttpStatus.BAD_REQUEST_400,"Invalid Content-Length Value",e); } } @@ -1453,7 +1453,7 @@ public class HttpParser else LOG.warn("bad HTTP parsed: "+e._code+(e.getReason()!=null?" "+e.getReason():"")+" for "+_handler); setState(State.CLOSE); - _handler.badMessage(e.getCode(), e.getReason()); + _handler.badMessage(e.getCode(), e.getReason(), e); } catch(NumberFormatException|IllegalStateException e) { @@ -1461,19 +1461,19 @@ public class HttpParser LOG.warn("parse exception: {} in {} for {}",e.toString(),_state,_handler); if (DEBUG) LOG.debug(e); - badMessage(); + badMessage(e); } catch(Exception|Error e) { BufferUtil.clear(buffer); LOG.warn("parse exception: "+e.toString()+" for "+_handler,e); - badMessage(); + badMessage(e); } return false; } - protected void badMessage() + protected void badMessage(Throwable cause) { if (_headerComplete) { @@ -1482,7 +1482,7 @@ public class HttpParser else if (_state!=State.CLOSED) { setState(State.CLOSE); - _handler.badMessage(400,_requestHandler!=null?"Bad Request":"Bad Response"); + _handler.badMessage(400,_requestHandler!=null?"Bad Request":"Bad Response", cause); } } @@ -1803,6 +1803,12 @@ public class HttpParser */ public void badMessage(int status, String reason); + /* ------------------------------------------------------------ */ + public default void badMessage(int status, String reason, Throwable cause) + { + badMessage(status, reason); + } + /* ------------------------------------------------------------ */ /** @return the size in bytes of the per parser header cache */ From 75942298f5dbfee03166e97ea4a17b3afda985bb Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Thu, 4 Oct 2018 10:51:16 +0200 Subject: [PATCH 074/931] Issue #2191 - JPMS Support. Restored previous OSGi bundle name for apache-jsp. Introduced a new property for the JPMS Automatic-Module-Name. Signed-off-by: Simone Bordet --- apache-jsp/pom.xml | 3 ++- pom.xml | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/apache-jsp/pom.xml b/apache-jsp/pom.xml index bf16e2ff53a..b82de9b0c08 100644 --- a/apache-jsp/pom.xml +++ b/apache-jsp/pom.xml @@ -10,7 +10,8 @@ http://www.eclipse.org/jetty jar - ${project.groupId}.apache.jsp + ${project.groupId}.apache-jsp + ${project.groupId}.apache.jsp diff --git a/pom.xml b/pom.xml index 0edb642ac71..011626e9bd2 100644 --- a/pom.xml +++ b/pom.xml @@ -39,6 +39,7 @@ false + ${bundle-symbolic-name} 2.22.0 @@ -49,7 +50,6 @@ 3.2.2 3.5.2 - 5.1 @@ -495,7 +495,7 @@ ${project.build.outputDirectory}/META-INF/MANIFEST.MF - ${bundle-symbolic-name} + ${jpms-module-name} ${project.version} Eclipse.org - Jetty ${jetty.url} From 31d82e148e709bdc516a213aa40421fc137cd29c Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Thu, 4 Oct 2018 11:06:14 +0200 Subject: [PATCH 075/931] Issue #2191 - JPMS Support. Using javax.transaction version starting from 1.1 for OSGi compatibility. Signed-off-by: Simone Bordet --- jetty-plus/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jetty-plus/pom.xml b/jetty-plus/pom.xml index 69a5a8a1980..c9d45980978 100644 --- a/jetty-plus/pom.xml +++ b/jetty-plus/pom.xml @@ -43,7 +43,7 @@ true - javax.transaction.*;version="1.3",* + javax.transaction.*;version="1.1",*
From 1ba945b39b1ca61aeb293e218ce9d1441c65cd22 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Thu, 4 Oct 2018 13:47:56 +0200 Subject: [PATCH 076/931] Issue #2941 - JDK 11: UnsupportedOperationException at AnnotationParser.scanClass. Updated to ASM 7.0-beta, and defaulted AnnotationParser to ASM 7. Signed-off-by: Simone Bordet --- .../eclipse/jetty/annotations/AnnotationParser.java | 10 +++++++--- pom.xml | 2 +- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java index b6d9d35ceff..33e9f9e5f61 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java @@ -24,7 +24,6 @@ import java.io.InputStream; import java.net.URI; import java.net.URL; import java.nio.file.Path; -import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; import java.util.Collections; @@ -69,8 +68,8 @@ import org.objectweb.asm.Opcodes; public class AnnotationParser { private static final Logger LOG = Log.getLogger(AnnotationParser.class); - protected static int ASM_OPCODE_VERSION = Opcodes.ASM6; //compatibility of api - protected static String ASM_OPCODE_VERSION_STR = "ASM6"; + protected static int ASM_OPCODE_VERSION = Opcodes.ASM7; //compatibility of api + protected static String ASM_OPCODE_VERSION_STR = "ASM7"; /** * Map of classnames scanned and the first location from which scan occurred @@ -118,6 +117,11 @@ public class AnnotationParser asmVersion = Opcodes.ASM6; break; } + case 7: + { + asmVersion = Opcodes.ASM7; + break; + } default: { LOG.warn("Unrecognized runtime asm version, assuming {}", ASM_OPCODE_VERSION_STR); diff --git a/pom.xml b/pom.xml index fae174072ef..9a16af6e4f2 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ undefined 1.1.4 - 6.2 + 7.0-beta 1.21 benchmarks 1.2.0 From 166eeaa1f6ecd2b50e7e4827bcaff2b683b3592a Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Fri, 5 Oct 2018 18:36:35 +1000 Subject: [PATCH 077/931] Jetty 9.3.x #2954 report cause (#2959) Issue #2954 Report badmessage cause Pass BadMessageException from parser to HttpReceiverOVerHTTP This change has already mostly been made in 9.4, so essentially this is a back port. However the primary signature of HttpParser.Handler for badMessage has not been changed and a default method used to handle the cause. This avoids breaking any usages of the interface. Signed-off-by: Greg Wilkins --- .../client/AbstractHttpClientTransport.java | 1 + .../jetty/client/HttpResponseException.java | 7 ++++++- .../client/http/HttpReceiverOverHTTP.java | 8 +++++++- .../client/http/HttpReceiverOverHTTPTest.java | 3 +++ .../org/eclipse/jetty/http/HttpParser.java | 18 ++++++++++++------ .../org/eclipse/jetty/io/ManagedSelector.java | 5 ++++- 6 files changed, 33 insertions(+), 9 deletions(-) diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractHttpClientTransport.java b/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractHttpClientTransport.java index 7c091398948..9d61939458b 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractHttpClientTransport.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractHttpClientTransport.java @@ -135,6 +135,7 @@ public abstract class AbstractHttpClientTransport extends ContainerLifeCycle imp catch (IOException xx) { LOG.ignore(xx); + x.addSuppressed(xx); } finally { diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpResponseException.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpResponseException.java index e494170c34e..b9e568d5821 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpResponseException.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpResponseException.java @@ -26,7 +26,12 @@ public class HttpResponseException extends RuntimeException public HttpResponseException(String message, Response response) { - super(message); + this(message, response, null); + } + + public HttpResponseException(String message, Response response, Throwable cause) + { + super(message, cause); this.response = response; } diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTP.java b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTP.java index 3f839e7c535..8bc0ba2b3f2 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTP.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTP.java @@ -302,13 +302,19 @@ public class HttpReceiverOverHTTP extends HttpReceiver implements HttpParser.Res @Override public void badMessage(int status, String reason) + { + badMessage(status, reason, null); + } + + @Override + public void badMessage(int status, String reason, Throwable cause) { HttpExchange exchange = getHttpExchange(); if (exchange != null) { HttpResponse response = exchange.getResponse(); response.status(status).reason(reason); - failAndClose(new HttpResponseException("HTTP protocol violation: bad response on " + getHttpConnection(), response)); + failAndClose(new HttpResponseException("HTTP protocol violation: bad response on " + getHttpConnection(), response, cause)); } } diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTPTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTPTest.java index 7702d27e8e8..cfef6dc577e 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTPTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTPTest.java @@ -32,6 +32,7 @@ import org.eclipse.jetty.client.HttpResponseException; import org.eclipse.jetty.client.Origin; import org.eclipse.jetty.client.api.Response; import org.eclipse.jetty.client.util.FutureResponseListener; +import org.eclipse.jetty.http.BadMessageException; import org.eclipse.jetty.http.HttpFields; import org.eclipse.jetty.http.HttpHeader; import org.eclipse.jetty.http.HttpVersion; @@ -204,6 +205,8 @@ public class HttpReceiverOverHTTPTest catch (ExecutionException e) { Assert.assertTrue(e.getCause() instanceof HttpResponseException); + Assert.assertTrue(e.getCause().getCause() instanceof BadMessageException); + Assert.assertTrue(e.getCause().getCause().getCause() instanceof NumberFormatException); } } diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java index 914a4068256..530b8c16644 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java @@ -996,7 +996,7 @@ public class HttpParser catch(NumberFormatException e) { LOG.ignore(e); - throw new BadMessageException(HttpStatus.BAD_REQUEST_400,"Invalid Content-Length Value"); + throw new BadMessageException(HttpStatus.BAD_REQUEST_400,"Invalid Content-Length Value",e); } } @@ -1453,7 +1453,7 @@ public class HttpParser else LOG.warn("bad HTTP parsed: "+e._code+(e.getReason()!=null?" "+e.getReason():"")+" for "+_handler); setState(State.CLOSE); - _handler.badMessage(e.getCode(), e.getReason()); + _handler.badMessage(e.getCode(), e.getReason(), e); } catch(NumberFormatException|IllegalStateException e) { @@ -1461,19 +1461,19 @@ public class HttpParser LOG.warn("parse exception: {} in {} for {}",e.toString(),_state,_handler); if (DEBUG) LOG.debug(e); - badMessage(); + badMessage(e); } catch(Exception|Error e) { BufferUtil.clear(buffer); LOG.warn("parse exception: "+e.toString()+" for "+_handler,e); - badMessage(); + badMessage(e); } return false; } - protected void badMessage() + protected void badMessage(Throwable cause) { if (_headerComplete) { @@ -1482,7 +1482,7 @@ public class HttpParser else if (_state!=State.CLOSED) { setState(State.CLOSE); - _handler.badMessage(400,_requestHandler!=null?"Bad Request":"Bad Response"); + _handler.badMessage(400,_requestHandler!=null?"Bad Request":"Bad Response", cause); } } @@ -1803,6 +1803,12 @@ public class HttpParser */ public void badMessage(int status, String reason); + /* ------------------------------------------------------------ */ + public default void badMessage(int status, String reason, Throwable cause) + { + badMessage(status, reason); + } + /* ------------------------------------------------------------ */ /** @return the size in bytes of the per parser header cache */ diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java index e301c654a27..b3780d26b33 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java @@ -258,11 +258,14 @@ public class ManagedSelector extends AbstractLifeCycle implements Runnable, Dump } catch (Throwable x) { - closeNoExceptions(_selector); if (isRunning()) LOG.warn(x); else + { + LOG.warn(x.toString()); LOG.debug(x); + } + closeNoExceptions(_selector); } return false; } From cec84cf1bf4edc9bda2ed9b964d1ebe72c6738e0 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 9 Oct 2018 15:53:53 +0200 Subject: [PATCH 078/931] Issue #2796 - Max local stream count exceeded when request fails. Reviewed other possible places where max local stream count may overflow. Fixed handling of HTTP/2 stream idle timeouts. Signed-off-by: Simone Bordet --- .../eclipse/jetty/client/HttpReceiver.java | 4 +-- .../org/eclipse/jetty/client/HttpRequest.java | 3 +- .../org/eclipse/jetty/client/HttpSender.java | 4 +-- .../client/http/HttpConnectionOverHTTP.java | 4 ++- .../fcgi/client/http/HttpChannelOverFCGI.java | 2 +- .../org/eclipse/jetty/http2/HTTP2Session.java | 20 ++++++----- .../org/eclipse/jetty/http2/HTTP2Stream.java | 7 ++-- .../org/eclipse/jetty/http2/api/Stream.java | 15 +++++++++ .../client/http/HttpReceiverOverHTTP2.java | 6 ++-- .../client/http/HttpSenderOverHTTP2.java | 4 ++- .../client/http/MaxConcurrentStreamsTest.java | 33 ++++++++++--------- .../http/client/HttpClientContinueTest.java | 21 ++++++------ 12 files changed, 75 insertions(+), 48 deletions(-) diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpReceiver.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpReceiver.java index 813672fb72c..1e33255f6fa 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpReceiver.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpReceiver.java @@ -550,14 +550,14 @@ public abstract class HttpReceiver // respect to concurrency between request and response. Result result = exchange.terminateResponse(); terminateResponse(exchange, result); + return true; } else { if (LOG.isDebugEnabled()) LOG.debug("Concurrent failure: response termination skipped, performed by helpers"); + return false; } - - return true; } private boolean updateResponseState(ResponseState from, ResponseState to) diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRequest.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRequest.java index e2ff05cd6b8..0d473085779 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRequest.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRequest.java @@ -76,7 +76,7 @@ public class HttpRequest implements Request private String query; private String method = HttpMethod.GET.asString(); private HttpVersion version = HttpVersion.HTTP_1_1; - private long idleTimeout; + private long idleTimeout = -1; private long timeout; private long timeoutAt; private ContentProvider content; @@ -99,7 +99,6 @@ public class HttpRequest implements Request extractParams(query); followRedirects(client.isFollowRedirects()); - idleTimeout = client.getIdleTimeout(); HttpField acceptEncodingField = client.getAcceptEncodingField(); if (acceptEncodingField != null) headers.put(acceptEncodingField); diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpSender.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpSender.java index a3093b994b2..5aa9787d610 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpSender.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpSender.java @@ -579,14 +579,14 @@ public abstract class HttpSender implements AsyncContentProvider.Listener // respect to concurrency between request and response. Result result = exchange.terminateRequest(); terminateRequest(exchange, failure, result); + return true; } else { if (LOG.isDebugEnabled()) LOG.debug("Concurrent failure: request termination skipped, performed by helpers"); + return false; } - - return true; } private boolean updateRequestState(RequestState from, RequestState to) diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpConnectionOverHTTP.java b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpConnectionOverHTTP.java index 2e344c3c840..a6e69e8dad7 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpConnectionOverHTTP.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpConnectionOverHTTP.java @@ -247,7 +247,9 @@ public class HttpConnectionOverHTTP extends AbstractConnection implements Connec // Save the old idle timeout to restore it. EndPoint endPoint = getEndPoint(); idleTimeout = endPoint.getIdleTimeout(); - endPoint.setIdleTimeout(request.getIdleTimeout()); + long requestIdleTimeout = request.getIdleTimeout(); + if (requestIdleTimeout >= 0) + endPoint.setIdleTimeout(requestIdleTimeout); // One channel per connection, just delegate the send. return send(channel, exchange); diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpChannelOverFCGI.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpChannelOverFCGI.java index 520375ab16f..6ae8eb39fca 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpChannelOverFCGI.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpChannelOverFCGI.java @@ -166,7 +166,7 @@ public class HttpChannelOverFCGI extends HttpChannel { super(connection.getHttpDestination().getHttpClient().getScheduler()); this.connection = connection; - setIdleTimeout(idleTimeout); + setIdleTimeout(idleTimeout >= 0 ? idleTimeout : connection.getEndPoint().getIdleTimeout()); } @Override diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java index 04279864c5d..83a82d17eb7 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java @@ -341,7 +341,7 @@ public abstract class HTTP2Session extends ContainerLifeCycle implements ISessio case SettingsFrame.MAX_CONCURRENT_STREAMS: { if (LOG.isDebugEnabled()) - LOG.debug("Updating max local concurrent streams to {} for {}", maxLocalStreams, this); + LOG.debug("Updating max local concurrent streams to {} for {}", value, this); maxLocalStreams = value; break; } @@ -561,7 +561,7 @@ public abstract class HTTP2Session extends ContainerLifeCycle implements ISessio IStream stream = createLocalStream(streamId); stream.setListener(listener); - ControlEntry entry = new ControlEntry(frame, stream, new PromiseCallback<>(promise, stream)); + ControlEntry entry = new ControlEntry(frame, stream, new StreamPromiseCallback(promise, stream)); queued = flusher.append(entry); } // Iterate outside the synchronized block. @@ -605,7 +605,7 @@ public abstract class HTTP2Session extends ContainerLifeCycle implements ISessio IStream pushStream = createLocalStream(streamId); pushStream.setListener(listener); - ControlEntry entry = new ControlEntry(frame, pushStream, new PromiseCallback<>(promise, pushStream)); + ControlEntry entry = new ControlEntry(frame, pushStream, new StreamPromiseCallback(promise, pushStream)); queued = flusher.append(entry); } // Iterate outside the synchronized block. @@ -779,6 +779,7 @@ public abstract class HTTP2Session extends ContainerLifeCycle implements ISessio } else { + localStreamCount.decrementAndGet(); throw new IllegalStateException("Duplicate stream " + streamId); } } @@ -815,6 +816,7 @@ public abstract class HTTP2Session extends ContainerLifeCycle implements ISessio } else { + remoteStreamCount.addAndGetHi(-1); onConnectionFailure(ErrorCode.PROTOCOL_ERROR.code, "duplicate_stream"); return null; } @@ -1461,21 +1463,21 @@ public abstract class HTTP2Session extends ContainerLifeCycle implements ISessio } } - private static class PromiseCallback implements Callback + private static class StreamPromiseCallback implements Callback { - private final Promise promise; - private final C value; + private final Promise promise; + private final IStream stream; - private PromiseCallback(Promise promise, C value) + private StreamPromiseCallback(Promise promise, IStream stream) { this.promise = promise; - this.value = value; + this.stream = stream; } @Override public void succeeded() { - promise.succeeded(value); + promise.succeeded(stream); } @Override diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java index b9609ad4903..265f57aa8a4 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java @@ -139,6 +139,7 @@ public class HTTP2Stream extends IdleTimeout implements IStream, Callback, Dumpa { if (writing.compareAndSet(null, callback)) return true; + close(); callback.failed(new WritePendingException()); return false; } @@ -275,8 +276,6 @@ public class HTTP2Stream extends IdleTimeout implements IStream, Callback, Dumpa private void onHeaders(HeadersFrame frame, Callback callback) { - if (updateClose(frame.isEndStream(), CloseState.Event.RECEIVED)) - session.removeStream(this); MetaData metaData = frame.getMetaData(); if (metaData.isRequest() || metaData.isResponse()) { @@ -286,6 +285,10 @@ public class HTTP2Stream extends IdleTimeout implements IStream, Callback, Dumpa length = fields.getLongField(HttpHeader.CONTENT_LENGTH.asString()); dataLength = length >= 0 ? length : Long.MIN_VALUE; } + + if (updateClose(frame.isEndStream(), CloseState.Event.RECEIVED)) + session.removeStream(this); + callback.succeeded(); } diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/Stream.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/Stream.java index f76afeaf445..9e879cab891 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/Stream.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/Stream.java @@ -163,6 +163,13 @@ public interface Stream */ public void onData(Stream stream, DataFrame frame, Callback callback); + /** + *

Callback method invoked when a RST_STREAM frame has been received for this stream.

+ * + * @param stream the stream + * @param frame the RST_FRAME received + * @param callback the callback to complete when the reset has been handled + */ public default void onReset(Stream stream, ResetFrame frame, Callback callback) { try @@ -214,6 +221,14 @@ public interface Stream return true; } + /** + *

Callback method invoked when the stream failed.

+ * + * @param stream the stream + * @param error the error code + * @param reason the error reason, or null + * @param callback the callback to complete when the failure has been handled + */ public default void onFailure(Stream stream, int error, String reason, Callback callback) { callback.succeeded(); diff --git a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpReceiverOverHTTP2.java b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpReceiverOverHTTP2.java index a0f1817a6bb..94fa9776fa2 100644 --- a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpReceiverOverHTTP2.java +++ b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpReceiverOverHTTP2.java @@ -171,8 +171,10 @@ public class HttpReceiverOverHTTP2 extends HttpReceiver implements Stream.Listen @Override public boolean onIdleTimeout(Stream stream, Throwable x) { - responseFailure(x); - return true; + HttpExchange exchange = getHttpExchange(); + if (exchange == null) + return false; + return !exchange.abort(x); } @Override diff --git a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpSenderOverHTTP2.java b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpSenderOverHTTP2.java index 4950c949d3d..1635d27f912 100644 --- a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpSenderOverHTTP2.java +++ b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpSenderOverHTTP2.java @@ -67,7 +67,9 @@ public class HttpSenderOverHTTP2 extends HttpSender { channel.setStream(stream); ((IStream)stream).setAttachment(channel); - stream.setIdleTimeout(request.getIdleTimeout()); + long idleTimeout = request.getIdleTimeout(); + if (idleTimeout >= 0) + stream.setIdleTimeout(idleTimeout); if (content.hasContent() && !expects100Continue(request)) { diff --git a/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/MaxConcurrentStreamsTest.java b/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/MaxConcurrentStreamsTest.java index fe030fa838f..9e981ee1e80 100644 --- a/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/MaxConcurrentStreamsTest.java +++ b/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/MaxConcurrentStreamsTest.java @@ -18,6 +18,22 @@ package org.eclipse.jetty.http2.client.http; +import java.io.IOException; +import java.net.InetSocketAddress; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.Queue; +import java.util.concurrent.ConcurrentLinkedQueue; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.ForkJoinPool; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicInteger; +import java.util.stream.IntStream; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + import org.eclipse.jetty.client.AbstractConnectionPool; import org.eclipse.jetty.client.HttpClient; import org.eclipse.jetty.client.HttpDestination; @@ -43,21 +59,6 @@ import org.eclipse.jetty.util.ssl.SslContextFactory; import org.eclipse.jetty.util.thread.QueuedThreadPool; import org.junit.jupiter.api.Test; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.net.InetSocketAddress; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Queue; -import java.util.concurrent.ConcurrentLinkedQueue; -import java.util.concurrent.CountDownLatch; -import java.util.concurrent.ForkJoinPool; -import java.util.concurrent.TimeUnit; -import java.util.concurrent.atomic.AtomicInteger; -import java.util.stream.IntStream; - import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; @@ -370,7 +371,7 @@ public class MaxConcurrentStreamsTest extends AbstractTest } @Test - public void testTwoConcurrentStreamsFirstTimesOut() throws Exception + public void testTwoStreamsFirstTimesOut() throws Exception { long timeout = 1000; start(1, new EmptyServerHandler() diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientContinueTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientContinueTest.java index eb34e6a7e43..a6ff741129c 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientContinueTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientContinueTest.java @@ -18,15 +18,6 @@ package org.eclipse.jetty.http.client; -import static org.eclipse.jetty.http.client.Transport.FCGI; -import static org.junit.jupiter.api.Assertions.assertArrayEquals; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertNull; -import static org.junit.jupiter.api.Assertions.assertTrue; -import static org.junit.jupiter.api.Assumptions.assumeTrue; - import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; @@ -65,6 +56,15 @@ import org.junit.jupiter.api.condition.DisabledIfSystemProperty; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.ArgumentsSource; +import static org.eclipse.jetty.http.client.Transport.FCGI; +import static org.junit.jupiter.api.Assertions.assertArrayEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertNull; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.jupiter.api.Assumptions.assumeTrue; + public class HttpClientContinueTest extends AbstractTest { @Override @@ -344,13 +344,14 @@ public class HttpClientContinueTest extends AbstractTest } }); - scenario.client.setIdleTimeout(idleTimeout); + scenario.client.setIdleTimeout(2 * idleTimeout); byte[] content = new byte[1024]; final CountDownLatch latch = new CountDownLatch(1); scenario.client.newRequest(scenario.newURI()) .header(HttpHeader.EXPECT, HttpHeaderValue.CONTINUE.asString()) .content(new BytesContentProvider(content)) + .idleTimeout(idleTimeout, TimeUnit.MILLISECONDS) .send(new BufferingResponseListener() { @Override From 6b6036a21c0f130387cdbccb6d3dddb4fce30712 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 9 Oct 2018 23:21:00 +0200 Subject: [PATCH 079/931] Issue #2771 - h2spec test failures. Fixed Stream.isRemotelyClosed() to imply CLOSING as well. Fixed logging. Signed-off-by: Simone Bordet --- .../main/java/org/eclipse/jetty/http2/HTTP2Session.java | 7 ++++--- .../src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java | 3 ++- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java index 04279864c5d..fe2b90e6526 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java @@ -333,15 +333,16 @@ public abstract class HTTP2Session extends ContainerLifeCycle implements ISessio } case SettingsFrame.ENABLE_PUSH: { + boolean enabled = value == 1; if (LOG.isDebugEnabled()) - LOG.debug("{} push for {}", pushEnabled ? "Enabling" : "Disabling", this); - pushEnabled = value == 1; + LOG.debug("{} push for {}", enabled ? "Enabling" : "Disabling", this); + pushEnabled = enabled; break; } case SettingsFrame.MAX_CONCURRENT_STREAMS: { if (LOG.isDebugEnabled()) - LOG.debug("Updating max local concurrent streams to {} for {}", maxLocalStreams, this); + LOG.debug("Updating max local concurrent streams to {} for {}", value, this); maxLocalStreams = value; break; } diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java index b9609ad4903..e411c571e05 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java @@ -176,7 +176,8 @@ public class HTTP2Stream extends IdleTimeout implements IStream, Callback, Dumpa @Override public boolean isRemotelyClosed() { - return closeState.get() == CloseState.REMOTELY_CLOSED; + CloseState state = closeState.get(); + return state == CloseState.REMOTELY_CLOSED || state == CloseState.CLOSING; } public boolean isLocallyClosed() From 856b46b4b77ea9c523b3bf749b35428d1ff4809b Mon Sep 17 00:00:00 2001 From: Lachlan Roberts Date: Wed, 10 Oct 2018 15:17:07 +1100 Subject: [PATCH 080/931] Issue #2892 - NPE in MultiPartInputStreamParser#getPart Signed-off-by: Lachlan Roberts --- .../org/eclipse/jetty/util/MultiPartInputStreamParser.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartInputStreamParser.java b/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartInputStreamParser.java index 1280e6f29d5..a1847b3540a 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartInputStreamParser.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartInputStreamParser.java @@ -39,8 +39,6 @@ import java.util.Collections; import java.util.EnumSet; import java.util.List; import java.util.Locale; -import java.util.Map; - import javax.servlet.MultipartConfigElement; import javax.servlet.ServletInputStream; import javax.servlet.http.Part; @@ -515,7 +513,7 @@ public class MultiPartInputStreamParser public Part getPart(String name) throws IOException { - if(_parsed) + if(!_parsed) parse(); throwIfError(); return _parts.getValue(name, 0); From e727ad893d2c3415645153807a8763a499090dc3 Mon Sep 17 00:00:00 2001 From: Lachlan Roberts Date: Wed, 10 Oct 2018 16:10:29 +1100 Subject: [PATCH 081/931] Fixes #2702 - ArithmeticException in Credential.stringEquals and .byteEquals Signed-off-by: Lachlan Roberts --- .../jetty/util/security/Credential.java | 4 ++-- .../jetty/util/security/CredentialTest.java | 22 ++++++++++++++++--- 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/security/Credential.java b/jetty-util/src/main/java/org/eclipse/jetty/util/security/Credential.java index 862d3bd7605..2f86d7554e0 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/security/Credential.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/security/Credential.java @@ -105,7 +105,7 @@ public abstract class Credential implements Serializable int l1 = known.length(); int l2 = unknown.length(); for (int i = 0; i < l2; ++i) - result &= known.charAt(i%l1) == unknown.charAt(i); + result &= ((l1==0)?unknown.charAt(l2-i-1):known.charAt(i%l1)) == unknown.charAt(i); return result && l1 == l2; } @@ -127,7 +127,7 @@ public abstract class Credential implements Serializable int l1 = known.length; int l2 = unknown.length; for (int i = 0; i < l2; ++i) - result &= known[i%l1] == unknown[i]; + result &= ((l1==0)?unknown[l2-i-1]:known[i%l1]) == unknown[i]; return result && l1 == l2; } diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/security/CredentialTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/security/CredentialTest.java index a8aac3dbc48..5ea977f104a 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/security/CredentialTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/security/CredentialTest.java @@ -20,13 +20,13 @@ package org.eclipse.jetty.util.security; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertTrue; - import org.eclipse.jetty.util.security.Credential.Crypt; import org.eclipse.jetty.util.security.Credential.MD5; import org.junit.jupiter.api.Test; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; + /** * CredentialTest @@ -94,4 +94,20 @@ public class CredentialTest assertFalse(Credential.byteEquals("foo".getBytes(),"fo".getBytes())); assertFalse(Credential.byteEquals("foo".getBytes(),"bar".getBytes())); } + + @Test + public void testEmptyString() + { + assertFalse(Credential.stringEquals("fooo","")); + assertFalse(Credential.stringEquals("","fooo")); + assertTrue(Credential.stringEquals("","")); + } + + @Test + public void testEmptyBytes() + { + assertFalse(Credential.byteEquals("fooo".getBytes(),"".getBytes())); + assertFalse(Credential.byteEquals("".getBytes(),"fooo".getBytes())); + assertTrue(Credential.byteEquals("".getBytes(),"".getBytes())); + } } From 34511670d108837de50bcb2d82429629ee40cc23 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Wed, 10 Oct 2018 10:27:02 +0200 Subject: [PATCH 082/931] Improved HTTP2Stream.toString(). Signed-off-by: Simone Bordet --- .../src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java index e411c571e05..3cc9d531ce0 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java @@ -628,13 +628,14 @@ public class HTTP2Stream extends IdleTimeout implements IStream, Callback, Dumpa @Override public String toString() { - return String.format("%s@%x#%d{sendWindow=%s,recvWindow=%s,reset=%b,%s,age=%d,attachment=%s}", + return String.format("%s@%x#%d{sendWindow=%s,recvWindow=%s,reset=%b/%b,%s,age=%d,attachment=%s}", getClass().getSimpleName(), hashCode(), getId(), sendWindow, recvWindow, - isReset(), + localReset, + remoteReset, closeState, TimeUnit.NANOSECONDS.toMillis(System.nanoTime() - timeStamp), attachment); From 8b44bed25ad22ab98f8b8103d0ee6e8e418040f2 Mon Sep 17 00:00:00 2001 From: Jan Bartel Date: Thu, 11 Oct 2018 15:37:16 +1100 Subject: [PATCH 083/931] Issue #2975 Quickstart tests broken --- tests/test-quickstart/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test-quickstart/pom.xml b/tests/test-quickstart/pom.xml index 1fd74d1ce22..3e4363415b3 100644 --- a/tests/test-quickstart/pom.xml +++ b/tests/test-quickstart/pom.xml @@ -138,7 +138,7 @@ copy - package + process-test-classes copy From 29c51091c771cadae025fb6708047e7a0cdbbd9e Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Thu, 11 Oct 2018 17:47:52 +1000 Subject: [PATCH 084/931] Jetty 9.4.x simplify jenkinsfile (#2976) * simplify Jenkinsfile Signed-off-by: olivier lamy * we need checkout scm Signed-off-by: olivier lamy * do not run the first install and move javadoc test to last part Signed-off-by: olivier lamy * remove comments Signed-off-by: olivier lamy --- Jenkinsfile | 54 +++++------------------------------------------------ 1 file changed, 5 insertions(+), 49 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index d116857064b..9ad5fa93007 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -22,58 +22,11 @@ def getFullBuild(jdk, os) { def settingsName = 'oss-settings.xml' def mavenOpts = '-Xms1g -Xmx4g -Djava.awt.headless=true' - try { - stage("Checkout - ${jdk}") { - checkout scm - } - } catch (Exception e) { - notifyBuild("Checkout Failure", jdk) - throw e - } - - try { - stage("Compile - ${jdk}") { - timeout(time: 15, unit: 'MINUTES') { - withMaven( - maven: mvnName, - jdk: "$jdk", - publisherStrategy: 'EXPLICIT', - globalMavenSettingsConfig: settingsName, - mavenOpts: mavenOpts, - mavenLocalRepo: localRepo) { - sh "mvn -V -B clean install -DskipTests -T6 -e" - } - } - } - } catch(Exception e) { - notifyBuild("Compile Failure", jdk) - throw e - } - - try { - stage("Javadoc - ${jdk}") { - timeout(time: 20, unit: 'MINUTES') { - withMaven( - maven: mvnName, - jdk: "$jdk", - publisherStrategy: 'EXPLICIT', - globalMavenSettingsConfig: settingsName, - mavenOpts: mavenOpts, - mavenLocalRepo: localRepo) { - sh "mvn -V -B javadoc:javadoc -T6 -e" - } - } - } - } catch(Exception e) { - notifyBuild("Javadoc Failure", jdk) - throw e - } - - try { - stage("Test - ${jdk}") { + stage("Build ${jdk}/${os}") { timeout(time: 90, unit: 'MINUTES') { // Run test phase / ignore test failures + checkout scm withMaven( maven: mvnName, jdk: "$jdk", @@ -83,6 +36,7 @@ def getFullBuild(jdk, os) { mavenOpts: mavenOpts, mavenLocalRepo: localRepo) { sh "mvn -V -B install -Dmaven.test.failure.ignore=true -e -Pmongodb -T3 -Djetty.testtracker.log=true -Dunix.socket.tmp="+env.JENKINS_HOME + sh "mvn -V -B javadoc:javadoc -T6 -e" } // withMaven doesn't label.. // Report failures in the jenkins UI @@ -112,6 +66,8 @@ def getFullBuild(jdk, os) { consoleParsers = [[parserName: 'Maven'], [parserName: 'JavaDoc'], [parserName: 'JavaC']]; + step([$class: 'MavenInvokerRecorder', reportsFilenamePattern: "**/target/invoker-reports/BUILD*.xml", + invokerBuildDir: "**/target/its"]) } // Report on Maven and Javadoc warnings From ec2b5b1810e3b6537c86510e31b6efa58418a66e Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Thu, 11 Oct 2018 15:56:47 +0200 Subject: [PATCH 085/931] Issue #2796 - Max local stream count exceeded when request fails. Bound release of the channel to stream close event. Signed-off-by: Simone Bordet --- .../org/eclipse/jetty/http2/HTTP2Session.java | 2 +- .../org/eclipse/jetty/http2/HTTP2Stream.java | 22 ++++++ .../org/eclipse/jetty/http2/api/Stream.java | 9 +++ .../client/http/HttpChannelOverHTTP2.java | 5 ++ .../client/http/HttpConnectionOverHTTP2.java | 17 ++++- .../client/http/HttpReceiverOverHTTP2.java | 6 ++ .../jetty/http/client/HttpClientLoadTest.java | 67 ++++++++++++++----- 7 files changed, 107 insertions(+), 21 deletions(-) diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java index 83a82d17eb7..0b3fff14705 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java @@ -763,7 +763,7 @@ public abstract class HTTP2Session extends ContainerLifeCycle implements ISessio int localCount = localStreamCount.get(); int maxCount = getMaxLocalStreams(); if (maxCount >= 0 && localCount >= maxCount) - throw new IllegalStateException("Max local stream count " + maxCount + " exceeded"); + throw new IllegalStateException("Max local stream count " + maxCount + " exceeded" + System.lineSeparator() + dump()); if (localStreamCount.compareAndSet(localCount, localCount + 1)) break; } diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java index 265f57aa8a4..4d8e0ae2d4a 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java @@ -510,6 +510,13 @@ public class HTTP2Stream extends IdleTimeout implements IStream, Callback, Dumpa } } + @Override + public void onClose() + { + super.onClose(); + notifyClosed(this); + } + private void updateStreamCount(int deltaStream, int deltaClosing) { ((HTTP2Session)session).updateStreamCount(isLocal(), deltaStream, deltaClosing); @@ -615,6 +622,21 @@ public class HTTP2Stream extends IdleTimeout implements IStream, Callback, Dumpa } } + private void notifyClosed(Stream stream) + { + Listener listener = this.listener; + if (listener == null) + return; + try + { + listener.onClosed(stream); + } + catch (Throwable x) + { + LOG.info("Failure while notifying listener " + listener, x); + } + } + @Override public String dump() { diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/Stream.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/Stream.java index 9e879cab891..6ddbf7b0350 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/Stream.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/Stream.java @@ -234,6 +234,15 @@ public interface Stream callback.succeeded(); } + /** + *

Callback method invoked after the stream has been closed.

+ * + * @param stream the stream + */ + public default void onClosed(Stream stream) + { + } + /** *

Empty implementation of {@link Listener}

*/ diff --git a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpChannelOverHTTP2.java b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpChannelOverHTTP2.java index f9cfa6c2949..4a399926c4c 100644 --- a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpChannelOverHTTP2.java +++ b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpChannelOverHTTP2.java @@ -101,6 +101,11 @@ public class HttpChannelOverHTTP2 extends HttpChannel connection.release(this); } + void onStreamClosed(Stream stream) + { + connection.onStreamClosed(stream, this); + } + @Override public void exchangeTerminated(HttpExchange exchange, Result result) { diff --git a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpConnectionOverHTTP2.java b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpConnectionOverHTTP2.java index 4d4a3cfebe8..e805fe5f938 100644 --- a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpConnectionOverHTTP2.java +++ b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpConnectionOverHTTP2.java @@ -36,11 +36,16 @@ import org.eclipse.jetty.client.SendFailure; import org.eclipse.jetty.http.HttpVersion; import org.eclipse.jetty.http2.ErrorCode; import org.eclipse.jetty.http2.api.Session; +import org.eclipse.jetty.http2.api.Stream; import org.eclipse.jetty.util.Callback; +import org.eclipse.jetty.util.log.Log; +import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.util.thread.Sweeper; public class HttpConnectionOverHTTP2 extends HttpConnection implements Sweeper.Sweepable { + private static final Logger LOG = Log.getLogger(HttpConnection.class); + private final Set activeChannels = ConcurrentHashMap.newKeySet(); private final Queue idleChannels = new ConcurrentLinkedQueue<>(); private final AtomicBoolean closed = new AtomicBoolean(); @@ -87,16 +92,16 @@ public class HttpConnectionOverHTTP2 extends HttpConnection implements Sweeper.S protected void release(HttpChannelOverHTTP2 channel) { + if (LOG.isDebugEnabled()) + LOG.debug("Released {}", channel); // Only non-push channels are released. if (activeChannels.remove(channel)) { - channel.setStream(null); // Recycle only non-failed channels. if (channel.isFailed()) channel.destroy(); else idleChannels.offer(channel); - getHttpDestination().release(this); } else { @@ -104,6 +109,14 @@ public class HttpConnectionOverHTTP2 extends HttpConnection implements Sweeper.S } } + void onStreamClosed(Stream stream, HttpChannelOverHTTP2 channel) + { + if (LOG.isDebugEnabled()) + LOG.debug("{} closed for {}", stream, channel); + channel.setStream(null); + getHttpDestination().release(this); + } + @Override public boolean onIdleTimeout(long idleTimeout) { diff --git a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpReceiverOverHTTP2.java b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpReceiverOverHTTP2.java index 94fa9776fa2..dc4007ea366 100644 --- a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpReceiverOverHTTP2.java +++ b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpReceiverOverHTTP2.java @@ -184,6 +184,12 @@ public class HttpReceiverOverHTTP2 extends HttpReceiver implements Stream.Listen callback.succeeded(); } + @Override + public void onClosed(Stream stream) + { + getHttpChannel().onStreamClosed(stream); + } + private void notifyContent(HttpExchange exchange, DataFrame frame, Callback callback) { contentNotifier.offer(new DataInfo(exchange, frame, callback)); diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientLoadTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientLoadTest.java index 0d2d9fa0013..65b72262eac 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientLoadTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientLoadTest.java @@ -18,10 +18,6 @@ package org.eclipse.jetty.http.client; -import static org.eclipse.jetty.http.client.Transport.UNIX_SOCKET; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.junit.jupiter.api.Assertions.assertTrue; - import java.io.IOException; import java.nio.ByteBuffer; import java.util.ArrayList; @@ -30,11 +26,11 @@ import java.util.Locale; import java.util.concurrent.CountDownLatch; import java.util.concurrent.ThreadLocalRandom; import java.util.concurrent.TimeUnit; +import java.util.concurrent.TimeoutException; import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicLong; import java.util.stream.IntStream; -import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -68,6 +64,9 @@ import org.hamcrest.Matchers; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.ArgumentsSource; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.junit.jupiter.api.Assertions.assertTrue; + public class HttpClientLoadTest extends AbstractTest { private final Logger logger = Log.getLogger(HttpClientLoadTest.class); @@ -186,7 +185,7 @@ public class HttpClientLoadTest extends AbstractTest failures) + private void test(String scheme, String host, String method, boolean clientClose, boolean serverClose, long clientTimeout, int contentLength, final boolean checkContentLength, final CountDownLatch latch, final List failures) { long requestId = requestCount.incrementAndGet(); Request request = scenario.client.newRequest(host, scenario.getNetworkConnectorLocalPortInt().orElse(0)) @@ -215,6 +218,12 @@ public class HttpClientLoadTest extends AbstractTest 0) + { + request.header("X-Timeout", String.valueOf(clientTimeout)); + request.idleTimeout(clientTimeout, TimeUnit.MILLISECONDS); + } + switch (method) { case "GET": @@ -254,12 +263,18 @@ public class HttpClientLoadTest extends AbstractTest 0 && failure instanceof TimeoutException)) + { + failure.printStackTrace(); + failures.add("Result failed " + result); + } + } + else + { + if (checkContentLength && contentLength.get() != 0) + failures.add("Content length mismatch " + contentLength); } - - if (checkContentLength && contentLength.get() != 0) - failures.add("Content length mismatch " + contentLength); requestLatch.countDown(); latch.countDown(); @@ -288,8 +303,14 @@ public class HttpClientLoadTest extends AbstractTest Date: Thu, 11 Oct 2018 14:08:24 -0400 Subject: [PATCH 086/931] Updating/augmenting JPMS documentation included in PR #2934 --- .../startup/custom-modules.adoc | 2 + .../administration/startup/startup-jpms.adoc | 96 +++++++------------ 2 files changed, 34 insertions(+), 64 deletions(-) diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/custom-modules.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/custom-modules.adoc index e070669d1be..dff59d79315 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/custom-modules.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/custom-modules.adoc @@ -79,6 +79,8 @@ If a user does not accept the license agreement, the module will not be activate Additional Startup Commands - `[exec]`:: The `[exec]` section is used to define additional parameters specific to the module. These commands are added to the server startup. +JPMS Module-Path Definitions - `[jpms]`:: +The `[jpms]` section is used to add link:#startup-jpms[JPMS modules] to the module-path for startup when using the `--jpms` command. [[custom-module-properties]] ==== Module Properties diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/startup-jpms.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/startup-jpms.adoc index b6fdb7b9671..075b75d9c96 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/startup-jpms.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/startup-jpms.adoc @@ -16,29 +16,24 @@ // ======================================================================== // -[[startup-overview]] +[[startup-jpms]] === Startup using the Java Platform Module System (JPMS) -Jetty modules are also automatic https://en.wikipedia.org/wiki/Java_Platform_Module_System[JPMS] -modules via the `Automatic-Module-Name` attribute in the jar's `MANIFEST.MF` file. +Jetty modules also act ass automatic https://en.wikipedia.org/wiki/Java_Platform_Module_System[JPMS] modules via the `Automatic-Module-Name` attribute in the jar's `MANIFEST.MF` file. This makes possible to run Jetty from the module-path, rather than the class-path. -We recommend to use JDK 11 or greater due to the fact that JDK 11 removed all the -"enterprise" modules from the JDK. -The classes in these "enterprise" modules were bundled with JDK 8, and present in -"enterprise" modules in JDK 9 and JDK 10. -With JDK 11, these "enterprise" classes are either not available in the JDK (because -their corresponding module was removed), or they are present in a different module. +We recommend using JDK 11 or greater due to the fact that JDK 11 removed all the "enterprise" modules from the JDK. +The classes in these "enterprise" modules were bundled with JDK 8, and present in "enterprise" modules in JDK 9 and JDK 10. +With JDK 11, these "enterprise" classes are either not available in the JDK (because their corresponding module was removed), or they are present in a different module. -Some of these "enterprise" classes are required by Jetty or by applications running -in Jetty, so it is better to use a stable source for those classes by using JDK 11 +Because some of these "enterprise" classes are required by Jetty or by applications running in Jetty, it is better to use a stable source for those classes - in this case by using JDK 11 or greater. +[[jpms-module-path]] ==== Starting Jetty on the module-path -To start Jetty on the module-path, rather than the class-path, it is enough to add -the `--jpms` option to the command line, for example: +To start Jetty on the module-path rather than the class-path, it is enough to add the `--jpms` option to the command line, for example: [source, screen, subs="{sub-order}"] .... @@ -52,28 +47,24 @@ INFO : Base directory was modified $ java -jar $JETTY_HOME/start.jar --jpms .... -The example above creates a link:#startup-base-and-home[Jetty base directory] and -enables the `http` module using `--add-to-start`. -Then starts Jetty on the module-path using the `--jpms` option. +The example above creates a link:#startup-base-and-home[Jetty base directory] and enables the `http` module using the `--add-to-start` command. +The server then starts Jetty on the module-path using the `--jpms` option. ---- [NOTE] -When running on the module-path using the `--jpms` option, the Jetty start mechanism -will fork a second JVM passing it the right JVM options to run on the module-path. +When running on the module-path using the `--jpms` option, the Jetty start mechanism will fork a second JVM passing it the right JVM options to run on the module-path. -You will have two JVMs running: one that runs `start.jar` and one that runs Jetty on -the module-path. +You will have two JVMs running: one that runs `start.jar` and one that runs Jetty on the module-path. ---- -If you are interested in the details of how the command line to run Jetty on the -module-path looks like, you can add the `--dry-run` option: +If you are interested in the details of how the command line to run Jetty on the module-path looks like, you can add the `--dry-run` option: [source, screen, subs="{sub-order}"] .... $ java -jar $JETTY_HOME/start.jar --jpms --dry-run .... -You will see something like this (broken in sections for clarity): +This will give an out put looking something like this (broken in sections for clarity): [source, screen, subs="{sub-order}"] .... @@ -83,37 +74,25 @@ You will see something like this (broken in sections for clarity): --module org.eclipse.jetty.xml/org.eclipse.jetty.xml.XmlConfiguration /opt/jetty/etc/jetty-threadpool.xml /opt/jetty/etc/jetty.xml ... .... -The `--module-path` option specifies the list of Jetty jars. This list depends -on the Jetty modules that have been enabled via `--add-to-start`. +The `--module-path` option specifies the list of Jetty jars. +This list depends on the Jetty modules that have been enabled via the link:#startup-modules[`--add-to-start`] command. -The `--patch-module` option is necessary for Servlet and JSP Containers to find XML DTDs -and XML Schemas required to validate the various XML files present in web applications -(such as `web.xml` and others). +The `--patch-module` option is necessary for Servlet and JSP Containers to find XML DTDs and XML Schemas required to validate the various XML files present in web applications (such as `web.xml` and others). -The `--module` option tells the JVM to run main class `XmlConfiguration` from the -`org.eclipse.jetty.xml` module, with the given XML files as program arguments. +The `--module` option tells the JVM to run main class `XmlConfiguration` from the `org.eclipse.jetty.xml` module, with the given XML files as program arguments. -When the JVM starts, module `org.eclipse.jetty.xml` is added to the set of JPMS -_root modules_; all other Jetty modules, being automatic, will be resolved and added -to the module graph; jars that are not modules such as `servlet-api-3.1.jar` are on -the module-path and therefore will be made automatic modules by the JVM (hence the -derived module name `servlet.api` for this jar, referenced by the `--patch-module` -command line option above). +When the JVM starts, module `org.eclipse.jetty.xml` is added to the set of JPMS _root modules_; all other Jetty modules, being automatic, will be resolved and added to the module graph. +JAR files that are not modules, such as `servlet-api-3.1.jar`, are on the module-path and therefore will be made automatic modules by the JVM (hence the derived module name `servlet.api` for this jar, referenced by the `--patch-module` command line option above). +[[jpms-advanced-config]] ==== Advanced JPMS Configuration -Web applications may need additional services from the Servlet Container, such as -JDBC `DataSource` references or JTA `UserTransaction` references. +Web applications may need additional services from the Servlet Container, such as JDBC `DataSource` references or JTA `UserTransaction` references. -For example, for JDBC it is typical to store in JNDI a reference to the connection -pool's `DataSource` (for example `com.zaxxer.hikari.HikariDataSource`) or a -reference directly to the JDBC driver's `DataSource` (for example -`com.mysql.jdbc.jdbc2.optional.MysqlDataSource`). -Jetty needs to be able to instantiate those classes and therefore needs to be able -to load those classes and all their super-classes, among which `javax.sql.DataSource`. +For example, for JDBC it is typical to store, in JNDI, a reference to the connection pool's `DataSource` (such as `com.zaxxer.hikari.HikariDataSource`) or a reference directly to the JDBC driver's `DataSource` (`com.mysql.jdbc.jdbc2.optional.MysqlDataSource`). +Jetty needs to be able to instantiate those classes and therefore needs to be able to load those classes and all their super-classes, among which includes `javax.sql.DataSource`. -When Jetty runs on the class-path, this is easily achieved by using a -link:#custom-modules[custom module]: +When Jetty runs on the class-path, this is easily achieved by using a link:#custom-modules[custom module]: [source, screen, subs="{sub-order}"] .mysql.mod @@ -127,13 +106,10 @@ lib/mysql/mysql-connector-java-*.jar However, when running on the module-path, things are quite different. -Class `javax.sql.DataSource` is in a JDK bundled module named `java.sql`, which is -not automatic (it's a proper JPMS module) and it is not in the _root modules_ set; -because it is not an automatic module, it is not added to the module graph, and -therefore needs to be added explicitly using the JVM command line `--add-modules`. +Class `javax.sql.DataSource` is in a JDK bundled module named `java.sql`, which is not automatic (it's a proper JPMS module) and it is not in the _root modules_ set. +Because it is not an automatic module, it is not added to the module graph, and therefore needs to be added explicitly using the JVM command line `--add-modules`. -To add the JPMS module `java.sql` to the module graph, you need to modify -`mysql.mod` in the following way: +To add the JPMS module `java.sql` to the module graph, you need to modify your custom module in the following way, using our `mysql.mod` as an example: [source, screen, subs="{sub-order}"] .mysql.mod @@ -148,17 +124,11 @@ lib/mysql/mysql-connector-java-*.jar add-modules: java.sql .... -The new `[jpms]` section is only used when Jetty is started on the module-path -via the `--jpms` command line option. +The new `[jpms]` section is only used when Jetty is started on the module-path via the `--jpms` command line option. -Assuming that `mysql-connector-java-*.jar` is a non JPMS modular jar, or an -automatic JPMS modular jar, the Jetty start mechanism will add -`mysql-connector-java-*.jar` to the module-path, and will add the JVM command -line option `--add-modules java.sql`. +Assuming that `mysql-connector-java-*.jar` is a non JPMS modular jar, or an automatic JPMS modular jar, the Jetty start mechanism will add `mysql-connector-java-*.jar` to the module-path, and will add the JVM command line option `--add-modules java.sql`. -If `mysql-connector-java-*.jar` were a proper JPMS modular jar with name -(for example) `com.mysql.jdbc`, then it would need to be explicitly added to -the module graph, in this way: +If `mysql-connector-java-*.jar` were a proper JPMS modular jar with name (for example) `com.mysql.jdbc`, then it would need to be explicitly added to the module graph, in this way: [source, screen, subs="{sub-order}"] .mysql.mod @@ -173,9 +143,7 @@ lib/mysql/mysql-connector-java-*.jar add-modules: com.mysql.jdbc .... -Now we don't need to add JPMS module `java.sql` explicitly because it would be -a dependency of the `com.mysql.jdbc` module and therefore automatically added -to the module graph. +The JPMS module `java.sql` does not need to be explicitly added because it would be a dependency of the `com.mysql.jdbc` module and therefore automatically added to the module graph. The `[jpms]` section has the following format: From 64e561dcb13692024ba3b2bee56427b412cc4b9b Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Sun, 14 Oct 2018 10:50:02 +1000 Subject: [PATCH 087/931] upgrade surefire plugin 2.22.1 (#2980) Signed-off-by: olivier lamy --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 18f65cb915c..62be04d2d80 100644 --- a/pom.xml +++ b/pom.xml @@ -42,7 +42,7 @@ ${bundle-symbolic-name} - 2.22.0 + 2.22.1 3.8.0 3.1.1 3.1.0 From 5c8d3f041bee47ed133b68389446e74e46854607 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Tue, 16 Oct 2018 14:28:51 +1100 Subject: [PATCH 088/931] Cleanup to avoid duplication method (noticed while reviewing #2977) --- .../jetty/http2/hpack/MetaDataBuilder.java | 53 ++++++++----------- 1 file changed, 22 insertions(+), 31 deletions(-) diff --git a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/MetaDataBuilder.java b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/MetaDataBuilder.java index d891ab3dfe5..636d464686e 100644 --- a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/MetaDataBuilder.java +++ b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/MetaDataBuilder.java @@ -33,7 +33,7 @@ public class MetaDataBuilder { private final int _maxSize; private int _size; - private int _status=-1; + private Integer _status; private String _method; private HttpScheme _scheme; private HostPortHttpField _authority; @@ -47,7 +47,7 @@ public class MetaDataBuilder /** * @param maxHeadersSize The maximum size of the headers, expressed as total name and value characters. */ - MetaDataBuilder(int maxHeadersSize) + protected MetaDataBuilder(int maxHeadersSize) { _maxSize=maxHeadersSize; } @@ -84,7 +84,7 @@ public class MetaDataBuilder switch(header) { case C_STATUS: - if(checkHeader(header, _status)) + if(checkPseudoHeader(header, _status)) _status = (Integer)staticField.getStaticValue(); _response = true; break; @@ -110,8 +110,8 @@ public class MetaDataBuilder switch(header) { case C_STATUS: - if(checkHeader(header, _status)) - _status = field.getIntValue(); + if(checkPseudoHeader(header, _status)) + _status = Integer.valueOf(field.getIntValue()); _response = true; break; @@ -197,7 +197,7 @@ public class MetaDataBuilder } } - void streamException(String messageFormat, Object... args) + protected void streamException(String messageFormat, Object... args) { HpackException.StreamException stream = new HpackException.StreamException(messageFormat, args); if (_streamException==null) @@ -206,20 +206,7 @@ public class MetaDataBuilder _streamException.addSuppressed(stream); } - private boolean checkHeader(HttpHeader header, int value) - { - if (_fields.size()>0) - { - streamException("Pseudo header %s after fields", header.asString()); - return false; - } - if (value==-1) - return true; - streamException("Duplicate pseudo header %s", header.asString()); - return false; - } - - private boolean checkPseudoHeader(HttpHeader header, Object value) + protected boolean checkPseudoHeader(HttpHeader header, Object value) { if (_fields.size()>0) { @@ -258,22 +245,26 @@ public class MetaDataBuilder return new MetaData.Request(_method,_scheme,_authority,_path,HttpVersion.HTTP_2,fields,_contentLength); } if (_response) - return new MetaData.Response(HttpVersion.HTTP_2,_status,fields,_contentLength); + { + if (_status==null) + throw new HpackException.StreamException("No Status"); + return new MetaData.Response(HttpVersion.HTTP_2, _status, fields, _contentLength); + } return new MetaData(HttpVersion.HTTP_2,fields,_contentLength); } finally { - _fields = new HttpFields(Math.max(10,fields.size()+5)); - _request=false; - _response=false; - _status=-1; - _method=null; - _scheme=null; - _authority=null; - _path=null; - _size=0; - _contentLength=Long.MIN_VALUE; + _fields = new HttpFields(Math.max(10, fields.size() + 5)); + _request = false; + _response = false; + _status = null; + _method = null; + _scheme = null; + _authority = null; + _path = null; + _size = 0; + _contentLength = Long.MIN_VALUE; } } From 211f3d928b95e4c7748cd7eaf5a962399eab715d Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Wed, 17 Oct 2018 11:45:42 +1000 Subject: [PATCH 089/931] upgrade jackson-databind in maven it to 2.9.7 (#2993) Signed-off-by: olivier lamy --- jetty-maven-plugin/src/it/it-parent-pom/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jetty-maven-plugin/src/it/it-parent-pom/pom.xml b/jetty-maven-plugin/src/it/it-parent-pom/pom.xml index a58f3a3bc4c..2ad7f139b01 100644 --- a/jetty-maven-plugin/src/it/it-parent-pom/pom.xml +++ b/jetty-maven-plugin/src/it/it-parent-pom/pom.xml @@ -39,7 +39,7 @@ com.fasterxml.jackson.core jackson-databind - 2.8.1 + 2.9.7 org.slf4j From add74bf8898efc2bba7c05ebd9f443ff9d60e79c Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Wed, 17 Oct 2018 11:56:39 +0200 Subject: [PATCH 090/931] Updated ALPN version for JDK 8u191 and 8u192. Signed-off-by: Simone Bordet --- .../modules/protonego-impl/alpn-1.8.0_191.mod | 8 +++++++ .../modules/protonego-impl/alpn-1.8.0_192.mod | 8 +++++++ .../modules/protonego-impl/alpn-1.8.0_191.mod | 8 +++++++ .../modules/protonego-impl/alpn-1.8.0_192.mod | 8 +++++++ pom.xml | 24 +++++++++++++++++++ 5 files changed, 56 insertions(+) create mode 100644 jetty-alpn/jetty-alpn-server/src/main/config/modules/protonego-impl/alpn-1.8.0_191.mod create mode 100644 jetty-alpn/jetty-alpn-server/src/main/config/modules/protonego-impl/alpn-1.8.0_192.mod create mode 100644 jetty-start/src/test/resources/dist-home/modules/protonego-impl/alpn-1.8.0_191.mod create mode 100644 jetty-start/src/test/resources/dist-home/modules/protonego-impl/alpn-1.8.0_192.mod diff --git a/jetty-alpn/jetty-alpn-server/src/main/config/modules/protonego-impl/alpn-1.8.0_191.mod b/jetty-alpn/jetty-alpn-server/src/main/config/modules/protonego-impl/alpn-1.8.0_191.mod new file mode 100644 index 00000000000..d49c0780441 --- /dev/null +++ b/jetty-alpn/jetty-alpn-server/src/main/config/modules/protonego-impl/alpn-1.8.0_191.mod @@ -0,0 +1,8 @@ +[name] +protonego-boot + +[files] +http://central.maven.org/maven2/org/mortbay/jetty/alpn/alpn-boot/8.1.13.v20181017/alpn-boot-8.1.13.v20181017.jar|lib/alpn/alpn-boot-8.1.13.v20181017.jar + +[exec] +-Xbootclasspath/p:lib/alpn/alpn-boot-8.1.13.v20181017.jar diff --git a/jetty-alpn/jetty-alpn-server/src/main/config/modules/protonego-impl/alpn-1.8.0_192.mod b/jetty-alpn/jetty-alpn-server/src/main/config/modules/protonego-impl/alpn-1.8.0_192.mod new file mode 100644 index 00000000000..d49c0780441 --- /dev/null +++ b/jetty-alpn/jetty-alpn-server/src/main/config/modules/protonego-impl/alpn-1.8.0_192.mod @@ -0,0 +1,8 @@ +[name] +protonego-boot + +[files] +http://central.maven.org/maven2/org/mortbay/jetty/alpn/alpn-boot/8.1.13.v20181017/alpn-boot-8.1.13.v20181017.jar|lib/alpn/alpn-boot-8.1.13.v20181017.jar + +[exec] +-Xbootclasspath/p:lib/alpn/alpn-boot-8.1.13.v20181017.jar diff --git a/jetty-start/src/test/resources/dist-home/modules/protonego-impl/alpn-1.8.0_191.mod b/jetty-start/src/test/resources/dist-home/modules/protonego-impl/alpn-1.8.0_191.mod new file mode 100644 index 00000000000..d49c0780441 --- /dev/null +++ b/jetty-start/src/test/resources/dist-home/modules/protonego-impl/alpn-1.8.0_191.mod @@ -0,0 +1,8 @@ +[name] +protonego-boot + +[files] +http://central.maven.org/maven2/org/mortbay/jetty/alpn/alpn-boot/8.1.13.v20181017/alpn-boot-8.1.13.v20181017.jar|lib/alpn/alpn-boot-8.1.13.v20181017.jar + +[exec] +-Xbootclasspath/p:lib/alpn/alpn-boot-8.1.13.v20181017.jar diff --git a/jetty-start/src/test/resources/dist-home/modules/protonego-impl/alpn-1.8.0_192.mod b/jetty-start/src/test/resources/dist-home/modules/protonego-impl/alpn-1.8.0_192.mod new file mode 100644 index 00000000000..d49c0780441 --- /dev/null +++ b/jetty-start/src/test/resources/dist-home/modules/protonego-impl/alpn-1.8.0_192.mod @@ -0,0 +1,8 @@ +[name] +protonego-boot + +[files] +http://central.maven.org/maven2/org/mortbay/jetty/alpn/alpn-boot/8.1.13.v20181017/alpn-boot-8.1.13.v20181017.jar|lib/alpn/alpn-boot-8.1.13.v20181017.jar + +[exec] +-Xbootclasspath/p:lib/alpn/alpn-boot-8.1.13.v20181017.jar diff --git a/pom.xml b/pom.xml index c98ee1d6811..89c6c980d6e 100644 --- a/pom.xml +++ b/pom.xml @@ -1516,6 +1516,30 @@ 8.1.12.v20180117 + + 8u191 + + + java.version + 1.8.0_191 + + + + 8.1.13.v20181017 + + + + 8u192 + + + java.version + 1.8.0_192 + + + + 8.1.13.v20181017 + + From 3490add2a96e683c96693fa3c91c3c31c3ca66d1 Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Thu, 18 Oct 2018 16:58:25 +1000 Subject: [PATCH 091/931] remove not anymore used javadoc tages Signed-off-by: olivier lamy --- pom.xml | 57 --------------------------------------------------------- 1 file changed, 57 deletions(-) diff --git a/pom.xml b/pom.xml index 79c2a6ac8ef..6cd93d66531 100644 --- a/pom.xml +++ b/pom.xml @@ -514,63 +514,6 @@ http://docs.oracle.com/javase/8/docs/api/ http://docs.oracle.com/javaee/7/api/ - - - org.apache.xbean.XBean - X - - - - phase - t - Phase: - - - goal - t - Goal: - - - description - a - Description: - - - parameter - f - Parameter: - - - required - f - Required: - - - readonly - f - Read-Only: - - - execute - X - - - - requiresDependencyResolution - X - - - - requiresProject - X - - - - threadSafe - X - - - From 907e7afc76b2652e581c5ad2279beb18db4e3248 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Thu, 18 Oct 2018 16:55:33 +0200 Subject: [PATCH 092/931] Issue #2796 - Max local stream count exceeded when request fails. Updates after review. Signed-off-by: Simone Bordet --- .../main/java/org/eclipse/jetty/http2/HTTP2Session.java | 1 + .../jetty/http2/client/http/HttpChannelOverHTTP2.java | 3 ++- .../jetty/http2/client/http/HttpConnectionOverHTTP2.java | 9 +++++---- .../jetty/http2/client/http/HttpReceiverOverHTTP2.java | 3 ++- 4 files changed, 10 insertions(+), 6 deletions(-) diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java index 0b3fff14705..cbd379b3cc6 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java @@ -763,6 +763,7 @@ public abstract class HTTP2Session extends ContainerLifeCycle implements ISessio int localCount = localStreamCount.get(); int maxCount = getMaxLocalStreams(); if (maxCount >= 0 && localCount >= maxCount) + // TODO: remove the dump() in the exception message. throw new IllegalStateException("Max local stream count " + maxCount + " exceeded" + System.lineSeparator() + dump()); if (localStreamCount.compareAndSet(localCount, localCount + 1)) break; diff --git a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpChannelOverHTTP2.java b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpChannelOverHTTP2.java index 4a399926c4c..27c6022b642 100644 --- a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpChannelOverHTTP2.java +++ b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpChannelOverHTTP2.java @@ -25,6 +25,7 @@ import org.eclipse.jetty.client.HttpReceiver; import org.eclipse.jetty.client.HttpSender; import org.eclipse.jetty.client.api.Result; import org.eclipse.jetty.http2.ErrorCode; +import org.eclipse.jetty.http2.IStream; import org.eclipse.jetty.http2.api.Session; import org.eclipse.jetty.http2.api.Stream; import org.eclipse.jetty.http2.frames.ResetFrame; @@ -101,7 +102,7 @@ public class HttpChannelOverHTTP2 extends HttpChannel connection.release(this); } - void onStreamClosed(Stream stream) + void onStreamClosed(IStream stream) { connection.onStreamClosed(stream, this); } diff --git a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpConnectionOverHTTP2.java b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpConnectionOverHTTP2.java index e805fe5f938..7863d3381ca 100644 --- a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpConnectionOverHTTP2.java +++ b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpConnectionOverHTTP2.java @@ -35,8 +35,8 @@ import org.eclipse.jetty.client.HttpRequest; import org.eclipse.jetty.client.SendFailure; import org.eclipse.jetty.http.HttpVersion; import org.eclipse.jetty.http2.ErrorCode; +import org.eclipse.jetty.http2.IStream; import org.eclipse.jetty.http2.api.Session; -import org.eclipse.jetty.http2.api.Stream; import org.eclipse.jetty.util.Callback; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -94,7 +94,6 @@ public class HttpConnectionOverHTTP2 extends HttpConnection implements Sweeper.S { if (LOG.isDebugEnabled()) LOG.debug("Released {}", channel); - // Only non-push channels are released. if (activeChannels.remove(channel)) { // Recycle only non-failed channels. @@ -109,12 +108,14 @@ public class HttpConnectionOverHTTP2 extends HttpConnection implements Sweeper.S } } - void onStreamClosed(Stream stream, HttpChannelOverHTTP2 channel) + void onStreamClosed(IStream stream, HttpChannelOverHTTP2 channel) { if (LOG.isDebugEnabled()) LOG.debug("{} closed for {}", stream, channel); channel.setStream(null); - getHttpDestination().release(this); + // Only non-push channels are released. + if (stream.isLocal()) + getHttpDestination().release(this); } @Override diff --git a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpReceiverOverHTTP2.java b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpReceiverOverHTTP2.java index dc4007ea366..5f1a6751239 100644 --- a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpReceiverOverHTTP2.java +++ b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpReceiverOverHTTP2.java @@ -38,6 +38,7 @@ import org.eclipse.jetty.http.HttpFields; import org.eclipse.jetty.http.HttpStatus; import org.eclipse.jetty.http.MetaData; import org.eclipse.jetty.http2.ErrorCode; +import org.eclipse.jetty.http2.IStream; import org.eclipse.jetty.http2.api.Stream; import org.eclipse.jetty.http2.frames.DataFrame; import org.eclipse.jetty.http2.frames.HeadersFrame; @@ -187,7 +188,7 @@ public class HttpReceiverOverHTTP2 extends HttpReceiver implements Stream.Listen @Override public void onClosed(Stream stream) { - getHttpChannel().onStreamClosed(stream); + getHttpChannel().onStreamClosed((IStream)stream); } private void notifyContent(HttpExchange exchange, DataFrame frame, Callback callback) From 37a85152eb1a6a1aabbee226a660b07c700576aa Mon Sep 17 00:00:00 2001 From: Magnus Reftel Date: Sat, 13 Oct 2018 08:39:15 +0200 Subject: [PATCH 093/931] Improve error message when binding to in-use port Signed-off-by: Magnus Reftel --- .../eclipse/jetty/server/ServerConnector.java | 7 +++- .../jetty/server/ServerConnectorTest.java | 34 +++++++++++++++---- 2 files changed, 34 insertions(+), 7 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnector.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnector.java index 3210ed8deb9..f8e9ee1d69c 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnector.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnector.java @@ -20,6 +20,7 @@ package org.eclipse.jetty.server; import java.io.Closeable; import java.io.IOException; +import java.net.BindException; import java.net.InetSocketAddress; import java.net.ServerSocket; import java.net.Socket; @@ -336,7 +337,11 @@ public class ServerConnector extends AbstractNetworkConnector InetSocketAddress bindAddress = getHost() == null ? new InetSocketAddress(getPort()) : new InetSocketAddress(getHost(), getPort()); serverChannel.socket().setReuseAddress(getReuseAddress()); - serverChannel.socket().bind(bindAddress, getAcceptQueueSize()); + try { + serverChannel.socket().bind(bindAddress, getAcceptQueueSize()); + } catch (BindException e) { + throw new IOException("Failed to bind to " + bindAddress, e); + } } return serverChannel; diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTest.java index 3ae014fb538..19cd1de2ef8 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTest.java @@ -33,8 +33,10 @@ import java.io.IOException; import java.io.InputStream; import java.io.PrintWriter; import java.lang.reflect.Field; +import java.net.BindException; import java.net.HttpURLConnection; import java.net.InetSocketAddress; +import java.net.ServerSocket; import java.net.Socket; import java.net.URI; import java.net.URISyntaxException; @@ -55,6 +57,7 @@ import org.eclipse.jetty.server.handler.HandlerList; import org.eclipse.jetty.util.IO; import org.eclipse.jetty.util.log.StacklessLogging; import org.hamcrest.Matchers; +import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; public class ServerConnectorTest @@ -296,11 +299,30 @@ public class ServerConnectorTest server.stop(); assertThat(connector.getTransport(),Matchers.nullValue()); - - - - - - + } + + @Test + public void testBindToAddressWhichIsInUse() throws Exception { + try (ServerSocket socket = new ServerSocket(0)) { + final int port = socket.getLocalPort(); + + Server server = new Server(); + ServerConnector connector = new ServerConnector(server); + connector.setPort(port); + server.addConnector(connector); + + HandlerList handlers = new HandlerList(); + handlers.addHandler(new DefaultHandler()); + + server.setHandler(handlers); + + try { + server.start(); + Assertions.fail("No exception thrown"); + } catch (IOException e) { + assertThat(e.getCause(), Matchers.instanceOf(BindException.class)); + assertThat(e.getMessage(), Matchers.containsString("0.0.0.0:" + port)); + } + } } } From a10c84c40a8d89e69a2576d148d6cb93014ece99 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Fri, 19 Oct 2018 10:20:10 -0500 Subject: [PATCH 094/931] Issue #3001 - making test more resilient to environments without UTF-8 filesystem support --- .../util/resource/FileSystemResourceTest.java | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/FileSystemResourceTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/FileSystemResourceTest.java index e764594f39b..abff1f5fe1b 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/FileSystemResourceTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/FileSystemResourceTest.java @@ -1457,9 +1457,22 @@ public class FileSystemResourceTest public void testUtf8Dir(Class resourceClass) throws Exception { Path dir = workDir.getEmptyPathDir(); - Path utf8Dir = dir.resolve("bãm"); - Files.createDirectories(utf8Dir); - + Path utf8Dir; + + try + { + utf8Dir = dir.resolve("bãm"); + Files.createDirectories(utf8Dir); + } + catch (InvalidPathException e) + { + // if unable to create file, no point testing the rest. + // this is the path that occurs if you have a system that doesn't support UTF-8 + // directory names (or you simply don't have a Locale set properly) + assumeTrue(true, "Not supported on this OS"); + return; + } + Path file = utf8Dir.resolve("file.txt"); Files.createFile(file); From 35ea653f73dfb2ed260451d237dcd92264a35b17 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Fri, 19 Oct 2018 10:36:26 -0500 Subject: [PATCH 095/931] Fixing PR #3003 - formatting and junit5 syntax Signed-off-by: Joakim Erdfelt --- .../eclipse/jetty/server/ServerConnector.java | 7 +++++-- .../jetty/server/ServerConnectorTest.java | 20 ++++++++----------- 2 files changed, 13 insertions(+), 14 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnector.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnector.java index f8e9ee1d69c..d18b3a08e1a 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnector.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnector.java @@ -337,9 +337,12 @@ public class ServerConnector extends AbstractNetworkConnector InetSocketAddress bindAddress = getHost() == null ? new InetSocketAddress(getPort()) : new InetSocketAddress(getHost(), getPort()); serverChannel.socket().setReuseAddress(getReuseAddress()); - try { + try + { serverChannel.socket().bind(bindAddress, getAcceptQueueSize()); - } catch (BindException e) { + } + catch (BindException e) + { throw new IOException("Failed to bind to " + bindAddress, e); } } diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTest.java index 19cd1de2ef8..46621475643 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTest.java @@ -18,6 +18,7 @@ package org.eclipse.jetty.server; +import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.anyOf; import static org.hamcrest.Matchers.containsString; import static org.hamcrest.Matchers.greaterThan; @@ -26,14 +27,13 @@ import static org.hamcrest.Matchers.is; import static org.hamcrest.Matchers.notNullValue; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertSame; -import static org.hamcrest.MatcherAssert.assertThat; +import static org.junit.jupiter.api.Assertions.assertThrows; import static org.junit.jupiter.api.Assertions.assertTrue; import java.io.IOException; import java.io.InputStream; import java.io.PrintWriter; import java.lang.reflect.Field; -import java.net.BindException; import java.net.HttpURLConnection; import java.net.InetSocketAddress; import java.net.ServerSocket; @@ -57,7 +57,6 @@ import org.eclipse.jetty.server.handler.HandlerList; import org.eclipse.jetty.util.IO; import org.eclipse.jetty.util.log.StacklessLogging; import org.hamcrest.Matchers; -import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; public class ServerConnectorTest @@ -302,8 +301,10 @@ public class ServerConnectorTest } @Test - public void testBindToAddressWhichIsInUse() throws Exception { - try (ServerSocket socket = new ServerSocket(0)) { + public void testBindToAddressWhichIsInUse() throws Exception + { + try (ServerSocket socket = new ServerSocket(0)) + { final int port = socket.getLocalPort(); Server server = new Server(); @@ -316,13 +317,8 @@ public class ServerConnectorTest server.setHandler(handlers); - try { - server.start(); - Assertions.fail("No exception thrown"); - } catch (IOException e) { - assertThat(e.getCause(), Matchers.instanceOf(BindException.class)); - assertThat(e.getMessage(), Matchers.containsString("0.0.0.0:" + port)); - } + IOException x = assertThrows(IOException.class, () -> server.start()); + assertThat(x.getMessage(), containsString("0.0.0.0:" + port)); } } } From 9e84c1ee930c953265df643c3fd6b22eb8bf50b8 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Fri, 19 Oct 2018 10:38:09 -0500 Subject: [PATCH 096/931] Testing for BindException cause as well Signed-off-by: Joakim Erdfelt --- .../test/java/org/eclipse/jetty/server/ServerConnectorTest.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTest.java index 46621475643..6642057d8ab 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTest.java @@ -34,6 +34,7 @@ import java.io.IOException; import java.io.InputStream; import java.io.PrintWriter; import java.lang.reflect.Field; +import java.net.BindException; import java.net.HttpURLConnection; import java.net.InetSocketAddress; import java.net.ServerSocket; @@ -318,6 +319,7 @@ public class ServerConnectorTest server.setHandler(handlers); IOException x = assertThrows(IOException.class, () -> server.start()); + assertThat(x.getCause(), instanceOf(BindException.class)); assertThat(x.getMessage(), containsString("0.0.0.0:" + port)); } } From efdf3c2473eb191d19169bd30742e22ece6365c0 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Sat, 20 Oct 2018 10:15:05 +1100 Subject: [PATCH 097/931] Issue #2970 ensure onComplete is called (#2971) * Issue #2970 ensure onComplete is called * Cleanup after review - single try Signed-off-by: Greg Wilkins --- .../org/eclipse/jetty/server/HttpChannel.java | 45 ++++++++++--------- 1 file changed, 25 insertions(+), 20 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java index 8b490299d21..43ab02dc183 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java @@ -481,33 +481,38 @@ public class HttpChannel implements Runnable, HttpOutput.Interceptor case COMPLETE: { - if (!_response.isCommitted() && !_request.isHandled()) + try { - _response.sendError(HttpStatus.NOT_FOUND_404); - } - else - { - // RFC 7230, section 3.3. - int status = _response.getStatus(); - boolean hasContent = !(_request.isHead() || + if (!_response.isCommitted() && !_request.isHandled()) + { + _response.sendError(HttpStatus.NOT_FOUND_404); + } + else + { + // RFC 7230, section 3.3. + int status = _response.getStatus(); + boolean hasContent = !(_request.isHead() || HttpMethod.CONNECT.is(_request.getMethod()) && status == HttpStatus.OK_200 || HttpStatus.isInformational(status) || status == HttpStatus.NO_CONTENT_204 || status == HttpStatus.NOT_MODIFIED_304); - if (hasContent && !_response.isContentComplete(_response.getHttpOutput().getWritten())) - { - if (isCommitted()) - abort(new IOException("insufficient content written")); - else - _response.sendError(HttpStatus.INTERNAL_SERVER_ERROR_500,"insufficient content written"); + if (hasContent && !_response.isContentComplete(_response.getHttpOutput().getWritten())) + { + if (isCommitted()) + abort(new IOException("insufficient content written")); + else + _response.sendError(HttpStatus.INTERNAL_SERVER_ERROR_500, "insufficient content written"); + } } + _response.closeOutput(); + + } + finally + { + _request.setHandled(true); + _state.onComplete(); + onCompleted(); } - _response.closeOutput(); - _request.setHandled(true); - - _state.onComplete(); - - onCompleted(); break loop; } From 15e1c73f9c89905da851344b55ff83e0b7af2584 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Mon, 22 Oct 2018 11:53:59 +1100 Subject: [PATCH 098/931] Cleanup the dump implementation (#2998) * Cleanup the dump implementation * improved the clarity of utility methods for dump and updated most dump methods * fixed upgrade filter dump * Improved dump after review * Moved dumpObjects to Dumpable * implemented dumpBeans with dumpObjects * less verbose dump * Dump streams * fixed dump test Signed-off-by: Greg Wilkins Signed-off-by: Simone Bordet --- examples/embedded/pom.xml | 7 +- .../eclipse/jetty/embedded/LikeJettyXml.java | 2 +- .../jetty/embedded/ManyConnectors.java | 2 +- .../eclipse/jetty/embedded/ManyContexts.java | 1 + .../OneServletContextWithSession.java | 1 + .../jetty/embedded/ServerWithAnnotations.java | 5 +- .../jetty/client/AbstractConnectionPool.java | 3 +- .../jetty/client/DuplexConnectionPool.java | 17 +- .../eclipse/jetty/client/HttpDestination.java | 3 +- .../jetty/client/MultiplexConnectionPool.java | 16 +- .../client/RoundRobinConnectionPool.java | 5 +- .../client/ValidatingConnectionPool.java | 9 +- .../jetty/http/pathmap/PathMappings.java | 6 +- .../http2/AbstractFlowControlStrategy.java | 3 +- .../org/eclipse/jetty/http2/HTTP2Flusher.java | 3 +- .../org/eclipse/jetty/http2/HTTP2Session.java | 4 +- .../org/eclipse/jetty/http2/HTTP2Stream.java | 3 +- .../AbstractHTTP2ServerConnectionFactory.java | 6 +- .../jetty/io/ConnectionStatistics.java | 17 +- .../org/eclipse/jetty/io/ManagedSelector.java | 11 +- .../org/eclipse/jetty/jmx/MBeanContainer.java | 5 +- .../eclipse/jetty/proxy/ConnectHandler.java | 7 - .../security/ConstraintSecurityHandler.java | 11 +- .../eclipse/jetty/server/ClassLoaderDump.java | 29 +-- .../jetty/server/ConnectorStatistics.java | 11 +- .../java/org/eclipse/jetty/server/Server.java | 3 +- .../jetty/server/handler/ContextHandler.java | 11 +- .../handler/ContextHandlerCollection.java | 2 +- .../server/handler/HandlerCollection.java | 8 - .../server/handler/InetAccessHandler.java | 5 +- .../jetty/server/ClassLoaderDumptTest.java | 46 ++--- .../org/eclipse/jetty/servlet/BaseHolder.java | 6 +- .../eclipse/jetty/servlet/FilterHolder.java | 32 +-- .../eclipse/jetty/servlet/FilterMapping.java | 3 +- .../org/eclipse/jetty/servlet/Holder.java | 12 +- .../eclipse/jetty/servlet/ServletHandler.java | 10 +- .../eclipse/jetty/servlet/ServletHolder.java | 16 +- .../org/eclipse/jetty/util/AttributesMap.java | 17 +- .../util/component/ContainerLifeCycle.java | 158 ++++++-------- .../jetty/util/component/Dumpable.java | 192 +++++++++++++++++- .../util/component/DumpableCollection.java | 16 +- .../jetty/util/ssl/SslContextFactory.java | 19 +- .../jetty/util/ssl/SslSelectionDump.java | 16 +- .../jetty/util/thread/ExecutorThreadPool.java | 17 +- .../jetty/util/thread/QueuedThreadPool.java | 13 +- .../thread/ScheduledExecutorScheduler.java | 15 +- .../jetty/util/URIUtilCanonicalPathTest.java | 2 +- .../component/ContainerLifeCycleTest.java | 117 ++++++----- .../eclipse/jetty/webapp/WebAppContext.java | 14 +- .../websocket/client/WebSocketClient.java | 7 - .../websocket/common/WebSocketSession.java | 25 +-- .../common/extensions/AbstractExtension.java | 3 +- .../io/AbstractWebSocketConnection.java | 3 +- .../server/WebSocketUpgradeFilter.java | 6 +- .../java/org/eclipse/jetty/TestServer.java | 34 ++-- 55 files changed, 584 insertions(+), 431 deletions(-) diff --git a/examples/embedded/pom.xml b/examples/embedded/pom.xml index 7280aaf5dac..1fcade91b31 100644 --- a/examples/embedded/pom.xml +++ b/examples/embedded/pom.xml @@ -128,7 +128,12 @@ org.eclipse.jetty.orbit javax.mail.glassfish - + + javax.transaction + javax.transaction-api + compile + + org.eclipse.jetty.toolchain jetty-test-helper diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/LikeJettyXml.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/LikeJettyXml.java index f592d061f30..356a9181978 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/LikeJettyXml.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/LikeJettyXml.java @@ -60,7 +60,7 @@ public class LikeJettyXml public static void main( String[] args ) throws Exception { // Path to as-built jetty-distribution directory - String jettyHomeBuild = "../../jetty-distribution/target/distribution"; + String jettyHomeBuild = "jetty-distribution/target/distribution"; // Find jetty home and base directories String homePath = System.getProperty("jetty.home", jettyHomeBuild); diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyConnectors.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyConnectors.java index ef62bcbc2df..72285a31ee3 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyConnectors.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyConnectors.java @@ -137,7 +137,7 @@ public class ManyConnectors // Start the server server.start(); - + server.dumpStdErr(); server.join(); } } diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyContexts.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyContexts.java index 87c39c0727b..1b7ad9bc8db 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyContexts.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyContexts.java @@ -50,6 +50,7 @@ public class ManyContexts server.setHandler(contexts); server.start(); + server.dumpStdErr(); server.join(); } } diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContextWithSession.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContextWithSession.java index d098589d0bc..023f169794b 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContextWithSession.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContextWithSession.java @@ -58,6 +58,7 @@ public class OneServletContextWithSession context.addServlet(HelloSessionServlet.class, "/"); server.start(); + server.dumpStdErr(); server.join(); } } diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithAnnotations.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithAnnotations.java index d67880eef52..ca7ba901a84 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithAnnotations.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithAnnotations.java @@ -52,7 +52,7 @@ public class ServerWithAnnotations WebAppContext webapp = new WebAppContext(); webapp.setContextPath("/"); File warFile = new File( - "../../jetty-distribution/target/distribution/demo-base/webapps/test.war"); + "jetty-distribution/target/distribution/demo-base/webapps/test.war"); webapp.setWar(warFile.getAbsolutePath()); webapp.setAttribute( "org.eclipse.jetty.server.webapp.ContainerIncludeJarPattern", @@ -72,10 +72,11 @@ public class ServerWithAnnotations // Configure a LoginService HashLoginService loginService = new HashLoginService(); loginService.setName("Test Realm"); - loginService.setConfig("src/test/resources/realm.properties"); + loginService.setConfig("examples/embedded/src/test/resources/realm.properties"); server.addBean(loginService); server.start(); + server.dumpStdErr(); server.join(); } diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractConnectionPool.java b/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractConnectionPool.java index 29d85e8fd79..19d0d1f073c 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractConnectionPool.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractConnectionPool.java @@ -28,7 +28,6 @@ import org.eclipse.jetty.util.Callback; import org.eclipse.jetty.util.Promise; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; -import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -212,6 +211,6 @@ public abstract class AbstractConnectionPool implements ConnectionPool, Dumpable @Override public String dump() { - return ContainerLifeCycle.dump(this); + return Dumpable.dump(this); } } diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/DuplexConnectionPool.java b/jetty-client/src/main/java/org/eclipse/jetty/client/DuplexConnectionPool.java index 5261751a62f..92bbd49311c 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/DuplexConnectionPool.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/DuplexConnectionPool.java @@ -35,7 +35,8 @@ import org.eclipse.jetty.client.api.Destination; import org.eclipse.jetty.util.Callback; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; -import org.eclipse.jetty.util.component.ContainerLifeCycle; +import org.eclipse.jetty.util.component.Dumpable; +import org.eclipse.jetty.util.component.DumpableCollection; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.util.thread.Sweeper; @@ -239,20 +240,24 @@ public class DuplexConnectionPool extends AbstractConnectionPool implements Swee @Override public void dump(Appendable out, String indent) throws IOException { - List connections = new ArrayList<>(); + DumpableCollection active; + DumpableCollection idle; lock(); try { - connections.addAll(activeConnections); - connections.addAll(idleConnections); + active = new DumpableCollection("active",new ArrayList<>(activeConnections)); + idle = new DumpableCollection("idle",new ArrayList<>(idleConnections)); } finally { unlock(); } + dump(out, indent, active, idle); + } - ContainerLifeCycle.dumpObject(out, this); - ContainerLifeCycle.dump(out, indent, connections); + protected void dump(Appendable out, String indent, Object... items) throws IOException + { + Dumpable.dumpObjects(out, indent, this, items); } @Override diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpDestination.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpDestination.java index a19613ee3b9..7b7ebc432c2 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpDestination.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpDestination.java @@ -472,8 +472,7 @@ public abstract class HttpDestination extends ContainerLifeCycle implements Dest @Override public void dump(Appendable out, String indent) throws IOException { - super.dump(out, indent); - ContainerLifeCycle.dump(out, indent, Collections.singleton(new DumpableCollection("exchanges", exchanges))); + dumpBeans(out, indent, new DumpableCollection("exchanges", exchanges)); } public String asString() diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/MultiplexConnectionPool.java b/jetty-client/src/main/java/org/eclipse/jetty/client/MultiplexConnectionPool.java index 179d66e9ca3..8e3bdf31195 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/MultiplexConnectionPool.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/MultiplexConnectionPool.java @@ -31,7 +31,8 @@ import java.util.stream.Collectors; import org.eclipse.jetty.client.api.Connection; import org.eclipse.jetty.util.Callback; -import org.eclipse.jetty.util.component.ContainerLifeCycle; +import org.eclipse.jetty.util.component.Dumpable; +import org.eclipse.jetty.util.component.DumpableCollection; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.util.thread.Sweeper; @@ -310,21 +311,22 @@ public class MultiplexConnectionPool extends AbstractConnectionPool implements C @Override public void dump(Appendable out, String indent) throws IOException { - List connections = new ArrayList<>(); + DumpableCollection busy; + DumpableCollection muxed; + DumpableCollection idle; lock(); try { - connections.addAll(busyConnections.values()); - connections.addAll(muxedConnections.values()); - connections.addAll(idleConnections); + busy = new DumpableCollection("busy", new ArrayList<>(busyConnections.values())); + muxed = new DumpableCollection("muxed", new ArrayList<>(muxedConnections.values())); + idle = new DumpableCollection("idle", new ArrayList<>(idleConnections)); } finally { unlock(); } - ContainerLifeCycle.dumpObject(out, this); - ContainerLifeCycle.dump(out, indent, connections); + Dumpable.dumpObjects(out, indent, this, busy, muxed, idle); } @Override diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/RoundRobinConnectionPool.java b/jetty-client/src/main/java/org/eclipse/jetty/client/RoundRobinConnectionPool.java index f69cbf63eea..2986d1a3189 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/RoundRobinConnectionPool.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/RoundRobinConnectionPool.java @@ -26,7 +26,7 @@ import org.eclipse.jetty.client.api.Connection; import org.eclipse.jetty.client.api.Destination; import org.eclipse.jetty.util.Callback; import org.eclipse.jetty.util.annotation.ManagedObject; -import org.eclipse.jetty.util.component.ContainerLifeCycle; +import org.eclipse.jetty.util.component.Dumpable; @ManagedObject public class RoundRobinConnectionPool extends AbstractConnectionPool implements ConnectionPool.Multiplexable @@ -192,8 +192,7 @@ public class RoundRobinConnectionPool extends AbstractConnectionPool implements { connections = new ArrayList<>(entries); } - ContainerLifeCycle.dumpObject(out, this); - ContainerLifeCycle.dump(out, indent, connections); + Dumpable.dumpObjects(out, indent, out, connections); } @Override diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/ValidatingConnectionPool.java b/jetty-client/src/main/java/org/eclipse/jetty/client/ValidatingConnectionPool.java index 5d539284ee3..bc1aa22ac56 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/ValidatingConnectionPool.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/ValidatingConnectionPool.java @@ -23,12 +23,13 @@ import java.util.HashMap; import java.util.Map; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicBoolean; +import java.util.stream.Stream; import org.eclipse.jetty.client.api.Connection; import org.eclipse.jetty.client.api.Destination; import org.eclipse.jetty.util.Callback; import org.eclipse.jetty.util.annotation.ManagedAttribute; -import org.eclipse.jetty.util.component.ContainerLifeCycle; +import org.eclipse.jetty.util.component.DumpableCollection; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.util.thread.Scheduler; @@ -129,10 +130,10 @@ public class ValidatingConnectionPool extends DuplexConnectionPool } @Override - public void dump(Appendable out, String indent) throws IOException + protected void dump(Appendable out, String indent, Object... items) throws IOException { - super.dump(out, indent); - ContainerLifeCycle.dump(out, indent, quarantine.values()); + DumpableCollection toDump = new DumpableCollection("quarantine", quarantine.values()); + super.dump(out, indent, Stream.concat(Stream.of(items), Stream.of(toDump))); } @Override diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathMappings.java b/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathMappings.java index 6bd3d6b7217..1954da4228c 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathMappings.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathMappings.java @@ -31,7 +31,6 @@ import org.eclipse.jetty.util.ArrayTernaryTrie; import org.eclipse.jetty.util.Trie; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; -import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -56,14 +55,13 @@ public class PathMappings implements Iterable>, Dumpable @Override public String dump() { - return ContainerLifeCycle.dump(this); + return Dumpable.dump(this); } @Override public void dump(Appendable out, String indent) throws IOException { - out.append("PathMappings[size=").append(Integer.toString(_mappings.size())).append("]\n"); - ContainerLifeCycle.dump(out, indent, _mappings); + Dumpable.dumpObjects(out, indent, toString(), _mappings); } @ManagedAttribute(value = "mappings", readonly = true) diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/AbstractFlowControlStrategy.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/AbstractFlowControlStrategy.java index 16a0068a8e6..fe8deaaa6a0 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/AbstractFlowControlStrategy.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/AbstractFlowControlStrategy.java @@ -29,7 +29,6 @@ import org.eclipse.jetty.http2.frames.WindowUpdateFrame; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.annotation.ManagedOperation; -import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -243,7 +242,7 @@ public abstract class AbstractFlowControlStrategy implements FlowControlStrategy @Override public String dump() { - return ContainerLifeCycle.dump(this); + return Dumpable.dump(this); } @Override diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Flusher.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Flusher.java index 61b9c69acad..219c36e8d48 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Flusher.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Flusher.java @@ -34,7 +34,6 @@ import org.eclipse.jetty.io.ByteBufferPool; import org.eclipse.jetty.io.EofException; import org.eclipse.jetty.util.Callback; import org.eclipse.jetty.util.IteratingCallback; -import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -353,7 +352,7 @@ public class HTTP2Flusher extends IteratingCallback implements Dumpable @Override public String dump() { - return ContainerLifeCycle.dump(this); + return Dumpable.dump(this); } @Override diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java index fe2b90e6526..da4f3ad5b69 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java @@ -62,6 +62,7 @@ import org.eclipse.jetty.util.Retainable; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.component.ContainerLifeCycle; +import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.component.DumpableCollection; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -1205,8 +1206,7 @@ public abstract class HTTP2Session extends ContainerLifeCycle implements ISessio @Override public void dump(Appendable out, String indent) throws IOException { - super.dump(out, indent); - dump(out, indent, Collections.singleton(new DumpableCollection("streams", streams.values()))); + Dumpable.dumpObjects(out, indent, this, new DumpableCollection("streams", streams.values())); } @Override diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java index 3cc9d531ce0..14002387880 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java @@ -42,7 +42,6 @@ import org.eclipse.jetty.http2.frames.WindowUpdateFrame; import org.eclipse.jetty.io.IdleTimeout; import org.eclipse.jetty.util.Callback; import org.eclipse.jetty.util.Promise; -import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -616,7 +615,7 @@ public class HTTP2Stream extends IdleTimeout implements IStream, Callback, Dumpa @Override public String dump() { - return ContainerLifeCycle.dump(this); + return Dumpable.dump(this); } @Override diff --git a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/AbstractHTTP2ServerConnectionFactory.java b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/AbstractHTTP2ServerConnectionFactory.java index 46d3e46960e..da37a88d485 100644 --- a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/AbstractHTTP2ServerConnectionFactory.java +++ b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/AbstractHTTP2ServerConnectionFactory.java @@ -43,7 +43,6 @@ import org.eclipse.jetty.server.HttpConfiguration; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.annotation.Name; -import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.component.LifeCycle; @@ -288,14 +287,13 @@ public abstract class AbstractHTTP2ServerConnectionFactory extends AbstractConne @Override public String dump() { - return ContainerLifeCycle.dump(this); + return Dumpable.dump(this); } @Override public void dump(Appendable out, String indent) throws IOException { - ContainerLifeCycle.dumpObject(out, this); - ContainerLifeCycle.dump(out, indent, sessions); + Dumpable.dumpObjects(out,indent,this, sessions); } @Override diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ConnectionStatistics.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ConnectionStatistics.java index 871d57c6353..f13877f430e 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ConnectionStatistics.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ConnectionStatistics.java @@ -19,8 +19,6 @@ package org.eclipse.jetty.io; import java.io.IOException; -import java.util.ArrayList; -import java.util.List; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicLong; import java.util.concurrent.atomic.LongAdder; @@ -29,7 +27,6 @@ import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.annotation.ManagedOperation; import org.eclipse.jetty.util.component.AbstractLifeCycle; -import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.statistic.CounterStatistic; import org.eclipse.jetty.util.statistic.SampleStatistic; @@ -210,19 +207,17 @@ public class ConnectionStatistics extends AbstractLifeCycle implements Connectio @Override public String dump() { - return ContainerLifeCycle.dump(this); + return Dumpable.dump(this); } @Override public void dump(Appendable out, String indent) throws IOException { - ContainerLifeCycle.dumpObject(out, this); - List children = new ArrayList<>(); - children.add(String.format("connections=%s", _connections)); - children.add(String.format("durations=%s", _connectionsDuration)); - children.add(String.format("bytes in/out=%s/%s", getReceivedBytes(), getSentBytes())); - children.add(String.format("messages in/out=%s/%s", getReceivedMessages(), getSentMessages())); - ContainerLifeCycle.dump(out, indent, children); + Dumpable.dumpObjects(out,indent,this, + String.format("connections=%s", _connections), + String.format("durations=%s", _connectionsDuration), + String.format("bytes in/out=%s/%s", getReceivedBytes(), getSentBytes()), + String.format("messages in/out=%s/%s", getReceivedMessages(), getSentMessages())); } @Override diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java index d476885b1e0..3197f2ad1f8 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java @@ -296,8 +296,10 @@ public class ManagedSelector extends ContainerLifeCycle implements Dumpable String keysAt = DateTimeFormatter.ISO_OFFSET_DATE_TIME.format(ZonedDateTime.now()); if (keys==null) keys = Collections.singletonList("No dump keys retrieved"); - dumpBeans(out, indent, Arrays.asList(new DumpableCollection("updates @ "+updatesAt, updates), - new DumpableCollection("keys @ "+keysAt, keys))); + + dumpBeans(out, indent, + new DumpableCollection("updates @ "+updatesAt, updates), + new DumpableCollection("keys @ "+keysAt, keys)); } else { @@ -543,7 +545,7 @@ public class ManagedSelector extends ContainerLifeCycle implements Dumpable */ public interface SelectorUpdate { - public void update(Selector selector); + void update(Selector selector); } private class Start implements SelectorUpdate @@ -567,8 +569,7 @@ public class ManagedSelector extends ContainerLifeCycle implements Dumpable public void update(Selector selector) { Set selector_keys = selector.keys(); - List list = new ArrayList<>(selector_keys.size()+1); - list.add(selector + " keys=" + selector_keys.size()); + List list = new ArrayList<>(selector_keys.size()); for (SelectionKey key : selector_keys) { if (key==null) diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java index 17ef201b4e7..c63b9446d4c 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java @@ -398,14 +398,13 @@ public class MBeanContainer implements Container.InheritedListener, Dumpable, De @Override public void dump(Appendable out, String indent) throws IOException { - ContainerLifeCycle.dumpObject(out, this); - ContainerLifeCycle.dump(out, indent, _mbeans.entrySet()); + Dumpable.dumpObjects(out, indent, this, _mbeans.entrySet()); } @Override public String dump() { - return ContainerLifeCycle.dump(this); + return Dumpable.dump(this); } @Override diff --git a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ConnectHandler.java b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ConnectHandler.java index a6120df2191..34826102b05 100644 --- a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ConnectHandler.java +++ b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ConnectHandler.java @@ -486,13 +486,6 @@ public class ConnectHandler extends HandlerWrapper return true; } - @Override - public void dump(Appendable out, String indent) throws IOException - { - dumpThis(out); - dump(out, indent, getBeans(), TypeUtil.asList(getHandlers())); - } - protected class ConnectManager extends SelectorManager { protected ConnectManager(Executor executor, Scheduler scheduler, int selectors) diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintSecurityHandler.java b/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintSecurityHandler.java index 8540bfb53bf..6825ecde4d1 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintSecurityHandler.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintSecurityHandler.java @@ -46,6 +46,7 @@ import org.eclipse.jetty.server.Response; import org.eclipse.jetty.server.UserIdentity; import org.eclipse.jetty.server.handler.ContextHandler; import org.eclipse.jetty.util.URIUtil; +import org.eclipse.jetty.util.component.DumpableCollection; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.util.security.Constraint; @@ -767,11 +768,11 @@ public class ConstraintSecurityHandler extends SecurityHandler implements Constr { // TODO these should all be beans dumpBeans(out,indent, - Collections.singleton(getLoginService()), - Collections.singleton(getIdentityService()), - Collections.singleton(getAuthenticator()), - Collections.singleton(_roles), - _constraintMap.entrySet()); + getLoginService(), + getIdentityService(), + getAuthenticator(), + DumpableCollection.from("roles",_roles), + DumpableCollection.from("constraints",_constraintMap.entrySet())); } /* ------------------------------------------------------------ */ diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ClassLoaderDump.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ClassLoaderDump.java index 3ca4321424d..44072e42b65 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ClassLoaderDump.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ClassLoaderDump.java @@ -20,11 +20,9 @@ package org.eclipse.jetty.server; import java.io.IOException; import java.net.URLClassLoader; -import java.util.Collections; -import org.eclipse.jetty.util.TypeUtil; -import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.component.Dumpable; +import org.eclipse.jetty.util.component.DumpableCollection; public class ClassLoaderDump implements Dumpable { @@ -38,7 +36,7 @@ public class ClassLoaderDump implements Dumpable @Override public String dump() { - return ContainerLifeCycle.dump(this); + return Dumpable.dump(this); } @Override @@ -48,31 +46,34 @@ public class ClassLoaderDump implements Dumpable out.append("No ClassLoader\n"); else if (_loader instanceof Dumpable) { - ContainerLifeCycle.dump(out,indent,Collections.singleton(_loader)); + ((Dumpable)_loader).dump(out,indent); } else if (_loader instanceof URLClassLoader) { - out.append(String.valueOf(_loader)).append("\n"); + String loader = _loader.toString(); + DumpableCollection urls = DumpableCollection.fromArray("URLs", ((URLClassLoader)_loader).getURLs()); ClassLoader parent = _loader.getParent(); if (parent==null) - ContainerLifeCycle.dump(out,indent,TypeUtil.asList(((URLClassLoader)_loader).getURLs())); + Dumpable.dumpObjects(out,indent,loader,urls); else if (parent == Server.class.getClassLoader()) - ContainerLifeCycle.dump(out,indent,TypeUtil.asList(((URLClassLoader)_loader).getURLs()),Collections.singleton(parent.toString())); + Dumpable.dumpObjects(out,indent,loader,urls,parent.toString()); else if (parent instanceof Dumpable) - ContainerLifeCycle.dump(out,indent,TypeUtil.asList(((URLClassLoader)_loader).getURLs()),Collections.singleton(parent)); + Dumpable.dumpObjects(out,indent,loader,urls,parent); else - ContainerLifeCycle.dump(out,indent,TypeUtil.asList(((URLClassLoader)_loader).getURLs()),Collections.singleton(new ClassLoaderDump(parent))); + Dumpable.dumpObjects(out,indent,loader,urls,new ClassLoaderDump(parent)); } else { - out.append(String.valueOf(_loader)).append("\n"); + String loader = _loader.toString(); ClassLoader parent = _loader.getParent(); + if (parent==null) + Dumpable.dumpObject(out,loader); if (parent==Server.class.getClassLoader()) - ContainerLifeCycle.dump(out,indent,Collections.singleton(parent.toString())); + Dumpable.dumpObjects(out,indent,loader,parent.toString()); else if (parent instanceof Dumpable) - ContainerLifeCycle.dump(out,indent,Collections.singleton(parent)); + Dumpable.dumpObjects(out,indent,loader,parent); else if (parent!=null) - ContainerLifeCycle.dump(out,indent,Collections.singleton(new ClassLoaderDump(parent))); + Dumpable.dumpObjects(out,indent,loader,new ClassLoaderDump(parent)); } } } diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ConnectorStatistics.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ConnectorStatistics.java index 519f71e7561..ae42690537c 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ConnectorStatistics.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ConnectorStatistics.java @@ -19,7 +19,6 @@ package org.eclipse.jetty.server; import java.io.IOException; -import java.util.Arrays; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; @@ -33,7 +32,6 @@ import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.annotation.ManagedOperation; import org.eclipse.jetty.util.component.AbstractLifeCycle; import org.eclipse.jetty.util.component.Container; -import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.statistic.CounterStatistic; import org.eclipse.jetty.util.statistic.SampleStatistic; @@ -240,14 +238,17 @@ public class ConnectorStatistics extends AbstractLifeCycle implements Dumpable, @ManagedOperation("dump thread state") public String dump() { - return ContainerLifeCycle.dump(this); + return Dumpable.dump(this); } @Override public void dump(Appendable out, String indent) throws IOException { - ContainerLifeCycle.dumpObject(out,this); - ContainerLifeCycle.dump(out,indent,Arrays.asList(new String[]{"connections="+_connectionStats,"duration="+_connectionDurationStats,"in="+_messagesIn,"out="+_messagesOut})); + Dumpable.dumpObjects(out,indent,this, + "connections="+_connectionStats, + "duration="+_connectionDurationStats, + "in="+_messagesIn, + "out="+_messagesOut); } public static void addToAllConnectors(Server server) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Server.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Server.java index 97838eff969..cc7f6312a98 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Server.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Server.java @@ -628,6 +628,7 @@ public class Server extends HandlerWrapper implements Attributes @Override public void setAttribute(String name, Object attribute) { + // TODO this is a crude way to get attribute values managed by JMX. Object old=_attributes.getAttribute(name); updateBean(old,attribute); _attributes.setAttribute(name, attribute); @@ -690,7 +691,7 @@ public class Server extends HandlerWrapper implements Attributes @Override public void dump(Appendable out,String indent) throws IOException { - dumpBeans(out,indent,Collections.singleton(new ClassLoaderDump(this.getClass().getClassLoader()))); + dumpBeans(out,indent,new ClassLoaderDump(this.getClass().getClassLoader()),_attributes); } /* ------------------------------------------------------------ */ diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java index e9560d603b2..ae7003247f2 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java @@ -256,11 +256,12 @@ public class ContextHandler extends ScopedHandler implements Attributes, Gracefu @Override public void dump(Appendable out, String indent) throws IOException { - dumpBeans(out,indent,Collections.singletonList(new ClassLoaderDump(getClassLoader())), - Collections.singletonList(new DumpableCollection("eventListeners "+this,_eventListeners)), - Collections.singletonList(new DumpableCollection("handler attributes " + this,((AttributesMap)getAttributes()).getAttributeEntrySet())), - Collections.singletonList(new DumpableCollection("context attributes " + this,((Context)getServletContext()).getAttributeEntrySet())), - Collections.singletonList(new DumpableCollection("initparams " + this,getInitParams().entrySet()))); + dumpBeans(out, indent, + new ClassLoaderDump(getClassLoader()), + new DumpableCollection("eventListeners " + this, _eventListeners), + new DumpableCollection("handler attributes " + this, ((AttributesMap)getAttributes()).getAttributeEntrySet()), + new DumpableCollection("context attributes " + this, ((Context)getServletContext()).getAttributeEntrySet()), + new DumpableCollection("initparams " + this,getInitParams().entrySet())); } /* ------------------------------------------------------------ */ diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandlerCollection.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandlerCollection.java index 25f62ae8002..4b264af1949 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandlerCollection.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandlerCollection.java @@ -335,7 +335,7 @@ public class ContextHandlerCollection extends HandlerCollection { return _handler; } - + @Override public String toString() { diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HandlerCollection.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HandlerCollection.java index 2c28806fae9..0018d17ed7c 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HandlerCollection.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HandlerCollection.java @@ -202,12 +202,4 @@ public class HandlerCollection extends AbstractHandlerContainer child.destroy(); super.destroy(); } - - /* ------------------------------------------------------------ */ - @Override - public String toString() - { - Handler[] handlers=getHandlers(); - return super.toString()+(handlers==null?"[]":Arrays.asList(handlers).toString()); - } } diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/InetAccessHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/InetAccessHandler.java index 0aed271810d..4529f3fa7a8 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/InetAccessHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/InetAccessHandler.java @@ -32,6 +32,7 @@ import org.eclipse.jetty.server.HttpChannel; import org.eclipse.jetty.server.Request; import org.eclipse.jetty.util.IncludeExcludeSet; import org.eclipse.jetty.util.InetAddressSet; +import org.eclipse.jetty.util.component.DumpableCollection; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -137,6 +138,8 @@ public class InetAccessHandler extends HandlerWrapper @Override public void dump(Appendable out, String indent) throws IOException { - dumpBeans(out, indent, _set.getIncluded(), _set.getExcluded()); + dumpBeans(out, indent, + DumpableCollection.from("included",_set.getIncluded()), + DumpableCollection.from("excluded",_set.getExcluded())); } } diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ClassLoaderDumptTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ClassLoaderDumptTest.java index b69e4652f41..3354d9511a6 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ClassLoaderDumptTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ClassLoaderDumptTest.java @@ -48,8 +48,8 @@ public class ClassLoaderDumptTest StringBuilder out = new StringBuilder(); server.dump(out); String dump = out.toString(); - assertThat(dump,containsString("+- SimpleLoader")); - assertThat(dump,containsString("+> "+Server.class.getClassLoader())); + assertThat(dump,containsString("+-SimpleLoader")); + assertThat(dump,containsString("+>"+Server.class.getClassLoader())); } @Test @@ -69,9 +69,9 @@ public class ClassLoaderDumptTest StringBuilder out = new StringBuilder(); server.dump(out); String dump = out.toString(); - assertThat(dump,containsString("+- ParentedLoader")); - assertThat(dump,containsString("| +- "+Server.class.getClassLoader())); - assertThat(dump,containsString("+> "+Server.class.getClassLoader())); + assertThat(dump,containsString("+-ParentedLoader")); + assertThat(dump,containsString("| +>"+Server.class.getClassLoader())); + assertThat(dump,containsString("+>"+Server.class.getClassLoader())); } @Test @@ -98,10 +98,10 @@ public class ClassLoaderDumptTest StringBuilder out = new StringBuilder(); server.dump(out); String dump = out.toString(); - assertThat(dump,containsString("+- TopLoader")); - assertThat(dump,containsString("| +- MiddleLoader")); - assertThat(dump,containsString("| +- "+Server.class.getClassLoader())); - assertThat(dump,containsString("+> "+Server.class.getClassLoader())); + assertThat(dump,containsString("+-TopLoader")); + assertThat(dump,containsString("| +>MiddleLoader")); + assertThat(dump,containsString("| +>"+Server.class.getClassLoader())); + assertThat(dump,containsString("+>"+Server.class.getClassLoader())); } @Test @@ -122,10 +122,10 @@ public class ClassLoaderDumptTest StringBuilder out = new StringBuilder(); server.dump(out); String dump = out.toString(); - assertThat(dump,containsString("+- TopLoader")); - assertThat(dump,containsString("| +- DumpableClassLoader")); - assertThat(dump,not(containsString("| +- "+Server.class.getClassLoader()))); - assertThat(dump,containsString("+> "+Server.class.getClassLoader())); + assertThat(dump,containsString("+-TopLoader")); + assertThat(dump,containsString("| +>DumpableClassLoader")); + assertThat(dump,not(containsString("| +>"+Server.class.getClassLoader()))); + assertThat(dump,containsString("+>"+Server.class.getClassLoader())); } public static class DumpableClassLoader extends ClassLoader implements Dumpable @@ -184,15 +184,15 @@ public class ClassLoaderDumptTest server.dump(out); String dump = out.toString(); // System.err.println(dump); - assertThat(dump,containsString("+- TopLoader")); - assertThat(dump,containsString("| +- file:/ONE")); - assertThat(dump,containsString("| +- file:/TWO")); - assertThat(dump,containsString("| +- file:/THREE")); - assertThat(dump,containsString("| +- MiddleLoader")); - assertThat(dump,containsString("| +- file:/one")); - assertThat(dump,containsString("| +- file:/two")); - assertThat(dump,containsString("| +- file:/three")); - assertThat(dump,containsString("| +- "+Server.class.getClassLoader())); - assertThat(dump,containsString("+> "+Server.class.getClassLoader())); + assertThat(dump,containsString("+-TopLoader")); + assertThat(dump,containsString("| | +>file:/ONE")); + assertThat(dump,containsString("| | +>file:/TWO")); + assertThat(dump,containsString("| | +>file:/THREE")); + assertThat(dump,containsString("| +>MiddleLoader")); + assertThat(dump,containsString("| | +>file:/one")); + assertThat(dump,containsString("| | +>file:/two")); + assertThat(dump,containsString("| | +>file:/three")); + assertThat(dump,containsString("| +>"+Server.class.getClassLoader())); + assertThat(dump,containsString("+>"+Server.class.getClassLoader())); } } diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/BaseHolder.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/BaseHolder.java index ef4ab0e8616..3b244704249 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/BaseHolder.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/BaseHolder.java @@ -27,7 +27,6 @@ import org.eclipse.jetty.server.handler.ContextHandler; import org.eclipse.jetty.util.Loader; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.component.AbstractLifeCycle; -import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -194,14 +193,13 @@ public abstract class BaseHolder extends AbstractLifeCycle implements Dumpabl @Override public void dump(Appendable out, String indent) throws IOException { - out.append(toString()) - .append(" - ").append(AbstractLifeCycle.getState(this)).append("\n"); + Dumpable.dumpObject(out, this); } /* ------------------------------------------------------------ */ @Override public String dump() { - return ContainerLifeCycle.dump(this); + return Dumpable.dump(this); } } diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterHolder.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterHolder.java index 9e214dd7045..b4e03591156 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterHolder.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterHolder.java @@ -34,10 +34,11 @@ import javax.servlet.ServletException; import org.eclipse.jetty.util.TypeUtil; import org.eclipse.jetty.util.component.Dumpable; +import org.eclipse.jetty.util.component.DumpableCollection; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; -public class FilterHolder extends Holder +public class FilterHolder extends Holder { private static final Logger LOG = Log.getLogger(FilterHolder.class); @@ -100,10 +101,6 @@ public class FilterHolder extends Holder } } - - - - /* ------------------------------------------------------------ */ @Override @@ -195,21 +192,24 @@ public class FilterHolder extends Holder return _filter; } - /* ------------------------------------------------------------ */ - @Override - public String toString() - { - return getName(); - } - /* ------------------------------------------------------------ */ @Override public void dump(Appendable out, String indent) throws IOException { - super.dump(out, indent); - if(_filter instanceof Dumpable) { - ((Dumpable) _filter).dump(out, indent); - } + if (_initParams.isEmpty()) + Dumpable.dumpObjects(out, indent, this, + _filter == null?getHeldClass():_filter); + else + Dumpable.dumpObjects(out, indent, this, + _filter == null?getHeldClass():_filter, + new DumpableCollection("initParams", _initParams.entrySet())); + } + + /* ------------------------------------------------------------ */ + @Override + public String toString() + { + return String.format("%s@%x==%s,inst=%b,async=%b",_name,hashCode(),_className,_filter!=null,isAsyncSupported()); } /* ------------------------------------------------------------ */ diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterMapping.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterMapping.java index 50a1f6bf94e..5b66fea8b1d 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterMapping.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterMapping.java @@ -29,7 +29,6 @@ import org.eclipse.jetty.http.PathMap; import org.eclipse.jetty.util.TypeUtil; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; -import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.component.Dumpable; @ManagedObject("Filter Mappings") @@ -334,6 +333,6 @@ public class FilterMapping implements Dumpable @Override public String dump() { - return ContainerLifeCycle.dump(this); + return Dumpable.dump(this); } } diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/Holder.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/Holder.java index a2e9924207d..66a16d6f552 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/Holder.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/Holder.java @@ -32,6 +32,7 @@ import javax.servlet.ServletContext; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.component.ContainerLifeCycle; +import org.eclipse.jetty.util.component.DumpableCollection; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -45,7 +46,7 @@ import org.eclipse.jetty.util.log.Logger; * @param the type of holder */ @ManagedObject("Holder - a container for servlets and the like") -public class Holder extends BaseHolder +public abstract class Holder extends BaseHolder { private static final Logger LOG = Log.getLogger(Holder.class); @@ -188,15 +189,6 @@ public class Holder extends BaseHolder return _asyncSupported; } - - /* ------------------------------------------------------------ */ - @Override - public void dump(Appendable out, String indent) throws IOException - { - super.dump(out,indent); - ContainerLifeCycle.dump(out,indent,_initParams.entrySet()); - } - /* ------------------------------------------------------------ */ @Override public String dump() diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHandler.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHandler.java index 34adff4bf68..d64b86c98f7 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHandler.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHandler.java @@ -138,11 +138,11 @@ public class ServletHandler extends ScopedHandler public void dump(Appendable out, String indent) throws IOException { dumpBeans(out,indent, - Collections.singletonList(new DumpableCollection("listeners "+this,_listeners)), - Collections.singletonList(new DumpableCollection("filters "+this,_filters)), - Collections.singletonList(new DumpableCollection("filterMappings "+this,_filterMappings)), - Collections.singletonList(new DumpableCollection("servlets "+this,_servlets)), - Collections.singletonList(new DumpableCollection("servletMappings "+this,_servletMappings))); + DumpableCollection.fromArray("listeners "+this,_listeners), + DumpableCollection.fromArray("filters "+this,_filters), + DumpableCollection.fromArray("filterMappings "+this,_filterMappings), + DumpableCollection.fromArray("servlets "+this,_servlets), + DumpableCollection.fromArray("servletMappings "+this,_servletMappings)); } /* ----------------------------------------------------------------- */ diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHolder.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHolder.java index e4681ab1a52..4ddec3bb15b 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHolder.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHolder.java @@ -55,6 +55,8 @@ import org.eclipse.jetty.util.Loader; import org.eclipse.jetty.util.StringUtil; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; +import org.eclipse.jetty.util.component.Dumpable; +import org.eclipse.jetty.util.component.DumpableCollection; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -1312,11 +1314,23 @@ public class ServletHolder extends Holder implements UserIdentity.Scope } } + /* ------------------------------------------------------------ */ + @Override + public void dump(Appendable out, String indent) throws IOException + { + if (_initParams.isEmpty()) + Dumpable.dumpObjects(out, indent, this, + _servlet == null?getHeldClass():_servlet); + else + Dumpable.dumpObjects(out, indent, this, + _servlet == null?getHeldClass():_servlet, + new DumpableCollection("initParams", _initParams.entrySet())); + } /* ------------------------------------------------------------ */ @Override public String toString() { - return String.format("%s@%x==%s,jsp=%s,order=%d,inst=%b",_name,hashCode(),_className,_forcedPath,_initOrder,_servlet!=null); + return String.format("%s@%x==%s,jsp=%s,order=%d,inst=%b,async=%b",_name,hashCode(),_className,_forcedPath,_initOrder,_servlet!=null,isAsyncSupported()); } } diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/AttributesMap.java b/jetty-util/src/main/java/org/eclipse/jetty/util/AttributesMap.java index b086228589a..4ff033d6673 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/AttributesMap.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/AttributesMap.java @@ -18,6 +18,9 @@ package org.eclipse.jetty.util; +import org.eclipse.jetty.util.component.Dumpable; + +import java.io.IOException; import java.util.ArrayList; import java.util.Collections; import java.util.Enumeration; @@ -28,7 +31,7 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; import java.util.concurrent.atomic.AtomicReference; -public class AttributesMap implements Attributes +public class AttributesMap implements Attributes, Dumpable { private final AtomicReference> _map = new AtomicReference<>(); @@ -148,4 +151,16 @@ public class AttributesMap implements Attributes setAttribute(name, attributes.getAttribute(name)); } } + + @Override + public String dump() + { + return Dumpable.dump(this); + } + + @Override + public void dump(Appendable out, String indent) throws IOException + { + Dumpable.dumpObjects(out,indent,String.format("%s@%x",this.getClass().getSimpleName(),hashCode()),map()); + } } diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/component/ContainerLifeCycle.java b/jetty-util/src/main/java/org/eclipse/jetty/util/component/ContainerLifeCycle.java index 4b6d963969e..fd1f70447cc 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/component/ContainerLifeCycle.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/component/ContainerLifeCycle.java @@ -230,6 +230,30 @@ public class ContainerLifeCycle extends AbstractLifeCycle implements Container, return false; } + /** + * @param bean the bean to test + * @return whether this aggregate contains the bean in auto state + */ + public boolean isAuto(Object bean) + { + for (Bean b : _beans) + if (b._bean == bean) + return b._managed==Managed.AUTO; + return false; + } + + /** + * @param bean the bean to test + * @return whether this aggregate contains the bean in auto state + */ + public boolean isUnmanaged(Object bean) + { + for (Bean b : _beans) + if (b._bean == bean) + return b._managed==Managed.UNMANAGED; + return false; + } + /** * Adds the given bean, detecting whether to manage it or not. * If the bean is a {@link LifeCycle}, then it will be managed if it is not @@ -616,6 +640,7 @@ public class ContainerLifeCycle extends AbstractLifeCycle implements Container, try { dump(System.err, ""); + System.err.println(Dumpable.KEY); } catch (IOException e) { @@ -627,46 +652,7 @@ public class ContainerLifeCycle extends AbstractLifeCycle implements Container, @ManagedOperation("Dump the object to a string") public String dump() { - return dump(this); - } - - public static String dump(Dumpable dumpable) - { - StringBuilder b = new StringBuilder(); - try - { - dumpable.dump(b, ""); - } - catch (IOException e) - { - LOG.warn(e); - } - return b.toString(); - } - - public void dump(Appendable out) throws IOException - { - dump(out, ""); - } - - protected void dumpThis(Appendable out) throws IOException - { - out.append(String.valueOf(this)).append(" - ").append(getState()).append("\n"); - } - - public static void dumpObject(Appendable out, Object o) throws IOException - { - try - { - if (o instanceof LifeCycle) - out.append(String.valueOf(o)).append(" - ").append((AbstractLifeCycle.getState((LifeCycle)o))).append("\n"); - else - out.append(String.valueOf(o)).append("\n"); - } - catch (Throwable th) - { - out.append(" => ").append(th.toString()).append('\n'); - } + return Dumpable.dump(this); } @Override @@ -675,63 +661,41 @@ public class ContainerLifeCycle extends AbstractLifeCycle implements Container, dumpBeans(out,indent); } - protected void dumpBeans(Appendable out, String indent, Collection... collections) throws IOException + /** + * Dump this object to an Appendable with no indent. + * @param out The appendable to dump to. + * @throws IOException May be thrown by the Appendable + */ + public void dump(Appendable out) throws IOException { - dumpThis(out); - int size = _beans.size(); - for (Collection c : collections) - size += c.size(); - int i = 0; - for (Bean b : _beans) - { - ++i; - switch(b._managed) - { - case POJO: - out.append(indent).append(" +- "); - if (b._bean instanceof Dumpable) - ((Dumpable)b._bean).dump(out, indent + (i == size ? " " : " | ")); - else - dumpObject(out, b._bean); - break; - - case MANAGED: - out.append(indent).append(" += "); - if (b._bean instanceof Dumpable) - ((Dumpable)b._bean).dump(out, indent + (i == size ? " " : " | ")); - else - dumpObject(out, b._bean); - break; - - case UNMANAGED: - out.append(indent).append(" +~ "); - dumpObject(out, b._bean); - break; - - case AUTO: - out.append(indent).append(" +? "); - if (b._bean instanceof Dumpable) - ((Dumpable)b._bean).dump(out, indent + (i == size ? " " : " | ")); - else - dumpObject(out, b._bean); - break; - } - } - - for (Collection c : collections) - { - for (Object o : c) - { - i++; - out.append(indent).append(" +> "); - if (o instanceof Dumpable) - ((Dumpable)o).dump(out, indent + (i == size ? " " : " | ")); - else - dumpObject(out, o); - } - } + dump(out, ""); } + /** + * Dump just this object, but not it's children. Typically used to + * implement {@link #dump(Appendable, String)} + * @param out The appendable to dump to + * @throws IOException May be thrown by the Appendable + */ + @Deprecated + protected void dumpThis(Appendable out) throws IOException + { + out.append(String.valueOf(this)).append(" - ").append(getState()).append("\n"); + } + + + /** Dump this object, it's contained beans and additional items to an Appendable + * @param out The appendable to dump to + * @param indent The indent to apply after any new lines + * @param items Additional items to be dumped as contained. + * @throws IOException May be thrown by the Appendable + */ + protected void dumpBeans(Appendable out, String indent, Object... items) throws IOException + { + Dumpable.dumpObjects(out,indent,this, items); + } + + @Deprecated public static void dump(Appendable out, String indent, Collection... collections) throws IOException { if (collections.length == 0) @@ -749,11 +713,7 @@ public class ContainerLifeCycle extends AbstractLifeCycle implements Container, { i++; out.append(indent).append(" +- "); - - if (o instanceof Dumpable) - ((Dumpable)o).dump(out, indent + (i == size ? " " : " | ")); - else - dumpObject(out, o); + Dumpable.dumpObjects(out,indent + (i)o).size()); + else + s = String.valueOf(o).replace("\r\n","|").replace("\n","|"); + + if (o instanceof LifeCycle) + out.append(s).append(" - ").append((AbstractLifeCycle.getState((LifeCycle)o))).append("\n"); + else + out.append(s).append("\n"); + } + catch (Throwable th) + { + out.append("=>").append(th.toString()).append("\n"); + } + } + + /** + * Dump an Object, it's contained items and additional items to an {@link Appendable}. + * If the object in an {@link Iterable} or an {@link Array}, then its contained items + * are also dumped. + * @param out the Appendable to dump to + * @param indent The indent to apply after any new lines + * @param object The object to dump. If the object is an instance + * of {@link Container}, {@link Stream}, {@link Iterable}, {@link Array} or {@link Map}, + * then children of the object a recursively dumped. + * @param extraChildren Items to be dumped as children of the object, in addition to any discovered children of object + * @throws IOException May be thrown by the Appendable + */ + static void dumpObjects(Appendable out, String indent, Object object, Object... extraChildren) throws IOException + { + dumpObject(out,object); + + int size = extraChildren==null?0:extraChildren.length; + + if (object instanceof Stream) + object = ((Stream)object).toArray(); + if (object instanceof Array) + object = Arrays.asList((Object[])object); + + if (object instanceof Container) + { + Container container = (Container)object; + ContainerLifeCycle containerLifeCycle = container instanceof ContainerLifeCycle ? (ContainerLifeCycle)container : null; + for (Iterator i = container.getBeans().iterator(); i.hasNext();) + { + Object bean = i.next(); + String nextIndent = indent + ((i.hasNext() || size>0) ? "| " : " "); + if (bean instanceof LifeCycle) + { + if (container.isManaged(bean)) + { + out.append(indent).append("+="); + if (bean instanceof Dumpable) + ((Dumpable)bean).dump(out,nextIndent); + else + dumpObjects(out, nextIndent, bean); + } + else if (containerLifeCycle != null && containerLifeCycle.isAuto(bean)) + { + out.append(indent).append("+?"); + if (bean instanceof Dumpable) + ((Dumpable)bean).dump(out,nextIndent); + else + dumpObjects(out, nextIndent, bean); + } + else + { + out.append(indent).append("+~"); + dumpObject(out, bean); + } + } + else if (containerLifeCycle != null && containerLifeCycle.isUnmanaged(bean)) + { + out.append(indent).append("+~"); + dumpObject(out, bean); + } + else + { + out.append(indent).append("+-"); + if (bean instanceof Dumpable) + ((Dumpable)bean).dump(out,nextIndent); + else + dumpObjects(out, nextIndent, bean); + } + } + } + if (object instanceof Iterable) + { + for (Iterator i = ((Iterable)object).iterator(); i.hasNext();) + { + Object item = i.next(); + String nextIndent = indent + ((i.hasNext() || size>0) ? "| " : " "); + out.append(indent).append("+:"); + if (item instanceof Dumpable) + ((Dumpable)item).dump(out,nextIndent); + else + dumpObjects(out,nextIndent, item); + } + } + else if (object instanceof Map) + { + for (Iterator> i = ((Map)object).entrySet().iterator(); i.hasNext();) + { + Map.Entry entry = i.next(); + String nextIndent = indent + ((i.hasNext() || size>0) ? "| " : " "); + out.append(indent).append("+@").append(String.valueOf(entry.getKey())).append('='); + Object item = entry.getValue(); + if (item instanceof Dumpable) + ((Dumpable)item).dump(out,nextIndent); + else + dumpObjects(out,nextIndent, item); + } + } + + if (size==0) + return; + + int i = 0; + for (Object item : extraChildren) + { + i++; + String nextIndent = indent + (i"); + if (item instanceof Dumpable) + ((Dumpable)item).dump(out,nextIndent); + else + dumpObjects(out, nextIndent, item); + } + } + } diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/component/DumpableCollection.java b/jetty-util/src/main/java/org/eclipse/jetty/util/component/DumpableCollection.java index 0fb4c13f139..7e7e4190740 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/component/DumpableCollection.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/component/DumpableCollection.java @@ -34,22 +34,26 @@ public class DumpableCollection implements Dumpable _collection=collection; } - public DumpableCollection(String name,Object... items) + public static DumpableCollection fromArray(String name, Object[] array) { - this(name, items==null?Collections.emptyList():Arrays.asList(items)); + return new DumpableCollection(name,array==null?Collections.emptyList():Arrays.asList(array)); + } + + public static DumpableCollection from(String name, Object... items) + { + return new DumpableCollection(name,items==null?Collections.emptyList():Arrays.asList(items)); } @Override public String dump() { - return ContainerLifeCycle.dump(this); + return Dumpable.dump(this); } @Override public void dump(Appendable out, String indent) throws IOException { - out.append(_name).append(System.lineSeparator()); - if (_collection!=null) - ContainerLifeCycle.dump(out,indent,_collection); + Object[] array = _collection.toArray(); + Dumpable.dumpObjects(out,indent,_name + " size="+array.length, array); } } diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslContextFactory.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslContextFactory.java index b86a10f98e6..de50dd90667 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslContextFactory.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslContextFactory.java @@ -76,7 +76,6 @@ import org.eclipse.jetty.util.StringUtil; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.component.AbstractLifeCycle; -import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -355,18 +354,26 @@ public class SslContextFactory extends AbstractLifeCycle implements Dumpable @Override public String dump() { - return ContainerLifeCycle.dump(this); + return Dumpable.dump(this); } @Override public void dump(Appendable out, String indent) throws IOException { - out.append(String.valueOf(this)).append(" trustAll=").append(Boolean.toString(_trustAll)).append(System.lineSeparator()); - try { - List selections = selectionDump(); - ContainerLifeCycle.dump(out, indent, selections); + SSLEngine sslEngine = SSLContext.getDefault().createSSLEngine(); + Dumpable.dumpObjects(out, indent, this, "trustAll=" + _trustAll, + new SslSelectionDump("Protocol", + sslEngine.getSupportedProtocols(), + sslEngine.getEnabledProtocols(), + getExcludeProtocols(), + getIncludeProtocols()), + new SslSelectionDump("Cipher Suite", + sslEngine.getSupportedCipherSuites(), + sslEngine.getEnabledCipherSuites(), + getExcludeCipherSuites(), + getIncludeCipherSuites())); } catch (NoSuchAlgorithmException ignore) { diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslSelectionDump.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslSelectionDump.java index 0b1069d3797..c30dd82a671 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslSelectionDump.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslSelectionDump.java @@ -35,25 +35,23 @@ class SslSelectionDump extends ContainerLifeCycle implements Dumpable static class CaptionedList extends ArrayList implements Dumpable { private final String caption; - + public CaptionedList(String caption) { this.caption = caption; } - + @Override public String dump() { - return ContainerLifeCycle.dump(SslSelectionDump.CaptionedList.this); + return Dumpable.dump(SslSelectionDump.CaptionedList.this); } - + @Override public void dump(Appendable out, String indent) throws IOException { - out.append(caption); - out.append(" (size=").append(Integer.toString(size())).append(")"); - out.append(System.lineSeparator()); - ContainerLifeCycle.dump(out, indent, this); + Object[] array = toArray(); + Dumpable.dumpObjects(out, indent, caption + " size="+array.length, array); } } @@ -161,7 +159,7 @@ class SslSelectionDump extends ContainerLifeCycle implements Dumpable @Override public String dump() { - return ContainerLifeCycle.dump(this); + return Dumpable.dump(this); } @Override diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ExecutorThreadPool.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ExecutorThreadPool.java index 0f6a4c98d89..328a93d8e7f 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ExecutorThreadPool.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ExecutorThreadPool.java @@ -20,7 +20,6 @@ package org.eclipse.jetty.util.thread; import java.io.IOException; import java.util.ArrayList; -import java.util.Arrays; import java.util.Collections; import java.util.List; import java.util.concurrent.LinkedBlockingQueue; @@ -353,23 +352,27 @@ public class ExecutorThreadPool extends ContainerLifeCycle implements ThreadPool @Override public void dump(Appendable out, String indent) throws IOException { - out.append(String.valueOf(thread.getId())) + StringBuilder b = new StringBuilder(); + b.append(String.valueOf(thread.getId())) .append(" ") .append(thread.getName()) .append(" p=").append(String.valueOf(thread.getPriority())) .append(" ") .append(known) .append(thread.getState().toString()); + + if (isDetailedDump()) { - out.append(System.lineSeparator()); if (known.isEmpty()) - ContainerLifeCycle.dump(out, indent, Arrays.asList(frames)); + Dumpable.dumpObjects(out, indent, b.toString(), (Object[])frames); + else + Dumpable.dumpObject(out, b.toString()); } else { - out.append(" @ ").append(frames.length > 0 ? String.valueOf(frames[0]) : "") - .append(System.lineSeparator()); + b.append(" @ ").append(frames.length > 0 ? String.valueOf(frames[0]) : ""); + Dumpable.dumpObject(out, b.toString()); } } @@ -385,7 +388,7 @@ public class ExecutorThreadPool extends ContainerLifeCycle implements ThreadPool List jobs = Collections.emptyList(); if (isDetailedDump()) jobs = new ArrayList<>(_executor.getQueue()); - dumpBeans(out, indent, threads, Collections.singletonList(new DumpableCollection("jobs - size=" + jobs.size(), jobs))); + dumpBeans(out, indent, threads, new DumpableCollection("jobs", jobs)); } @Override diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/QueuedThreadPool.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/QueuedThreadPool.java index 72c8e51012b..a35adc3c41d 100755 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/QueuedThreadPool.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/QueuedThreadPool.java @@ -20,7 +20,6 @@ package org.eclipse.jetty.util.thread; import java.io.IOException; import java.util.ArrayList; -import java.util.Arrays; import java.util.Collections; import java.util.List; import java.util.Set; @@ -32,7 +31,6 @@ import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicLong; import org.eclipse.jetty.util.BlockingArrayQueue; -import org.eclipse.jetty.util.ProcessorUtils; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.annotation.ManagedOperation; @@ -606,12 +604,11 @@ public class QueuedThreadPool extends ContainerLifeCycle implements SizedThreadP @Override public void dump(Appendable out, String indent) throws IOException { - out.append(String.valueOf(thread.getId())).append(' ').append(thread.getName()).append(' ').append(known).append(thread.getState().toString()); - if (thread.getPriority()!=Thread.NORM_PRIORITY) - out.append(" prio=").append(String.valueOf(thread.getPriority())); - out.append(System.lineSeparator()); + String s = thread.getId()+" "+thread.getName()+" "+thread.getState()+" "+thread.getPriority(); if (known.length()==0) - ContainerLifeCycle.dump(out, indent, Arrays.asList(trace)); + Dumpable.dumpObjects(out, indent, s, (Object[])trace); + else + Dumpable.dumpObjects(out, indent, s); } @Override @@ -632,7 +629,7 @@ public class QueuedThreadPool extends ContainerLifeCycle implements SizedThreadP if (isDetailedDump()) jobs = new ArrayList<>(getQueue()); - dumpBeans(out, indent, threads, Collections.singletonList(new DumpableCollection("jobs - size=" + jobs.size(), jobs))); + dumpBeans(out, indent, new DumpableCollection("threads",threads), new DumpableCollection("jobs", jobs)); } @Override diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ScheduledExecutorScheduler.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ScheduledExecutorScheduler.java index 7925ad43af5..8740dc78326 100755 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ScheduledExecutorScheduler.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ScheduledExecutorScheduler.java @@ -19,15 +19,12 @@ package org.eclipse.jetty.util.thread; import java.io.IOException; -import java.util.Arrays; -import java.util.List; import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledThreadPoolExecutor; import java.util.concurrent.ThreadFactory; import java.util.concurrent.TimeUnit; import org.eclipse.jetty.util.component.AbstractLifeCycle; -import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.component.Dumpable; /** @@ -109,19 +106,17 @@ public class ScheduledExecutorScheduler extends AbstractLifeCycle implements Sch @Override public String dump() { - return ContainerLifeCycle.dump(this); + return Dumpable.dump(this); } @Override public void dump(Appendable out, String indent) throws IOException { - ContainerLifeCycle.dumpObject(out, this); Thread thread = this.thread; - if (thread != null) - { - List frames = Arrays.asList(thread.getStackTrace()); - ContainerLifeCycle.dump(out, indent, frames); - } + if (thread == null) + Dumpable.dumpObject(out, this); + else + Dumpable.dumpObjects(out,indent,this, (Object[])thread.getStackTrace()); } private static class ScheduledFutureTask implements Task diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/URIUtilCanonicalPathTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/URIUtilCanonicalPathTest.java index cffd41caa0e..fa9fd4288cd 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/URIUtilCanonicalPathTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/URIUtilCanonicalPathTest.java @@ -119,7 +119,7 @@ public class URIUtilCanonicalPathTest ArrayList ret = new ArrayList<>(); for(String[] args: canonical) { - ret.add(Arguments.of(args)); + ret.add(Arguments.of((Object[])args)); } return ret.stream(); } diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/component/ContainerLifeCycleTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/component/ContainerLifeCycleTest.java index fedc1708db6..1ad73ec321f 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/component/ContainerLifeCycleTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/component/ContainerLifeCycleTest.java @@ -215,59 +215,59 @@ public class ContainerLifeCycleTest a0.addBean(aa0); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, " +? ContainerLife"); + dump = check(dump, "+?ContainerLife"); ContainerLifeCycle aa1 = new ContainerLifeCycle(); a0.addBean(aa1); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, " +? ContainerLife"); - dump = check(dump, " +? ContainerLife"); + dump = check(dump, "+?ContainerLife"); + dump = check(dump, "+?ContainerLife"); dump = check(dump, ""); ContainerLifeCycle aa2 = new ContainerLifeCycle(); a0.addBean(aa2, false); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, " +? ContainerLife"); - dump = check(dump, " +? ContainerLife"); - dump = check(dump, " +~ ContainerLife"); + dump = check(dump, "+?ContainerLife"); + dump = check(dump, "+?ContainerLife"); + dump = check(dump, "+~ContainerLife"); dump = check(dump, ""); aa1.start(); a0.start(); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, " += ContainerLife"); - dump = check(dump, " +~ ContainerLife"); - dump = check(dump, " +~ ContainerLife"); + dump = check(dump, "+=ContainerLife"); + dump = check(dump, "+~ContainerLife"); + dump = check(dump, "+~ContainerLife"); dump = check(dump, ""); a0.manage(aa1); a0.removeBean(aa2); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, " += ContainerLife"); - dump = check(dump, " += ContainerLife"); + dump = check(dump, "+=ContainerLife"); + dump = check(dump, "+=ContainerLife"); dump = check(dump, ""); ContainerLifeCycle aaa0 = new ContainerLifeCycle(); aa0.addBean(aaa0); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, " += ContainerLife"); - dump = check(dump, " | +~ Container"); - dump = check(dump, " += ContainerLife"); + dump = check(dump, "+=ContainerLife"); + dump = check(dump, "| +~Container"); + dump = check(dump, "+=ContainerLife"); dump = check(dump, ""); ContainerLifeCycle aa10 = new ContainerLifeCycle(); aa1.addBean(aa10, true); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, " += ContainerLife"); - dump = check(dump, " | +~ Container"); - dump = check(dump, " += ContainerLife"); - dump = check(dump, " += Container"); + dump = check(dump, "+=ContainerLife"); + dump = check(dump, "| +~Container"); + dump = check(dump, "+=ContainerLife"); + dump = check(dump, " +=Container"); dump = check(dump, ""); final ContainerLifeCycle a1 = new ContainerLifeCycle(); @@ -280,63 +280,70 @@ public class ContainerLifeCycleTest @Override public void dump(Appendable out, String indent) throws IOException { - out.append(this.toString()).append("\n"); - dump(out, indent, TypeUtil.asList(new Object[]{a1, a2}), TypeUtil.asList(new Object[]{a3, a4})); + Dumpable.dumpObjects(out, indent, this.toString(), TypeUtil.asList(new Object[]{a1, a2}), TypeUtil.asList(new Object[]{a3, a4})); } }; a0.addBean(aa, true); + + dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, " += ContainerLife"); - dump = check(dump, " | +~ Container"); - dump = check(dump, " += ContainerLife"); - dump = check(dump, " | += Container"); - dump = check(dump, " += ContainerLife"); - dump = check(dump, " +- Container"); - dump = check(dump, " +- Container"); - dump = check(dump, " +- Container"); - dump = check(dump, " +- Container"); + dump = check(dump, "+=ContainerLife"); + dump = check(dump, "| +~Container"); + dump = check(dump, "+=ContainerLife"); + dump = check(dump, "| +=Container"); + dump = check(dump, "+=ContainerLife"); + dump = check(dump, " +>java.util.Arrays$ArrayList"); + dump = check(dump, " | +:ContainerLifeCycle"); + dump = check(dump, " | +:ContainerLifeCycle"); + dump = check(dump, " +>java.util.Arrays$ArrayList"); + dump = check(dump, " +:ContainerLifeCycle"); + dump = check(dump, " +:ContainerLifeCycle"); dump = check(dump, ""); a2.addBean(aa0, true); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, " += ContainerLife"); - dump = check(dump, " | +~ Container"); - dump = check(dump, " += ContainerLife"); - dump = check(dump, " | += Container"); - dump = check(dump, " += ContainerLife"); - dump = check(dump, " +- Container"); - dump = check(dump, " +- Container"); - dump = check(dump, " | += Conta"); - dump = check(dump, " | +~ C"); - dump = check(dump, " +- Container"); - dump = check(dump, " +- Container"); + dump = check(dump, "+=ContainerLife"); + dump = check(dump, "| +~Container"); + dump = check(dump, "+=ContainerLife"); + dump = check(dump, "| +=Container"); + dump = check(dump, "+=ContainerLife"); + dump = check(dump, " +>java.util.Arrays$ArrayList"); + dump = check(dump, " | +:ContainerLifeCycle"); + dump = check(dump, " | +:ContainerLifeCycle"); + dump = check(dump, " | +=Conta"); + dump = check(dump, " | +~C"); + dump = check(dump, " +>java.util.Arrays$ArrayList"); + dump = check(dump, " +:ContainerLifeCycle"); + dump = check(dump, " +:ContainerLifeCycle"); dump = check(dump, ""); a2.unmanage(aa0); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, " += ContainerLife"); - dump = check(dump, " | +~ Container"); - dump = check(dump, " += ContainerLife"); - dump = check(dump, " | += Container"); - dump = check(dump, " += ContainerLife"); - dump = check(dump, " +- Container"); - dump = check(dump, " +- Container"); - dump = check(dump, " | +~ Conta"); - dump = check(dump, " +- Container"); - dump = check(dump, " +- Container"); + dump = check(dump, "+=ContainerLife"); + dump = check(dump, "| +~Container"); + dump = check(dump, "+=ContainerLife"); + dump = check(dump, "| +=Container"); + dump = check(dump, "+=ContainerLife"); + dump = check(dump, " +>java.util.Arrays$ArrayList"); + dump = check(dump, " | +:ContainerLifeCycle"); + dump = check(dump, " | +:ContainerLifeCycle"); + dump = check(dump, " | +~Conta"); + dump = check(dump, " +>java.util.Arrays$ArrayList"); + dump = check(dump, " +:ContainerLifeCycle"); + dump = check(dump, " +:ContainerLifeCycle"); dump = check(dump, ""); a0.unmanage(aa); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, " += ContainerLife"); - dump = check(dump, " | +~ Container"); - dump = check(dump, " += ContainerLife"); - dump = check(dump, " | += Container"); - dump = check(dump, " +~ ContainerLife"); + dump = check(dump, "+=ContainerLife"); + dump = check(dump, "| +~Container"); + dump = check(dump, "+=ContainerLife"); + dump = check(dump, "| +=Container"); + dump = check(dump, "+~ContainerLife"); dump = check(dump, ""); } diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebAppContext.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebAppContext.java index c3594d29bf3..0f735e7933e 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebAppContext.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebAppContext.java @@ -1068,13 +1068,13 @@ public class WebAppContext extends ServletContextHandler implements WebAppClassL } dumpBeans(out,indent, - Collections.singletonList(new ClassLoaderDump(getClassLoader())), - Collections.singletonList(new DumpableCollection("Systemclasses "+this,system_classes)), - Collections.singletonList(new DumpableCollection("Serverclasses "+this,server_classes)), - Collections.singletonList(new DumpableCollection("Configurations "+this,_configurations)), - Collections.singletonList(new DumpableCollection("Handler attributes "+this,((AttributesMap)getAttributes()).getAttributeEntrySet())), - Collections.singletonList(new DumpableCollection("Context attributes "+this,((Context)getServletContext()).getAttributeEntrySet())), - Collections.singletonList(new DumpableCollection("Initparams "+this,getInitParams().entrySet())) + new ClassLoaderDump(getClassLoader()), + new DumpableCollection("Systemclasses "+this,system_classes), + new DumpableCollection("Serverclasses "+this,server_classes), + new DumpableCollection("Configurations "+this,_configurations), + new DumpableCollection("Handler attributes "+this,((AttributesMap)getAttributes()).getAttributeEntrySet()), + new DumpableCollection("Context attributes "+this,((Context)getServletContext()).getAttributeEntrySet()), + new DumpableCollection("Initparams "+this,getInitParams().entrySet()) ); } diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketClient.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketClient.java index f34b7ad077c..c732e779bd9 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketClient.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketClient.java @@ -694,13 +694,6 @@ public class WebSocketClient extends ContainerLifeCycle implements WebSocketCont getPolicy().setMaxTextMessageBufferSize(max); } - @Override - public void dump(Appendable out, String indent) throws IOException - { - dumpThis(out); - dump(out,indent,getOpenSessions()); - } - public HttpClient getHttpClient() { return this.httpClient; diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java index ee4c7f8b92e..78804518591 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java @@ -21,6 +21,7 @@ package org.eclipse.jetty.websocket.common; import java.io.IOException; import java.net.InetSocketAddress; import java.net.URI; +import java.util.Collections; import java.util.HashMap; import java.util.Iterator; import java.util.List; @@ -38,6 +39,7 @@ import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.component.Dumpable; +import org.eclipse.jetty.util.component.DumpableCollection; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.util.thread.ThreadClassLoaderScope; @@ -279,26 +281,9 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem @Override public void dump(Appendable out, String indent) throws IOException { - dumpThis(out); - out.append(indent).append(" +- incomingHandler : "); - if (incomingHandler instanceof Dumpable) - { - ((Dumpable)incomingHandler).dump(out,indent + " "); - } - else - { - out.append(incomingHandler.toString()).append(System.lineSeparator()); - } - - out.append(indent).append(" +- outgoingHandler : "); - if (outgoingHandler instanceof Dumpable) - { - ((Dumpable)outgoingHandler).dump(out,indent + " "); - } - else - { - out.append(outgoingHandler.toString()).append(System.lineSeparator()); - } + dumpBeans(out,indent, + DumpableCollection.from("incoming", incomingHandler), + DumpableCollection.from("outgoing", outgoingHandler)); } @Override diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtension.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtension.java index bf7d1a10486..9cd3b91b304 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtension.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtension.java @@ -24,7 +24,6 @@ import org.eclipse.jetty.io.ByteBufferPool; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.component.AbstractLifeCycle; -import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -58,7 +57,7 @@ public abstract class AbstractExtension extends AbstractLifeCycle implements Dum @Override public String dump() { - return ContainerLifeCycle.dump(this); + return Dumpable.dump(this); } @Override diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java index b6cd50b1e68..8f32399d2c6 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java @@ -33,7 +33,6 @@ import org.eclipse.jetty.io.ByteBufferPool; import org.eclipse.jetty.io.Connection; import org.eclipse.jetty.io.EndPoint; import org.eclipse.jetty.util.BufferUtil; -import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -634,7 +633,7 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp @Override public String dump() { - return ContainerLifeCycle.dump(this); + return Dumpable.dump(this); } @Override diff --git a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeFilter.java b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeFilter.java index 4322dc7dcfe..90487b4a129 100644 --- a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeFilter.java +++ b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeFilter.java @@ -39,7 +39,6 @@ import org.eclipse.jetty.servlet.FilterHolder; import org.eclipse.jetty.servlet.ServletContextHandler; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; -import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -275,14 +274,13 @@ public class WebSocketUpgradeFilter implements Filter, MappedWebSocketCreator, D @Override public String dump() { - return ContainerLifeCycle.dump(this); + return Dumpable.dump(this); } @Override public void dump(Appendable out, String indent) throws IOException { - out.append(indent).append(" +- configuration=").append(configuration.toString()).append("\n"); - configuration.dump(out, indent); + Dumpable.dumpObjects(out,indent,this,configuration); } public WebSocketServletFactory getFactory() diff --git a/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/TestServer.java b/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/TestServer.java index 6d493f2029b..a078dac760e 100644 --- a/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/TestServer.java +++ b/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/TestServer.java @@ -18,14 +18,6 @@ package org.eclipse.jetty; -import java.io.File; -import java.io.IOException; -import java.lang.management.ManagementFactory; - -import javax.servlet.ServletException; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - import org.eclipse.jetty.jmx.MBeanContainer; import org.eclipse.jetty.security.HashLoginService; import org.eclipse.jetty.server.ForwardedRequestCustomizer; @@ -44,8 +36,8 @@ import org.eclipse.jetty.server.handler.HandlerCollection; import org.eclipse.jetty.server.handler.HandlerWrapper; import org.eclipse.jetty.server.handler.RequestLogHandler; import org.eclipse.jetty.server.handler.ResourceHandler; -import org.eclipse.jetty.server.session.FileSessionDataStore; import org.eclipse.jetty.server.session.DefaultSessionCache; +import org.eclipse.jetty.server.session.FileSessionDataStore; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.util.log.StdErrLog; @@ -53,6 +45,16 @@ import org.eclipse.jetty.util.thread.QueuedThreadPool; import org.eclipse.jetty.webapp.WebAppContext; import org.junit.jupiter.api.Disabled; +import javax.servlet.ServletException; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.File; +import java.io.IOException; +import java.lang.management.ManagementFactory; +import java.nio.file.FileSystems; +import java.nio.file.Files; +import java.nio.file.Path; + @Disabled("Not a test case") public class TestServer { @@ -62,7 +64,12 @@ public class TestServer { ((StdErrLog)Log.getLog()).setSource(false); - String jetty_root = "../../.."; + // TODO don't depend on this file structure + Path jetty_root = FileSystems.getDefault().getPath(".").toAbsolutePath().normalize(); + if (!Files.exists(jetty_root.resolve("VERSION.txt"))) + jetty_root = FileSystems.getDefault().getPath("../../..").toAbsolutePath().normalize(); + if (!Files.exists(jetty_root.resolve("VERSION.txt"))) + throw new IllegalArgumentException(jetty_root.toString()); // Setup Threadpool QueuedThreadPool threadPool = new QueuedThreadPool(); @@ -112,7 +119,7 @@ public class TestServer // Setup context HashLoginService login = new HashLoginService(); login.setName("Test Realm"); - login.setConfig(jetty_root + "/tests/test-webapps/test-jetty-webapp/src/main/config/demo-base/etc/realm.properties"); + login.setConfig(jetty_root.resolve("tests/test-webapps/test-jetty-webapp/src/main/config/demo-base/etc/realm.properties").toString()); server.addBean(login); File log=File.createTempFile("jetty-yyyy_mm_dd", "log"); @@ -125,7 +132,7 @@ public class TestServer WebAppContext webapp = new WebAppContext(); webapp.setContextPath("/test"); webapp.setParentLoaderPriority(true); - webapp.setResourceBase("./src/main/webapp"); + webapp.setResourceBase(jetty_root.resolve("tests/test-webapps/test-jetty-webapp/src/main/webapp").toString()); webapp.setAttribute("testAttribute","testValue"); File sessiondir=File.createTempFile("sessions",null); if (sessiondir.exists()) @@ -141,12 +148,13 @@ public class TestServer contexts.addHandler(webapp); ContextHandler srcroot = new ContextHandler(); - srcroot.setResourceBase("."); + srcroot.setResourceBase(jetty_root.resolve("tests/test-webapps/test-jetty-webapp/src").toString()); srcroot.setHandler(new ResourceHandler()); srcroot.setContextPath("/src"); contexts.addHandler(srcroot); server.start(); + server.dumpStdErr(); server.join(); } From 0236f4064a01500e4106fe0d70c193cb8364ca99 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Mon, 22 Oct 2018 22:47:54 +0200 Subject: [PATCH 099/931] Issue #2998 - Cleanup the dump implementation. Fixed dump() in HTTP2Session. Signed-off-by: Simone Bordet --- .../src/main/java/org/eclipse/jetty/http2/HTTP2Session.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java index da4f3ad5b69..18a59f95b2d 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java @@ -62,7 +62,6 @@ import org.eclipse.jetty.util.Retainable; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.component.ContainerLifeCycle; -import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.component.DumpableCollection; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -1206,7 +1205,7 @@ public abstract class HTTP2Session extends ContainerLifeCycle implements ISessio @Override public void dump(Appendable out, String indent) throws IOException { - Dumpable.dumpObjects(out, indent, this, new DumpableCollection("streams", streams.values())); + dumpBeans(out, indent, new DumpableCollection("streams", streams.values())); } @Override From 8eb21f84a37e08af70c985b56275cec4d19b9bd0 Mon Sep 17 00:00:00 2001 From: Jan Bartel Date: Tue, 23 Oct 2018 17:18:12 +1100 Subject: [PATCH 100/931] Issue #2998 Add key to DebugListener dump; ensure LoginService dumped only once. --- .../org/eclipse/jetty/security/AbstractLoginService.java | 2 +- .../eclipse/jetty/security/ConstraintSecurityHandler.java | 4 ---- .../main/java/org/eclipse/jetty/server/DebugListener.java | 5 +++++ 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/AbstractLoginService.java b/jetty-security/src/main/java/org/eclipse/jetty/security/AbstractLoginService.java index 7e8ea64a9e0..7202a964439 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/AbstractLoginService.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/AbstractLoginService.java @@ -153,7 +153,7 @@ public abstract class AbstractLoginService extends AbstractLifeCycle implements @Override public String toString() { - return this.getClass().getSimpleName()+"["+_name+"]"; + return String.format("%s@%x[%s]", this.getClass().getSimpleName(), hashCode(), _name); } diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintSecurityHandler.java b/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintSecurityHandler.java index 6825ecde4d1..4b3b1cbad27 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintSecurityHandler.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintSecurityHandler.java @@ -766,11 +766,7 @@ public class ConstraintSecurityHandler extends SecurityHandler implements Constr @Override public void dump(Appendable out,String indent) throws IOException { - // TODO these should all be beans dumpBeans(out,indent, - getLoginService(), - getIdentityService(), - getAuthenticator(), DumpableCollection.from("roles",_roles), DumpableCollection.from("constraints",_constraintMap.entrySet())); } diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/DebugListener.java b/jetty-server/src/main/java/org/eclipse/jetty/server/DebugListener.java index 7df261f9918..8b11dde9228 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/DebugListener.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/DebugListener.java @@ -42,6 +42,7 @@ import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.annotation.Name; import org.eclipse.jetty.util.component.AbstractLifeCycle; +import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -127,12 +128,16 @@ public class DebugListener extends AbstractLifeCycle implements ServletContextLi if (_dumpContext) { if (_out==null) + { handler.dumpStdErr(); + System.err.println(Dumpable.KEY); + } else { try { handler.dump(_out); + _out.println(Dumpable.KEY); } catch(Exception e) { From 4ababf9888e46593f788535a6ece11414f866ed6 Mon Sep 17 00:00:00 2001 From: Jan Bartel Date: Tue, 23 Oct 2018 17:29:54 +1100 Subject: [PATCH 101/931] Issue #294 Initial enter scope for DebugListener (#3021) Signed-off-by: Jan Bartel --- .../java/org/eclipse/jetty/server/handler/ContextHandler.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java index ae7003247f2..503147a9963 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java @@ -678,7 +678,11 @@ public class ContextHandler extends ScopedHandler implements Attributes, Gracefu _durableListeners.add(listener); if (listener instanceof ContextScopeListener) + { _contextListeners.add((ContextScopeListener)listener); + if (__context.get()!=null) + ((ContextScopeListener)listener).enterScope(__context.get(),null,"Listener registered"); + } if (listener instanceof ServletContextListener) _servletContextListeners.add((ServletContextListener)listener); From a0cefea29fd012a66ac2f31a501076400e76caa4 Mon Sep 17 00:00:00 2001 From: Jan Bartel Date: Tue, 23 Oct 2018 17:59:24 +1100 Subject: [PATCH 102/931] Issue #2903 Fix ListenerHolder.setListner (#3019) Signed-off-by: Jan Bartel --- .../src/main/java/org/eclipse/jetty/servlet/ListenerHolder.java | 1 - 1 file changed, 1 deletion(-) diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ListenerHolder.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ListenerHolder.java index b3aa0e4c845..c8ab56b5ffc 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ListenerHolder.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ListenerHolder.java @@ -71,7 +71,6 @@ public class ListenerHolder extends BaseHolder _listener = listener; _extInstance=true; setHeldClass(_listener.getClass()); - setClassName(_listener.getClass().getName()); } From 66d6ea67995e6889b13a5f0fb2f2b4a097af442f Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 23 Oct 2018 12:05:32 +0200 Subject: [PATCH 103/931] Issue #2998 - Cleanup the dump implementation. Fixed dump() in QueuedThreadPool. When the dump was not detailed, it was printing jobs=0 even if there were jobs in the queue. Given that it was adding no information (actually misleading information) and that the queue size is already reported by QueuedThreadPool.toString() the jobs are not dumped if the dump is not detailed. Signed-off-by: Simone Bordet --- .../eclipse/jetty/util/thread/QueuedThreadPool.java | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/QueuedThreadPool.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/QueuedThreadPool.java index a35adc3c41d..57f1986cc57 100755 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/QueuedThreadPool.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/QueuedThreadPool.java @@ -20,7 +20,6 @@ package org.eclipse.jetty.util.thread; import java.io.IOException; import java.util.ArrayList; -import java.util.Collections; import java.util.List; import java.util.Set; import java.util.concurrent.BlockingQueue; @@ -625,11 +624,15 @@ public class QueuedThreadPool extends ContainerLifeCycle implements SizedThreadP } } - List jobs = Collections.emptyList(); if (isDetailedDump()) - jobs = new ArrayList<>(getQueue()); - - dumpBeans(out, indent, new DumpableCollection("threads",threads), new DumpableCollection("jobs", jobs)); + { + List jobs = new ArrayList<>(getQueue()); + dumpBeans(out, indent, new DumpableCollection("threads", threads), new DumpableCollection("jobs", jobs)); + } + else + { + dumpBeans(out, indent, new DumpableCollection("threads", threads)); + } } @Override From 8500e806ecffb699546cf530725b30e4651f4d55 Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Wed, 24 Oct 2018 19:02:31 +1000 Subject: [PATCH 104/931] align used algorithm to detect java bin to use (#3025) add javaPath for JettyRunDistro mojo to force a java executable to use Signed-off-by: olivier lamy --- .../development/maven/jetty-maven-plugin.adoc | 6 +++ .../jetty-simple-webapp/pom.xml | 1 + .../jetty/maven/plugin/JettyRunDistro.java | 15 ++++-- .../maven/plugin/JettyRunForkedMojo.java | 54 +++++-------------- .../jetty/maven/plugin/JettyRunMojo.java | 40 ++++++++++++++ 5 files changed, 71 insertions(+), 45 deletions(-) diff --git a/jetty-documentation/src/main/asciidoc/development/maven/jetty-maven-plugin.adoc b/jetty-documentation/src/main/asciidoc/development/maven/jetty-maven-plugin.adoc index 93e404d0258..a0fd6bacc42 100644 --- a/jetty-documentation/src/main/asciidoc/development/maven/jetty-maven-plugin.adoc +++ b/jetty-documentation/src/main/asciidoc/development/maven/jetty-maven-plugin.adoc @@ -624,6 +624,9 @@ Only relevant if `waitForChild` is `false`. forkWebXml:: Default is `target/fork-web.xml`. This is the name of the file into which jetty generates the effective web.xml for use by the child process. +javaPath:: +Default will be your `${java.home}/bin/java` +This the java executable used to start the child process The following `jetty:run` parameters are NOT applicable: @@ -715,6 +718,9 @@ maxChildCheckInterval:: Default value 100. This is the interval in milliseconds between checks to see if the child started correctly. Only applicable if `waitForChild` is `false`. +javaPath:: +Default will be your `${java.home}/bin/java` +This the java executable used to start the child process ____ [NOTE] diff --git a/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-webapp/pom.xml b/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-webapp/pom.xml index a1d4c8c1ea1..5237db3ddcb 100644 --- a/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-webapp/pom.xml +++ b/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-webapp/pom.xml @@ -93,6 +93,7 @@ ${basedir}/src/base + ${java.home}/bin/java jetty.server.dumpAfterStart=true jetty.port.file=${jetty.port.file} diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunDistro.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunDistro.java index 1a1fc463be4..d5a502e5f50 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunDistro.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunDistro.java @@ -198,8 +198,10 @@ public class JettyRunDistro extends JettyRunMojo private Random random; private Path tokenFile; - - + + @Parameter(property = "jetty.javaPath") + private String javaPath; + /** * @see org.eclipse.jetty.maven.plugin.JettyRunMojo#execute() */ @@ -492,7 +494,14 @@ public class JettyRunDistro extends JettyRunMojo public ProcessBuilder configureCommand() { List cmd = new ArrayList<>(); - cmd.add("java"); + if(StringUtil.isNotBlank( javaPath )) + { + cmd.add( javaPath ); + } + else + { + cmd.add( getJavaBin() ); + } cmd.add("-jar"); cmd.add(new File(jettyHome, "start.jar").getAbsolutePath()); diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunForkedMojo.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunForkedMojo.java index e0df458fdf9..5ff79475c8a 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunForkedMojo.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunForkedMojo.java @@ -44,6 +44,7 @@ import org.apache.maven.plugins.annotations.Parameter; import org.apache.maven.plugins.annotations.ResolutionScope; import org.eclipse.jetty.annotations.AnnotationConfiguration; import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.util.StringUtil; import org.eclipse.jetty.util.resource.Resource; import org.eclipse.jetty.util.thread.QueuedThreadPool; @@ -151,7 +152,9 @@ public class JettyRunForkedMojo extends JettyRunMojo * pom has an explicit dependency on it. */ private boolean hasSlf4jDeps; - + + @Parameter(property = "jetty.javaPath") + private String javaPath; /** * ShutdownThread @@ -271,7 +274,14 @@ public class JettyRunForkedMojo extends JettyRunMojo tpool.stop(); List cmd = new ArrayList<>(); - cmd.add(getJavaBin()); + if( StringUtil.isNotBlank( javaPath )) + { + cmd.add( javaPath ); + } + else + { + cmd.add( getJavaBin() ); + } if (jvmArgs != null) { @@ -307,7 +317,6 @@ public class JettyRunForkedMojo extends JettyRunMojo cmd.add("--props"); cmd.add(props.getAbsolutePath()); - String token = createToken(); Path tokenFile = target.toPath().resolve(createToken()+".txt"); cmd.add("--token"); cmd.add(tokenFile.toAbsolutePath().toString()); @@ -508,46 +517,7 @@ public class JettyRunForkedMojo extends JettyRunMojo return classPath.toString(); } - - - /** - * @return - */ - private String getJavaBin() - { - String javaexes[] = new String[] - { "java", "java.exe" }; - - File javaHomeDir = new File(System.getProperty("java.home")); - for (String javaexe : javaexes) - { - File javabin = new File(javaHomeDir,fileSeparators("bin/" + javaexe)); - if (javabin.exists() && javabin.isFile()) - { - return javabin.getAbsolutePath(); - } - } - - return "java"; - } - - public static String fileSeparators(String path) - { - StringBuilder ret = new StringBuilder(); - for (char c : path.toCharArray()) - { - if ((c == '/') || (c == '\\')) - { - ret.append(File.separatorChar); - } - else - { - ret.append(c); - } - } - return ret.toString(); - } public static String pathSeparators(String path) { diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunMojo.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunMojo.java index a29d5beb2fb..038e3a83a82 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunMojo.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunMojo.java @@ -738,4 +738,44 @@ public class JettyRunMojo extends AbstractJettyMojo return null; } + + + + /** + * @return + */ + protected String getJavaBin() + { + String javaexes[] = new String[] + { "java", "java.exe" }; + + File javaHomeDir = new File(System.getProperty("java.home")); + for (String javaexe : javaexes) + { + File javabin = new File(javaHomeDir,fileSeparators("bin/" + javaexe)); + if (javabin.exists() && javabin.isFile()) + { + return javabin.getAbsolutePath(); + } + } + + return "java"; + } + + public static String fileSeparators(String path) + { + StringBuilder ret = new StringBuilder(); + for (char c : path.toCharArray()) + { + if ((c == '/') || (c == '\\')) + { + ret.append(File.separatorChar); + } + else + { + ret.append(c); + } + } + return ret.toString(); + } } From 898560bec57d94e90c595d4f44d1744ab2cf13b9 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Fri, 26 Oct 2018 06:44:40 +1100 Subject: [PATCH 105/931] Issue #3030 Enforce Content-Encoding check only on parameter extraction. (#3031) --- .../org/eclipse/jetty/server/Request.java | 11 +++--- .../org/eclipse/jetty/server/RequestTest.java | 34 +++++++++++++++++-- 2 files changed, 36 insertions(+), 9 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java index 32c3b446b05..ac5198063a5 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java @@ -455,23 +455,21 @@ public class Request implements HttpServletRequest /* ------------------------------------------------------------ */ private void extractContentParameters() { - // Content cannot be encoded - if (_metaData!=null && getHttpFields().contains(HttpHeader.CONTENT_ENCODING)) - throw new BadMessageException(HttpStatus.NOT_IMPLEMENTED_501,"Unsupported Content-Encoding"); - String contentType = getContentType(); if (contentType == null || contentType.isEmpty()) _contentParameters=NO_PARAMS; else { _contentParameters=new MultiMap<>(); - contentType = HttpFields.valueParameters(contentType, null); int contentLength = getContentLength(); if (contentLength != 0 && _inputState == __NONE) { + contentType = HttpFields.valueParameters(contentType, null); if (MimeTypes.Type.FORM_ENCODED.is(contentType) && _channel.getHttpConfiguration().isFormEncodedMethod(getMethod())) { + if (_metaData!=null && getHttpFields().contains(HttpHeader.CONTENT_ENCODING)) + throw new BadMessageException(HttpStatus.NOT_IMPLEMENTED_501,"Unsupported Content-Encoding"); extractFormParameters(_contentParameters); } else if (MimeTypes.Type.MULTIPART_FORM_DATA.is(contentType) && @@ -480,6 +478,8 @@ public class Request implements HttpServletRequest { try { + if (_metaData!=null && getHttpFields().contains(HttpHeader.CONTENT_ENCODING)) + throw new BadMessageException(HttpStatus.NOT_IMPLEMENTED_501,"Unsupported Content-Encoding"); getParts(_contentParameters); } catch (IOException | ServletException e) @@ -490,7 +490,6 @@ public class Request implements HttpServletRequest } } } - } /* ------------------------------------------------------------ */ diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/RequestTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/RequestTest.java index b7add70fecf..802e7b10a28 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/RequestTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/RequestTest.java @@ -18,6 +18,7 @@ package org.eclipse.jetty.server; +import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.containsString; import static org.hamcrest.Matchers.is; import static org.hamcrest.Matchers.not; @@ -28,7 +29,6 @@ import static org.junit.jupiter.api.Assertions.assertNotNull; import static org.junit.jupiter.api.Assertions.assertNotSame; import static org.junit.jupiter.api.Assertions.assertNull; import static org.junit.jupiter.api.Assertions.assertSame; -import static org.hamcrest.MatcherAssert.assertThat; import static org.junit.jupiter.api.Assertions.assertThrows; import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.Assertions.fail; @@ -634,7 +634,7 @@ public class RequestTest }; //Send a request with encoded form content - String request="GET / HTTP/1.1\r\n"+ + String request="POST / HTTP/1.1\r\n"+ "Host: whatever\r\n"+ "Content-Type: application/x-www-form-urlencoded; charset=utf-8\n"+ "Content-Length: 10\n"+ @@ -647,6 +647,34 @@ public class RequestTest assertThat(responses,startsWith("HTTP/1.1 200")); } + + @Test + public void testEncodedNotParams() throws Exception + { + _handler._checker = new RequestTester() + { + @Override + public boolean check(HttpServletRequest request,HttpServletResponse response) + { + return request.getParameter("param")==null; + } + }; + + //Send a request with encoded form content + String request="POST / HTTP/1.1\r\n"+ + "Host: whatever\r\n"+ + "Content-Type: application/octet-stream\n"+ + "Content-Length: 10\n"+ + "Content-Encoding: gzip\n"+ + "Connection: close\n"+ + "\n"+ + "0123456789\n"; + + String responses=_connector.getResponse(request); + assertThat(responses,startsWith("HTTP/1.1 200")); + } + + @Test public void testInvalidHostHeader() throws Exception { @@ -1815,7 +1843,7 @@ public class RequestTest ((Request)request).setHandled(true); if (request.getContentLength()>0 - && !MimeTypes.Type.FORM_ENCODED.asString().equals(request.getContentType()) + && !request.getContentType().startsWith(MimeTypes.Type.FORM_ENCODED.asString()) && !request.getContentType().startsWith("multipart/form-data")) _content=IO.toString(request.getInputStream()); From b19d9b27abceb6536b879b8e6caf7a1761b18f6a Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Fri, 26 Oct 2018 12:38:11 +1000 Subject: [PATCH 106/931] use maven pmd plugin 3.11.0 Signed-off-by: olivier lamy --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index c25b37051f4..18221c13ddc 100644 --- a/pom.xml +++ b/pom.xml @@ -529,7 +529,7 @@ org.apache.maven.plugins maven-pmd-plugin - 3.10.0 + 3.11.0 org.apache.maven.plugins From 542872cd758164a51e93eb52aa07f76f34cee662 Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Mon, 29 Oct 2018 18:18:02 +1000 Subject: [PATCH 107/931] fix duplicate dependency javax.transaction-api --- examples/embedded/pom.xml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/examples/embedded/pom.xml b/examples/embedded/pom.xml index 1fcade91b31..ea373830aea 100644 --- a/examples/embedded/pom.xml +++ b/examples/embedded/pom.xml @@ -95,10 +95,6 @@ test-mock-resources ${project.version} - - javax.transaction - javax.transaction-api - org.eclipse.jetty jetty-proxy From 5d837309c322d54fc30291fe6ea13b56beab8e6f Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 30 Oct 2018 17:42:11 +0100 Subject: [PATCH 108/931] Issue #2941 - JDK 11: UnsupportedOperationException at AnnotationParser.scanClass. Downgraded OSGi ASM version to 6.2. Waiting for the SPI Fly library to support JDK 11. Signed-off-by: Simone Bordet --- jetty-osgi/pom.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/jetty-osgi/pom.xml b/jetty-osgi/pom.xml index 090cc250a42..503b4cba7e3 100644 --- a/jetty-osgi/pom.xml +++ b/jetty-osgi/pom.xml @@ -15,6 +15,7 @@ pom + 6.2 3.6.0.v20100517 3.2.100.v20100503 1.0.0-v20070606 From 31cab3dc0884e1cc26ce514aa9cdf92ae40856d8 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 30 Oct 2018 19:36:02 +0100 Subject: [PATCH 109/931] Issue #2796 - Max local stream count exceeded when request fails. Restored smaller maxContentLength to avoid that the test takes too much time and fails. Signed-off-by: Simone Bordet --- .../org/eclipse/jetty/http/client/HttpClientLoadTest.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientLoadTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientLoadTest.java index 65b72262eac..814d9bd011b 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientLoadTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientLoadTest.java @@ -19,6 +19,7 @@ package org.eclipse.jetty.http.client; import java.io.IOException; +import java.io.InterruptedIOException; import java.nio.ByteBuffer; import java.util.ArrayList; import java.util.List; @@ -199,7 +200,7 @@ public class HttpClientLoadTest extends AbstractTest Date: Wed, 31 Oct 2018 09:24:20 +1000 Subject: [PATCH 110/931] *issue #2923 add LICENSE and NOTICE files (#2940) *remove html license version * use org.eclipse.jetty.toolchain:jetty-artifact-remote-resources:1.2 released version Signed-off-by: olivier lamy --- LICENSE | 414 ++++++++++++++++++++++++++ LICENSE-eplv10-aslv20.html | 576 ------------------------------------- pom.xml | 2 +- 3 files changed, 415 insertions(+), 577 deletions(-) create mode 100644 LICENSE delete mode 100644 LICENSE-eplv10-aslv20.html diff --git a/LICENSE b/LICENSE new file mode 100644 index 00000000000..46f4f252464 --- /dev/null +++ b/LICENSE @@ -0,0 +1,414 @@ +This program and the accompanying materials are made available under the +terms of the Eclipse Public License 2.0 which is available at +http://www.eclipse.org/legal/epl-2.0, or the Apache Software License +2.0 which is available at https://www.apache.org/licenses/LICENSE-2.0. + + + +Eclipse Public License - v 1.0 + +THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC +LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM +CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT. + +1. DEFINITIONS + +"Contribution" means: + +a) in the case of the initial Contributor, the initial code and documentation + distributed under this Agreement, and +b) in the case of each subsequent Contributor: + i) changes to the Program, and + ii) additions to the Program; + + where such changes and/or additions to the Program originate from and are + distributed by that particular Contributor. A Contribution 'originates' + from a Contributor if it was added to the Program by such Contributor + itself or anyone acting on such Contributor's behalf. Contributions do not + include additions to the Program which: (i) are separate modules of + software distributed in conjunction with the Program under their own + license agreement, and (ii) are not derivative works of the Program. + +"Contributor" means any person or entity that distributes the Program. + +"Licensed Patents" mean patent claims licensable by a Contributor which are +necessarily infringed by the use or sale of its Contribution alone or when +combined with the Program. + +"Program" means the Contributions distributed in accordance with this +Agreement. + +"Recipient" means anyone who receives the Program under this Agreement, +including all Contributors. + +2. GRANT OF RIGHTS + a) Subject to the terms of this Agreement, each Contributor hereby grants + Recipient a non-exclusive, worldwide, royalty-free copyright license to + reproduce, prepare derivative works of, publicly display, publicly + perform, distribute and sublicense the Contribution of such Contributor, + if any, and such derivative works, in source code and object code form. + b) Subject to the terms of this Agreement, each Contributor hereby grants + Recipient a non-exclusive, worldwide, royalty-free patent license under + Licensed Patents to make, use, sell, offer to sell, import and otherwise + transfer the Contribution of such Contributor, if any, in source code and + object code form. This patent license shall apply to the combination of + the Contribution and the Program if, at the time the Contribution is + added by the Contributor, such addition of the Contribution causes such + combination to be covered by the Licensed Patents. The patent license + shall not apply to any other combinations which include the Contribution. + No hardware per se is licensed hereunder. + c) Recipient understands that although each Contributor grants the licenses + to its Contributions set forth herein, no assurances are provided by any + Contributor that the Program does not infringe the patent or other + intellectual property rights of any other entity. Each Contributor + disclaims any liability to Recipient for claims brought by any other + entity based on infringement of intellectual property rights or + otherwise. As a condition to exercising the rights and licenses granted + hereunder, each Recipient hereby assumes sole responsibility to secure + any other intellectual property rights needed, if any. For example, if a + third party patent license is required to allow Recipient to distribute + the Program, it is Recipient's responsibility to acquire that license + before distributing the Program. + d) Each Contributor represents that to its knowledge it has sufficient + copyright rights in its Contribution, if any, to grant the copyright + license set forth in this Agreement. + +3. REQUIREMENTS + +A Contributor may choose to distribute the Program in object code form under +its own license agreement, provided that: + + a) it complies with the terms and conditions of this Agreement; and + b) its license agreement: + i) effectively disclaims on behalf of all Contributors all warranties + and conditions, express and implied, including warranties or + conditions of title and non-infringement, and implied warranties or + conditions of merchantability and fitness for a particular purpose; + ii) effectively excludes on behalf of all Contributors all liability for + damages, including direct, indirect, special, incidental and + consequential damages, such as lost profits; + iii) states that any provisions which differ from this Agreement are + offered by that Contributor alone and not by any other party; and + iv) states that source code for the Program is available from such + Contributor, and informs licensees how to obtain it in a reasonable + manner on or through a medium customarily used for software exchange. + +When the Program is made available in source code form: + + a) it must be made available under this Agreement; and + b) a copy of this Agreement must be included with each copy of the Program. + Contributors may not remove or alter any copyright notices contained + within the Program. + +Each Contributor must identify itself as the originator of its Contribution, +if +any, in a manner that reasonably allows subsequent Recipients to identify the +originator of the Contribution. + +4. COMMERCIAL DISTRIBUTION + +Commercial distributors of software may accept certain responsibilities with +respect to end users, business partners and the like. While this license is +intended to facilitate the commercial use of the Program, the Contributor who +includes the Program in a commercial product offering should do so in a manner +which does not create potential liability for other Contributors. Therefore, +if a Contributor includes the Program in a commercial product offering, such +Contributor ("Commercial Contributor") hereby agrees to defend and indemnify +every other Contributor ("Indemnified Contributor") against any losses, +damages and costs (collectively "Losses") arising from claims, lawsuits and +other legal actions brought by a third party against the Indemnified +Contributor to the extent caused by the acts or omissions of such Commercial +Contributor in connection with its distribution of the Program in a commercial +product offering. The obligations in this section do not apply to any claims +or Losses relating to any actual or alleged intellectual property +infringement. In order to qualify, an Indemnified Contributor must: +a) promptly notify the Commercial Contributor in writing of such claim, and +b) allow the Commercial Contributor to control, and cooperate with the +Commercial Contributor in, the defense and any related settlement +negotiations. The Indemnified Contributor may participate in any such claim at +its own expense. + +For example, a Contributor might include the Program in a commercial product +offering, Product X. That Contributor is then a Commercial Contributor. If +that Commercial Contributor then makes performance claims, or offers +warranties related to Product X, those performance claims and warranties are +such Commercial Contributor's responsibility alone. Under this section, the +Commercial Contributor would have to defend claims against the other +Contributors related to those performance claims and warranties, and if a +court requires any other Contributor to pay any damages as a result, the +Commercial Contributor must pay those damages. + +5. NO WARRANTY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR +IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, +NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each +Recipient is solely responsible for determining the appropriateness of using +and distributing the Program and assumes all risks associated with its +exercise of rights under this Agreement , including but not limited to the +risks and costs of program errors, compliance with applicable laws, damage to +or loss of data, programs or equipment, and unavailability or interruption of +operations. + +6. DISCLAIMER OF LIABILITY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY +CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION +LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE +EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY +OF SUCH DAMAGES. + +7. GENERAL + +If any provision of this Agreement is invalid or unenforceable under +applicable law, it shall not affect the validity or enforceability of the +remainder of the terms of this Agreement, and without further action by the +parties hereto, such provision shall be reformed to the minimum extent +necessary to make such provision valid and enforceable. + +If Recipient institutes patent litigation against any entity (including a +cross-claim or counterclaim in a lawsuit) alleging that the Program itself +(excluding combinations of the Program with other software or hardware) +infringes such Recipient's patent(s), then such Recipient's rights granted +under Section 2(b) shall terminate as of the date such litigation is filed. + +All Recipient's rights under this Agreement shall terminate if it fails to +comply with any of the material terms or conditions of this Agreement and does +not cure such failure in a reasonable period of time after becoming aware of +such noncompliance. If all Recipient's rights under this Agreement terminate, +Recipient agrees to cease use and distribution of the Program as soon as +reasonably practicable. However, Recipient's obligations under this Agreement +and any licenses granted by Recipient relating to the Program shall continue +and survive. + +Everyone is permitted to copy and distribute copies of this Agreement, but in +order to avoid inconsistency the Agreement is copyrighted and may only be +modified in the following manner. The Agreement Steward reserves the right to +publish new versions (including revisions) of this Agreement from time to +time. No one other than the Agreement Steward has the right to modify this +Agreement. The Eclipse Foundation is the initial Agreement Steward. The +Eclipse Foundation may assign the responsibility to serve as the Agreement +Steward to a suitable separate entity. Each new version of the Agreement will +be given a distinguishing version number. The Program (including +Contributions) may always be distributed subject to the version of the +Agreement under which it was received. In addition, after a new version of the +Agreement is published, Contributor may elect to distribute the Program +(including its Contributions) under the new version. Except as expressly +stated in Sections 2(a) and 2(b) above, Recipient receives no rights or +licenses to the intellectual property of any Contributor under this Agreement, +whether expressly, by implication, estoppel or otherwise. All rights in the +Program not expressly granted under this Agreement are reserved. + +This Agreement is governed by the laws of the State of New York and the +intellectual property laws of the United States of America. No party to this +Agreement will bring a legal action under this Agreement more than one year +after the cause of action arose. Each party waives its rights to a jury trial in +any resulting litigation. + + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/LICENSE-eplv10-aslv20.html b/LICENSE-eplv10-aslv20.html deleted file mode 100644 index 48addaaddf7..00000000000 --- a/LICENSE-eplv10-aslv20.html +++ /dev/null @@ -1,576 +0,0 @@ - - - - - - - - -Eclipse Public License - Version 1.0 / Apache License - Version 2.0 - - - - -
- -

Eclipse Public License - v 1.0 -

- -

THE ACCOMPANYING PROGRAM IS PROVIDED UNDER -THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE, -REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE -OF THIS AGREEMENT.

- -

1. DEFINITIONS

- -

"Contribution" means:

- -

a) -in the case of the initial Contributor, the initial code and documentation -distributed under this Agreement, and
-b) in the case of each subsequent Contributor:

- -

i) -changes to the Program, and

- -

ii) -additions to the Program;

- -

where -such changes and/or additions to the Program originate from and are distributed -by that particular Contributor. A Contribution 'originates' from a Contributor -if it was added to the Program by such Contributor itself or anyone acting on -such Contributor's behalf. Contributions do not include additions to the -Program which: (i) are separate modules of software distributed in conjunction -with the Program under their own license agreement, and (ii) are not derivative -works of the Program.

- -

"Contributor" means any person or -entity that distributes the Program.

- -

"Licensed Patents " mean patent -claims licensable by a Contributor which are necessarily infringed by the use -or sale of its Contribution alone or when combined with the Program.

- -

"Program" means the Contributions -distributed in accordance with this Agreement.

- -

"Recipient" means anyone who -receives the Program under this Agreement, including all Contributors.

- -

2. GRANT OF RIGHTS

- -

a) -Subject to the terms of this Agreement, each Contributor hereby grants Recipient -a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare derivative works of, publicly -display, publicly perform, distribute and sublicense the Contribution of such -Contributor, if any, and such derivative works, in source code and object code -form.

- -

b) -Subject to the terms of this Agreement, each Contributor hereby grants -Recipient a non-exclusive, worldwide, royalty-free -patent license under Licensed Patents to make, use, sell, offer to sell, import -and otherwise transfer the Contribution of such Contributor, if any, in source -code and object code form. This patent license shall apply to the combination -of the Contribution and the Program if, at the time the Contribution is added -by the Contributor, such addition of the Contribution causes such combination -to be covered by the Licensed Patents. The patent license shall not apply to -any other combinations which include the Contribution. No hardware per se is -licensed hereunder.

- -

c) -Recipient understands that although each Contributor grants the licenses to its -Contributions set forth herein, no assurances are provided by any Contributor -that the Program does not infringe the patent or other intellectual property -rights of any other entity. Each Contributor disclaims any liability to Recipient -for claims brought by any other entity based on infringement of intellectual -property rights or otherwise. As a condition to exercising the rights and -licenses granted hereunder, each Recipient hereby assumes sole responsibility -to secure any other intellectual property rights needed, if any. For example, -if a third party patent license is required to allow Recipient to distribute -the Program, it is Recipient's responsibility to acquire that license before -distributing the Program.

- -

d) -Each Contributor represents that to its knowledge it has sufficient copyright -rights in its Contribution, if any, to grant the copyright license set forth in -this Agreement.

- -

3. REQUIREMENTS

- -

A Contributor may choose to distribute the -Program in object code form under its own license agreement, provided that: -

- -

a) -it complies with the terms and conditions of this Agreement; and

- -

b) -its license agreement:

- -

i) -effectively disclaims on behalf of all Contributors all warranties and -conditions, express and implied, including warranties or conditions of title -and non-infringement, and implied warranties or conditions of merchantability -and fitness for a particular purpose;

- -

ii) -effectively excludes on behalf of all Contributors all liability for damages, -including direct, indirect, special, incidental and consequential damages, such -as lost profits;

- -

iii) -states that any provisions which differ from this Agreement are offered by that -Contributor alone and not by any other party; and

- -

iv) -states that source code for the Program is available from such Contributor, and -informs licensees how to obtain it in a reasonable manner on or through a -medium customarily used for software exchange.

- -

When the Program is made available in source -code form:

- -

a) -it must be made available under this Agreement; and

- -

b) a -copy of this Agreement must be included with each copy of the Program.

- -

Contributors may not remove or alter any -copyright notices contained within the Program.

- -

Each Contributor must identify itself as the -originator of its Contribution, if any, in a manner that reasonably allows -subsequent Recipients to identify the originator of the Contribution.

- -

4. COMMERCIAL DISTRIBUTION

- -

Commercial distributors of software may -accept certain responsibilities with respect to end users, business partners -and the like. While this license is intended to facilitate the commercial use -of the Program, the Contributor who includes the Program in a commercial -product offering should do so in a manner which does not create potential -liability for other Contributors. Therefore, if a Contributor includes the -Program in a commercial product offering, such Contributor ("Commercial -Contributor") hereby agrees to defend and indemnify every other -Contributor ("Indemnified Contributor") against any losses, damages and -costs (collectively "Losses") arising from claims, lawsuits and other -legal actions brought by a third party against the Indemnified Contributor to -the extent caused by the acts or omissions of such Commercial Contributor in -connection with its distribution of the Program in a commercial product -offering. The obligations in this section do not apply to any claims or Losses -relating to any actual or alleged intellectual property infringement. In order -to qualify, an Indemnified Contributor must: a) promptly notify the Commercial -Contributor in writing of such claim, and b) allow the Commercial Contributor -to control, and cooperate with the Commercial Contributor in, the defense and -any related settlement negotiations. The Indemnified Contributor may participate -in any such claim at its own expense.

- -

For example, a Contributor might include the -Program in a commercial product offering, Product X. That Contributor is then a -Commercial Contributor. If that Commercial Contributor then makes performance -claims, or offers warranties related to Product X, those performance claims and -warranties are such Commercial Contributor's responsibility alone. Under this -section, the Commercial Contributor would have to defend claims against the -other Contributors related to those performance claims and warranties, and if a -court requires any other Contributor to pay any damages as a result, the -Commercial Contributor must pay those damages.

- -

5. NO WARRANTY

- -

EXCEPT AS EXPRESSLY SET FORTH IN THIS -AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT -WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, -WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, -MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely -responsible for determining the appropriateness of using and distributing the -Program and assumes all risks associated with its exercise of rights under this -Agreement , including but not limited to the risks and costs of program errors, -compliance with applicable laws, damage to or loss of data, programs or -equipment, and unavailability or interruption of operations.

- -

6. DISCLAIMER OF LIABILITY

- -

EXCEPT AS EXPRESSLY SET FORTH IN THIS -AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR -ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY -OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF -THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF -THE POSSIBILITY OF SUCH DAMAGES.

- -

7. GENERAL

- -

If any provision of this Agreement is invalid -or unenforceable under applicable law, it shall not affect the validity or -enforceability of the remainder of the terms of this Agreement, and without -further action by the parties hereto, such provision shall be reformed to the -minimum extent necessary to make such provision valid and enforceable.

- -

If Recipient institutes patent litigation -against any entity (including a cross-claim or counterclaim in a lawsuit) -alleging that the Program itself (excluding combinations of the Program with -other software or hardware) infringes such Recipient's patent(s), then such -Recipient's rights granted under Section 2(b) shall terminate as of the date -such litigation is filed.

- -

All Recipient's rights under this Agreement -shall terminate if it fails to comply with any of the material terms or -conditions of this Agreement and does not cure such failure in a reasonable -period of time after becoming aware of such noncompliance. If all Recipient's -rights under this Agreement terminate, Recipient agrees to cease use and -distribution of the Program as soon as reasonably practicable. However, -Recipient's obligations under this Agreement and any licenses granted by -Recipient relating to the Program shall continue and survive.

- -

Everyone is permitted to copy and distribute -copies of this Agreement, but in order to avoid inconsistency the Agreement is -copyrighted and may only be modified in the following manner. The Agreement -Steward reserves the right to publish new versions (including revisions) of -this Agreement from time to time. No one other than the Agreement Steward has -the right to modify this Agreement. The Eclipse Foundation is the initial -Agreement Steward. The Eclipse Foundation may assign the responsibility to -serve as the Agreement Steward to a suitable separate entity. Each new version -of the Agreement will be given a distinguishing version number. The Program -(including Contributions) may always be distributed subject to the version of -the Agreement under which it was received. In addition, after a new version of -the Agreement is published, Contributor may elect to distribute the Program -(including its Contributions) under the new version. Except as expressly stated -in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to -the intellectual property of any Contributor under this Agreement, whether -expressly, by implication, estoppel or otherwise. All rights in the Program not -expressly granted under this Agreement are reserved.

- -

This Agreement is governed by the laws of the -State of New York and the intellectual property laws of the United States of -America. No party to this Agreement will bring a legal action under this -Agreement more than one year after the cause of action arose. Each party waives -its rights to a jury trial in any resulting litigation.

- -

 

- -
- -
- -

Apache License
-Version 2.0, January 2004
-http://www.apache.org/licenses/
-

-

TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

-

1. Definitions.

-

- "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document.

-

- "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License.

-

- "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity.

-

- "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License.

-

- "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files.

-

- "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types.

-

- "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below).

-

- "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof.

-

- "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution."

-

- "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work.

- -

2. Grant of Copyright License.

-

-Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form.

- - -

3. Grant of Patent License.

- -

- Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. -

-

- 4. Redistribution. -

- -

You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions:

-

    -
  • - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and

    -

  • -
  • - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and

    -

  • - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and

    - -

  • - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License.

    -

  • -
-

- -

- You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. -

-

- 5. Submission of Contributions. -

- -

Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. -

-

- 6. Trademarks. -

- -

This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. -

-

- 7. Disclaimer of Warranty. -

- -

Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. -

-

- 8. Limitation of Liability. -

- -

In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. -

-

- 9. Accepting Warranty or Additional Liability. -

-

While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. -

- -

- END OF TERMS AND CONDITIONS -

- -

- APPENDIX: How to apply the Apache License to your work. -

- -

- To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. -

- -

- Copyright [yyyy] [name of copyright owner] -

- -

- Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at -

- -

- http://www.apache.org/licenses/LICENSE-2.0 -

- -

- Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -

- -
- \ No newline at end of file diff --git a/pom.xml b/pom.xml index 18221c13ddc..28d30d6cda2 100644 --- a/pom.xml +++ b/pom.xml @@ -285,7 +285,7 @@ - org.eclipse.jetty.toolchain:jetty-artifact-remote-resources:1.1 + org.eclipse.jetty.toolchain:jetty-artifact-remote-resources:1.2 From 94bfeacba5851f8dfd541b22bdfc6bd818d055fb Mon Sep 17 00:00:00 2001 From: WalkerWatch Date: Wed, 31 Oct 2018 16:56:25 -0400 Subject: [PATCH 111/931] Added note on stopping the server. Resolves #3033 --- .../asciidoc/quick-start/getting-started/jetty-running.adoc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-running.adoc b/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-running.adoc index 4e497fe43fc..de8808a3193 100644 --- a/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-running.adoc +++ b/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-running.adoc @@ -38,6 +38,8 @@ $ java -jar start.jar You can point a browser at this server at link:http://localhost:8080[]. However, as there are no webapps deployed in the `$JETTY_HOME` directory, you will see a 404 error page served by Jetty. +To stop the server, press `CTRL` + `c` or `CTRL` + `z` in your terminal. + *Note* the `HomeBaseWarning` - it is *not* recommended to run Jetty from the `$JETTY_HOME` directory. Instead, see how to link:#creating-jetty-base[create a Jetty Base] below. From 392260a2323c4202a34103fddd159d804dc85cb7 Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Thu, 1 Nov 2018 12:38:48 +1000 Subject: [PATCH 112/931] maven-plugin-plugin 3.6.0 Signed-off-by: olivier lamy --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 28d30d6cda2..15998e537a1 100644 --- a/pom.xml +++ b/pom.xml @@ -524,7 +524,7 @@ org.apache.maven.plugins maven-plugin-plugin - 3.5.2 + 3.6.0 org.apache.maven.plugins From 8dcd7e44d8e0a9042d5e1103715992774e0ae6fa Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Thu, 1 Nov 2018 11:43:11 +0100 Subject: [PATCH 113/931] Allows commas to separate cookies in RFC2965 compliance mode (#3045) * Allows commas to separate cookies in RFC2965 compliance mode * cleanup after review Signed-off-by: Greg Wilkins * revert accidental change Signed-off-by: Greg Wilkins --- .../eclipse/jetty/server/CookieCutter.java | 242 ++++++++---------- .../org/eclipse/jetty/server/Request.java | 13 +- .../jetty/server/CookieCutterTest.java | 13 +- .../server/CookieCutter_LenientTest.java | 7 +- 4 files changed, 125 insertions(+), 150 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/CookieCutter.java b/jetty-server/src/main/java/org/eclipse/jetty/server/CookieCutter.java index 2a186b18026..d9e7971df05 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/CookieCutter.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/CookieCutter.java @@ -129,7 +129,6 @@ public class CookieCutter { // Parse the header String name = null; - String value = null; Cookie cookie = null; @@ -139,11 +138,11 @@ public class CookieCutter boolean escaped=false; int tokenstart=-1; int tokenend=-1; - for (int i = 0, length = hdr.length(), last=length-1; i < length; i++) + for (int i = 0, length = hdr.length(); i <= length; i++) { - char c = hdr.charAt(i); + char c = i==length?0:hdr.charAt(i); - // System.err.printf("i=%d c=%s v=%b q=%b e=%b u=%s s=%d e=%d%n" ,i,""+c,invalue,inQuoted,escaped,unquoted,tokenstart,tokenend); + // System.err.printf("i=%d/%d c=%s v=%b q=%b/%b e=%b u=%s s=%d e=%d \t%s=%s%n" ,i,length,c==0?"|":(""+c),invalue,inQuoted,quoted,escaped,unquoted,tokenstart,tokenend,name,value); // Handle quoted values for name or value if (inQuoted) @@ -151,52 +150,39 @@ public class CookieCutter if (escaped) { escaped=false; - unquoted.append(c); + if (c>0) + unquoted.append(c); + else + { + unquoted.setLength(0); + inQuoted = false; + i--; + } continue; } switch (c) { case '"': - inQuoted=false; - if (i==last) - { - value = unquoted.toString(); - unquoted.setLength(0); - } - else - { - quoted=true; - tokenstart=i; - tokenend=-1; - } + inQuoted = false; + quoted = true; + tokenstart = i; + tokenend = -1; break; - + case '\\': - if (i==last) - { - unquoted.setLength(0); - inQuoted = false; - i--; - } - else - { - escaped=true; - } + escaped = true; + continue; + + case 0: + // unterminated quote, let's ignore quotes + unquoted.setLength(0); + inQuoted = false; + i--; continue; default: - if (i==last) - { - // unterminated quote, let's ignore quotes - unquoted.setLength(0); - inQuoted = false; - i--; - } - else - { - unquoted.append(c); - } + unquoted.append(c); continue; } } @@ -211,22 +197,88 @@ public class CookieCutter case ' ': case '\t': break; - + + case ',': + if (_compliance!=CookieCompliance.RFC2965) + { + if (quoted) + { + // must have been a bad internal quote. let's fix as best we can + unquoted.append(hdr,tokenstart,i--); + inQuoted = true; + quoted = false; + continue; + } + if (tokenstart<0) + tokenstart = i; + tokenend=i; + continue; + } + // fall through + case 0: case ';': + { + String value; + if (quoted) { value = unquoted.toString(); unquoted.setLength(0); quoted = false; } - else if(tokenstart>=0 && tokenend>=0) - value = hdr.substring(tokenstart, tokenend+1); + else if(tokenstart>=0) + value = tokenend>=tokenstart?hdr.substring(tokenstart, tokenend+1):hdr.substring(tokenstart); else value = ""; - + + try + { + if (name.startsWith("$")) + { + if (_compliance==CookieCompliance.RFC2965) + { + String lowercaseName = name.toLowerCase(Locale.ENGLISH); + switch(lowercaseName) + { + case "$path": + if (cookie!=null) + cookie.setPath(value); + break; + case "$domain": + if (cookie!=null) + cookie.setDomain(value); + break; + case "$port": + if (cookie!=null) + cookie.setComment("$port="+value); + break; + case "$version": + version = Integer.parseInt(value); + break; + default: + break; + } + } + } + else + { + cookie = new Cookie(name, value); + if (version > 0) + cookie.setVersion(version); + cookies.add(cookie); + } + } + catch (Exception e) + { + LOG.debug(e); + } + + name = null; tokenstart = -1; invalue=false; + break; + } case '"': if (tokenstart<0) @@ -243,20 +295,14 @@ public class CookieCutter if (quoted) { // must have been a bad internal quote. let's fix as best we can - unquoted.append(hdr.substring(tokenstart,i)); + unquoted.append(hdr,tokenstart,i--); inQuoted = true; quoted = false; - i--; continue; } if (tokenstart<0) - tokenstart=i; + tokenstart = i; tokenend=i; - if (i==last) - { - value = hdr.substring(tokenstart, tokenend+1); - break; - } continue; } } @@ -269,21 +315,6 @@ public class CookieCutter case '\t': continue; - case ';': - if (quoted) - { - name = unquoted.toString(); - unquoted.setLength(0); - quoted = false; - } - else if(tokenstart>=0 && tokenend>=0) - { - name = hdr.substring(tokenstart, tokenend+1); - } - - tokenstart = -1; - break; - case '=': if (quoted) { @@ -291,98 +322,29 @@ public class CookieCutter unquoted.setLength(0); quoted = false; } - else if(tokenstart>=0 && tokenend>=0) - { - name = hdr.substring(tokenstart, tokenend+1); - } + else if(tokenstart>=0) + name = tokenend>=tokenstart?hdr.substring(tokenstart, tokenend+1):hdr.substring(tokenstart); + tokenstart = -1; - invalue=true; + invalue = true; break; default: if (quoted) { // must have been a bad internal quote. let's fix as best we can - unquoted.append(hdr.substring(tokenstart,i)); + unquoted.append(hdr,tokenstart,i--); inQuoted = true; quoted = false; - i--; continue; } if (tokenstart<0) tokenstart=i; tokenend=i; - if (i==last) - break; continue; } } } - - if (invalue && i==last && value==null) - { - if (quoted) - { - value = unquoted.toString(); - unquoted.setLength(0); - quoted = false; - } - else if(tokenstart>=0 && tokenend>=0) - { - value = hdr.substring(tokenstart, tokenend+1); - } - else - value = ""; - } - - // If after processing the current character we have a value and a name, then it is a cookie - if (name!=null && value!=null) - { - try - { - if (name.startsWith("$")) - { - String lowercaseName = name.toLowerCase(Locale.ENGLISH); - if (_compliance==CookieCompliance.RFC6265) - { - // Ignore - } - else if ("$path".equals(lowercaseName)) - { - if (cookie!=null) - cookie.setPath(value); - } - else if ("$domain".equals(lowercaseName)) - { - if (cookie!=null) - cookie.setDomain(value); - } - else if ("$port".equals(lowercaseName)) - { - if (cookie!=null) - cookie.setComment("$port="+value); - } - else if ("$version".equals(lowercaseName)) - { - version = Integer.parseInt(value); - } - } - else - { - cookie = new Cookie(name, value); - if (version > 0) - cookie.setVersion(version); - cookies.add(cookie); - } - } - catch (Exception e) - { - LOG.debug(e); - } - - name = null; - value = null; - } } } diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java index ac5198063a5..b13d1cc0c16 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java @@ -764,12 +764,15 @@ public class Request implements HttpServletRequest } _cookiesExtracted = true; - - for (String c : metadata.getFields().getValuesList(HttpHeader.COOKIE)) + + for (HttpField field : metadata.getFields()) { - if (_cookies == null) - _cookies = new CookieCutter(getHttpChannel().getHttpConfiguration().getCookieCompliance()); - _cookies.addCookieField(c); + if (field.getHeader()==HttpHeader.COOKIE) + { + if (_cookies==null) + _cookies = new CookieCutter(getHttpChannel().getHttpConfiguration().getCookieCompliance()); + _cookies.addCookieField(field.getValue()); + } } //Javadoc for Request.getCookies() stipulates null for no cookies diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/CookieCutterTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/CookieCutterTest.java index 69962f57967..8419d9462f5 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/CookieCutterTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/CookieCutterTest.java @@ -139,17 +139,22 @@ public class CookieCutterTest * Example from RFC2965 */ @Test - @Disabled("comma separation no longer supported by new RFC6265") public void testRFC2965_CookieSpoofingExample() { String rawCookie = "$Version=\"1\"; session_id=\"1234\", " + "$Version=\"1\"; session_id=\"1111\"; $Domain=\".cracker.edu\""; - - Cookie cookies[] = parseCookieHeaders(CookieCompliance.RFC6265,rawCookie); - + + + Cookie cookies[] = parseCookieHeaders(CookieCompliance.RFC2965,rawCookie); + assertThat("Cookies.length", cookies.length, is(2)); assertCookie("Cookies[0]", cookies[0], "session_id", "1234", 1, null); assertCookie("Cookies[1]", cookies[1], "session_id", "1111", 1, null); + + cookies = parseCookieHeaders(CookieCompliance.RFC6265,rawCookie); + assertThat("Cookies.length", cookies.length, is(2)); + assertCookie("Cookies[0]", cookies[0], "session_id", "1234\", $Version=\"1", 0, null); + assertCookie("Cookies[1]", cookies[1], "session_id", "1111", 0, null); } /** diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/CookieCutter_LenientTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/CookieCutter_LenientTest.java index e22f3961a06..906a0a22b06 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/CookieCutter_LenientTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/CookieCutter_LenientTest.java @@ -144,7 +144,12 @@ public class CookieCutter_LenientTest Arguments.of("GAPS=1:A1aaaAaAA1aaAAAaa1a11a:aAaaAa-aaA1-", "GAPS", "1:A1aaaAaAA1aaAAAaa1a11a:aAaaAa-aaA1-"), // Strong abuse of cookie spec (lots of tspecials) - Arguments.of("$Version=0; rToken=F_TOKEN''!--\"=&{()}", "rToken", "F_TOKEN''!--\"=&{()}") + Arguments.of("$Version=0; rToken=F_TOKEN''!--\"=&{()}", "rToken", "F_TOKEN''!--\"=&{()}"), + + // Commas that were not commas + Arguments.of("name=foo,bar","name","foo,bar"), + Arguments.of("name=foo , bar","name","foo , bar"), + Arguments.of("name=foo , bar, bob","name","foo , bar, bob") ); } From 7b8bda80705ad0f61e4d9a7869b9088f590a4316 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Thu, 1 Nov 2018 10:13:16 -0500 Subject: [PATCH 114/931] Issue #3051 - New Simplified Jenkinsfile Signed-off-by: Joakim Erdfelt --- Jenkinsfile | 182 ++++++++++++++++++---------------------------------- 1 file changed, 61 insertions(+), 121 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 9ad5fa93007..b7a4e84d8e8 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,19 +1,18 @@ #!groovy -// in case of change update method isMainBuild -def jdks = ["jdk8","jdk9","jdk10","jdk11"] +def mainJdk = "jdk8" +def jdks = [mainJdk, "jdk9", "jdk10", "jdk11"] def oss = ["linux"] def builds = [:] for (def os in oss) { for (def jdk in jdks) { - builds[os+"_"+jdk] = getFullBuild( jdk, os ) + builds[os+"_"+jdk] = getFullBuild( jdk, os, mainJdk == jdk ) } } parallel builds - -def getFullBuild(jdk, os) { +def getFullBuild(jdk, os, mainJdk) { return { node(os) { // System Dependent Locations @@ -22,70 +21,10 @@ def getFullBuild(jdk, os) { def settingsName = 'oss-settings.xml' def mavenOpts = '-Xms1g -Xmx4g -Djava.awt.headless=true' - try { - stage("Build ${jdk}/${os}") { - timeout(time: 90, unit: 'MINUTES') { - // Run test phase / ignore test failures - checkout scm - withMaven( - maven: mvnName, - jdk: "$jdk", - publisherStrategy: 'EXPLICIT', - globalMavenSettingsConfig: settingsName, - //options: [invokerPublisher(disabled: false)], - mavenOpts: mavenOpts, - mavenLocalRepo: localRepo) { - sh "mvn -V -B install -Dmaven.test.failure.ignore=true -e -Pmongodb -T3 -Djetty.testtracker.log=true -Dunix.socket.tmp="+env.JENKINS_HOME - sh "mvn -V -B javadoc:javadoc -T6 -e" - } - // withMaven doesn't label.. - // Report failures in the jenkins UI - junit testResults:'**/target/surefire-reports/TEST-*.xml,**/target/failsafe-reports/TEST-*.xml' - consoleParsers = [[parserName: 'JavaDoc'], - [parserName: 'JavaC']]; - if (isMainBuild( jdk )) { - // Collect up the jacoco execution results - def jacocoExcludes = - // build tools - "**/org/eclipse/jetty/ant/**" + ",**/org/eclipse/jetty/maven/**" + - ",**/org/eclipse/jetty/jspc/**" + - // example code / documentation - ",**/org/eclipse/jetty/embedded/**" + ",**/org/eclipse/jetty/asyncrest/**" + - ",**/org/eclipse/jetty/demo/**" + - // special environments / late integrations - ",**/org/eclipse/jetty/gcloud/**" + ",**/org/eclipse/jetty/infinispan/**" + - ",**/org/eclipse/jetty/osgi/**" + ",**/org/eclipse/jetty/spring/**" + - ",**/org/eclipse/jetty/http/spi/**" + - // test classes - ",**/org/eclipse/jetty/tests/**" + ",**/org/eclipse/jetty/test/**"; - jacoco inclusionPattern: '**/org/eclipse/jetty/**/*.class', - exclusionPattern: jacocoExcludes, - execPattern : '**/target/jacoco.exec', - classPattern : '**/target/classes', - sourcePattern : '**/src/main/java' - consoleParsers = [[parserName: 'Maven'], - [parserName: 'JavaDoc'], - [parserName: 'JavaC']]; - step([$class: 'MavenInvokerRecorder', reportsFilenamePattern: "**/target/invoker-reports/BUILD*.xml", - invokerBuildDir: "**/target/its"]) - } - - // Report on Maven and Javadoc warnings - step( [$class : 'WarningsPublisher', - consoleParsers: consoleParsers] ) - } - if(isUnstable()) { - notifyBuild("Unstable / Test Errors", jdk) - } - } - } catch(Exception e) { - notifyBuild("Test Failure", jdk) - throw e - } - - try - { - stage ("Compact3 - ${jdk}") { + stage("Build / Test - $jdk") { + timeout(time: 120, unit: 'MINUTES') { + // Checkout + checkout scm withMaven( maven: mvnName, jdk: "$jdk", @@ -93,63 +32,64 @@ def getFullBuild(jdk, os) { globalMavenSettingsConfig: settingsName, mavenOpts: mavenOpts, mavenLocalRepo: localRepo) { - sh "mvn -f aggregates/jetty-all-compact3 -V -B -Pcompact3 clean install -T6" + // Testing + sh "mvn -V -B install -Dmaven.test.failure.ignore=true -T5 -e -Djetty.testtracker.log=true -Pmongodb -Dunix.socket.tmp=" + env.JENKINS_HOME + // Javadoc only + sh "mvn -V -B javadoc:javadoc -T6 -e -Dmaven.test.failure.ignore=false" } } - } catch(Exception e) { - notifyBuild("Compact3 Failure", jdk) - throw e + + // Report failures in the jenkins UI + junit testResults: '**/target/surefire-reports/TEST-*.xml,**/target/failsafe-reports/TEST-*.xml' + consoleParsers = [[parserName: 'JavaDoc'], + [parserName: 'JavaC']] + + if (mainJdk) { + // Collect up the jacoco execution results + def jacocoExcludes = + // build tools + "**/org/eclipse/jetty/ant/**" + ",**/org/eclipse/jetty/maven/**" + + ",**/org/eclipse/jetty/jspc/**" + + // example code / documentation + ",**/org/eclipse/jetty/embedded/**" + ",**/org/eclipse/jetty/asyncrest/**" + + ",**/org/eclipse/jetty/demo/**" + + // special environments / late integrations + ",**/org/eclipse/jetty/gcloud/**" + ",**/org/eclipse/jetty/infinispan/**" + + ",**/org/eclipse/jetty/osgi/**" + ",**/org/eclipse/jetty/spring/**" + + ",**/org/eclipse/jetty/http/spi/**" + + // test classes + ",**/org/eclipse/jetty/tests/**" + ",**/org/eclipse/jetty/test/**" + jacoco inclusionPattern: '**/org/eclipse/jetty/**/*.class', + exclusionPattern: jacocoExcludes, + execPattern: '**/target/jacoco.exec', + classPattern: '**/target/classes', + sourcePattern: '**/src/main/java' + consoleParsers = [[parserName: 'Maven'], + [parserName: 'JavaDoc'], + [parserName: 'JavaC']] + + step([$class: 'MavenInvokerRecorder', reportsFilenamePattern: "**/target/invoker-reports/BUILD*.xml", + invokerBuildDir: "**/target/its"]) + } + + // Report on Maven and Javadoc warnings + step([$class : 'WarningsPublisher', + consoleParsers: consoleParsers]) } + stage ("Compact3 - ${jdk}") { + withMaven( + maven: mvnName, + jdk: "$jdk", + publisherStrategy: 'EXPLICIT', + globalMavenSettingsConfig: settingsName, + mavenOpts: mavenOpts, + mavenLocalRepo: localRepo) { + sh "mvn -f aggregates/jetty-all-compact3 -V -B -Pcompact3 clean install -T6" + } + } } } } -def isMainBuild(jdk) { - return jdk == "jdk8" -} - - -// True if this build is part of the "active" branches -// for Jetty. -def isActiveBranch() { - def branchName = "${env.BRANCH_NAME}" - return ( branchName == "master" || - ( branchName.startsWith("jetty-") && branchName.endsWith(".x") ) ); -} - -// Test if the Jenkins Pipeline or Step has marked the -// current build as unstable -def isUnstable() { - return currentBuild.result == "UNSTABLE" -} - -// Send a notification about the build status -def notifyBuild(String buildStatus, String jdk) { - if ( !isActiveBranch() ) { - // don't send notifications on transient branches - return - } - - // default the value - buildStatus = buildStatus ?: "UNKNOWN" - - def email = "${env.EMAILADDRESS}" - def summary = "${env.JOB_NAME}#${env.BUILD_NUMBER} - ${buildStatus} with jdk ${jdk}" - def detail = """

Job: ${env.JOB_NAME} [#${env.BUILD_NUMBER}]

-

${buildStatus}

- - - - -
Build${env.BUILD_URL}
Console${env.BUILD_URL}console
Test Report${env.BUILD_URL}testReport/
- """ - - emailext ( - to: email, - subject: summary, - body: detail - ) -} - -// vim: et:ts=2:sw=2:ft=groovy +// vim: et:ts=2:sw=2:ft=groovy \ No newline at end of file From 161f1698cfe0869e855c8da290f8422232142e0a Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Thu, 1 Nov 2018 17:06:04 +0100 Subject: [PATCH 115/931] Jetty 9.4.x 3018 request logging bad messages (#3020) Issue #3018 improve logging and handling of slow data rates. * Slow data rates now result in aborted channels, but exception is still thrown. Test for 408 in requestLog * Updated many RequestLog usages to use Server.setRequestLog rather than a RequestLogHandler * Fixed javadoc * removed BadRequestLogHandlerTest (tested in RequestLogTest) * added JMH to show the future of request logging for #113 * copyright header. * Updates from review * Revert to throwing BadMessageException * BME ensures a 408 is logged rather than a 500 Signed-off-by: Greg Wilkins --- .../eclipse/jetty/embedded/LikeJettyXml.java | 5 +- .../eclipse/jetty/embedded/ManyHandlers.java | 20 +- .../eclipse/jetty/ant/ServerProxyImpl.java | 7 +- .../requestlog/jmh/RequestLogBenchmark.java | 222 +++++ .../jetty/maven/plugin/ServerSupport.java | 6 +- .../java/org/eclipse/jetty/runner/Runner.java | 12 +- .../org/eclipse/jetty/server/HttpChannel.java | 15 +- .../org/eclipse/jetty/server/HttpInput.java | 7 +- .../org/eclipse/jetty/server/HttpOutput.java | 7 +- .../server/handler/RequestLogHandler.java | 10 +- .../handler/BadRequestLogHandlerTest.java | 194 ---- .../server/handler/RequestLogHandlerTest.java | 886 ------------------ .../jetty/server/handler/RequestLogTest.java | 509 +++++++++- .../jetty/servlet/AsyncServletTest.java | 8 +- .../jetty/servlet/ServletRequestLogTest.java | 25 +- .../jetty/http/client/ServerTimeoutsTest.java | 26 +- .../jetty/http/client/TransportScenario.java | 13 + .../java/org/eclipse/jetty/TestServer.java | 6 +- 18 files changed, 770 insertions(+), 1208 deletions(-) create mode 100644 jetty-jmh/src/main/java/org/eclipse/jetty/requestlog/jmh/RequestLogBenchmark.java delete mode 100644 jetty-server/src/test/java/org/eclipse/jetty/server/handler/BadRequestLogHandlerTest.java delete mode 100644 jetty-server/src/test/java/org/eclipse/jetty/server/handler/RequestLogHandlerTest.java diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/LikeJettyXml.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/LikeJettyXml.java index 356a9181978..de276e02d68 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/LikeJettyXml.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/LikeJettyXml.java @@ -44,7 +44,6 @@ import org.eclipse.jetty.server.SslConnectionFactory; import org.eclipse.jetty.server.handler.ContextHandlerCollection; import org.eclipse.jetty.server.handler.DefaultHandler; import org.eclipse.jetty.server.handler.HandlerCollection; -import org.eclipse.jetty.server.handler.RequestLogHandler; import org.eclipse.jetty.server.handler.StatisticsHandler; import org.eclipse.jetty.util.ssl.SslContextFactory; import org.eclipse.jetty.util.thread.QueuedThreadPool; @@ -214,9 +213,7 @@ public class LikeJettyXml requestLog.setExtended(true); requestLog.setLogCookies(false); requestLog.setLogTimeZone("GMT"); - RequestLogHandler requestLogHandler = new RequestLogHandler(); - requestLogHandler.setRequestLog(requestLog); - handlers.addHandler(requestLogHandler); + server.setRequestLog(requestLog); // === jetty-lowresources.xml === diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyHandlers.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyHandlers.java index 337f760af86..244ff29cf68 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyHandlers.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyHandlers.java @@ -35,7 +35,6 @@ import org.eclipse.jetty.server.handler.DefaultHandler; import org.eclipse.jetty.server.handler.HandlerCollection; import org.eclipse.jetty.server.handler.HandlerList; import org.eclipse.jetty.server.handler.HandlerWrapper; -import org.eclipse.jetty.server.handler.RequestLogHandler; import org.eclipse.jetty.server.handler.gzip.GzipHandler; import org.eclipse.jetty.util.ajax.JSON; @@ -115,13 +114,12 @@ public class ManyHandlers HandlerWrapper wrapper = new WelcomeWrapHandler(); Handler hello = new HelloHandler(); Handler dft = new DefaultHandler(); - RequestLogHandler requestLog = new RequestLogHandler(); // configure request logging File requestLogFile = File.createTempFile("demo", "log"); NCSARequestLog ncsaLog = new NCSARequestLog( requestLogFile.getAbsolutePath()); - requestLog.setRequestLog(ncsaLog); + server.setRequestLog(ncsaLog); // create the handler collections HandlerCollection handlers = new HandlerCollection(); @@ -129,20 +127,8 @@ public class ManyHandlers // link them all together wrapper.setHandler(hello); - list.setHandlers(new Handler[] { param, new GzipHandler(), dft }); - handlers.setHandlers(new Handler[] { list, requestLog }); - - // Handler tree looks like the following - //
-        // Server
-        // + HandlerCollection
-        // . + HandlerList
-        // . | + param (ParamHandler)
-        // . | + wrapper (WelcomeWrapHandler)
-        // . | | \ hello (HelloHandler)
-        // . | \ dft (DefaultHandler)
-        // . \ requestLog (RequestLogHandler)
-        // 
+ list.setHandlers(new Handler[] { param, new GzipHandler() }); + handlers.setHandlers(new Handler[] { list, dft }); server.setHandler(handlers); diff --git a/jetty-ant/src/main/java/org/eclipse/jetty/ant/ServerProxyImpl.java b/jetty-ant/src/main/java/org/eclipse/jetty/ant/ServerProxyImpl.java index 2dd2fdb9ee0..ac62bfc280a 100644 --- a/jetty-ant/src/main/java/org/eclipse/jetty/ant/ServerProxyImpl.java +++ b/jetty-ant/src/main/java/org/eclipse/jetty/ant/ServerProxyImpl.java @@ -40,7 +40,6 @@ import org.eclipse.jetty.server.handler.ContextHandler; import org.eclipse.jetty.server.handler.ContextHandlerCollection; import org.eclipse.jetty.server.handler.DefaultHandler; import org.eclipse.jetty.server.handler.HandlerCollection; -import org.eclipse.jetty.server.handler.RequestLogHandler; import org.eclipse.jetty.util.Scanner; import org.eclipse.jetty.util.resource.Resource; import org.eclipse.jetty.xml.XmlConfiguration; @@ -407,9 +406,8 @@ public class ServerProxyImpl implements ServerProxy */ private void configureHandlers() { - RequestLogHandler requestLogHandler = new RequestLogHandler(); if (requestLog != null) - requestLogHandler.setRequestLog(requestLog); + server.setRequestLog(requestLog); contexts = (ContextHandlerCollection) server .getChildHandlerByClass(ContextHandlerCollection.class); @@ -422,8 +420,7 @@ public class ServerProxyImpl implements ServerProxy { handlers = new HandlerCollection(); server.setHandler(handlers); - handlers.setHandlers(new Handler[] { contexts, new DefaultHandler(), - requestLogHandler }); + handlers.setHandlers(new Handler[] { contexts, new DefaultHandler() }); } else { diff --git a/jetty-jmh/src/main/java/org/eclipse/jetty/requestlog/jmh/RequestLogBenchmark.java b/jetty-jmh/src/main/java/org/eclipse/jetty/requestlog/jmh/RequestLogBenchmark.java new file mode 100644 index 00000000000..9092a5fca6f --- /dev/null +++ b/jetty-jmh/src/main/java/org/eclipse/jetty/requestlog/jmh/RequestLogBenchmark.java @@ -0,0 +1,222 @@ +// +// ======================================================================== +// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.requestlog.jmh; + +import static java.lang.invoke.MethodHandles.dropArguments; +import static java.lang.invoke.MethodHandles.foldArguments; +import static java.lang.invoke.MethodType.methodType; + +import java.lang.invoke.MethodHandle; +import java.lang.invoke.MethodHandles; +import java.lang.invoke.MethodType; +import java.util.concurrent.ThreadLocalRandom; +import java.util.concurrent.TimeUnit; + +import org.eclipse.jetty.util.TypeUtil; +import org.openjdk.jmh.annotations.Benchmark; +import org.openjdk.jmh.annotations.BenchmarkMode; +import org.openjdk.jmh.annotations.Measurement; +import org.openjdk.jmh.annotations.Mode; +import org.openjdk.jmh.annotations.Scope; +import org.openjdk.jmh.annotations.State; +import org.openjdk.jmh.annotations.Threads; +import org.openjdk.jmh.annotations.Warmup; +import org.openjdk.jmh.profile.GCProfiler; +import org.openjdk.jmh.runner.Runner; +import org.openjdk.jmh.runner.RunnerException; +import org.openjdk.jmh.runner.options.Options; +import org.openjdk.jmh.runner.options.OptionsBuilder; + + + +@State(Scope.Benchmark) +@Threads(4) +@Warmup(iterations = 7, time = 500, timeUnit = TimeUnit.MILLISECONDS) +@Measurement(iterations = 7, time = 500, timeUnit = TimeUnit.MILLISECONDS) +public class RequestLogBenchmark +{ + + public static void append(String s, StringBuilder b) + { + b.append(s); + } + + public static void logURI(StringBuilder b, String request) + { + b.append(request); + } + + public static void logLength(StringBuilder b, String request) + { + b.append(request.length()); + } + + public static void logAddr(StringBuilder b, String request) + { + try + { + TypeUtil.toHex(request.hashCode(), b); + } + catch(Exception e) + { + throw new RuntimeException(e); + } + } + + private ThreadLocal buffers = new ThreadLocal() + { + @Override + protected StringBuilder initialValue() + { + return new StringBuilder(256); + } + }; + MethodHandle logHandle; + Object[] iteratedLog; + + public RequestLogBenchmark() + { + try + { + MethodType logType = methodType(Void.TYPE, StringBuilder.class, String.class); + + MethodHandle append = MethodHandles.lookup() + .findStatic(RequestLogBenchmark.class, "append", methodType(Void.TYPE, String.class, StringBuilder.class)); + MethodHandle logURI = MethodHandles.lookup().findStatic(RequestLogBenchmark.class, "logURI", logType); + MethodHandle logAddr = MethodHandles.lookup().findStatic(RequestLogBenchmark.class, "logAddr", logType); + MethodHandle logLength = MethodHandles.lookup().findStatic(RequestLogBenchmark.class, "logLength", logType); + + // setup iteration + iteratedLog = new Object[] + { + logURI, + " - ", + logAddr, + " ", + logLength, + "\n" + }; + + // setup methodHandle + logHandle = dropArguments(append.bindTo("\n"), 1, String.class); + logHandle = foldArguments(logHandle, logLength); + logHandle = foldArguments(logHandle, dropArguments(append.bindTo(" "), 1, String.class)); + logHandle = foldArguments(logHandle, logAddr); + logHandle = foldArguments(logHandle, dropArguments(append.bindTo(" - "), 1, String.class)); + logHandle = foldArguments(logHandle, logURI); + + } + catch (Throwable th) + { + throw new RuntimeException(th); + } + } + + + public String logFixed(String request) + { + StringBuilder b = buffers.get(); + logURI(b,request); + append(" - ",b); + logAddr(b,request); + append(" ",b); + logLength(b,request); + append("\n",b); + String l = b.toString(); + b.setLength(0); + return l; + } + + public String logIterate(String request) + { + try + { + + StringBuilder b = buffers.get(); + for (Object o : iteratedLog) + { + if (o instanceof String) + append((String)o, b); + else if (o instanceof MethodHandle) + ((MethodHandle)o).invoke(b, request); + } + String l = b.toString(); + b.setLength(0); + return l; + } + catch(Throwable th) + { + throw new RuntimeException(th); + } + } + + public String logMethodHandle(String request) + { + try + { + StringBuilder b = buffers.get(); + logHandle.invoke(buffers.get(), request); + String l = b.toString(); + b.setLength(0); + return l; + } + catch (Throwable th) + { + throw new RuntimeException(th); + } + } + + + @Benchmark + @BenchmarkMode({ Mode.Throughput}) + public String testFixed() + { + return logFixed(Long.toString(ThreadLocalRandom.current().nextLong())); + }; + + @Benchmark + @BenchmarkMode({ Mode.Throughput}) + public String testIterate() + { + return logIterate(Long.toString(ThreadLocalRandom.current().nextLong())); + }; + + @Benchmark + @BenchmarkMode({ Mode.Throughput}) + public String testHandle() + { + return logMethodHandle(Long.toString(ThreadLocalRandom.current().nextLong())); + }; + + + public static void main(String[] args) throws RunnerException + { + Options opt = new OptionsBuilder() + .include(RequestLogBenchmark.class.getSimpleName()) + .warmupIterations(20) + .measurementIterations(10) + .addProfiler(GCProfiler.class) + .forks(1) + .threads(100) + .build(); + + new Runner(opt).run(); + } + +} diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ServerSupport.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ServerSupport.java index 36eab2e0418..00c8e6c9c4c 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ServerSupport.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ServerSupport.java @@ -33,7 +33,6 @@ import org.eclipse.jetty.server.Server; import org.eclipse.jetty.server.handler.ContextHandlerCollection; import org.eclipse.jetty.server.handler.DefaultHandler; import org.eclipse.jetty.server.handler.HandlerCollection; -import org.eclipse.jetty.server.handler.RequestLogHandler; import org.eclipse.jetty.util.resource.Resource; import org.eclipse.jetty.webapp.Configuration; import org.eclipse.jetty.webapp.WebAppContext; @@ -69,9 +68,8 @@ public class ServerSupport throw new IllegalArgumentException ("Server is null"); DefaultHandler defaultHandler = new DefaultHandler(); - RequestLogHandler requestLogHandler = new RequestLogHandler(); if (requestLog != null) - requestLogHandler.setRequestLog(requestLog); + server.setRequestLog(requestLog); ContextHandlerCollection contexts = findContextHandlerCollection(server); if (contexts == null) @@ -82,7 +80,7 @@ public class ServerSupport { handlers = new HandlerCollection(); server.setHandler(handlers); - handlers.setHandlers(new Handler[]{contexts, defaultHandler, requestLogHandler}); + handlers.setHandlers(new Handler[]{contexts, defaultHandler}); } else { diff --git a/jetty-runner/src/main/java/org/eclipse/jetty/runner/Runner.java b/jetty-runner/src/main/java/org/eclipse/jetty/runner/Runner.java index 12fe3a27ca6..9348f82858f 100644 --- a/jetty-runner/src/main/java/org/eclipse/jetty/runner/Runner.java +++ b/jetty-runner/src/main/java/org/eclipse/jetty/runner/Runner.java @@ -43,7 +43,6 @@ import org.eclipse.jetty.server.handler.ContextHandler; import org.eclipse.jetty.server.handler.ContextHandlerCollection; import org.eclipse.jetty.server.handler.DefaultHandler; import org.eclipse.jetty.server.handler.HandlerCollection; -import org.eclipse.jetty.server.handler.RequestLogHandler; import org.eclipse.jetty.server.handler.StatisticsHandler; import org.eclipse.jetty.server.session.SessionHandler; import org.eclipse.jetty.servlet.ServletContextHandler; @@ -88,7 +87,6 @@ public class Runner protected URLClassLoader _classLoader; protected Classpath _classpath = new Classpath(); protected ContextHandlerCollection _contexts; - protected RequestLogHandler _logHandler; protected String _logFile; protected ArrayList _configFiles; protected boolean _enableStats=false; @@ -392,14 +390,6 @@ public class Runner handlers.addHandler(new DefaultHandler()); } - //ensure a log handler is present - _logHandler = (RequestLogHandler) handlers.getChildHandlerByClass(RequestLogHandler.class); - if (_logHandler == null) - { - _logHandler = new RequestLogHandler(); - handlers.addHandler(_logHandler); - } - //check a connector is configured to listen on Connector[] connectors = _server.getConnectors(); @@ -509,7 +499,7 @@ public class Runner { NCSARequestLog requestLog = new NCSARequestLog(_logFile); requestLog.setExtended(false); - _logHandler.setRequestLog(requestLog); + _server.setRequestLog(requestLog); } } diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java index 43ab02dc183..95012aee8b5 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java @@ -888,7 +888,6 @@ public class HttpChannel implements Runnable, HttpOutput.Interceptor @Override public void write(ByteBuffer content, boolean complete, Callback callback) { - _written+=BufferUtil.length(content); sendResponse(null,content,complete,callback); } @@ -1226,18 +1225,21 @@ public class HttpChannel implements Runnable, HttpOutput.Interceptor private class CommitCallback extends Callback.Nested { private final ByteBuffer _content; + private final int _length; private final boolean _complete; private CommitCallback(Callback callback, ByteBuffer content, boolean complete) { super(callback); - this._content = content == null ? BufferUtil.EMPTY_BUFFER : content.slice(); - this._complete = complete; + _content = content == null ? BufferUtil.EMPTY_BUFFER : content.slice(); + _length = _content.remaining(); + _complete = complete; } @Override public void succeeded() { + _written += _length; super.succeeded(); notifyResponseCommit(_request); if (_content.hasRemaining()) @@ -1299,18 +1301,21 @@ public class HttpChannel implements Runnable, HttpOutput.Interceptor private class ContentCallback extends Callback.Nested { private final ByteBuffer _content; + private final int _length; private final boolean _complete; private ContentCallback(Callback callback, ByteBuffer content, boolean complete) { super(callback); - this._content = content == null ? BufferUtil.EMPTY_BUFFER : content.slice(); - this._complete = complete; + _content = content == null ? BufferUtil.EMPTY_BUFFER : content.slice(); + _length = _content.remaining(); + _complete = complete; } @Override public void succeeded() { + _written += _length; super.succeeded(); if (_content.hasRemaining()) notifyResponseContent(_request, _content); diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpInput.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpInput.java index 28f6d2622e1..d4592a72607 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpInput.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpInput.java @@ -286,7 +286,12 @@ public class HttpInput extends ServletInputStream implements Runnable { long minimum_data = minRequestDataRate * TimeUnit.NANOSECONDS.toMillis(period) / TimeUnit.SECONDS.toMillis(1); if (_contentArrived < minimum_data) - throw new BadMessageException(HttpStatus.REQUEST_TIMEOUT_408,String.format("Request content data rate < %d B/s",minRequestDataRate)); + { + BadMessageException bad = new BadMessageException(HttpStatus.REQUEST_TIMEOUT_408, + String.format("Request content data rate < %d B/s", minRequestDataRate)); + _channelState.getHttpChannel().abort(bad); + throw bad; + } } } diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java index 6fcd6370435..4402d193a93 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java @@ -25,6 +25,7 @@ import java.nio.channels.ReadableByteChannel; import java.nio.channels.WritePendingException; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicReference; + import javax.servlet.RequestDispatcher; import javax.servlet.ServletOutputStream; import javax.servlet.ServletRequest; @@ -934,7 +935,11 @@ public class HttpOutput extends ServletOutputStream implements Runnable if (LOG.isDebugEnabled()) LOG.debug("Flushed bytes min/actual {}/{}", minFlushed, _flushed); if (_flushed < minFlushed) - throw new IOException(String.format("Response content data rate < %d B/s", minDataRate)); + { + IOException ioe = new IOException(String.format("Response content data rate < %d B/s", minDataRate)); + _channel.abort(ioe); + throw ioe; + } } public void recycle() diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/RequestLogHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/RequestLogHandler.java index 838d3323422..e30764a2e92 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/RequestLogHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/RequestLogHandler.java @@ -31,11 +31,11 @@ import org.eclipse.jetty.server.Server; /** - * RequestLogHandler. - * This handler can be used to wrap an individual context for context logging. - * To set a {@link RequestLog} instance for the entire {@link Server}, use - * {@link Server#setRequestLog(RequestLog)} instead of this handler. - * + *

This handler provides an alternate way (other than {@link Server#setRequestLog(RequestLog)}) + * to log request, that can be applied to a particular handler (eg context). + * This handler can be used to wrap an individual context for context logging, or can be listed + * prior to a handler. + *

* @see Server#setRequestLog(RequestLog) */ public class RequestLogHandler extends HandlerWrapper diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/BadRequestLogHandlerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/BadRequestLogHandlerTest.java deleted file mode 100644 index 1c54de4ca0a..00000000000 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/BadRequestLogHandlerTest.java +++ /dev/null @@ -1,194 +0,0 @@ -// -// ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -// - -package org.eclipse.jetty.server.handler; - -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.is; -import static org.junit.jupiter.api.Assertions.assertTimeoutPreemptively; - -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.OutputStream; -import java.io.OutputStreamWriter; -import java.io.StringReader; -import java.io.StringWriter; -import java.net.InetAddress; -import java.net.InetSocketAddress; -import java.net.Socket; -import java.net.SocketAddress; -import java.nio.charset.StandardCharsets; -import java.time.Duration; -import java.util.ArrayList; -import java.util.List; -import java.util.stream.Stream; - -import javax.servlet.ServletException; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.eclipse.jetty.server.Connector; -import org.eclipse.jetty.server.Request; -import org.eclipse.jetty.server.RequestLog; -import org.eclipse.jetty.server.Response; -import org.eclipse.jetty.server.Server; -import org.eclipse.jetty.server.ServerConnector; -import org.eclipse.jetty.util.IO; -import org.eclipse.jetty.util.component.AbstractLifeCycle; -import org.eclipse.jetty.util.log.Log; -import org.eclipse.jetty.util.log.Logger; -import org.junit.jupiter.api.Disabled; -import org.junit.jupiter.api.Tag; -import org.junit.jupiter.params.ParameterizedTest; -import org.junit.jupiter.params.provider.Arguments; -import org.junit.jupiter.params.provider.MethodSource; - -/** - * Testing oddball request scenarios (like error 400) where the error should - * be logged - */ -@Tag("Unstable") -@Disabled -public class BadRequestLogHandlerTest -{ - private static final Logger LOG = Log.getLogger(BadRequestLogHandlerTest.class); - - public static class CaptureLog extends AbstractLifeCycle implements RequestLog - { - public List captured = new ArrayList<>(); - - @Override - public void log(Request request, Response response) - { - int status = response.getCommittedMetaData().getStatus(); - captured.add(String.format("%s %s %s %03d",request.getMethod(),request.getHttpURI(),request.getProtocol(),status)); - } - } - - private static class HelloHandler extends AbstractHandler - { - @Override - public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException - { - response.setContentType("text/plain"); - response.getWriter().print("Hello World"); - baseRequest.setHandled(true); - } - } - - public static Stream data() - { - List data = new ArrayList<>(); - - data.add(new String[]{ "GET /bad VER\r\n" - + "Host: localhost\r\n" - + "Connection: close\r\n\r\n" , - "GET HTTP/1.1 400" }); - data.add(new String[]{ "GET /%%adsasd HTTP/1.1\r\n" - + "Host: localhost\r\n" - + "Connection: close\r\n\r\n" , - "GET HTTP/1.1 400" }); - - return data.stream().map(Arguments::of); - } - - @ParameterizedTest - @MethodSource("data") - public void testLogHandler(String requestHeader, String expectedLog) throws Exception - { - Server server = new Server(); - ServerConnector connector = new ServerConnector(server); - connector.setPort(0); - server.setConnectors(new Connector[] { connector }); - - CaptureLog captureLog = new CaptureLog(); - - RequestLogHandler requestLog = new RequestLogHandler(); - requestLog.setRequestLog(captureLog); - - requestLog.setHandler(new HelloHandler()); - - server.setHandler(requestLog); - - try - { - server.start(); - - String host = connector.getHost(); - if (host == null) - { - host = "localhost"; - } - - InetAddress destAddr = InetAddress.getByName(host); - int port = connector.getLocalPort(); - SocketAddress endpoint = new InetSocketAddress(destAddr,port); - - Socket socket = new Socket(); - socket.setSoTimeout(1000); - socket.connect(endpoint); - - assertTimeoutPreemptively(Duration.ofSeconds(4), ()-> { - try (OutputStream out = socket.getOutputStream(); - OutputStreamWriter writer = new OutputStreamWriter(out, StandardCharsets.UTF_8); - InputStream in = socket.getInputStream(); - InputStreamReader reader = new InputStreamReader(in, StandardCharsets.UTF_8)) - { - StringReader request = new StringReader(requestHeader); - IO.copy(request, writer); - writer.flush(); - StringWriter response = new StringWriter(); - IO.copy(reader, response); - LOG.info("Response: {}", response); - } - finally - { - socket.close(); - } - }); - - assertRequestLog(expectedLog, captureLog); - } - finally - { - server.stop(); - } - } - - private void assertRequestLog(final String expectedLog, CaptureLog captureLog) - { - int captureCount = captureLog.captured.size(); - - if (captureCount != 1) - { - LOG.warn("Capture Log size is {}, expected to be 1",captureCount); - if (captureCount > 1) - { - for (int i = 0; i < captureCount; i++) - { - LOG.warn("[{}] {}",i,captureLog.captured.get(i)); - } - } - assertThat("Capture Log Entry Count",captureLog.captured.size(),is(1)); - } - - String actual = captureLog.captured.get(0); - assertThat("Capture Log",actual,is(expectedLog)); - } -} diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/RequestLogHandlerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/RequestLogHandlerTest.java deleted file mode 100644 index a57c4186c85..00000000000 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/RequestLogHandlerTest.java +++ /dev/null @@ -1,886 +0,0 @@ -// -// ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -// - -package org.eclipse.jetty.server.handler; - -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.is; -import static org.hamcrest.Matchers.notNullValue; - -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.PrintWriter; -import java.io.StringWriter; -import java.net.HttpURLConnection; -import java.net.URI; -import java.util.ArrayList; -import java.util.List; -import java.util.stream.Stream; - -import javax.servlet.AsyncContext; -import javax.servlet.AsyncEvent; -import javax.servlet.AsyncListener; -import javax.servlet.RequestDispatcher; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.eclipse.jetty.server.Connector; -import org.eclipse.jetty.server.Handler; -import org.eclipse.jetty.server.HttpChannel; -import org.eclipse.jetty.server.HttpChannelState; -import org.eclipse.jetty.server.Request; -import org.eclipse.jetty.server.RequestLog; -import org.eclipse.jetty.server.Response; -import org.eclipse.jetty.server.Server; -import org.eclipse.jetty.server.ServerConnector; -import org.eclipse.jetty.toolchain.test.IO; -import org.eclipse.jetty.util.component.AbstractLifeCycle; -import org.eclipse.jetty.util.log.Log; -import org.eclipse.jetty.util.log.Logger; -import org.eclipse.jetty.util.log.StacklessLogging; -import org.junit.jupiter.api.Disabled; -import org.junit.jupiter.api.Tag; -import org.junit.jupiter.params.ParameterizedTest; -import org.junit.jupiter.params.provider.Arguments; -import org.junit.jupiter.params.provider.MethodSource; - -/** - * Tests for RequestLogHandler behavior. - *

- * Tests different request handler behavior against different server+error configurations - */ -@Tag("Unstable") -@Disabled -public class RequestLogHandlerTest -{ - private static final Logger LOG = Log.getLogger(RequestLogHandlerTest.class); - - public static class CaptureLog extends AbstractLifeCycle implements RequestLog - { - public List captured = new ArrayList<>(); - - @Override - public void log(Request request, Response response) - { - int status = response.getCommittedMetaData().getStatus(); - captured.add(String.format("%s %s %s %03d",request.getMethod(),request.getRequestURI(),request.getProtocol(),status)); - } - } - - private static abstract class AbstractTestHandler extends AbstractHandler - { - @Override - public String toString() - { - return this.getClass().getSimpleName(); - } - } - - private static class HelloHandler extends AbstractTestHandler - { - @Override - public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException - { - response.setContentType("text/plain"); - response.getWriter().print("Hello World"); - baseRequest.setHandled(true); - } - } - - private static class ResponseSendErrorHandler extends AbstractTestHandler - { - @Override - public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException - { - response.sendError(500,"Whoops"); - baseRequest.setHandled(true); - } - } - - private static class ServletExceptionHandler extends AbstractTestHandler - { - @Override - public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException - { - throw new ServletException("Whoops"); - } - } - - private static class IOExceptionHandler extends AbstractTestHandler - { - @Override - public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException - { - throw new IOException("Whoops"); - } - } - - private static class RuntimeExceptionHandler extends AbstractTestHandler - { - @Override - public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException - { - throw new RuntimeException("Whoops"); - } - } - - private static class AsyncOnTimeoutCompleteHandler extends AbstractTestHandler implements AsyncListener - { - @Override - public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException - { - AsyncContext ac = request.startAsync(); - ac.setTimeout(1000); - ac.addListener(this); - baseRequest.setHandled(true); - } - - @Override - public void onTimeout(AsyncEvent event) throws IOException - { - event.getAsyncContext().complete(); - } - - @Override - public void onStartAsync(AsyncEvent event) throws IOException - { - } - - @Override - public void onError(AsyncEvent event) throws IOException - { - } - - @Override - public void onComplete(AsyncEvent event) throws IOException - { - } - } - - private static class AsyncOnTimeoutCompleteUnhandledHandler extends AbstractTestHandler implements AsyncListener - { - @Override - public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException - { - AsyncContext ac = request.startAsync(); - ac.setTimeout(1000); - ac.addListener(this); - } - - @Override - public void onTimeout(AsyncEvent event) throws IOException - { - event.getAsyncContext().complete(); - } - - @Override - public void onStartAsync(AsyncEvent event) throws IOException - { - } - - @Override - public void onError(AsyncEvent event) throws IOException - { - } - - @Override - public void onComplete(AsyncEvent event) throws IOException - { - } - } - - private static class AsyncOnTimeoutDispatchHandler extends AbstractTestHandler implements AsyncListener - { - @Override - public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException - { - if (request.getAttribute("deep") == null) - { - AsyncContext ac = request.startAsync(); - ac.setTimeout(1000); - ac.addListener(this); - baseRequest.setHandled(true); - request.setAttribute("deep",true); - } - } - - @Override - public void onTimeout(AsyncEvent event) throws IOException - { - event.getAsyncContext().dispatch(); - } - - @Override - public void onStartAsync(AsyncEvent event) throws IOException - { - } - - @Override - public void onError(AsyncEvent event) throws IOException - { - } - - @Override - public void onComplete(AsyncEvent event) throws IOException - { - } - } - - private static class AsyncOnStartIOExceptionHandler extends AbstractTestHandler implements AsyncListener - { - @Override - public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException - { - AsyncContext ac = request.startAsync(); - ac.setTimeout(1000); - ac.addListener(this); - baseRequest.setHandled(true); - } - - @Override - public void onTimeout(AsyncEvent event) throws IOException - { - } - - @Override - public void onStartAsync(AsyncEvent event) throws IOException - { - event.getAsyncContext().complete(); - throw new IOException("Whoops"); - } - - @Override - public void onError(AsyncEvent event) throws IOException - { - LOG.warn("onError() -> {}",event); - } - - @Override - public void onComplete(AsyncEvent event) throws IOException - { - } - } - - public static class OKErrorHandler extends ErrorHandler - { - @Override - public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException - { - if (baseRequest.isHandled() || response.isCommitted()) - { - return; - } - - // collect error details - String reason = (response instanceof Response)?((Response)response).getReason():null; - int status = response.getStatus(); - - // intentionally set response status to OK (this is a test to see what is actually logged) - response.setStatus(200); - response.setContentType("text/plain"); - PrintWriter out = response.getWriter(); - out.printf("Error %d: %s%n",status,reason); - baseRequest.setHandled(true); - } - } - - public static class DispatchErrorHandler extends ErrorHandler - { - @Override - public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException - { - if (baseRequest.isHandled() || response.isCommitted()) - { - return; - } - - RequestDispatcher dispatcher = request.getRequestDispatcher("/errorok/"); - assertThat("Dispatcher", dispatcher, notNullValue()); - - try - { - dispatcher.forward(request,response); - } - catch (ServletException e) - { - throw new IOException("Dispatch.forward failed",e); - } - } - } - - public static class AltErrorHandler extends ErrorHandler - { - @Override - public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException - { - if (baseRequest.isHandled() || response.isCommitted()) - { - return; - } - - // collect error details - String reason = (response instanceof Response)?((Response)response).getReason():null; - int status = response.getStatus(); - - // intentionally set response status to OK (this is a test to see what is actually logged) - response.setContentType("text/plain"); - PrintWriter out = response.getWriter(); - out.printf("Error %d: %s%n",status,reason); - baseRequest.setHandled(true); - } - } - - public static Stream data() - { - List data = new ArrayList<>(); - - data.add(new Object[] { new HelloHandler(), "/test/", "GET /test/ HTTP/1.1 200" }); - data.add(new Object[] { new AsyncOnTimeoutCompleteHandler(), "/test/", "GET /test/ HTTP/1.1 200" }); - data.add(new Object[] { new AsyncOnTimeoutCompleteUnhandledHandler(), "/test/", "GET /test/ HTTP/1.1 200" }); - data.add(new Object[] { new AsyncOnTimeoutDispatchHandler(), "/test/", "GET /test/ HTTP/1.1 200" }); - - data.add(new Object[] { new AsyncOnStartIOExceptionHandler(), "/test/", "GET /test/ HTTP/1.1 500" }); - data.add(new Object[] { new ResponseSendErrorHandler(), "/test/", "GET /test/ HTTP/1.1 500" }); - data.add(new Object[] { new ServletExceptionHandler(), "/test/", "GET /test/ HTTP/1.1 500" }); - data.add(new Object[] { new IOExceptionHandler(), "/test/", "GET /test/ HTTP/1.1 500" }); - data.add(new Object[] { new RuntimeExceptionHandler(), "/test/", "GET /test/ HTTP/1.1 500" }); - - return data.stream().map(Arguments::of); - } - - /** - * Test a RequestLogHandler at the end of a HandlerCollection. all other configuration on server at defaults. - * @throws Exception if test failure - */ - @ParameterizedTest - @MethodSource("data") - public void testLogHandlerCollection(Handler testHandler, String requestPath, String expectedLogEntry) throws Exception - { - Server server = new Server(); - ServerConnector connector = new ServerConnector(server); - connector.setPort(0); - server.setConnectors(new Connector[] { connector }); - - CaptureLog captureLog = new CaptureLog(); - - RequestLogHandler requestLog = new RequestLogHandler(); - requestLog.setRequestLog(captureLog); - - HandlerCollection handlers = new HandlerCollection(); - handlers.setHandlers(new Handler[] { testHandler, requestLog }); - server.setHandler(handlers); - - try - { - server.start(); - - String host = connector.getHost(); - if (host == null) - { - host = "localhost"; - } - int port = connector.getLocalPort(); - - URI serverUri = new URI("http",null,host,port,requestPath,null,null); - - // Make call to test handler - HttpURLConnection connection = (HttpURLConnection)serverUri.toURL().openConnection(); - try - { - connection.setAllowUserInteraction(false); - - // log response status code - int statusCode = connection.getResponseCode(); - LOG.debug("Response Status Code: {}",statusCode); - - if (statusCode == 200) - { - // collect response message and log it - String content = getResponseContent(connection); - LOG.debug("Response Content: {}",content); - } - } - finally - { - connection.disconnect(); - } - - assertRequestLog(expectedLogEntry, captureLog); - } - finally - { - server.stop(); - } - } - - @ParameterizedTest - @MethodSource("data") - public void testMultipleLogHandlers(Handler testHandler, String requestPath, String expectedLogEntry) throws Exception - { - Server server = new Server(); - ServerConnector connector = new ServerConnector(server); - connector.setPort(0); - server.setConnectors(new Connector[]{connector}); - - List captureLogs = new ArrayList<>(); - List handlerList = new ArrayList<>(); - handlerList.add(testHandler); - - for (int i = 0; i < 4; ++i) { - CaptureLog captureLog = new CaptureLog(); - captureLogs.add(captureLog); - RequestLogHandler requestLog = new RequestLogHandler(); - requestLog.setRequestLog(captureLog); - handlerList.add(requestLog); - } - - HandlerCollection handlers = new HandlerCollection(); - handlers.setHandlers(handlerList.toArray(new Handler[0])); - server.setHandler(handlers); - - try - { - server.start(); - - String host = connector.getHost(); - if (host == null) - { - host = "localhost"; - } - int port = connector.getLocalPort(); - - URI serverUri = new URI("http",null,host,port,requestPath,null,null); - - // Make call to test handler - HttpURLConnection connection = (HttpURLConnection)serverUri.toURL().openConnection(); - try - { - connection.setAllowUserInteraction(false); - - // log response status code - int statusCode = connection.getResponseCode(); - LOG.debug("Response Status Code: {}",statusCode); - - if (statusCode == 200) - { - // collect response message and log it - String content = getResponseContent(connection); - LOG.debug("Response Content: {}",content); - } - } - finally - { - connection.disconnect(); - } - - for (CaptureLog captureLog:captureLogs) - assertRequestLog(expectedLogEntry, captureLog); - } - finally - { - server.stop(); - } - } - - /** - * Test a RequestLogHandler at the end of a HandlerCollection and also with the default ErrorHandler as server bean in place. - * @throws Exception if test failure - */ - @ParameterizedTest - @MethodSource("data") - public void testLogHandlerCollection_ErrorHandler_ServerBean(Handler testHandler, String requestPath, String expectedLogEntry) throws Exception - { - Server server = new Server(); - ServerConnector connector = new ServerConnector(server); - connector.setPort(0); - server.setConnectors(new Connector[] { connector }); - - ErrorHandler errorHandler = new ErrorHandler(); - server.addBean(errorHandler); - - CaptureLog captureLog = new CaptureLog(); - - RequestLogHandler requestLog = new RequestLogHandler(); - requestLog.setRequestLog(captureLog); - - HandlerCollection handlers = new HandlerCollection(); - handlers.setHandlers(new Handler[] { testHandler, requestLog }); - server.setHandler(handlers); - - try - { - server.start(); - - String host = connector.getHost(); - if (host == null) - { - host = "localhost"; - } - int port = connector.getLocalPort(); - - URI serverUri = new URI("http",null,host,port,requestPath,null,null); - - // Make call to test handler - HttpURLConnection connection = (HttpURLConnection)serverUri.toURL().openConnection(); - try - { - connection.setAllowUserInteraction(false); - - // log response status code - int statusCode = connection.getResponseCode(); - LOG.debug("Response Status Code: {}",statusCode); - - if (statusCode == 200) - { - // collect response message and log it - String content = getResponseContent(connection); - LOG.debug("Response Content: {}",content); - } - } - finally - { - connection.disconnect(); - } - - assertRequestLog(expectedLogEntry, captureLog); - } - finally - { - server.stop(); - } - } - - /** - * Test a RequestLogHandler at the end of a HandlerCollection and also with the ErrorHandler in place. - * @throws Exception if test failure - */ - @ParameterizedTest - @MethodSource("data") - public void testLogHandlerCollection_AltErrorHandler(Handler testHandler, String requestPath, String expectedLogEntry) throws Exception - { - Server server = new Server(); - ServerConnector connector = new ServerConnector(server); - connector.setPort(0); - server.setConnectors(new Connector[] { connector }); - - AltErrorHandler errorDispatcher = new AltErrorHandler(); - server.addBean(errorDispatcher); - - ContextHandlerCollection contexts = new ContextHandlerCollection(); - ContextHandler errorContext = new ContextHandler("/errorpage"); - errorContext.setHandler(new AltErrorHandler()); - ContextHandler testContext = new ContextHandler("/test"); - testContext.setHandler(testHandler); - contexts.addHandler(errorContext); - contexts.addHandler(testContext); - - RequestLogHandler requestLog = new RequestLogHandler(); - CaptureLog captureLog = new CaptureLog(); - requestLog.setRequestLog(captureLog); - - HandlerCollection handlers = new HandlerCollection(); - handlers.setHandlers(new Handler[] { contexts, requestLog }); - server.setHandler(handlers); - - try - { - server.start(); - - String host = connector.getHost(); - if (host == null) - { - host = "localhost"; - } - int port = connector.getLocalPort(); - - URI serverUri = new URI("http",null,host,port,requestPath,null,null); - - // Make call to test handler - HttpURLConnection connection = (HttpURLConnection)serverUri.toURL().openConnection(); - try - { - connection.setAllowUserInteraction(false); - - // log response status code - int statusCode = connection.getResponseCode(); - LOG.debug("Response Status Code: {}",statusCode); - - if (statusCode == 200) - { - // collect response message and log it - String content = getResponseContent(connection); - LOG.debug("Response Content: {}",content); - } - } - finally - { - connection.disconnect(); - } - - assertRequestLog(expectedLogEntry, captureLog); - } - finally - { - server.stop(); - } - } - - /** - * Test a RequestLogHandler at the end of a HandlerCollection and also with the ErrorHandler in place. - * @throws Exception if test failure - */ - @ParameterizedTest - @MethodSource("data") - public void testLogHandlerCollection_OKErrorHandler(Handler testHandler, String requestPath, String expectedLogEntry) throws Exception - { - Server server = new Server(); - ServerConnector connector = new ServerConnector(server); - connector.setPort(0); - server.setConnectors(new Connector[] { connector }); - - OKErrorHandler errorDispatcher = new OKErrorHandler(); - server.addBean(errorDispatcher); - - ContextHandlerCollection contexts = new ContextHandlerCollection(); - ContextHandler errorContext = new ContextHandler("/errorpage"); - errorContext.setHandler(new AltErrorHandler()); - ContextHandler testContext = new ContextHandler("/test"); - testContext.setHandler(testHandler); - contexts.addHandler(errorContext); - contexts.addHandler(testContext); - - RequestLogHandler requestLog = new RequestLogHandler(); - CaptureLog captureLog = new CaptureLog(); - requestLog.setRequestLog(captureLog); - - HandlerCollection handlers = new HandlerCollection(); - handlers.setHandlers(new Handler[] { contexts, requestLog }); - server.setHandler(handlers); - - try - { - server.start(); - - String host = connector.getHost(); - if (host == null) - { - host = "localhost"; - } - int port = connector.getLocalPort(); - - URI serverUri = new URI("http",null,host,port,requestPath,null,null); - - // Make call to test handler - HttpURLConnection connection = (HttpURLConnection)serverUri.toURL().openConnection(); - try - { - connection.setAllowUserInteraction(false); - - // log response status code - int statusCode = connection.getResponseCode(); - LOG.debug("Response Status Code: {}",statusCode); - - if (statusCode == 200) - { - // collect response message and log it - String content = getResponseContent(connection); - LOG.debug("Response Content: {}",content); - } - } - finally - { - connection.disconnect(); - } - - assertRequestLog(expectedLogEntry, captureLog); - } - finally - { - server.stop(); - } - } - - /** - * Test a RequestLogHandler at the end of a HandlerCollection and also with the ErrorHandler in place. - * @throws Exception if test failure - */ - @ParameterizedTest - @MethodSource("data") - public void testLogHandlerCollection_DispatchErrorHandler(Handler testHandler, String requestPath, String expectedLogEntry) throws Exception - { - Server server = new Server(); - ServerConnector connector = new ServerConnector(server); - connector.setPort(0); - server.setConnectors(new Connector[] { connector }); - - DispatchErrorHandler errorDispatcher = new DispatchErrorHandler(); - server.addBean(errorDispatcher); - - ContextHandlerCollection contexts = new ContextHandlerCollection(); - ContextHandler errorContext = new ContextHandler("/errorok"); - errorContext.setHandler(new OKErrorHandler()); - ContextHandler testContext = new ContextHandler("/test"); - testContext.setHandler(testHandler); - contexts.addHandler(errorContext); - contexts.addHandler(testContext); - - RequestLogHandler requestLog = new RequestLogHandler(); - CaptureLog captureLog = new CaptureLog(); - requestLog.setRequestLog(captureLog); - - HandlerCollection handlers = new HandlerCollection(); - handlers.setHandlers(new Handler[] { contexts, requestLog }); - server.setHandler(handlers); - - try - { - server.start(); - - String host = connector.getHost(); - if (host == null) - { - host = "localhost"; - } - int port = connector.getLocalPort(); - - URI serverUri = new URI("http",null,host,port,requestPath,null,null); - - // Make call to test handler - HttpURLConnection connection = (HttpURLConnection)serverUri.toURL().openConnection(); - try - { - connection.setAllowUserInteraction(false); - - // log response status code - int statusCode = connection.getResponseCode(); - LOG.debug("Response Status Code: {}",statusCode); - - if (statusCode == 200) - { - // collect response message and log it - String content = getResponseContent(connection); - LOG.debug("Response Content: {}",content); - } - } - finally - { - connection.disconnect(); - } - - assertRequestLog(expectedLogEntry, captureLog); - } - finally - { - server.stop(); - } - } - - @ParameterizedTest - @MethodSource("data") - public void testLogHandlerWrapped(Handler testHandler, String requestPath, String expectedLogEntry) throws Exception - { - Server server = new Server(); - ServerConnector connector = new ServerConnector(server); - connector.setPort(0); - server.setConnectors(new Connector[] { connector }); - - CaptureLog captureLog = new CaptureLog(); - - RequestLogHandler requestLog = new RequestLogHandler(); - requestLog.setRequestLog(captureLog); - - requestLog.setHandler(testHandler); - - server.setHandler(requestLog); - - try (StacklessLogging ignore = new StacklessLogging(HttpChannel.class,HttpChannelState.class)) - { - server.start(); - - String host = connector.getHost(); - if (host == null) - { - host = "localhost"; - } - int port = connector.getLocalPort(); - - URI serverUri = new URI("http",null,host,port,requestPath,null,null); - - // Make call to test handler - HttpURLConnection connection = (HttpURLConnection)serverUri.toURL().openConnection(); - try - { - connection.setAllowUserInteraction(false); - - // log response status code - int statusCode = connection.getResponseCode(); - LOG.info("Response Status Code: {}",statusCode); - - if (statusCode == 200) - { - // collect response message and log it - String content = getResponseContent(connection); - LOG.info("Response Content: {}",content); - } - } - finally - { - connection.disconnect(); - } - - assertRequestLog(expectedLogEntry, captureLog); - } - finally - { - server.stop(); - } - } - - private void assertRequestLog(final String expectedLogEntry, CaptureLog captureLog) - { - int captureCount = captureLog.captured.size(); - - if (captureCount != 1) - { - LOG.warn("Capture Log size is {}, expected to be 1",captureCount); - if (captureCount > 1) - { - for (int i = 0; i < captureCount; i++) - { - LOG.warn("[{}] {}",i,captureLog.captured.get(i)); - } - } - assertThat("Capture Log Entry Count",captureLog.captured.size(),is(1)); - } - - String actual = captureLog.captured.get(0); - assertThat("Capture Log",actual,is(expectedLogEntry)); - } - - private String getResponseContent(HttpURLConnection connection) throws IOException - { - try (InputStream in = connection.getInputStream(); InputStreamReader reader = new InputStreamReader(in)) - { - StringWriter writer = new StringWriter(); - IO.copy(reader,writer); - return writer.toString(); - } - } -} diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/RequestLogTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/RequestLogTest.java index 040e919d4b0..9c7069daf42 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/RequestLogTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/RequestLogTest.java @@ -18,31 +18,47 @@ package org.eclipse.jetty.server.handler; -import static org.hamcrest.Matchers.containsString; import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.contains; +import static org.hamcrest.Matchers.containsString; import java.io.IOException; import java.io.InputStream; import java.io.PrintWriter; +import java.util.ArrayList; import java.util.Arrays; -import java.util.concurrent.Exchanger; +import java.util.List; +import java.util.concurrent.BlockingQueue; import java.util.concurrent.TimeUnit; +import java.util.stream.Stream; +import javax.servlet.AsyncContext; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.eclipse.jetty.http.BadMessageException; import org.eclipse.jetty.server.AbstractNCSARequestLog; +import org.eclipse.jetty.server.Handler; import org.eclipse.jetty.server.LocalConnector; import org.eclipse.jetty.server.Request; +import org.eclipse.jetty.server.RequestLog; +import org.eclipse.jetty.server.Response; import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.util.BlockingArrayQueue; +import org.eclipse.jetty.util.component.AbstractLifeCycle; import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Assumptions; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.Arguments; +import org.junit.jupiter.params.provider.MethodSource; public class RequestLogTest { - Exchanger _log; + Log _log; Server _server; LocalConnector _connector; @@ -50,19 +66,35 @@ public class RequestLogTest @BeforeEach public void before() throws Exception { - _log = new Exchanger(); + _log = new Log(); _server = new Server(); _connector = new LocalConnector(_server); _server.addConnector(_connector); - _server.setRequestLog(new Log()); + + } + + void testHandlerServerStart() throws Exception + { + _server.setRequestLog(_log); _server.setHandler(new TestHandler()); _server.start(); } + private void startServer() throws Exception + { + _server.start(); + } + + private void makeRequest(String requestPath) throws Exception + { + _connector.getResponse("GET "+requestPath+" HTTP/1.0\r\n\r\n"); + } + + + @AfterEach public void after() throws Exception { - _server.stop(); } @@ -70,35 +102,41 @@ public class RequestLogTest @Test public void testNotHandled() throws Exception { + testHandlerServerStart(); + _connector.getResponse("GET /foo HTTP/1.0\n\n"); - String log = _log.exchange(null,5,TimeUnit.SECONDS); + String log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("GET /foo HTTP/1.0\" 404 ")); } @Test public void testRequestLine() throws Exception { + testHandlerServerStart(); + _connector.getResponse("GET /foo?data=1 HTTP/1.0\nhost: host:80\n\n"); - String log = _log.exchange(null,5,TimeUnit.SECONDS); + String log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("GET /foo?data=1 HTTP/1.0\" 200 ")); _connector.getResponse("GET //bad/foo?data=1 HTTP/1.0\n\n"); - log = _log.exchange(null,5,TimeUnit.SECONDS); + log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("GET //bad/foo?data=1 HTTP/1.0\" 200 ")); _connector.getResponse("GET http://host:80/foo?data=1 HTTP/1.0\n\n"); - log = _log.exchange(null,5,TimeUnit.SECONDS); + log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("GET http://host:80/foo?data=1 HTTP/1.0\" 200 ")); } @Test public void testHTTP10Host() throws Exception { + testHandlerServerStart(); + _connector.getResponse( "GET /foo?name=value HTTP/1.0\n"+ "Host: servername\n"+ "\n"); - String log = _log.exchange(null,5,TimeUnit.SECONDS); + String log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("GET /foo?name=value")); assertThat(log,containsString(" 200 ")); } @@ -106,11 +144,13 @@ public class RequestLogTest @Test public void testHTTP11() throws Exception { + testHandlerServerStart(); + _connector.getResponse( "GET /foo?name=value HTTP/1.1\n"+ "Host: servername\n"+ "\n"); - String log = _log.exchange(null,5,TimeUnit.SECONDS); + String log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("GET /foo?name=value")); assertThat(log,containsString(" 200 ")); } @@ -118,11 +158,13 @@ public class RequestLogTest @Test public void testAbsolute() throws Exception { + testHandlerServerStart(); + _connector.getResponse( "GET http://hostname:8888/foo?name=value HTTP/1.1\n"+ "Host: servername\n"+ "\n"); - String log = _log.exchange(null,5,TimeUnit.SECONDS); + String log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("GET http://hostname:8888/foo?name=value")); assertThat(log,containsString(" 200 ")); } @@ -130,8 +172,10 @@ public class RequestLogTest @Test public void testQuery() throws Exception { + testHandlerServerStart(); + _connector.getResponse("GET /foo?name=value HTTP/1.0\n\n"); - String log = _log.exchange(null,5,TimeUnit.SECONDS); + String log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("GET /foo?name=value")); assertThat(log,containsString(" 200 ")); } @@ -139,8 +183,10 @@ public class RequestLogTest @Test public void testSmallData() throws Exception { + testHandlerServerStart(); + _connector.getResponse("GET /foo?data=42 HTTP/1.0\n\n"); - String log = _log.exchange(null,5,TimeUnit.SECONDS); + String log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("GET /foo?")); assertThat(log,containsString(" 200 42 ")); } @@ -148,8 +194,10 @@ public class RequestLogTest @Test public void testBigData() throws Exception { + testHandlerServerStart(); + _connector.getResponse("GET /foo?data=102400 HTTP/1.0\n\n"); - String log = _log.exchange(null,5,TimeUnit.SECONDS); + String log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("GET /foo?")); assertThat(log,containsString(" 200 102400 ")); } @@ -157,8 +205,10 @@ public class RequestLogTest @Test public void testStatus() throws Exception { + testHandlerServerStart(); + _connector.getResponse("GET /foo?status=206 HTTP/1.0\n\n"); - String log = _log.exchange(null,5,TimeUnit.SECONDS); + String log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("GET /foo?")); assertThat(log,containsString(" 206 0 ")); } @@ -166,8 +216,10 @@ public class RequestLogTest @Test public void testStatusData() throws Exception { + testHandlerServerStart(); + _connector.getResponse("GET /foo?status=206&data=42 HTTP/1.0\n\n"); - String log = _log.exchange(null,5,TimeUnit.SECONDS); + String log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("GET /foo?")); assertThat(log,containsString(" 206 42 ")); } @@ -175,83 +227,460 @@ public class RequestLogTest @Test public void testBadRequest() throws Exception { + testHandlerServerStart(); + _connector.getResponse("XXXXXXXXXXXX\n\n"); - String log = _log.exchange(null,5,TimeUnit.SECONDS); + String log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("\"- - -\"")); - assertThat(log,containsString(" 400 0 ")); + assertThat(log,containsString(" 400 ")); } @Test public void testBadCharacter() throws Exception { + testHandlerServerStart(); + _connector.getResponse("METHOD /f\00o HTTP/1.0\n\n"); - String log = _log.exchange(null,5,TimeUnit.SECONDS); + String log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("\"- - -\"")); - assertThat(log,containsString(" 400 0 ")); + assertThat(log,containsString(" 400 ")); } @Test public void testBadVersion() throws Exception { + testHandlerServerStart(); + _connector.getResponse("METHOD /foo HTTP/9\n\n"); - String log = _log.exchange(null,5,TimeUnit.SECONDS); + String log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("\"- - -\"")); - assertThat(log,containsString(" 400 0 ")); + assertThat(log,containsString(" 400 ")); } @Test public void testLongURI() throws Exception { + testHandlerServerStart(); + char[] chars = new char[10000]; Arrays.fill(chars,'o'); String ooo = new String(chars); _connector.getResponse("METHOD /f"+ooo+" HTTP/1.0\n\n"); - String log = _log.exchange(null,5,TimeUnit.SECONDS); + String log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("\"- - -\"")); - assertThat(log,containsString(" 414 0 ")); + assertThat(log,containsString(" 414 ")); } @Test public void testLongHeader() throws Exception { + testHandlerServerStart(); + char[] chars = new char[10000]; Arrays.fill(chars,'o'); String ooo = new String(chars); _connector.getResponse("METHOD /foo HTTP/1.0\name: f+"+ooo+"\n\n"); - String log = _log.exchange(null,5,TimeUnit.SECONDS); + String log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("\"METHOD /foo HTTP/1.0\"")); - assertThat(log,containsString(" 431 0 ")); + assertThat(log,containsString(" 431 ")); } @Test public void testBadRequestNoHost() throws Exception { + testHandlerServerStart(); + _connector.getResponse("GET /foo HTTP/1.1\n\n"); - String log = _log.exchange(null,5,TimeUnit.SECONDS); + String log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("GET /foo ")); - assertThat(log,containsString(" 400 0 ")); + assertThat(log,containsString(" 400 ")); } @Test public void testUseragentWithout() throws Exception { + testHandlerServerStart(); + _connector.getResponse("GET http://[:1]/foo HTTP/1.1\nReferer: http://other.site\n\n"); - String log = _log.exchange(null,5,TimeUnit.SECONDS); + String log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("GET http://[:1]/foo ")); - assertThat(log,containsString(" 400 0 \"http://other.site\" \"-\" - ")); + assertThat(log,containsString(" 400 50 \"http://other.site\" \"-\" - ")); } @Test public void testUseragentWith() throws Exception { + testHandlerServerStart(); + _connector.getResponse("GET http://[:1]/foo HTTP/1.1\nReferer: http://other.site\nUser-Agent: Mozilla/5.0 (test)\n\n"); - String log = _log.exchange(null,5,TimeUnit.SECONDS); + String log = _log.entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("GET http://[:1]/foo ")); - assertThat(log,containsString(" 400 0 \"http://other.site\" \"Mozilla/5.0 (test)\" - ")); + assertThat(log,containsString(" 400 50 \"http://other.site\" \"Mozilla/5.0 (test)\" - ")); } + + + // Tests from here use these parameters + public static Stream data() + { + List data = new ArrayList<>(); + + data.add(new Object[] { new NoopHandler(), "/noop", "\"GET /noop HTTP/1.0\" 404" }); + data.add(new Object[] { new HelloHandler(), "/hello", "\"GET /hello HTTP/1.0\" 200" }); + data.add(new Object[] { new ResponseSendErrorHandler(), "/sendError", "\"GET /sendError HTTP/1.0\" 599" }); + data.add(new Object[] { new ServletExceptionHandler(), "/sex", "\"GET /sex HTTP/1.0\" 500" }); + data.add(new Object[] { new IOExceptionHandler(), "/ioex", "\"GET /ioex HTTP/1.0\" 500" }); + data.add(new Object[] { new RuntimeExceptionHandler(), "/rtex", "\"GET /rtex HTTP/1.0\" 500" }); + data.add(new Object[] { new BadMessageHandler(), "/bad", "\"GET /bad HTTP/1.0\" 499" }); + data.add(new Object[] { new AbortHandler(), "/bad", "\"GET /bad HTTP/1.0\" 488" }); + + return data.stream().map(Arguments::of); + } + + @ParameterizedTest + @MethodSource("data") + public void testServerRequestLog(Handler testHandler, String requestPath, String expectedLogEntry) throws Exception + { + _server.setRequestLog(_log); + _server.setHandler(testHandler); + startServer(); + makeRequest(requestPath); + assertRequestLog(expectedLogEntry, _log); + } + + @ParameterizedTest + @MethodSource("data") + public void testLogHandlerWrapper(Handler testHandler, String requestPath, String expectedLogEntry) throws Exception + { + RequestLogHandler handler = new RequestLogHandler(); + handler.setRequestLog(_log); + handler.setHandler(testHandler); + _server.setHandler(handler); + startServer(); + makeRequest(requestPath); + assertRequestLog(expectedLogEntry, _log); + } + + @ParameterizedTest + @MethodSource("data") + public void testLogHandlerCollectionFirst(Handler testHandler, String requestPath, String expectedLogEntry) throws Exception + { + RequestLogHandler handler = new RequestLogHandler(); + handler.setRequestLog(_log); + HandlerCollection handlers = new HandlerCollection(); + handlers.setHandlers(new Handler[] { handler, testHandler }); + _server.setHandler(handlers); + startServer(); + makeRequest(requestPath); + assertRequestLog(expectedLogEntry, _log); + } + + + @ParameterizedTest + @MethodSource("data") + public void testLogHandlerCollectionLast(Handler testHandler, String requestPath, String expectedLogEntry) throws Exception + { + RequestLogHandler handler = new RequestLogHandler(); + handler.setRequestLog(_log); + // This is the old ordering of request handler and it cannot well handle thrown exception + Assumptions.assumeTrue( + testHandler instanceof NoopHandler || + testHandler instanceof HelloHandler || + testHandler instanceof ResponseSendErrorHandler + ); + + HandlerCollection handlers = new HandlerCollection(); + handlers.setHandlers(new Handler[] { testHandler, handler }); + _server.setHandler(handlers); + startServer(); + makeRequest(requestPath); + assertRequestLog(expectedLogEntry, _log); + } + + + @ParameterizedTest + @MethodSource("data") + public void testErrorHandler(Handler testHandler, String requestPath, String expectedLogEntry) throws Exception + { + _server.setRequestLog(_log); + AbstractHandler.ErrorDispatchHandler wrapper = new AbstractHandler.ErrorDispatchHandler() + { + @Override + protected void doNonErrorHandle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) + throws IOException, ServletException + { + testHandler.handle(target,baseRequest,request,response); + } + }; + + _server.setHandler(wrapper); + + List errors = new ArrayList<>(); + ErrorHandler errorHandler = new ErrorHandler() + { + @Override + public void doError(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException + { + errors.add(baseRequest.getRequestURI()); + super.doError(target, baseRequest, request, response); + } + }; + _server.addBean(errorHandler); + startServer(); + makeRequest(requestPath); + assertRequestLog(expectedLogEntry, _log); + + if (!(testHandler instanceof HelloHandler)) + assertThat(errors,contains(requestPath)); + } + + + @ParameterizedTest + @MethodSource("data") + public void testOKErrorHandler(Handler testHandler, String requestPath, String expectedLogEntry) throws Exception + { + _server.setRequestLog(_log); + AbstractHandler.ErrorDispatchHandler wrapper = new AbstractHandler.ErrorDispatchHandler() + { + @Override + protected void doNonErrorHandle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) + throws IOException, ServletException + { + testHandler.handle(target,baseRequest,request,response); + } + }; + + _server.setHandler(wrapper); + + ErrorHandler errorHandler = new OKErrorHandler(); + _server.addBean(errorHandler); + startServer(); + makeRequest(requestPath); + + expectedLogEntry = "\"GET " + requestPath + " HTTP/1.0\" 200"; + assertRequestLog(expectedLogEntry, _log); + } + + + @ParameterizedTest + @MethodSource("data") + public void testAsyncDispatch(Handler testHandler, String requestPath, String expectedLogEntry) throws Exception + { + _server.setRequestLog(_log); + _server.setHandler(new AbstractHandler() + { + @Override + public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) + throws IOException, ServletException + { + if (Boolean.TRUE.equals(request.getAttribute("ASYNC"))) + testHandler.handle(target,baseRequest,request,response); + else + { + request.setAttribute("ASYNC",Boolean.TRUE); + AsyncContext ac = request.startAsync(); + ac.setTimeout(1000); + ac.dispatch(); + baseRequest.setHandled(true); + } + } + }); + startServer(); + makeRequest(requestPath); + + assertRequestLog(expectedLogEntry, _log); + } + + + @ParameterizedTest + @MethodSource("data") + public void testAsyncComplete(Handler testHandler, String requestPath, String expectedLogEntry) throws Exception + { + _server.setRequestLog(_log); + _server.setHandler(new AbstractHandler() + { + @Override + public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) + throws IOException, ServletException + { + if (Boolean.TRUE.equals(request.getAttribute("ASYNC"))) + testHandler.handle(target,baseRequest,request,response); + else + { + request.setAttribute("ASYNC",Boolean.TRUE); + AsyncContext ac = request.startAsync(); + ac.setTimeout(1000); + baseRequest.setHandled(true); + _server.getThreadPool().execute(()-> + { + try + { + try + { + baseRequest.setHandled(false); + testHandler.handle(target, baseRequest, request, response); + if (!baseRequest.isHandled()) + response.sendError(404); + } + catch (BadMessageException bad) + { + response.sendError(bad.getCode()); + } + catch (Exception e) + { + response.sendError(500); + } + } + catch(Throwable th) + { + throw new RuntimeException(th); + } + ac.complete(); + }); + } + } + }); + startServer(); + makeRequest(requestPath); + assertRequestLog(expectedLogEntry, _log); + } + + + private void assertRequestLog(final String expectedLogEntry, Log log) throws Exception + { + String line = log.entries.poll(5, TimeUnit.SECONDS); + Assertions.assertNotNull(line); + assertThat(line,containsString(expectedLogEntry)); + Assertions.assertTrue(log.entries.isEmpty()); + } + + public static class CaptureLog extends AbstractLifeCycle implements RequestLog + { + public BlockingQueue log = new BlockingArrayQueue<>(); + + @Override + public void log(Request request, Response response) + { + int status = response.getCommittedMetaData().getStatus(); + log.add(String.format("%s %s %s %03d",request.getMethod(),request.getRequestURI(),request.getProtocol(),status)); + } + } + + private static abstract class AbstractTestHandler extends AbstractHandler + { + @Override + public String toString() + { + return this.getClass().getSimpleName(); + } + } + + private static class NoopHandler extends AbstractTestHandler + { + @Override + public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException + { + } + } + + private static class HelloHandler extends AbstractTestHandler + { + @Override + public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException + { + response.setContentType("text/plain"); + response.getWriter().print("Hello World"); + if (baseRequest!=null) + baseRequest.setHandled(true); + } + } + + private static class ResponseSendErrorHandler extends AbstractTestHandler + { + @Override + public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException + { + response.sendError(599,"expected"); + if (baseRequest!=null) + baseRequest.setHandled(true); + } + } + + private static class ServletExceptionHandler extends AbstractTestHandler + { + @Override + public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException + { + throw new ServletException("expected"); + } + } + + private static class IOExceptionHandler extends AbstractTestHandler + { + @Override + public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException + { + throw new IOException("expected"); + } + } + + private static class RuntimeExceptionHandler extends AbstractTestHandler + { + @Override + public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException + { + throw new RuntimeException("expected"); + } + } + + private static class BadMessageHandler extends AbstractTestHandler + { + @Override + public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException + { + throw new BadMessageException(499); + } + } + + private static class AbortHandler extends AbstractTestHandler + { + @Override + public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException + { + BadMessageException bad = new BadMessageException(488); + baseRequest.getHttpChannel().abort(bad); + throw bad; + } + } + + public static class OKErrorHandler extends ErrorHandler + { + @Override + public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException + { + if (baseRequest.isHandled() || response.isCommitted()) + { + return; + } + + // collect error details + String reason = (response instanceof Response)?((Response)response).getReason():null; + int status = response.getStatus(); + + // intentionally set response status to OK (this is a test to see what is actually logged) + response.setStatus(200); + response.setContentType("text/plain"); + PrintWriter out = response.getWriter(); + out.printf("Error %d: %s%n",status,reason); + baseRequest.setHandled(true); + } + } + private class Log extends AbstractNCSARequestLog { + public BlockingQueue entries = new BlockingArrayQueue<>(); + + Log() { super.setExtended(true); super.setLogLatency(true); @@ -269,7 +698,7 @@ public class RequestLogTest { try { - _log.exchange(requestEntry); + entries.add(requestEntry); } catch(Exception e) { @@ -277,7 +706,7 @@ public class RequestLogTest } } } - + private class TestHandler extends AbstractHandler { @Override @@ -286,7 +715,7 @@ public class RequestLogTest String q = request.getQueryString(); if (q==null) return; - + baseRequest.setHandled(true); for (String action : q.split("\\&")) { @@ -300,12 +729,12 @@ public class RequestLogTest response.setStatus(Integer.parseInt(value)); break; } - + case "data": { int data = Integer.parseInt(value); PrintWriter out = response.getWriter(); - + int w=0; while (w(); RequestLog log=new Log(); - RequestLogHandler logHandler = new RequestLogHandler(); - logHandler.setRequestLog(log); - _server.setHandler(logHandler); + _server.setRequestLog(log); _expectedLogs=1; _expectedCode="200 "; ServletContextHandler context = new ServletContextHandler(ServletContextHandler.NO_SESSIONS); context.setContextPath("/ctx"); - logHandler.setHandler(context); + _server.setHandler(context); context.addEventListener(new DebugListener()); _errorHandler = new ErrorPageErrorHandler(); diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletRequestLogTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletRequestLogTest.java index 32d45af3edf..2ab0f0b5b7a 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletRequestLogTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletRequestLogTest.java @@ -53,7 +53,6 @@ import org.eclipse.jetty.server.handler.ContextHandlerCollection; import org.eclipse.jetty.server.handler.DefaultHandler; import org.eclipse.jetty.server.handler.ErrorHandler; import org.eclipse.jetty.server.handler.HandlerCollection; -import org.eclipse.jetty.server.handler.RequestLogHandler; import org.eclipse.jetty.toolchain.test.IO; import org.eclipse.jetty.util.component.AbstractLifeCycle; import org.eclipse.jetty.util.log.Log; @@ -313,12 +312,9 @@ public class ServletRequestLogTest // Next the behavior as defined by etc/jetty-requestlog.xml // the id="RequestLog" - RequestLogHandler requestLog = new RequestLogHandler(); CaptureLog captureLog = new CaptureLog(); - requestLog.setRequestLog(captureLog); + server.setRequestLog(captureLog); - handlers.addHandler(requestLog); - // Lastly, the behavior as defined by deployment of a webapp // Add the Servlet Context ServletContextHandler app = new ServletContextHandler(ServletContextHandler.SESSIONS); @@ -404,12 +400,9 @@ public class ServletRequestLogTest // Next the behavior as defined by etc/jetty-requestlog.xml // the id="RequestLog" - RequestLogHandler requestLog = new RequestLogHandler(); CaptureLog captureLog = new CaptureLog(); - requestLog.setRequestLog(captureLog); + server.setRequestLog(captureLog); - handlers.addHandler(requestLog); - // Lastly, the behavior as defined by deployment of a webapp // Add the Servlet Context ServletContextHandler app = new ServletContextHandler(ServletContextHandler.SESSIONS); @@ -493,12 +486,9 @@ public class ServletRequestLogTest // Next the behavior as defined by etc/jetty-requestlog.xml // the id="RequestLog" - RequestLogHandler requestLog = new RequestLogHandler(); CaptureLog captureLog = new CaptureLog(); - requestLog.setRequestLog(captureLog); + server.setRequestLog(captureLog); - handlers.addHandler(requestLog); - // Lastly, the behavior as defined by deployment of a webapp // Add the Servlet Context ServletContextHandler app = new ServletContextHandler(ServletContextHandler.SESSIONS); @@ -587,14 +577,9 @@ public class ServletRequestLogTest // Next the proposed behavioral change to etc/jetty-requestlog.xml // the id="RequestLog" - RequestLogHandler requestLog = new RequestLogHandler(); CaptureLog captureLog = new CaptureLog(); - requestLog.setRequestLog(captureLog); - - Handler origServerHandler = server.getHandler(); - requestLog.setHandler(origServerHandler); - server.setHandler(requestLog); - + server.setRequestLog(captureLog); + // Lastly, the behavior as defined by deployment of a webapp // Add the Servlet Context ServletContextHandler app = new ServletContextHandler(ServletContextHandler.SESSIONS); diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/ServerTimeoutsTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/ServerTimeoutsTest.java index 399ec3418f7..ba32c40d9fa 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/ServerTimeoutsTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/ServerTimeoutsTest.java @@ -20,9 +20,14 @@ package org.eclipse.jetty.http.client; import static org.eclipse.jetty.http.client.Transport.FCGI; import static org.eclipse.jetty.http.client.Transport.UNIX_SOCKET; +import static org.hamcrest.Matchers.containsString; +import static org.hamcrest.Matchers.instanceOf; +import static org.hamcrest.Matchers.is; +import static org.junit.Assert.assertThat; import static org.junit.jupiter.api.Assertions.assertArrayEquals; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNotNull; import static org.junit.jupiter.api.Assertions.assertTrue; import java.io.IOException; @@ -56,10 +61,10 @@ import org.eclipse.jetty.server.Handler; import org.eclipse.jetty.server.HttpChannel; import org.eclipse.jetty.server.Request; import org.eclipse.jetty.server.handler.AbstractHandler; +import org.eclipse.jetty.util.BlockingArrayQueue; import org.eclipse.jetty.util.Callback; import org.eclipse.jetty.util.IO; import org.eclipse.jetty.util.log.StacklessLogging; -import org.eclipse.jetty.util.thread.QueuedThreadPool; import org.junit.jupiter.api.Assumptions; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.ArgumentsSource; @@ -616,6 +621,7 @@ public class ServerTimeoutsTest extends AbstractTest { init(transport); int bytesPerSecond = 20; + scenario.requestLog.clear(); scenario.httpConfig.setMinRequestDataRate(bytesPerSecond); CountDownLatch handlerLatch = new CountDownLatch(1); scenario.start(new AbstractHandler.ErrorDispatchHandler() @@ -643,13 +649,15 @@ public class ServerTimeoutsTest extends AbstractTest }); DeferredContentProvider contentProvider = new DeferredContentProvider(); - CountDownLatch resultLatch = new CountDownLatch(1); + BlockingQueue results = new BlockingArrayQueue<>(); scenario.client.newRequest(scenario.newURI()) .content(contentProvider) .send(result -> { - if (result.getResponse().getStatus() == HttpStatus.REQUEST_TIMEOUT_408) - resultLatch.countDown(); + if (result.isFailed()) + results.offer(result.getFailure()); + else + results.offer(result.getResponse().getStatus()); }); for (int i = 0; i < 3; ++i) @@ -659,9 +667,17 @@ public class ServerTimeoutsTest extends AbstractTest } contentProvider.close(); + assertThat(scenario.requestLog.poll(5,TimeUnit.SECONDS), containsString(" 408")); + // Request should timeout. assertTrue(handlerLatch.await(5, TimeUnit.SECONDS)); - assertTrue(resultLatch.await(5, TimeUnit.SECONDS)); + + Object result = results.poll(5, TimeUnit.SECONDS); + assertNotNull(result); + if (result instanceof Integer) + assertThat((Integer)result,is(408)); + else + assertThat(result,instanceOf(Throwable.class)); } @ParameterizedTest diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/TransportScenario.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/TransportScenario.java index 752d03aa382..174c1e51f1c 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/TransportScenario.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/TransportScenario.java @@ -25,6 +25,7 @@ import java.nio.file.Path; import java.util.ArrayList; import java.util.List; import java.util.Optional; +import java.util.concurrent.BlockingQueue; import javax.servlet.http.HttpServlet; @@ -56,6 +57,7 @@ import org.eclipse.jetty.servlet.ServletHolder; import org.eclipse.jetty.toolchain.test.MavenTestingUtils; import org.eclipse.jetty.unixsocket.UnixSocketConnector; import org.eclipse.jetty.unixsocket.client.HttpClientTransportOverUnixSockets; +import org.eclipse.jetty.util.BlockingArrayQueue; import org.eclipse.jetty.util.SocketAddressResolver; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -75,6 +77,7 @@ public class TransportScenario protected String servletPath = "/servlet"; protected HttpClient client; protected Path sockFile; + protected final BlockingQueue requestLog= new BlockingArrayQueue<>(); public TransportScenario(final Transport transport) throws IOException { @@ -320,7 +323,15 @@ public class TransportScenario server.addBean(mbeanContainer); connector = newServerConnector(server); server.addConnector(connector); + + server.setRequestLog((request, response) -> + { + int status = response.getCommittedMetaData().getStatus(); + requestLog.offer(String.format("%s %s %s %03d",request.getMethod(),request.getRequestURI(),request.getProtocol(),status)); + }); + server.setHandler(handler); + try { server.start(); @@ -375,4 +386,6 @@ public class TransportScenario } } } + + } diff --git a/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/TestServer.java b/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/TestServer.java index a078dac760e..ca61e939857 100644 --- a/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/TestServer.java +++ b/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/TestServer.java @@ -34,7 +34,6 @@ import org.eclipse.jetty.server.handler.ContextHandlerCollection; import org.eclipse.jetty.server.handler.DefaultHandler; import org.eclipse.jetty.server.handler.HandlerCollection; import org.eclipse.jetty.server.handler.HandlerWrapper; -import org.eclipse.jetty.server.handler.RequestLogHandler; import org.eclipse.jetty.server.handler.ResourceHandler; import org.eclipse.jetty.server.session.DefaultSessionCache; import org.eclipse.jetty.server.session.FileSessionDataStore; @@ -105,9 +104,8 @@ public class TestServer // Handlers HandlerCollection handlers = new HandlerCollection(); ContextHandlerCollection contexts = new ContextHandlerCollection(); - RequestLogHandler requestLogHandler = new RequestLogHandler(); handlers.setHandlers(new Handler[] - { contexts, new DefaultHandler(), requestLogHandler }); + { contexts, new DefaultHandler() }); // Add restart handler to test the ability to save sessions and restart RestartHandler restart = new RestartHandler(); @@ -125,7 +123,7 @@ public class TestServer File log=File.createTempFile("jetty-yyyy_mm_dd", "log"); NCSARequestLog requestLog = new NCSARequestLog(log.toString()); requestLog.setExtended(false); - requestLogHandler.setRequestLog(requestLog); + server.setRequestLog(requestLog); server.setStopAtShutdown(true); From 0fe4b8aa34c997204c6ca90a5ed2ca37bde4a7d7 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Thu, 1 Nov 2018 17:35:21 +0100 Subject: [PATCH 116/931] increased timeouts to check for flaky test Signed-off-by: Greg Wilkins --- .../jetty/client/ssl/NeedWantClientAuthTest.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/NeedWantClientAuthTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/NeedWantClientAuthTest.java index 12aca96fec7..53a1262cf16 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/NeedWantClientAuthTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/NeedWantClientAuthTest.java @@ -110,7 +110,7 @@ public class NeedWantClientAuthTest startClient(clientSSL); ContentResponse response = client.newRequest("https://localhost:" + connector.getLocalPort()) - .timeout(5, TimeUnit.SECONDS) + .timeout(10, TimeUnit.SECONDS) .send(); assertEquals(HttpStatus.OK_200, response.getStatus()); @@ -149,11 +149,11 @@ public class NeedWantClientAuthTest startClient(clientSSL); ContentResponse response = client.newRequest("https://localhost:" + connector.getLocalPort()) - .timeout(5, TimeUnit.SECONDS) + .timeout(10, TimeUnit.SECONDS) .send(); assertEquals(HttpStatus.OK_200, response.getStatus()); - assertTrue(handshakeLatch.await(5, TimeUnit.SECONDS)); + assertTrue(handshakeLatch.await(10, TimeUnit.SECONDS)); } @Test @@ -192,7 +192,7 @@ public class NeedWantClientAuthTest CountDownLatch latch = new CountDownLatch(1); client.newRequest("https://localhost:" + connector.getLocalPort()) - .timeout(5, TimeUnit.SECONDS) + .timeout(10, TimeUnit.SECONDS) .send(result -> { if (result.isFailed()) @@ -203,8 +203,8 @@ public class NeedWantClientAuthTest } }); - assertTrue(handshakeLatch.await(5, TimeUnit.SECONDS)); - assertTrue(latch.await(5, TimeUnit.SECONDS)); + assertTrue(handshakeLatch.await(10, TimeUnit.SECONDS)); + assertTrue(latch.await(10, TimeUnit.SECONDS)); } @Test @@ -240,10 +240,10 @@ public class NeedWantClientAuthTest startClient(clientSSL); ContentResponse response = client.newRequest("https://localhost:" + connector.getLocalPort()) - .timeout(5, TimeUnit.SECONDS) + .timeout(10, TimeUnit.SECONDS) .send(); assertEquals(HttpStatus.OK_200, response.getStatus()); - assertTrue(handshakeLatch.await(5, TimeUnit.SECONDS)); + assertTrue(handshakeLatch.await(10, TimeUnit.SECONDS)); } } From 9d7d47f0a8bef61dea81e82b824adfa8339c25e5 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Thu, 1 Nov 2018 17:40:15 +0100 Subject: [PATCH 117/931] Issue #2941 - JDK 11: UnsupportedOperationException at AnnotationParser.scanClass. Updated ASM Import-Package version to be "5", which means from ASM 5 onwards. Updated ASM version in the main POM to 7.0. Signed-off-by: Simone Bordet --- jetty-annotations/pom.xml | 2 +- jetty-osgi/jetty-osgi-boot/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/jetty-annotations/pom.xml b/jetty-annotations/pom.xml index 52080ae0f58..c1e4feeaa35 100644 --- a/jetty-annotations/pom.xml +++ b/jetty-annotations/pom.xml @@ -20,7 +20,7 @@ true - org.objectweb.asm;version="[5.0,7)",* + org.objectweb.asm;version="5",* osgi.serviceloader; filter:="(osgi.serviceloader=javax.servlet.ServletContainerInitializer)";resolution:=optional;cardinality:=multiple, osgi.extender; filter:="(osgi.extender=osgi.serviceloader.processor)";resolution:=optional diff --git a/jetty-osgi/jetty-osgi-boot/pom.xml b/jetty-osgi/jetty-osgi-boot/pom.xml index 18457863a7c..bf52d3592a9 100644 --- a/jetty-osgi/jetty-osgi-boot/pom.xml +++ b/jetty-osgi/jetty-osgi-boot/pom.xml @@ -80,7 +80,7 @@ javax.servlet.http;version="[3.1,3.2)", javax.transaction;version="1.1.0";resolution:=optional, javax.transaction.xa;version="1.1.0";resolution:=optional, - org.objectweb.asm;version=4;resolution:=optional, + org.objectweb.asm;version="5";resolution:=optional, org.osgi.framework, org.osgi.service.cm;version="1.2.0", org.osgi.service.packageadmin, From 97c37f998bf887d1fe733c22f769d1bd777edf29 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Thu, 1 Nov 2018 17:48:39 +0100 Subject: [PATCH 118/931] Issue #2941 - JDK 11: UnsupportedOperationException at AnnotationParser.scanClass. Updated ASM version in the main POM to 7.0. Signed-off-by: Simone Bordet --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index cc1098231cf..620000f4a80 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ undefined 1.1.4 - 7.0-beta + 7.0 1.21 benchmarks 1.2.0 From 58c1d547a01004a79c00723af45632c57f8d7d11 Mon Sep 17 00:00:00 2001 From: Jan Bartel Date: Fri, 2 Nov 2018 04:14:24 +1100 Subject: [PATCH 119/931] Issue #3044 Use unwrapped session for SessionAsyncListener (#3053) * Issue #3044 Use unwrapped session for SessionAsyncListener --- .../jetty/server/session/SessionHandler.java | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java index e266a243eea..5dde83b28b6 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java @@ -158,19 +158,12 @@ public class SessionHandler extends ScopedHandler * has its session completed as the request exits the context. */ public class SessionAsyncListener implements AsyncListener - { - private Session _session; - - public SessionAsyncListener(Session session) - { - _session = session; - } - + { @Override public void onComplete(AsyncEvent event) throws IOException { //An async request has completed, so we can complete the session - complete(((HttpServletRequest)event.getAsyncContext().getRequest()).getSession(false)); + complete(Request.getBaseRequest(event.getAsyncContext().getRequest()).getSession(false)); } @Override @@ -182,7 +175,7 @@ public class SessionHandler extends ScopedHandler @Override public void onError(AsyncEvent event) throws IOException { - complete(((HttpServletRequest)event.getAsyncContext().getRequest()).getSession(false)); + complete(Request.getBaseRequest(event.getAsyncContext().getRequest()).getSession(false)); } @Override @@ -190,7 +183,6 @@ public class SessionHandler extends ScopedHandler { event.getAsyncContext().addListener(this); } - } static final HttpSessionContext __nullSessionContext=new HttpSessionContext() @@ -251,6 +243,7 @@ public class SessionHandler extends ScopedHandler protected Scheduler _scheduler; protected boolean _ownScheduler = false; + protected final SessionAsyncListener _sessionAsyncListener = new SessionAsyncListener(); @@ -381,7 +374,7 @@ public class SessionHandler extends ScopedHandler { if (request.isAsyncStarted() && request.getDispatcherType() == DispatcherType.REQUEST) { - request.getAsyncContext().addListener(new SessionAsyncListener(session)); + request.getAsyncContext().addListener(_sessionAsyncListener); } else { From bb045f641e1da5ab9c61db870858a2dafce815f2 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Fri, 2 Nov 2018 05:19:03 +0100 Subject: [PATCH 120/931] Issue #3049 Warn on common SslContext vulnerable configurations (#3050) * Issue #3049 Warn on common SslContext vulnerable configurations Signed-off-by: Greg Wilkins * Adding documentation notes for weak cipher warnings Signed-off-by: WalkerWatch * Issue #3049 - SslContextFactory warnings on known bad config + Changes warnings from being a boolean on SslContextFactory to being a logger named "org.eclipse.jetty.util.ssl.SslContextFactory.config" Signed-off-by: Joakim Erdfelt * Issue #3049 - SslContextFactory warnings on known bad config + Cleanup based on review Signed-off-by: Joakim Erdfelt * Issue #3049 - SslContextFactory warnings on known bad config + Cleanup based on review Signed-off-by: Joakim Erdfelt --- .../connectors/configuring-ssl.adoc | 8 ++- .../src/main/config/etc/jetty-ssl-context.xml | 2 +- .../src/main/config/modules/https.mod | 2 +- jetty-server/src/main/config/modules/ssl.mod | 4 ++ .../jetty/util/ssl/SslContextFactory.java | 71 +++++++++++++++---- 5 files changed, 69 insertions(+), 18 deletions(-) diff --git a/jetty-documentation/src/main/asciidoc/configuring/connectors/configuring-ssl.adoc b/jetty-documentation/src/main/asciidoc/configuring/connectors/configuring-ssl.adoc index 41408190c55..8fd729a0d4e 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/connectors/configuring-ssl.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/connectors/configuring-ssl.adoc @@ -772,6 +772,12 @@ Both `setIncludeCipherSuites` and `setExcludeCipherSuites` can be fed by the exa If you have a need to adjust the Includes or Excludes, then this is best done with a custom XML that configures the `SslContextFactory` to suit your needs. +____ +[NOTE] +Jetty *does* allow users to enable weak/deprecated cipher suites (or even no cipher suites at all). +By default, if you have these suites enabled warning messages will appear in the server logs. +____ + To do this, first create a new `${jetty.base}/etc/tweak-ssl.xml` file (this can be any name, just avoid prefixing it with "jetty-"). [source, xml, subs="{sub-order}"] @@ -820,7 +826,7 @@ ____ ____ [TIP] -You can enable the `org.eclipse.jetty.util.ssl` named logger at DEBUG level to see what the list of selected Protocols and Cipher suites are at startup of Jetty. +You can enable the `org.eclipse.jetty.util.ssl` named logger at `DEBUG` level to see what the list of selected Protocols and Cipher suites are at startup of Jetty. ____ Additional Include / Exclude examples: diff --git a/jetty-server/src/main/config/etc/jetty-ssl-context.xml b/jetty-server/src/main/config/etc/jetty-ssl-context.xml index e5ed517dee2..22563921044 100644 --- a/jetty-server/src/main/config/etc/jetty-ssl-context.xml +++ b/jetty-server/src/main/config/etc/jetty-ssl-context.xml @@ -21,7 +21,7 @@ - + diff --git a/jetty-server/src/main/config/modules/https.mod b/jetty-server/src/main/config/modules/https.mod index 8136579de2c..b316a2edd41 100644 --- a/jetty-server/src/main/config/modules/https.mod +++ b/jetty-server/src/main/config/modules/https.mod @@ -1,4 +1,4 @@ -DO NOT EDIT - See: https://www.eclipse.org/jetty/documentation/current/startup-modules.html +# DO NOT EDIT - See: https://www.eclipse.org/jetty/documentation/current/startup-modules.html [description] Adds HTTPS protocol support to the TLS(SSL) Connector diff --git a/jetty-server/src/main/config/modules/ssl.mod b/jetty-server/src/main/config/modules/ssl.mod index 6f62ff583a3..11fd68ab136 100644 --- a/jetty-server/src/main/config/modules/ssl.mod +++ b/jetty-server/src/main/config/modules/ssl.mod @@ -59,6 +59,10 @@ basehome:modules/ssl/keystore|etc/keystore ## Note that OBF passwords are not secure, just protected from casual observation ## See http://www.eclipse.org/jetty/documentation/current/configuring-security-secure-passwords.html +## The Endpoint Identification Algorithm +## Same as javax.net.ssl.SSLParameters#setEndpointIdentificationAlgorithm(String) +#jetty.sslContext.endpointIdentificationAlgorithm=HTTPS + ## SSL JSSE Provider # jetty.sslContext.provider= diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslContextFactory.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslContextFactory.java index de50dd90667..eee32862b7b 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslContextFactory.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslContextFactory.java @@ -113,6 +113,7 @@ public class SslContextFactory extends AbstractLifeCycle implements Dumpable }}; private static final Logger LOG = Log.getLogger(SslContextFactory.class); + private static final Logger LOG_CONFIG = LOG.getLogger("config"); public static final String DEFAULT_KEYMANAGERFACTORY_ALGORITHM = (Security.getProperty("ssl.KeyManagerFactory.algorithm") == null ? @@ -128,6 +129,24 @@ public class SslContextFactory extends AbstractLifeCycle implements Dumpable /** String name of keystore password property. */ public static final String PASSWORD_PROPERTY = "org.eclipse.jetty.ssl.password"; + /** Default Excluded Protocols List */ + private static final String[] DEFAULT_EXCLUDED_PROTOCOLS = {"SSL", "SSLv2", "SSLv2Hello", "SSLv3"}; + + /** Default Excluded Cipher Suite List */ + private static final String[] DEFAULT_EXCLUDED_CIPHER_SUITES = { + // Exclude weak / insecure ciphers + "^.*_(MD5|SHA|SHA1)$", + // Exclude ciphers that don't support forward secrecy + "^TLS_RSA_.*$", + // The following exclusions are present to cleanup known bad cipher + // suites that may be accidentally included via include patterns. + // The default enabled cipher list in Java will not include these + // (but they are available in the supported list). + "^SSL_.*$", + "^.*_NULL_.*$", + "^.*_anon_.*$" + }; + private final Set _excludeProtocols = new LinkedHashSet<>(); private final Set _includeProtocols = new LinkedHashSet<>(); private final Set _excludeCipherSuites = new LinkedHashSet<>(); @@ -210,19 +229,8 @@ public class SslContextFactory extends AbstractLifeCycle implements Dumpable private SslContextFactory(boolean trustAll, String keyStorePath) { setTrustAll(trustAll); - addExcludeProtocols("SSL", "SSLv2", "SSLv2Hello", "SSLv3"); - - // Exclude weak / insecure ciphers - setExcludeCipherSuites("^.*_(MD5|SHA|SHA1)$"); - // Exclude ciphers that don't support forward secrecy - addExcludeCipherSuites("^TLS_RSA_.*$"); - // The following exclusions are present to cleanup known bad cipher - // suites that may be accidentally included via include patterns. - // The default enabled cipher list in Java will not include these - // (but they are available in the supported list). - addExcludeCipherSuites("^SSL_.*$"); - addExcludeCipherSuites("^.*_NULL_.*$"); - addExcludeCipherSuites("^.*_anon_.*$"); + setExcludeProtocols(DEFAULT_EXCLUDED_PROTOCOLS); + setExcludeCipherSuites(DEFAULT_EXCLUDED_CIPHER_SUITES); if (keyStorePath != null) setKeyStorePath(keyStorePath); @@ -239,6 +247,38 @@ public class SslContextFactory extends AbstractLifeCycle implements Dumpable { load(); } + + secureConfigurationCheck(); + } + + protected void secureConfigurationCheck() + { + if (isTrustAll()) + LOG_CONFIG.warn("Trusting all certificates configured for {}",this); + if (getEndpointIdentificationAlgorithm()==null) + LOG_CONFIG.warn("No Client EndPointIdentificationAlgorithm configured for {}",this); + + SSLEngine engine = _factory._context.createSSLEngine(); + customize(engine); + SSLParameters supported = engine.getSSLParameters(); + + for (String protocol : supported.getProtocols()) + { + for (String excluded : DEFAULT_EXCLUDED_PROTOCOLS) + { + if (excluded.equals(protocol)) + LOG_CONFIG.warn("Protocol {} not excluded for {}", protocol, this); + } + } + + for (String suite : supported.getCipherSuites()) + { + for (String excludedSuiteRegex : DEFAULT_EXCLUDED_CIPHER_SUITES) + { + if (suite.matches(excludedSuiteRegex)) + LOG_CONFIG.warn("Weak cipher suite {} enabled for {}", suite, this); + } + } } private void load() throws Exception @@ -1064,8 +1104,9 @@ public class SslContextFactory extends AbstractLifeCycle implements Dumpable } /** - * When set to "HTTPS" hostname verification will be enabled - * + * When set to "HTTPS" hostname verification will be enabled. + * Deployments can be vulnerable to a man-in-the-middle attack if a EndpointIndentificationAlgorithm + * is not set. * @param endpointIdentificationAlgorithm Set the endpointIdentificationAlgorithm */ public void setEndpointIdentificationAlgorithm(String endpointIdentificationAlgorithm) From b69f8e4084cb4cf449ba83e11c5074e0215d4ff6 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Fri, 2 Nov 2018 05:20:17 +0100 Subject: [PATCH 121/931] Issue #2886 Handle SNI with non SNI certificates (#2888) * Issue #2886 Handle SNI with non SNI certificates Signed-off-by: Greg Wilkins * Issue #2886 Single SNI with default certificate --- .../ssl/SniSslConnectionFactoryTest.java | 85 ++++++++++++------ .../{snikeystore => keystore_sni.p12} | Bin .../test/resources/keystore_sni_nowild.p12 | Bin 0 -> 4134 bytes .../src/test/resources/snikeystore_nowild | Bin 5087 -> 0 bytes .../jetty/util/ssl/SslContextFactory.java | 3 +- .../java/org/eclipse/jetty/util/ssl/X509.java | 37 ++++---- 6 files changed, 75 insertions(+), 50 deletions(-) rename jetty-server/src/test/resources/{snikeystore => keystore_sni.p12} (100%) create mode 100644 jetty-server/src/test/resources/keystore_sni_nowild.p12 delete mode 100644 jetty-server/src/test/resources/snikeystore_nowild diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SniSslConnectionFactoryTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SniSslConnectionFactoryTest.java index 1957f23cf6b..7f5aba94244 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SniSslConnectionFactoryTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SniSslConnectionFactoryTest.java @@ -31,6 +31,7 @@ import java.io.InputStream; import java.io.OutputStream; import java.net.Socket; import java.nio.charset.StandardCharsets; +import java.security.cert.Certificate; import java.security.cert.X509Certificate; import java.util.ArrayList; import java.util.Collections; @@ -40,7 +41,9 @@ import java.util.concurrent.LinkedBlockingQueue; import javax.net.ssl.SNIHostName; import javax.net.ssl.SNIServerName; +import javax.net.ssl.SSLEngine; import javax.net.ssl.SSLParameters; +import javax.net.ssl.SSLSession; import javax.net.ssl.SSLSocket; import javax.net.ssl.SSLSocketFactory; import javax.servlet.http.HttpServletRequest; @@ -48,6 +51,8 @@ import javax.servlet.http.HttpServletResponse; import org.eclipse.jetty.http.HttpVersion; import org.eclipse.jetty.io.Connection; +import org.eclipse.jetty.io.EndPoint; +import org.eclipse.jetty.io.ssl.SslConnection; import org.eclipse.jetty.server.HttpConfiguration; import org.eclipse.jetty.server.HttpConnectionFactory; import org.eclipse.jetty.server.Request; @@ -75,11 +80,6 @@ public class SniSslConnectionFactoryTest @BeforeEach public void before() throws Exception { - String keystorePath = "src/test/resources/snikeystore"; - File keystoreFile = new File(keystorePath); - if (!keystoreFile.exists()) - throw new FileNotFoundException(keystoreFile.getAbsolutePath()); - _server = new Server(); HttpConfiguration http_config = new HttpConfiguration(); @@ -87,7 +87,36 @@ public class SniSslConnectionFactoryTest http_config.setSecurePort(8443); http_config.setOutputBufferSize(32768); _https_config = new HttpConfiguration(http_config); - _https_config.addCustomizer(new SecureRequestCustomizer()); + SecureRequestCustomizer src = new SecureRequestCustomizer(); + src.setSniHostCheck(true); + _https_config.addCustomizer(src); + _https_config.addCustomizer((connector,httpConfig,request)-> + { + EndPoint endp = request.getHttpChannel().getEndPoint(); + if (endp instanceof SslConnection.DecryptedEndPoint) + { + try + { + SslConnection.DecryptedEndPoint ssl_endp = (SslConnection.DecryptedEndPoint)endp; + SslConnection sslConnection = ssl_endp.getSslConnection(); + SSLEngine sslEngine = sslConnection.getSSLEngine(); + SSLSession session = sslEngine.getSession(); + for (Certificate c : session.getLocalCertificates()) + request.getResponse().getHttpFields().add("X-Cert",((X509Certificate)c).getSubjectDN().toString()); + } + catch(Throwable th) + { + th.printStackTrace(); + } + } + }); + } + + protected void start(String keystorePath) throws Exception + { + File keystoreFile = new File(keystorePath); + if (!keystoreFile.exists()) + throw new FileNotFoundException(keystoreFile.getAbsolutePath()); SslContextFactory sslContextFactory = new SslContextFactory(); sslContextFactory.setKeyStorePath(keystoreFile.getAbsolutePath()); @@ -95,8 +124,8 @@ public class SniSslConnectionFactoryTest sslContextFactory.setKeyManagerPassword("OBF:1u2u1wml1z7s1z7a1wnl1u2g"); ServerConnector https = _connector = new ServerConnector(_server, - new SslConnectionFactory(sslContextFactory, HttpVersion.HTTP_1_1.asString()), - new HttpConnectionFactory(_https_config)); + new SslConnectionFactory(sslContextFactory, HttpVersion.HTTP_1_1.asString()), + new HttpConnectionFactory(_https_config)); _server.addConnector(https); _server.setHandler(new AbstractHandler.ErrorDispatchHandler() @@ -125,6 +154,7 @@ public class SniSslConnectionFactoryTest @Test public void testConnect() throws Exception { + start("src/test/resources/keystore_sni.p12"); String response = getResponse("127.0.0.1", null); assertThat(response, Matchers.containsString("X-HOST: 127.0.0.1")); } @@ -132,31 +162,22 @@ public class SniSslConnectionFactoryTest @Test public void testSNIConnectNoWild() throws Exception { - // Use the alternate keystore without wildcard certificates. - _server.stop(); - _server.removeConnector(_connector); + start("src/test/resources/keystore_sni_nowild.p12"); - SslContextFactory sslContextFactory = new SslContextFactory(); - sslContextFactory.setKeyStorePath("src/test/resources/snikeystore_nowild"); - sslContextFactory.setKeyStorePassword("OBF:1vny1zlo1x8e1vnw1vn61x8g1zlu1vn4"); - sslContextFactory.setKeyManagerPassword("OBF:1u2u1wml1z7s1z7a1wnl1u2g"); + String response = getResponse("www.acme.org", null); + assertThat(response, Matchers.containsString("X-HOST: www.acme.org")); + assertThat(response, Matchers.containsString("X-Cert: OU=default")); - _connector = new ServerConnector(_server, - new SslConnectionFactory(sslContextFactory, HttpVersion.HTTP_1_1.asString()), - new HttpConnectionFactory(_https_config)); - _server.addConnector(_connector); - _server.start(); - _port = _connector.getLocalPort(); - - // The first entry in the keystore is www.example.com, and it will - // be returned by default, so make sure that here we don't ask for it. - String response = getResponse("jetty.eclipse.org", "jetty.eclipse.org"); - assertThat(response, Matchers.containsString("X-HOST: jetty.eclipse.org")); + response = getResponse("www.example.com", null); + assertThat(response, Matchers.containsString("X-HOST: www.example.com")); + assertThat(response, Matchers.containsString("X-Cert: OU=example")); } @Test public void testSNIConnect() throws Exception { + start("src/test/resources/keystore_sni.p12"); + String response = getResponse("jetty.eclipse.org", "jetty.eclipse.org"); assertThat(response, Matchers.containsString("X-HOST: jetty.eclipse.org")); @@ -176,6 +197,8 @@ public class SniSslConnectionFactoryTest @Test public void testWildSNIConnect() throws Exception { + start("src/test/resources/keystore_sni.p12"); + String response = getResponse("domain.com", "www.domain.com", "*.domain.com"); assertThat(response, Matchers.containsString("X-HOST: www.domain.com")); @@ -189,6 +212,8 @@ public class SniSslConnectionFactoryTest @Test public void testBadSNIConnect() throws Exception { + start("src/test/resources/keystore_sni.p12"); + String response = getResponse("www.example.com", "some.other.com", "www.example.com"); assertThat(response, Matchers.containsString("HTTP/1.1 400 ")); assertThat(response, Matchers.containsString("Host does not match SNI")); @@ -197,6 +222,8 @@ public class SniSslConnectionFactoryTest @Test public void testSameConnectionRequestsForManyDomains() throws Exception { + start("src/test/resources/keystore_sni.p12"); + SslContextFactory clientContextFactory = new SslContextFactory(true); clientContextFactory.start(); SSLSocketFactory factory = clientContextFactory.getSslContext().getSocketFactory(); @@ -253,6 +280,8 @@ public class SniSslConnectionFactoryTest @Test public void testSameConnectionRequestsForManyWildDomains() throws Exception { + start("src/test/resources/keystore_sni.p12"); + SslContextFactory clientContextFactory = new SslContextFactory(true); clientContextFactory.start(); SSLSocketFactory factory = clientContextFactory.getSslContext().getSocketFactory(); @@ -336,7 +365,7 @@ public class SniSslConnectionFactoryTest SSLSocketFactory factory = clientContextFactory.getSslContext().getSocketFactory(); try (SSLSocket sslSocket = (SSLSocket)factory.createSocket("127.0.0.1", _port)) { - if (cn != null) + if (sniHost != null) { SNIHostName serverName = new SNIHostName(sniHost); List serverNames = new ArrayList<>(); @@ -367,6 +396,8 @@ public class SniSslConnectionFactoryTest @Test public void testSocketCustomization() throws Exception { + start("src/test/resources/keystore_sni.p12"); + final Queue history = new LinkedBlockingQueue<>(); _connector.addBean(new SocketCustomizationListener() diff --git a/jetty-server/src/test/resources/snikeystore b/jetty-server/src/test/resources/keystore_sni.p12 similarity index 100% rename from jetty-server/src/test/resources/snikeystore rename to jetty-server/src/test/resources/keystore_sni.p12 diff --git a/jetty-server/src/test/resources/keystore_sni_nowild.p12 b/jetty-server/src/test/resources/keystore_sni_nowild.p12 new file mode 100644 index 0000000000000000000000000000000000000000..9fda6a03e2bb0d95ab35f783ad71e5cda6d3a8e4 GIT binary patch literal 4134 zcma);Wl$83*2Z_2W@(m?T183_+@+Bakw!{Tq&uV$327EsU_n@HKZ%lzMa-}%3H-kEzpoG;IZGiS~@^E|)no$DO{008=D0RcqT-sVoOj@AGG&}N`( z?*{-t0D>X#uVEB~q}7~8VDo+;3M!iHH_d@c%@~NY(-g7{8YJD3BaewEXCSz zCEk3Iob6rCYezwYjET(Si?esYCX54mdcjW2HHk`(%v>rHy)Z^5ko$NG71QX`+4 zR%QD>d!cZPx6y;cB?yZNS5-uoaF5n3gfSkY;>(jsV%De$+{Jdth%*IaPV8lU6Car0 z(Q!O_5tmxg|3d(D^#UC@1bBGH>yO&&Voh%^?igqN+9LP)CD)O`my;>z{Ul=VIW993 zwG`H<_kexIi$}t*omsaeeZz!BDp+u}pHWIO5w>J4QIAYqEe=QdC;ag0+_Va0$LnQ& zJMZw8#Wt80pyangdQ#YPG`+PyYWSju<%=u=T0G;p2CS-?D@hY$Bd8|KBt&D5KVq9I(nLcoA`q7-TA!`8R_ z5Ldn)RinTHjOnBuN_Di9*(re#$+nVi3O#-wD$5hbJqV^Qs$(r)s`EU^o^e_=#vS(! z#ih7;cen~TN=Ae<#hE|5RY`(2z0MZXtcscyOq;gblVJts53me4e4yWz5g*36vm4kwy(X(7#4_%@@xzZj+9*H{*+)y%0>cB*qhCG1mwHd18+yEvJe z&9pQ*6DV2+AOU#pI4ai=5xRbMf= z8sJ3_XPC$v>lq!4Fdq&vXpIcY)s7h}jaM4xV5?O?#QwTX=noq1CKqzY?@%^q zaGM?H2pck&C*d@VXy(Pcw+KR>Tlopl)FAp~c)FWM! z0|Vf<@Xa43Kd?zS*YfJuQQJ=9SbO~iCd6KFtY#v4FZn$aLpk1852yI#awU9D!^|J3 zH~_WW`X!W0n%}9iTko4bgmEB{GumM0J0^ z+Q%EtB9?1D$hll{qGziN)!3#FGN1HgF(@Ju@ljlT&tBwjY-k~i1agCEy)LHsagYo5 z@N>pFc<%V&xHi5Q*xs1!VgAt|km51ht$C84&rPS>@-1_>PSrIq(2m}zk6cB+)+?eGi z3;|k&A%OkacpxAMgl{+v!NJH0NqCXU$WwA45KI7oalol=EEDfJJ}DWIm$k*4S60^l zQov;YGFjMd26DJK91erSg+;_gBn%iS1>tb9zX|_k9|Vy7?*rWUGadp+3AmY&6odc* z0l3dH^jp}$08T6cVB)*C=+S2SOJ*tR+j@n$Qdd%BeG3j@yGA=Y>Mh1=oX*Z`OzdKkFOhnnWq9Alj~v;Z zP6m%w4$ajrUo(3X+aneF*;|{x0yFfwUWlpcyr5Du^w-&Df#1=$ok64<%+r)Kv~*Wq zlC-RIkNqHVo?G)Hjcy@%z^kdpFsV#osN$4nrRTQefTdp^ z>PHjwmKqGcb2VOrlCw|(4J6_RZ6d9DGefznIyo>o-JgazhGS>)+`1D?lav1Bsetf+ z0AMZ~j0MJYa}!o-d|DVag3`;&OW>bzCt&H~^!E+kobYCYKtO=hbX{ysr@SkqNL{(8 zg%38g^b;vJSU#RTF6VOZ!ERFfncs0aAwbaRAeyD7m4mWn6r0g}LWAva@iN}9#hG^A z>yfBh*nS$mg(uKNV>%_pEjgCqyGW?ERDb(V2%A=N3AkXoxcuuehe@Z|r10I=)psgX z!q!Cm#vgFIBdt2{C+kK>UJeH_r~B%w?-mwf=iS8L#-D)+Ya%H8X&TUdN&vatNvSIV zF^PO!!cJhel--l+N7M(%VC%$!>D;MHj#>VW3>tP?Wt!}y9)i`tr(C;?JdF`$lGH-9lfcN*0V z6WqKO{^kF}1nZwk;q|CV|3WgBwmCKHH-8ex z5KliE7Jg2TR*7vx*SK>=Nc#B^=_#(!_%xCORFX~$Bhb=}9qMe=98OpB#`5&eKMTOh zHdaK@uh{c;(tOpHr(NXU02J;i#v-4+2&1<@m+x*IVDMPQF z@L89R_G9-k01wqiCz|4Z-*m&&dRdC%wEAdX4W&+{EWDZ}y5J2q;Yt4%{{w&i_0kBI zYe-%GO~#|;7=SKQ^+OM9!TPkvX{kx)sWKssNG-7TM6Se!C8)Zfi_lj)m{*I;sB5}6 zSt&bs-=~D@B)$7qCY#;kv{`BZaS^Xrd0mJ~g&G7TiLTAyB^ji=j>&ijmRLj$WFIO> z`aH?CcyczF3zs5-1X;#lB%Ik#i<`dWhyT>PgAql{RIrj22VkL!44w7(*{`?hu0i8( zl+|V3l-uhqpX&^lWQ8wIdG(3i#(j|{95idoUf$Li4AWatY0Wo+BB#?2UyCk%u1aqn zek_k2f|z&UO!2(aAz@fgeY~6~jHsW~T?<6;%eBx&JLbjI5~EeCprxSd_1`=(&B_`F zHr1T=Fz%*q@~CWz9u>?R)wPf#RSU?zgAgjIV{_Jc=mWfVpwWfp1LavwN)h+V1rGHQ z-RK^th3ijZt()RTv?kBlGj$$vtBBsq?=$*Np+;1Rym!K}s69AK?_RSYJ+$S{xSJOs z98*ZG&+Bq#hV*5PvhQh4^8R#err(UMz(USi^j>(F%ET8o**87t7`+SOi4%iBE|hr2 zch}N%GCCBOm$O#0WixSzG28cRfCjx#@JF_1-dD4IqYT8r4;Qd zO$U?*l>BR_=q{28;k~5V1kM7`C>>cTCvA!kKQTjp2#p-ixtufO3k}P*H7D8A5!FNV z)8kO9`%r-3UKb&S994F?+d^H8kGzYR!QYtY?`MxT^>EnErb8e0!ad)9={AnqNCYn1@_KBi zz1Bz!{x02kbd{Z$=|}!{Kj)4aA2S*s6(p~HU)6K#V~$A)F@n6z*HBnRP{i$FZ#tn3 zyg3REO3S-2v6jz6)e>2^Yd>+#~N}) zl5%h|KMLu*HuG-O8IOSo^o?zJ`;vAz>z9BfQPhLSkSy%Py6KmC4%l7B51!!+p_;90y@CI#mRq2@_$UV}<1NBBPWh1`F@_oa%w(JjN{knGLD z948NIi-UYP@3YR>6{>SA&zr4Zk1tB~JqZZ>#A43UO9nC}nOc_=`0X13>UUElEv;5= zT*v~?Tzzyr8)P2gtDp}!3~O`M_VR)UdwG4BW6MzBqDS^eQnN>>6!v{wE;{H&kGM-# zY3>gI4^ICgf`2>FUx^QPN1g)SDO2gEzF|JU)v&1C6F*X7G00jM-|PVpmfcU+w04f0 z*Pu@s?gvdppV8Vg%UDy1@!BrwngzP>L>JmZAS{(XjjgMeaFwQ5Dcc8*vg_mff2dDi z33?lv3TA>wI8W)eN6Tv~9J#rI8+sr*OI<6_Nc#Qv?`-Fmt3A&I$OEp(l{?)U-v)9< ztpuQl?$F|3X9JTJX~P;utl@!bLZH%*Nw4$eIwo}0qUcOCRl{Nz8PKHw#o)AacRzq( zV6*4%7^_tVZ95u8Cd@SnfQO?_phkq0sDz%=;W^n6Z^*7(^PP?9PmRElU)l>_*wQK}HPOvW)B$T0}{l5C{YzHz>J* zLDYDHvx6u3OxGMXzd@dP4iF*bz(E+D2n-Ab3qzQ}U}_MQ2+2T-8w(35^8*2%$UW<` zC)svsUd6h@6D*FQ?|H>uGzfAS;rDsF;sVv5qnj4|V1M(DT5^BMdS|WPPLhZp*ZQ^A z&D^DgMuD96jjj20(Jy+{KUykhB<&WuvW3F>oIGPc=Sky-E&va zS(43%P5uGwocA|kaO**$GG99y;!+P>TK7u6_1Mo(g?Vgx9@kR-_^Zj@Zk3L zXR5dGJ=<~!_@ef~Y89(yHSmg`_6oXv=C0cKqFkxp{*kO$MzZ%NDMMLS(n zZpkcrpA{6JA7I{KO1S`=;}ClTNr=w%C{F@r6qF2h}Vz(HOj;4znu$z0l`#~CfE&BJy5q07{~n?F zml60sM-BoEl)LB<)cTa{`F#&P0)EQZ=8}h-1DXRsQm&vvFkZQGMciS3RNM}K3E*Kr zfR+X%F|q&#EsvJR{_M(Nq1sxYqqM+w6AK1J1i7Zza_ce4+>VjYixDgr0olJ ziQ%hH0}AKdUry^_rRFjFun0 z7ON9Uej34)n6WnTQXWDD27$A9fg`|S@`@fl2t`6!S303%t~dard__C^5fyV z3!`AnIO(#D-mzpncp!R`uaUc-<_61fqlMH4R8BEf@ z5!g&>s9IQs?fe~HsCDI+tk=VtxUT{i);aUCAw^&PZ3kM!Nk|LcWSxZ+?&t+gab#?; z3$-NHu{WM){8fn-vLoJQJ7fgeKbOvDQCTQk)1|Q+E1~J{Ff`+BU{IvFI#MIk-pFVm z)Av{-tRe?V)2$RI{hUSSczvR%+;S}+_KclBi20;WTVwruAQv0SI#%Kl_@rPllE1sl zMZ$e`M={kHhcmKVR$AyW6qUSsCaa}rFEL4_!68>6+T-YJI&I0gzEQ%BC7k`c#6~X# z(hAKY&3(tHy1Xdj^^s!5YC$D$T^wy+4tqa)xD~Fx_cYr|M&c&l*$%-_^~Is5EBY@8 z$U~7gEWAseD8sm$qF7y>M{E5;N=`3lbUV+#-3_;rt5{EoPD$M!&EO{dNTD_Vh^q`X zPCB6nAsTNT!QUNFdDnsQ@yu3Ht3z~~U>84s&;YiZ)eP>M(B+KLrf;V9ulS9x9CcaaTnlTJ6^dQfsPzhlH=z1)8od2ppM|w~?X-RHQk#Q3=nX5{ zmF%UV@GjwU+glDp3zeIhUr$+Rjg5-BaF_~Y6MX|6E{odG65U2h?9kJz-@D;usFsvd z;Wnj<@|rs^VYW9>XbE8B2hsLe@RGGNi=j~u)tSpZ&ivcQ$+v zTVEm5OK}Xp6*htlGFfH8bH5Z8p4yxHw=4t*zqRo{RM=m-Oh;B!J2#w%mjn8j=F%gm zwJ8aOJ_K;=D=hQR1QU1IzfK(Q>GT(km6JmMsj-yqe<`Z}O=U|;g1sistR@JAeR6!V z3FUp&*{WB6U7Az5C}t_ivbuOkOE2Klv&VEOVGbLbjzet(`|k`e&f#^-5iXSfM`@0D z0)frk2ql$^o44^^*dXjMSj04YZ65DcG1=|$z8%HBlOewag+Rp!Qm^Mi zLq4wioHoelcv-#nL}T-N+sVDi{5<7%S5vRneh<5&QpS=%QnTf1Ptum5m(=~j57mBD zS8Jnhk(5;t=5IJzO@g>n0?#ln6l&TdVQZ+1WU2_L0XnY$R+61ZI=Vwjy|i#snsZF5K? zG)^>M{m#*kg$kjm2Zb8B^JgydkRCh$=;XVWqC&QHE_PtPhTEzONI^`FgA>aXJ%mrV zKb^iG1-_czzd3Ap$vUl8bjqxt(n@outAUG3iFWP``T|b#*_hUT8mR#%0Y)+ahY?`# z9+VoOA|HPG%)^Y70Vvs!!v1hG3aR06CMQAC!rDt}Rd-a~t@n(hf37mc%}^FMW%#1s zz-F?!6P3+UkRlB2EtY}0uI~_8w*Kh;i=i2bo?+~_ZbF<_nVi~t>VOT1cjb?qr-Q|7 zgQJLcL#Ch@%{R$g72+by1qmg`LpG<=u`{yi1rs0Lo`tigDZk^__e+$1YXzMP2`fm2 zh?O&~4ka{0y-v=13OvkD|N5Z7nI*-v=?04eZT3rzA22rAx_c9tta-WVA^R24Al4no zYo6QcZ1j~3oY0Bk)`Ui3}@GJUCUCgIkfpleg3Rbb76g!`}@z`hsw*w zonofmvlkG^#~WnyV*k}lfv;FQi`1q?dg+-YRnj8fIep`R%18YjA47} zh%k@IhN{6sSZa7;X8*?FSI=mkMBEP@pTVB9aDulDC=@E#n7@`gWceYKwFj)sXyWPi zweWHuP4KAJrJ2~g{=D5yW$4i`%wk-wZ`a;!R@vr5cc}ax!$!)_GJJ2S4P(OdsAdKV zE#|Z|R=YHf*%@b-cZ4|>o#!b9isoYFSWtuOasgND4+eB4M7gb}-8uoK4Ygc?OHcVB z&rg})lgvD-YqCN}yQ(2t;xw+#PiLP?Z481>D_xX4p70f|CoRS!_HN z%QdC$*$!chR^R0EOiSu{7}qX9+Yk{Lkv(Eqke8WWO8kpMpt?ZTUNdq-{&EPXX;P{H zdKjEsgLTP4smK+W+i$u35B?<%mnHSWr`sFu8MtQgQtVHVi%N%_3y*QTx95*NLe$<_ZI)1r5+^ zo)aOY^T%+fE}rB&ziqA@Z?;w2_`M2PYrkjgHW;cHa##w#>}Xx#nsP2DJ3W0G8oBr{#UeI?!VAlMRGevVPJ^2v zY@lT8b2r$I(sz_5Jtt<)U87$#r~uI8$gy*%{>Jqtm*ANJK?9Ehetz(I+LOf2>hpyx>??F^|Zz zN8X9fBR>j&H^xDV*p#+emFsGVc01~wlI1Bip=Gmy3bn$`!s$1Qi_`CK6`u4@PZz90 z_D-c?4f{&3gGAu%UT+suW_p6~*IAfyxJPUb>n&!hM{JEpIJ8kN!(4P)UFQQ3$J#fyG>z2(48RDDz@rs8iL4 y`>QSxR-Ux+kOK;-lCAEYJV*QP1) + // Is SNI needed to select a certificate? + if (!_certWilds.isEmpty() || _certHosts.size()>1 || _certHosts.size()==1 && _aliasX509.size()>1) { for (int idx = 0; idx < managers.length; idx++) { diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/X509.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/X509.java index 816583f3f66..77509297ab5 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/X509.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/X509.java @@ -20,9 +20,9 @@ package org.eclipse.jetty.util.ssl; import java.security.cert.CertificateParsingException; import java.security.cert.X509Certificate; -import java.util.ArrayList; import java.util.Collection; -import java.util.HashSet; +import java.util.Collections; +import java.util.LinkedHashSet; import java.util.List; import java.util.Set; @@ -62,16 +62,15 @@ public class X509 private final X509Certificate _x509; private final String _alias; - private final List _hosts=new ArrayList<>(); - private final List _wilds=new ArrayList<>(); + private final Set _hosts=new LinkedHashSet<>(); + private final Set _wilds=new LinkedHashSet<>(); public X509(String alias,X509Certificate x509) throws CertificateParsingException, InvalidNameException { - _alias=alias; + _alias = alias; _x509 = x509; // Look for alternative name extensions - boolean named=false; Collection> altNames = x509.getSubjectAlternativeNames(); if (altNames!=null) { @@ -83,28 +82,22 @@ public class X509 if (LOG.isDebugEnabled()) LOG.debug("Certificate SAN alias={} CN={} in {}",alias,cn,this); if (cn!=null) - { - named=true; addName(cn); - } } } } // If no names found, look up the CN from the subject - if (!named) + LdapName name=new LdapName(x509.getSubjectX500Principal().getName(X500Principal.RFC2253)); + for (Rdn rdn : name.getRdns()) { - LdapName name=new LdapName(x509.getSubjectX500Principal().getName(X500Principal.RFC2253)); - for (Rdn rdn : name.getRdns()) + if (rdn.getType().equalsIgnoreCase("CN")) { - if (rdn.getType().equalsIgnoreCase("CN")) - { - String cn = rdn.getValue().toString(); - if (LOG.isDebugEnabled()) - LOG.debug("Certificate CN alias={} CN={} in {}",alias,cn,this); - if (cn!=null && cn.contains(".") && !cn.contains(" ")) - addName(cn); - } + String cn = rdn.getValue().toString(); + if (LOG.isDebugEnabled()) + LOG.debug("Certificate CN alias={} CN={} in {}",alias,cn,this); + if (cn!=null && cn.contains(".") && !cn.contains(" ")) + addName(cn); } } } @@ -130,12 +123,12 @@ public class X509 public Set getHosts() { - return new HashSet<>(_hosts); + return Collections.unmodifiableSet(_hosts); } public Set getWilds() { - return new HashSet<>(_wilds); + return Collections.unmodifiableSet(_wilds); } public boolean matches(String host) From af7dba12493775a947ef17b9b289877d40d843a3 Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Fri, 2 Nov 2018 19:20:35 +1000 Subject: [PATCH 122/931] make compiler.target/source as a property so we can override those with the command line Signed-off-by: olivier lamy --- pom.xml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 4c0a81e84e0..4fd3fe4cd53 100644 --- a/pom.xml +++ b/pom.xml @@ -14,6 +14,8 @@ 1995 + 1.8 + 1.8 http://www.eclipse.org/jetty UTF-8 1.4 @@ -438,8 +440,8 @@ maven-compiler-plugin ${maven.compiler.plugin.version} - 1.8 - 1.8 + ${compiler.source} + ${compiler.target} From 3995cd2ec0ffb6f756507ad99295bfced287ba0b Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Fri, 2 Nov 2018 16:38:43 +0100 Subject: [PATCH 123/931] Issue #3023 redirect to / when pathInfoOnly (#3047) Issue #3023 redirect to / when pathInfoOnly (#3047) --- .../org/eclipse/jetty/server/ResourceService.java | 4 ++-- .../eclipse/jetty/servlet/DefaultServletTest.java | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ResourceService.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ResourceService.java index 4a3dde749a7..58823b77edb 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ResourceService.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ResourceService.java @@ -226,7 +226,7 @@ public class ResourceService String pathInContext=URIUtil.addPaths(servletPath,pathInfo); - boolean endsWithSlash=(pathInfo==null?servletPath:pathInfo).endsWith(URIUtil.SLASH); + boolean endsWithSlash=(pathInfo==null?(_pathInfoOnly?"":servletPath):pathInfo).endsWith(URIUtil.SLASH); boolean checkPrecompressedVariants=_precompressedFormats.length > 0 && !endsWithSlash && !included && reqRanges==null; HttpContent content=null; @@ -373,7 +373,7 @@ public class ResourceService throws ServletException, IOException { // Redirect to directory - if (!endsWithSlash || (pathInContext.length()==1 && request.getAttribute("org.eclipse.jetty.server.nullPathInfo")!=null)) + if (!endsWithSlash) { StringBuffer buf=request.getRequestURL(); synchronized(buf) diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletTest.java index ab861d0bb7c..e78fbd65e08 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletTest.java @@ -555,6 +555,14 @@ public class DefaultServletTest altholder.setInitParameter("welcomeServlets", "false"); altholder.setInitParameter("gzip", "false"); + ServletHolder otherholder = context.addServlet(DefaultServlet.class, "/other/*"); + otherholder.setInitParameter("resourceBase", altRoot.toUri().toASCIIString()); + otherholder.setInitParameter("pathInfoOnly", "true"); + otherholder.setInitParameter("dirAllowed", "true"); + otherholder.setInitParameter("redirectWelcome", "false"); + otherholder.setInitParameter("welcomeServlets", "false"); + otherholder.setInitParameter("gzip", "false"); + ServletHolder defholder = context.addServlet(DefaultServlet.class, "/"); defholder.setInitParameter("dirAllowed", "false"); defholder.setInitParameter("redirectWelcome", "false"); @@ -567,6 +575,12 @@ public class DefaultServletTest String rawResponse; HttpTester.Response response; + // Test other redirect + rawResponse = connector.getResponse("GET /context/other HTTP/1.0\r\n\r\n"); + response = HttpTester.parseResponse(rawResponse); + assertThat(response.toString(), response.getStatus(), is(HttpStatus.MOVED_TEMPORARILY_302)); + assertThat(response, containsHeaderValue("Location", "http://0.0.0.0/context/other/")); + // Test alt default rawResponse = connector.getResponse("GET /context/alt/dir/ HTTP/1.0\r\n\r\n"); response = HttpTester.parseResponse(rawResponse); From 5a17a33045ee5865314889b2c3695bdd2ec0e497 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Fri, 2 Nov 2018 11:34:05 -0500 Subject: [PATCH 124/931] Fixed #2458 - Removing jdk9 and jdk10 CI builds Signed-off-by: Joakim Erdfelt --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index b7a4e84d8e8..09071967d8d 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,7 +1,7 @@ #!groovy def mainJdk = "jdk8" -def jdks = [mainJdk, "jdk9", "jdk10", "jdk11"] +def jdks = [mainJdk, "jdk11"] def oss = ["linux"] def builds = [:] for (def os in oss) { From 4a9265d4b402b45a14fb96b97eb86b0b18b5c187 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Sat, 3 Nov 2018 17:53:32 +0100 Subject: [PATCH 125/931] backports from 10.0.x websocket refactor Signed-off-by: Greg Wilkins --- .../java/org/eclipse/jetty/client/HttpClient.java | 3 ++- .../java/org/eclipse/jetty/io/ChannelEndPoint.java | 13 ++++++------- .../org/eclipse/jetty/util/IteratingCallback.java | 10 +++++----- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpClient.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpClient.java index 308e79daf6c..e22b3dc7194 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpClient.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpClient.java @@ -212,8 +212,8 @@ public class HttpClient extends ContainerLifeCycle QueuedThreadPool threadPool = new QueuedThreadPool(); threadPool.setName(name); executor = threadPool; + addBean(executor); } - addBean(executor); if (byteBufferPool == null) byteBufferPool = new MappedByteBufferPool(2048, @@ -796,6 +796,7 @@ public class HttpClient extends ContainerLifeCycle */ public void setExecutor(Executor executor) { + updateBean(this.executor, executor); this.executor = executor; } diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ChannelEndPoint.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ChannelEndPoint.java index ed6a761c041..0421176298f 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ChannelEndPoint.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ChannelEndPoint.java @@ -229,29 +229,28 @@ public abstract class ChannelEndPoint extends AbstractEndPoint implements Manage return -1; int pos=BufferUtil.flipToFill(buffer); + int filled; try { - int filled = _channel.read(buffer); - if (LOG.isDebugEnabled()) // Avoid boxing of variable 'filled' - LOG.debug("filled {} {}", filled, this); - + filled = _channel.read(buffer); if (filled>0) notIdle(); else if (filled==-1) shutdownInput(); - - return filled; } catch(IOException e) { LOG.debug(e); shutdownInput(); - return -1; + filled = -1; } finally { BufferUtil.flipToFlush(buffer,pos); } + if (LOG.isDebugEnabled()) + LOG.debug("filled {} {}", filled, BufferUtil.toDetailString(buffer)); + return filled; } @Override diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/IteratingCallback.java b/jetty-util/src/main/java/org/eclipse/jetty/util/IteratingCallback.java index 4fb91db63ec..bdbfc5f9db1 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/IteratingCallback.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/IteratingCallback.java @@ -18,7 +18,7 @@ package org.eclipse.jetty.util; -import java.nio.channels.ClosedChannelException; +import java.io.IOException; import org.eclipse.jetty.util.thread.Locker; @@ -403,7 +403,7 @@ public abstract class IteratingCallback implements Callback public void close() { - boolean failure=false; + String failure=null; try(Locker.Lock lock = _locker.lock()) { switch (_state) @@ -418,13 +418,13 @@ public abstract class IteratingCallback implements Callback break; default: + failure=String.format("Close %s in state %s",this,_state); _state=State.CLOSED; - failure=true; } } - if(failure) - onCompleteFailure(new ClosedChannelException()); + if(failure!=null) + onCompleteFailure(new IOException(failure)); } /* From 67cef441b21ffc900ad5fb112cbd43434d281760 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Mon, 5 Nov 2018 14:05:02 +0100 Subject: [PATCH 126/931] Support direct buffers in hpack (#3058) Signed-off-by: Greg Wilkins --- .../eclipse/jetty/http2/hpack/Huffman.java | 30 +--- .../eclipse/jetty/http2/hpack/HpackTest.java | 9 +- .../jetty/http2/hpack/HuffmanTest.java | 3 +- .../jetty/io/jmh/ByteBufferBenchmark.java | 154 ++++++++++++++++++ 4 files changed, 169 insertions(+), 27 deletions(-) create mode 100644 jetty-jmh/src/main/java/org/eclipse/jetty/io/jmh/ByteBufferBenchmark.java diff --git a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/Huffman.java b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/Huffman.java index ddb2c4a97df..a0ed7b538e1 100644 --- a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/Huffman.java +++ b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/Huffman.java @@ -350,23 +350,16 @@ public class Huffman return decode(buffer,buffer.remaining()); } - public static String decode(ByteBuffer buffer,int length) throws HpackException.CompressionException + public static String decode(ByteBuffer buffer, int length) throws HpackException.CompressionException { StringBuilder out = new StringBuilder(length*2); int node = 0; int current = 0; int bits = 0; - byte[] array = buffer.array(); - int position=buffer.position(); - int start=buffer.arrayOffset()+position; - int end=start+length; - buffer.position(position+length); - - - for (int i=start; i= 8) @@ -460,10 +453,6 @@ public class Huffman { long current = 0; int n = 0; - - byte[] array = buffer.array(); - int p=buffer.arrayOffset()+buffer.position(); - int len = s.length(); for (int i=0;i= 8) { n -= 8; - array[p++]=(byte)(current >> n); + buffer.put((byte)(current >> n)); } } - if (n > 0) + if (n > 0) { - current <<= (8 - n); - current |= (0xFF >>> n); - array[p++]=(byte)current; + current <<= (8 - n); + current |= (0xFF >>> n); + buffer.put((byte)(current)); } - - buffer.position(p-buffer.arrayOffset()); + } } diff --git a/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackTest.java b/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackTest.java index 355ffb2953f..5962fdfb65e 100644 --- a/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackTest.java +++ b/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackTest.java @@ -19,10 +19,9 @@ package org.eclipse.jetty.http2.hpack; import static org.hamcrest.CoreMatchers.is; -import static org.hamcrest.Matchers.containsString; import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.containsString; import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertThrows; import static org.junit.jupiter.api.Assertions.fail; import java.nio.ByteBuffer; @@ -51,7 +50,7 @@ public class HpackTest { HpackEncoder encoder = new HpackEncoder(); HpackDecoder decoder = new HpackDecoder(4096,8192); - ByteBuffer buffer = BufferUtil.allocate(16*1024); + ByteBuffer buffer = BufferUtil.allocateDirect(16*1024); HttpFields fields0 = new HttpFields(); fields0.add(HttpHeader.CONTENT_TYPE,"text/html"); @@ -104,7 +103,7 @@ public class HpackTest { HpackEncoder encoder = new HpackEncoder(); HpackDecoder decoder = new HpackDecoder(4096,164); - ByteBuffer buffer = BufferUtil.allocate(16*1024); + ByteBuffer buffer = BufferUtil.allocateDirect(16*1024); HttpFields fields0 = new HttpFields(); fields0.add("1234567890","1234567890123456789012345678901234567890"); @@ -144,7 +143,7 @@ public class HpackTest { HpackEncoder encoder = new HpackEncoder(200,200); HpackDecoder decoder = new HpackDecoder(200,1024); - ByteBuffer buffer = BufferUtil.allocate(16*1024); + ByteBuffer buffer = BufferUtil.allocateDirect(16*1024); HttpFields fields0 = new HttpFields(); fields0.add("123456789012345678901234567890123456788901234567890","value"); diff --git a/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HuffmanTest.java b/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HuffmanTest.java index bf7a935458c..c909d383d54 100644 --- a/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HuffmanTest.java +++ b/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HuffmanTest.java @@ -21,6 +21,7 @@ package org.eclipse.jetty.http2.hpack; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertThrows; +import java.nio.BufferOverflowException; import java.nio.ByteBuffer; import java.util.Locale; import java.util.stream.Stream; @@ -79,7 +80,7 @@ public class HuffmanTest assertThrows(IllegalArgumentException.class, () -> Huffman.octetsNeeded(s)); - assertThrows(IllegalArgumentException.class, + assertThrows(BufferOverflowException.class, () -> Huffman.encode(BufferUtil.allocate(32), s)); } } diff --git a/jetty-jmh/src/main/java/org/eclipse/jetty/io/jmh/ByteBufferBenchmark.java b/jetty-jmh/src/main/java/org/eclipse/jetty/io/jmh/ByteBufferBenchmark.java new file mode 100644 index 00000000000..eb2ba3ec9b2 --- /dev/null +++ b/jetty-jmh/src/main/java/org/eclipse/jetty/io/jmh/ByteBufferBenchmark.java @@ -0,0 +1,154 @@ +// +// ======================================================================== +// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.io.jmh; + +import java.nio.ByteBuffer; +import java.util.concurrent.ThreadLocalRandom; +import java.util.concurrent.TimeUnit; + +import org.openjdk.jmh.annotations.Benchmark; +import org.openjdk.jmh.annotations.BenchmarkMode; +import org.openjdk.jmh.annotations.Measurement; +import org.openjdk.jmh.annotations.Mode; +import org.openjdk.jmh.annotations.Scope; +import org.openjdk.jmh.annotations.State; +import org.openjdk.jmh.annotations.Threads; +import org.openjdk.jmh.annotations.Warmup; +import org.openjdk.jmh.runner.Runner; +import org.openjdk.jmh.runner.RunnerException; +import org.openjdk.jmh.runner.options.Options; +import org.openjdk.jmh.runner.options.OptionsBuilder; + + +@State(Scope.Benchmark) +@Threads(4) +@Warmup(iterations = 7, time = 500, timeUnit = TimeUnit.MILLISECONDS) +@Measurement(iterations = 7, time = 500, timeUnit = TimeUnit.MILLISECONDS) +public class ByteBufferBenchmark +{ + public long test(ByteBuffer buffer) + { + buffer.clear(); + while(buffer.hasRemaining()) + { + int size = ThreadLocalRandom.current().nextInt(1024); + byte[] bytes = new byte[size]; + ThreadLocalRandom.current().nextBytes(bytes); + buffer.put(bytes,0,Math.min(bytes.length,buffer.remaining())); + } + + buffer.flip(); + + long sum = 0; + while(buffer.hasRemaining()) + sum += buffer.get(); + + return sum; + } + + + public long testArray(ByteBuffer buffer) + { + buffer.clear(); + byte[] array = buffer.array(); + int offset = buffer.arrayOffset(); + int end = offset + buffer.remaining(); + while(offset Date: Tue, 6 Nov 2018 09:29:43 +0100 Subject: [PATCH 127/931] Issue #3060 WriteFlusher fails callback on all Throwables Signed-off-by: Greg Wilkins --- jetty-io/src/main/java/org/eclipse/jetty/io/WriteFlusher.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/WriteFlusher.java b/jetty-io/src/main/java/org/eclipse/jetty/io/WriteFlusher.java index a2d9c8fa008..d567f45577d 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/WriteFlusher.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/WriteFlusher.java @@ -294,7 +294,7 @@ abstract public class WriteFlusher else fail(callback); } - catch (IOException e) + catch (Throwable e) { if (DEBUG) LOG.debug("write exception", e); @@ -366,7 +366,7 @@ abstract public class WriteFlusher else fail(callback); } - catch (IOException e) + catch (Throwable e) { if (DEBUG) LOG.debug("completeWrite exception", e); From 871f73cdf617063fae254268776a63715a80a977 Mon Sep 17 00:00:00 2001 From: Jan Bartel Date: Tue, 6 Nov 2018 10:03:48 +0100 Subject: [PATCH 128/931] Jetty 9.4.x 2932 switchable classloader for session attribute values (#2964) --- .../session-configuration-infinispan.adoc | 41 ++++ .../session/GCloudSessionDataStore.java | 195 ++++++--------- .../session/HazelcastSessionDataStore.java | 48 ++-- .../HazelcastSessionDataStoreFactory.java | 14 +- .../session/SessionDataSerializer.java | 110 +++++++++ jetty-infinispan/pom.xml | 17 ++ .../config/etc/sessions/infinispan/remote.xml | 61 ++++- .../infinispan/InfinispanSessionData.java | 69 ++++++ .../InfinispanSessionDataStore.java | 137 +++++------ .../InfinispanSessionLegacyConverter.java | 224 +++++++++++++++++ .../infinispan/SessionDataMarshaller.java | 106 ++++++++ .../session/infinispan/WebAppMarshaller.java | 1 + .../src/main/resources/session.proto | 19 ++ .../jetty-memcached-sessions/pom.xml | 2 +- .../session-data-cache/xmemcached.mod | 2 +- .../session/MemcachedSessionDataMap.java | 55 +++-- .../nosql/mongodb/MongoSessionDataStore.java | 232 ++++++++---------- .../authentication/SessionAuthentication.java | 20 +- .../session/AbstractSessionDataStore.java | 119 +++++---- .../server/session/FileSessionDataStore.java | 160 ++++-------- .../server/session/JDBCSessionDataStore.java | 165 +++++-------- .../server/session/NullSessionDataStore.java | 28 +-- .../jetty/server/session/SessionData.java | 90 ++++++- .../util/ClassLoadingObjectInputStream.java | 36 ++- .../jetty/server/session/FileTestHelper.java | 41 +--- .../test-gcloud-sessions/pom.xml | 1 - .../session/ClusteredOrphanedSessionTest.java | 8 +- .../ClusteredSessionScavengingTest.java | 7 +- .../session/GCloudSessionTestSupport.java | 67 ++--- .../session/InvalidationSessionTest.java | 6 +- .../session/HazelcastTestHelper.java | 23 +- .../test-infinispan-sessions/pom.xml | 10 + .../remote/RemoteInfinispanTestSupport.java | 38 ++- .../jetty/server/session/JdbcTestHelper.java | 33 +-- .../test-memcached-sessions/pom.xml | 6 + .../sessions/MemcachedTestHelper.java | 22 +- .../mongodb/MongoSessionDataStoreTest.java | 64 +++++ .../jetty/nosql/mongodb/MongoTestHelper.java | 113 ++++++--- .../server/session/TestSessionDataStore.java | 2 +- .../session/DeleteUnloadableSessionTest.java | 26 +- .../session/SessionEvictionFailureTest.java | 23 +- .../src/main/java/com/acme/SessionDump.java | 5 + 42 files changed, 1562 insertions(+), 884 deletions(-) create mode 100644 jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/SessionDataSerializer.java create mode 100644 jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionData.java create mode 100644 jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionLegacyConverter.java create mode 100644 jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/SessionDataMarshaller.java create mode 100644 jetty-infinispan/src/main/resources/session.proto diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-infinispan.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-infinispan.adoc index 07528662522..67e99562104 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-infinispan.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-infinispan.adoc @@ -179,3 +179,44 @@ In a clustered environment, there is a risk of the last access time of the sessi This allows the possibility that a node may prematurely expire the session, even though it is in use by another node. Thorough consideration of the `maxIdleTime` of the session when setting the `savePeriod` is imperative - there is no point in setting a `savePeriod` that is larger than the `maxIdleTime`. ____ + +==== Converting session format for jetty-9.4.13 + +From jetty-9.4.13 onwards, we have changed the format of the serialized session when using a remote cache (ie using hotrod). +Prior to release 9.4.13 we used the default Infinispan serialization, however this was not able to store sufficient information to allow jetty to properly deserialize session attributes in all circumstances. +See issue https://github.com/eclipse/jetty.project/issues/2919 for more background. + +We have provided a conversion program which will convert any sessions stored in Infinispan to the new format. +____ +[IMPORTANT] +We recommend that you backup your stored sessions before running the conversion program. +____ + +How to use the converter: + +[source, screen, subs="{sub-order}"] +---- +java -cp servlet-api-3.1.jar:jetty-util-9.4.13.jar:jetty-server-9.4.13.jar:infinispan-remote-9.1.0.Final.jar:jetty-infinispan-9.4.13.jar:[other classpath] org.eclipse.jetty.session.infinispan.InfinispanSessionLegacyConverter + +Usage: InfinispanSessionLegacyConverter [-Dhost=127.0.0.1] [-Dverbose=true|false] [check] +---- + +The classpath:: +Must contain the servlet-api, jetty-util, jetty-server, jetty-infinispan and infinispan-remote jars. If your sessions contain attributes that use application classes, you will also need to also put those classes onto the classpath. If your session has been authenticated, you may also need to include the jetty-security and jetty-http jars on the classpath. +Parameters:: +When used with no arguments the usage message is printed. When used with the `cache-name` parameter the conversion is performed. When used with both `cache-name` and `check` parameters, sessions are checked for whether or not they are converted. + + -Dhost::: you can optionally provide a system property with the address of your remote Infinispan server. Defaults to the localhost. + -Dverbose::: defaults to false. If true, prints more comprehensive stacktrace information about failures. Useful to diagnose why a session is not converted. + cache-name::: the name of the remote cache containing your sessions. This is mandatory. + check::: the optional check command will verify sessions have been converted. Use it _after_ doing the conversion. + +To perform the conversion, run the InfinispanSessionLegacyConverter with just the `cache-name`, and optionally the `host` system property. +The following command will attempt to convert all sessions in the cached named `my-remote-cache` on the machine `myhost`, ensuring that application classes in the `/my/custom/classes` directory are on the classpath: + +[source, screen, subs="{sub-order}"] +---- +java -cp servlet-api-3.1.jar:jetty-util-9.4.13.jar:jetty-server-9.4.13.jar:infinispan-remote-9.1.0.Final.jar:jetty-infinispan-9.4.13.jar:/my/custom/classes org.eclipse.jetty.session.infinispan.InfinispanSessionLegacyConverter -Dhost=myhost my-remote-cache +---- + +If the converter fails to convert a session, an error message and stacktrace will be printed and the conversion will abort. The failed session should be untouched, however _it is prudent to take a backup of your cache before attempting the conversion_. diff --git a/jetty-gcloud/jetty-gcloud-session-manager/src/main/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStore.java b/jetty-gcloud/jetty-gcloud-session-manager/src/main/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStore.java index c8a6f30fca6..cd85db19ccb 100644 --- a/jetty-gcloud/jetty-gcloud-session-manager/src/main/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStore.java +++ b/jetty-gcloud/jetty-gcloud-session-manager/src/main/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStore.java @@ -22,9 +22,7 @@ package org.eclipse.jetty.gcloud.session; import java.io.ByteArrayOutputStream; import java.io.ObjectOutputStream; import java.util.HashSet; -import java.util.Map; import java.util.Set; -import java.util.concurrent.atomic.AtomicReference; import org.eclipse.jetty.server.session.AbstractSessionDataStore; import org.eclipse.jetty.server.session.SessionContext; @@ -324,18 +322,14 @@ public class GCloudSessionDataStore extends AbstractSessionDataStore _lastSaved = lastSaved; } - /** - * @see java.lang.Object#toString() - */ + @Override public String toString() { return String.format("%s==%s:%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s",this.getClass().getName(), _kind,_accessed,_attributes,_contextPath,_cookieSetTime,_createTime,_expiry,_id,_lastAccessed,_lastNode,_maxInactive,_vhost); } - - - + } @@ -437,9 +431,7 @@ public class GCloudSessionDataStore extends AbstractSessionDataStore return _maxRetries; } - /** - * @see org.eclipse.jetty.server.session.AbstractSessionDataStore#doStart() - */ + @Override protected void doStart() throws Exception { @@ -466,9 +458,7 @@ public class GCloudSessionDataStore extends AbstractSessionDataStore super.doStart(); } - /** - * @see org.eclipse.jetty.util.component.AbstractLifeCycle#doStop() - */ + @Override protected void doStop() throws Exception { @@ -501,12 +491,8 @@ public class GCloudSessionDataStore extends AbstractSessionDataStore } - - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#load(java.lang.String) - */ @Override - public SessionData load(String id) throws Exception + public SessionData doLoad(String id) throws Exception { if (LOG.isDebugEnabled()) LOG.debug("Loading session {} from DataStore", id); @@ -529,9 +515,7 @@ public class GCloudSessionDataStore extends AbstractSessionDataStore } } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#delete(java.lang.String) - */ + @Override public boolean delete(String id) throws Exception { @@ -540,9 +524,7 @@ public class GCloudSessionDataStore extends AbstractSessionDataStore return true; } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#getExpired(Set) - */ + @Override public Set doGetExpired(Set candidates) { @@ -701,9 +683,6 @@ public class GCloudSessionDataStore extends AbstractSessionDataStore - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#exists(java.lang.String) - */ @Override public boolean exists(String id) throws Exception { @@ -766,6 +745,7 @@ public class GCloudSessionDataStore extends AbstractSessionDataStore } } + /** * Check to see if the given time is in the past. * @@ -780,9 +760,7 @@ public class GCloudSessionDataStore extends AbstractSessionDataStore return timestamp < System.currentTimeMillis(); } - /** - * @see org.eclipse.jetty.server.session.AbstractSessionDataStore#doStore(java.lang.String, org.eclipse.jetty.server.session.SessionData, long) - */ + @Override public void doStore(String id, SessionData data, long lastSaveTime) throws Exception { @@ -874,6 +852,8 @@ public class GCloudSessionDataStore extends AbstractSessionDataStore return false; } } + + /** * Generate a gcloud datastore Entity from SessionData * @param session the session data @@ -889,28 +869,27 @@ public class GCloudSessionDataStore extends AbstractSessionDataStore Entity entity = null; //serialize the attribute map - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - ObjectOutputStream oos = new ObjectOutputStream(baos); - oos.writeObject(session.getAllAttributes()); - oos.flush(); - - //turn a session into an entity - entity = Entity.newBuilder(key) - .set(_model.getId(), session.getId()) - .set(_model.getContextPath(), session.getContextPath()) - .set(_model.getVhost(), session.getVhost()) - .set(_model.getAccessed(), session.getAccessed()) - .set(_model.getLastAccessed(), session.getLastAccessed()) - .set(_model.getCreateTime(), session.getCreated()) - .set(_model.getCookieSetTime(), session.getCookieSet()) - .set(_model.getLastNode(),session.getLastNode()) - .set(_model.getExpiry(), session.getExpiry()) - .set(_model.getMaxInactive(), session.getMaxInactiveMs()) - .set(_model.getLastSaved(), session.getLastSaved()) - .set(_model.getAttributes(), BlobValue.newBuilder(Blob.copyFrom(baos.toByteArray())).setExcludeFromIndexes(true).build()).build(); + try (ByteArrayOutputStream baos = new ByteArrayOutputStream(); + ObjectOutputStream oos = new ObjectOutputStream(baos)) + { + SessionData.serializeAttributes(session, oos); - - return entity; + //turn a session into an entity + entity = Entity.newBuilder(key) + .set(_model.getId(), session.getId()) + .set(_model.getContextPath(), session.getContextPath()) + .set(_model.getVhost(), session.getVhost()) + .set(_model.getAccessed(), session.getAccessed()) + .set(_model.getLastAccessed(), session.getLastAccessed()) + .set(_model.getCreateTime(), session.getCreated()) + .set(_model.getCookieSetTime(), session.getCookieSet()) + .set(_model.getLastNode(),session.getLastNode()) + .set(_model.getExpiry(), session.getExpiry()) + .set(_model.getMaxInactive(), session.getMaxInactiveMs()) + .set(_model.getLastSaved(), session.getLastSaved()) + .set(_model.getAttributes(), BlobValue.newBuilder(Blob.copyFrom(baos.toByteArray())).setExcludeFromIndexes(true).build()).build(); + return entity; + } } /** @@ -924,79 +903,51 @@ public class GCloudSessionDataStore extends AbstractSessionDataStore if (entity == null) return null; - final AtomicReference reference = new AtomicReference<>(); - final AtomicReference exception = new AtomicReference<>(); - Runnable load = new Runnable() - { - @Override - public void run () - { - try - { - //turn an Entity into a Session - String id = entity.getString(_model.getId()); - String contextPath = entity.getString(_model.getContextPath()); - String vhost = entity.getString(_model.getVhost()); - long accessed = entity.getLong(_model.getAccessed()); - long lastAccessed = entity.getLong(_model.getLastAccessed()); - long createTime = entity.getLong(_model.getCreateTime()); - long cookieSet = entity.getLong(_model.getCookieSetTime()); - String lastNode = entity.getString(_model.getLastNode()); + //turn an Entity into a Session + String id = entity.getString(_model.getId()); + String contextPath = entity.getString(_model.getContextPath()); + String vhost = entity.getString(_model.getVhost()); + long accessed = entity.getLong(_model.getAccessed()); + long lastAccessed = entity.getLong(_model.getLastAccessed()); + long createTime = entity.getLong(_model.getCreateTime()); + long cookieSet = entity.getLong(_model.getCookieSetTime()); + String lastNode = entity.getString(_model.getLastNode()); - long lastSaved = 0; - //for compatibility with previously saved sessions, lastSaved may not be present - try - { - lastSaved = entity.getLong(_model.getLastSaved()); - } - catch (DatastoreException e) - { - LOG.ignore(e); - } - long expiry = entity.getLong(_model.getExpiry()); - long maxInactive = entity.getLong(_model.getMaxInactive()); - Blob blob = (Blob) entity.getBlob(_model.getAttributes()); - - SessionData session = newSessionData (id, createTime, accessed, lastAccessed, maxInactive); - session.setLastNode(lastNode); - session.setContextPath(contextPath); - session.setVhost(vhost); - session.setCookieSet(cookieSet); - session.setLastNode(lastNode); - session.setLastSaved(lastSaved); - session.setExpiry(expiry); - try (ClassLoadingObjectInputStream ois = new ClassLoadingObjectInputStream(blob.asInputStream())) - { - Object o = ois.readObject(); - session.putAllAttributes((Map)o); - } - catch (Exception e) - { - throw new UnreadableSessionDataException (id, _context, e); - } - reference.set(session); - } - catch (Exception e) - { - exception.set(e); - } - } - }; - - //ensure this runs in the context classloader - _context.run(load); - - if (exception.get() != null) + long lastSaved = 0; + //for compatibility with previously saved sessions, lastSaved may not be present + try { - throw exception.get(); + lastSaved = entity.getLong(_model.getLastSaved()); } - - return reference.get(); + catch (DatastoreException e) + { + LOG.ignore(e); + } + long expiry = entity.getLong(_model.getExpiry()); + long maxInactive = entity.getLong(_model.getMaxInactive()); + Blob blob = (Blob) entity.getBlob(_model.getAttributes()); + + SessionData session = newSessionData (id, createTime, accessed, lastAccessed, maxInactive); + session.setLastNode(lastNode); + session.setContextPath(contextPath); + session.setVhost(vhost); + session.setCookieSet(cookieSet); + session.setLastNode(lastNode); + session.setLastSaved(lastSaved); + session.setExpiry(expiry); + try (ClassLoadingObjectInputStream ois = new ClassLoadingObjectInputStream(blob.asInputStream())) + { + SessionData.deserializeAttributes(session, ois); + } + catch (Exception e) + { + throw new UnreadableSessionDataException (id, _context, e); + } + return session; + } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#isPassivating() - */ + @ManagedAttribute(value="does gcloud serialize session data", readonly=true) @Override public boolean isPassivating() @@ -1005,14 +956,10 @@ public class GCloudSessionDataStore extends AbstractSessionDataStore } - /** - * @see org.eclipse.jetty.server.session.AbstractSessionDataStore#toString() - */ @Override public String toString() { return String.format("%s[namespace=%s,backoff=%d,maxRetries=%d,maxResults=%d,indexes=%b]",super.toString(), _namespace, _backoff, _maxRetries, _maxResults,_indexesPresent); } - } diff --git a/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStore.java b/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStore.java index 26ff7c7f30c..8e813da6c35 100644 --- a/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStore.java +++ b/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStore.java @@ -18,7 +18,10 @@ package org.eclipse.jetty.hazelcast.session; -import com.hazelcast.core.IMap; +import java.util.Collections; +import java.util.Set; +import java.util.stream.Collectors; + import org.eclipse.jetty.server.session.AbstractSessionDataStore; import org.eclipse.jetty.server.session.SessionContext; import org.eclipse.jetty.server.session.SessionData; @@ -28,10 +31,7 @@ import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; -import java.util.Collections; -import java.util.Set; -import java.util.concurrent.atomic.AtomicReference; -import java.util.stream.Collectors; +import com.hazelcast.core.IMap; /** * Session data stored in Hazelcast @@ -52,36 +52,24 @@ public class HazelcastSessionDataStore } @Override - public SessionData load( String id ) - throws Exception + public SessionData doLoad( String id ) + throws Exception { - - final AtomicReference reference = new AtomicReference<>(); - final AtomicReference exception = new AtomicReference<>(); - - //ensure the load runs in the context classloader scope - _context.run( () -> { - try - { - if (LOG.isDebugEnabled()) - LOG.debug( "Loading session {} from hazelcast", id ); - - SessionData sd = sessionDataMap.get( getCacheKey( id ) ); - reference.set(sd); - } - catch (Exception e) - { - exception.set(new UnreadableSessionDataException(id, _context, e)); - } - } ); - - if (exception.get() != null) + try { - throw exception.get(); + if (LOG.isDebugEnabled()) + LOG.debug( "Loading session {} from hazelcast", id ); + + SessionData sd = sessionDataMap.get( getCacheKey( id ) ); + return sd; + } + catch (Exception e) + { + throw new UnreadableSessionDataException(id, _context, e); } - return reference.get(); } + @Override public boolean delete( String id ) throws Exception diff --git a/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStoreFactory.java b/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStoreFactory.java index 7fce2facb04..aa076cf4011 100644 --- a/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStoreFactory.java +++ b/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStoreFactory.java @@ -23,10 +23,12 @@ import com.hazelcast.client.config.ClientConfig; import com.hazelcast.client.config.XmlClientConfigBuilder; import com.hazelcast.config.Config; import com.hazelcast.config.MapConfig; +import com.hazelcast.config.SerializerConfig; import com.hazelcast.config.XmlConfigBuilder; import com.hazelcast.core.Hazelcast; import com.hazelcast.core.HazelcastInstance; import org.eclipse.jetty.server.session.AbstractSessionDataStoreFactory; +import org.eclipse.jetty.server.session.SessionData; import org.eclipse.jetty.server.session.SessionDataStore; import org.eclipse.jetty.server.session.SessionDataStoreFactory; import org.eclipse.jetty.server.session.SessionHandler; @@ -68,7 +70,12 @@ public class HazelcastSessionDataStoreFactory { if ( configurationLocation == null ) { - hazelcastInstance = HazelcastClient.newHazelcastClient( new ClientConfig() ); + ClientConfig config = new ClientConfig(); + SerializerConfig sc = new SerializerConfig(). + setImplementation(new SessionDataSerializer()). + setTypeClass(SessionData.class); + config.getSerializationConfig().addSerializerConfig(sc); + hazelcastInstance = HazelcastClient.newHazelcastClient(config); } else { @@ -82,7 +89,12 @@ public class HazelcastSessionDataStoreFactory Config config; if ( configurationLocation == null ) { + + SerializerConfig sc = new SerializerConfig(). + setImplementation(new SessionDataSerializer()). + setTypeClass(SessionData.class); config = new Config(); + config.getSerializationConfig().addSerializerConfig(sc); // configure a default Map if null if ( mapConfig == null ) { diff --git a/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/SessionDataSerializer.java b/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/SessionDataSerializer.java new file mode 100644 index 00000000000..e5dc9d3514c --- /dev/null +++ b/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/SessionDataSerializer.java @@ -0,0 +1,110 @@ +// +// ======================================================================== +// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + + +package org.eclipse.jetty.hazelcast.session; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.ObjectOutputStream; + +import org.eclipse.jetty.server.session.SessionData; +import org.eclipse.jetty.util.ClassLoadingObjectInputStream; + +import com.hazelcast.nio.ObjectDataInput; +import com.hazelcast.nio.ObjectDataOutput; +import com.hazelcast.nio.serialization.StreamSerializer; + +/** + * SessionDataSerializer + * + * Handles serialization on behalf of the SessionData object, and + * ensures that we use jetty's classloading knowledge. + */ +public class SessionDataSerializer implements StreamSerializer +{ + public static final int __TYPEID = 99; + @Override + public int getTypeId() + { + return __TYPEID; + } + + @Override + public void destroy() + { + } + + @Override + public void write(ObjectDataOutput out, SessionData data) throws IOException + { + out.writeUTF(data.getId()); + out.writeUTF(data.getContextPath()); + out.writeUTF(data.getVhost()); + + out.writeLong(data.getAccessed()); + out.writeLong(data.getLastAccessed()); + out.writeLong(data.getCreated()); + out.writeLong(data.getCookieSet()); + out.writeUTF(data.getLastNode()); + + out.writeLong(data.getExpiry()); + out.writeLong(data.getMaxInactiveMs()); + + try (ByteArrayOutputStream baos = new ByteArrayOutputStream(); + ObjectOutputStream oos = new ObjectOutputStream(baos)) + { + SessionData.serializeAttributes(data, oos); + out.writeByteArray(baos.toByteArray()); + } + } + + @Override + public SessionData read(ObjectDataInput in) throws IOException + { + String id = in.readUTF(); + String contextPath = in.readUTF(); + String vhost = in.readUTF(); + + long accessed = in.readLong(); + long lastAccessed = in.readLong(); + long created = in.readLong(); + long cookieSet = in.readLong(); + String lastNode = in.readUTF(); + long expiry = in.readLong(); + long maxInactiveMs = in.readLong(); + + SessionData sd = new SessionData(id, contextPath, vhost, created, accessed, lastAccessed, maxInactiveMs); + + ByteArrayInputStream bais = new ByteArrayInputStream(in.readByteArray()); + try (ClassLoadingObjectInputStream ois = new ClassLoadingObjectInputStream(bais)) + { + SessionData.deserializeAttributes(sd, ois); + } + catch(ClassNotFoundException e) + { + throw new IOException(e); + } + sd.setCookieSet(cookieSet); + sd.setLastNode(lastNode); + sd.setExpiry(expiry); + return sd; + } + +} diff --git a/jetty-infinispan/pom.xml b/jetty-infinispan/pom.xml index 6ad0e56f451..921c93aaf4b 100644 --- a/jetty-infinispan/pom.xml +++ b/jetty-infinispan/pom.xml @@ -40,10 +40,27 @@ infinispan-core ${infinispan.version} + + org.infinispan.protostream + protostream + 4.1.0.Final + org.eclipse.jetty jetty-server ${project.version} + + org.infinispan + infinispan-client-hotrod + 9.1.0.Final + provided + + + org.infinispan + infinispan-remote-query-client + 9.1.0.Final + provided + diff --git a/jetty-infinispan/src/main/config/etc/sessions/infinispan/remote.xml b/jetty-infinispan/src/main/config/etc/sessions/infinispan/remote.xml index 5f2bb705404..356cd48b29c 100644 --- a/jetty-infinispan/src/main/config/etc/sessions/infinispan/remote.xml +++ b/jetty-infinispan/src/main/config/etc/sessions/infinispan/remote.xml @@ -4,15 +4,72 @@ + + + + + + + + + + + /resources/hotrod-client.properties + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + /session.proto + + + + + + + + + + + + - + - + + diff --git a/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionData.java b/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionData.java new file mode 100644 index 00000000000..dbca0652dc3 --- /dev/null +++ b/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionData.java @@ -0,0 +1,69 @@ +package org.eclipse.jetty.session.infinispan; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.ObjectOutputStream; +import java.util.Map; + +import org.eclipse.jetty.server.session.SessionData; +import org.eclipse.jetty.util.ClassLoadingObjectInputStream; + +/** + * InfinispanSessionData + * + * Specialization of SessionData to hold the attributes as a serialized byte + * array. This is necessary because to deserialize the attributes correctly, we + * need to know which classloader to use, which is normally provided as the + * thread context classloader. However, infinispan marshalling uses a thread + * pool and thus these threads have no knowledge of the correct classloader to + * use. + * + */ +public class InfinispanSessionData extends SessionData +{ + protected byte[] _serializedAttributes; + + public InfinispanSessionData(String id, String cpath, String vhost, long created, long accessed, long lastAccessed, long maxInactiveMs) + { + super(id, cpath, vhost, created, accessed, lastAccessed, maxInactiveMs); + } + + public InfinispanSessionData(String id, String cpath, String vhost, long created, long accessed, long lastAccessed, long maxInactiveMs, + Map attributes) + { + super(id, cpath, vhost, created, accessed, lastAccessed, maxInactiveMs, attributes); + } + + public byte[] getSerializedAttributes() + { + return _serializedAttributes; + } + + public void setSerializedAttributes(byte[] serializedAttributes) + { + _serializedAttributes = serializedAttributes; + } + + public void deserializeAttributes() throws ClassNotFoundException, IOException + { + if (_serializedAttributes == null) return; + + try (ByteArrayInputStream bais = new ByteArrayInputStream(_serializedAttributes); + ClassLoadingObjectInputStream ois = new ClassLoadingObjectInputStream(bais)) + { + SessionData.deserializeAttributes(this, ois); + _serializedAttributes = null; + } + } + + public void serializeAttributes() throws IOException + { + try (ByteArrayOutputStream baos = new ByteArrayOutputStream(); + ObjectOutputStream oos = new ObjectOutputStream(baos)) + { + SessionData.serializeAttributes(this, oos); + _serializedAttributes = baos.toByteArray(); + } + } +} \ No newline at end of file diff --git a/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionDataStore.java b/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionDataStore.java index 5d649b76bfd..fa21de58ade 100644 --- a/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionDataStore.java +++ b/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionDataStore.java @@ -45,7 +45,6 @@ public class InfinispanSessionDataStore extends AbstractSessionDataStore private final static Logger LOG = Log.getLogger("org.eclipse.jetty.server.session"); - /** * Clustered cache of sessions */ @@ -54,6 +53,8 @@ public class InfinispanSessionDataStore extends AbstractSessionDataStore private int _infinispanIdleTimeoutSec; + private boolean _passivating; + /** * Get the clustered cache instance. @@ -77,50 +78,55 @@ public class InfinispanSessionDataStore extends AbstractSessionDataStore this._cache = cache; } - - - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#load(String) - */ - @Override - public SessionData load(String id) throws Exception - { - final AtomicReference reference = new AtomicReference<>(); - final AtomicReference exception = new AtomicReference<>(); - - Runnable load = new Runnable() - { - @Override - public void run () - { - try - { - if (LOG.isDebugEnabled()) - LOG.debug("Loading session {} from infinispan", id); - - SessionData sd = (SessionData)_cache.get(getCacheKey(id)); - reference.set(sd); - } - catch (Exception e) - { - exception.set(new UnreadableSessionDataException(id, _context, e)); - } - } - }; - - //ensure the load runs in the context classloader scope - _context.run(load); - - if (exception.get() != null) - throw exception.get(); - - return reference.get(); + + @Override + protected void doStart() throws Exception + { + super.doStart(); + if (_cache == null) + throw new IllegalStateException ("No cache"); + + try + { + _passivating = false; + Class remoteClass = Thread.currentThread().getContextClassLoader().loadClass("org.infinispan.client.hotrod.RemoteCache"); + if (remoteClass.isAssignableFrom(_cache.getClass())) + _passivating = true; + } + catch (ClassNotFoundException e) + { + //expected if not running with remote cache + } } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#delete(String) - */ + + + @Override + public SessionData doLoad(String id) throws Exception + { + try + { + if (LOG.isDebugEnabled()) + LOG.debug("Loading session {} from infinispan", id); + + InfinispanSessionData sd = (InfinispanSessionData)_cache.get(getCacheKey(id)); + if (isPassivating() && sd != null) + { + if (LOG.isDebugEnabled()) + LOG.debug("Deserializing session attributes for {}", id); + sd.deserializeAttributes(); + } + + return sd; + } + catch (Exception e) + { + throw new UnreadableSessionDataException(id, _context, e); + } + } + + @Override public boolean delete(String id) throws Exception { @@ -129,9 +135,7 @@ public class InfinispanSessionDataStore extends AbstractSessionDataStore return (_cache.remove(getCacheKey(id)) != null); } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#getExpired(Set) - */ + @Override public Set doGetExpired(Set candidates) { @@ -199,9 +203,7 @@ public class InfinispanSessionDataStore extends AbstractSessionDataStore return expired; } - /** - * @see org.eclipse.jetty.server.session.AbstractSessionDataStore#doStore(String, SessionData, long) - */ + @Override public void doStore(String id, SessionData data, long lastSaveTime) throws Exception { @@ -210,9 +212,9 @@ public class InfinispanSessionDataStore extends AbstractSessionDataStore //scavenges the session before this timeout occurs, the session will be removed. //NOTE: that no session listeners can be called for this. if (data.getMaxInactiveMs() > 0 && getInfinispanIdleTimeoutSec() > 0) - _cache.put(getCacheKey(id), data, -1, TimeUnit.MILLISECONDS, getInfinispanIdleTimeoutSec(), TimeUnit.SECONDS); + _cache.put(getCacheKey(id), (InfinispanSessionData)data, -1, TimeUnit.MILLISECONDS, getInfinispanIdleTimeoutSec(), TimeUnit.SECONDS); else - _cache.put(getCacheKey(id), data); + _cache.put(getCacheKey(id), (InfinispanSessionData)data); if (LOG.isDebugEnabled()) LOG.debug("Session {} saved to infinispan, expires {} ", id, data.getExpiry()); @@ -225,35 +227,15 @@ public class InfinispanSessionDataStore extends AbstractSessionDataStore } - - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#isPassivating() - */ @ManagedAttribute(value="does store serialize sessions", readonly=true) @Override public boolean isPassivating() { - //TODO run in the _context to ensure classloader is set - try - { - Class remoteClass = Thread.currentThread().getContextClassLoader().loadClass("org.infinispan.client.hotrod.RemoteCache"); - if (remoteClass.isAssignableFrom(_cache.getClass())) - { - return true; - } - return false; - } - catch (ClassNotFoundException e) - { - return false; - } + return _passivating; } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#exists(java.lang.String) - */ @Override public boolean exists(String id) throws Exception { @@ -299,6 +281,13 @@ public class InfinispanSessionDataStore extends AbstractSessionDataStore + @Override + public SessionData newSessionData(String id, long created, long accessed, long lastAccessed, long maxInactiveMs) + { + return new InfinispanSessionData(id, _context.getCanonicalContextPath(), _context.getVhost(), created, accessed, lastAccessed, maxInactiveMs); + } + + /** * @param sec the infinispan-specific idle timeout in sec or 0 if not set */ @@ -315,15 +304,9 @@ public class InfinispanSessionDataStore extends AbstractSessionDataStore } - - /** - * @see org.eclipse.jetty.server.session.AbstractSessionDataStore#toString() - */ @Override public String toString() { return String.format("%s[cache=%s,idleTimeoutSec=%d]",super.toString(), (_cache==null?"":_cache.getName()),_infinispanIdleTimeoutSec); } - - } diff --git a/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionLegacyConverter.java b/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionLegacyConverter.java new file mode 100644 index 00000000000..2571e52bcc0 --- /dev/null +++ b/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionLegacyConverter.java @@ -0,0 +1,224 @@ +// +// ======================================================================== +// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + + +package org.eclipse.jetty.session.infinispan; + +import java.util.List; +import java.util.Properties; +import java.util.stream.Collectors; + +import org.eclipse.jetty.server.session.SessionData; +import org.infinispan.client.hotrod.RemoteCache; +import org.infinispan.client.hotrod.RemoteCacheManager; +import org.infinispan.client.hotrod.configuration.ConfigurationBuilder; +import org.infinispan.client.hotrod.marshall.ProtoStreamMarshaller; +import org.infinispan.protostream.FileDescriptorSource; +import org.infinispan.protostream.SerializationContext; + + +/** + * InfinispanSessionLegacyConverter + * + * Converts sessions saved in the old serialization + * format into the new protobuf-based serialization. + * + * Use the -Dverbose=true system property to + * print out more information about conversion failures. + * + */ +public class InfinispanSessionLegacyConverter +{ + RemoteCacheManager _protoManager; + RemoteCache _protoCache; + RemoteCacheManager _legacyManager; + RemoteCache _legacyCache; + boolean _verbose = false; + + + public InfinispanSessionLegacyConverter (String cacheName) + throws Exception + { + //legacy serialization + _legacyManager = new RemoteCacheManager(); + _legacyCache = _legacyManager.getCache(cacheName); + + //new protobuf based + String host = System.getProperty("host", "127.0.0.1"); + _verbose = Boolean.getBoolean("verbose"); + + Properties properties = new Properties(); + ConfigurationBuilder clientBuilder = new ConfigurationBuilder(); + clientBuilder.withProperties(properties).addServer().host(host).marshaller(new ProtoStreamMarshaller()); + _protoManager = new RemoteCacheManager(clientBuilder.build()); + FileDescriptorSource fds = new FileDescriptorSource(); + fds.addProtoFiles("/session.proto"); + SerializationContext serCtx = ProtoStreamMarshaller.getSerializationContext(_protoManager); + serCtx.registerProtoFiles(fds); + serCtx.registerMarshaller(new SessionDataMarshaller()); + _protoCache = _protoManager.getCache(cacheName); + } + + /** + * Convert all sessions to protobuf format sessions. + */ + public void convert () + { + long conversions = 0; + List keys = null; + + //Get all sessions stored in the legacy format + try + { + keys = _legacyCache.keySet().stream().collect(Collectors.toList()); + } + catch (Exception e) + { + System.err.println("Error listing legacy sessions, assuming previously converted. Run again using 'check' argument to verify conversion"); + if (_verbose) e.printStackTrace(); + System.exit(1); + } + + for (String s:keys) + { + SessionData data = null; + try + { + data = (SessionData)_legacyCache.get(s); + } + catch (Exception e) + { + System.err.println("Read of session "+s+" failed. Assuming session already converted and skipping."); + if (_verbose) e.printStackTrace(); + continue; + } + + if (data != null) + { + try + { + _legacyCache.remove(s); + } + catch (Exception e) + { + System.err.println("Remove legacy session failed for "+s+" skipping conversion."); + if (_verbose) e.printStackTrace(); + continue; + } + + try + { + InfinispanSessionData isd = new InfinispanSessionData(data.getId(), data.getContextPath(), data.getVhost(), data.getCreated(), + data.getAccessed(), data.getLastAccessed(), data.getMaxInactiveMs()); + isd.putAllAttributes(data.getAllAttributes()); + isd.setExpiry(data.getExpiry()); + isd.setCookieSet(data.getCookieSet()); + isd.setLastSaved(data.getLastSaved()); + isd.setLastNode(data.getLastNode()); + // now write it out to the protobuf format + _protoCache.put(s, isd); + System.err.println("Converted " + s); + conversions++; + } + catch (Exception e) + { + if (_verbose) e.printStackTrace(); + System.err.println("Conversion failed for " + s + " re-instating legacy session."); + try + { + _legacyCache.put(s, data); + } + catch (Exception x) + { + System.err.println("FAILED REINSTATING SESSION " + s + ". ABORTING."); + x.printStackTrace(); + System.exit(1); + } + } + } + else + System.err.println("Unreadable legacy session "+s); + } + + System.err.println("Total sessions converted: "+conversions); + } + + /** + * Retrieve the sessions using protobuf format and print them out to + * confirm they're ok. + */ + public void checkConverted () + { + List keys = null; + try + { + keys = _protoCache.keySet().stream().collect(Collectors.toList()); + } + catch (Exception e) + { + System.err.println("Unable to read converted sessions, assuming still in legacy format. Run again without 'check' option to convert."); + e.printStackTrace(); + System.exit(1); + } + + for (String s:keys) + { + InfinispanSessionData converted = (InfinispanSessionData)_protoCache.get(s); + if (converted != null) + { + System.err.println("OK: "+converted); + converted.getKeys().stream().forEach((ss)->{System.err.println(ss+":"+converted.getAttribute(ss));}); + } + else + System.err.println("Failed: "+s); + } + + System.err.println("Total converted sessions: "+keys.size()); + } + + public static final void usage () + { + System.err.println("Usage: InfinispanSessionLegacyConverter [-Dhost=127.0.0.1] [-Dverbose=true] [check]"); + } + + public static final void main (String... args) + { + if (args == null || args.length < 1) + { + usage(); + System.exit(1); + } + + try + { + InfinispanSessionLegacyConverter converter = new InfinispanSessionLegacyConverter(args[0]); + + if (args.length == 1) + converter.convert(); + else if (args[1].equals("check")) + converter.checkConverted(); + else + usage(); + } + catch (Exception e) + { + System.err.println("Conversion failure"); + e.printStackTrace(); + } + } +} diff --git a/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/SessionDataMarshaller.java b/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/SessionDataMarshaller.java new file mode 100644 index 00000000000..0d380d4cb22 --- /dev/null +++ b/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/SessionDataMarshaller.java @@ -0,0 +1,106 @@ +// +// ======================================================================== +// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.session.infinispan; + +import java.io.IOException; + +import org.infinispan.protostream.MessageMarshaller; + +/** + * SessionDataMarshaller + * + * A marshaller for converting a SessionData object into protobuf format which + * gives greater control over serialization/deserialization. We use that extra + * control to ensure that session attributes can be deserialized using either + * the container class loader or the webapp classloader, as appropriate. + */ +public class SessionDataMarshaller implements MessageMarshaller +{ + /** + * The version of the serializer. + */ + private static final int VERSION = 0; + + @Override + public Class getJavaClass() + { + return InfinispanSessionData.class; + } + + @Override + public String getTypeName() + { + return "org_eclipse_jetty_session_infinispan.InfinispanSessionData"; + } + + @Override + public InfinispanSessionData readFrom(ProtoStreamReader in) throws IOException + { + int version = in.readInt("version");// version of serialized session + String id = in.readString("id"); // session id + String cpath = in.readString("contextPath"); // context path + String vhost = in.readString("vhost"); // first vhost + + long accessed = in.readLong("accessed");// accessTime + long lastAccessed = in.readLong("lastAccessed"); // lastAccessTime + long created = in.readLong("created"); // time created + long cookieSet = in.readLong("cookieSet");// time cookie was set + String lastNode = in.readString("lastNode"); // name of last node + // managing + + long expiry = in.readLong("expiry"); + long maxInactiveMs = in.readLong("maxInactiveMs"); + + InfinispanSessionData sd = new InfinispanSessionData(id, cpath, vhost, created, accessed, lastAccessed, maxInactiveMs); + sd.setCookieSet(cookieSet); + sd.setLastNode(lastNode); + sd.setExpiry(expiry); + + if (version == 0) + { + byte[] attributeArray = in.readBytes("attributes"); + sd.setSerializedAttributes(attributeArray); + return sd; + } + else + throw new IOException("Unrecognized infinispan session version " + version); + } + + @Override + public void writeTo(ProtoStreamWriter out, InfinispanSessionData sdata) throws IOException + { + out.writeInt("version", VERSION); + out.writeString("id", sdata.getId()); // session id + out.writeString("contextPath", sdata.getContextPath()); // context path + out.writeString("vhost", sdata.getVhost()); // first vhost + + out.writeLong("accessed", sdata.getAccessed());// accessTime + out.writeLong("lastAccessed", sdata.getLastAccessed()); // lastAccessTime + out.writeLong("created", sdata.getCreated()); // time created + out.writeLong("cookieSet", sdata.getCookieSet());// time cookie was set + out.writeString("lastNode", sdata.getLastNode()); // name of last node + // managing + + out.writeLong("expiry", sdata.getExpiry()); + out.writeLong("maxInactiveMs", sdata.getMaxInactiveMs()); + + sdata.serializeAttributes(); + out.writeBytes("attributes", sdata.getSerializedAttributes()); + } +} diff --git a/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/WebAppMarshaller.java b/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/WebAppMarshaller.java index 741b2d0a074..1d3c52e5eef 100644 --- a/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/WebAppMarshaller.java +++ b/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/WebAppMarshaller.java @@ -49,6 +49,7 @@ import org.jboss.marshalling.ContextClassResolver; * </Call> * */ +@Deprecated public class WebAppMarshaller extends AbstractJBossMarshaller { diff --git a/jetty-infinispan/src/main/resources/session.proto b/jetty-infinispan/src/main/resources/session.proto new file mode 100644 index 00000000000..ecadbaaf66c --- /dev/null +++ b/jetty-infinispan/src/main/resources/session.proto @@ -0,0 +1,19 @@ +package org_eclipse_jetty_session_infinispan; + +message InfinispanSessionData +{ + required int32 version = 1; + required string id = 2; + required string contextPath = 3; + required string vhost = 4; + + required sint64 accessed = 5; + required sint64 lastAccessed = 6; + required sint64 created = 7; + required sint64 cookieSet = 8; + required string lastNode = 9; + + required sint64 expiry = 10; + required sint64 maxInactiveMs = 11; + required bytes attributes = 12; +} \ No newline at end of file diff --git a/jetty-memcached/jetty-memcached-sessions/pom.xml b/jetty-memcached/jetty-memcached-sessions/pom.xml index fe4b89009f4..f76ba891883 100644 --- a/jetty-memcached/jetty-memcached-sessions/pom.xml +++ b/jetty-memcached/jetty-memcached-sessions/pom.xml @@ -19,7 +19,7 @@ com.googlecode.xmemcached xmemcached - 2.0.0 + 2.4.5 org.slf4j diff --git a/jetty-memcached/jetty-memcached-sessions/src/main/config/modules/sessions/session-data-cache/xmemcached.mod b/jetty-memcached/jetty-memcached-sessions/src/main/config/modules/sessions/session-data-cache/xmemcached.mod index 0618c02950a..77a21ea759f 100644 --- a/jetty-memcached/jetty-memcached-sessions/src/main/config/modules/sessions/session-data-cache/xmemcached.mod +++ b/jetty-memcached/jetty-memcached-sessions/src/main/config/modules/sessions/session-data-cache/xmemcached.mod @@ -11,7 +11,7 @@ session-store slf4j-api [files] -maven://com.googlecode.xmemcached/xmemcached/2.0.0|lib/xmemcached/xmemcached-2.0.0.jar +maven://com.googlecode.xmemcached/xmemcached/2.4.5|lib/xmemcached/xmemcached-2.4.5.jar [lib] lib/jetty-memcached-sessions-${jetty.version}.jar diff --git a/jetty-memcached/jetty-memcached-sessions/src/main/java/org/eclipse/jetty/memcached/session/MemcachedSessionDataMap.java b/jetty-memcached/jetty-memcached-sessions/src/main/java/org/eclipse/jetty/memcached/session/MemcachedSessionDataMap.java index fbeff56d73d..1b3d01da1ee 100644 --- a/jetty-memcached/jetty-memcached-sessions/src/main/java/org/eclipse/jetty/memcached/session/MemcachedSessionDataMap.java +++ b/jetty-memcached/jetty-memcached-sessions/src/main/java/org/eclipse/jetty/memcached/session/MemcachedSessionDataMap.java @@ -18,6 +18,7 @@ package org.eclipse.jetty.memcached.session; +import java.io.ByteArrayInputStream; import java.io.IOException; import java.net.InetSocketAddress; import java.util.List; @@ -25,12 +26,14 @@ import java.util.List; import org.eclipse.jetty.server.session.SessionContext; import org.eclipse.jetty.server.session.SessionData; import org.eclipse.jetty.server.session.SessionDataMap; +import org.eclipse.jetty.util.ClassLoadingObjectInputStream; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.component.AbstractLifeCycle; import net.rubyeye.xmemcached.MemcachedClient; import net.rubyeye.xmemcached.XMemcachedClientBuilder; +import net.rubyeye.xmemcached.transcoders.SerializingTranscoder; @@ -50,6 +53,39 @@ public class MemcachedSessionDataMap extends AbstractLifeCycle implements Sessio protected XMemcachedClientBuilder _builder; + /** + * SessionDataTranscoder + * + * We override memcached deserialization to use our classloader-aware + * ObjectInputStream. + */ + public static class SessionDataTranscoder extends SerializingTranscoder + { + + @Override + protected Object deserialize(byte[] in) + { + Object rv = null; + + if (in != null) + { + try (ByteArrayInputStream bis = new ByteArrayInputStream(in); + ClassLoadingObjectInputStream is = new ClassLoadingObjectInputStream(bis)) + { + rv = is.readObject(); + } + catch (IOException e) + { + log.error("Caught IOException decoding " + in.length + " bytes of data", e); + } + catch (ClassNotFoundException e) + { + log.error("Caught CNFE decoding " + in.length + " bytes of data", e); + } + } + return rv; + } + } /** @@ -117,14 +153,12 @@ public class MemcachedSessionDataMap extends AbstractLifeCycle implements Sessio } - /** - * @see org.eclipse.jetty.server.session.SessionDataMap#initialize(org.eclipse.jetty.server.session.SessionContext) - */ @Override public void initialize(SessionContext context) { try { + _builder.setTranscoder(new SessionDataTranscoder ()); _client = _builder.build(); _client.setEnableHeartBeat(isHeartbeats()); } @@ -134,9 +168,7 @@ public class MemcachedSessionDataMap extends AbstractLifeCycle implements Sessio } } - /** - * @see org.eclipse.jetty.server.session.SessionDataMap#load(java.lang.String) - */ + @Override public SessionData load(String id) throws Exception { @@ -145,19 +177,13 @@ public class MemcachedSessionDataMap extends AbstractLifeCycle implements Sessio } - /** - * @see org.eclipse.jetty.server.session.SessionDataMap#store(java.lang.String, org.eclipse.jetty.server.session.SessionData) - */ @Override public void store(String id, SessionData data) throws Exception { _client.set(id, _expirySec, data); } - - /** - * @see org.eclipse.jetty.server.session.SessionDataMap#delete(java.lang.String) - */ + @Override public boolean delete(String id) throws Exception { @@ -176,7 +202,6 @@ public class MemcachedSessionDataMap extends AbstractLifeCycle implements Sessio _client.shutdown(); _client = null; } - } - + } } diff --git a/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStore.java b/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStore.java index 106df261ec1..80e456f4aac 100644 --- a/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStore.java +++ b/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStore.java @@ -19,15 +19,19 @@ package org.eclipse.jetty.nosql.mongodb; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.ObjectOutputStream; import java.util.HashMap; import java.util.HashSet; +import java.util.Map; import java.util.Set; -import java.util.concurrent.atomic.AtomicReference; import org.eclipse.jetty.nosql.NoSqlSessionDataStore; import org.eclipse.jetty.server.session.SessionContext; import org.eclipse.jetty.server.session.SessionData; import org.eclipse.jetty.server.session.UnreadableSessionDataException; +import org.eclipse.jetty.util.ClassLoadingObjectInputStream; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.log.Log; @@ -86,9 +90,9 @@ import com.mongodb.WriteResult; * *

* In MongoDB, the nesting level is indicated by "." separators for the key name. Thus to - * interact with a session attribute, the key is composed of: - * "context".unique_context_name.attribute_name - * Eg "context"."0_0_0_0:_testA"."A" + * interact with session fields, the key is composed of: + * "context".unique_context_name.field_name + * Eg "context"."0_0_0_0:_testA"."lastSaved" * * */ @@ -128,6 +132,8 @@ public class MongoSessionDataStore extends NoSqlSessionDataStore public final static String __LAST_ACCESSED = "lastAccessed"; + public final static String __ATTRIBUTES = "attributes"; + /** * Time this session will expire, based on last access time and maxIdle */ @@ -178,107 +184,98 @@ public class MongoSessionDataStore extends NoSqlSessionDataStore } - - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#load(String) - */ @Override - public SessionData load(String id) throws Exception + public SessionData doLoad(String id) throws Exception { - final AtomicReference reference = new AtomicReference<>(); - final AtomicReference exception = new AtomicReference<>(); - Runnable r = new Runnable() + DBObject sessionDocument = _dbSessions.findOne(new BasicDBObject(__ID, id)); + + try { - @Override - public void run () + if (LOG.isDebugEnabled()) + LOG.debug("id={} loaded={}", id, sessionDocument); + + if (sessionDocument == null) + return null; + + Boolean valid = (Boolean)sessionDocument.get(__VALID); + + if (LOG.isDebugEnabled()) + LOG.debug("id={} valid={}", id, valid); + if (valid == null || !valid) + return null; + + Object version = MongoUtils.getNestedValue(sessionDocument, getContextSubfield(__VERSION)); + Long lastSaved = (Long)MongoUtils.getNestedValue(sessionDocument, getContextSubfield(__LASTSAVED)); + String lastNode = (String)MongoUtils.getNestedValue(sessionDocument, getContextSubfield(__LASTNODE)); + byte[] attributes = (byte[])MongoUtils.getNestedValue(sessionDocument, getContextSubfield(__ATTRIBUTES)); + + Long created = (Long)sessionDocument.get(__CREATED); + Long accessed = (Long)sessionDocument.get(__ACCESSED); + Long lastAccessed = (Long)sessionDocument.get(__LAST_ACCESSED); + Long maxInactive = (Long)sessionDocument.get(__MAX_IDLE); + Long expiry = (Long)sessionDocument.get(__EXPIRY); + + NoSqlSessionData data = null; + + // get the session for the context + DBObject sessionSubDocumentForContext = (DBObject)MongoUtils.getNestedValue(sessionDocument,getContextField()); + + if (LOG.isDebugEnabled()) LOG.debug("attrs {}", sessionSubDocumentForContext); + + if (sessionSubDocumentForContext != null) { - try + if (LOG.isDebugEnabled()) + LOG.debug("Session {} present for context {}", id, _context); + + //only load a session if it exists for this context + data = (NoSqlSessionData)newSessionData(id, created, accessed, (lastAccessed == null? accessed:lastAccessed), maxInactive); + data.setVersion(version); + data.setExpiry(expiry); + data.setContextPath(_context.getCanonicalContextPath()); + data.setVhost(_context.getVhost()); + data.setLastSaved(lastSaved); + data.setLastNode(lastNode); + + if (attributes == null) { - DBObject sessionDocument = _dbSessions.findOne(new BasicDBObject(__ID, id)); - - if (LOG.isDebugEnabled()) - LOG.debug("id={} loaded={}", id, sessionDocument); - - if (sessionDocument == null) - return; - - Boolean valid = (Boolean)sessionDocument.get(__VALID); - - if (LOG.isDebugEnabled()) - LOG.debug("id={} valid={}", id, valid); - if (valid == null || !valid) - return; - - Object version = MongoUtils.getNestedValue(sessionDocument, getContextSubfield(__VERSION)); - Long lastSaved = (Long)MongoUtils.getNestedValue(sessionDocument, getContextSubfield(__LASTSAVED)); - String lastNode = (String)MongoUtils.getNestedValue(sessionDocument, getContextSubfield(__LASTNODE)); - - Long created = (Long)sessionDocument.get(__CREATED); - Long accessed = (Long)sessionDocument.get(__ACCESSED); - Long lastAccessed = (Long)sessionDocument.get(__LAST_ACCESSED); - Long maxInactive = (Long)sessionDocument.get(__MAX_IDLE); - Long expiry = (Long)sessionDocument.get(__EXPIRY); - - NoSqlSessionData data = null; - - // get the session for the context - DBObject sessionSubDocumentForContext = (DBObject)MongoUtils.getNestedValue(sessionDocument,getContextField()); - - if (LOG.isDebugEnabled()) LOG.debug("attrs {}", sessionSubDocumentForContext); - - if (sessionSubDocumentForContext != null) + //legacy attribute storage format: the attributes are all fields in the document + Map map = new HashMap<>(); + for (String name : sessionSubDocumentForContext.keySet()) { - if (LOG.isDebugEnabled()) - LOG.debug("Session {} present for context {}", id, _context); - - //only load a session if it exists for this context - data = (NoSqlSessionData)newSessionData(id, created, accessed, (lastAccessed == null? accessed:lastAccessed), maxInactive); - data.setVersion(version); - data.setExpiry(expiry); - data.setContextPath(_context.getCanonicalContextPath()); - data.setVhost(_context.getVhost()); - data.setLastSaved(lastSaved); - data.setLastNode(lastNode); - - HashMap attributes = new HashMap<>(); - for (String name : sessionSubDocumentForContext.keySet()) - { - //skip special metadata attribute which is not one of the actual session attributes - if ( __METADATA.equals(name) ) - continue; - String attr = MongoUtils.decodeName(name); - Object value = MongoUtils.decodeValue(sessionSubDocumentForContext.get(name)); - attributes.put(attr,value); - } - - data.putAllAttributes(attributes); + //skip special metadata attribute which is not one of the actual session attributes + if ( __METADATA.equals(name) ) + continue; + String attr = MongoUtils.decodeName(name); + Object value = MongoUtils.decodeValue(sessionSubDocumentForContext.get(name)); + map.put(attr,value); } - else - { - if (LOG.isDebugEnabled()) - LOG.debug("Session {} not present for context {}", id, _context); - } - - reference.set(data); + data.putAllAttributes(map); } - catch (Exception e) + else { - exception.set(new UnreadableSessionDataException(id, _context, e)); + //attributes have special serialized format + try (ByteArrayInputStream bais = new ByteArrayInputStream(attributes); + ClassLoadingObjectInputStream ois = new ClassLoadingObjectInputStream(bais);) + { + SessionData.deserializeAttributes(data, ois); + } } } - }; - - _context.run(r); - - if (exception.get() != null) - throw exception.get(); - - return reference.get(); + else + { + if (LOG.isDebugEnabled()) + LOG.debug("Session {} not present for context {}", id, _context); + } + + return data; + } + catch (Exception e) + { + throw (new UnreadableSessionDataException(id, _context, e)); + } } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#delete(String) - */ + @Override public boolean delete(String id) throws Exception { @@ -290,7 +287,7 @@ public class MongoSessionDataStore extends NoSqlSessionDataStore * associated with this session */ BasicDBObject mongoKey = new BasicDBObject(__ID, id); - + //DBObject sessionDocument = _dbSessions.findOne(mongoKey,_version_1); DBObject sessionDocument = _dbSessions.findOne(new BasicDBObject(__ID, id)); @@ -336,9 +333,6 @@ public class MongoSessionDataStore extends NoSqlSessionDataStore - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#exists(java.lang.String) - */ @Override public boolean exists(String id) throws Exception { @@ -371,9 +365,6 @@ public class MongoSessionDataStore extends NoSqlSessionDataStore } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#getExpired(Set) - */ @Override public Set doGetExpired(Set candidates) { @@ -459,9 +450,7 @@ public class MongoSessionDataStore extends NoSqlSessionDataStore return expiredSessions; } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#initialize(org.eclipse.jetty.server.session.SessionContext) - */ + public void initialize (SessionContext context) throws Exception { if (isStarted()) @@ -470,9 +459,7 @@ public class MongoSessionDataStore extends NoSqlSessionDataStore ensureIndexes(); } - /** - * @see org.eclipse.jetty.server.session.AbstractSessionDataStore#doStore(String, SessionData, long) - */ + @Override public void doStore(String id, SessionData data, long lastSaveTime) throws Exception { @@ -483,7 +470,7 @@ public class MongoSessionDataStore extends NoSqlSessionDataStore BasicDBObject update = new BasicDBObject(); boolean upsert = false; BasicDBObject sets = new BasicDBObject(); - BasicDBObject unsets = new BasicDBObject(); + Object version = ((NoSqlSessionData)data).getVersion(); @@ -532,29 +519,17 @@ public class MongoSessionDataStore extends NoSqlSessionDataStore sets.put(__ACCESSED, data.getAccessed()); sets.put(__LAST_ACCESSED, data.getLastAccessed()); - - Set names = ((NoSqlSessionData)data).takeDirtyAttributes(); - - if (lastSaveTime <= 0) - { - names.addAll(((NoSqlSessionData)data).getAllAttributeNames()); // note dirty may include removed names - } - - - for (String name : names) + + try (ByteArrayOutputStream baos = new ByteArrayOutputStream(); + ObjectOutputStream oos = new ObjectOutputStream(baos);) { - Object value = data.getAttribute(name); - if (value == null) - unsets.put(getContextField() + "." + MongoUtils.encodeName(name),1); - else - sets.put(getContextField() + "." + MongoUtils.encodeName(name), MongoUtils.encodeName(value)); + SessionData.serializeAttributes(data, oos); + sets.put(getContextSubfield(__ATTRIBUTES), baos.toByteArray()); } // Do the upsert if (!sets.isEmpty()) update.put("$set",sets); - if (!unsets.isEmpty()) - update.put("$unset",unsets); WriteResult res = _dbSessions.update(key,update,upsert,false,WriteConcern.SAFE); if (LOG.isDebugEnabled()) @@ -584,9 +559,6 @@ public class MongoSessionDataStore extends NoSqlSessionDataStore //TODO perhaps index on expiry time? } - - - /*------------------------------------------------------------ */ private String getContextField () { return __CONTEXT + "." + getCanonicalContextId(); @@ -613,9 +585,6 @@ public class MongoSessionDataStore extends NoSqlSessionDataStore } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#isPassivating() - */ @ManagedAttribute(value="does store serialize sessions", readonly=true) @Override public boolean isPassivating() @@ -624,14 +593,11 @@ public class MongoSessionDataStore extends NoSqlSessionDataStore } - /** - * @see org.eclipse.jetty.server.session.AbstractSessionDataStore#toString() - */ + @Override public String toString() { return String.format("%s[collection=%s]", super.toString(),getDBCollection()); } - } diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SessionAuthentication.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SessionAuthentication.java index 016564c578f..1b1ee3dddb0 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SessionAuthentication.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SessionAuthentication.java @@ -59,6 +59,15 @@ public class SessionAuthentication extends AbstractUserAuthentication implements } + @Override + public UserIdentity getUserIdentity() + { + if (_userIdentity == null) + throw new IllegalStateException("!UserIdentity"); + return super.getUserIdentity(); + } + + private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException { @@ -66,10 +75,17 @@ public class SessionAuthentication extends AbstractUserAuthentication implements SecurityHandler security=SecurityHandler.getCurrentSecurityHandler(); if (security==null) - throw new IllegalStateException("!SecurityHandler"); + { + if (LOG.isDebugEnabled()) LOG.debug("!SecurityHandler"); + return; + } + LoginService login_service=security.getLoginService(); if (login_service==null) - throw new IllegalStateException("!LoginService"); + { + if (LOG.isDebugEnabled()) LOG.debug("!LoginService"); + return; + } _userIdentity=login_service.login(_name,_credentials, null); LOG.debug("Deserialized and relogged in {}",this); diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionDataStore.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionDataStore.java index 0d06bf9e626..95037c85e47 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionDataStore.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionDataStore.java @@ -22,6 +22,7 @@ package org.eclipse.jetty.server.session; import java.util.Set; import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicReference; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; @@ -53,6 +54,16 @@ public abstract class AbstractSessionDataStore extends ContainerLifeCycle implem * @throws Exception if unable to store data */ public abstract void doStore(String id, SessionData data, long lastSaveTime) throws Exception; + + /** + * Load the session from persistent store. + * + * @param id the id of the session to load + * @return the re-inflated session + * + * @throws Exception if unable to load the session + */ + public abstract SessionData doLoad (String id) throws Exception; /** @@ -64,10 +75,6 @@ public abstract class AbstractSessionDataStore extends ContainerLifeCycle implem */ public abstract Set doGetExpired (Set candidates); - - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#initialize(org.eclipse.jetty.server.session.SessionContext) - */ @Override public void initialize (SessionContext context) throws Exception { @@ -76,47 +83,84 @@ public abstract class AbstractSessionDataStore extends ContainerLifeCycle implem _context = context; } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#store(java.lang.String, org.eclipse.jetty.server.session.SessionData) - */ + + + @Override + public SessionData load(String id) throws Exception + { + final AtomicReference reference = new AtomicReference(); + final AtomicReference exception = new AtomicReference(); + + Runnable r = new Runnable() + { + @Override + public void run () + { + try + { + reference.set(doLoad(id)); + } + catch (Exception e) + { + exception.set(e); + } + } + }; + + _context.run(r); + if (exception.get() != null) + throw exception.get(); + + return reference.get(); + } + + @Override public void store(String id, SessionData data) throws Exception { if (data == null) return; + final AtomicReference exception = new AtomicReference(); - long lastSave = data.getLastSaved(); - long savePeriodMs = (_savePeriodSec <=0? 0: TimeUnit.SECONDS.toMillis(_savePeriodSec)); - - if (LOG.isDebugEnabled()) - LOG.debug("Store: id={}, dirty={}, lsave={}, period={}, elapsed={}", id,data.isDirty(), data.getLastSaved(), savePeriodMs, (System.currentTimeMillis()-lastSave)); - - //save session if attribute changed or never been saved or time between saves exceeds threshold - if (data.isDirty() || (lastSave <= 0) || ((System.currentTimeMillis()-lastSave) > savePeriodMs)) + Runnable r = new Runnable() { - //set the last saved time to now - data.setLastSaved(System.currentTimeMillis()); - try + @Override + public void run () { - //call the specific store method, passing in previous save time - doStore(id, data, lastSave); - data.setDirty(false); //only undo the dirty setting if we saved it - } - catch (Exception e) - { - //reset last save time if save failed - data.setLastSaved(lastSave); - throw e; - } - } + long lastSave = data.getLastSaved(); + long savePeriodMs = (_savePeriodSec <=0? 0: TimeUnit.SECONDS.toMillis(_savePeriodSec)); + + if (LOG.isDebugEnabled()) + LOG.debug("Store: id={}, dirty={}, lsave={}, period={}, elapsed={}", id,data.isDirty(), data.getLastSaved(), savePeriodMs, (System.currentTimeMillis()-lastSave)); + + //save session if attribute changed or never been saved or time between saves exceeds threshold + if (data.isDirty() || (lastSave <= 0) || ((System.currentTimeMillis()-lastSave) > savePeriodMs)) + { + //set the last saved time to now + data.setLastSaved(System.currentTimeMillis()); + try + { + //call the specific store method, passing in previous save time + doStore(id, data, lastSave); + data.setDirty(false); //only undo the dirty setting if we saved it + } + catch (Exception e) + { + //reset last save time if save failed + data.setLastSaved(lastSave); + exception.set(e); + } + } + }; + }; + + _context.run(r); + if (exception.get() != null) + throw exception.get(); } - - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#getExpired(java.util.Set) - */ @Override public Set getExpired(Set candidates) { @@ -131,11 +175,6 @@ public abstract class AbstractSessionDataStore extends ContainerLifeCycle implem } - - - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#newSessionData(java.lang.String, long, long, long, long) - */ @Override public SessionData newSessionData(String id, long created, long accessed, long lastAccessed, long maxInactiveMs) { @@ -201,10 +240,6 @@ public abstract class AbstractSessionDataStore extends ContainerLifeCycle implem _savePeriodSec = savePeriodSec; } - - /** - * @see java.lang.Object#toString() - */ @Override public String toString() { diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/FileSessionDataStore.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/FileSessionDataStore.java index 4afee55c473..82b2f7edbc4 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/FileSessionDataStore.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/FileSessionDataStore.java @@ -31,15 +31,11 @@ import java.io.OutputStream; import java.nio.file.FileVisitOption; import java.nio.file.Files; import java.nio.file.Path; -import java.util.ArrayList; -import java.util.HashMap; import java.util.HashSet; -import java.util.List; import java.util.Map; import java.util.Set; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.TimeUnit; -import java.util.concurrent.atomic.AtomicReference; import org.eclipse.jetty.util.ClassLoadingObjectInputStream; import org.eclipse.jetty.util.MultiException; @@ -277,80 +273,53 @@ public class FileSessionDataStore extends AbstractSessionDataStore } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#load(java.lang.String) - */ + @Override - public SessionData load(String id) throws Exception + public SessionData doLoad(String id) throws Exception { - final AtomicReference reference = new AtomicReference(); - final AtomicReference exception = new AtomicReference(); - Runnable r = new Runnable() + //load session info from its file + String idWithContext = getIdWithContext(id); + String filename = _sessionFileMap.get(idWithContext); + if (filename == null) { - @Override - public void run () + if (LOG.isDebugEnabled()) + LOG.debug("Unknown file {}",idWithContext); + return null; + } + File file = new File (_storeDir, filename); + if (!file.exists()) + { + if (LOG.isDebugEnabled()) + LOG.debug("No such file {}",filename); + return null; + } + + try (FileInputStream in = new FileInputStream(file)) + { + SessionData data = load(in, id); + data.setLastSaved(file.lastModified()); + return data; + } + catch (UnreadableSessionDataException e) + { + if (isDeleteUnrestorableFiles() && file.exists() && file.getParentFile().equals(_storeDir)) { - //load session info from its file - String idWithContext = getIdWithContext(id); - String filename = _sessionFileMap.get(idWithContext); - if (filename == null) + try { - if (LOG.isDebugEnabled()) - LOG.debug("Unknown file {}",idWithContext); - return; + delete(id); + LOG.warn("Deleted unrestorable file for session {}", id); } - File file = new File (_storeDir, filename); - if (!file.exists()) + catch (Exception x) { - if (LOG.isDebugEnabled()) - LOG.debug("No such file {}",filename); - return; - } - - try (FileInputStream in = new FileInputStream(file)) - { - SessionData data = load(in, id); - data.setLastSaved(file.lastModified()); - reference.set(data); - } - catch (UnreadableSessionDataException e) - { - if (isDeleteUnrestorableFiles() && file.exists() && file.getParentFile().equals(_storeDir)) - { - try - { - delete(id); - LOG.warn("Deleted unrestorable file for session {}", id); - } - catch (Exception x) - { - LOG.warn("Unable to delete unrestorable file {} for session {}", filename, id, x); - } - } - - exception.set(e); - } - catch (Exception e) - { - exception.set(e); - } + LOG.warn("Unable to delete unrestorable file {} for session {}", filename, id, x); + } } - }; - - //ensure this runs with the context classloader set - _context.run(r); - - if (exception.get() != null) - throw exception.get(); - - return reference.get(); + throw e; + } } - /** - * @see org.eclipse.jetty.server.session.AbstractSessionDataStore#doStore(java.lang.String, org.eclipse.jetty.server.session.SessionData, long) - */ @Override public void doStore(String id, SessionData data, long lastSaveTime) throws Exception { @@ -473,10 +442,6 @@ public class FileSessionDataStore extends AbstractSessionDataStore } - - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#isPassivating() - */ @Override @ManagedAttribute(value="are sessions serialized by this store", readonly=true) public boolean isPassivating() @@ -485,11 +450,7 @@ public class FileSessionDataStore extends AbstractSessionDataStore } - - - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#exists(java.lang.String) - */ + @Override public boolean exists(String id) throws Exception { @@ -507,8 +468,10 @@ public class FileSessionDataStore extends AbstractSessionDataStore return (expiry > System.currentTimeMillis()); //hasn't yet expired } - /* ------------------------------------------------------------ */ + /** + * Save the session data. + * * @param os the output stream to save to * @param id identity of the session * @param data the info of the session @@ -528,14 +491,8 @@ public class FileSessionDataStore extends AbstractSessionDataStore out.writeLong(data.getExpiry()); out.writeLong(data.getMaxInactiveMs()); - List keys = new ArrayList(data.getKeys()); - out.writeInt(keys.size()); ObjectOutputStream oos = new ObjectOutputStream(out); - for (String name:keys) - { - oos.writeUTF(name); - oos.writeObject(data.getAttribute(name)); - } + SessionData.serializeAttributes(data, oos); } @@ -650,7 +607,9 @@ public class FileSessionDataStore extends AbstractSessionDataStore /** - * @param is inputstream containing session data + * Load the session data from a file. + * + * @param is file input stream containing session data * @param expectedId the id we've been told to load * @return the session data * @throws Exception @@ -685,8 +644,8 @@ public class FileSessionDataStore extends AbstractSessionDataStore data.setMaxInactiveMs(maxIdle); // Attributes - restoreAttributes(di, di.readInt(), data); - + ClassLoadingObjectInputStream ois = new ClassLoadingObjectInputStream(is); + SessionData.deserializeAttributes(data, ois); return data; } catch (Exception e) @@ -695,39 +654,10 @@ public class FileSessionDataStore extends AbstractSessionDataStore } } - /** - * @param is inputstream containing session data - * @param size number of attributes - * @param data the data to restore to - * @throws Exception - */ - protected void restoreAttributes (InputStream is, int size, SessionData data) - throws Exception - { - if (size>0) - { - // input stream should not be closed here - Map attributes = new HashMap(); - ClassLoadingObjectInputStream ois = new ClassLoadingObjectInputStream(is); - for (int i=0; i reference = new AtomicReference(); - final AtomicReference exception = new AtomicReference(); - - Runnable r = new Runnable() + try (Connection connection = _dbAdaptor.getConnection(); + PreparedStatement statement = _sessionTableSchema.getLoadStatement(connection, id, _context); + ResultSet result = statement.executeQuery()) { - @Override - public void run () - { - try (Connection connection = _dbAdaptor.getConnection(); - PreparedStatement statement = _sessionTableSchema.getLoadStatement(connection, id, _context); - ResultSet result = statement.executeQuery()) - { - SessionData data = null; - if (result.next()) - { - data = newSessionData(id, - result.getLong(_sessionTableSchema.getCreateTimeColumn()), - result.getLong(_sessionTableSchema.getAccessTimeColumn()), - result.getLong(_sessionTableSchema.getLastAccessTimeColumn()), - result.getLong(_sessionTableSchema.getMaxIntervalColumn())); - data.setCookieSet(result.getLong(_sessionTableSchema.getCookieTimeColumn())); - data.setLastNode(result.getString(_sessionTableSchema.getLastNodeColumn())); - data.setLastSaved(result.getLong(_sessionTableSchema.getLastSavedTimeColumn())); - data.setExpiry(result.getLong(_sessionTableSchema.getExpiryTimeColumn())); - data.setContextPath(_context.getCanonicalContextPath()); - data.setVhost(_context.getVhost()); + SessionData data = null; + if (result.next()) + { + data = newSessionData(id, + result.getLong(_sessionTableSchema.getCreateTimeColumn()), + result.getLong(_sessionTableSchema.getAccessTimeColumn()), + result.getLong(_sessionTableSchema.getLastAccessTimeColumn()), + result.getLong(_sessionTableSchema.getMaxIntervalColumn())); + data.setCookieSet(result.getLong(_sessionTableSchema.getCookieTimeColumn())); + data.setLastNode(result.getString(_sessionTableSchema.getLastNodeColumn())); + data.setLastSaved(result.getLong(_sessionTableSchema.getLastSavedTimeColumn())); + data.setExpiry(result.getLong(_sessionTableSchema.getExpiryTimeColumn())); + data.setContextPath(_context.getCanonicalContextPath()); + data.setVhost(_context.getVhost()); - try (InputStream is = _dbAdaptor.getBlobInputStream(result, _sessionTableSchema.getMapColumn()); - ClassLoadingObjectInputStream ois = new ClassLoadingObjectInputStream(is)) - { - Object o = ois.readObject(); - data.putAllAttributes((Map)o); - } - catch (Exception e) - { - throw new UnreadableSessionDataException (id, _context, e); - } - - if (LOG.isDebugEnabled()) - LOG.debug("LOADED session {}", data); - } - else - if (LOG.isDebugEnabled()) - LOG.debug("No session {}", id); - - reference.set(data); + try (InputStream is = _dbAdaptor.getBlobInputStream(result, _sessionTableSchema.getMapColumn()); + ClassLoadingObjectInputStream ois = new ClassLoadingObjectInputStream(is)) + { + SessionData.deserializeAttributes(data, ois); } catch (Exception e) { - exception.set(e); + throw new UnreadableSessionDataException (id, _context, e); } + + if (LOG.isDebugEnabled()) + LOG.debug("LOADED session {}", data); } - }; + else + if (LOG.isDebugEnabled()) + LOG.debug("No session {}", id); - //ensure this runs with context classloader set - _context.run(r); - if (exception.get() != null) - throw exception.get(); - - return reference.get(); + return data; + } } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#delete(java.lang.String) - */ @Override public boolean delete(String id) throws Exception { @@ -712,10 +679,6 @@ public class JDBCSessionDataStore extends AbstractSessionDataStore - - /** - * @see org.eclipse.jetty.server.session.AbstractSessionDataStore#doStore(String, SessionData, long) - */ @Override public void doStore(String id, SessionData data, long lastSaveTime) throws Exception { @@ -762,17 +725,17 @@ public class JDBCSessionDataStore extends AbstractSessionDataStore statement.setLong(10, data.getExpiry()); statement.setLong(11, data.getMaxInactiveMs()); - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - ObjectOutputStream oos = new ObjectOutputStream(baos); - oos.writeObject(data.getAllAttributes()); - oos.flush(); - byte[] bytes = baos.toByteArray(); - - ByteArrayInputStream bais = new ByteArrayInputStream(bytes); - statement.setBinaryStream(12, bais, bytes.length);//attribute map as blob - statement.executeUpdate(); - if (LOG.isDebugEnabled()) - LOG.debug("Inserted session "+data); + try (ByteArrayOutputStream baos = new ByteArrayOutputStream(); + ObjectOutputStream oos = new ObjectOutputStream(baos)) + { + SessionData.serializeAttributes(data, oos); + byte[] bytes = baos.toByteArray(); + ByteArrayInputStream bais = new ByteArrayInputStream(bytes); + statement.setBinaryStream(12, bais, bytes.length);//attribute map as blob + statement.executeUpdate(); + if (LOG.isDebugEnabled()) + LOG.debug("Inserted session "+data); + } } } } @@ -793,26 +756,25 @@ public class JDBCSessionDataStore extends AbstractSessionDataStore statement.setLong(5, data.getExpiry()); statement.setLong(6, data.getMaxInactiveMs()); - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - ObjectOutputStream oos = new ObjectOutputStream(baos); - oos.writeObject(data.getAllAttributes()); - oos.flush(); - byte[] bytes = baos.toByteArray(); - ByteArrayInputStream bais = new ByteArrayInputStream(bytes); - statement.setBinaryStream(7, bais, bytes.length);//attribute map as blob - statement.executeUpdate(); + try(ByteArrayOutputStream baos = new ByteArrayOutputStream(); + ObjectOutputStream oos = new ObjectOutputStream(baos)) + { + SessionData.serializeAttributes(data, oos); + byte[] bytes = baos.toByteArray(); + try (ByteArrayInputStream bais = new ByteArrayInputStream(bytes)) + { + statement.setBinaryStream(7, bais, bytes.length);//attribute map as blob + statement.executeUpdate(); - if (LOG.isDebugEnabled()) - LOG.debug("Updated session "+data); + if (LOG.isDebugEnabled()) + LOG.debug("Updated session "+data); + } + } } } } - - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#getExpired(Set) - */ @Override public Set doGetExpired(Set candidates) { @@ -940,10 +902,6 @@ public class JDBCSessionDataStore extends AbstractSessionDataStore - - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#isPassivating() - */ @Override @ManagedAttribute(value="does this store serialize sessions", readonly=true) public boolean isPassivating() @@ -954,9 +912,6 @@ public class JDBCSessionDataStore extends AbstractSessionDataStore - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#exists(java.lang.String) - */ @Override public boolean exists(String id) throws Exception @@ -988,11 +943,3 @@ public class JDBCSessionDataStore extends AbstractSessionDataStore } } } - - - - - - - - diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionDataStore.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionDataStore.java index b27e17e6f87..f1c9914a826 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionDataStore.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionDataStore.java @@ -33,28 +33,20 @@ import org.eclipse.jetty.util.annotation.ManagedObject; public class NullSessionDataStore extends AbstractSessionDataStore { - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#load(java.lang.String) - */ @Override - public SessionData load(String id) throws Exception + public SessionData doLoad(String id) throws Exception { return null; } - /** - * @see org.eclipse.jetty.server.session.AbstractSessionDataStore#newSessionData(java.lang.String, long, long, long, long) - */ @Override public SessionData newSessionData(String id, long created, long accessed, long lastAccessed, long maxInactiveMs) { return new SessionData(id, _context.getCanonicalContextPath(), _context.getVhost(), created, accessed, lastAccessed, maxInactiveMs); } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#delete(java.lang.String) - */ + @Override public boolean delete(String id) throws Exception { @@ -62,9 +54,7 @@ public class NullSessionDataStore extends AbstractSessionDataStore } - /** - * @see org.eclipse.jetty.server.session.AbstractSessionDataStore#doStore(java.lang.String, org.eclipse.jetty.server.session.SessionData, long) - */ + @Override public void doStore(String id, SessionData data, long lastSaveTime) throws Exception { @@ -72,9 +62,7 @@ public class NullSessionDataStore extends AbstractSessionDataStore } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#getExpired(Set) - */ + @Override public Set doGetExpired(Set candidates) { @@ -82,9 +70,7 @@ public class NullSessionDataStore extends AbstractSessionDataStore } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#isPassivating() - */ + @ManagedAttribute(value="does this store serialize sessions", readonly=true) @Override public boolean isPassivating() @@ -93,9 +79,7 @@ public class NullSessionDataStore extends AbstractSessionDataStore } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#exists(java.lang.String) - */ + @Override public boolean exists(String id) { diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionData.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionData.java index 6d9e1f91a2f..6a70f16a53b 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionData.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionData.java @@ -23,9 +23,11 @@ import java.io.IOException; import java.io.Serializable; import java.util.Collections; import java.util.Map; +import java.util.Map.Entry; import java.util.Set; import java.util.concurrent.ConcurrentHashMap; +import org.eclipse.jetty.util.ClassLoadingObjectInputStream; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -57,6 +59,85 @@ public class SessionData implements Serializable protected boolean _dirty; protected long _lastSaved; //time in msec since last save + + /** + * Serialize the attribute map of the session. + * + * This special handling allows us to record which classloader should be used to load the value of the + * attribute: either the container classloader (which could be the application loader ie null, or jetty's + * startjar loader) or the webapp's classloader. + * + * @param data the SessionData for which to serialize the attributes + * @param out the stream to which to serialize + * @throws IOException + */ + public static void serializeAttributes (SessionData data, java.io.ObjectOutputStream out) + throws IOException + { + int entries = data._attributes.size(); + out.writeObject(entries); + for (Entry entry: data._attributes.entrySet()) + { + out.writeUTF(entry.getKey()); + ClassLoader loader = entry.getValue().getClass().getClassLoader(); + boolean isServerLoader = false; + + if (loader == Thread.currentThread().getContextClassLoader()) //is it the webapp classloader? + isServerLoader = false; + else if (loader == Thread.currentThread().getContextClassLoader().getParent() || loader == SessionData.class.getClassLoader() || loader == null) // is it the container loader? + isServerLoader = true; + else + throw new IOException ("Unknown loader"); // we don't know what loader to use + + out.writeBoolean(isServerLoader); + out.writeObject(entry.getValue()); + } + } + + /** + * De-serialize the attribute map of a session. + * + * When the session was serialized, we will have recorded which classloader should be used to + * recover the attribute value. The classloader could be the container classloader, or the + * webapp classloader. + * + * @param data the SessionData for which to deserialize the attribute map + * @param in the serialized stream + * @throws IOException + * @throws ClassNotFoundException + */ + public static void deserializeAttributes (SessionData data, java.io.ObjectInputStream in) + throws IOException, ClassNotFoundException + { + Object o = in.readObject(); + if (o instanceof Integer) + { + //new serialization was used + if (!(ClassLoadingObjectInputStream.class.isAssignableFrom(in.getClass()))) + throw new IOException ("Not ClassLoadingObjectInputStream"); + + data._attributes = new ConcurrentHashMap<>(); + int entries = ((Integer)o).intValue(); + for (int i=0; i < entries; i++) + { + String name = in.readUTF(); //attribute name + boolean isServerClassLoader = in.readBoolean(); //use server or webapp classloader to load + + Object value = ((ClassLoadingObjectInputStream)in).readObject(isServerClassLoader?SessionData.class.getClassLoader():Thread.currentThread().getContextClassLoader()); + data._attributes.put(name, value); + } + } + else + { + LOG.info("Legacy serialization detected for {}", data.getId()); + //legacy serialization was used, we have just deserialized the + //entire attribute map + data._attributes = new ConcurrentHashMap(); + data.putAllAttributes((Map)o); + } + } + + public SessionData (String id, String cpath, String vhost, long created, long accessed, long lastAccessed, long maxInactiveMs) { this(id, cpath, vhost, created, accessed, lastAccessed, maxInactiveMs, new ConcurrentHashMap()); @@ -335,24 +416,21 @@ public class SessionData implements Serializable out.writeUTF(_id); //session id out.writeUTF(_contextPath); //context path out.writeUTF(_vhost); //first vhost - out.writeLong(_accessed);//accessTime out.writeLong(_lastAccessed); //lastAccessTime out.writeLong(_created); //time created out.writeLong(_cookieSet);//time cookie was set out.writeUTF(_lastNode); //name of last node managing - out.writeLong(_expiry); out.writeLong(_maxInactiveMs); - out.writeObject(_attributes); + serializeAttributes(this, out); } private void readObject(java.io.ObjectInputStream in) throws IOException, ClassNotFoundException { _id = in.readUTF(); _contextPath = in.readUTF(); - _vhost = in.readUTF(); - + _vhost = in.readUTF(); _accessed = in.readLong();//accessTime _lastAccessed = in.readLong(); //lastAccessTime _created = in.readLong(); //time created @@ -360,7 +438,7 @@ public class SessionData implements Serializable _lastNode = in.readUTF(); //last managing node _expiry = in.readLong(); _maxInactiveMs = in.readLong(); - _attributes = (Map)in.readObject(); + deserializeAttributes(this, in); } public boolean isExpiredAt (long time) diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ClassLoadingObjectInputStream.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ClassLoadingObjectInputStream.java index d3f2e1912ea..f7107e1fc11 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ClassLoadingObjectInputStream.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ClassLoadingObjectInputStream.java @@ -34,6 +34,20 @@ import java.lang.reflect.Proxy; */ public class ClassLoadingObjectInputStream extends ObjectInputStream { + + protected static class ClassLoaderThreadLocal extends ThreadLocal + { + protected static final ClassLoader UNSET = new ClassLoader() {}; + @Override + protected ClassLoader initialValue() + { + return UNSET; + } + + } + + private ThreadLocal _classloader = new ClassLoaderThreadLocal(); + /* ------------------------------------------------------------ */ public ClassLoadingObjectInputStream(java.io.InputStream in) throws IOException { @@ -46,13 +60,33 @@ public class ClassLoadingObjectInputStream extends ObjectInputStream super(); } + + public Object readObject (ClassLoader loader) + throws IOException, ClassNotFoundException + { + try + { + _classloader.set(loader); + return readObject(); + } + finally + { + _classloader.set(ClassLoaderThreadLocal.UNSET); + } + } + + /* ------------------------------------------------------------ */ @Override public Class resolveClass (java.io.ObjectStreamClass cl) throws IOException, ClassNotFoundException { try { - return Class.forName(cl.getName(), false, Thread.currentThread().getContextClassLoader()); + ClassLoader loader = _classloader.get(); + if (ClassLoaderThreadLocal.UNSET == loader) + loader = Thread.currentThread().getContextClassLoader(); + + return Class.forName(cl.getName(), false, loader); } catch (ClassNotFoundException e) { diff --git a/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/FileTestHelper.java b/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/FileTestHelper.java index 320cd7f7f8b..6757dd8abcb 100644 --- a/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/FileTestHelper.java +++ b/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/FileTestHelper.java @@ -31,9 +31,6 @@ import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectOutputStream; import java.nio.file.Files; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; import java.util.Map; import org.eclipse.jetty.util.ClassLoadingObjectInputStream; @@ -161,9 +158,8 @@ public class FileTestHelper { String filename = ""+expiry+"_"+contextPath+"_"+vhost+"_"+id; File file = new File(_tmpDir, filename); - try(FileOutputStream fos = new FileOutputStream(file,false)) + try (FileOutputStream fos = new FileOutputStream(file,false); DataOutputStream out = new DataOutputStream(fos)) { - DataOutputStream out = new DataOutputStream(fos); out.writeUTF(id); out.writeUTF(contextPath); out.writeUTF(vhost); @@ -177,14 +173,9 @@ public class FileTestHelper if (attributes != null) { - List keys = new ArrayList(attributes.keySet()); - out.writeInt(keys.size()); + SessionData tmp = new SessionData(id,contextPath, vhost, created, accessed, lastAccessed, maxIdle); ObjectOutputStream oos = new ObjectOutputStream(out); - for (String name:keys) - { - oos.writeUTF(name); - oos.writeObject(attributes.get(name)); - } + SessionData.serializeAttributes(tmp, oos); } } } @@ -197,10 +188,8 @@ public class FileTestHelper File file = new File(_tmpDir, filename); assertTrue(file.exists()); - try (FileInputStream in = new FileInputStream(file)) + try (FileInputStream in = new FileInputStream(file); DataInputStream di = new DataInputStream(in)) { - DataInputStream di = new DataInputStream(in); - String id = di.readUTF(); String contextPath = di.readUTF(); String vhost = di.readUTF(); @@ -223,28 +212,18 @@ public class FileTestHelper assertEquals(data.getExpiry(), expiry); assertEquals(data.getMaxInactiveMs(), maxIdle); - Map attributes = new HashMap<>(); - - int size = di.readInt(); - if (size > 0) - { - ClassLoadingObjectInputStream ois = new ClassLoadingObjectInputStream(di); - for (int i=0; imaven-surefire-plugin true - GCloudTestSuite diff --git a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredOrphanedSessionTest.java b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredOrphanedSessionTest.java index fb192d31b60..6aea4e330cf 100644 --- a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredOrphanedSessionTest.java +++ b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredOrphanedSessionTest.java @@ -45,16 +45,10 @@ public class ClusteredOrphanedSessionTest extends AbstractClusteredOrphanedSessi @AfterAll public static void tearDown () throws Exception { + __testSupport.deleteSessions(); __testSupport.tearDown(); } - @AfterAll - public static void teardown () throws Exception - { - __testSupport.deleteSessions(); - } - - /** * @see org.eclipse.jetty.server.session.AbstractTestBase#createSessionDataStoreFactory() diff --git a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredSessionScavengingTest.java b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredSessionScavengingTest.java index 31393388e63..b4be6a648f7 100644 --- a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredSessionScavengingTest.java +++ b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredSessionScavengingTest.java @@ -43,14 +43,9 @@ public class ClusteredSessionScavengingTest extends AbstractClusteredSessionScav @AfterAll public static void tearDown () throws Exception - { - __testSupport.tearDown(); - } - - @AfterAll - public static void teardown () throws Exception { __testSupport.deleteSessions(); + __testSupport.tearDown(); } diff --git a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionTestSupport.java b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionTestSupport.java index 477524ed523..9842201f77c 100644 --- a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionTestSupport.java +++ b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionTestSupport.java @@ -130,36 +130,37 @@ public class GCloudSessionTestSupport long lastAccessed, long maxIdle, long expiry, long cookieset, long lastSaved, Map attributes) - throws Exception + throws Exception { //serialize the attribute map - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - if (attributes != null) + try (ByteArrayOutputStream baos = new ByteArrayOutputStream()) { - ObjectOutputStream oos = new ObjectOutputStream(baos); - oos.writeObject(attributes); - oos.flush(); - } + if (attributes != null) + { + SessionData tmp = new SessionData(id, contextPath, vhost, created, accessed, lastAccessed, maxIdle); + ObjectOutputStream oos = new ObjectOutputStream(baos); + SessionData.serializeAttributes(tmp, oos); + } - //turn a session into an entity - Entity.Builder builder = Entity.newBuilder(_keyFactory.newKey(contextPath+"_"+vhost+"_"+id)) - .set(EntityDataModel.ID, id) - .set(EntityDataModel.CONTEXTPATH, contextPath) - .set(EntityDataModel.VHOST, vhost) - .set(EntityDataModel.ACCESSED, accessed) - .set(EntityDataModel.LASTACCESSED, lastAccessed) - .set(EntityDataModel.CREATETIME, created) - .set(EntityDataModel.COOKIESETTIME, cookieset) - .set(EntityDataModel.LASTNODE, lastNode) - .set(EntityDataModel.EXPIRY, expiry) - .set(EntityDataModel.MAXINACTIVE, maxIdle) - .set(EntityDataModel.LASTSAVED, lastSaved); - if (attributes != null) + //turn a session into an entity + Entity.Builder builder = Entity.newBuilder(_keyFactory.newKey(contextPath+"_"+vhost+"_"+id)) + .set(EntityDataModel.ID, id) + .set(EntityDataModel.CONTEXTPATH, contextPath) + .set(EntityDataModel.VHOST, vhost) + .set(EntityDataModel.ACCESSED, accessed) + .set(EntityDataModel.LASTACCESSED, lastAccessed) + .set(EntityDataModel.CREATETIME, created) + .set(EntityDataModel.COOKIESETTIME, cookieset) + .set(EntityDataModel.LASTNODE, lastNode) + .set(EntityDataModel.EXPIRY, expiry) + .set(EntityDataModel.MAXINACTIVE, maxIdle) + .set(EntityDataModel.LASTSAVED, lastSaved); + if (attributes != null) builder.set(EntityDataModel.ATTRIBUTES, BlobValue.newBuilder(Blob.copyFrom(baos.toByteArray())).setExcludeFromIndexes(true).build()); + Entity entity = builder.build(); - Entity entity = builder.build(); - - _ds.put(entity); + _ds.put(entity); + } } public boolean checkSessionPersisted (SessionData data) @@ -183,21 +184,27 @@ public class GCloudSessionTestSupport assertEquals(data.getMaxInactiveMs(), entity.getLong(EntityDataModel.MAXINACTIVE)); Blob blob = (Blob) entity.getBlob(EntityDataModel.ATTRIBUTES); - Map attributes = new HashMap<>(); + SessionData tmp = new SessionData(data.getId(),entity.getString(EntityDataModel.CONTEXTPATH), + entity.getString(EntityDataModel.VHOST), + entity.getLong(EntityDataModel.CREATETIME), + entity.getLong(EntityDataModel.ACCESSED), + entity.getLong(EntityDataModel.LASTACCESSED), + entity.getLong(EntityDataModel.MAXINACTIVE)); + try (ClassLoadingObjectInputStream ois = new ClassLoadingObjectInputStream(blob.asInputStream())) { - Object o = ois.readObject(); - attributes.putAll((Map)o); + SessionData.deserializeAttributes(tmp, ois); } + //same number of attributes - assertEquals(data.getAllAttributes().size(), attributes.size()); + assertEquals(data.getAllAttributes().size(), tmp.getAllAttributes().size()); //same keys - assertTrue(data.getKeys().equals(attributes.keySet())); + assertTrue(data.getKeys().equals(tmp.getAllAttributes().keySet())); //same values for (String name:data.getKeys()) { - assertTrue(data.getAttribute(name).equals(attributes.get(name))); + assertTrue(data.getAttribute(name).equals(tmp.getAttribute(name))); } return true; diff --git a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/InvalidationSessionTest.java b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/InvalidationSessionTest.java index 3e7809aa82a..837c7749524 100644 --- a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/InvalidationSessionTest.java +++ b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/InvalidationSessionTest.java @@ -45,14 +45,10 @@ public class InvalidationSessionTest extends AbstractClusteredInvalidationSessio @AfterAll public static void tearDown () throws Exception { + __testSupport.deleteSessions(); __testSupport.tearDown(); } - @AfterAll - public static void teardown () throws Exception - { - __testSupport.deleteSessions(); - } /** * @see org.eclipse.jetty.server.session.AbstractTestBase#createSessionDataStoreFactory() diff --git a/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/HazelcastTestHelper.java b/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/HazelcastTestHelper.java index f36df160add..c76761aad5c 100644 --- a/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/HazelcastTestHelper.java +++ b/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/HazelcastTestHelper.java @@ -27,6 +27,8 @@ import java.util.concurrent.TimeUnit; import com.hazelcast.config.JoinConfig; import com.hazelcast.config.MulticastConfig; import com.hazelcast.config.NetworkConfig; +import com.hazelcast.config.SerializerConfig; + import org.eclipse.jetty.server.session.SessionData; import org.eclipse.jetty.server.session.SessionDataStoreFactory; @@ -45,12 +47,21 @@ public class HazelcastTestHelper static final String _hazelcastInstanceName = "SESSION_TEST_"+Long.toString( TimeUnit.NANOSECONDS.toMillis(System.nanoTime())); static final String _name = Long.toString( TimeUnit.NANOSECONDS.toMillis(System.nanoTime()) ); - static final HazelcastInstance _instance = Hazelcast.getOrCreateHazelcastInstance( new Config() // - .setInstanceName(_hazelcastInstanceName ) // - .setNetworkConfig( new NetworkConfig().setJoin( // - new JoinConfig().setMulticastConfig( // - new MulticastConfig().setEnabled( false ) ) ) ) // - .addMapConfig( new MapConfig().setName(_name) ) ); + + static SerializerConfig _serializerConfig; + + static HazelcastInstance _instance; + + static + { + _serializerConfig = new SerializerConfig().setImplementation(new SessionDataSerializer()).setTypeClass(SessionData.class); + Config config = new Config(); + config.setInstanceName(_hazelcastInstanceName ); + config.setNetworkConfig( new NetworkConfig().setJoin(new JoinConfig().setMulticastConfig(new MulticastConfig().setEnabled(false)))); + config.addMapConfig(new MapConfig().setName(_name)); + config.getSerializationConfig().addSerializerConfig(_serializerConfig); + _instance = Hazelcast.getOrCreateHazelcastInstance(config); + } public HazelcastTestHelper () { diff --git a/tests/test-sessions/test-infinispan-sessions/pom.xml b/tests/test-sessions/test-infinispan-sessions/pom.xml index e218d29a188..674c92d13d0 100644 --- a/tests/test-sessions/test-infinispan-sessions/pom.xml +++ b/tests/test-sessions/test-infinispan-sessions/pom.xml @@ -11,6 +11,7 @@ http://www.eclipse.org/jetty ${project.groupId}.sessions.infinispan + 127.0.0.1 @@ -114,6 +115,12 @@ 9.1.0.Final test + + org.infinispan + infinispan-remote-query-client + 9.1.0.Final + test + @@ -134,6 +141,9 @@ **/*.java + + ${hotrod.host} + diff --git a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteInfinispanTestSupport.java b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteInfinispanTestSupport.java index a960f2774fc..02e4faedd52 100644 --- a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteInfinispanTestSupport.java +++ b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteInfinispanTestSupport.java @@ -21,10 +21,21 @@ package org.eclipse.jetty.server.session.remote; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.jupiter.api.Assertions.fail; + +import java.util.Properties; import org.eclipse.jetty.server.session.SessionData; +import org.eclipse.jetty.session.infinispan.InfinispanSessionData; +import org.eclipse.jetty.session.infinispan.SessionDataMarshaller; +import org.infinispan.client.hotrod.configuration.ConfigurationBuilder; import org.infinispan.client.hotrod.RemoteCache; import org.infinispan.client.hotrod.RemoteCacheManager; +import org.infinispan.client.hotrod.marshall.ProtoStreamMarshaller; +import org.infinispan.protostream.FileDescriptorSource; +import org.infinispan.protostream.SerializationContext; + + /** * RemoteInfinispanTestSupport @@ -34,7 +45,7 @@ import org.infinispan.client.hotrod.RemoteCacheManager; public class RemoteInfinispanTestSupport { public static final String DEFAULT_CACHE_NAME = "session_test_cache"; - public RemoteCache _cache; + public RemoteCache _cache; private String _name; public static RemoteCacheManager _manager; @@ -42,11 +53,24 @@ public class RemoteInfinispanTestSupport { try { - _manager = new RemoteCacheManager(); + String host = System.getProperty("hotrod.host","127.0.0.1"); + Properties properties = new Properties(); + + ConfigurationBuilder clientBuilder = new ConfigurationBuilder(); + clientBuilder.withProperties(properties).addServer().host(host).marshaller(new ProtoStreamMarshaller()); + + _manager = new RemoteCacheManager(clientBuilder.build()); + + FileDescriptorSource fds = new FileDescriptorSource(); + fds.addProtoFiles("/session.proto"); + + SerializationContext serCtx = ProtoStreamMarshaller.getSerializationContext(_manager); + serCtx.registerProtoFiles(fds); + serCtx.registerMarshaller(new SessionDataMarshaller()); } catch (Exception e) { - e.printStackTrace(); + fail(e); } } @@ -65,7 +89,7 @@ public class RemoteInfinispanTestSupport - public RemoteCache getCache () + public RemoteCache getCache () { return _cache; } @@ -82,8 +106,7 @@ public class RemoteInfinispanTestSupport } - - @SuppressWarnings("unchecked") + public void createSession (SessionData data) throws Exception { @@ -111,7 +134,8 @@ public class RemoteInfinispanTestSupport if (obj == null) return false; - SessionData saved = (SessionData)obj; + InfinispanSessionData saved = (InfinispanSessionData)obj; + saved.deserializeAttributes(); assertEquals(data.getId(), saved.getId()); assertEquals(data.getContextPath(), saved.getContextPath()); diff --git a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/JdbcTestHelper.java b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/JdbcTestHelper.java index 36e074efce9..73f6466dab4 100644 --- a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/JdbcTestHelper.java +++ b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/JdbcTestHelper.java @@ -210,24 +210,26 @@ public class JdbcTestHelper assertEquals(data.getContextPath(), result.getString(CONTEXT_COL)); assertEquals(data.getVhost(), result.getString("virtualHost")); - Map attributes = new HashMap<>(); Blob blob = result.getBlob(MAP_COL); + SessionData tmp = new SessionData(data.getId(), data.getContextPath(), data.getVhost(), result.getLong(CREATE_COL), + result.getLong(ACCESS_COL), result.getLong(LAST_ACCESS_COL),result.getLong(MAX_IDLE_COL)); + try (InputStream is = blob.getBinaryStream(); ClassLoadingObjectInputStream ois = new ClassLoadingObjectInputStream(is)) { - Object o = ois.readObject(); - attributes.putAll((Map)o); + + SessionData.deserializeAttributes(tmp, ois); } //same number of attributes - assertEquals(data.getAllAttributes().size(), attributes.size()); + assertEquals(data.getAllAttributes().size(), tmp.getAllAttributes().size()); //same keys - assertTrue(data.getKeys().equals(attributes.keySet())); + assertTrue(data.getKeys().equals(tmp.getAllAttributes().keySet())); //same values for (String name:data.getKeys()) { - assertTrue(data.getAttribute(name).equals(attributes.get(name))); + assertTrue(data.getAttribute(name).equals(tmp.getAttribute(name))); } } finally @@ -303,15 +305,18 @@ public class JdbcTestHelper if (attributes != null) { - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - ObjectOutputStream oos = new ObjectOutputStream(baos); - Map emptyMap = Collections.emptyMap(); - oos.writeObject(emptyMap); - oos.flush(); - byte[] bytes = baos.toByteArray(); + SessionData tmp = new SessionData (id, contextPath, vhost, created, accessed, lastAccessed, maxIdle); + try (ByteArrayOutputStream baos = new ByteArrayOutputStream(); + ObjectOutputStream oos = new ObjectOutputStream(baos);) + { + SessionData.serializeAttributes(tmp, oos); + byte[] bytes = baos.toByteArray(); - ByteArrayInputStream bais = new ByteArrayInputStream(bytes); - statement.setBinaryStream(12, bais, bytes.length);//attribute map as blob + try (ByteArrayInputStream bais = new ByteArrayInputStream(bytes);) + { + statement.setBinaryStream(12, bais, bytes.length); + } + } } else statement.setBinaryStream(12, new ByteArrayInputStream("".getBytes()), 0); diff --git a/tests/test-sessions/test-memcached-sessions/pom.xml b/tests/test-sessions/test-memcached-sessions/pom.xml index 5655c1e91cc..5e1bb72f753 100644 --- a/tests/test-sessions/test-memcached-sessions/pom.xml +++ b/tests/test-sessions/test-memcached-sessions/pom.xml @@ -62,6 +62,12 @@ jetty-test-helper test + + org.slf4j + slf4j-simple + 1.7.9 + test + diff --git a/tests/test-sessions/test-memcached-sessions/src/test/java/org/eclipse/jetty/memcached/sessions/MemcachedTestHelper.java b/tests/test-sessions/test-memcached-sessions/src/test/java/org/eclipse/jetty/memcached/sessions/MemcachedTestHelper.java index ebe3590bf37..49a02bcd38f 100644 --- a/tests/test-sessions/test-memcached-sessions/src/test/java/org/eclipse/jetty/memcached/sessions/MemcachedTestHelper.java +++ b/tests/test-sessions/test-memcached-sessions/src/test/java/org/eclipse/jetty/memcached/sessions/MemcachedTestHelper.java @@ -48,29 +48,22 @@ public class MemcachedTestHelper private int _loadCount = 0; - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#isPassivating() - */ @Override public boolean isPassivating() { return true; } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#exists(java.lang.String) - */ + @Override public boolean exists(String id) throws Exception { return _store.get(id) != null; } - /** - * @see org.eclipse.jetty.server.session.SessionDataMap#load(java.lang.String) - */ + @Override - public SessionData load(String id) throws Exception + public SessionData doLoad(String id) throws Exception { _loadCount++; return _store.get(id); @@ -86,18 +79,12 @@ public class MemcachedTestHelper return _loadCount; } - /** - * @see org.eclipse.jetty.server.session.SessionDataMap#delete(java.lang.String) - */ @Override public boolean delete(String id) throws Exception { return (_store.remove(id) != null); } - /** - * @see org.eclipse.jetty.server.session.AbstractSessionDataStore#doStore(java.lang.String, org.eclipse.jetty.server.session.SessionData, long) - */ @Override public void doStore(String id, SessionData data, long lastSaveTime) throws Exception { @@ -105,9 +92,6 @@ public class MemcachedTestHelper } - /** - * @see org.eclipse.jetty.server.session.AbstractSessionDataStore#doGetExpired(java.util.Set) - */ @Override public Set doGetExpired(Set candidates) { diff --git a/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStoreTest.java b/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStoreTest.java index 7c2d6e61184..1fade684ab4 100644 --- a/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStoreTest.java +++ b/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStoreTest.java @@ -19,11 +19,24 @@ package org.eclipse.jetty.nosql.mongodb; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.Map; + +import org.eclipse.jetty.server.session.AbstractSessionDataStoreFactory; import org.eclipse.jetty.server.session.AbstractSessionDataStoreTest; +import org.eclipse.jetty.server.session.SessionContext; import org.eclipse.jetty.server.session.SessionData; +import org.eclipse.jetty.server.session.SessionDataStore; import org.eclipse.jetty.server.session.SessionDataStoreFactory; +import org.eclipse.jetty.servlet.ServletContextHandler; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; /** * MongoSessionDataStoreTest @@ -81,4 +94,55 @@ public class MongoSessionDataStoreTest extends AbstractSessionDataStoreTest { return MongoTestHelper.checkSessionPersisted(data); } + + + /** + * Test that a session stored in the legacy attribute + * format can be read. + * + * @throws Exception + */ + @Test + public void testReadLegacySession() throws Exception + { + //create the SessionDataStore + ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS); + context.setContextPath("/legacy"); + SessionDataStoreFactory factory = createSessionDataStoreFactory(); + ((AbstractSessionDataStoreFactory)factory).setGracePeriodSec(GRACE_PERIOD_SEC); + SessionDataStore store = factory.getSessionDataStore(context.getSessionHandler()); + SessionContext sessionContext = new SessionContext("foo", context.getServletContext()); + store.initialize(sessionContext); + + //persist an old-style session + + Map attributes = new HashMap<>(); + attributes.put("attribute1", "attribute1value"); + attributes.put("attribute2", new ArrayList(Arrays.asList("1", "2", "3"))); + MongoTestHelper.createLegacySession("1234", + sessionContext.getCanonicalContextPath(), sessionContext.getVhost(), + "foo", + 1000L, System.currentTimeMillis()-1000L, System.currentTimeMillis()-2000L, + -1, -1, + attributes ); + + store.start(); + + //test that we can retrieve it + SessionData loaded = store.load("1234"); + assertNotNull(loaded); + assertEquals("1234", loaded.getId()); + assertEquals(1000L, loaded.getCreated()); + + assertEquals("attribute1value", loaded.getAttribute("attribute1")); + assertNotNull(loaded.getAttribute("attribute2")); + + + //test that we can write it + store.store("1234", loaded); + + //and that it has now been written out with the new format + MongoTestHelper.checkSessionPersisted(loaded); + + } } diff --git a/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/MongoTestHelper.java b/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/MongoTestHelper.java index cd5698257e3..47c536ff7cc 100644 --- a/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/MongoTestHelper.java +++ b/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/MongoTestHelper.java @@ -22,26 +22,23 @@ import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; import static org.junit.jupiter.api.Assertions.assertTrue; +import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; -import java.io.IOException; import java.io.ObjectOutputStream; import java.net.UnknownHostException; -import java.sql.Date; -import java.util.HashMap; import java.util.Map; -import com.mongodb.MongoClient; -import org.eclipse.jetty.nosql.NoSqlSessionDataStore.NoSqlSessionData; import org.eclipse.jetty.server.session.SessionData; +import org.eclipse.jetty.util.ClassLoadingObjectInputStream; +import org.eclipse.jetty.util.log.Log; +import org.eclipse.jetty.util.log.Logger; import com.mongodb.BasicDBObject; import com.mongodb.DBCollection; import com.mongodb.DBObject; -import com.mongodb.Mongo; +import com.mongodb.MongoClient; import com.mongodb.MongoException; import com.mongodb.WriteConcern; -import org.eclipse.jetty.util.log.Log; -import org.eclipse.jetty.util.log.Logger; /** @@ -148,10 +145,9 @@ public class MongoTestHelper MongoSessionDataStore.__CONTEXT + "." + data.getVhost().replace('.', '_') + ":" + data.getContextPath() +"."+MongoSessionDataStore.__LASTSAVED); String lastNode = (String)MongoUtils.getNestedValue(sessionDocument, MongoSessionDataStore.__CONTEXT + "." + data.getVhost().replace('.', '_') + ":" + data.getContextPath() +"."+MongoSessionDataStore.__LASTNODE); - + byte[] attributes = (byte[])MongoUtils.getNestedValue(sessionDocument, + MongoSessionDataStore.__CONTEXT + "." + data.getVhost().replace('.', '_') + ":" + data.getContextPath() +"."+MongoSessionDataStore.__ATTRIBUTES); - LOG.info("DA:{} MA:{}", data.getAccessed(), accessed); - LOG.info("DLA:{} DLA:{}",data.getLastAccessed(),lastAccessed); assertEquals(data.getCreated(), created.longValue()); assertEquals(data.getAccessed(), accessed.longValue()); assertEquals(data.getLastAccessed(), lastAccessed.longValue()); @@ -168,26 +164,24 @@ public class MongoTestHelper assertNotNull(sessionSubDocumentForContext); - Map attributes = new HashMap<>(); - for (String name : sessionSubDocumentForContext.keySet()) + if (! data.getAllAttributes().isEmpty()) { - //skip special metadata attribute which is not one of the actual session attributes - if (MongoSessionDataStore.__METADATA.equals(name) ) - continue; - String attr = MongoUtils.decodeName(name); - Object value = MongoUtils.decodeValue(sessionSubDocumentForContext.get(name)); - attributes.put(attr, value); + assertNotNull(attributes); + SessionData tmp = new SessionData(data.getId(), data.getContextPath(), data.getVhost(), created.longValue(), accessed.longValue(), lastAccessed.longValue(), maxInactive.longValue()); + try (ByteArrayInputStream bais = new ByteArrayInputStream(attributes);ClassLoadingObjectInputStream ois = new ClassLoadingObjectInputStream(bais)) + { + SessionData.deserializeAttributes(tmp, ois); + } + + //same keys + assertTrue(data.getKeys().equals(tmp.getKeys())); + //same values + for (String name:data.getKeys()) + { + assertTrue(data.getAttribute(name).equals(tmp.getAttribute(name))); + } } - //same keys - assertTrue(data.getKeys().equals(attributes.keySet())); - //same values - for (String name:data.getKeys()) - { - assertTrue(data.getAttribute(name).equals(attributes.get(name))); - } - - return true; } @@ -226,17 +220,18 @@ public class MongoTestHelper if (attributes != null) { - for (String name : attributes.keySet()) + SessionData tmp = new SessionData (id, contextPath, vhost, created, accessed, lastAccessed, maxIdle, attributes); + try (ByteArrayOutputStream baos = new ByteArrayOutputStream(); ObjectOutputStream oos = new ObjectOutputStream(baos)) { - Object value = attributes.get(name); - sets.put(MongoSessionDataStore.__CONTEXT + "." + vhost.replace('.', '_') + ":" + contextPath+ "." + MongoUtils.encodeName(name), - MongoUtils.encodeName(value)); + SessionData.serializeAttributes(tmp, oos); + sets.put(MongoSessionDataStore.__CONTEXT + "." + vhost.replace('.', '_') + ":" + contextPath +"."+MongoSessionDataStore.__ATTRIBUTES, baos.toByteArray()); } } + update.put("$set",sets); collection.update(key,update,upsert,false,WriteConcern.SAFE); } - + public static void createSession (String id, String contextPath, String vhost, String lastNode, long created, long accessed, @@ -269,6 +264,53 @@ public class MongoTestHelper sets.put(MongoSessionDataStore.__ACCESSED, accessed); sets.put(MongoSessionDataStore.__LAST_ACCESSED, lastAccessed); + if (attributes != null) + { + SessionData tmp = new SessionData (id, contextPath, vhost, created, accessed, lastAccessed, maxIdle, attributes); + try (ByteArrayOutputStream baos = new ByteArrayOutputStream(); + ObjectOutputStream oos = new ObjectOutputStream(baos);) + { + SessionData.serializeAttributes(tmp, oos); + sets.put(MongoSessionDataStore.__CONTEXT + "." + vhost.replace('.', '_') + ":" + contextPath +"."+MongoSessionDataStore.__ATTRIBUTES, baos.toByteArray()); + } + } + + update.put("$set",sets); + collection.update(key,update,upsert,false,WriteConcern.SAFE); + } + + + public static void createLegacySession (String id, String contextPath, String vhost, + String lastNode, long created, long accessed, + long lastAccessed, long maxIdle, long expiry, + Map attributes) + throws Exception + { + //make old-style session to test if we can retrieve it + DBCollection collection = _mongoClient.getDB(DB_NAME).getCollection(COLLECTION_NAME); + + // Form query for upsert + BasicDBObject key = new BasicDBObject(MongoSessionDataStore.__ID, id); + + // Form updates + BasicDBObject update = new BasicDBObject(); + boolean upsert = false; + BasicDBObject sets = new BasicDBObject(); + + Object version = new Long(1); + + // New session + upsert = true; + sets.put(MongoSessionDataStore.__CREATED,created); + sets.put(MongoSessionDataStore.__VALID,true); + sets.put(MongoSessionDataStore.__CONTEXT + "." + vhost.replace('.', '_') + ":" + contextPath +"."+MongoSessionDataStore.__VERSION,version); + sets.put(MongoSessionDataStore.__CONTEXT + "." + vhost.replace('.', '_') + ":" + contextPath +"."+MongoSessionDataStore.__LASTSAVED, System.currentTimeMillis()); + sets.put(MongoSessionDataStore.__CONTEXT + "." + vhost.replace('.', '_') + ":" + contextPath +"."+MongoSessionDataStore.__LASTNODE, lastNode); + sets.put(MongoSessionDataStore.__MAX_IDLE, maxIdle); + sets.put(MongoSessionDataStore.__EXPIRY, expiry); + sets.put(MongoSessionDataStore.__ACCESSED, accessed); + sets.put(MongoSessionDataStore.__LAST_ACCESSED, lastAccessed); + if (attributes != null) { for (String name : attributes.keySet()) @@ -281,9 +323,4 @@ public class MongoTestHelper update.put("$set",sets); collection.update(key,update,upsert,false,WriteConcern.SAFE); } - - - - - } diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestSessionDataStore.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestSessionDataStore.java index cdd5f468a3a..20baeb75033 100644 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestSessionDataStore.java +++ b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestSessionDataStore.java @@ -63,7 +63,7 @@ public class TestSessionDataStore extends AbstractSessionDataStore @Override - public SessionData load(String id) throws Exception + public SessionData doLoad(String id) throws Exception { SessionData sd = _map.get(id); if (sd == null) diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DeleteUnloadableSessionTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DeleteUnloadableSessionTest.java index 54aa6e71546..1565fb3f96b 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DeleteUnloadableSessionTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DeleteUnloadableSessionTest.java @@ -65,37 +65,29 @@ public class DeleteUnloadableSessionTest String unloadableId = null; - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#isPassivating() - */ + @Override public boolean isPassivating() { return true; } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#exists(java.lang.String) - */ + @Override public boolean exists(String id) throws Exception { return o != null; } - /** - * @see org.eclipse.jetty.server.session.SessionDataMap#load(java.lang.String) - */ + @Override - public SessionData load(String id) throws Exception + public SessionData doLoad(String id) throws Exception { unloadableId = id; throw new UnreadableSessionDataException(id, null, new Exception("fake")); } - /** - * @see org.eclipse.jetty.server.session.SessionDataMap#delete(java.lang.String) - */ + @Override public boolean delete(String id) throws Exception { @@ -107,18 +99,14 @@ public class DeleteUnloadableSessionTest return false; } - /** - * @see org.eclipse.jetty.server.session.AbstractSessionDataStore#doStore(java.lang.String, org.eclipse.jetty.server.session.SessionData, long) - */ + @Override public void doStore(String id, SessionData data, long lastSaveTime) throws Exception { //pretend it was saved } - /** - * @see org.eclipse.jetty.server.session.AbstractSessionDataStore#doGetExpired(java.util.Set) - */ + @Override public Set doGetExpired(Set candidates) { diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionEvictionFailureTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionEvictionFailureTest.java index f9fde56b1bb..27687b4c82a 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionEvictionFailureTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionEvictionFailureTest.java @@ -67,45 +67,33 @@ public class SessionEvictionFailureTest _nextStoreResult = results; } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#isPassivating() - */ @Override public boolean isPassivating() { return false; } - /** - * @see org.eclipse.jetty.server.session.SessionDataStore#exists(java.lang.String) - */ + @Override public boolean exists(String id) throws Exception { return true; } - /** - * @see org.eclipse.jetty.server.session.SessionDataMap#load(java.lang.String) - */ + @Override - public SessionData load(String id) throws Exception + public SessionData doLoad(String id) throws Exception { return null; } - /** - * @see org.eclipse.jetty.server.session.SessionDataMap#delete(java.lang.String) - */ @Override public boolean delete(String id) throws Exception { return false; } - /** - * @see org.eclipse.jetty.server.session.AbstractSessionDataStore#doStore(java.lang.String, org.eclipse.jetty.server.session.SessionData, long) - */ + @Override public void doStore(String id, SessionData data, long lastSaveTime) throws Exception { @@ -115,9 +103,6 @@ public class SessionEvictionFailureTest } } - /** - * @see org.eclipse.jetty.server.session.AbstractSessionDataStore#doGetExpired(java.util.Set) - */ @Override public Set doGetExpired(Set candidates) { diff --git a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/SessionDump.java b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/SessionDump.java index 3756043714d..f2ca605a78f 100644 --- a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/SessionDump.java +++ b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/SessionDump.java @@ -31,6 +31,8 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; +import org.eclipse.jetty.util.MultiMap; + /** * Test Servlet Sessions. */ @@ -83,6 +85,7 @@ public class SessionDump extends HttpServlet session = request.getSession(true); session.setAttribute("test","value"); session.setAttribute("obj", new ObjectAttributeValue(System.currentTimeMillis())); + session.setAttribute("WEBCL", new MultiMap()); } else if (session!=null) { @@ -140,6 +143,8 @@ public class SessionDump extends HttpServlet } else { + if (session.getAttribute("WEBCL") == null) + session.setAttribute("WEBCL", new MultiMap()); try { out.println("ID: "+session.getId()+"
"); From 557f40f41fb50bd07caaa4fa65c5f0a27a5601a2 Mon Sep 17 00:00:00 2001 From: Lachlan Roberts Date: Tue, 6 Nov 2018 11:46:26 +0100 Subject: [PATCH 129/931] Issue #113 - CustomRequestLog created new CustomRequestLog class Signed-off-by: Lachlan Roberts --- .../requestlog/jmh/RequestLogBenchmark.java | 24 +- .../jetty/server/CustomRequestLog.java | 436 ++++++++++++++++++ .../server/handler/CustomRequestLogTest.java | 122 +++++ 3 files changed, 566 insertions(+), 16 deletions(-) create mode 100644 jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java create mode 100644 jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java diff --git a/jetty-jmh/src/main/java/org/eclipse/jetty/requestlog/jmh/RequestLogBenchmark.java b/jetty-jmh/src/main/java/org/eclipse/jetty/requestlog/jmh/RequestLogBenchmark.java index 9092a5fca6f..7058b0d2045 100644 --- a/jetty-jmh/src/main/java/org/eclipse/jetty/requestlog/jmh/RequestLogBenchmark.java +++ b/jetty-jmh/src/main/java/org/eclipse/jetty/requestlog/jmh/RequestLogBenchmark.java @@ -18,10 +18,6 @@ package org.eclipse.jetty.requestlog.jmh; -import static java.lang.invoke.MethodHandles.dropArguments; -import static java.lang.invoke.MethodHandles.foldArguments; -import static java.lang.invoke.MethodType.methodType; - import java.lang.invoke.MethodHandle; import java.lang.invoke.MethodHandles; import java.lang.invoke.MethodType; @@ -43,6 +39,10 @@ import org.openjdk.jmh.runner.RunnerException; import org.openjdk.jmh.runner.options.Options; import org.openjdk.jmh.runner.options.OptionsBuilder; +import static java.lang.invoke.MethodHandles.dropArguments; +import static java.lang.invoke.MethodHandles.foldArguments; +import static java.lang.invoke.MethodType.methodType; + @State(Scope.Benchmark) @@ -79,14 +79,7 @@ public class RequestLogBenchmark } } - private ThreadLocal buffers = new ThreadLocal() - { - @Override - protected StringBuilder initialValue() - { - return new StringBuilder(256); - } - }; + private ThreadLocal buffers = ThreadLocal.withInitial(() -> new StringBuilder(256)); MethodHandle logHandle; Object[] iteratedLog; @@ -96,8 +89,7 @@ public class RequestLogBenchmark { MethodType logType = methodType(Void.TYPE, StringBuilder.class, String.class); - MethodHandle append = MethodHandles.lookup() - .findStatic(RequestLogBenchmark.class, "append", methodType(Void.TYPE, String.class, StringBuilder.class)); + MethodHandle append = MethodHandles.lookup().findStatic(RequestLogBenchmark.class, "append", methodType(Void.TYPE, String.class, StringBuilder.class)); MethodHandle logURI = MethodHandles.lookup().findStatic(RequestLogBenchmark.class, "logURI", logType); MethodHandle logAddr = MethodHandles.lookup().findStatic(RequestLogBenchmark.class, "logAddr", logType); MethodHandle logLength = MethodHandles.lookup().findStatic(RequestLogBenchmark.class, "logLength", logType); @@ -171,7 +163,7 @@ public class RequestLogBenchmark try { StringBuilder b = buffers.get(); - logHandle.invoke(buffers.get(), request); + logHandle.invoke(b, request); String l = b.toString(); b.setLength(0); return l; @@ -202,7 +194,7 @@ public class RequestLogBenchmark public String testHandle() { return logMethodHandle(Long.toString(ThreadLocalRandom.current().nextLong())); - }; + } public static void main(String[] args) throws RunnerException diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java new file mode 100644 index 00000000000..e0beb211a9d --- /dev/null +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java @@ -0,0 +1,436 @@ +// +// ======================================================================== +// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.server; + +import java.io.IOException; +import java.lang.invoke.MethodHandle; +import java.lang.invoke.MethodHandles; +import java.lang.invoke.MethodType; +import java.util.ArrayList; +import java.util.List; +import java.util.Locale; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import org.eclipse.jetty.http.pathmap.PathMappings; +import org.eclipse.jetty.util.DateCache; +import org.eclipse.jetty.util.annotation.ManagedAttribute; +import org.eclipse.jetty.util.component.AbstractLifeCycle; +import org.eclipse.jetty.util.log.Log; +import org.eclipse.jetty.util.log.Logger; + +import static java.lang.invoke.MethodHandles.dropArguments; +import static java.lang.invoke.MethodHandles.foldArguments; +import static java.lang.invoke.MethodType.methodType; + +public class CustomRequestLog extends AbstractLifeCycle implements RequestLog +{ + protected static final Logger LOG = Log.getLogger(CustomRequestLog.class); + + private static ThreadLocal _buffers = ThreadLocal.withInitial(() -> new StringBuilder(256)); + + private String[] _ignorePaths; + private boolean _extended; + private transient PathMappings _ignorePathMap; + private boolean _preferProxiedForAddress; + private transient DateCache _logDateCache; + private String _logDateFormat = "dd/MMM/yyyy:HH:mm:ss Z"; + private Locale _logLocale = Locale.getDefault(); + private String _logTimeZone = "GMT"; + + private final MethodHandle _logHandle; + private final String _format; + + public CustomRequestLog(String formatString) + { + try + { + _format = formatString; + _logHandle = getLogHandle(formatString); + } + catch (Throwable t) + { + throw new IllegalStateException(); + } + } + + /* ------------------------------------------------------------ */ + + /** + * Is logging enabled + * @return true if logging is enabled + */ + protected boolean isEnabled() + { + return true; + } + + /* ------------------------------------------------------------ */ + + /** + * Write requestEntry out. (to disk or slf4j log) + * @param requestEntry the request entry + * @throws IOException if unable to write the entry + */ + protected void write(String requestEntry) throws IOException + { + } + + /* ------------------------------------------------------------ */ + + + /** + * Writes the request and response information to the output stream. + * + * @see org.eclipse.jetty.server.RequestLog#log(Request, Response) + */ + @Override + public void log(Request request, Response response) + { + try + { + if (_ignorePathMap != null && _ignorePathMap.getMatch(request.getRequestURI()) != null) + return; + + if (!isEnabled()) + return; + + StringBuilder sb = _buffers.get(); + sb.setLength(0); + + _logHandle.invoke(sb, request); + + String log = sb.toString(); + write(log); + } + catch (Throwable e) + { + LOG.warn(e); + } + } + + /** + * Extract the user authentication + * @param request The request to extract from + * @return The string to log for authenticated user. + */ + protected String getAuthentication(Request request) + { + Authentication authentication = request.getAuthentication(); + + if (authentication instanceof Authentication.User) + return ((Authentication.User)authentication).getUserIdentity().getUserPrincipal().getName(); + + // TODO extract the user name if it is Authentication.Deferred and return as '?username' + + return null; + } + + /** + * Set request paths that will not be logged. + * + * @param ignorePaths array of request paths + */ + public void setIgnorePaths(String[] ignorePaths) + { + _ignorePaths = ignorePaths; + } + + /** + * Retrieve the request paths that will not be logged. + * + * @return array of request paths + */ + public String[] getIgnorePaths() + { + return _ignorePaths; + } + + /** + * Controls whether the actual IP address of the connection or the IP address from the X-Forwarded-For header will + * be logged. + * + * @param preferProxiedForAddress true - IP address from header will be logged, false - IP address from the + * connection will be logged + */ + public void setPreferProxiedForAddress(boolean preferProxiedForAddress) + { + _preferProxiedForAddress = preferProxiedForAddress; + } + + /** + * Retrieved log X-Forwarded-For IP address flag. + * + * @return value of the flag + */ + public boolean getPreferProxiedForAddress() + { + return _preferProxiedForAddress; + } + + /** + * Set the extended request log format flag. + * + * @param extended true - log the extended request information, false - do not log the extended request information + */ + public void setExtended(boolean extended) + { + _extended = extended; + } + + /** + * Retrieve the extended request log format flag. + * + * @return value of the flag + */ + @ManagedAttribute("use extended NCSA format") + public boolean isExtended() + { + return _extended; + } + + /** + * Set up request logging and open log file. + * + * @see org.eclipse.jetty.util.component.AbstractLifeCycle#doStart() + */ + @Override + protected synchronized void doStart() throws Exception + { + if (_logDateFormat != null) + { + _logDateCache = new DateCache(_logDateFormat, _logLocale ,_logTimeZone); + } + + if (_ignorePaths != null && _ignorePaths.length > 0) + { + _ignorePathMap = new PathMappings<>(); + for (int i = 0; i < _ignorePaths.length; i++) + _ignorePathMap.put(_ignorePaths[i], _ignorePaths[i]); + } + else + _ignorePathMap = null; + + super.doStart(); + } + + @Override + protected void doStop() throws Exception + { + _logDateCache = null; + super.doStop(); + } + + /** + * Set the timestamp format for request log entries in the file. If this is not set, the pre-formated request + * timestamp is used. + * + * @param format timestamp format string + */ + public void setLogDateFormat(String format) + { + _logDateFormat = format; + } + + /** + * Retrieve the timestamp format string for request log entries. + * + * @return timestamp format string. + */ + public String getLogDateFormat() + { + return _logDateFormat; + } + + /** + * Set the locale of the request log. + * + * @param logLocale locale object + */ + public void setLogLocale(Locale logLocale) + { + _logLocale = logLocale; + } + + /** + * Retrieve the locale of the request log. + * + * @return locale object + */ + public Locale getLogLocale() + { + return _logLocale; + } + + /** + * Set the timezone of the request log. + * + * @param tz timezone string + */ + public void setLogTimeZone(String tz) + { + _logTimeZone = tz; + } + + /** + * Retrieve the timezone of the request log. + * + * @return timezone string + */ + @ManagedAttribute("the timezone") + public String getLogTimeZone() + { + return _logTimeZone; + } + + + private static void append(StringBuilder buf, String s) + { + if (s==null || s.length()==0) + buf.append('-'); + else + buf.append(s); + } + + private static void append(String s, StringBuilder buf) + { + append(buf, s); + } + + public static void logClientIP(StringBuilder b, Request request) + { + b.append(request.getRemoteAddr()); + } + + public static void main(String[] args) throws Throwable + { + Request request = new Request(null, null); + + + String formatString = "clientIP: %a | "; + MethodHandle logHandle = getLogHandle(formatString); + + + StringBuilder b = new StringBuilder(); + logHandle.invoke(b, request); + System.err.println(b.toString()); + + } + + private static MethodHandle getLogHandle(String formatString) throws NoSuchMethodException, IllegalAccessException + { + //TODO add response to signature + MethodType logType = methodType(Void.TYPE, StringBuilder.class, Request.class); + MethodHandle append = MethodHandles.lookup().findStatic(CustomRequestLog.class, "append", methodType(Void.TYPE, String.class, StringBuilder.class)); + MethodHandle logHandle = dropArguments(append.bindTo("\n"), 1, Request.class); + + for (Token s : tokenize(formatString)) + { + if (s.isLiteralString()) + { + logHandle = foldArguments(logHandle, dropArguments(append.bindTo(s.literal), 1, Request.class)); + } + else + { + switch (s.code) + { + + case "a": + { + String method = "logClientIP"; + MethodHandle specificHandle = MethodHandles.lookup().findStatic(CustomRequestLog.class, method, logType); + logHandle = foldArguments(logHandle, specificHandle); + break; + } + } + } + } + + return logHandle; + } + + private static List tokenize(String value) + { + List tokens = new ArrayList<>(); + + final Pattern PERCENT_CODE = Pattern.compile("(?.*)%(?:\\{(?[^{}]+)})?(?[a-zA-Z%])"); + final Pattern LITERAL = Pattern.compile("(?.*%(?:\\{[^{}]+})?[a-zA-Z%])(?.*)"); + + while(value.length()>0) + { + Matcher m = PERCENT_CODE.matcher(value); + Matcher m2 = LITERAL.matcher(value); + if (m.matches()) + { + String code = m.group("code"); + String arg = m.group("arg"); + + tokens.add(new Token(code, arg)); + value = m.group("remaining"); + continue; + } + + String literal; + if (m2.matches()) + { + literal = m2.group("literal"); + value = m2.group("remaining"); + } + else + { + literal = value; + value = ""; + } + tokens.add(new Token(literal)); + + } + return tokens; + } + + + + + private static class Token + { + public boolean isLiteralString() + { + return(literal != null); + } + + public boolean isPercentCode() + { + return(code != null); + } + + public String code = null; + public String arg = null; + public String literal = null; + + public Token(String code, String arg) + { + this.code = code; + this.arg = arg; + } + + public Token(String literal) + { + this.literal = literal; + } + } +} diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java new file mode 100644 index 00000000000..6556508a4de --- /dev/null +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java @@ -0,0 +1,122 @@ +// +// ======================================================================== +// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.server.handler; + +import java.io.IOException; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.TimeUnit; +import javax.servlet.ServletException; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.eclipse.jetty.server.CustomRequestLog; +import org.eclipse.jetty.server.LocalConnector; +import org.eclipse.jetty.server.Request; +import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.util.BlockingArrayQueue; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.containsString; + +public class CustomRequestLogTest +{ + Log _log; + Server _server; + LocalConnector _connector; + + + @BeforeEach + public void before() throws Exception + { + _server = new Server(); + _connector = new LocalConnector(_server); + _server.addConnector(_connector); + + } + + void testHandlerServerStart(String formatString) throws Exception + { + _log = new Log(formatString); + _server.setRequestLog(_log); + _server.setHandler(new TestHandler()); + _server.start(); + } + + @AfterEach + public void after() throws Exception + { + _server.stop(); + } + + + @Test + public void testQuery() throws Exception + { + testHandlerServerStart("clientIP: %a"); + + _connector.getResponse("GET /foo?name=value HTTP/1.0\n\n"); + String log = _log.entries.poll(5,TimeUnit.SECONDS); + assertThat(log,containsString("GET /foo?name=value")); + assertThat(log,containsString(" 200 ")); + } + + + + + private class Log extends CustomRequestLog + { + public BlockingQueue entries = new BlockingArrayQueue<>(); + + public Log(String formatString) + { + super(formatString); + } + + @Override + protected boolean isEnabled() + { + return true; + } + + @Override + public void write(String requestEntry) throws IOException + { + try + { + entries.add(requestEntry); + } + catch(Exception e) + { + e.printStackTrace(); + } + } + } + + private class TestHandler extends AbstractHandler + { + @Override + public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException + { + baseRequest.setHandled(true); + } + } +} From 012d412ccb40c4545f0c54bdd0bdd2a63aa74bbb Mon Sep 17 00:00:00 2001 From: Lachlan Roberts Date: Tue, 6 Nov 2018 11:48:08 +0100 Subject: [PATCH 130/931] Issue #113 - CustomRequestLog javadoc detailing the custom log formats Signed-off-by: Lachlan Roberts --- .../jetty/server/CustomRequestLog.java | 231 ++++++++++++++++++ 1 file changed, 231 insertions(+) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java index e0beb211a9d..16f1f2c7fa1 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java @@ -39,6 +39,237 @@ import static java.lang.invoke.MethodHandles.dropArguments; import static java.lang.invoke.MethodHandles.foldArguments; import static java.lang.invoke.MethodType.methodType; +/** + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Format StringDescription
%%The percent sign.
%aClient IP address of the request.
%{c}aUnderlying peer IP address of the connection.
%ALocal IP-address.
%BSize of response in bytes, excluding HTTP headers.
%bSize of response in bytes, excluding HTTP headers. In CLF format, i.e. a '-' rather than a 0 when no bytes are sent.
%{VARNAME}CThe contents of cookie VARNAME in the request sent to the server. Only version 0 cookies are fully supported.
%DThe time taken to serve the request, in microseconds.
%{VARNAME}eThe contents of the environment variable VARNAME.
%fFilename.
%hRemote hostname. Will log the IP address if HostnameLookups is set to Off, which is the default. If it logs the hostname for only a few hosts, you probably have access control directives mentioning them by name. See the Require host documentation.
%HThe request protocol.
%{VARNAME}iThe contents of VARNAME: header line(s) in the request sent to the server. Changes made by other modules (e.g. mod_headers) affect this. If you're interested in what the request header was prior to when most modules would have modified it, use mod_setenvif to copy the header into an internal environment variable and log that value with the %{VARNAME}e described above.
%kNumber of keepalive requests handled on this connection. Interesting if KeepAlive is being used, so that, for example, a '1' means the first keepalive request after the initial one, '2' the second, etc...; otherwise this is always 0 (indicating the initial request).
%lRemote logname (from identd, if supplied). This will return a dash unless mod_ident is present and IdentityCheck is set On.
%LThe request log ID from the error log (or '-' if nothing has been logged to the error log for this request). Look for the matching error log line to see what request caused what error.
%mThe request method.
%{VARNAME}nThe contents of note VARNAME from another module.
%{VARNAME}oThe contents of VARNAME: header line(s) in the reply.
%pThe canonical port of the server serving the request.
%{format}pThe canonical port of the server serving the request, or the server's actual port, or the client's actual port. Valid formats are canonical, local, or remote.
%PThe process ID of the child that serviced the request.
%{format}PThe process ID or thread ID of the child that serviced the request. Valid formats are pid, tid, and hextid. hextid requires APR 1.2.0 or higher.
%qThe query string (prepended with a ? if a query string exists, otherwise an empty string).
%rFirst line of request.
%RThe handler generating the response (if any).
%sStatus. For requests that have been internally redirected, this is the status of the original request. Use %>s for the final status.
%tTime the request was received, in the format [18/Sep/2011:19:18:28 -0400]. The last number indicates the timezone offset from GMT
%{format}t + The time, in the form given by format, which should be in an extended strftime(3) format (potentially localized). If the format starts with begin: (default) the time is taken at the beginning of the request processing. If it starts with end: it is the time when the log entry gets written, close to the end of the request processing. + +

In addition to the formats supported by strftime(3), the following format tokens are supported: + +
+ sec         number of seconds since the Epoch
+ msec        number of milliseconds since the Epoch
+ usec        number of microseconds since the Epoch
+ msec_frac   millisecond fraction
+ usec_frac   microsecond fraction
+ 
+ + These tokens can not be combined with each other or strftime(3) formatting in the same format string. You can use multiple %{format}t tokens instead. +
%TThe time taken to serve the request, in seconds.
%{UNIT}TThe time taken to serve the request, in a time unit given by UNIT. Valid units are ms for milliseconds, us for microseconds, and s for seconds. Using s gives the same result as %T without any format; using us gives the same result as %D. Combining %T with a unit is available in 2.4.13 and later.
%uRemote user if the request was authenticated. May be bogus if return status (%s) is 401 (unauthorized).
%UThe URL path requested, not including any query string.
%vThe canonical ServerName of the server serving the request.
%VThe server name according to the UseCanonicalName setting.
%XConnection status when response is completed: + X = Connection aborted before the response completed. + + = Connection may be kept alive after the response is sent. + - = Connection will be closed after the response is sent.
%IBytes received, including request and headers. Cannot be zero. You need to enable mod_logio to use this.
%OBytes sent, including headers. May be zero in rare cases such as when a request is aborted before a response is sent. You need to enable mod_logio to use this.
%SBytes transferred (received and sent), including request and headers, cannot be zero. This is the combination of %I and %O. You need to enable mod_logio to use this.
%{VARNAME}^tiThe contents of VARNAME: trailer line(s) in the request sent to the server.
%{VARNAME}^toThe contents of VARNAME: trailer line(s) in the response sent from the server.
+ */ public class CustomRequestLog extends AbstractLifeCycle implements RequestLog { protected static final Logger LOG = Log.getLogger(CustomRequestLog.class); From 4be4b4e7b48b986f1fc934abe561cef81144e41b Mon Sep 17 00:00:00 2001 From: Lachlan Roberts Date: Tue, 6 Nov 2018 12:16:22 +0100 Subject: [PATCH 131/931] Issue #113 - CustomRequestLog update logHandle directly rather than creating list of tokens Signed-off-by: Lachlan Roberts --- .../jetty/server/CustomRequestLog.java | 118 +++++------------- 1 file changed, 33 insertions(+), 85 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java index 16f1f2c7fa1..f0cb7d45556 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java @@ -22,8 +22,6 @@ import java.io.IOException; import java.lang.invoke.MethodHandle; import java.lang.invoke.MethodHandles; import java.lang.invoke.MethodType; -import java.util.ArrayList; -import java.util.List; import java.util.Locale; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -286,18 +284,16 @@ public class CustomRequestLog extends AbstractLifeCycle implements RequestLog private String _logTimeZone = "GMT"; private final MethodHandle _logHandle; - private final String _format; public CustomRequestLog(String formatString) { try { - _format = formatString; _logHandle = getLogHandle(formatString); } catch (Throwable t) { - throw new IllegalStateException(); + throw new IllegalStateException(t); } } @@ -549,119 +545,71 @@ public class CustomRequestLog extends AbstractLifeCycle implements RequestLog b.append(request.getRemoteAddr()); } - public static void main(String[] args) throws Throwable + + //TODO add response to signature + private static final MethodType LOG_TYPE = methodType(Void.TYPE, StringBuilder.class, Request.class); + + private MethodHandle getLogHandle(String formatString) throws Throwable { - Request request = new Request(null, null); - - - String formatString = "clientIP: %a | "; - MethodHandle logHandle = getLogHandle(formatString); - - - StringBuilder b = new StringBuilder(); - logHandle.invoke(b, request); - System.err.println(b.toString()); - - } - - private static MethodHandle getLogHandle(String formatString) throws NoSuchMethodException, IllegalAccessException - { - //TODO add response to signature - MethodType logType = methodType(Void.TYPE, StringBuilder.class, Request.class); MethodHandle append = MethodHandles.lookup().findStatic(CustomRequestLog.class, "append", methodType(Void.TYPE, String.class, StringBuilder.class)); MethodHandle logHandle = dropArguments(append.bindTo("\n"), 1, Request.class); - for (Token s : tokenize(formatString)) - { - if (s.isLiteralString()) - { - logHandle = foldArguments(logHandle, dropArguments(append.bindTo(s.literal), 1, Request.class)); - } - else - { - switch (s.code) - { - - case "a": - { - String method = "logClientIP"; - MethodHandle specificHandle = MethodHandles.lookup().findStatic(CustomRequestLog.class, method, logType); - logHandle = foldArguments(logHandle, specificHandle); - break; - } - } - } - } - - return logHandle; - } - - private static List tokenize(String value) - { - List tokens = new ArrayList<>(); - final Pattern PERCENT_CODE = Pattern.compile("(?.*)%(?:\\{(?[^{}]+)})?(?[a-zA-Z%])"); final Pattern LITERAL = Pattern.compile("(?.*%(?:\\{[^{}]+})?[a-zA-Z%])(?.*)"); - while(value.length()>0) + String remaining = formatString; + while(remaining.length()>0) { - Matcher m = PERCENT_CODE.matcher(value); - Matcher m2 = LITERAL.matcher(value); + Matcher m = PERCENT_CODE.matcher(remaining); if (m.matches()) { String code = m.group("code"); String arg = m.group("arg"); - tokens.add(new Token(code, arg)); - value = m.group("remaining"); + logHandle = updateLogHandle(logHandle, code, arg); + remaining = m.group("remaining"); continue; } + Matcher m2 = LITERAL.matcher(remaining); String literal; if (m2.matches()) { literal = m2.group("literal"); - value = m2.group("remaining"); + remaining = m2.group("remaining"); } else { - literal = value; - value = ""; + literal = remaining; + remaining = ""; } - tokens.add(new Token(literal)); - + logHandle = updateLogHandle(logHandle, append, literal); } - return tokens; + + return logHandle; } - - - private static class Token + private MethodHandle updateLogHandle(MethodHandle logHandle, MethodHandle append, String literal) { - public boolean isLiteralString() - { - return(literal != null); - } + return foldArguments(logHandle, dropArguments(append.bindTo(literal), 1, Request.class)); + } - public boolean isPercentCode() - { - return(code != null); - } - public String code = null; - public String arg = null; - public String literal = null; - - public Token(String code, String arg) + private MethodHandle updateLogHandle(MethodHandle logHandle, String code, String arg) throws Throwable + { + switch (code) { - this.code = code; - this.arg = arg; - } + case "a": + { + String method = "logClientIP"; + MethodHandle specificHandle = MethodHandles.lookup().findStatic(CustomRequestLog.class, method, LOG_TYPE); + return foldArguments(logHandle, specificHandle); + } - public Token(String literal) - { - this.literal = literal; + default: + LOG.warn("Unsupported code %{}", code); + return logHandle; } } } From 22e7679dd681f7f16dc5e795317e15a95403b597 Mon Sep 17 00:00:00 2001 From: Lachlan Roberts Date: Tue, 6 Nov 2018 12:21:30 +0100 Subject: [PATCH 132/931] Issue 113 - CustomRequestLog changed the log type to include the response Signed-off-by: Lachlan Roberts --- .../org/eclipse/jetty/server/CustomRequestLog.java | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java index f0cb7d45556..c13fcdba1c0 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java @@ -341,7 +341,7 @@ public class CustomRequestLog extends AbstractLifeCycle implements RequestLog StringBuilder sb = _buffers.get(); sb.setLength(0); - _logHandle.invoke(sb, request); + _logHandle.invoke(sb, request, response); String log = sb.toString(); write(log); @@ -540,19 +540,17 @@ public class CustomRequestLog extends AbstractLifeCycle implements RequestLog append(buf, s); } - public static void logClientIP(StringBuilder b, Request request) + public static void logClientIP(StringBuilder b, Request request, Response response) { b.append(request.getRemoteAddr()); } - - //TODO add response to signature - private static final MethodType LOG_TYPE = methodType(Void.TYPE, StringBuilder.class, Request.class); + private static final MethodType LOG_TYPE = methodType(Void.TYPE, StringBuilder.class, Request.class, Response.class); private MethodHandle getLogHandle(String formatString) throws Throwable { MethodHandle append = MethodHandles.lookup().findStatic(CustomRequestLog.class, "append", methodType(Void.TYPE, String.class, StringBuilder.class)); - MethodHandle logHandle = dropArguments(append.bindTo("\n"), 1, Request.class); + MethodHandle logHandle = dropArguments(dropArguments(append.bindTo("\n"), 1, Request.class), 2, Response.class); final Pattern PERCENT_CODE = Pattern.compile("(?.*)%(?:\\{(?[^{}]+)})?(?[a-zA-Z%])"); final Pattern LITERAL = Pattern.compile("(?.*%(?:\\{[^{}]+})?[a-zA-Z%])(?.*)"); @@ -592,7 +590,8 @@ public class CustomRequestLog extends AbstractLifeCycle implements RequestLog private MethodHandle updateLogHandle(MethodHandle logHandle, MethodHandle append, String literal) { - return foldArguments(logHandle, dropArguments(append.bindTo(literal), 1, Request.class)); + return foldArguments(logHandle, dropArguments(dropArguments(append.bindTo(literal), 1, Request.class), 2, Response.class)); + } From ef261a39ae09b775aae27b042f69bfb83f3a287b Mon Sep 17 00:00:00 2001 From: Jan Bartel Date: Tue, 6 Nov 2018 16:40:21 +0100 Subject: [PATCH 133/931] Issue #2925 Update troubleshooting doc for files locking on windows (#3061) * Issue #2925 Update troubleshooting doc for files locking on windows Signed-off-by: Jan Bartel * General formatting fixes. Signed-off-by: WalkerWatch --- .../troubleshooting-locked-files.adoc | 110 +++++++----------- 1 file changed, 42 insertions(+), 68 deletions(-) diff --git a/jetty-documentation/src/main/asciidoc/reference/troubleshooting/troubleshooting-locked-files.adoc b/jetty-documentation/src/main/asciidoc/reference/troubleshooting/troubleshooting-locked-files.adoc index f23b78d8d22..584241d2cfb 100644 --- a/jetty-documentation/src/main/asciidoc/reference/troubleshooting/troubleshooting-locked-files.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/troubleshooting/troubleshooting-locked-files.adoc @@ -26,84 +26,58 @@ Effectively this means that you have to stop Jetty to update a file. ==== Remedy -Jetty provides a configuration switch in the `webdefault.xml` file for the DefaultServlet that enables or disables the use of memory-mapped files. +Jetty provides a configuration switch for the `DefaultServlet` that enables or disables the use of memory-mapped files. If you are running on Windows and are having file-locking problems, you should set this switch to disable memory-mapped file buffers. +Use one of the following options to configure the switch. -The default `webdefault.xml` file is found in the jetty distribution under the `etc/` directory or in the `jetty-webapp-${VERSION}.jar` artifact at `org/eclipse/jetty/webapp/webdefault.xml`. -Edit the file in the distribution or extract it to a convenient disk location and edit it to change `useFileMappedBuffer` to false. -The easiest option is to simply edit the default file contained in the jetty distribution itself. +===== Using override-web.xml + +An <> file can be placed in your webapp's `WEB-INF` directory to change the default setting of the `DefaultServlet` for memory-mapped file buffers. +Create an `override-web.xml` file with appropriate headers for your version of the servlet specification, and place the following inside the `` element: [source, xml, subs="{sub-order}"] ---- - - useFileMappedBuffer - true - - - ----- - -Make sure to apply your custom `webdefault.xml` file to all of your webapps. -You can do that by changing the configuration of the Deployment Manager in `etc/jetty-deploy.xml`. - -[source, xml, subs="{sub-order}"] ----- - - - - . - . - - /etc/webdefault.xml - 1 - true - . - . - - - - - ----- - -Alternatively, if you have individually configured your webapps with context xml files, you need to call the `WebAppContext.setDefaultsDescriptor(String path)` method: - -[source, xml, subs="{sub-order}"] ----- - - / - ./webapps/fredapp - /home/fred/jetty/mywebdefaults.xml - . - . - - - ----- - -Instead, you could redefine the DefaultServlet in your web.xml file, making sure to set useFileMappedBuffer to false: - -[source, xml, subs="{sub-order}"] ----- - - ... - default - org.eclipse.jetty.servlet.DefaultServlet - - useFileMappedBuffer - false - - 0 - - ... - + default + + useFileMappedBuffer + false + + ---- +===== Using a Context XML File + +You can create or update a context xml file that configures your webapp to apply the setting to disable memory-mapped file buffers. +Add the following to your context xml file: + +[source, xml, subs="{sub-order}"] +---- + + org.eclipse.jetty.servlet.Default.useFileMappedBuffer + false + +---- + + +===== Using the Jetty Maven Plugin + +If you don't want to use either of the other two solutions, you can configure the plugin directly to disable memory-mapped file buffers. +Add the following to the plugin's configuration under the `` element: + +[source, xml, subs="{sub-order}"] +---- + <_initParams> + false + +---- + + + ==== Alternate Remedy You can force a `WebAppContext` to always copy a web app directory on deployment. -The base directory of your web app (ie the root directory where your static content exists) will be copied to the link:#ref-temporary-directories[temp directory]. +The base directory of your web app (i.e. the root directory where your static content exists) will be copied to the link:#ref-temporary-directories[temp directory]. Configure this in an xml file like so: [source, xml, subs="{sub-order}"] @@ -120,4 +94,4 @@ Configure this in an xml file like so: ____ [NOTE] Be careful with this option when using an explicitly setlink:#ref-temp-directories[temp directory] name - as the name of the temp directory will not unique across redeployments, copying the static content into the same directory name each time may not avoid the locking problem. -____ \ No newline at end of file +____ From 872eafef0652f67af51a5926a374c84176f24c4b Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Wed, 7 Nov 2018 17:28:44 +1000 Subject: [PATCH 134/931] Issue #2858 upgrade jnr-unixsocket to 0.19 (#2859) * upgrade jnr-unixsocket to 0.19 #2858 Signed-off-by: olivier lamy * remove hack as issue has been fixed on jnr project Signed-off-by: olivier lamy * upgrade jnr-unixsocket to 0.20 Signed-off-by: olivier lamy --- .../jetty/unixsocket/UnixSocketEndPoint.java | 46 ------------------- pom.xml | 2 +- 2 files changed, 1 insertion(+), 47 deletions(-) diff --git a/jetty-unixsocket/src/main/java/org/eclipse/jetty/unixsocket/UnixSocketEndPoint.java b/jetty-unixsocket/src/main/java/org/eclipse/jetty/unixsocket/UnixSocketEndPoint.java index 3fac0fbe26d..8f798e22e3b 100644 --- a/jetty-unixsocket/src/main/java/org/eclipse/jetty/unixsocket/UnixSocketEndPoint.java +++ b/jetty-unixsocket/src/main/java/org/eclipse/jetty/unixsocket/UnixSocketEndPoint.java @@ -75,50 +75,4 @@ public class UnixSocketEndPoint extends ChannelEndPoint LOG.debug(e); } } - - - @Override - public boolean flush(ByteBuffer... buffers) throws IOException - { - // TODO this is a work around for https://github.com/jnr/jnr-unixsocket/issues/50 - long flushed=0; - try - { - for (ByteBuffer b : buffers) - { - if (b.hasRemaining()) - { - int r=b.remaining(); - int p=b.position(); - int l=_channel.write(b); - if (l>=0) - { - b.position(p+l); - flushed+=l; - } - - if (CEPLOG.isDebugEnabled()) - CEPLOG.debug("flushed {}/{} r={} {}", l,r,b.remaining(), this); - - if (b.hasRemaining()) - break; - } - } - - } - catch (IOException e) - { - throw new EofException(e); - } - - if (flushed>0) - notIdle(); - - for (ByteBuffer b : buffers) - if (!BufferUtil.isEmpty(b)) - return false; - - return true; - } - } diff --git a/pom.xml b/pom.xml index 4fd3fe4cd53..45e08653987 100644 --- a/pom.xml +++ b/pom.xml @@ -1022,7 +1022,7 @@ com.github.jnr jnr-unixsocket - 0.18 + 0.20 junit From cf2de4411c3465f93cfa3a6e0e685e836ca768a4 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Wed, 7 Nov 2018 10:03:18 +0100 Subject: [PATCH 135/931] Issue #3041 separate CookieCompliance for parsing and generation (#3048) * Issue #3041 separate CookieCompliance for parsing and generation Signed-off-by: Greg Wilkins * improved documentation Signed-off-by: Greg Wilkins * use only getters Signed-off-by: Greg Wilkins * Rename setters to avoid setSetXxxx Signed-off-by: Greg Wilkins --- jetty-server/src/main/config/etc/jetty.xml | 3 +- .../src/main/config/modules/server.mod | 7 +- .../jetty/server/HttpConfiguration.java | 113 +++++++++++++++--- .../org/eclipse/jetty/server/Request.java | 4 +- .../org/eclipse/jetty/server/Response.java | 4 +- .../eclipse/jetty/server/ResponseTest.java | 2 +- 6 files changed, 108 insertions(+), 25 deletions(-) diff --git a/jetty-server/src/main/config/etc/jetty.xml b/jetty-server/src/main/config/etc/jetty.xml index 525b1d08f9f..961f95435e5 100644 --- a/jetty-server/src/main/config/etc/jetty.xml +++ b/jetty-server/src/main/config/etc/jetty.xml @@ -64,7 +64,8 @@ - + + diff --git a/jetty-server/src/main/config/modules/server.mod b/jetty-server/src/main/config/modules/server.mod index 2bd4718fd0d..038f1836b65 100644 --- a/jetty-server/src/main/config/modules/server.mod +++ b/jetty-server/src/main/config/modules/server.mod @@ -62,8 +62,11 @@ patch-module: servlet.api=lib/jetty-schemas-3.1.jar ## Maximum number of error dispatches to prevent looping # jetty.httpConfig.maxErrorDispatches=10 -## Cookie compliance mode of: RFC2965, RFC6265 -# jetty.httpConfig.cookieCompliance=RFC6265 +## Cookie compliance mode for parsing request Cookie headers: RFC2965, RFC6265 +# jetty.httpConfig.requestCookieCompliance=RFC6265 + +## Cookie compliance mode for generating response Set-Cookie: RFC2965, RFC6265 +# jetty.httpConfig.responseCookieCompliance=RFC6265 ## multipart/form-data compliance mode of: LEGACY(slow), RFC7578(fast) # jetty.httpConfig.multiPartFormDataCompliance=LEGACY diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConfiguration.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConfiguration.java index 623a97b8ffd..4d9537ad024 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConfiguration.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConfiguration.java @@ -31,6 +31,8 @@ import org.eclipse.jetty.util.TreeTrie; import org.eclipse.jetty.util.Trie; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; +import org.eclipse.jetty.util.component.Dumpable; +import org.eclipse.jetty.util.component.DumpableCollection; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -46,7 +48,7 @@ import org.eclipse.jetty.util.log.Logger; *

*/ @ManagedObject("HTTP Configuration") -public class HttpConfiguration +public class HttpConfiguration implements Dumpable { private static final Logger LOG = Log.getLogger(HttpConfiguration.class); @@ -70,7 +72,8 @@ public class HttpConfiguration private int _maxErrorDispatches = 10; private long _minRequestDataRate; private long _minResponseDataRate; - private CookieCompliance _cookieCompliance = CookieCompliance.RFC6265; + private CookieCompliance _requestCookieCompliance = CookieCompliance.RFC6265; + private CookieCompliance _responseCookieCompliance = CookieCompliance.RFC6265; private MultiPartFormDataCompliance _multiPartCompliance = MultiPartFormDataCompliance.LEGACY; // TODO change default in jetty-10 private boolean _notifyRemoteAsyncErrors = true; @@ -133,7 +136,8 @@ public class HttpConfiguration _maxErrorDispatches=config._maxErrorDispatches; _minRequestDataRate=config._minRequestDataRate; _minResponseDataRate=config._minResponseDataRate; - _cookieCompliance=config._cookieCompliance; + _requestCookieCompliance =config._requestCookieCompliance; + _responseCookieCompliance =config._responseCookieCompliance; _notifyRemoteAsyncErrors=config._notifyRemoteAsyncErrors; } @@ -531,19 +535,58 @@ public class HttpConfiguration _minResponseDataRate = bytesPerSecond; } - public CookieCompliance getCookieCompliance() + /** + * @see #getResponseCookieCompliance() + * @return The CookieCompliance used for parsing request Cookie headers. + */ + public CookieCompliance getRequestCookieCompliance() { - return _cookieCompliance; - } - - public void setCookieCompliance(CookieCompliance cookieCompliance) - { - _cookieCompliance = cookieCompliance==null?CookieCompliance.RFC6265:cookieCompliance; + return _requestCookieCompliance; } + /** + * @see #getRequestCookieCompliance() + * @return The CookieCompliance used for generating response Set-Cookie headers + */ + public CookieCompliance getResponseCookieCompliance() + { + return _responseCookieCompliance; + } + + /** + * @see #setRequestCookieCompliance(CookieCompliance) + * @param cookieCompliance The CookieCompliance to use for parsing request Cookie headers. + */ + public void setRequestCookieCompliance(CookieCompliance cookieCompliance) + { + _requestCookieCompliance = cookieCompliance==null?CookieCompliance.RFC6265:cookieCompliance; + } + + /** + * @see #setResponseCookieCompliance(CookieCompliance) + * @param cookieCompliance The CookieCompliance to use for generating response Set-Cookie headers + */ + public void setResponseCookieCompliance(CookieCompliance cookieCompliance) + { + _responseCookieCompliance = cookieCompliance==null?CookieCompliance.RFC6265:cookieCompliance; + } + + @Deprecated + public void setCookieCompliance(CookieCompliance compliance) + { + setRequestCookieCompliance(compliance); + } + + @Deprecated + public CookieCompliance getCookieCompliance() + { + return getRequestCookieCompliance(); + } + + @Deprecated public boolean isCookieCompliance(CookieCompliance compliance) { - return _cookieCompliance.equals(compliance); + return _requestCookieCompliance.equals(compliance); } /** @@ -579,15 +622,51 @@ public class HttpConfiguration return _notifyRemoteAsyncErrors; } + @Override public String dump() + { + return Dumpable.dump(this); + } + + @Override public void dump(Appendable out, String indent) throws IOException + { + Dumpable.dumpObjects(out,indent,this, + new DumpableCollection("customizers",_customizers), + new DumpableCollection("formEncodedMethods",_formEncodedMethods.keySet()), + "outputBufferSize=" + _outputBufferSize, + "outputAggregationSize=" + _outputAggregationSize, + "requestHeaderSize=" + _requestHeaderSize, + "responseHeaderSize=" + _responseHeaderSize, + "headerCacheSize=" + _headerCacheSize, + "secureScheme=" + _secureScheme, + "securePort=" + _securePort, + "idleTimeout=" + _idleTimeout, + "blockingTimeout=" + _blockingTimeout, + "sendDateHeader=" + _sendDateHeader, + "sendServerVersion=" + _sendServerVersion, + "sendXPoweredBy=" + _sendXPoweredBy, + "delayDispatchUntilContent=" + _delayDispatchUntilContent, + "persistentConnectionsEnabled=" + _persistentConnectionsEnabled, + "maxErrorDispatches=" + _maxErrorDispatches, + "minRequestDataRate=" + _minRequestDataRate, + "minResponseDataRate=" + _minResponseDataRate, + "cookieCompliance=" + _requestCookieCompliance, + "setRequestCookieCompliance=" + _responseCookieCompliance, + "notifyRemoteAsyncErrors=" + _notifyRemoteAsyncErrors + ); + } + @Override public String toString() { return String.format("%s@%x{%d/%d,%d/%d,%s://:%d,%s}", - this.getClass().getSimpleName(), - hashCode(), - _outputBufferSize, _outputAggregationSize, - _requestHeaderSize,_responseHeaderSize, - _secureScheme,_securePort, - _customizers); + this.getClass().getSimpleName(), + hashCode(), + _outputBufferSize, + _outputAggregationSize, + _requestHeaderSize, + _responseHeaderSize, + _secureScheme, + _securePort, + _customizers); } } diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java index b13d1cc0c16..d29d0431d54 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java @@ -770,7 +770,7 @@ public class Request implements HttpServletRequest if (field.getHeader()==HttpHeader.COOKIE) { if (_cookies==null) - _cookies = new CookieCutter(getHttpChannel().getHttpConfiguration().getCookieCompliance()); + _cookies = new CookieCutter(getHttpChannel().getHttpConfiguration().getRequestCookieCompliance()); _cookies.addCookieField(field.getValue()); } } @@ -2057,7 +2057,7 @@ public class Request implements HttpServletRequest public void setCookies(Cookie[] cookies) { if (_cookies == null) - _cookies = new CookieCutter(getHttpChannel().getHttpConfiguration().getCookieCompliance()); + _cookies = new CookieCutter(getHttpChannel().getHttpConfiguration().getRequestCookieCompliance()); _cookies.setCookies(cookies); } diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Response.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Response.java index 43876ea13e7..3741ee1b256 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Response.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Response.java @@ -172,7 +172,7 @@ public class Response implements HttpServletResponse throw new IllegalArgumentException("Cookie.name cannot be blank/null"); } - if (getHttpChannel().getHttpConfiguration().isCookieCompliance(CookieCompliance.RFC2965)) + if (getHttpChannel().getHttpConfiguration().getResponseCookieCompliance()==CookieCompliance.RFC2965) addSetRFC2965Cookie( cookie.getName(), cookie.getValue(), @@ -217,7 +217,7 @@ public class Response implements HttpServletResponse throw new IllegalArgumentException("Cookie.name cannot be blank/null"); } - if (getHttpChannel().getHttpConfiguration().isCookieCompliance(CookieCompliance.RFC2965)) + if (getHttpChannel().getHttpConfiguration().getResponseCookieCompliance()==CookieCompliance.RFC2965) addSetRFC2965Cookie(cookie.getName(), cookie.getValue(), cookie.getDomain(), diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ResponseTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ResponseTest.java index fd2396c5aef..6ef9136c453 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ResponseTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ResponseTest.java @@ -944,7 +944,7 @@ public class ResponseTest public void testAddCookieComplianceRFC2965() throws Exception { Response response = getResponse(); - response.getHttpChannel().getHttpConfiguration().setCookieCompliance(CookieCompliance.RFC2965); + response.getHttpChannel().getHttpConfiguration().setResponseCookieCompliance(CookieCompliance.RFC2965); Cookie cookie = new Cookie("name", "value"); cookie.setDomain("domain"); From 6bec0e8357207824774eb47ebd17ce68ef6a31fc Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Wed, 7 Nov 2018 12:05:55 +0100 Subject: [PATCH 136/931] Cleanup webapp context Signed-off-by: Greg Wilkins --- .../jetty/embedded/OneWebAppWithJsp.java | 4 +- .../annotations/AnnotationConfiguration.java | 42 ++++++++----------- .../jetty/servlet/ServletContextHandler.java | 1 + 3 files changed, 20 insertions(+), 27 deletions(-) diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneWebAppWithJsp.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneWebAppWithJsp.java index 99054e58b39..ace3450fa5a 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneWebAppWithJsp.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneWebAppWithJsp.java @@ -55,7 +55,7 @@ public class OneWebAppWithJsp WebAppContext webapp = new WebAppContext(); webapp.setContextPath( "/" ); File warFile = new File( - "../../jetty-distribution/target/distribution/demo-base/webapps/test.war" ); + "jetty-distribution/target/distribution/demo-base/webapps/test.war" ); if (!warFile.exists()) { throw new RuntimeException( "Unable to find WAR File: " @@ -96,7 +96,7 @@ public class OneWebAppWithJsp // itself. HashLoginService loginService = new HashLoginService(); loginService.setName( "Test Realm" ); - loginService.setConfig( "src/test/resources/realm.properties" ); + loginService.setConfig( "examples/embedded/src/test/resources/realm.properties" ); server.addBean( loginService ); // Start things up! diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationConfiguration.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationConfiguration.java index bc2da221fe6..9d1cc3661bc 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationConfiguration.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationConfiguration.java @@ -79,9 +79,9 @@ public class AnnotationConfiguration extends AbstractConfiguration public static final int DEFAULT_MAX_SCAN_WAIT = 60; /* time in sec */ public static final boolean DEFAULT_MULTI_THREADED = true; - protected List _discoverableAnnotationHandlers = new ArrayList(); + protected final List _discoverableAnnotationHandlers = new ArrayList<>(); protected ClassInheritanceHandler _classInheritanceHandler; - protected List _containerInitializerAnnotationHandlers = new ArrayList(); + protected final List _containerInitializerAnnotationHandlers = new ArrayList<>(); protected List _parserTasks; @@ -318,29 +318,12 @@ public class AnnotationConfiguration extends AbstractConfiguration String tmp = (String)context.getAttribute(SERVLET_CONTAINER_INITIALIZER_EXCLUSION_PATTERN); _sciExcludePattern = (tmp==null?null:Pattern.compile(tmp)); } - public void addDiscoverableAnnotationHandler(AbstractDiscoverableAnnotationHandler handler) { _discoverableAnnotationHandlers.add(handler); } - @Override - public void deconfigure(WebAppContext context) throws Exception - { - context.removeAttribute(CLASS_INHERITANCE_MAP); - context.removeAttribute(CONTAINER_INITIALIZERS); - ServletContainerInitializersStarter starter = (ServletContainerInitializersStarter)context.getAttribute(CONTAINER_INITIALIZER_STARTER); - if (starter != null) - { - context.removeBean(starter); - context.removeAttribute(CONTAINER_INITIALIZER_STARTER); - } - - if (_loadedInitializers != null) - _loadedInitializers.reload(); - } - /** * @see org.eclipse.jetty.webapp.AbstractConfiguration#configure(org.eclipse.jetty.webapp.WebAppContext) */ @@ -386,15 +369,14 @@ public class AnnotationConfiguration extends AbstractConfiguration public void postConfigure(WebAppContext context) throws Exception { Map> classMap = (ClassInheritanceMap)context.getAttribute(CLASS_INHERITANCE_MAP); - List initializers = (List)context.getAttribute(CONTAINER_INITIALIZERS); - - context.removeAttribute(CLASS_INHERITANCE_MAP); if (classMap != null) classMap.clear(); - - context.removeAttribute(CONTAINER_INITIALIZERS); + context.removeAttribute(CLASS_INHERITANCE_MAP); + + List initializers = (List)context.getAttribute(CONTAINER_INITIALIZERS); if (initializers != null) initializers.clear(); + context.removeAttribute(CONTAINER_INITIALIZERS); if (_discoverableAnnotationHandlers != null) _discoverableAnnotationHandlers.clear(); @@ -408,7 +390,17 @@ public class AnnotationConfiguration extends AbstractConfiguration _parserTasks.clear(); _parserTasks = null; } - + + ServletContainerInitializersStarter starter = (ServletContainerInitializersStarter)context.getAttribute(CONTAINER_INITIALIZER_STARTER); + if (starter != null) + { + context.removeBean(starter); + context.removeAttribute(CONTAINER_INITIALIZER_STARTER); + } + + if (_loadedInitializers != null) + _loadedInitializers.reload(); + super.postConfigure(context); } diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletContextHandler.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletContextHandler.java index 21f51b86ad7..48fb06391de 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletContextHandler.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletContextHandler.java @@ -287,6 +287,7 @@ public class ServletContextHandler extends ContextHandler { super.doStop(); _objFactory.clear(); + getServletContext().removeAttribute(DecoratedObjectFactory.ATTR); } /* ------------------------------------------------------------ */ From 3ef33764cb71207637cfcb97701eaa33bb9bff81 Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Thu, 8 Nov 2018 07:24:42 +1000 Subject: [PATCH 137/931] Issue #3054 Jetty 9.4.x spifly upgrade (#3079) * spifly 1.0.15-SNAPSHOT Signed-off-by: olivier lamy * upgrade org.apache.aries.spifly.dynamic.bundle to 1.1 Signed-off-by: olivier lamy * Make osgi work with spifly 1.1 Signed-off-by: Jan Bartel --- .../jetty-osgi-boot/jettyhome/etc/jetty.xml | 31 ++++++++++++---- .../osgi/annotations/AnnotationParser.java | 2 +- jetty-osgi/pom.xml | 1 - jetty-osgi/test-jetty-osgi-server/pom.xml | 2 +- .../main/java/com/acme/osgi/Activator.java | 11 ++++++ jetty-osgi/test-jetty-osgi/pom.xml | 28 +++++++++++++-- .../src/test/config/etc/jetty.xml | 35 ++++++++++++------- .../TestJettyOSGiBootWebAppAsService.java | 2 +- .../TestJettyOSGiBootWithAnnotations.java | 4 +-- 9 files changed, 87 insertions(+), 29 deletions(-) diff --git a/jetty-osgi/jetty-osgi-boot/jettyhome/etc/jetty.xml b/jetty-osgi/jetty-osgi-boot/jettyhome/etc/jetty.xml index f47a40a2bc4..fe4fc1d1ab3 100644 --- a/jetty-osgi/jetty-osgi-boot/jettyhome/etc/jetty.xml +++ b/jetty-osgi/jetty-osgi-boot/jettyhome/etc/jetty.xml @@ -40,7 +40,7 @@ - + + + + + + + + + + + + + + + + + + + - true - 1000 - false - false - + + + + diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/annotations/AnnotationParser.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/annotations/AnnotationParser.java index ef85bd9e23a..00f0919a023 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/annotations/AnnotationParser.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/annotations/AnnotationParser.java @@ -49,7 +49,7 @@ public class AnnotationParser extends org.eclipse.jetty.annotations.AnnotationPa public AnnotationParser(int javaPlatform) { - super(javaPlatform, Opcodes.ASM5); + super(javaPlatform, Opcodes.ASM7); } /** diff --git a/jetty-osgi/pom.xml b/jetty-osgi/pom.xml index 503b4cba7e3..090cc250a42 100644 --- a/jetty-osgi/pom.xml +++ b/jetty-osgi/pom.xml @@ -15,7 +15,6 @@ pom - 6.2 3.6.0.v20100517 3.2.100.v20100503 1.0.0-v20070606 diff --git a/jetty-osgi/test-jetty-osgi-server/pom.xml b/jetty-osgi/test-jetty-osgi-server/pom.xml index 57f376a32a1..195f3b6fbfe 100644 --- a/jetty-osgi/test-jetty-osgi-server/pom.xml +++ b/jetty-osgi/test-jetty-osgi-server/pom.xml @@ -15,7 +15,7 @@ org.eclipse.jetty - jetty-server + jetty-webapp ${project.version} diff --git a/jetty-osgi/test-jetty-osgi-server/src/main/java/com/acme/osgi/Activator.java b/jetty-osgi/test-jetty-osgi-server/src/main/java/com/acme/osgi/Activator.java index a45f567d57d..89288615b63 100644 --- a/jetty-osgi/test-jetty-osgi-server/src/main/java/com/acme/osgi/Activator.java +++ b/jetty-osgi/test-jetty-osgi-server/src/main/java/com/acme/osgi/Activator.java @@ -23,6 +23,7 @@ import java.util.Hashtable; import org.eclipse.jetty.util.component.AbstractLifeCycle.AbstractLifeCycleListener; import org.eclipse.jetty.util.component.LifeCycle; +import org.eclipse.jetty.webapp.Configuration; import org.eclipse.jetty.server.Server; import org.eclipse.jetty.server.ServerConnector; import org.eclipse.jetty.server.handler.ContextHandlerCollection; @@ -67,6 +68,16 @@ public class Activator implements BundleActivator }); ContextHandlerCollection contexts = new ContextHandlerCollection(); server.setHandler(contexts); + //server.setDumpAfterStart(true); + + Configuration.ClassList list = new Configuration.ClassList(new String[] {"org.eclipse.jetty.osgi.boot.OSGiWebInfConfiguration", + "org.eclipse.jetty.webapp.WebXmlConfiguration", + "org.eclipse.jetty.webapp.MetaInfConfiguration", + "org.eclipse.jetty.webapp.FragmentConfiguration", + "org.eclipse.jetty.webapp.JettyWebXmlConfiguration"}); + server.addBean(list); + server.setAttribute("org.eclipse.jetty.webapp.configuration", list); + list.setServerDefault(server); Dictionary serverProps = new Hashtable(); //define the unique name of the server instance diff --git a/jetty-osgi/test-jetty-osgi/pom.xml b/jetty-osgi/test-jetty-osgi/pom.xml index 40340aa2fbb..50faee17777 100644 --- a/jetty-osgi/test-jetty-osgi/pom.xml +++ b/jetty-osgi/test-jetty-osgi/pom.xml @@ -78,13 +78,13 @@ org.eclipse.platform org.eclipse.osgi - 3.12.50 + 3.13.100 test org.eclipse.platform org.eclipse.osgi.services - 3.6.0 + 3.7.100 test @@ -148,7 +148,29 @@ org.apache.aries.spifly org.apache.aries.spifly.dynamic.bundle - 1.0.10 + 1.1 + test + + + org.apache.felix + org.apache.felix.framework + + + org.ow2.asm + asm-util + + + + + org.apache.aries + org.apache.aries.util + 1.1.1 + test + + + com.sun.activation + javax.activation + 1.2.0 test diff --git a/jetty-osgi/test-jetty-osgi/src/test/config/etc/jetty.xml b/jetty-osgi/test-jetty-osgi/src/test/config/etc/jetty.xml index f47a40a2bc4..43e978db7f0 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/config/etc/jetty.xml +++ b/jetty-osgi/test-jetty-osgi/src/test/config/etc/jetty.xml @@ -41,25 +41,34 @@ - - https - - 32768 - 8192 - 8192 - true - false - 4096 + + + + + + + + + + + + + + + + + + - true - 1000 - false - false + + + + diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWebAppAsService.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWebAppAsService.java index ba2b2b2326d..56083be7bb6 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWebAppAsService.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWebAppAsService.java @@ -101,8 +101,8 @@ public class TestJettyOSGiBootWebAppAsService @Test public void assertAllBundlesActiveOrResolved() { - //TestOSGiUtil.assertAllBundlesActiveOrResolved(bundleContext); TestOSGiUtil.debugBundles(bundleContext); + TestOSGiUtil.assertAllBundlesActiveOrResolved(bundleContext); } diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithAnnotations.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithAnnotations.java index 358baeab33f..c8e5a57f1a1 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithAnnotations.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithAnnotations.java @@ -85,6 +85,7 @@ public class TestJettyOSGiBootWithAnnotations public static List - - org.apache.aries - org.apache.aries.util - 1.1.1 - test - com.sun.activation javax.activation diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestOSGiUtil.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestOSGiUtil.java index e30a2e81950..eb3c086e0ec 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestOSGiUtil.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestOSGiUtil.java @@ -110,7 +110,6 @@ public class TestOSGiUtil res.add(mavenBundle().groupId( "org.ow2.asm" ).artifactId( "asm" ).versionAsInProject().start()); res.add(mavenBundle().groupId( "org.ow2.asm" ).artifactId( "asm-commons" ).versionAsInProject().start()); res.add(mavenBundle().groupId( "org.ow2.asm" ).artifactId( "asm-tree" ).versionAsInProject().start()); - res.add(mavenBundle().groupId( "org.apache.aries" ).artifactId( "org.apache.aries.util" ).versionAsInProject().start()); res.add(mavenBundle().groupId( "org.apache.aries.spifly" ).artifactId( "org.apache.aries.spifly.dynamic.bundle" ).versionAsInProject().start()); res.add(mavenBundle().groupId( "org.eclipse.jetty.toolchain" ).artifactId( "jetty-osgi-servlet-api" ).versionAsInProject().noStart()); res.add(mavenBundle().groupId( "javax.annotation" ).artifactId( "javax.annotation-api" ).versionAsInProject().start()); @@ -157,7 +156,6 @@ public class TestOSGiUtil List - - - - gregw - Greg Wilkins - gregw@webtide.com - Webtide, LLC - https://webtide.com - 10 - - - janb - Jan Bartel - janb@webtide.com - Webtide, LLC - https://webtide.com - 10 - - - jesse - Jesse McConnell - jesse.mcconnell@gmail.com - Webtide, LLC - https://webtide.com - -6 - - - joakime - Joakim Erdfelt - joakim.erdfelt@gmail.com - Webtide, LLC - https://webtide.com - -6 - - - sbordet - Simone Bordet - simone.bordet@gmail.com - Webtide, LLC - https://webtide.com - 1 - - - djencks - David Jencks - david.a.jencks@gmail.com - IBM - -8 - - - - - - eclipse-release - - - - true - org.apache.maven.plugins - maven-deploy-plugin - - true - - - - org.apache.maven.plugins - maven-gpg-plugin - - - sign-artifacts - verify - - sign - - - - - - - - From 041e8fd9cfab4c6719c8a210f2570a07d9f7eb65 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Wed, 21 Nov 2018 17:28:40 +0100 Subject: [PATCH 179/931] Issue #3038 SSL Connection Leak Don't call handleContentMessage after content call if the content call returns true. This is a slight bending of the parser contract to work around the current client interpretation that a true return will prevent other events from being delivered. Signed-off-by: Greg Wilkins --- .../jetty/client/http/HttpReceiverOverHTTP.java | 17 ----------------- .../java/org/eclipse/jetty/http/HttpParser.java | 8 +++----- 2 files changed, 3 insertions(+), 22 deletions(-) diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTP.java b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTP.java index 3be68769bb5..d6a9c2f96a5 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTP.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTP.java @@ -20,7 +20,6 @@ package org.eclipse.jetty.client.http; import java.io.EOFException; import java.nio.ByteBuffer; -import java.util.concurrent.atomic.AtomicReference; import org.eclipse.jetty.client.HttpClient; import org.eclipse.jetty.client.HttpExchange; @@ -40,7 +39,6 @@ import org.eclipse.jetty.util.CompletableCallback; public class HttpReceiverOverHTTP extends HttpReceiver implements HttpParser.ResponseHandler { - private final AtomicReference handlingContent = new AtomicReference<>(ContentState.IDLE); private final HttpParser parser; private ByteBuffer buffer; private boolean shutdown; @@ -265,18 +263,8 @@ public class HttpReceiverOverHTTP extends HttpReceiver implements HttpParser.Res if (exchange == null) return false; - handlingContent.set(ContentState.CONTENT); CompletableCallback callback = new CompletableCallback() { - @Override - public void succeeded() - { - boolean messageComplete = !handlingContent.compareAndSet(ContentState.CONTENT, ContentState.IDLE); - super.succeeded(); - if (messageComplete) - messageComplete(); - } - @Override public void resume() { @@ -316,9 +304,6 @@ public class HttpReceiverOverHTTP extends HttpReceiver implements HttpParser.Res @Override public boolean messageComplete() { - if (handlingContent.compareAndSet(ContentState.CONTENT, ContentState.COMPLETE)) - return false; - HttpExchange exchange = getHttpExchange(); if (exchange == null) return false; @@ -390,6 +375,4 @@ public class HttpReceiverOverHTTP extends HttpReceiver implements HttpParser.Res { return String.format("%s[%s]", super.toString(), parser); } - - private enum ContentState { IDLE, CONTENT, COMPLETE } } diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java index 3c0405e9cf7..a00e3e6c49a 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java @@ -1660,16 +1660,14 @@ public class HttpParser _contentPosition += _contentChunk.remaining(); buffer.position(buffer.position()+_contentChunk.remaining()); - boolean handle = _handler.content(_contentChunk); + if (_handler.content(_contentChunk)) + return true; if(_contentPosition == _contentLength) { setState(State.END); - boolean handleContent = handleContentMessage(); - return handle || handleContent; + return handleContentMessage(); } - else if (handle) - return true; } break; } From 910665a55a4ef16ff6cd55a1c1799c20ff76db65 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Wed, 21 Nov 2018 17:37:16 +0100 Subject: [PATCH 180/931] Fixes #3133 - Logging of key.readyOps() can throw unchecked CancelledKeyException. Introduced safeInterestOps() and safeReadyOps() to catch exceptions they may throw and using them in relevant places to fix the issue. Signed-off-by: Simone Bordet --- .../org/eclipse/jetty/io/ChannelEndPoint.java | 23 +++------- .../org/eclipse/jetty/io/ManagedSelector.java | 45 +++++++++++++------ 2 files changed, 38 insertions(+), 30 deletions(-) diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ChannelEndPoint.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ChannelEndPoint.java index 0421176298f..84e80276e28 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ChannelEndPoint.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ChannelEndPoint.java @@ -31,7 +31,6 @@ import org.eclipse.jetty.util.BufferUtil; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.util.thread.Invocable; -import org.eclipse.jetty.util.thread.Locker; import org.eclipse.jetty.util.thread.Scheduler; /** @@ -426,21 +425,11 @@ public abstract class ChannelEndPoint extends AbstractEndPoint implements Manage public String toEndPointString() { // We do a best effort to print the right toString() and that's it. - try - { - boolean valid = _key != null && _key.isValid(); - int keyInterests = valid ? _key.interestOps() : -1; - int keyReadiness = valid ? _key.readyOps() : -1; - return String.format("%s{io=%d/%d,kio=%d,kro=%d}", - super.toEndPointString(), - _currentInterestOps, - _desiredInterestOps, - keyInterests, - keyReadiness); - } - catch (Throwable x) - { - return String.format("%s{io=%s,kio=-2,kro=-2}", super.toString(), _desiredInterestOps); - } + return String.format("%s{io=%d/%d,kio=%d,kro=%d}", + super.toEndPointString(), + _currentInterestOps, + _desiredInterestOps, + ManagedSelector.safeInterestOps(_key), + ManagedSelector.safeReadyOps(_key)); } } diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java index 75e67386bad..b379c60a25c 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java @@ -272,6 +272,34 @@ public class ManagedSelector extends ContainerLifeCycle implements Dumpable } } + static int safeReadyOps(SelectionKey selectionKey) + { + try + { + return selectionKey.readyOps(); + } + catch (Throwable x) + { + if (LOG.isDebugEnabled()) + LOG.debug(x); + return -1; + } + } + + static int safeInterestOps(SelectionKey selectionKey) + { + try + { + return selectionKey.interestOps(); + } + catch (Throwable x) + { + if (LOG.isDebugEnabled()) + LOG.debug(x); + return -1; + } + } + @Override public void dump(Appendable out, String indent) throws IOException { @@ -474,7 +502,7 @@ public class ManagedSelector extends ContainerLifeCycle implements Dumpable { Object attachment = key.attachment(); if (LOG.isDebugEnabled()) - LOG.debug("selected {} {} {} ",key.readyOps(),key,attachment); + LOG.debug("selected {} {} {} ", safeReadyOps(key), key, attachment); try { if (attachment instanceof Selectable) @@ -490,7 +518,7 @@ public class ManagedSelector extends ContainerLifeCycle implements Dumpable } else { - throw new IllegalStateException("key=" + key + ", att=" + attachment + ", iOps=" + key.interestOps() + ", rOps=" + key.readyOps()); + throw new IllegalStateException("key=" + key + ", att=" + attachment + ", iOps=" + safeInterestOps(key) + ", rOps=" + safeReadyOps(key)); } } catch (CancelledKeyException x) @@ -571,19 +599,10 @@ public class ManagedSelector extends ContainerLifeCycle implements Dumpable List list = new ArrayList<>(selector_keys.size()); for (SelectionKey key : selector_keys) { - if (key==null) - continue; - try - { - list.add(String.format("SelectionKey@%x{i=%d}->%s", key.hashCode(), key.interestOps(), key.attachment())); - } - catch (Throwable x) - { - list.add(String.format("SelectionKey@%x[%s]->%s", key.hashCode(), x, key.attachment())); - } + if (key != null) + list.add(String.format("SelectionKey@%x{i=%d}->%s", key.hashCode(), safeInterestOps(key), key.attachment())); } keys = list; - latch.countDown(); } From 112d57f474719c5fe0575cb894a7fe1ce0cf993b Mon Sep 17 00:00:00 2001 From: Lachlan Roberts Date: Thu, 22 Nov 2018 10:32:22 +0100 Subject: [PATCH 181/931] Issue #113 - CustomRequestLog added missing copyright header in some new files added CustomRequestLogTest in jetty-servlet to test things like logFilename and logRequestHandler the log strings produced do no longer contain a trailing newline implemented more tests in CustomRequestLogTest and finished implementing some of the logging in CustomRequestLog Signed-off-by: Lachlan Roberts --- .../jetty/security/ConstraintTest.java | 29 +-- .../jetty/server/AsyncRequestLogWriter.java | 18 ++ .../jetty/server/CustomRequestLog.java | 72 ++++--- .../jetty/server/RequestLogWriter.java | 21 +- .../jetty/server/Slf4jRequestLogWriter.java | 18 ++ .../eclipse/jetty/server/UserIdentity.java | 9 +- .../server/handler/CustomRequestLogTest.java | 179 +++++++++--------- .../eclipse/jetty/servlet/ServletHolder.java | 8 +- .../jetty/servlet/CustomRequestLogTest.java | 142 ++++++++++++++ 9 files changed, 356 insertions(+), 140 deletions(-) create mode 100644 jetty-servlet/src/test/java/org/eclipse/jetty/servlet/CustomRequestLogTest.java diff --git a/jetty-security/src/test/java/org/eclipse/jetty/security/ConstraintTest.java b/jetty-security/src/test/java/org/eclipse/jetty/security/ConstraintTest.java index 69ae92eac5d..7ef790624f2 100644 --- a/jetty-security/src/test/java/org/eclipse/jetty/security/ConstraintTest.java +++ b/jetty-security/src/test/java/org/eclipse/jetty/security/ConstraintTest.java @@ -18,17 +18,6 @@ package org.eclipse.jetty.security; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.containsString; -import static org.hamcrest.Matchers.is; -import static org.hamcrest.Matchers.isIn; -import static org.hamcrest.Matchers.not; -import static org.hamcrest.Matchers.startsWith; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertTrue; - import java.io.IOException; import java.nio.charset.StandardCharsets; import java.security.MessageDigest; @@ -45,7 +34,6 @@ import java.util.function.Consumer; import java.util.regex.Matcher; import java.util.regex.Pattern; import java.util.stream.Stream; - import javax.servlet.HttpConstraintElement; import javax.servlet.HttpMethodConstraintElement; import javax.servlet.ServletException; @@ -83,6 +71,17 @@ import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.Arguments; import org.junit.jupiter.params.provider.MethodSource; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.containsString; +import static org.hamcrest.Matchers.is; +import static org.hamcrest.Matchers.isIn; +import static org.hamcrest.Matchers.not; +import static org.hamcrest.Matchers.startsWith; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertTrue; + public class ConstraintTest { private static final String TEST_REALM = "TestRealm"; @@ -1526,6 +1525,12 @@ public class ConstraintTest UserIdentity.Scope scope = new UserIdentity.Scope() { + @Override + public ContextHandler getContextHandler() + { + return null; + } + @Override public String getContextPath() { diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java index ddc7e0d27fc..8f704fd572c 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java @@ -1,3 +1,21 @@ +// +// ======================================================================== +// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + package org.eclipse.jetty.server; import java.io.IOException; diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java index 7a55d8cb16d..098dc1b4200 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java @@ -34,6 +34,7 @@ import javax.servlet.http.Cookie; import org.eclipse.jetty.http.HttpFields; import org.eclipse.jetty.http.QuotedCSV; import org.eclipse.jetty.http.pathmap.PathMappings; +import org.eclipse.jetty.server.handler.ContextHandler; import org.eclipse.jetty.util.DateCache; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.component.ContainerLifeCycle; @@ -172,22 +173,8 @@ import static java.lang.invoke.MethodType.methodType; The time, in the form given by an optional format, parameter (default format [18/Sep/2011:19:18:28 -0400] where the last number indicates the timezone offset from GMT.) -

- The format parameter should be in an extended strftime(3) format (potentially localized). - If the format starts with begin: (default) the time is taken at the beginning of the request processing. - If it starts with end: it is the time when the log entry gets written, close to the end of the request processing. - -

In addition to the formats supported by strftime(3), the following format tokens are supported: - -
- sec         number of seconds since the Epoch
- msec        number of milliseconds since the Epoch
- usec        number of microseconds since the Epoch
- msec_frac   millisecond fraction
- usec_frac   microsecond fraction
- 
- - These tokens can not be combined with each other or strftime(3) formatting in the same format string. You can use multiple %{format}t tokens instead. +
+ The format parameter should be in a format supported by {@link DateCache} @@ -263,14 +250,13 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog { protected static final Logger LOG = Log.getLogger(CustomRequestLog.class); - //TODO previous NCSA format includes "" in the append, so %C would print out "cookies" if cookies exist and - without the "" if they do not public static final String NCSA_FORMAT = "%a - %u %t \"%r\" %s %B \"%{Referer}i\" \"%{User-Agent}i\" \"%C\""; + public static final String DEFAULT_DATE_FORMAT = "dd/MMM/yyyy:HH:mm:ss ZZZ"; private static ThreadLocal _buffers = ThreadLocal.withInitial(() -> new StringBuilder(256)); private String[] _ignorePaths; private transient PathMappings _ignorePathMap; - private final static String DEFAULT_DATE_FORMAT = "dd/MMM/yyyy:HH:mm:ss ZZZ"; private Locale _logLocale = Locale.getDefault(); private String _logTimeZone = "GMT"; @@ -445,7 +431,7 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog private MethodHandle getLogHandle(String formatString) throws NoSuchMethodException, IllegalAccessException { MethodHandle append = MethodHandles.lookup().findStatic(CustomRequestLog.class, "append", methodType(Void.TYPE, String.class, StringBuilder.class)); - MethodHandle logHandle = dropArguments(dropArguments(append.bindTo("\n"), 1, Request.class), 2, Response.class); + MethodHandle logHandle = MethodHandles.lookup().findStatic(CustomRequestLog.class, "logNothing", methodType(Void.TYPE, StringBuilder.class, Request.class, Response.class)); List tokens = getTokens(formatString); Collections.reverse(tokens); @@ -515,13 +501,12 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog private static class Token { - //todo make final - public String code = null; - public String arg = null; - public List modifiers = null; - public boolean negated = false; + public final String code; + public final String arg; + public final List modifiers; + public final boolean negated; - public String literal = null; + public final String literal; public Token(String code, String arg, List modifiers, boolean negated) { @@ -529,9 +514,16 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog this.arg = arg; this.modifiers = modifiers; this.negated = negated; + + this.literal = null; } public Token(String literal) { + this.code = null; + this.arg = null; + this.modifiers = null; + this.negated = false; + this.literal = literal; } @@ -539,6 +531,7 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog { return(literal != null); } + public boolean isPercentCode() { return(code != null); @@ -578,7 +571,6 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog { case "%": { - //todo use literal specificHandle = dropArguments(dropArguments(append.bindTo("%"), 1, Request.class), 2, Response.class); break; } @@ -773,7 +765,6 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog case "t": { - //todo is this correctly supporting the right formats DateCache logDateCache; if (arg == null || arg.isEmpty()) logDateCache = new DateCache(DEFAULT_DATE_FORMAT, _logLocale , _logTimeZone); @@ -787,7 +778,6 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog break; } - case "T": { if (arg == null) @@ -910,10 +900,11 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog - - //-----------------------------------------------------------------------------------// + private static void logNothing(StringBuilder b, Request request, Response response) + { + } private static void logClientIP(StringBuilder b, Request request, Response response) { @@ -984,8 +975,16 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog private static void logFilename(StringBuilder b, Request request, Response response) { - //TODO verify - append(b, request.getServletContext().getRealPath(request.getPathInfo())); + UserIdentity.Scope scope = request.getUserIdentityScope(); + if (scope==null || scope.getContextHandler()==null) + b.append('-'); + else + { + ContextHandler context = scope.getContextHandler(); + int lengthToStrip = scope.getContextPath().length()>1 ? scope.getContextPath().length() : 0; + String filename = context.getServletContext().getRealPath(request.getPathInfo().substring(lengthToStrip)); + append(b, filename); + } } private static void logRemoteHostName(StringBuilder b, Request request, Response response) @@ -1053,7 +1052,6 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog private static void logRequestHandler(StringBuilder b, Request request, Response response) { - //todo verify append(b, request.getServletName()); } @@ -1072,7 +1070,6 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog private static void logLatencyMicroseconds(StringBuilder b, Request request, Response response) { - //todo can we use nanotime? long latency = System.currentTimeMillis() - request.getTimeStamp(); b.append(TimeUnit.MILLISECONDS.toMicros(latency)); } @@ -1122,14 +1119,13 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog private static void logBytesSent(StringBuilder b, Request request, Response response) { - //todo redirect to logResponseSize - append(b, "?"); + //todo difference between this and logResponseSize + b.append(response.getHttpOutput().getWritten()); } private static void logBytesTransferred(StringBuilder b, Request request, Response response) { - //todo implement: bytesTransferred = bytesReceived+bytesSent - append(b, "?"); + b.append(request.getHttpInput().getContentConsumed() + response.getHttpOutput().getWritten()); } private static void logRequestTrailer(String arg, StringBuilder b, Request request, Response response) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogWriter.java b/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogWriter.java index 5ce235781f3..7015709837d 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogWriter.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogWriter.java @@ -1,3 +1,21 @@ +// +// ======================================================================== +// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + package org.eclipse.jetty.server; import java.io.IOException; @@ -7,7 +25,6 @@ import java.io.Writer; import java.util.TimeZone; import org.eclipse.jetty.util.RolloverFileOutputStream; -import org.eclipse.jetty.util.StringUtil; import org.eclipse.jetty.util.component.AbstractLifeCycle; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -163,7 +180,7 @@ public class RequestLogWriter extends AbstractLifeCycle implements RequestLog.Wr if (_writer==null) return; _writer.write(requestEntry); - _writer.write(StringUtil.__LINE_SEPARATOR); + _writer.write(System.lineSeparator()); _writer.flush(); } } diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLogWriter.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLogWriter.java index 2dee670cbca..b496283c653 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLogWriter.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLogWriter.java @@ -1,3 +1,21 @@ +// +// ======================================================================== +// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + package org.eclipse.jetty.server; import java.io.IOException; diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/UserIdentity.java b/jetty-server/src/main/java/org/eclipse/jetty/server/UserIdentity.java index 1f63407bec5..daa60a0fcdf 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/UserIdentity.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/UserIdentity.java @@ -20,9 +20,10 @@ package org.eclipse.jetty.server; import java.security.Principal; import java.util.Map; - import javax.security.auth.Subject; +import org.eclipse.jetty.server.handler.ContextHandler; + /** * User object that encapsulates user identity and operations such as run-as-role actions, * checking isUserInRole and getUserPrincipal. @@ -64,6 +65,12 @@ public interface UserIdentity */ interface Scope { + /* ------------------------------------------------------------ */ + /** + * @return The context handler that the identity is being considered within + */ + ContextHandler getContextHandler(); + /* ------------------------------------------------------------ */ /** * @return The context path that the identity is being considered within diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java index 78679446e3b..dedf48241f2 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java @@ -32,21 +32,26 @@ import org.eclipse.jetty.server.Request; import org.eclipse.jetty.server.RequestLog; import org.eclipse.jetty.server.Server; import org.eclipse.jetty.util.BlockingArrayQueue; +import org.eclipse.jetty.util.DateCache; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.containsString; +import static org.hamcrest.Matchers.greaterThan; import static org.hamcrest.Matchers.is; +import static org.hamcrest.Matchers.lessThanOrEqualTo; import static org.junit.jupiter.api.Assertions.assertThrows; import static org.junit.jupiter.api.Assertions.fail; public class CustomRequestLogTest { - RequestLog _log; + CustomRequestLog _log; Server _server; LocalConnector _connector; BlockingQueue _entries = new BlockingArrayQueue<>(); + BlockingQueue requestTimes = new BlockingArrayQueue<>(); @BeforeEach @@ -72,8 +77,6 @@ public class CustomRequestLogTest _server.stop(); } - - @Test public void testModifier() throws Exception { @@ -81,24 +84,17 @@ public class CustomRequestLogTest _connector.getResponse("GET /error404 HTTP/1.0\nReferer: testReferer\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("404: -\n")); + assertThat(log, is("404: -")); _connector.getResponse("GET /error301 HTTP/1.0\nReferer: testReferer\n\n"); log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("301: -\n")); + assertThat(log, is("301: -")); _connector.getResponse("GET /success HTTP/1.0\nReferer: testReferer\n\n"); log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("200: testReferer\n")); + assertThat(log, is("200: testReferer")); } - @Test - public void testInvalidArguments() throws Exception - { - fail(); - } - - @Test public void testDoublePercent() throws Exception { @@ -106,7 +102,7 @@ public class CustomRequestLogTest _connector.getResponse("GET / HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("%%%a\n")); + assertThat(log, is("%%%a")); } @Test @@ -146,11 +142,11 @@ public class CustomRequestLogTest _connector.getResponse("GET / HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("ResponseSize: 0\n")); + assertThat(log, is("ResponseSize: 0")); _connector.getResponse("GET / HTTP/1.0\nEcho: hello world\n\n"); log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("ResponseSize: 11\n")); + assertThat(log, is("ResponseSize: 11")); } @Test @@ -160,11 +156,11 @@ public class CustomRequestLogTest _connector.getResponse("GET / HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("ResponseSize: -\n")); + assertThat(log, is("ResponseSize: -")); _connector.getResponse("GET / HTTP/1.0\nEcho: hello world\n\n"); log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("ResponseSize: 11\n")); + assertThat(log, is("ResponseSize: 11")); } @Test @@ -174,7 +170,7 @@ public class CustomRequestLogTest _connector.getResponse("GET / HTTP/1.0\nCookie: cookieName=cookieValue; cookie2=value2\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("RequestCookies: cookieValue, value2, -\n")); + assertThat(log, is("RequestCookies: cookieValue, value2, -")); } @Test @@ -184,7 +180,7 @@ public class CustomRequestLogTest _connector.getResponse("GET / HTTP/1.0\nCookie: cookieName=cookieValue; cookie2=value2\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("RequestCookies: cookieName=cookieValue;cookie2=value2\n")); + assertThat(log, is("RequestCookies: cookieName=cookieValue;cookie2=value2")); } @Test @@ -194,17 +190,7 @@ public class CustomRequestLogTest _connector.getResponse("GET / HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("EnvironmentVar: " + System.getenv("JAVA_HOME") + "\n")); - } - - @Test - public void testLogFilename() throws Exception - { - testHandlerServerStart("Filename: %f"); - - _connector.getResponse("GET / HTTP/1.0\n\n"); - String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); + assertThat(log, is("EnvironmentVar: " + System.getenv("JAVA_HOME") + "")); } @Test @@ -224,7 +210,7 @@ public class CustomRequestLogTest _connector.getResponse("GET / HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("Protocol: HTTP/1.0\n")); + assertThat(log, is("Protocol: HTTP/1.0")); } @Test @@ -234,7 +220,7 @@ public class CustomRequestLogTest _connector.getResponse("GET / HTTP/1.0\nHeader1: value1\nHeader2: value2\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("RequestHeader: value1, value2, -\n")); + assertThat(log, is("RequestHeader: value1, value2, -")); } @Test @@ -242,14 +228,29 @@ public class CustomRequestLogTest { testHandlerServerStart("KeepAliveRequests: %k"); - _connector.getResponse("GET / HTTP/1.0\n\n"); - _connector.getResponse("GET / HTTP/1.0\n\n"); - _connector.getResponse("GET / HTTP/1.0\n\n"); + LocalConnector.LocalEndPoint connect = _connector.connect(); + connect.addInput("GET /a HTTP/1.0\n" + + "Connection: keep-alive\n\n"); + connect.addInput("GET /a HTTP/1.1\n" + + "Host: localhost\n\n"); - _entries.poll(5,TimeUnit.SECONDS); - _entries.poll(5,TimeUnit.SECONDS); - String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); + assertThat(connect.getResponse(), containsString("200 OK")); + assertThat(connect.getResponse(), containsString("200 OK")); + + connect.addInput("GET /a HTTP/1.0\n\n"); + assertThat(connect.getResponse(), containsString("200 OK")); + + + assertThat(_entries.poll(5,TimeUnit.SECONDS), is("KeepAliveRequests: 1")); + assertThat(_entries.poll(5,TimeUnit.SECONDS), is("KeepAliveRequests: 2")); + assertThat(_entries.poll(5,TimeUnit.SECONDS), is("KeepAliveRequests: 3")); + } + + @Test + public void testLogKeepAliveRequestsHttp2() throws Exception + { + testHandlerServerStart("KeepAliveRequests: %k"); + fail(); } @Test @@ -259,7 +260,7 @@ public class CustomRequestLogTest _connector.getResponse("GET / HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("RequestMethod: GET\n")); + assertThat(log, is("RequestMethod: GET")); } @Test @@ -269,7 +270,7 @@ public class CustomRequestLogTest _connector.getResponse("GET /responseHeaders HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("ResponseHeader: value1, value2, -\n")); + assertThat(log, is("ResponseHeader: value1, value2, -")); } @Test @@ -318,7 +319,7 @@ public class CustomRequestLogTest _connector.getResponse("GET /path?queryString HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("QueryString: ?queryString\n")); + assertThat(log, is("QueryString: ?queryString")); } @Test @@ -328,17 +329,7 @@ public class CustomRequestLogTest _connector.getResponse("GET /path?query HTTP/1.0\nHeader: null\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("RequestFirstLin: GET /path?query HTTP/1.0\n")); - } - - @Test - public void testLogRequestHandler() throws Exception - { - testHandlerServerStart("RequestHandler: %R"); - - _connector.getResponse("GET / HTTP/1.0\n\n"); - String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); + assertThat(log, is("RequestFirstLin: GET /path?query HTTP/1.0")); } @Test @@ -348,15 +339,15 @@ public class CustomRequestLogTest _connector.getResponse("GET /error404 HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("LogResponseStatus: 404\n")); + assertThat(log, is("LogResponseStatus: 404")); _connector.getResponse("GET /error301 HTTP/1.0\n\n"); log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("LogResponseStatus: 301\n")); + assertThat(log, is("LogResponseStatus: 301")); _connector.getResponse("GET / HTTP/1.0\n\n"); log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("LogResponseStatus: 200\n")); + assertThat(log, is("LogResponseStatus: 200")); } @Test @@ -366,63 +357,67 @@ public class CustomRequestLogTest _connector.getResponse("GET / HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); + long requestTime = requestTimes.poll(5,TimeUnit.SECONDS).longValue(); + DateCache dateCache = new DateCache(_log.DEFAULT_DATE_FORMAT, _log.getLogLocale(), _log.getLogTimeZone()); + assertThat(log, is("RequestTime: ["+ dateCache.format(requestTime) +"]")); } @Test public void testLogRequestTimeCustomFormats() throws Exception { - /* - The time, in the form given by format, which should be in an extended strftime(3) format (potentially localized). - If the format starts with begin: (default) the time is taken at the beginning of the request processing. - If it starts with end: it is the time when the log entry gets written, close to the end of the request processing. - - In addition to the formats supported by strftime(3), the following format tokens are supported: - sec number of seconds since the Epoch - msec number of milliseconds since the Epoch - usec number of microseconds since the Epoch - msec_frac millisecond fraction - usec_frac microsecond fraction - - These tokens can not be combined with each other or strftime(3) formatting in the same format string. - You can use multiple %{format}t tokens instead. - */ - - testHandlerServerStart("RequestTime: %{?}t"); + testHandlerServerStart("RequestTime: %{EEE MMM dd HH:mm:ss zzz yyyy}t"); _connector.getResponse("GET / HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); + long requestTime = requestTimes.poll(5,TimeUnit.SECONDS).longValue(); + DateCache dateCache = new DateCache("EEE MMM dd HH:mm:ss zzz yyyy", _log.getLogLocale(), _log.getLogTimeZone()); + assertThat(log, is("RequestTime: ["+ dateCache.format(requestTime) +"]")); } @Test public void testLogLatencyMicroseconds() throws Exception { - testHandlerServerStart("LatencyMicroseconds: %{us}Tus"); + testHandlerServerStart("%{us}T"); + long lowerBound = System.currentTimeMillis(); _connector.getResponse("GET / HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); + long upperBound = requestTimes.poll(5 ,TimeUnit.SECONDS); + + long duration = upperBound-lowerBound; + assertThat(Long.parseLong(log), greaterThan((long)0)); + assertThat(Long.parseLong(log), lessThanOrEqualTo(TimeUnit.MILLISECONDS.toMicros(duration))); } @Test public void testLogLatencyMilliseconds() throws Exception { - testHandlerServerStart("LatencyMilliseconds: %{ms}Tms"); + testHandlerServerStart("%{ms}T"); + long lowerBound = System.currentTimeMillis(); _connector.getResponse("GET / HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); + long upperBound = requestTimes.poll(5 ,TimeUnit.SECONDS); + + long duration = upperBound-lowerBound; + assertThat(Long.parseLong(log), greaterThan((long)0)); + assertThat(Long.parseLong(log), lessThanOrEqualTo(duration)); } @Test public void testLogLatencySeconds() throws Exception { - testHandlerServerStart("LatencySeconds: %{s}Ts"); + testHandlerServerStart("%{s}T"); - _connector.getResponse("GET / HTTP/1.0\n\n"); + long lowerBound = System.currentTimeMillis(); + _connector.getResponse("GET /delay HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); + long upperBound = requestTimes.poll(5 ,TimeUnit.SECONDS); + + + long duration = upperBound-lowerBound; + assertThat(Long.parseLong(log), greaterThan((long)0)); + assertThat(Long.parseLong(log), lessThanOrEqualTo(TimeUnit.MILLISECONDS.toMicros(duration))); } @Test @@ -442,7 +437,7 @@ public class CustomRequestLogTest _connector.getResponse("GET /path?query HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("UrlRequestPath: /path\n")); + assertThat(log, is("UrlRequestPath: /path")); } @Test @@ -450,9 +445,9 @@ public class CustomRequestLogTest { testHandlerServerStart("ServerName: %v"); - _connector.getResponse("GET / HTTP/1.0\n\n"); + _connector.getResponse("GET / HTTP/1.0\nHost: webtide.com\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); + assertThat(log, is("ServerName: webtide.com")); } @Test @@ -555,7 +550,19 @@ public class CustomRequestLogTest response.addHeader("Header1", "value1"); response.addHeader("Header2", "value2"); } + else if (request.getRequestURI().contains("delay")) + { + try + { + Thread.sleep(2000); + } + catch (InterruptedException e) + { + e.printStackTrace(); + } + } + requestTimes.offer(baseRequest.getTimeStamp()); baseRequest.setHandled(true); } } diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHolder.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHolder.java index 4ddec3bb15b..30bc77031bc 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHolder.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHolder.java @@ -32,7 +32,6 @@ import java.util.List; import java.util.Map; import java.util.Set; import java.util.Stack; - import javax.servlet.MultipartConfigElement; import javax.servlet.Servlet; import javax.servlet.ServletConfig; @@ -756,6 +755,13 @@ public class ServletHolder extends Holder implements UserIdentity.Scope } } + /* ------------------------------------------------------------ */ + @Override + public ContextHandler getContextHandler() + { + return ContextHandler.getContextHandler(_config.getServletContext()); + } + /* ------------------------------------------------------------ */ /** * @see org.eclipse.jetty.server.UserIdentity.Scope#getContextPath() diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/CustomRequestLogTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/CustomRequestLogTest.java new file mode 100644 index 00000000000..72374e44e17 --- /dev/null +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/CustomRequestLogTest.java @@ -0,0 +1,142 @@ +// +// ======================================================================== +// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.servlet; + +import java.io.IOException; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.TimeUnit; +import javax.servlet.ServletException; +import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.eclipse.jetty.server.CustomRequestLog; +import org.eclipse.jetty.server.LocalConnector; +import org.eclipse.jetty.server.RequestLog; +import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.util.BlockingArrayQueue; +import org.hamcrest.Matchers; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; + +public class CustomRequestLogTest +{ + RequestLog _log; + Server _server; + LocalConnector _connector; + BlockingQueue _entries = new BlockingArrayQueue<>(); + String _tmpDir = System.getProperty("java.io.tmpdir"); + + @BeforeEach + public void before() + { + _server = new Server(); + _connector = new LocalConnector(_server); + _server.addConnector(_connector); + } + + void testHandlerServerStart(String formatString) throws Exception + { + ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS); + context.setContextPath("/context"); + context.setResourceBase(_tmpDir); + context.addServlet(TestServlet.class, "/servlet/*"); + + TestRequestLogWriter writer = new TestRequestLogWriter(); + _log = new CustomRequestLog(writer, formatString); + _server.setRequestLog(_log); + _server.setHandler(context); + _server.start(); + } + + @AfterEach + public void after() throws Exception + { + _server.stop(); + } + + @Test + public void testLogFilename() throws Exception + { + testHandlerServerStart("Filename: %f"); + + _connector.getResponse("GET /context/servlet/info HTTP/1.0\n\n"); + String log = _entries.poll(5,TimeUnit.SECONDS); + assertThat(log, is("Filename: " + _tmpDir + "/servlet/info")); + } + + + @Test + public void testLogRequestHandler() throws Exception + { + testHandlerServerStart("RequestHandler: %R"); + + _connector.getResponse("GET / HTTP/1.0\n\n"); + String log = _entries.poll(5,TimeUnit.SECONDS); + assertThat(log, Matchers.containsString("TestServlet")); + } + + + class TestRequestLogWriter implements RequestLog.Writer + { + @Override + public void write(String requestEntry) + { + try + { + _entries.add(requestEntry); + } + catch(Exception e) + { + e.printStackTrace(); + } + } + } + + public static class TestServlet extends HttpServlet + { + @Override + protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + { + if (request.getRequestURI().contains("error404")) + { + response.setStatus(404); + } + else if (request.getRequestURI().contains("error301")) + { + response.setStatus(301); + } + else if (request.getHeader("echo") != null) + { + ServletOutputStream outputStream = response.getOutputStream(); + outputStream.print(request.getHeader("echo")); + } + else if (request.getRequestURI().contains("responseHeaders")) + { + response.addHeader("Header1", "value1"); + response.addHeader("Header2", "value2"); + } + } + } +} From 89e1dd033ab9707979e262c97dada226c0af6b20 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Thu, 22 Nov 2018 11:31:05 +0100 Subject: [PATCH 182/931] Jetty 9.4.x 3117 retainable byte buffer (#3118) * Move RetainableByteBuffer to jetty-io= use RetainableByteBuffer use RetainableByteBuffer - changes from review. Reviewed and applied small changes. Signed-off-by: Greg Wilkins Signed-off-by: Simone Bordet --- .../eclipse/jetty/http2/HTTP2Connection.java | 187 ++++++++---------- .../jetty/io/RetainableByteBuffer.java | 99 ++++++++++ 2 files changed, 182 insertions(+), 104 deletions(-) create mode 100644 jetty-io/src/main/java/org/eclipse/jetty/io/RetainableByteBuffer.java diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Connection.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Connection.java index c3739f7bd7d..d1ee4dd829d 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Connection.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Connection.java @@ -23,7 +23,6 @@ import java.nio.ByteBuffer; import java.util.ArrayDeque; import java.util.Queue; import java.util.concurrent.Executor; -import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicLong; import org.eclipse.jetty.http2.frames.DataFrame; @@ -31,10 +30,10 @@ import org.eclipse.jetty.http2.parser.Parser; import org.eclipse.jetty.io.AbstractConnection; import org.eclipse.jetty.io.ByteBufferPool; import org.eclipse.jetty.io.EndPoint; +import org.eclipse.jetty.io.RetainableByteBuffer; import org.eclipse.jetty.io.WriteFlusher; import org.eclipse.jetty.util.BufferUtil; import org.eclipse.jetty.util.Callback; -import org.eclipse.jetty.util.Retainable; import org.eclipse.jetty.util.component.LifeCycle; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -217,8 +216,8 @@ public class HTTP2Connection extends AbstractConnection implements WriteFlusher. private void setInputBuffer(ByteBuffer byteBuffer) { - if (networkBuffer == null) - networkBuffer = acquireNetworkBuffer(); + acquireNetworkBuffer(); + // TODO handle buffer overflow? networkBuffer.put(byteBuffer); } @@ -234,93 +233,104 @@ public class HTTP2Connection extends AbstractConnection implements WriteFlusher. if (isFillInterested() || shutdown || failed) return null; - if (networkBuffer == null) - networkBuffer = acquireNetworkBuffer(); - - boolean parse = networkBuffer.hasRemaining(); - - while (true) + boolean interested = false; + acquireNetworkBuffer(); + try { - if (parse) + boolean parse = networkBuffer.hasRemaining(); + + while (true) { - boolean released; - networkBuffer.retain(); - try + if (parse) { while (networkBuffer.hasRemaining()) { - parser.parse(networkBuffer.buffer); + parser.parse(networkBuffer.getBuffer()); if (failed) return null; } - } - finally - { - released = networkBuffer.release(); - if (failed && released) - releaseNetworkBuffer(); + + task = pollTask(); + if (LOG.isDebugEnabled()) + LOG.debug("Dequeued new task {}", task); + if (task != null) + return task; + + // If more references than 1 (ie not just us), don't refill into buffer and risk compaction. + if (networkBuffer.getReferences() > 1) + reacquireNetworkBuffer(); } - task = pollTask(); + // Here we know that this.networkBuffer is not retained by + // application code: either it has been released, or it's a new one. + int filled = fill(getEndPoint(), networkBuffer.getBuffer()); if (LOG.isDebugEnabled()) - LOG.debug("Dequeued new task {}", task); - if (task != null) + LOG.debug("Filled {} bytes in {}", filled, networkBuffer); + + if (filled > 0) { - if (released) - releaseNetworkBuffer(); - else - networkBuffer = null; - return task; + bytesIn.addAndGet(filled); + parse = true; + } + else if (filled == 0) + { + interested = true; + return null; } else { - if (!released) - networkBuffer = acquireNetworkBuffer(); + shutdown = true; + session.onShutdown(); + return null; } } - - // Here we know that this.buffer is not retained: - // either it has been released, or it's a new one. - - int filled = fill(getEndPoint(), networkBuffer.buffer); - if (LOG.isDebugEnabled()) - LOG.debug("Filled {} bytes in {}", filled, networkBuffer); - - if (filled > 0) - { - bytesIn.addAndGet(filled); - parse = true; - } - else if (filled == 0) - { - releaseNetworkBuffer(); + } + finally + { + releaseNetworkBuffer(); + if (interested) getEndPoint().fillInterested(fillableCallback); - return null; - } - else - { - releaseNetworkBuffer(); - shutdown = true; - session.onShutdown(); - return null; - } } } - private NetworkBuffer acquireNetworkBuffer() + private void acquireNetworkBuffer() { - NetworkBuffer networkBuffer = new NetworkBuffer(); + if (networkBuffer == null) + { + networkBuffer = new NetworkBuffer(); + if (LOG.isDebugEnabled()) + LOG.debug("Acquired {}", networkBuffer); + } + } + + private void reacquireNetworkBuffer() + { + NetworkBuffer currentBuffer = networkBuffer; + if (currentBuffer == null) + throw new IllegalStateException(); + + if (currentBuffer.getBuffer().hasRemaining()) + throw new IllegalStateException(); + + currentBuffer.release(); + networkBuffer = new NetworkBuffer(); if (LOG.isDebugEnabled()) - LOG.debug("Acquired {}", networkBuffer); - return networkBuffer; + LOG.debug("Reacquired {}<-{}", currentBuffer, networkBuffer); } private void releaseNetworkBuffer() { - if (LOG.isDebugEnabled()) - LOG.debug("Released {}", networkBuffer); - networkBuffer.recycle(); + NetworkBuffer currentBuffer = networkBuffer; + if (currentBuffer == null) + throw new IllegalStateException(); + + if (currentBuffer.hasRemaining() && !shutdown && !failed) + throw new IllegalStateException(); + + currentBuffer.release(); networkBuffer = null; + if (LOG.isDebugEnabled()) + LOG.debug("Released {}", currentBuffer); } @Override @@ -375,56 +385,36 @@ public class HTTP2Connection extends AbstractConnection implements WriteFlusher. } } - private class NetworkBuffer implements Callback, Retainable + private class NetworkBuffer extends RetainableByteBuffer implements Callback { - private final AtomicInteger refCount = new AtomicInteger(); - private final ByteBuffer buffer; - private NetworkBuffer() { - buffer = byteBufferPool.acquire(bufferSize, false); // TODO: make directness customizable + super(byteBufferPool,bufferSize,false); } private void put(ByteBuffer source) { - BufferUtil.append(buffer, source); - } - - private boolean hasRemaining() - { - return buffer.hasRemaining(); - } - - @Override - public void retain() - { - refCount.incrementAndGet(); - } - - private boolean release() - { - return refCount.decrementAndGet() == 0; + BufferUtil.append(getBuffer(), source); } @Override public void succeeded() { - if (release()) - { - if (LOG.isDebugEnabled()) - LOG.debug("Released retained {}", this); - recycle(); - } + completed(null); } @Override public void failed(Throwable failure) { - if (release()) + completed(failure); + } + + private void completed(Throwable failure) + { + if (release() == 0) { if (LOG.isDebugEnabled()) LOG.debug("Released retained " + this, failure); - recycle(); } } @@ -433,16 +423,5 @@ public class HTTP2Connection extends AbstractConnection implements WriteFlusher. { return InvocationType.NON_BLOCKING; } - - private void recycle() - { - byteBufferPool.release(buffer); - } - - @Override - public String toString() - { - return String.format("%s@%x[%s]", getClass().getSimpleName(), hashCode(), buffer); - } } } diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/RetainableByteBuffer.java b/jetty-io/src/main/java/org/eclipse/jetty/io/RetainableByteBuffer.java new file mode 100644 index 00000000000..eebf5fb4d5f --- /dev/null +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/RetainableByteBuffer.java @@ -0,0 +1,99 @@ +// +// ======================================================================== +// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.io; + +import java.nio.ByteBuffer; +import java.util.concurrent.atomic.AtomicInteger; + +import org.eclipse.jetty.util.BufferUtil; +import org.eclipse.jetty.util.Retainable; + +/** + * A Retainable ByteBuffer. + *

Acquires a ByteBuffer from a {@link ByteBufferPool} and maintains a reference count that is + * initially 1, incremented with {@link #retain()} and decremented with {@link #release()}. The buffer + * is released to the pool when the reference count is decremented to 0.

+ */ +public class RetainableByteBuffer implements Retainable +{ + private final ByteBufferPool pool; + private final ByteBuffer buffer; + private final AtomicInteger references; + + public RetainableByteBuffer(ByteBufferPool pool, int size) + { + this(pool, size, false); + } + + public RetainableByteBuffer(ByteBufferPool pool, int size, boolean direct) + { + this.pool = pool; + this.buffer = pool.acquire(size, direct); + this.references = new AtomicInteger(1); + } + + public ByteBuffer getBuffer() + { + return buffer; + } + + public int getReferences() + { + return references.get(); + } + + @Override + public void retain() + { + while (true) + { + int r = references.get(); + if (r == 0) + throw new IllegalStateException("released " + this); + if (references.compareAndSet(r, r + 1)) + break; + } + } + + public int release() + { + int ref = references.decrementAndGet(); + if (ref == 0) + pool.release(buffer); + else if (ref < 0) + throw new IllegalStateException("already released " + this); + return ref; + } + + public boolean hasRemaining() + { + return buffer.hasRemaining(); + } + + public boolean isEmpty() + { + return !buffer.hasRemaining(); + } + + @Override + public String toString() + { + return String.format("%s@%x{%s,r=%d}", getClass().getSimpleName(), hashCode(), BufferUtil.toDetailString(buffer), getReferences()); + } +} From 14c2431b1ddc5f45b387a67b14d9922dc6622594 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Thu, 22 Nov 2018 12:46:11 +0100 Subject: [PATCH 183/931] Updated Conscrypt to 1.4.1. Signed-off-by: Simone Bordet --- jetty-osgi/test-jetty-osgi/pom.xml | 2 +- pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/jetty-osgi/test-jetty-osgi/pom.xml b/jetty-osgi/test-jetty-osgi/pom.xml index 408a154ea33..f5230342c47 100644 --- a/jetty-osgi/test-jetty-osgi/pom.xml +++ b/jetty-osgi/test-jetty-osgi/pom.xml @@ -573,7 +573,7 @@ org.conscrypt conscrypt-openjdk-uber - 1.0.0.RC11 + ${conscrypt.version} test diff --git a/pom.xml b/pom.xml index 0aeca264a13..6964d749aa7 100644 --- a/pom.xml +++ b/pom.xml @@ -27,7 +27,7 @@ 8.5.33.1 undefined - 1.1.4 + 1.4.1 7.0 1.21 benchmarks From fc0d2569ef8fae0b298938422af2cb1b5dff8866 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Thu, 22 Nov 2018 18:08:46 +0100 Subject: [PATCH 184/931] Issue #3132 improve dump readability Signed-off-by: Greg Wilkins --- .../jetty/util/component/Dumpable.java | 27 +++++++++---------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/component/Dumpable.java b/jetty-util/src/main/java/org/eclipse/jetty/util/component/Dumpable.java index eeee4dd9e74..ff9a993e269 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/component/Dumpable.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/component/Dumpable.java @@ -100,7 +100,7 @@ public interface Dumpable } catch (Throwable th) { - out.append("=>").append(th.toString()).append("\n"); + out.append("=> ").append(th.toString()).append("\n"); } } @@ -134,12 +134,12 @@ public interface Dumpable for (Iterator i = container.getBeans().iterator(); i.hasNext();) { Object bean = i.next(); - String nextIndent = indent + ((i.hasNext() || size>0) ? "| " : " "); + String nextIndent = indent + ((i.hasNext() || size>0) ? "| " : " "); if (bean instanceof LifeCycle) { if (container.isManaged(bean)) { - out.append(indent).append("+="); + out.append(indent).append("+= "); if (bean instanceof Dumpable) ((Dumpable)bean).dump(out,nextIndent); else @@ -147,7 +147,7 @@ public interface Dumpable } else if (containerLifeCycle != null && containerLifeCycle.isAuto(bean)) { - out.append(indent).append("+?"); + out.append(indent).append("+? "); if (bean instanceof Dumpable) ((Dumpable)bean).dump(out,nextIndent); else @@ -155,18 +155,18 @@ public interface Dumpable } else { - out.append(indent).append("+~"); + out.append(indent).append("+~ "); dumpObject(out, bean); } } else if (containerLifeCycle != null && containerLifeCycle.isUnmanaged(bean)) { - out.append(indent).append("+~"); + out.append(indent).append("+~ "); dumpObject(out, bean); } else { - out.append(indent).append("+-"); + out.append(indent).append("+- "); if (bean instanceof Dumpable) ((Dumpable)bean).dump(out,nextIndent); else @@ -179,8 +179,8 @@ public interface Dumpable for (Iterator i = ((Iterable)object).iterator(); i.hasNext();) { Object item = i.next(); - String nextIndent = indent + ((i.hasNext() || size>0) ? "| " : " "); - out.append(indent).append("+:"); + String nextIndent = indent + ((i.hasNext() || size>0) ? "| " : " "); + out.append(indent).append("+: "); if (item instanceof Dumpable) ((Dumpable)item).dump(out,nextIndent); else @@ -192,8 +192,8 @@ public interface Dumpable for (Iterator> i = ((Map)object).entrySet().iterator(); i.hasNext();) { Map.Entry entry = i.next(); - String nextIndent = indent + ((i.hasNext() || size>0) ? "| " : " "); - out.append(indent).append("+@").append(String.valueOf(entry.getKey())).append('='); + String nextIndent = indent + ((i.hasNext() || size>0) ? "| " : " "); + out.append(indent).append("+@ ").append(String.valueOf(entry.getKey())).append('='); Object item = entry.getValue(); if (item instanceof Dumpable) ((Dumpable)item).dump(out,nextIndent); @@ -209,13 +209,12 @@ public interface Dumpable for (Object item : extraChildren) { i++; - String nextIndent = indent + (i"); + String nextIndent = indent + (i "); if (item instanceof Dumpable) ((Dumpable)item).dump(out,nextIndent); else dumpObjects(out, nextIndent, item); } } - } From 771f120508f6bec182588d554d5ceb006b603711 Mon Sep 17 00:00:00 2001 From: Lachlan Roberts Date: Thu, 22 Nov 2018 20:01:19 +0100 Subject: [PATCH 185/931] Issue #113 - customrequestlog module Signed-off-by: Lachlan Roberts --- .../config/etc/jetty-customrequestlog.xml | 41 +++++++++++++++++++ .../main/config/modules/customrequestlog.mod | 41 +++++++++++++++++++ 2 files changed, 82 insertions(+) create mode 100644 jetty-server/src/main/config/etc/jetty-customrequestlog.xml create mode 100644 jetty-server/src/main/config/modules/customrequestlog.mod diff --git a/jetty-server/src/main/config/etc/jetty-customrequestlog.xml b/jetty-server/src/main/config/etc/jetty-customrequestlog.xml new file mode 100644 index 00000000000..dd24cd80ec6 --- /dev/null +++ b/jetty-server/src/main/config/etc/jetty-customrequestlog.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + / + jetty.customrequestlog.filePath + /yyyy_mm_dd.request.log + + + + + + + + + + + + + + + + + + + + + diff --git a/jetty-server/src/main/config/modules/customrequestlog.mod b/jetty-server/src/main/config/modules/customrequestlog.mod new file mode 100644 index 00000000000..0d4eb9a8c41 --- /dev/null +++ b/jetty-server/src/main/config/modules/customrequestlog.mod @@ -0,0 +1,41 @@ +DO NOT EDIT - See: https://www.eclipse.org/jetty/documentation/current/startup-modules.html + +[description] +Enables a format string style request log. + +[provides] +requestlog + +[tags] +customrequestlog + +[depend] +server + +[xml] +etc/jetty-customrequestlog.xml + +[files] +logs/ + +[ini-template] +## Logging directory (relative to $jetty.base) +# jetty.customrequestlog.dir=logs + +## File path +# jetty.customrequestlog.filePath=${jetty.customrequestlog.dir}/yyyy_mm_dd.request.log + +## Date format for rollovered files (uses SimpleDateFormat syntax) +# jetty.customrequestlog.filenameDateFormat=yyyy_MM_dd + +## How many days to retain old log files +# jetty.customrequestlog.retainDays=90 + +## Whether to append to existing file +# jetty.customrequestlog.append=false + +## Timezone of the log entries +# jetty.customrequestlog.timezone=GMT + +## Format string +# jetty.customrequestlog.formatString=%a - %u %t "%r" %s %B "%{Referer}i" "%{User-Agent}i" "%C" From 54319589a496d260311748a1025300ac0b2019de Mon Sep 17 00:00:00 2001 From: Jan Bartel Date: Fri, 23 Nov 2018 16:13:30 +0100 Subject: [PATCH 186/931] Fix conscrypt version for osgi --- jetty-osgi/test-jetty-osgi/pom.xml | 1 + .../jetty/osgi/test/TestJettyOSGiBootHTTP2Conscrypt.java | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/jetty-osgi/test-jetty-osgi/pom.xml b/jetty-osgi/test-jetty-osgi/pom.xml index f5230342c47..e90e480bd90 100644 --- a/jetty-osgi/test-jetty-osgi/pom.xml +++ b/jetty-osgi/test-jetty-osgi/pom.xml @@ -601,6 +601,7 @@ **/TestJettyOSGiBootHTTP2 + -Dconscrypt-version=${conscrypt.version} diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2Conscrypt.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2Conscrypt.java index 721279f44ee..e461d6ab975 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2Conscrypt.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2Conscrypt.java @@ -100,9 +100,9 @@ public class TestJettyOSGiBootHTTP2Conscrypt res.add(CoreOptions.systemProperty("jetty.alpn.protocols").value("h2,http/1.1")); res.add(CoreOptions.systemProperty("jetty.sslContext.provider").value("Conscrypt")); - res.add(wrappedBundle(mavenBundle().groupId("org.conscrypt").artifactId("conscrypt-openjdk-uber").version("1.1.4")) + res.add(wrappedBundle(mavenBundle().groupId("org.conscrypt").artifactId("conscrypt-openjdk-uber").versionAsInProject()) .imports("javax.net.ssl,*") - .exports("org.conscrypt;version=1.1.4") + .exports("org.conscrypt;version="+System.getProperty("conscrypt-version")) .instructions("Bundle-NativeCode=META-INF/native/libconscrypt_openjdk_jni-linux-x86_64.so") .start()); res.add(mavenBundle().groupId("org.eclipse.jetty.osgi").artifactId("jetty-osgi-alpn").versionAsInProject().noStart()); From 4e672c6b27eeecbb7e1152453d1364ad948b51cf Mon Sep 17 00:00:00 2001 From: Jan Bartel Date: Fri, 23 Nov 2018 16:15:27 +0100 Subject: [PATCH 187/931] Issue #2646 - Better handle concurrent calls to change session id and invalidate within a context (#2670) * Issue #2646 handle concurrent invalidate/changeid calls Signed-off-by: Jan Bartel --- .../server/session/AbstractSessionCache.java | 39 +- .../eclipse/jetty/server/session/Session.java | 669 +++++++++++------- .../jetty/server/session/SessionCache.java | 27 +- .../jetty/server/session/SessionHandler.java | 132 +++- .../session/DefaultSessionCacheTest.java | 98 ++- 5 files changed, 649 insertions(+), 316 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionCache.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionCache.java index c7c49a63bd0..1f22ba2e2c4 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionCache.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionCache.java @@ -151,8 +151,9 @@ public abstract class AbstractSessionCache extends ContainerLifeCycle implements /** * Remove the session with this identity from the store + * * @param id the id - * @return true if removed false otherwise + * @return Session that was removed or null */ public abstract Session doDelete (String id); @@ -727,12 +728,8 @@ public abstract class AbstractSessionCache extends ContainerLifeCycle implements - - /** - * @see org.eclipse.jetty.server.session.SessionCache#renewSessionId(java.lang.String, java.lang.String) - */ @Override - public Session renewSessionId (String oldId, String newId) + public Session renewSessionId (String oldId, String newId, String oldExtendedId, String newExtendedId) throws Exception { if (StringUtil.isBlank(oldId)) @@ -741,17 +738,40 @@ public abstract class AbstractSessionCache extends ContainerLifeCycle implements throw new IllegalArgumentException ("New session id is null"); Session session = get(oldId); - if (session == null) - return null; + renewSessionId(session, newId, newExtendedId); + return session; + } + + + /** + * Swap the id on a session. + * + * @param session the session for which to do the swap + * @param newId the new id + * @param newExtendedId the full id plus node id + * + * @throws Exception if there was a failure saving the change + */ + protected void renewSessionId (Session session, String newId, String newExtendedId) + throws Exception + { + if (session == null) + return; + try (Lock lock = session.lock()) { + String oldId = session.getId(); session.checkValidForWrite(); //can't change id on invalid session session.getSessionData().setId(newId); session.getSessionData().setLastSaved(0); //pretend that the session has never been saved before to get a full save - session.getSessionData().setDirty(true); //ensure we will try to write the session out + session.getSessionData().setDirty(true); //ensure we will try to write the session out + session.setExtendedId(newExtendedId); //remember the new extended id + session.setIdChanged(true); //session id changed + doPutIfAbsent(newId, session); //put the new id into our map doDelete (oldId); //take old out of map + if (_sessionDataStore != null) { _sessionDataStore.delete(oldId); //delete the session data with the old id @@ -759,7 +779,6 @@ public abstract class AbstractSessionCache extends ContainerLifeCycle implements } if (LOG.isDebugEnabled()) LOG.debug ("Session id {} swapped for new id {}", oldId, newId); - return session; } } diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/Session.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/Session.java index 19268e88155..673b400ecd4 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/Session.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/Session.java @@ -25,6 +25,7 @@ import java.util.Enumeration; import java.util.Iterator; import java.util.Set; import java.util.concurrent.TimeUnit; +import java.util.concurrent.locks.Condition; import javax.servlet.ServletContext; import javax.servlet.http.HttpServletRequest; @@ -41,66 +42,73 @@ import org.eclipse.jetty.util.thread.Locker; import org.eclipse.jetty.util.thread.Locker.Lock; - - /** * Session * * A heavy-weight Session object representing a HttpSession. Session objects - * relating to a context are kept in a {@link SessionCache}. The purpose of - * the SessionCache is to keep the working set of Session objects in memory - * so that they may be accessed quickly, and facilitate the sharing of a - * Session object amongst multiple simultaneous requests referring to the - * same session id. + * relating to a context are kept in a {@link SessionCache}. The purpose of the + * SessionCache is to keep the working set of Session objects in memory so that + * they may be accessed quickly, and facilitate the sharing of a Session object + * amongst multiple simultaneous requests referring to the same session id. * - * The {@link SessionHandler} coordinates - * the lifecycle of Session objects with the help of the SessionCache. + * The {@link SessionHandler} coordinates the lifecycle of Session objects with + * the help of the SessionCache. * * @see SessionHandler * @see org.eclipse.jetty.server.SessionIdManager */ public class Session implements SessionHandler.SessionIf { - private final static Logger LOG = Log.getLogger("org.eclipse.jetty.server.session"); - - + private final static Logger LOG = Log.getLogger("org.eclipse.jetty.server.session"); + /** * */ - public final static String SESSION_CREATED_SECURE="org.eclipse.jetty.security.sessionCreatedSecure"; - - + public final static String SESSION_CREATED_SECURE = "org.eclipse.jetty.security.sessionCreatedSecure"; + /** * State * * Validity states of a session */ - public enum State {VALID, INVALID, INVALIDATING}; - - - + public enum State + { + VALID, INVALID, INVALIDATING, CHANGING + }; - - protected final SessionData _sessionData; //the actual data associated with a session - protected final SessionHandler _handler; //the manager of the session - protected String _extendedId; //the _id plus the worker name + public enum IdState + { + SET, CHANGING + }; + + protected final SessionData _sessionData; // the actual data associated with + // a session + + protected final SessionHandler _handler; // the manager of the session + + protected String _extendedId; // the _id plus the worker name protected long _requests; - protected boolean _idChanged; + + protected boolean _idChanged; + protected boolean _newSession; - protected State _state = State.VALID; //state of the session:valid,invalid or being invalidated - protected Locker _lock = new Locker(); //sync lock + + protected State _state = State.VALID; // state of the session:valid,invalid + // or being invalidated + + protected Locker _lock = new Locker(); // sync lock + protected Condition _stateChangeCompleted = _lock.newCondition(); protected boolean _resident = false; protected final SessionInactivityTimer _sessionInactivityTimer; - - + /* ------------------------------------------------------------- */ /** * SessionInactivityTimer * - * Each Session has a timer associated with it that fires whenever - * it has been idle (ie not accessed by a request) for a - * configurable amount of time, or the Session expires. + * Each Session has a timer associated with it that fires whenever it has + * been idle (ie not accessed by a request) for a configurable amount of + * time, or the Session expires. * * @see SessionCache * @@ -109,62 +117,65 @@ public class Session implements SessionHandler.SessionIf { protected final CyclicTimeout _timer; protected long _msec = -1; - + public SessionInactivityTimer() { _timer = new CyclicTimeout((getSessionHandler().getScheduler())) - { - @Override - public void onTimeoutExpired() - { - if (LOG.isDebugEnabled()) LOG.debug("Timer expired for session {}", getId()); - getSessionHandler().sessionInactivityTimerExpired(Session.this); - } - - }; + { + @Override + public void onTimeoutExpired() + { + if (LOG.isDebugEnabled()) + LOG.debug("Timer expired for session {}", getId()); + getSessionHandler().sessionInactivityTimerExpired(Session.this); + } + + }; } /** - * @param ms the timeout to set; -1 means that the timer will not be scheduled + * @param ms the timeout to set; -1 means that the timer will not be + * scheduled */ public void setTimeout(long ms) { _msec = ms; - if (LOG.isDebugEnabled()) LOG.debug("Session {} timer={}ms",getId(), ms); + if (LOG.isDebugEnabled()) + LOG.debug("Session {} timer={}ms", getId(), ms); } - - public void schedule () + public void schedule() { if (_msec > 0) { - if (LOG.isDebugEnabled()) LOG.debug("(Re)starting timer for session {} at {}ms",getId(), _msec); + if (LOG.isDebugEnabled()) + LOG.debug("(Re)starting timer for session {} at {}ms", getId(), _msec); _timer.schedule(_msec, TimeUnit.MILLISECONDS); } else { - if (LOG.isDebugEnabled()) LOG.debug("Not starting timer for session {}",getId()); + if (LOG.isDebugEnabled()) + LOG.debug("Not starting timer for session {}", getId()); } } - - + public void cancel() { _timer.cancel(); - if (LOG.isDebugEnabled()) LOG.debug("Cancelled timer for session {}",getId()); + if (LOG.isDebugEnabled()) + LOG.debug("Cancelled timer for session {}", getId()); } - - - public void destroy () + + public void destroy() { _timer.destroy(); - if (LOG.isDebugEnabled()) LOG.debug("Destroyed timer for session {}",getId()); + if (LOG.isDebugEnabled()) + LOG.debug("Destroyed timer for session {}", getId()); } } - /* ------------------------------------------------------------- */ /** * Create a new session @@ -172,17 +183,17 @@ public class Session implements SessionHandler.SessionIf * @param request the request the session should be based on * @param data the session data */ - public Session (SessionHandler handler, HttpServletRequest request, SessionData data) + public Session(SessionHandler handler, HttpServletRequest request, SessionData data) { _handler = handler; _sessionData = data; _newSession = true; _sessionData.setDirty(true); - _requests = 1; //access will not be called on this new session, but we are obviously in a request + _requests = 1; // access will not be called on this new session, but we + // are obviously in a request _sessionInactivityTimer = new SessionInactivityTimer(); } - - + /* ------------------------------------------------------------- */ /** @@ -191,19 +202,18 @@ public class Session implements SessionHandler.SessionIf * @param handler the SessionHandler managing the session * @param data the session data */ - public Session (SessionHandler handler, SessionData data) + public Session(SessionHandler handler, SessionData data) { _handler = handler; _sessionData = data; _sessionInactivityTimer = new SessionInactivityTimer(); } - + /* ------------------------------------------------------------- */ /** - * Returns the current number of requests that are active in the - * Session. - * + * Returns the current number of requests that are active in the Session. + * * @return the number of active requests for this session */ public long getRequests() @@ -213,23 +223,21 @@ public class Session implements SessionHandler.SessionIf return _requests; } } - - - + /* ------------------------------------------------------------- */ - public void setExtendedId (String extendedId) + public void setExtendedId(String extendedId) { _extendedId = extendedId; } - + /* ------------------------------------------------------------- */ protected void cookieSet() { try (Lock lock = _lock.lock()) { - _sessionData.setCookieSet(_sessionData.getAccessed()); + _sessionData.setCookieSet(_sessionData.getAccessed()); } } /* ------------------------------------------------------------ */ @@ -239,7 +247,7 @@ public class Session implements SessionHandler.SessionIf { if (!isValid()) return false; - _newSession=false; + _newSession = false; long lastAccessed = _sessionData.getAccessed(); _sessionData.setAccessed(time); _sessionData.setLastAccessed(lastAccessed); @@ -251,8 +259,9 @@ public class Session implements SessionHandler.SessionIf } _requests++; - //temporarily stop the idle timer - if (LOG.isDebugEnabled()) LOG.debug("Session {} accessed, stopping timer, active requests={}",getId(),_requests); + // temporarily stop the idle timer + if (LOG.isDebugEnabled()) + LOG.debug("Session {} accessed, stopping timer, active requests={}", getId(), _requests); _sessionInactivityTimer.cancel(); @@ -267,18 +276,19 @@ public class Session implements SessionHandler.SessionIf { _requests--; - if (LOG.isDebugEnabled()) LOG.debug("Session {} complete, active requests={}",getId(),_requests); + if (LOG.isDebugEnabled()) + LOG.debug("Session {} complete, active requests={}", getId(), _requests); - //start the inactivity timer + // start the inactivity timer if (_requests == 0) _sessionInactivityTimer.schedule(); } } - /* ------------------------------------------------------------- */ - /** Check to see if session has expired as at the time given. + /** + * Check to see if session has expired as at the time given. * * @param time the time since the epoch in ms * @return true if expired @@ -290,83 +300,85 @@ public class Session implements SessionHandler.SessionIf return _sessionData.isExpiredAt(time); } } - - + /* ------------------------------------------------------------- */ - /** Check if the Session has been idle longer than a number of seconds. + /** + * Check if the Session has been idle longer than a number of seconds. * * @param sec the number of seconds * @return true if the session has been idle longer than the interval */ - protected boolean isIdleLongerThan (int sec) + protected boolean isIdleLongerThan(int sec) { long now = System.currentTimeMillis(); try (Lock lock = _lock.lock()) { - return ((_sessionData.getAccessed() + (sec*1000)) <= now); + return ((_sessionData.getAccessed() + (sec * 1000)) <= now); } } - - + /* ------------------------------------------------------------ */ /** - * Call binding and attribute listeners based on the new and old - * values of the attribute. + * Call binding and attribute listeners based on the new and old values of + * the attribute. * * @param name name of the attribute - * @param newValue new value of the attribute + * @param newValue new value of the attribute * @param oldValue previous value of the attribute * @throws IllegalStateException if no session manager can be find */ - protected void callSessionAttributeListeners (String name, Object newValue, Object oldValue) + protected void callSessionAttributeListeners(String name, Object newValue, Object oldValue) { - if (newValue==null || !newValue.equals(oldValue)) + if (newValue == null || !newValue.equals(oldValue)) { - if (oldValue!=null) - unbindValue(name,oldValue); - if (newValue!=null) - bindValue(name,newValue); + if (oldValue != null) + unbindValue(name, oldValue); + if (newValue != null) + bindValue(name, newValue); if (_handler == null) - throw new IllegalStateException ("No session manager for session "+ _sessionData.getId()); - - _handler.doSessionAttributeListeners(this,name,oldValue,newValue); + throw new IllegalStateException("No session manager for session " + _sessionData.getId()); + + _handler.doSessionAttributeListeners(this, name, oldValue, newValue); } } - - + /* ------------------------------------------------------------- */ /** - * Unbind value if value implements {@link HttpSessionBindingListener} (calls {@link HttpSessionBindingListener#valueUnbound(HttpSessionBindingEvent)}) - * @param name the name with which the object is bound or unbound + * Unbind value if value implements {@link HttpSessionBindingListener} + * (calls + * {@link HttpSessionBindingListener#valueUnbound(HttpSessionBindingEvent)}) + * + * @param name the name with which the object is bound or unbound * @param value the bound value */ public void unbindValue(java.lang.String name, Object value) { - if (value!=null&&value instanceof HttpSessionBindingListener) - ((HttpSessionBindingListener)value).valueUnbound(new HttpSessionBindingEvent(this,name)); - } - - - /* ------------------------------------------------------------- */ - /** - * Bind value if value implements {@link HttpSessionBindingListener} (calls {@link HttpSessionBindingListener#valueBound(HttpSessionBindingEvent)}) - * @param name the name with which the object is bound or unbound - * @param value the bound value - */ - public void bindValue(java.lang.String name, Object value) - { - if (value!=null&&value instanceof HttpSessionBindingListener) - ((HttpSessionBindingListener)value).valueBound(new HttpSessionBindingEvent(this,name)); + if (value != null && value instanceof HttpSessionBindingListener) + ((HttpSessionBindingListener) value).valueUnbound(new HttpSessionBindingEvent(this, name)); } /* ------------------------------------------------------------- */ /** - * Call the activation listeners. This must be called holding the - * lock. + * Bind value if value implements {@link HttpSessionBindingListener} (calls + * {@link HttpSessionBindingListener#valueBound(HttpSessionBindingEvent)}) + * + * @param name the name with which the object is bound or unbound + * @param value the bound value + */ + public void bindValue(java.lang.String name, Object value) + { + if (value != null && value instanceof HttpSessionBindingListener) + ((HttpSessionBindingListener) value).valueBound(new HttpSessionBindingEvent(this, name)); + } + + + /* ------------------------------------------------------------- */ + /** + * Call the activation listeners. This must be called holding the lock. */ public void didActivate() { @@ -385,8 +397,7 @@ public class Session implements SessionHandler.SessionIf /* ------------------------------------------------------------- */ /** - * Call the passivation listeners. This must be called holding the - * lock + * Call the passivation listeners. This must be called holding the lock */ public void willPassivate() { @@ -407,10 +418,16 @@ public class Session implements SessionHandler.SessionIf { try (Lock lock = _lock.lock()) { - return _state==State.VALID; + return _state == State.VALID; } } + /* ------------------------------------------------------------ */ + public boolean isChanging() + { + checkLocked(); + return _state == State.CHANGING; + } /* ------------------------------------------------------------- */ public long getCookieSetTime() @@ -433,9 +450,7 @@ public class Session implements SessionHandler.SessionIf } } - - - /** + /** * @see javax.servlet.http.HttpSession#getId() */ @Override @@ -447,25 +462,24 @@ public class Session implements SessionHandler.SessionIf } } - + public String getExtendedId() { return _extendedId; } - + public String getContextPath() { return _sessionData.getContextPath(); } - - public String getVHost () + public String getVHost() { return _sessionData.getVhost(); } - - /** + + /** * @see javax.servlet.http.HttpSession#getLastAccessedTime() */ @Override @@ -477,18 +491,18 @@ public class Session implements SessionHandler.SessionIf } } - /** + /** * @see javax.servlet.http.HttpSession#getServletContext() */ @Override public ServletContext getServletContext() { if (_handler == null) - throw new IllegalStateException ("No session manager for session "+ _sessionData.getId()); - return _handler._context; + throw new IllegalStateException("No session manager for session " + _sessionData.getId()); + return _handler._context; } - /** + /** * @see javax.servlet.http.HttpSession#setMaxInactiveInterval(int) */ @Override @@ -496,7 +510,7 @@ public class Session implements SessionHandler.SessionIf { try (Lock lock = _lock.lock()) { - _sessionData.setMaxInactiveMs((long)secs*1000L); + _sessionData.setMaxInactiveMs((long) secs * 1000L); _sessionData.calcAndSetExpiry(); _sessionData.setDirty(true); updateInactivityTimer(); @@ -509,63 +523,68 @@ public class Session implements SessionHandler.SessionIf } } } - - + /** - * Set the inactivity timer to the smaller of the session maxInactivity - * (ie session-timeout from web.xml), or the inactive eviction time. + * Set the inactivity timer to the smaller of the session maxInactivity (ie + * session-timeout from web.xml), or the inactive eviction time. */ - public void updateInactivityTimer () + public void updateInactivityTimer() { try (Lock lock = _lock.lock()) { - long maxInactive = _sessionData.getMaxInactiveMs(); + long maxInactive = _sessionData.getMaxInactiveMs(); int evictionPolicy = getSessionHandler().getSessionCache().getEvictionPolicy(); if (maxInactive <= 0) { - //sessions are immortal, they never expire + // sessions are immortal, they never expire if (evictionPolicy < SessionCache.EVICT_ON_INACTIVITY) { - //we do not want to evict inactive sessions + // we do not want to evict inactive sessions _sessionInactivityTimer.setTimeout(-1); - if (LOG.isDebugEnabled()) LOG.debug("Session {} is immortal && no inactivity eviction", getId()); + if (LOG.isDebugEnabled()) + LOG.debug("Session {} is immortal && no inactivity eviction", getId()); } else { - //sessions are immortal but we want to evict after inactivity + // sessions are immortal but we want to evict after + // inactivity _sessionInactivityTimer.setTimeout(TimeUnit.SECONDS.toMillis(evictionPolicy)); - if (LOG.isDebugEnabled()) LOG.debug("Session {} is immortal; evict after {} sec inactivity", getId(), evictionPolicy); - } + if (LOG.isDebugEnabled()) + LOG.debug("Session {} is immortal; evict after {} sec inactivity", getId(), evictionPolicy); + } } else { - //sessions are not immortal + // sessions are not immortal if (evictionPolicy == SessionCache.NEVER_EVICT) { - //timeout is just the maxInactive setting + // timeout is just the maxInactive setting _sessionInactivityTimer.setTimeout(_sessionData.getMaxInactiveMs()); - if (LOG.isDebugEnabled()) LOG.debug("Session {} no eviction", getId()); + if (LOG.isDebugEnabled()) + LOG.debug("Session {} no eviction", getId()); } else if (evictionPolicy == SessionCache.EVICT_ON_SESSION_EXIT) { - //session will not remain in the cache, so no timeout + // session will not remain in the cache, so no timeout _sessionInactivityTimer.setTimeout(-1); - if (LOG.isDebugEnabled()) LOG.debug("Session {} evict on exit", getId()); + if (LOG.isDebugEnabled()) + LOG.debug("Session {} evict on exit", getId()); } else { - //want to evict on idle: timer is lesser of the session's maxInactive and eviction timeout + // want to evict on idle: timer is lesser of the session's + // maxInactive and eviction timeout _sessionInactivityTimer.setTimeout(Math.min(maxInactive, TimeUnit.SECONDS.toMillis(evictionPolicy))); - if (LOG.isDebugEnabled()) LOG.debug("Session {} timer set to lesser of maxInactive={} and inactivityEvict={}", getId(), maxInactive, evictionPolicy); + if (LOG.isDebugEnabled()) + LOG.debug("Session {} timer set to lesser of maxInactive={} and inactivityEvict={}", getId(), maxInactive, evictionPolicy); } } } } - - /** + /** * @see javax.servlet.http.HttpSession#getMaxInactiveInterval() */ @Override @@ -574,11 +593,11 @@ public class Session implements SessionHandler.SessionIf try (Lock lock = _lock.lock()) { long maxInactiveMs = _sessionData.getMaxInactiveMs(); - return (int)(maxInactiveMs < 0 ? -1 : maxInactiveMs/1000); + return (int) (maxInactiveMs < 0 ? -1 : maxInactiveMs / 1000); } } - /** + /** * @see javax.servlet.http.HttpSession#getSessionContext() */ @Override @@ -589,13 +608,12 @@ public class Session implements SessionHandler.SessionIf return SessionHandler.__nullSessionContext; } - + public SessionHandler getSessionHandler() { return _handler; } - - + /* ------------------------------------------------------------- */ /** * Check that the session can be modified. @@ -603,50 +621,68 @@ public class Session implements SessionHandler.SessionIf * @throws IllegalStateException if the session is invalid */ protected void checkValidForWrite() throws IllegalStateException - { + { checkLocked(); if (_state == State.INVALID) - throw new IllegalStateException("Not valid for write: id="+_sessionData.getId()+" created="+_sessionData.getCreated()+" accessed="+_sessionData.getAccessed()+" lastaccessed="+_sessionData.getLastAccessed()+" maxInactiveMs="+_sessionData.getMaxInactiveMs()+" expiry="+_sessionData.getExpiry()); - + throw new IllegalStateException("Not valid for write: id=" + _sessionData.getId() + + " created=" + + _sessionData.getCreated() + + " accessed=" + + _sessionData.getAccessed() + + " lastaccessed=" + + _sessionData.getLastAccessed() + + " maxInactiveMs=" + + _sessionData.getMaxInactiveMs() + + " expiry=" + + _sessionData.getExpiry()); + if (_state == State.INVALIDATING) - return; //in the process of being invalidated, listeners may try to remove attributes - + return; // in the process of being invalidated, listeners may try to + // remove attributes + if (!isResident()) - throw new IllegalStateException("Not valid for write: id="+_sessionData.getId()+" not resident"); + throw new IllegalStateException("Not valid for write: id=" + _sessionData.getId() + " not resident"); } - - + /* ------------------------------------------------------------- */ /** * Chech that the session data can be read. * * @throws IllegalStateException if the session is invalid */ - protected void checkValidForRead () throws IllegalStateException + protected void checkValidForRead() throws IllegalStateException { checkLocked(); - + if (_state == State.INVALID) - throw new IllegalStateException("Invalid for read: id="+_sessionData.getId()+" created="+_sessionData.getCreated()+" accessed="+_sessionData.getAccessed()+" lastaccessed="+_sessionData.getLastAccessed()+" maxInactiveMs="+_sessionData.getMaxInactiveMs()+" expiry="+_sessionData.getExpiry()); - + throw new IllegalStateException("Invalid for read: id=" + _sessionData.getId() + + " created=" + + _sessionData.getCreated() + + " accessed=" + + _sessionData.getAccessed() + + " lastaccessed=" + + _sessionData.getLastAccessed() + + " maxInactiveMs=" + + _sessionData.getMaxInactiveMs() + + " expiry=" + + _sessionData.getExpiry()); + if (_state == State.INVALIDATING) return; - + if (!isResident()) - throw new IllegalStateException("Invalid for read: id="+_sessionData.getId()+" not resident"); + throw new IllegalStateException("Invalid for read: id=" + _sessionData.getId() + " not resident"); } - - + /* ------------------------------------------------------------- */ - protected void checkLocked () - throws IllegalStateException + protected void checkLocked() throws IllegalStateException { if (!_lock.isLocked()) throw new IllegalStateException("Session not locked"); } - /** + /** * @see javax.servlet.http.HttpSession#getAttribute(java.lang.String) */ @Override @@ -659,7 +695,7 @@ public class Session implements SessionHandler.SessionIf } } - /** + /** * @see javax.servlet.http.HttpSession#getValue(java.lang.String) */ @Override @@ -667,12 +703,12 @@ public class Session implements SessionHandler.SessionIf public Object getValue(String name) { try (Lock lock = _lock.lock()) - { + { return _sessionData.getAttribute(name); } } - /** + /** * @see javax.servlet.http.HttpSession#getAttributeNames() */ @Override @@ -682,7 +718,7 @@ public class Session implements SessionHandler.SessionIf { checkValidForRead(); final Iterator itor = _sessionData.getKeys().iterator(); - return new Enumeration () + return new Enumeration() { @Override @@ -702,8 +738,6 @@ public class Session implements SessionHandler.SessionIf } - - /* ------------------------------------------------------------ */ public int getAttributes() { @@ -711,8 +745,6 @@ public class Session implements SessionHandler.SessionIf } - - /* ------------------------------------------------------------ */ public Set getNames() { @@ -743,97 +775,145 @@ public class Session implements SessionHandler.SessionIf } /* ------------------------------------------------------------- */ - /** - * @see javax.servlet.http.HttpSession#setAttribute(java.lang.String, java.lang.Object) + /** + * @see javax.servlet.http.HttpSession#setAttribute(java.lang.String, + * java.lang.Object) */ @Override public void setAttribute(String name, Object value) { - Object old=null; + Object old = null; try (Lock lock = _lock.lock()) { - //if session is not valid, don't accept the set + // if session is not valid, don't accept the set checkValidForWrite(); - old=_sessionData.setAttribute(name,value); + old = _sessionData.setAttribute(name, value); } if (value == null && old == null) - return; //if same as remove attribute but attribute was already removed, no change + return; // if same as remove attribute but attribute was already + // removed, no change callSessionAttributeListeners(name, value, old); } - - - + /* ------------------------------------------------------------- */ - /** - * @see javax.servlet.http.HttpSession#putValue(java.lang.String, java.lang.Object) + /** + * @see javax.servlet.http.HttpSession#putValue(java.lang.String, + * java.lang.Object) */ @Override @Deprecated public void putValue(String name, Object value) { - setAttribute(name,value); + setAttribute(name, value); } - - - + /* ------------------------------------------------------------- */ - /** + /** * @see javax.servlet.http.HttpSession#removeAttribute(java.lang.String) */ @Override public void removeAttribute(String name) { - setAttribute(name, null); + setAttribute(name, null); } - - - + /* ------------------------------------------------------------- */ - /** + /** * @see javax.servlet.http.HttpSession#removeValue(java.lang.String) */ @Override @Deprecated public void removeValue(String name) { - setAttribute(name, null); + setAttribute(name, null); } /* ------------------------------------------------------------ */ - /** Force a change to the id of a session. + /** + * Force a change to the id of a session. * * @param request the Request associated with the call to change id. */ public void renewId(HttpServletRequest request) { if (_handler == null) - throw new IllegalStateException ("No session manager for session "+ _sessionData.getId()); - + throw new IllegalStateException("No session manager for session " + _sessionData.getId()); + String id = null; String extendedId = null; try (Lock lock = _lock.lock()) { - checkValidForWrite(); //don't renew id on a session that is not valid - id = _sessionData.getId(); //grab the values as they are now + while (true) + { + switch (_state) + { + case INVALID: + case INVALIDATING: + throw new IllegalStateException(); + + case CHANGING: + try + { + _stateChangeCompleted.await(); + } + catch (InterruptedException e) + { + throw new RuntimeException(e); + } + continue; + + case VALID: + _state = State.CHANGING; + break; + default: + throw new IllegalStateException(); + } + break; + } + + id = _sessionData.getId(); // grab the values as they are now extendedId = getExtendedId(); } - - String newId = _handler._sessionIdManager.renewSessionId(id, extendedId, request); + + + String newId = _handler._sessionIdManager.renewSessionId(id, extendedId, request); + try (Lock lock = _lock.lock()) { - checkValidForWrite(); - _sessionData.setId(newId); - setExtendedId(_handler._sessionIdManager.getExtendedId(newId, request)); + switch (_state) + { + case CHANGING: + if (id.equals(newId)) + throw new IllegalStateException("Unable to change session id"); + + // this shouldn't be necessary to do here EXCEPT that when a + // null session cache is + // used, a new Session object will be created during the + // call to renew, so this + // Session object will not have been modified. + _sessionData.setId(newId); + setExtendedId(_handler._sessionIdManager.getExtendedId(newId, request)); + setIdChanged(true); + + _state = State.VALID; + _stateChangeCompleted.signalAll(); + break; + + case INVALID: + case INVALIDATING: + throw new IllegalStateException("Session invalid"); + + default: + throw new IllegalStateException(); + } } - setIdChanged(true); } - - + /* ------------------------------------------------------------- */ - /** Called by users to invalidate a session, or called by the - * access method as a request enters the session if the session - * has expired, or called by manager as a result of scavenger - * expiring session + /** + * Called by users to invalidate a session, or called by the access method + * as a request enters the session if the session has expired, or called by + * manager as a result of scavenger expiring session * * @see javax.servlet.http.HttpSession#invalidate() */ @@ -841,16 +921,28 @@ public class Session implements SessionHandler.SessionIf public void invalidate() { if (_handler == null) - throw new IllegalStateException ("No session manager for session "+ _sessionData.getId()); + throw new IllegalStateException("No session manager for session " + _sessionData.getId()); boolean result = beginInvalidate(); try { - //if the session was not already invalid, or in process of being invalidated, do invalidate + // if the session was not already invalid, or in process of being + // invalidated, do invalidate if (result) { - //tell id mgr to remove session from all contexts + try + { + // do the invalidation + _handler.callSessionDestroyedListeners(this); + } + finally + { + // call the attribute removed listeners and finally mark it + // as invalid + finishInvalidate(); + } + // tell id mgr to remove sessions with same id from all contexts _handler.getSessionIdManager().invalidateAll(_sessionData.getId()); } } @@ -861,24 +953,27 @@ public class Session implements SessionHandler.SessionIf } /* ------------------------------------------------------------- */ - /** Grab the lock on the session + /** + * Grab the lock on the session + * * @return the lock */ - public Lock lock () + public Lock lock() { return _lock.lock(); } - - + /* ------------------------------------------------------------- */ - /** Grab the lock on the session if it isn't locked already + /** + * Grab the lock on the session if it isn't locked already + * * @return the lock */ - public Lock lockIfNotHeld () + public Lock lockIfNotHeld() { return _lock.lock(); } - + /* ------------------------------------------------------------- */ /** * @return true if the session is not already invalid or being invalidated. @@ -886,29 +981,54 @@ public class Session implements SessionHandler.SessionIf protected boolean beginInvalidate() { boolean result = false; - + try (Lock lock = _lock.lock()) { - switch (_state) + + while (true) { - case INVALID: + switch (_state) { - throw new IllegalStateException(); //spec does not allow invalidate of already invalid session - } - case VALID: - { - //only first change from valid to invalidating should be actionable - result = true; - _state = State.INVALIDATING; - break; - } - default: - { - if (LOG.isDebugEnabled()) LOG.debug("Session {} already being invalidated", _sessionData.getId()); + case INVALID: + { + throw new IllegalStateException(); // spec does not + // allow invalidate + // of already invalid + // session + } + case INVALIDATING: + { + if (LOG.isDebugEnabled()) + LOG.debug("Session {} already being invalidated", _sessionData.getId()); + break; + } + case CHANGING: + { + try + { + _stateChangeCompleted.await(); + } + catch (InterruptedException e) + { + throw new RuntimeException(e); + } + continue; + } + case VALID: + { + // only first change from valid to invalidating should + // be actionable + result = true; + _state = State.INVALIDATING; + break; + } + default: + throw new IllegalStateException(); } + break; } } - + return result; } @@ -918,16 +1038,15 @@ public class Session implements SessionHandler.SessionIf * * @throws IllegalStateException if no session manager can be find */ - @Deprecated + @Deprecated protected void doInvalidate() throws IllegalStateException { - finishInvalidate(); + finishInvalidate(); } - - + /* ------------------------------------------------------------- */ - /** Call HttpSessionAttributeListeners as part of invalidating - * a Session. + /** + * Call HttpSessionAttributeListeners as part of invalidating a Session. * * @throws IllegalStateException if no session manager can be find */ @@ -938,21 +1057,22 @@ public class Session implements SessionHandler.SessionIf try { if (LOG.isDebugEnabled()) - LOG.debug("invalidate {}",_sessionData.getId()); + LOG.debug("invalidate {}", _sessionData.getId()); if (_state == State.VALID || _state == State.INVALIDATING) { Set keys = null; do { keys = _sessionData.getKeys(); - for (String key:keys) + for (String key : keys) { - Object old=_sessionData.setAttribute(key,null); + Object old = _sessionData.setAttribute(key, null); + // if same as remove attribute but attribute was + // already removed, no change if (old == null) - return; //if same as remove attribute but attribute was already removed, no change + continue; callSessionAttributeListeners(key, null, old); } - } while (!keys.isEmpty()); } @@ -961,6 +1081,8 @@ public class Session implements SessionHandler.SessionIf { // mark as invalid _state = State.INVALID; + _handler.recordSessionTime(this); + _stateChangeCompleted.signalAll(); } } } @@ -975,29 +1097,26 @@ public class Session implements SessionHandler.SessionIf return _newSession; } } - - + /* ------------------------------------------------------------- */ public void setIdChanged(boolean changed) { try (Lock lock = _lock.lock()) { - _idChanged=changed; + _idChanged = changed; } } - - + /* ------------------------------------------------------------- */ - public boolean isIdChanged () + public boolean isIdChanged() { try (Lock lock = _lock.lock()) { return _idChanged; } } - - + /* ------------------------------------------------------------- */ @Override public Session getSession() @@ -1005,7 +1124,7 @@ public class Session implements SessionHandler.SessionIf // TODO why is this used return this; } - + /* ------------------------------------------------------------- */ protected SessionData getSessionData() { @@ -1013,7 +1132,7 @@ public class Session implements SessionHandler.SessionIf } /* ------------------------------------------------------------- */ - public void setResident (boolean resident) + public void setResident(boolean resident) { _resident = resident; @@ -1024,9 +1143,9 @@ public class Session implements SessionHandler.SessionIf } /* ------------------------------------------------------------- */ - public boolean isResident () + public boolean isResident() { return _resident; } - + } diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionCache.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionCache.java index 52344a3bce5..ecf99fd1ae3 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionCache.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionCache.java @@ -91,16 +91,41 @@ public interface SessionCache extends LifeCycle */ Session newSession (SessionData data); + /** + * Change the id of a session. + * + * This method has been superceded by the 4 arg renewSessionId method and + * should no longer be called. + * + * @param oldId the old id + * @param newId the new id + * @return the changed Session + * @throws Exception if anything went wrong + * @deprecated use + * {@link #renewSessionId(String oldId, String newId, String oldExtendedId, String newExtendedId)} + */ + @Deprecated + default Session renewSessionId(String oldId, String newId) throws Exception + { + return null; + } + /** * Change the id of a Session. * * @param oldId the current session id * @param newId the new session id + * @param oldExtendedId the current extended session id + * @param newExtendedId the new extended session id * @return the Session after changing its id * @throws Exception if any error occurred */ - Session renewSessionId (String oldId, String newId) throws Exception; + default Session renewSessionId(String oldId, String newId, String oldExtendedId, String newExtendedId) throws Exception + { + return renewSessionId(oldId, newId); + } + /** diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java index 5dde83b28b6..abcd95afb3a 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java @@ -18,6 +18,8 @@ package org.eclipse.jetty.server.session; +import static java.lang.Math.round; + import java.io.IOException; import java.util.Arrays; import java.util.Collections; @@ -65,8 +67,6 @@ import org.eclipse.jetty.util.thread.Locker.Lock; import org.eclipse.jetty.util.thread.ScheduledExecutorScheduler; import org.eclipse.jetty.util.thread.Scheduler; -import static java.lang.Math.round; - /* ------------------------------------------------------------ */ /** * SessionHandler. @@ -343,6 +343,60 @@ public class SessionHandler extends ScopedHandler _sessionListeners.clear(); _sessionIdListeners.clear(); } + + + /** + * Call the session lifecycle listeners + * @param session the session on which to call the lifecycle listeners + */ + protected void callSessionDestroyedListeners (Session session) + { + if (session == null) + return; + + if (_sessionListeners!=null) + { + HttpSessionEvent event=new HttpSessionEvent(session); + for (int i = _sessionListeners.size()-1; i>=0; i--) + { + _sessionListeners.get(i).sessionDestroyed(event); + } + } + } + + /** + * Call the session lifecycle listeners + * @param session the session on which to call the lifecycle listeners + */ + protected void callSessionCreatedListeners (Session session) + { + if (session == null) + return; + + if (_sessionListeners!=null) + { + HttpSessionEvent event=new HttpSessionEvent(session); + for (int i = _sessionListeners.size()-1; i>=0; i--) + { + _sessionListeners.get(i).sessionCreated(event); + } + } + } + + + protected void callSessionIdListeners (Session session, String oldId) + { + //inform the listeners + if (!_sessionIdListeners.isEmpty()) + { + HttpSessionEvent event = new HttpSessionEvent(session); + for (HttpSessionIdListener l:_sessionIdListeners) + { + l.sessionIdChanged(event, oldId); + } + } + } + /* ------------------------------------------------------------ */ /** @@ -793,15 +847,10 @@ public class SessionHandler extends ScopedHandler _sessionCache.put(id, session); _sessionsCreatedStats.increment(); - if (request.isSecure()) + if (request!=null && request.isSecure()) session.setAttribute(Session.SESSION_CREATED_SECURE, Boolean.TRUE); - if (_sessionListeners!=null) - { - HttpSessionEvent event=new HttpSessionEvent(session); - for (HttpSessionListener listener : _sessionListeners) - listener.sessionCreated(event); - } + callSessionCreatedListeners(session); return session; } @@ -1183,24 +1232,15 @@ public class SessionHandler extends ScopedHandler { try { - Session session = _sessionCache.renewSessionId (oldId, newId); //swap the id over + Session session = _sessionCache.renewSessionId (oldId, newId, oldExtendedId, newExtendedId); //swap the id over if (session == null) { //session doesn't exist on this context return; } - - session.setExtendedId(newExtendedId); //remember the extended id //inform the listeners - if (!_sessionIdListeners.isEmpty()) - { - HttpSessionEvent event = new HttpSessionEvent(session); - for (HttpSessionIdListener l:_sessionIdListeners) - { - l.sessionIdChanged(event, oldId); - } - } + callSessionIdListeners(session, oldId); } catch (Exception e) { @@ -1208,28 +1248,62 @@ public class SessionHandler extends ScopedHandler } } - + /** + * Record length of time session has been active. Called when the + * session is about to be invalidated. + * + * @param session the session whose time to record + */ + protected void recordSessionTime (Session session) + { + _sessionTimeStats.record(round((System.currentTimeMillis() - session.getSessionData().getCreated())/1000.0)); + } + /* ------------------------------------------------------------ */ /** - * Called when a session has expired. + * Called by SessionIdManager to remove a session that has been invalidated, + * either by this context or another context. Also called by + * SessionIdManager when a session has expired in either this context or + * another context. * - * @param id the id to invalidate + * @param id the session id to invalidate */ public void invalidate (String id) { + if (StringUtil.isBlank(id)) return; try - { - //remove the session and call the destroy listeners - Session session = removeSession(id, true); - + { + // Remove the Session object from the session cache and any backing + // data store + Session session = _sessionCache.delete(id); if (session != null) { - _sessionTimeStats.record(round((System.currentTimeMillis() - session.getSessionData().getCreated())/1000.0)); - session.finishInvalidate(); + //start invalidating if it is not already begun, and call the listeners + try + { + if (session.beginInvalidate()) + { + try + { + callSessionDestroyedListeners(session); + } + catch (Exception e) + { + LOG.warn("Session listener threw exception", e); + } + //call the attribute removed listeners and finally mark it as invalid + session.finishInvalidate(); + } + } + catch (IllegalStateException e) + { + if (LOG.isDebugEnabled()) LOG.debug("Session {} already invalid", session); + LOG.ignore(e); + } } } catch (Exception e) diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DefaultSessionCacheTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DefaultSessionCacheTest.java index a3436e56a98..9cb25844567 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DefaultSessionCacheTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DefaultSessionCacheTest.java @@ -34,7 +34,9 @@ import java.util.concurrent.TimeUnit; import javax.servlet.http.HttpSessionActivationListener; import javax.servlet.http.HttpSessionEvent; +import org.eclipse.jetty.server.Request; import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.server.SessionIdManager; import org.eclipse.jetty.servlet.ServletContextHandler; import org.junit.jupiter.api.Test; @@ -65,6 +67,100 @@ public class DefaultSessionCacheTest } + @Test + public void testRenewIdMultipleRequests() throws Exception + { + //Test that invalidation happens on ALL copies of the session that are in-use by requests + Server server = new Server(); + + SessionIdManager sessionIdManager = new DefaultSessionIdManager(server); + server.setSessionIdManager(sessionIdManager); + ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS); + context.setContextPath("/test"); + context.setServer(server); + context.getSessionHandler().setMaxInactiveInterval((int)TimeUnit.DAYS.toSeconds(1)); + context.getSessionHandler().setSessionIdManager(sessionIdManager); + + DefaultSessionCacheFactory cacheFactory = new DefaultSessionCacheFactory(); + cacheFactory.setSaveOnCreate(true); //ensures that a session is persisted as soon as it is created + + DefaultSessionCache cache = (DefaultSessionCache)cacheFactory.getSessionCache(context.getSessionHandler()); + + TestSessionDataStore store = new TestSessionDataStore(); + cache.setSessionDataStore(store); + context.getSessionHandler().setSessionCache(cache); + TestHttpSessionListener listener = new TestHttpSessionListener(); + context.getSessionHandler().addEventListener(listener); + + server.setHandler(context); + try + { + server.start(); + + //create a new session + Session s = (Session)context.getSessionHandler().newHttpSession(null); + String id = s.getId(); + context.getSessionHandler().access(s, false); //simulate accessing the request + context.getSessionHandler().complete(s); //simulate completing the request + + //make 1st request + final Session session = context.getSessionHandler().getSession(id); //get the session again + assertNotNull(session); + context.getSessionHandler().access(session, false); //simulate accessing the request + + + + //make 2nd request + final Session session2 = context.getSessionHandler().getSession(id); //get the session again + context.getSessionHandler().access(session2, false); //simulate accessing the request + assertNotNull(session2); + assertTrue(session == session2); + + + + Thread t2 = new Thread(new Runnable() + { + @Override + public void run() + { + System.err.println("Starting session id renewal"); + session2.renewId(new Request(null,null)); + System.err.println("Finished session id renewal"); + } + }); + t2.start(); + + + + Thread t = new Thread(new Runnable() + { + + @Override + public void run() + { + System.err.println("Starting invalidation"); + try{Thread.sleep(1000L);}catch (Exception e) {e.printStackTrace();} + session.invalidate(); + System.err.println("Finished invalidation"); + } + } + ); + t.start(); + + t.join(); + t2.join(); + + } + finally + { + server.stop(); + } + } + + + + + /** * Test sessions are saved when shutdown with a store. @@ -180,7 +276,7 @@ public class DefaultSessionCacheTest cache.put("1234", session); assertTrue(cache.contains("1234")); - cache.renewSessionId("1234", "5678"); + cache.renewSessionId("1234", "5678", "1234.foo", "5678.foo"); assertTrue(cache.contains("5678")); assertFalse(cache.contains("1234")); From 92317a7bb41b25121bf09ef2d90947c79d8e71d6 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Fri, 23 Nov 2018 16:54:36 +0100 Subject: [PATCH 188/931] Issue #3132 improve dump readability fixed tests Signed-off-by: Greg Wilkins --- ...umptTest.java => ClassLoaderDumpTest.java} | 48 +++---- .../component/ContainerLifeCycleTest.java | 118 +++++++++--------- 2 files changed, 83 insertions(+), 83 deletions(-) rename jetty-server/src/test/java/org/eclipse/jetty/server/{ClassLoaderDumptTest.java => ClassLoaderDumpTest.java} (74%) diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ClassLoaderDumptTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ClassLoaderDumpTest.java similarity index 74% rename from jetty-server/src/test/java/org/eclipse/jetty/server/ClassLoaderDumptTest.java rename to jetty-server/src/test/java/org/eclipse/jetty/server/ClassLoaderDumpTest.java index 3354d9511a6..3f8778511d6 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ClassLoaderDumptTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ClassLoaderDumpTest.java @@ -29,7 +29,7 @@ import java.net.URLClassLoader; import org.eclipse.jetty.util.component.Dumpable; import org.junit.jupiter.api.Test; -public class ClassLoaderDumptTest +public class ClassLoaderDumpTest { @Test public void testSimple() throws Exception @@ -48,8 +48,8 @@ public class ClassLoaderDumptTest StringBuilder out = new StringBuilder(); server.dump(out); String dump = out.toString(); - assertThat(dump,containsString("+-SimpleLoader")); - assertThat(dump,containsString("+>"+Server.class.getClassLoader())); + assertThat(dump,containsString("+- SimpleLoader")); + assertThat(dump,containsString("+> "+Server.class.getClassLoader())); } @Test @@ -69,9 +69,9 @@ public class ClassLoaderDumptTest StringBuilder out = new StringBuilder(); server.dump(out); String dump = out.toString(); - assertThat(dump,containsString("+-ParentedLoader")); - assertThat(dump,containsString("| +>"+Server.class.getClassLoader())); - assertThat(dump,containsString("+>"+Server.class.getClassLoader())); + assertThat(dump,containsString("+- ParentedLoader")); + assertThat(dump,containsString("| +> "+Server.class.getClassLoader())); + assertThat(dump,containsString("+> "+Server.class.getClassLoader())); } @Test @@ -98,10 +98,10 @@ public class ClassLoaderDumptTest StringBuilder out = new StringBuilder(); server.dump(out); String dump = out.toString(); - assertThat(dump,containsString("+-TopLoader")); - assertThat(dump,containsString("| +>MiddleLoader")); - assertThat(dump,containsString("| +>"+Server.class.getClassLoader())); - assertThat(dump,containsString("+>"+Server.class.getClassLoader())); + assertThat(dump,containsString("+- TopLoader")); + assertThat(dump,containsString("| +> MiddleLoader")); + assertThat(dump,containsString("| +> "+Server.class.getClassLoader())); + assertThat(dump,containsString("+> "+Server.class.getClassLoader())); } @Test @@ -122,10 +122,10 @@ public class ClassLoaderDumptTest StringBuilder out = new StringBuilder(); server.dump(out); String dump = out.toString(); - assertThat(dump,containsString("+-TopLoader")); - assertThat(dump,containsString("| +>DumpableClassLoader")); - assertThat(dump,not(containsString("| +>"+Server.class.getClassLoader()))); - assertThat(dump,containsString("+>"+Server.class.getClassLoader())); + assertThat(dump,containsString("+- TopLoader")); + assertThat(dump,containsString("| +> DumpableClassLoader")); + assertThat(dump,not(containsString("| +> "+Server.class.getClassLoader()))); + assertThat(dump,containsString("+> "+Server.class.getClassLoader())); } public static class DumpableClassLoader extends ClassLoader implements Dumpable @@ -184,15 +184,15 @@ public class ClassLoaderDumptTest server.dump(out); String dump = out.toString(); // System.err.println(dump); - assertThat(dump,containsString("+-TopLoader")); - assertThat(dump,containsString("| | +>file:/ONE")); - assertThat(dump,containsString("| | +>file:/TWO")); - assertThat(dump,containsString("| | +>file:/THREE")); - assertThat(dump,containsString("| +>MiddleLoader")); - assertThat(dump,containsString("| | +>file:/one")); - assertThat(dump,containsString("| | +>file:/two")); - assertThat(dump,containsString("| | +>file:/three")); - assertThat(dump,containsString("| +>"+Server.class.getClassLoader())); - assertThat(dump,containsString("+>"+Server.class.getClassLoader())); + assertThat(dump,containsString("+- TopLoader")); + assertThat(dump,containsString("| | +> file:/ONE")); + assertThat(dump,containsString("| | +> file:/TWO")); + assertThat(dump,containsString("| | +> file:/THREE")); + assertThat(dump,containsString("| +> MiddleLoader")); + assertThat(dump,containsString("| | +> file:/one")); + assertThat(dump,containsString("| | +> file:/two")); + assertThat(dump,containsString("| | +> file:/three")); + assertThat(dump,containsString("| +> "+Server.class.getClassLoader())); + assertThat(dump,containsString("+> "+Server.class.getClassLoader())); } } diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/component/ContainerLifeCycleTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/component/ContainerLifeCycleTest.java index 1ad73ec321f..019af01bd25 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/component/ContainerLifeCycleTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/component/ContainerLifeCycleTest.java @@ -215,59 +215,59 @@ public class ContainerLifeCycleTest a0.addBean(aa0); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, "+?ContainerLife"); + dump = check(dump, "+? ContainerLife"); ContainerLifeCycle aa1 = new ContainerLifeCycle(); a0.addBean(aa1); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, "+?ContainerLife"); - dump = check(dump, "+?ContainerLife"); + dump = check(dump, "+? ContainerLife"); + dump = check(dump, "+? ContainerLife"); dump = check(dump, ""); ContainerLifeCycle aa2 = new ContainerLifeCycle(); a0.addBean(aa2, false); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, "+?ContainerLife"); - dump = check(dump, "+?ContainerLife"); - dump = check(dump, "+~ContainerLife"); + dump = check(dump, "+? ContainerLife"); + dump = check(dump, "+? ContainerLife"); + dump = check(dump, "+~ ContainerLife"); dump = check(dump, ""); aa1.start(); a0.start(); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, "+=ContainerLife"); - dump = check(dump, "+~ContainerLife"); - dump = check(dump, "+~ContainerLife"); + dump = check(dump, "+= ContainerLife"); + dump = check(dump, "+~ ContainerLife"); + dump = check(dump, "+~ ContainerLife"); dump = check(dump, ""); a0.manage(aa1); a0.removeBean(aa2); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, "+=ContainerLife"); - dump = check(dump, "+=ContainerLife"); + dump = check(dump, "+= ContainerLife"); + dump = check(dump, "+= ContainerLife"); dump = check(dump, ""); ContainerLifeCycle aaa0 = new ContainerLifeCycle(); aa0.addBean(aaa0); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, "+=ContainerLife"); - dump = check(dump, "| +~Container"); - dump = check(dump, "+=ContainerLife"); + dump = check(dump, "+= ContainerLife"); + dump = check(dump, "| +~ Container"); + dump = check(dump, "+= ContainerLife"); dump = check(dump, ""); ContainerLifeCycle aa10 = new ContainerLifeCycle(); aa1.addBean(aa10, true); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, "+=ContainerLife"); - dump = check(dump, "| +~Container"); - dump = check(dump, "+=ContainerLife"); - dump = check(dump, " +=Container"); + dump = check(dump, "+= ContainerLife"); + dump = check(dump, "| +~ Container"); + dump = check(dump, "+= ContainerLife"); + dump = check(dump, " += Container"); dump = check(dump, ""); final ContainerLifeCycle a1 = new ContainerLifeCycle(); @@ -288,62 +288,62 @@ public class ContainerLifeCycleTest dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, "+=ContainerLife"); - dump = check(dump, "| +~Container"); - dump = check(dump, "+=ContainerLife"); - dump = check(dump, "| +=Container"); - dump = check(dump, "+=ContainerLife"); - dump = check(dump, " +>java.util.Arrays$ArrayList"); - dump = check(dump, " | +:ContainerLifeCycle"); - dump = check(dump, " | +:ContainerLifeCycle"); - dump = check(dump, " +>java.util.Arrays$ArrayList"); - dump = check(dump, " +:ContainerLifeCycle"); - dump = check(dump, " +:ContainerLifeCycle"); + dump = check(dump, "+= ContainerLife"); + dump = check(dump, "| +~ Container"); + dump = check(dump, "+= ContainerLife"); + dump = check(dump, "| += Container"); + dump = check(dump, "+= ContainerLife"); + dump = check(dump, " +> java.util.Arrays$ArrayList"); + dump = check(dump, " | +: ContainerLifeCycle"); + dump = check(dump, " | +: ContainerLifeCycle"); + dump = check(dump, " +> java.util.Arrays$ArrayList"); + dump = check(dump, " +: ContainerLifeCycle"); + dump = check(dump, " +: ContainerLifeCycle"); dump = check(dump, ""); a2.addBean(aa0, true); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, "+=ContainerLife"); - dump = check(dump, "| +~Container"); - dump = check(dump, "+=ContainerLife"); - dump = check(dump, "| +=Container"); - dump = check(dump, "+=ContainerLife"); - dump = check(dump, " +>java.util.Arrays$ArrayList"); - dump = check(dump, " | +:ContainerLifeCycle"); - dump = check(dump, " | +:ContainerLifeCycle"); - dump = check(dump, " | +=Conta"); - dump = check(dump, " | +~C"); - dump = check(dump, " +>java.util.Arrays$ArrayList"); - dump = check(dump, " +:ContainerLifeCycle"); - dump = check(dump, " +:ContainerLifeCycle"); + dump = check(dump, "+= ContainerLife"); + dump = check(dump, "| +~ Container"); + dump = check(dump, "+= ContainerLife"); + dump = check(dump, "| += Container"); + dump = check(dump, "+= ContainerLife"); + dump = check(dump, " +> java.util.Arrays$ArrayList"); + dump = check(dump, " | +: ContainerLifeCycle"); + dump = check(dump, " | +: ContainerLifeCycle"); + dump = check(dump, " | += Conta"); + dump = check(dump, " | +~ C"); + dump = check(dump, " +> java.util.Arrays$ArrayList"); + dump = check(dump, " +: ContainerLifeCycle"); + dump = check(dump, " +: ContainerLifeCycle"); dump = check(dump, ""); a2.unmanage(aa0); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, "+=ContainerLife"); - dump = check(dump, "| +~Container"); - dump = check(dump, "+=ContainerLife"); - dump = check(dump, "| +=Container"); - dump = check(dump, "+=ContainerLife"); - dump = check(dump, " +>java.util.Arrays$ArrayList"); - dump = check(dump, " | +:ContainerLifeCycle"); - dump = check(dump, " | +:ContainerLifeCycle"); - dump = check(dump, " | +~Conta"); - dump = check(dump, " +>java.util.Arrays$ArrayList"); - dump = check(dump, " +:ContainerLifeCycle"); - dump = check(dump, " +:ContainerLifeCycle"); + dump = check(dump, "+= ContainerLife"); + dump = check(dump, "| +~ Container"); + dump = check(dump, "+= ContainerLife"); + dump = check(dump, "| += Container"); + dump = check(dump, "+= ContainerLife"); + dump = check(dump, " +> java.util.Arrays$ArrayList"); + dump = check(dump, " | +: ContainerLifeCycle"); + dump = check(dump, " | +: ContainerLifeCycle"); + dump = check(dump, " | +~ Conta"); + dump = check(dump, " +> java.util.Arrays$ArrayList"); + dump = check(dump, " +: ContainerLifeCycle"); + dump = check(dump, " +: ContainerLifeCycle"); dump = check(dump, ""); a0.unmanage(aa); dump = trim(a0.dump()); dump = check(dump, "ContainerLifeCycl"); - dump = check(dump, "+=ContainerLife"); - dump = check(dump, "| +~Container"); - dump = check(dump, "+=ContainerLife"); - dump = check(dump, "| +=Container"); - dump = check(dump, "+~ContainerLife"); + dump = check(dump, "+= ContainerLife"); + dump = check(dump, "| +~ Container"); + dump = check(dump, "+= ContainerLife"); + dump = check(dump, "| += Container"); + dump = check(dump, "+~ ContainerLife"); dump = check(dump, ""); } From 7c0ea57923cf06942319fec7a9424511636377f4 Mon Sep 17 00:00:00 2001 From: Lachlan Roberts Date: Sat, 24 Nov 2018 10:28:57 +0100 Subject: [PATCH 189/931] Issue #113 - CustomRequestLog terminology refactor replaced terminology for addresses and ports to use client and server referring to the logical connection and local and remote referring to the physical connection to the first hop finished implementing tests in CustomRequestLogTest otherwise disabled tests which will be verified manually instead Signed-off-by: Lachlan Roberts --- .../jetty/server/CustomRequestLog.java | 245 +++++++++------- .../server/handler/CustomRequestLogTest.java | 269 +++++++++--------- 2 files changed, 283 insertions(+), 231 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java index 098dc1b4200..2896f9bbaaa 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java @@ -57,6 +57,22 @@ import static java.lang.invoke.MethodType.methodType; The percent sign. + + + + + %{format}a + + Client IP address of the request. + Valid formats are {server, client, local, remote} + + where server and client are the logical addresses + where local and remote are the physical addresses + + + + + %a Client IP address of the request. @@ -72,6 +88,19 @@ import static java.lang.invoke.MethodType.methodType; Local IP-address. + + %h + Remote hostname. Will log a dotted-string form of the IP if the Hostname cannot be resolved. + + + + %v + + todo this is now %{server}a + The canonical ServerName of the server serving the request. + + + %B Size of response in bytes, excluding HTTP headers. @@ -105,11 +134,6 @@ import static java.lang.invoke.MethodType.methodType; Filename. - - %h - Remote hostname. Will log a dotted-string form of the IP if the Hostname cannot be resolved. - - %H The request protocol. @@ -139,13 +163,18 @@ import static java.lang.invoke.MethodType.methodType; %p - The canonical port of the server serving the request. + The canonical port of the server serving the request. + todo merge this with below + - %{format}p The canonical port of the server serving the request, or the server's actual port, or the client's actual port. - Valid formats are canonical, local, or remote. + Valid formats are canonical, local, or remote. + todo update this documenatation + server, client logical + local, remote physical + @@ -203,11 +232,6 @@ import static java.lang.invoke.MethodType.methodType; The URL path requested, not including any query string. - - %v - The canonical ServerName of the server serving the request. - - %X @@ -578,26 +602,35 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog case "a": { String method; - - if (arg != null) + switch (arg) { - if (!arg.equals("c")) - throw new IllegalArgumentException("Argument of %a which is not 'c'"); + case "server": + method = "logServerHost"; + break; - method = "logConnectionIP"; - } - else - { - method = "logClientIP"; + case "client": + method = "logClientHost"; + break; + + case "local": + method = "logLocalHost"; + break; + + case "remote": + method = "logRemoteHost"; + break; + + default: + throw new IllegalArgumentException("Invalid arg for %a"); } specificHandle = MethodHandles.lookup().findStatic(CustomRequestLog.class, method, logType); break; } - case "A": + case "h": { - String method = "logLocalIP"; + String method = "logRemoteHostName"; specificHandle = MethodHandles.lookup().findStatic(CustomRequestLog.class, method, logType); break; } @@ -616,6 +649,38 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog break; } + case "I": + { + String method; + if (arg == null || arg.isEmpty()) + method = "logBytesReceived"; + else if (arg.equals("CLF")) + { + method = "logBytesReceivedCLF"; + } + else + throw new IllegalArgumentException("Invalid argument for %I"); + + specificHandle = MethodHandles.lookup().findStatic(CustomRequestLog.class, method, logType); + break; + } + + case "O": + { + String method; + if (arg == null || arg.isEmpty()) + method = "logBytesSent"; + else if (arg.equals("CLF")) + { + method = "logBytesSentCLF"; + } + else + throw new IllegalArgumentException("Invalid argument for %I"); + + specificHandle = MethodHandles.lookup().findStatic(CustomRequestLog.class, method, logType); + break; + } + case "C": { if (arg == null || arg.isEmpty()) @@ -657,12 +722,6 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog break; } - case "h": - { - String method = "logRemoteHostName"; - specificHandle = MethodHandles.lookup().findStatic(CustomRequestLog.class, method, logType); - break; - } case "H": { @@ -709,14 +768,16 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog case "p": { - if (arg == null || arg.isEmpty()) - arg = "canonical"; - String method; switch (arg) { - case "canonical": - method = "logCanonicalPort"; + + case "server": + method = "logServerPort"; + break; + + case "client": + method = "logClientPort"; break; case "local": @@ -822,13 +883,6 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog break; } - case "v": - { - String method = "logServerName"; - specificHandle = MethodHandles.lookup().findStatic(CustomRequestLog.class, method, logType); - break; - } - case "X": { String method = "logConnectionStatus"; @@ -836,20 +890,6 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog break; } - case "I": - { - String method = "logBytesReceived"; - specificHandle = MethodHandles.lookup().findStatic(CustomRequestLog.class, method, logType); - break; - } - - case "O": - { - String method = "logBytesSent"; - specificHandle = MethodHandles.lookup().findStatic(CustomRequestLog.class, method, logType); - break; - } - case "S": { String method = "logBytesTransferred"; @@ -906,19 +946,44 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog { } - private static void logClientIP(StringBuilder b, Request request, Response response) + private static void logServerHost(StringBuilder b, Request request, Response response) { - append(b, request.getRemoteAddr()); + append(b, request.getServerName()); } - private static void logConnectionIP(StringBuilder b, Request request, Response response) + private static void logClientHost(StringBuilder b, Request request, Response response) + { + append(b, request.getRemoteHost()); + } + + private static void logLocalHost(StringBuilder b, Request request, Response response) + { + append(b, request.getHttpChannel().getEndPoint().getLocalAddress().getAddress().getHostAddress()); + } + + private static void logRemoteHost(StringBuilder b, Request request, Response response) { append(b, request.getHttpChannel().getEndPoint().getRemoteAddress().getAddress().getHostAddress()); } - private static void logLocalIP(StringBuilder b, Request request, Response response) + private static void logServerPort(StringBuilder b, Request request, Response response) { - append(b, request.getLocalAddr()); + b.append(request.getServerPort()); + } + + private static void logClientPort(StringBuilder b, Request request, Response response) + { + b.append(request.getRemotePort()); + } + + private static void logLocalPort(StringBuilder b, Request request, Response response) + { + b.append(request.getHttpChannel().getEndPoint().getLocalAddress().getPort()); + } + + private static void logRemotePort(StringBuilder b, Request request, Response response) + { + b.append(request.getHttpChannel().getEndPoint().getRemoteAddress().getPort()); } private static void logResponseSize(StringBuilder b, Request request, Response response) @@ -936,6 +1001,23 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog b.append(written); } + private static void logBytesSent(StringBuilder b, Request request, Response response) + { + b.append(response.getHttpChannel().getBytesWritten()); + } + + private static void logBytesReceived(StringBuilder b, Request request, Response response) + { + //todo this be content received rather than consumed + b.append(request.getHttpInput().getContentConsumed()); + } + + private static void logBytesTransferred(StringBuilder b, Request request, Response response) + { + b.append(request.getHttpInput().getContentConsumed() + response.getHttpOutput().getWritten()); + } + + private static void logRequestCookie(String arg, StringBuilder b, Request request, Response response) { for (Cookie c : request.getCookies()) @@ -987,11 +1069,6 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog } } - private static void logRemoteHostName(StringBuilder b, Request request, Response response) - { - append(b, request.getRemoteHost()); - } - private static void logRequestProtocol(StringBuilder b, Request request, Response response) { append(b, request.getProtocol()); @@ -1021,21 +1098,6 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog append(b, response.getHeader(arg)); } - private static void logCanonicalPort(StringBuilder b, Request request, Response response) - { - b.append(request.getServerPort()); - } - - private static void logLocalPort(StringBuilder b, Request request, Response response) - { - b.append(request.getLocalPort()); - } - - private static void logRemotePort(StringBuilder b, Request request, Response response) - { - b.append(request.getRemotePort()); - } - private static void logQueryString(StringBuilder b, Request request, Response response) { append(b, "?"+request.getQueryString()); @@ -1101,32 +1163,11 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog append(b, request.getRequestURI()); } - private static void logServerName(StringBuilder b, Request request, Response response) - { - append(b, request.getServerName()); - } - private static void logConnectionStatus(StringBuilder b, Request request, Response response) { b.append(request.getHttpChannel().isResponseCompleted() ? (request.getHttpChannel().isPersistent() ? '+' : '-') : 'X'); } - private static void logBytesReceived(StringBuilder b, Request request, Response response) - { - //todo should this be content received rather than consumed - b.append(request.getHttpInput().getContentConsumed()); - } - - private static void logBytesSent(StringBuilder b, Request request, Response response) - { - //todo difference between this and logResponseSize - b.append(response.getHttpOutput().getWritten()); - } - - private static void logBytesTransferred(StringBuilder b, Request request, Response response) - { - b.append(request.getHttpInput().getContentConsumed() + response.getHttpOutput().getWritten()); - } private static void logRequestTrailer(String arg, StringBuilder b, Request request, Response response) { diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java index dedf48241f2..eb8a22096f4 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java @@ -19,6 +19,14 @@ package org.eclipse.jetty.server.handler; import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; +import java.net.InetAddress; +import java.net.NetworkInterface; +import java.net.Socket; +import java.net.URI; +import java.nio.charset.StandardCharsets; +import java.util.Enumeration; import java.util.concurrent.BlockingQueue; import java.util.concurrent.TimeUnit; import javax.servlet.ServletException; @@ -27,14 +35,18 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.eclipse.jetty.server.CustomRequestLog; +import org.eclipse.jetty.server.ForwardedRequestCustomizer; +import org.eclipse.jetty.server.HttpConnectionFactory; import org.eclipse.jetty.server.LocalConnector; import org.eclipse.jetty.server.Request; import org.eclipse.jetty.server.RequestLog; import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.server.ServerConnector; import org.eclipse.jetty.util.BlockingArrayQueue; import org.eclipse.jetty.util.DateCache; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; import static org.hamcrest.MatcherAssert.assertThat; @@ -42,7 +54,7 @@ import static org.hamcrest.Matchers.containsString; import static org.hamcrest.Matchers.greaterThan; import static org.hamcrest.Matchers.is; import static org.hamcrest.Matchers.lessThanOrEqualTo; -import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.hamcrest.Matchers.not; import static org.junit.jupiter.api.Assertions.fail; public class CustomRequestLogTest @@ -52,6 +64,8 @@ public class CustomRequestLogTest LocalConnector _connector; BlockingQueue _entries = new BlockingArrayQueue<>(); BlockingQueue requestTimes = new BlockingArrayQueue<>(); + ServerConnector _serverConnector; + URI _serverURI; @BeforeEach @@ -59,16 +73,28 @@ public class CustomRequestLogTest { _server = new Server(); _connector = new LocalConnector(_server); + _serverConnector = new ServerConnector(_server); _server.addConnector(_connector); + _server.addConnector(_serverConnector); } void testHandlerServerStart(String formatString) throws Exception { + _serverConnector.setPort(0); + _serverConnector.getBean(HttpConnectionFactory.class).getHttpConfiguration().addCustomizer(new ForwardedRequestCustomizer()); TestRequestLogWriter writer = new TestRequestLogWriter(); _log = new CustomRequestLog(writer, formatString); _server.setRequestLog(_log); _server.setHandler(new TestHandler()); _server.start(); + + String host = _serverConnector.getHost(); + if (host == null) + { + host = "localhost"; + } + int localPort = _serverConnector.getLocalPort(); + _serverURI = new URI(String.format("http://%s:%d/",host,localPort)); } @AfterEach @@ -106,33 +132,58 @@ public class CustomRequestLogTest } @Test - public void testLogClientIP() throws Exception + public void testLogAddress() throws Exception { - testHandlerServerStart("ClientIP: %a"); + testHandlerServerStart("%{local}a|%{local}p|" + + "%{remote}a|%{remote}p|" + + "%{server}a|%{server}p|" + + "%{client}a|%{client}p"); - _connector.getResponse("GET / HTTP/1.0\n\n"); - String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); - } + Enumeration e = NetworkInterface.getNetworkInterfaces(); + while(e.hasMoreElements()) + { + NetworkInterface n = (NetworkInterface) e.nextElement(); + if (n.isLoopback()) + { + Enumeration ee = n.getInetAddresses(); + while (ee.hasMoreElements()) + { + InetAddress i = (InetAddress)ee.nextElement(); + try (Socket client = newSocket(i.getHostAddress(), _serverURI.getPort())) + { + OutputStream os = client.getOutputStream(); + String request = "GET / HTTP/1.0\n" + + "Host: webtide.com:1234\n" + + "Forwarded: For=10.1.2.3:1337\n" + + "\n\n"; + os.write(request.getBytes(StandardCharsets.ISO_8859_1)); + os.flush(); - @Test - public void testLogConnectionIP() throws Exception - { - testHandlerServerStart("ConnectionIP: %{c}a"); + String[] log = _entries.poll(5, TimeUnit.SECONDS).split("\\|"); + assertThat(log.length, is(8)); - _connector.getResponse("GET / HTTP/1.0\n\n"); - String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); - } + String localAddr = log[0]; + String localPort = log[1]; + String remoteAddr = log[2]; + String remotePort = log[3]; + String serverAddr = log[4]; + String serverPort = log[5]; + String clientAddr = log[6]; + String clientPort = log[7]; - @Test - public void testLogLocalIP() throws Exception - { - testHandlerServerStart("LocalIP: %A"); + assertThat(serverPort, is("1234")); + assertThat(clientPort, is("1337")); + assertThat(remotePort, not(clientPort)); + assertThat(localPort, not(serverPort)); - _connector.getResponse("GET / HTTP/1.0\n\n"); - String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); + assertThat(serverAddr, is("webtide.com")); + assertThat(clientAddr, is("10.1.2.3")); + assertThat(InetAddress.getByName(remoteAddr), is(client.getInetAddress())); + assertThat(InetAddress.getByName(localAddr), is(i)); + } + } + } + } } @Test @@ -163,10 +214,47 @@ public class CustomRequestLogTest assertThat(log, is("ResponseSize: 11")); } + @Test + public void testLogBytesSent() throws Exception + { + testHandlerServerStart("BytesSent: %O"); + + _connector.getResponse("GET / HTTP/1.0\necho: hello world\n\n"); + String log = _entries.poll(5,TimeUnit.SECONDS); + assertThat(log, is("BytesSent: 11")); + } + + @Test + public void testLogBytesReceived() throws Exception + { + testHandlerServerStart("BytesReceived: %I"); + + _connector.getResponse("GET / HTTP/1.0\n" + + "Content-Length: 11\n\n" + + "hello world"); + + String log = _entries.poll(5,TimeUnit.SECONDS); + assertThat(log, is("BytesReceived: 11")); + } + + @Test + public void testLogBytesTransferred() throws Exception + { + testHandlerServerStart("BytesTransferred: %S"); + + _connector.getResponse("GET / HTTP/1.0\n" + + "echo: hello world\n" + + "Content-Length: 11\n\n" + + "hello world"); + + String log = _entries.poll(5,TimeUnit.SECONDS); + assertThat(log, is("BytesTransferred: 22")); + } + @Test public void testLogRequestCookie() throws Exception { - testHandlerServerStart("RequestCookie: %{cookieName}C, %{cookie2}C, %{cookie3}C"); + testHandlerServerStart("RequestCookies: %{cookieName}C, %{cookie2}C, %{cookie3}C"); _connector.getResponse("GET / HTTP/1.0\nCookie: cookieName=cookieValue; cookie2=value2\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); @@ -193,24 +281,14 @@ public class CustomRequestLogTest assertThat(log, is("EnvironmentVar: " + System.getenv("JAVA_HOME") + "")); } - @Test - public void testLogRemoteHostName() throws Exception - { - testHandlerServerStart("RemoteHostName: %h"); - - _connector.getResponse("GET / HTTP/1.0\n\n"); - String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); - } - @Test public void testLogRequestProtocol() throws Exception { - testHandlerServerStart("RequestProtocol: %H"); + testHandlerServerStart("%H"); _connector.getResponse("GET / HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("Protocol: HTTP/1.0")); + assertThat(log, is("HTTP/1.0")); } @Test @@ -246,6 +324,7 @@ public class CustomRequestLogTest assertThat(_entries.poll(5,TimeUnit.SECONDS), is("KeepAliveRequests: 3")); } + @Disabled @Test public void testLogKeepAliveRequestsHttp2() throws Exception { @@ -273,45 +352,6 @@ public class CustomRequestLogTest assertThat(log, is("ResponseHeader: value1, value2, -")); } - @Test - public void testLogCanonicalPort() throws Exception - { - testHandlerServerStart("CanonicalPort: %p, %{canonical}p"); - - _connector.getResponse("GET / HTTP/1.0\n\n"); - String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); - } - - @Test - public void testLogLocalPort() throws Exception - { - testHandlerServerStart("LocalPort: %{local}p"); - - _connector.getResponse("GET / HTTP/1.0\n\n"); - String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); - } - - @Test - public void testLogRemotePort() throws Exception - { - testHandlerServerStart("RemotePort: %{remote}p"); - - _connector.getResponse("GET / HTTP/1.0\n\n"); - String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); - } - - @Test - public void testLogUnknownPort() throws Exception - { - assertThrows(IllegalArgumentException.class, ()-> - { - testHandlerServerStart("%{unknown}p"); - }); - } - @Test public void testLogQueryString() throws Exception { @@ -357,7 +397,7 @@ public class CustomRequestLogTest _connector.getResponse("GET / HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - long requestTime = requestTimes.poll(5,TimeUnit.SECONDS).longValue(); + long requestTime = requestTimes.poll(5,TimeUnit.SECONDS); DateCache dateCache = new DateCache(_log.DEFAULT_DATE_FORMAT, _log.getLogLocale(), _log.getLogTimeZone()); assertThat(log, is("RequestTime: ["+ dateCache.format(requestTime) +"]")); } @@ -369,7 +409,7 @@ public class CustomRequestLogTest _connector.getResponse("GET / HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - long requestTime = requestTimes.poll(5,TimeUnit.SECONDS).longValue(); + long requestTime = requestTimes.poll(5,TimeUnit.SECONDS); DateCache dateCache = new DateCache("EEE MMM dd HH:mm:ss zzz yyyy", _log.getLogLocale(), _log.getLogTimeZone()); assertThat(log, is("RequestTime: ["+ dateCache.format(requestTime) +"]")); } @@ -420,16 +460,6 @@ public class CustomRequestLogTest assertThat(Long.parseLong(log), lessThanOrEqualTo(TimeUnit.MILLISECONDS.toMicros(duration))); } - @Test - public void testLogRequestAuthentication() throws Exception - { - testHandlerServerStart("RequestAuthentication: %u"); - - _connector.getResponse("GET / HTTP/1.0\n\n"); - String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); - } - @Test public void testLogUrlRequestPath() throws Exception { @@ -440,16 +470,7 @@ public class CustomRequestLogTest assertThat(log, is("UrlRequestPath: /path")); } - @Test - public void testLogServerName() throws Exception - { - testHandlerServerStart("ServerName: %v"); - - _connector.getResponse("GET / HTTP/1.0\nHost: webtide.com\n\n"); - String log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("ServerName: webtide.com")); - } - + @Disabled @Test public void testLogConnectionStatus() throws Exception { @@ -460,56 +481,40 @@ public class CustomRequestLogTest fail(log); } - @Test - public void testLogBytesReceived() throws Exception - { - testHandlerServerStart("BytesReceived: %I"); - - _connector.getResponse("GET / HTTP/1.0\n\n"); - String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); - } - - @Test - public void testLogBytesSent() throws Exception - { - testHandlerServerStart("BytesSent: %I"); - - _connector.getResponse("GET / HTTP/1.0\n\n"); - String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); - } - - @Test - public void testLogBytesTransferred() throws Exception - { - testHandlerServerStart("BytesTransferred: %I"); - - _connector.getResponse("GET / HTTP/1.0\n\n"); - String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); - } - + @Disabled @Test public void testLogRequestTrailer() throws Exception { - testHandlerServerStart("RequestTrailer: %{trailerName}ti"); + testHandlerServerStart("%{trailerName}ti"); _connector.getResponse("GET / HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); fail(log); } + @Disabled @Test public void testLogResponseTrailer() throws Exception { - testHandlerServerStart("ResponseTrailer: %{trailerName}to"); + testHandlerServerStart("%{trailerName}to"); _connector.getResponse("GET / HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); fail(log); } - + + protected Socket newSocket() throws Exception + { + return newSocket(_serverURI.getHost(), _serverURI.getPort()); + } + + protected Socket newSocket(String host, int port) throws Exception + { + Socket socket = new Socket(host, port); + socket.setSoTimeout(10000); + socket.setTcpNoDelay(true); + return socket; + } class TestRequestLogWriter implements RequestLog.Writer { @@ -564,6 +569,12 @@ public class CustomRequestLogTest requestTimes.offer(baseRequest.getTimeStamp()); baseRequest.setHandled(true); + + if (request.getContentLength() > 0) + { + InputStream in = request.getInputStream(); + while (in.read()>0); + } } } } From 00e2026594fdaae55b84a94d6701ce2066a1a250 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Sat, 24 Nov 2018 21:16:19 +0100 Subject: [PATCH 190/931] Fix conscrypt version for osgi jdk8 Signed-off-by: Greg Wilkins --- jetty-osgi/test-jetty-osgi/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jetty-osgi/test-jetty-osgi/pom.xml b/jetty-osgi/test-jetty-osgi/pom.xml index e90e480bd90..c425d5208fe 100644 --- a/jetty-osgi/test-jetty-osgi/pom.xml +++ b/jetty-osgi/test-jetty-osgi/pom.xml @@ -546,7 +546,7 @@ - -Dmortbay-alpn-boot=${settings.localRepository}/org/mortbay/jetty/alpn/alpn-boot/${alpn.version}/alpn-boot-${alpn.version}.jar + -Dmortbay-alpn-boot=${settings.localRepository}/org/mortbay/jetty/alpn/alpn-boot/${alpn.version}/alpn-boot-${alpn.version}.jar -Dconscrypt-version=${conscrypt.version} From 2cd579353cf4acb2f8495ca6f827559497a66568 Mon Sep 17 00:00:00 2001 From: Lachlan Roberts Date: Mon, 26 Nov 2018 14:12:16 +0100 Subject: [PATCH 191/931] Issue #113 - fix javadoc errors Signed-off-by: Lachlan Roberts --- .../main/java/org/eclipse/jetty/server/CustomRequestLog.java | 5 +++-- .../main/java/org/eclipse/jetty/server/NCSARequestLog.java | 5 ++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java index 2896f9bbaaa..4bfb2448786 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java @@ -47,8 +47,9 @@ import static java.lang.invoke.MethodType.methodType; /** + - + @@ -267,7 +268,6 @@ import static java.lang.invoke.MethodType.methodType; -
CustomRequestLog Format Codes
Format StringFormat String Description
%{VARNAME}^to The contents of VARNAME: trailer line(s) in the response sent from the server.
*/ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog @@ -336,6 +336,7 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog /** * Extract the user authentication * @param request The request to extract from + * @param checkDeferred Whether to check for deferred authentication * @return The string to log for authenticated user. */ protected static String getAuthentication(Request request, boolean checkDeferred) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/NCSARequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/NCSARequestLog.java index 76103dc4bb1..a8a5466543f 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/NCSARequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/NCSARequestLog.java @@ -64,7 +64,10 @@ public class NCSARequestLog extends AbstractNCSARequestLog /* ------------------------------------------------------------ */ /** - * Create request log object with specified output file name. + * Create request log object given a RequestLogWriter file name. + * + * @param writer the writer which manages the output of the formatted string + * produced by the {@link RequestLog} */ public NCSARequestLog(RequestLogWriter writer) { From f5445a759e798d908118c2191487e278cebd3b08 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Nawrocki?= Date: Tue, 27 Nov 2018 01:57:28 +0100 Subject: [PATCH 192/931] Fixed invalid QoS Filter parameter names (#3149) Signed-off-by: Pawel Nawrocki --- .../src/main/asciidoc/administration/extras/qos-filter.adoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/qos-filter.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/qos-filter.adoc index 93bef25415d..2b6eccb0735 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/qos-filter.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/qos-filter.adoc @@ -110,11 +110,11 @@ The maximum number of requests to be serviced at a time. The default is 10. maxPriority:: The maximum valid priority that can be assigned to a request. A request with a high priority value is more important than a request with a low priority value. The default is 10. -waitMS:: +waitMs:: The length of time, in milliseconds, to wait while trying to accept a new request. Used when the maxRequests limit is reached. Default is 50 ms. -suspendMS:: +suspendMs:: Length of time, in milliseconds, that the request will be suspended if it is not accepted immediately. If not set, the container's default suspend period applies. Default is -1 ms. managedAttr:: From b35df419bb9402c0324a45e4e6e1843e83588980 Mon Sep 17 00:00:00 2001 From: Lachlan Roberts Date: Tue, 27 Nov 2018 14:04:37 +0100 Subject: [PATCH 193/931] Issue #113 - reformat, javadoc update and changes after review Signed-off-by: Lachlan Roberts --- .../config/etc/jetty-customrequestlog.xml | 14 +- .../main/config/modules/customrequestlog.mod | 16 +- .../jetty/server/AbstractNCSARequestLog.java | 35 +- .../jetty/server/AsyncNCSARequestLog.java | 2 +- .../jetty/server/AsyncRequestLogWriter.java | 26 +- .../jetty/server/CustomRequestLog.java | 627 +++++++++--------- .../eclipse/jetty/server/NCSARequestLog.java | 27 +- .../org/eclipse/jetty/server/RequestLog.java | 20 +- .../jetty/server/RequestLogWriter.java | 33 +- .../eclipse/jetty/server/Slf4jRequestLog.java | 2 +- 10 files changed, 406 insertions(+), 396 deletions(-) diff --git a/jetty-server/src/main/config/etc/jetty-customrequestlog.xml b/jetty-server/src/main/config/etc/jetty-customrequestlog.xml index dd24cd80ec6..6b605261356 100644 --- a/jetty-server/src/main/config/etc/jetty-customrequestlog.xml +++ b/jetty-server/src/main/config/etc/jetty-customrequestlog.xml @@ -17,22 +17,22 @@ / jetty.customrequestlog.filePath - /yyyy_mm_dd.request.log + /yyyy_mm_dd.request.log - - - - + + + + - + - + diff --git a/jetty-server/src/main/config/modules/customrequestlog.mod b/jetty-server/src/main/config/modules/customrequestlog.mod index 0d4eb9a8c41..68517d85de9 100644 --- a/jetty-server/src/main/config/modules/customrequestlog.mod +++ b/jetty-server/src/main/config/modules/customrequestlog.mod @@ -7,7 +7,7 @@ Enables a format string style request log. requestlog [tags] -customrequestlog +requestlog [depend] server @@ -20,22 +20,22 @@ logs/ [ini-template] ## Logging directory (relative to $jetty.base) -# jetty.customrequestlog.dir=logs +# jetty.requestlog.dir=logs ## File path -# jetty.customrequestlog.filePath=${jetty.customrequestlog.dir}/yyyy_mm_dd.request.log +# jetty.requestlog.filePath=${jetty.requestlog.dir}/yyyy_mm_dd.request.log ## Date format for rollovered files (uses SimpleDateFormat syntax) -# jetty.customrequestlog.filenameDateFormat=yyyy_MM_dd +# jetty.requestlog.filenameDateFormat=yyyy_MM_dd ## How many days to retain old log files -# jetty.customrequestlog.retainDays=90 +# jetty.requestlog.retainDays=90 ## Whether to append to existing file -# jetty.customrequestlog.append=false +# jetty.requestlog.append=false ## Timezone of the log entries -# jetty.customrequestlog.timezone=GMT +# jetty.requestlog.timezone=GMT ## Format string -# jetty.customrequestlog.formatString=%a - %u %t "%r" %s %B "%{Referer}i" "%{User-Agent}i" "%C" +# jetty.requestlog.formatString=%a - %u %t "%r" %s %B "%{Referer}i" "%{User-Agent}i" "%C" diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractNCSARequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractNCSARequestLog.java index d460d6af3cf..99e0a94cf63 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractNCSARequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractNCSARequestLog.java @@ -20,6 +20,7 @@ package org.eclipse.jetty.server; import java.io.IOException; import java.util.Locale; + import javax.servlet.http.Cookie; import org.eclipse.jetty.http.HttpHeader; @@ -36,7 +37,8 @@ import org.eclipse.jetty.util.log.Logger; * Configuration options allow a choice between the standard Common Log Format (as used in the 3 log format) and the * Combined Log Format (single log format). This log format can be output by most web servers, and almost all web log * analysis software can understand these formats. - * @deprecated use {@link CustomRequestLog} given format string {@link CustomRequestLog#NCSA_FORMAT} with a {@link RequestLog.Writer} + * + * @deprecated use {@link CustomRequestLog} given format string {@link CustomRequestLog#EXTENDED_NCSA_FORMAT} with a {@link RequestLog.Writer} */ @Deprecated public class AbstractNCSARequestLog extends ContainerLifeCycle implements RequestLog @@ -67,6 +69,7 @@ public class AbstractNCSARequestLog extends ContainerLifeCycle implements Reques /** * Is logging enabled + * * @return true if logging is enabled */ protected boolean isEnabled() @@ -76,6 +79,7 @@ public class AbstractNCSARequestLog extends ContainerLifeCycle implements Reques /** * Write requestEntry out. (to disk or slf4j log) + * * @param requestEntry the request entry * @throws IOException if unable to write the entry */ @@ -84,9 +88,9 @@ public class AbstractNCSARequestLog extends ContainerLifeCycle implements Reques _requestLogWriter.write(requestEntry); } - private void append(StringBuilder buf,String s) + private void append(StringBuilder buf, String s) { - if (s==null || s.length()==0) + if (s == null || s.length() == 0) buf.append('-'); else buf.append(s); @@ -113,7 +117,7 @@ public class AbstractNCSARequestLog extends ContainerLifeCycle implements Reques if (_logServer) { - append(buf,request.getServerName()); + append(buf, request.getServerName()); buf.append(' '); } @@ -128,9 +132,9 @@ public class AbstractNCSARequestLog extends ContainerLifeCycle implements Reques buf.append(addr); buf.append(" - "); - + String auth = getAuthentication(request); - append(buf,auth==null?"-":auth); + append(buf, auth == null ? "-" : auth); buf.append(" ["); if (_logDateCache != null) @@ -139,15 +143,15 @@ public class AbstractNCSARequestLog extends ContainerLifeCycle implements Reques buf.append(request.getTimeStamp()); buf.append("] \""); - append(buf,request.getMethod()); + append(buf, request.getMethod()); buf.append(' '); - append(buf,request.getOriginalURI()); + append(buf, request.getOriginalURI()); buf.append(' '); - append(buf,request.getProtocol()); + append(buf, request.getProtocol()); buf.append("\" "); int status = response.getCommittedMetaData().getStatus(); - if (status >=0) + if (status >= 0) { buf.append((char)('0' + ((status / 100) % 10))); buf.append((char)('0' + ((status / 10) % 10))); @@ -222,21 +226,22 @@ public class AbstractNCSARequestLog extends ContainerLifeCycle implements Reques LOG.warn(e); } } - + /** * Extract the user authentication + * * @param request The request to extract from * @return The string to log for authenticated user. */ protected String getAuthentication(Request request) { Authentication authentication = request.getAuthentication(); - + if (authentication instanceof Authentication.User) return ((Authentication.User)authentication).getUserIdentity().getUserPrincipal().getName(); - + // TODO extract the user name if it is Authentication.Deferred and return as '?username' - + return null; } @@ -425,7 +430,7 @@ public class AbstractNCSARequestLog extends ContainerLifeCycle implements Reques { if (_logDateFormat != null) { - _logDateCache = new DateCache(_logDateFormat, _logLocale ,_logTimeZone); + _logDateCache = new DateCache(_logDateFormat, _logLocale, _logTimeZone); } if (_ignorePaths != null && _ignorePaths.length > 0) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncNCSARequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncNCSARequestLog.java index 6f3d986a06c..3290b7794d2 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncNCSARequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncNCSARequestLog.java @@ -22,7 +22,7 @@ import java.util.concurrent.BlockingQueue; /** * An asynchronously writing NCSA Request Log - * @deprecated use {@link CustomRequestLog} given format string {@link CustomRequestLog#NCSA_FORMAT} with an {@link AsyncRequestLogWriter} + * @deprecated use {@link CustomRequestLog} given format string {@link CustomRequestLog#EXTENDED_NCSA_FORMAT} with an {@link AsyncRequestLogWriter} */ @Deprecated public class AsyncNCSARequestLog extends NCSARequestLog diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java index 8f704fd572c..4c79d50ffb0 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java @@ -26,6 +26,10 @@ import org.eclipse.jetty.util.BlockingArrayQueue; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; + +/** + * An asynchronously writing RequestLogWriter + */ public class AsyncRequestLogWriter extends RequestLogWriter { private static final Logger LOG = Log.getLogger(AsyncRequestLogWriter.class); @@ -38,19 +42,19 @@ public class AsyncRequestLogWriter extends RequestLogWriter this(null, null); } - public AsyncRequestLogWriter(String filename,BlockingQueue queue) + public AsyncRequestLogWriter(String filename, BlockingQueue queue) { super(filename); - if (queue==null) - queue=new BlockingArrayQueue<>(1024); - _queue=queue; + if (queue == null) + queue = new BlockingArrayQueue<>(1024); + _queue = queue; } private class WriterThread extends Thread { WriterThread() { - setName("AsyncRequestLogWriter@"+Integer.toString(AsyncRequestLogWriter.this.hashCode(),16)); + setName("AsyncRequestLogWriter@" + Integer.toString(AsyncRequestLogWriter.this.hashCode(), 16)); } @Override @@ -61,13 +65,13 @@ public class AsyncRequestLogWriter extends RequestLogWriter try { String log = _queue.poll(10, TimeUnit.SECONDS); - if (log!=null) + if (log != null) AsyncRequestLogWriter.super.write(log); - while(!_queue.isEmpty()) + while (!_queue.isEmpty()) { - log=_queue.poll(); - if (log!=null) + log = _queue.poll(); + if (log != null) AsyncRequestLogWriter.super.write(log); } } @@ -97,7 +101,7 @@ public class AsyncRequestLogWriter extends RequestLogWriter _thread.interrupt(); _thread.join(); super.doStop(); - _thread=null; + _thread = null; } @Override @@ -107,7 +111,7 @@ public class AsyncRequestLogWriter extends RequestLogWriter { if (_warnedFull) LOG.warn("Log Queue overflow"); - _warnedFull=true; + _warnedFull = true; } } } diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java index 4bfb2448786..d8f8697d735 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java @@ -29,6 +29,7 @@ import java.util.concurrent.TimeUnit; import java.util.function.Supplier; import java.util.regex.Matcher; import java.util.regex.Pattern; + import javax.servlet.http.Cookie; import org.eclipse.jetty.http.HttpFields; @@ -37,6 +38,7 @@ import org.eclipse.jetty.http.pathmap.PathMappings; import org.eclipse.jetty.server.handler.ContextHandler; import org.eclipse.jetty.util.DateCache; import org.eclipse.jetty.util.annotation.ManagedAttribute; +import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -46,237 +48,223 @@ import static java.lang.invoke.MethodHandles.foldArguments; import static java.lang.invoke.MethodType.methodType; /** - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CustomRequestLog Format Codes
Format StringDescription
%%The percent sign.
%{format}a - Client IP address of the request. - Valid formats are {server, client, local, remote} - - where server and client are the logical addresses - where local and remote are the physical addresses -
%aClient IP address of the request.
%{c}aUnderlying peer IP address of the connection.
%ALocal IP-address.
%hRemote hostname. Will log a dotted-string form of the IP if the Hostname cannot be resolved.
%v - todo this is now %{server}a - The canonical ServerName of the server serving the request.
%BSize of response in bytes, excluding HTTP headers.
%bSize of response in bytes, excluding HTTP headers. In CLF format, i.e. a '-' rather than a 0 when no bytes are sent.
%{VARNAME}C - The contents of cookie VARNAME in the request sent to the server. Only version 0 cookies are fully supported. - Optional VARNAME parameter, without this parameter %C will log all cookies from the request. -
%DThe time taken to serve the request, in microseconds.
%{VARNAME}eThe contents of the environment variable VARNAME.
%fFilename.
%HThe request protocol.
%{VARNAME}iThe contents of VARNAME: header line(s) in the request sent to the server.
%kNumber of keepalive requests handled on this connection. - Interesting if KeepAlive is being used, so that, for example, a '1' means the first keepalive request - after the initial one, '2' the second, etc...; otherwise this is always 0 (indicating the initial request).
%mThe request method.
%{VARNAME}oThe contents of VARNAME: header line(s) in the response.
%pThe canonical port of the server serving the request. - todo merge this with below -
%{format}pThe canonical port of the server serving the request, or the server's actual port, or the client's actual port. - Valid formats are canonical, local, or remote. - todo update this documenatation - server, client logical - local, remote physical -
%qThe query string (prepended with a ? if a query string exists, otherwise an empty string).
%rFirst line of request.
%RThe handler generating the response (if any).
%sResponse status.
%{format}t - The time, in the form given by an optional format, parameter (default format [18/Sep/2011:19:18:28 -0400] where - the last number indicates the timezone offset from GMT.) -
- The format parameter should be in a format supported by {@link DateCache} -
%TThe time taken to serve the request, in seconds.
%{UNIT}TThe time taken to serve the request, in a time unit given by UNIT. - Valid units are ms for milliseconds, us for microseconds, and s for seconds. - Using s gives the same result as %T without any format; using us gives the same result as %D.
%{d}u - Remote user if the request was authenticated. May be bogus if return status (%s) is 401 (unauthorized). - Optional parameter d, with this parameter deferred authentication will also be checked. -
%UThe URL path requested, not including any query string.
%X - Connection status when response is completed: -
- X = Connection aborted before the response completed.
- + = Connection may be kept alive after the response is sent.
- - = Connection will be closed after the response is sent.
-
%IBytes received.
%OBytes sent.
%SBytes transferred (received and sent). This is the combination of %I and %O.
%{VARNAME}^tiThe contents of VARNAME: trailer line(s) in the request sent to the server.
%{VARNAME}^toThe contents of VARNAME: trailer line(s) in the response sent from the server.
+ * A flexible RequestLog, which produces log strings in a customizable format. + * The Logger takes a format string where request characteristics can be added using "%" format codes which are + * replaced by the corresponding value in the log output. + *

+ * The terms server, client, local and remote are used to refer to the different addresses and ports + * which can be logged. Server and client refer to the logical addresses which can be modified in the request + * headers. Where local and remote refer to the physical addresses which may be a proxy between the + * end-user and the server. + * + * + *

Percent codes are specified in the format %MODIFIERS{PARAM}CODE + *

+ * MODIFIERS:
+ *     Optional list of comma separated HTTP status codes which may be preceded by a single "!" to indicate
+ *     negation. If the status code is not in the list the literal string "-" will be logged instead of
+ *     the resulting value from the percent code.
+ * {PARAM}:
+ *     Parameter string which may be optional depending on the percent code used.
+ * CODE:
+ *     A one or two character code specified by the {@link CustomRequestLog} table of format codes.
+ * 
+ * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Format Codes
Format StringDescription
%%The percent sign.
%{format}a + * Address or Hostname. Valid formats are {server, client, local, remote} + * Optional format parameter which will be server by default. + *
+ * Where server and client are the logical addresses which can be modified in the request headers, while local and + * remote are the physical addresses so may be a proxy between the end-user and the server. + *
%{format}p + * Port. Valid formats are {server, client, local, remote} + * Optional format parameter which will be server by default. + *
+ * Where server and client are the logical ports which can be modified in the request headers, while local and + * remote are the physical ports so may be to a proxy between the end-user and the server. + *
%{clf}I + * Size of request in bytes, excluding HTTP headers. + * Optional parameter with value of clf to use CLF format, i.e. a '-' rather than a 0 when no bytes are sent. + *
%{clf}O + * Size of response in bytes, excluding HTTP headers. + * Optional parameter with value of clf to use CLF format, i.e. a '-' rather than a 0 when no bytes are sent. + *
%{clf}S + * Bytes transferred (received and sent). This is the combination of %I and %O. + * Optional parameter with value of clf to use CLF format, i.e. a '-' rather than a 0 when no bytes are sent. + *
%{VARNAME}C + * The contents of cookie VARNAME in the request sent to the server. Only version 0 cookies are fully supported. + * Optional VARNAME parameter, without this parameter %C will log all cookies from the request. + *
%DThe time taken to serve the request, in microseconds.
%{VARNAME}eThe contents of the environment variable VARNAME.
%fFilename.
%HThe request protocol.
%{VARNAME}iThe contents of VARNAME: header line(s) in the request sent to the server.
%kNumber of keepalive requests handled on this connection. + * Interesting if KeepAlive is being used, so that, for example, a '1' means the first keepalive request + * after the initial one, '2' the second, etc...; otherwise this is always 0 (indicating the initial request).
%mThe request method.
%{VARNAME}oThe contents of VARNAME: header line(s) in the response.
%qThe query string (prepended with a ? if a query string exists, otherwise an empty string).
%rFirst line of request.
%RThe handler generating the response (if any).
%sResponse status.
%{format}t + * The time, in the form given by an optional format, parameter (default format [18/Sep/2011:19:18:28 -0400] where + * the last number indicates the timezone offset from GMT.) + *
+ * The format parameter should be in a format supported by {@link DateCache} + *
%TThe time taken to serve the request, in seconds.
%{UNIT}TThe time taken to serve the request, in a time unit given by UNIT. + * Valid units are ms for milliseconds, us for microseconds, and s for seconds. + * Using s gives the same result as %T without any format; using us gives the same result as %D.
%{d}u + * Remote user if the request was authenticated. May be bogus if return status (%s) is 401 (unauthorized). + * Optional parameter d, with this parameter deferred authentication will also be checked. + *
%UThe URL path requested, not including any query string.
%X + * Connection status when response is completed: + *
+ * X = Connection aborted before the response completed.
+ * + = Connection may be kept alive after the response is sent.
+ * - = Connection will be closed after the response is sent.
+ *
%{VARNAME}^tiThe contents of VARNAME: trailer line(s) in the request sent to the server.
%{VARNAME}^toThe contents of VARNAME: trailer line(s) in the response sent from the server.
*/ +@ManagedObject("Custom format request log") public class CustomRequestLog extends ContainerLifeCycle implements RequestLog { protected static final Logger LOG = Log.getLogger(CustomRequestLog.class); - public static final String NCSA_FORMAT = "%a - %u %t \"%r\" %s %B \"%{Referer}i\" \"%{User-Agent}i\" \"%C\""; public static final String DEFAULT_DATE_FORMAT = "dd/MMM/yyyy:HH:mm:ss ZZZ"; + public static final String NCSA_FORMAT = "%{client}a - %u %t \"%r\" %s %O"; + public static final String EXTENDED_NCSA_FORMAT = "%{client}a - %u %t \"%r\" %s %O \"%{Referer}i\" \"%{User-Agent}i\""; + private static ThreadLocal _buffers = ThreadLocal.withInitial(() -> new StringBuilder(256)); private String[] _ignorePaths; @@ -286,9 +274,11 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog private RequestLog.Writer _requestLogWriter; private final MethodHandle _logHandle; + private final String _formatString; public CustomRequestLog(RequestLog.Writer writer, String formatString) { + _formatString = formatString; _requestLogWriter = writer; addBean(_requestLogWriter); @@ -335,7 +325,8 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog /** * Extract the user authentication - * @param request The request to extract from + * + * @param request The request to extract from * @param checkDeferred Whether to check for deferred authentication * @return The string to log for authenticated user. */ @@ -346,7 +337,7 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog String name = null; boolean deferred = false; - if (checkDeferred && authentication instanceof Authentication.Deferred) + if (checkDeferred && authentication instanceof Authentication.Deferred) { authentication = ((Authentication.Deferred)authentication).authenticate(request); deferred = true; @@ -355,7 +346,7 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog if (authentication instanceof Authentication.User) name = ((Authentication.User)authentication).getUserIdentity().getUserPrincipal().getName(); - return (name==null) ? null : (deferred ? ("?"+name):name); + return (name == null) ? null : (deferred ? ("?" + name) : name); } /** @@ -378,6 +369,18 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog return _ignorePaths; } + + /** + * Retrieve the format string. + * + * @return the format string + */ + @ManagedAttribute("format string") + public String getFormatString() + { + return _formatString; + } + /** * Set up request logging and open log file. * @@ -442,7 +445,7 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog private static void append(StringBuilder buf, String s) { - if (s==null || s.length()==0) + if (s == null || s.length() == 0) buf.append('-'); else buf.append(s); @@ -474,11 +477,21 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog private static List getTokens(String formatString) { + /* + Extracts literal strings and percent codes out of the format string. + We will either match a percent code of the format %MODIFIERS{PARAM}CODE, or a literal string + until the next percent code or the end of the formatString is reached. + + where + MODIFIERS is an optional comma separated list of numbers. + {PARAM} is an optional string parameter to the percent code. + CODE is a 1 to 2 character string corresponding to a format code. + */ final Pattern PATTERN = Pattern.compile("^(?:%(?!?[0-9,]+)?(?:\\{(?[^}]+)})?(?(?:(?:ti)|(?:to)|[a-zA-Z%]))|(?[^%]+))(?.*)"); List tokens = new ArrayList<>(); String remaining = formatString; - while(remaining.length()>0) + while (remaining.length() > 0) { Matcher m = PATTERN.matcher(remaining); if (m.matches()) @@ -542,6 +555,7 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog this.literal = null; } + public Token(String literal) { this.code = null; @@ -554,17 +568,16 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog public boolean isLiteralString() { - return(literal != null); + return (literal != null); } public boolean isPercentCode() { - return(code != null); + return (code != null); } } - private MethodHandle updateLogHandle(MethodHandle logHandle, MethodHandle append, String literal) { return foldArguments(logHandle, dropArguments(dropArguments(append.bindTo(literal), 1, Request.class), 2, Response.class)); @@ -577,11 +590,11 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog String responseCode = Integer.toString(response.getStatus()); if (negated) { - return(!modifiers.contains(responseCode)); + return (!modifiers.contains(responseCode)); } else { - return(modifiers.contains(responseCode)); + return (modifiers.contains(responseCode)); } } @@ -602,6 +615,9 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog case "a": { + if (arg == null || arg.isEmpty()) + arg = "server"; + String method; switch (arg) { @@ -629,23 +645,35 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog break; } - case "h": + case "p": { - String method = "logRemoteHostName"; - specificHandle = MethodHandles.lookup().findStatic(CustomRequestLog.class, method, logType); - break; - } + if (arg == null || arg.isEmpty()) + arg = "server"; - case "B": - { - String method = "logResponseSize"; - specificHandle = MethodHandles.lookup().findStatic(CustomRequestLog.class, method, logType); - break; - } + String method; + switch (arg) + { + + case "server": + method = "logServerPort"; + break; + + case "client": + method = "logClientPort"; + break; + + case "local": + method = "logLocalPort"; + break; + + case "remote": + method = "logRemotePort"; + break; + + default: + throw new IllegalArgumentException("Invalid arg for %p"); + } - case "b": - { - String method = "logResponseSizeCLF"; specificHandle = MethodHandles.lookup().findStatic(CustomRequestLog.class, method, logType); break; } @@ -656,9 +684,7 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog if (arg == null || arg.isEmpty()) method = "logBytesReceived"; else if (arg.equals("CLF")) - { method = "logBytesReceivedCLF"; - } else throw new IllegalArgumentException("Invalid argument for %I"); @@ -672,11 +698,23 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog if (arg == null || arg.isEmpty()) method = "logBytesSent"; else if (arg.equals("CLF")) - { method = "logBytesSentCLF"; - } else - throw new IllegalArgumentException("Invalid argument for %I"); + throw new IllegalArgumentException("Invalid argument for %O"); + + specificHandle = MethodHandles.lookup().findStatic(CustomRequestLog.class, method, logType); + break; + } + + case "S": + { + String method; + if (arg == null || arg.isEmpty()) + method = "logBytesTransferred"; + else if (arg.equals("CLF")) + method = "logBytesTransferredCLF"; + else + throw new IllegalArgumentException("Invalid argument for %S"); specificHandle = MethodHandles.lookup().findStatic(CustomRequestLog.class, method, logType); break; @@ -767,36 +805,6 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog break; } - case "p": - { - String method; - switch (arg) - { - - case "server": - method = "logServerPort"; - break; - - case "client": - method = "logClientPort"; - break; - - case "local": - method = "logLocalPort"; - break; - - case "remote": - method = "logRemotePort"; - break; - - default: - throw new IllegalArgumentException("Invalid arg for %p"); - } - - specificHandle = MethodHandles.lookup().findStatic(CustomRequestLog.class, method, logType); - break; - } - case "q": { String method = "logQueryString"; @@ -829,9 +837,9 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog { DateCache logDateCache; if (arg == null || arg.isEmpty()) - logDateCache = new DateCache(DEFAULT_DATE_FORMAT, _logLocale , _logTimeZone); + logDateCache = new DateCache(DEFAULT_DATE_FORMAT, _logLocale, _logTimeZone); else - logDateCache = new DateCache(arg, _logLocale , _logTimeZone); + logDateCache = new DateCache(arg, _logLocale, _logTimeZone); String method = "logRequestTime"; MethodType logTypeDateCache = methodType(Void.TYPE, DateCache.class, StringBuilder.class, Request.class, Response.class); @@ -891,14 +899,6 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog break; } - case "S": - { - String method = "logBytesTransferred"; - specificHandle = MethodHandles.lookup().findStatic(CustomRequestLog.class, method, logType); - break; - } - - case "ti": { if (arg == null || arg.isEmpty()) @@ -940,7 +940,6 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog } - //-----------------------------------------------------------------------------------// private static void logNothing(StringBuilder b, Request request, Response response) @@ -996,7 +995,7 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog private static void logResponseSizeCLF(StringBuilder b, Request request, Response response) { long written = response.getHttpChannel().getBytesWritten(); - if (written==0) + if (written == 0) b.append('-'); else b.append(written); @@ -1007,17 +1006,47 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog b.append(response.getHttpChannel().getBytesWritten()); } + private static void logBytesSentCLF(StringBuilder b, Request request, Response response) + { + long sent = response.getHttpChannel().getBytesWritten(); + if (sent == 0) + b.append('-'); + else + b.append(sent); + } + private static void logBytesReceived(StringBuilder b, Request request, Response response) { //todo this be content received rather than consumed b.append(request.getHttpInput().getContentConsumed()); } + private static void logBytesReceivedCLF(StringBuilder b, Request request, Response response) + { + //todo this be content received rather than consumed + long received = request.getHttpInput().getContentConsumed(); + if (received == 0) + b.append('-'); + else + b.append(received); + } + private static void logBytesTransferred(StringBuilder b, Request request, Response response) { + //todo this be content received rather than consumed b.append(request.getHttpInput().getContentConsumed() + response.getHttpOutput().getWritten()); } + private static void logBytesTransferredCLF(StringBuilder b, Request request, Response response) + { + //todo this be content received rather than consumed + long transferred = request.getHttpInput().getContentConsumed() + response.getHttpOutput().getWritten(); + if (transferred == 0) + b.append('-'); + else + b.append(transferred); + } + private static void logRequestCookie(String arg, StringBuilder b, Request request, Response response) { @@ -1059,12 +1088,12 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog private static void logFilename(StringBuilder b, Request request, Response response) { UserIdentity.Scope scope = request.getUserIdentityScope(); - if (scope==null || scope.getContextHandler()==null) + if (scope == null || scope.getContextHandler() == null) b.append('-'); else { ContextHandler context = scope.getContextHandler(); - int lengthToStrip = scope.getContextPath().length()>1 ? scope.getContextPath().length() : 0; + int lengthToStrip = scope.getContextPath().length() > 1 ? scope.getContextPath().length() : 0; String filename = context.getServletContext().getRealPath(request.getPathInfo().substring(lengthToStrip)); append(b, filename); } @@ -1101,7 +1130,7 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog private static void logQueryString(StringBuilder b, Request request, Response response) { - append(b, "?"+request.getQueryString()); + append(b, "?" + request.getQueryString()); } private static void logRequestFirstLine(StringBuilder b, Request request, Response response) @@ -1166,7 +1195,7 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog private static void logConnectionStatus(StringBuilder b, Request request, Response response) { - b.append(request.getHttpChannel().isResponseCompleted() ? (request.getHttpChannel().isPersistent() ? '+' : '-') : 'X'); + b.append(request.getHttpChannel().isResponseCompleted() ? (request.getHttpChannel().isPersistent() ? '+' : '-') : 'X'); } diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/NCSARequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/NCSARequestLog.java index a8a5466543f..6a660fb3dc1 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/NCSARequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/NCSARequestLog.java @@ -32,7 +32,8 @@ import org.eclipse.jetty.util.annotation.ManagedObject; * Format (single log format). This log format can be output by most web * servers, and almost all web log analysis software can understand these * formats. - * @deprecated use {@link CustomRequestLog} given format string {@link CustomRequestLog#NCSA_FORMAT} with a {@link RequestLogWriter} + * + * @deprecated use {@link CustomRequestLog} given format string {@link CustomRequestLog#EXTENDED_NCSA_FORMAT} with a {@link RequestLogWriter} */ @Deprecated @ManagedObject("NCSA standard format request log") @@ -40,7 +41,6 @@ public class NCSARequestLog extends AbstractNCSARequestLog { private final RequestLogWriter _requestLogWriter; - /* ------------------------------------------------------------ */ /** * Create request log object with default settings. */ @@ -49,7 +49,6 @@ public class NCSARequestLog extends AbstractNCSARequestLog this((String)null); } - /* ------------------------------------------------------------ */ /** * Create request log object with specified output file name. * @@ -62,7 +61,6 @@ public class NCSARequestLog extends AbstractNCSARequestLog this(new RequestLogWriter(filename)); } - /* ------------------------------------------------------------ */ /** * Create request log object given a RequestLogWriter file name. * @@ -76,21 +74,18 @@ public class NCSARequestLog extends AbstractNCSARequestLog setExtended(true); } - /* ------------------------------------------------------------ */ /** * Set the output file name of the request log. * The file name may be in the format expected by * {@link RolloverFileOutputStream}. * * @param filename file name of the request log - * */ public void setFilename(String filename) { _requestLogWriter.setFilename(filename); } - /* ------------------------------------------------------------ */ @Override public void setLogTimeZone(String tz) { @@ -98,7 +93,6 @@ public class NCSARequestLog extends AbstractNCSARequestLog _requestLogWriter.setTimeZone(tz); } - /* ------------------------------------------------------------ */ /** * Retrieve the output file name of the request log. * @@ -109,8 +103,7 @@ public class NCSARequestLog extends AbstractNCSARequestLog { return _requestLogWriter.getFileName(); } - - /* ------------------------------------------------------------ */ + /** * Retrieve the file name of the request log with the expanded * date wildcard if the output is written to the disk using @@ -123,14 +116,12 @@ public class NCSARequestLog extends AbstractNCSARequestLog return _requestLogWriter.getDatedFilename(); } - /* ------------------------------------------------------------ */ @Override protected boolean isEnabled() { return _requestLogWriter.isEnabled(); } - /* ------------------------------------------------------------ */ /** * Set the number of days before rotated log files are deleted. * @@ -141,7 +132,6 @@ public class NCSARequestLog extends AbstractNCSARequestLog _requestLogWriter.setRetainDays(retainDays); } - /* ------------------------------------------------------------ */ /** * Retrieve the number of days before rotated log files are deleted. * @@ -153,7 +143,6 @@ public class NCSARequestLog extends AbstractNCSARequestLog return _requestLogWriter.getRetainDays(); } - /* ------------------------------------------------------------ */ /** * Set append to log flag. * @@ -165,7 +154,6 @@ public class NCSARequestLog extends AbstractNCSARequestLog _requestLogWriter.setAppend(append); } - /* ------------------------------------------------------------ */ /** * Retrieve append to log flag. * @@ -177,19 +165,17 @@ public class NCSARequestLog extends AbstractNCSARequestLog return _requestLogWriter.isAppend(); } - /* ------------------------------------------------------------ */ /** * Set the log file name date format. - * @see RolloverFileOutputStream#RolloverFileOutputStream(String, boolean, int, TimeZone, String, String) * * @param logFileDateFormat format string that is passed to {@link RolloverFileOutputStream} + * @see RolloverFileOutputStream#RolloverFileOutputStream(String, boolean, int, TimeZone, String, String) */ public void setFilenameDateFormat(String logFileDateFormat) { _requestLogWriter.setFilenameDateFormat(logFileDateFormat); } - /* ------------------------------------------------------------ */ /** * Retrieve the file name date format string. * @@ -200,14 +186,12 @@ public class NCSARequestLog extends AbstractNCSARequestLog return _requestLogWriter.getFilenameDateFormat(); } - /* ------------------------------------------------------------ */ @Override public void write(String requestEntry) throws IOException { _requestLogWriter.write(requestEntry); } - - /* ------------------------------------------------------------ */ + /** * Set up request logging and open log file. * @@ -219,7 +203,6 @@ public class NCSARequestLog extends AbstractNCSARequestLog super.doStart(); } - /* ------------------------------------------------------------ */ /** * Close the log file and perform cleanup. * diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLog.java index 5e59fe01139..4ad0fd64146 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLog.java @@ -16,30 +16,34 @@ // ======================================================================== // -package org.eclipse.jetty.server; +package org.eclipse.jetty.server; import java.io.IOException; import org.eclipse.jetty.server.handler.RequestLogHandler; -/** - * A RequestLog can be attached to a {@link org.eclipse.jetty.server.handler.RequestLogHandler} to enable +/** + * A RequestLog can be attached to a {@link org.eclipse.jetty.server.handler.RequestLogHandler} to enable * logging of requests/responses. + * * @see RequestLogHandler#setRequestLog(RequestLog) * @see Server#setRequestLog(RequestLog) */ public interface RequestLog { /** - * @param request The request to log. + * @param request The request to log. * @param response The response to log. Note that for some requests - * the response instance may not have been fully populated (Eg 400 bad request - * responses are sent without a servlet response object). Thus for basic - * log information it is best to consult {@link Response#getCommittedMetaData()} - * and {@link Response#getHttpChannel()} directly. + * the response instance may not have been fully populated (Eg 400 bad request + * responses are sent without a servlet response object). Thus for basic + * log information it is best to consult {@link Response#getCommittedMetaData()} + * and {@link Response#getHttpChannel()} directly. */ void log(Request request, Response response); + /** + * Writes the generated log string to a log sink + */ interface Writer { void write(String requestEntry) throws IOException; diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogWriter.java b/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogWriter.java index 7015709837d..7f508e6cf95 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogWriter.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogWriter.java @@ -29,6 +29,9 @@ import org.eclipse.jetty.util.component.AbstractLifeCycle; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; +/** + * Writer which outputs pre-formatted request log strings to a file using {@link RolloverFileOutputStream}. + */ public class RequestLogWriter extends AbstractLifeCycle implements RequestLog.Writer { private static final Logger LOG = Log.getLogger(RequestLogWriter.class); @@ -53,7 +56,7 @@ public class RequestLogWriter extends AbstractLifeCycle implements RequestLog.Wr setAppend(true); setRetainDays(31); - if(filename != null) + if (filename != null) setFilename(filename); } @@ -63,7 +66,6 @@ public class RequestLogWriter extends AbstractLifeCycle implements RequestLog.Wr * {@link RolloverFileOutputStream}. * * @param filename file name of the request log - * */ public void setFilename(String filename) { @@ -86,7 +88,6 @@ public class RequestLogWriter extends AbstractLifeCycle implements RequestLog.Wr return _filename; } - /** * Retrieve the file name of the request log with the expanded * date wildcard if the output is written to the disk using @@ -126,7 +127,6 @@ public class RequestLogWriter extends AbstractLifeCycle implements RequestLog.Wr return _retainDays; } - /** * Set append to log flag. * @@ -148,19 +148,17 @@ public class RequestLogWriter extends AbstractLifeCycle implements RequestLog.Wr return _append; } - /** * Set the log file name date format. - * @see RolloverFileOutputStream#RolloverFileOutputStream(String, boolean, int, TimeZone, String, String) * * @param logFileDateFormat format string that is passed to {@link RolloverFileOutputStream} + * @see RolloverFileOutputStream#RolloverFileOutputStream(String, boolean, int, TimeZone, String, String) */ public void setFilenameDateFormat(String logFileDateFormat) { _filenameDateFormat = logFileDateFormat; } - /* ------------------------------------------------------------ */ /** * Retrieve the file name date format string. * @@ -171,13 +169,12 @@ public class RequestLogWriter extends AbstractLifeCycle implements RequestLog.Wr return _filenameDateFormat; } - /* ------------------------------------------------------------ */ @Override public void write(String requestEntry) throws IOException { - synchronized(this) + synchronized (this) { - if (_writer==null) + if (_writer == null) return; _writer.write(requestEntry); _writer.write(System.lineSeparator()); @@ -185,18 +182,12 @@ public class RequestLogWriter extends AbstractLifeCycle implements RequestLog.Wr } } - /* ------------------------------------------------------------ */ - /** - * Set up request logging and open log file. - * - * @see org.eclipse.jetty.util.component.AbstractLifeCycle#doStart() - */ @Override protected synchronized void doStart() throws Exception { if (_filename != null) { - _fileOut = new RolloverFileOutputStream(_filename,_append,_retainDays,TimeZone.getTimeZone(getTimeZone()),_filenameDateFormat,null); + _fileOut = new RolloverFileOutputStream(_filename, _append, _retainDays, TimeZone.getTimeZone(getTimeZone()), _filenameDateFormat, null); _closeOut = true; LOG.info("Opened " + getDatedFilename()); } @@ -205,7 +196,7 @@ public class RequestLogWriter extends AbstractLifeCycle implements RequestLog.Wr _out = _fileOut; - synchronized(this) + synchronized (this) { _writer = new OutputStreamWriter(_out); } @@ -222,12 +213,6 @@ public class RequestLogWriter extends AbstractLifeCycle implements RequestLog.Wr return _timeZone; } - /* ------------------------------------------------------------ */ - /** - * Close the log file and perform cleanup. - * - * @see org.eclipse.jetty.util.component.AbstractLifeCycle#doStop() - */ @Override protected void doStop() throws Exception { diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLog.java index 29388a227f9..a6340c9f399 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLog.java @@ -24,7 +24,7 @@ import org.eclipse.jetty.util.annotation.ManagedObject; /** * Implementation of NCSARequestLog where output is sent as a SLF4J INFO Log message on the named logger "org.eclipse.jetty.server.RequestLog" - * @deprecated use {@link CustomRequestLog} given format string {@link CustomRequestLog#NCSA_FORMAT} with an {@link Slf4jRequestLogWriter} + * @deprecated use {@link CustomRequestLog} given format string {@link CustomRequestLog#EXTENDED_NCSA_FORMAT} with an {@link Slf4jRequestLogWriter} */ @Deprecated @ManagedObject("NCSA standard format request log to slf4j bridge") From b97c80b3c13311fd7acbd3fde2dfa73778ab5b16 Mon Sep 17 00:00:00 2001 From: Lachlan Roberts Date: Tue, 27 Nov 2018 14:26:31 +0100 Subject: [PATCH 194/931] Issue #113 - testing of logConnectionStatus implemented Signed-off-by: Lachlan Roberts --- .../server/handler/CustomRequestLogTest.java | 42 ++++++++++++++++--- 1 file changed, 37 insertions(+), 5 deletions(-) diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java index eb8a22096f4..066d8fe890c 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java @@ -29,6 +29,7 @@ import java.nio.charset.StandardCharsets; import java.util.Enumeration; import java.util.concurrent.BlockingQueue; import java.util.concurrent.TimeUnit; + import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletRequest; @@ -38,6 +39,7 @@ import org.eclipse.jetty.server.CustomRequestLog; import org.eclipse.jetty.server.ForwardedRequestCustomizer; import org.eclipse.jetty.server.HttpConnectionFactory; import org.eclipse.jetty.server.LocalConnector; +import org.eclipse.jetty.server.QuietServletException; import org.eclipse.jetty.server.Request; import org.eclipse.jetty.server.RequestLog; import org.eclipse.jetty.server.Server; @@ -470,15 +472,39 @@ public class CustomRequestLogTest assertThat(log, is("UrlRequestPath: /path")); } - @Disabled @Test public void testLogConnectionStatus() throws Exception { - testHandlerServerStart("ConnectionStatus: %X"); + testHandlerServerStart("%U ConnectionStatus: %s %X"); - _connector.getResponse("GET / HTTP/1.0\n\n"); - String log = _entries.poll(5,TimeUnit.SECONDS); - fail(log); + _connector.getResponse("GET /one HTTP/1.0\n\n"); + assertThat(_entries.poll(5,TimeUnit.SECONDS), is("/one ConnectionStatus: 200 -")); + + _connector.getResponse("GET /two HTTP/1.1\n" + + "Host: localhost\n" + + "Connection: close\n" + + "\n"); + assertThat(_entries.poll(5,TimeUnit.SECONDS), is("/two ConnectionStatus: 200 -")); + + LocalConnector.LocalEndPoint connect = _connector.connect(); + connect.addInput("GET /three HTTP/1.0\n" + + "Connection: keep-alive\n\n"); + connect.addInput("GET /four HTTP/1.1\n" + + "Host: localhost\n\n"); + connect.addInput("GET /BAD HTTP/1.1\n\n"); + assertThat(connect.getResponse(), containsString("200 OK")); + assertThat(connect.getResponse(), containsString("200 OK")); + assertThat(connect.getResponse(), containsString("400 ")); + + assertThat(_entries.poll(5,TimeUnit.SECONDS), is("/three ConnectionStatus: 200 +")); + assertThat(_entries.poll(5,TimeUnit.SECONDS), is("/four ConnectionStatus: 200 +")); + assertThat(_entries.poll(5,TimeUnit.SECONDS), is("/BAD ConnectionStatus: 400 -")); + + _connector.getResponse("GET /abort HTTP/1.1\n" + + "Host: localhost\n" + + "\n"); + connect.getResponse(); + assertThat(_entries.poll(5,TimeUnit.SECONDS), is("/abort ConnectionStatus: 200 X")); } @Disabled @@ -555,6 +581,12 @@ public class CustomRequestLogTest response.addHeader("Header1", "value1"); response.addHeader("Header2", "value2"); } + else if (request.getRequestURI().contains("/abort")) + { + response.getOutputStream().println("data"); + response.flushBuffer(); + baseRequest.getHttpChannel().abort(new QuietServletException("test abort")); + } else if (request.getRequestURI().contains("delay")) { try From a703fc626b0ec8d71e9938f214660f3e30e86002 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Tue, 27 Nov 2018 14:42:30 -0600 Subject: [PATCH 195/931] Fixes #3139 - NPE in WebSocketContainerInitializer Signed-off-by: Joakim Erdfelt --- .../org/eclipse/jetty/embedded/WebSocketJsrServer.java | 9 ++++++++- .../deploy/WebSocketServerContainerInitializer.java | 2 +- .../jetty/websocket/jsr356/server/ConfiguratorTest.java | 9 ++++++++- 3 files changed, 17 insertions(+), 3 deletions(-) diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/WebSocketJsrServer.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/WebSocketJsrServer.java index 916727658c0..e4a0896a446 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/WebSocketJsrServer.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/WebSocketJsrServer.java @@ -23,6 +23,8 @@ import javax.websocket.Session; import javax.websocket.server.ServerEndpoint; import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.server.handler.DefaultHandler; +import org.eclipse.jetty.server.handler.HandlerList; import org.eclipse.jetty.servlet.ServletContextHandler; import org.eclipse.jetty.websocket.jsr356.server.ServerContainer; import org.eclipse.jetty.websocket.jsr356.server.deploy.WebSocketServerContainerInitializer; @@ -49,10 +51,12 @@ public class WebSocketJsrServer { Server server = new Server(8080); + HandlerList handlers = new HandlerList(); + ServletContextHandler context = new ServletContextHandler( ServletContextHandler.SESSIONS); context.setContextPath("/"); - server.setHandler(context); + handlers.addHandler(context); // Enable javax.websocket configuration for the context ServerContainer wsContainer = WebSocketServerContainerInitializer @@ -61,6 +65,9 @@ public class WebSocketJsrServer // Add your websockets to the container wsContainer.addEndpoint(EchoJsrSocket.class); + handlers.addHandler(new DefaultHandler()); + + server.setHandler(handlers); server.start(); context.dumpStdErr(); server.join(); diff --git a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/deploy/WebSocketServerContainerInitializer.java b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/deploy/WebSocketServerContainerInitializer.java index 4c8a0d7b172..239963d620b 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/deploy/WebSocketServerContainerInitializer.java +++ b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/deploy/WebSocketServerContainerInitializer.java @@ -143,7 +143,7 @@ public class WebSocketServerContainerInitializer implements ServletContainerInit // Build HttpClient HttpClient httpClient = (HttpClient) context.getServletContext().getAttribute(HTTPCLIENT_ATTRIBUTE); - if(httpClient == null) + if ((httpClient == null) && (context.getServer() != null)) { httpClient = (HttpClient) context.getServer().getAttribute(HTTPCLIENT_ATTRIBUTE); } diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ConfiguratorTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ConfiguratorTest.java index 7527453c0eb..e4b60e1f19b 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ConfiguratorTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ConfiguratorTest.java @@ -58,6 +58,8 @@ import org.eclipse.jetty.http.HttpFields; import org.eclipse.jetty.http.HttpHeader; import org.eclipse.jetty.server.Server; import org.eclipse.jetty.server.ServerConnector; +import org.eclipse.jetty.server.handler.DefaultHandler; +import org.eclipse.jetty.server.handler.HandlerList; import org.eclipse.jetty.servlet.ServletContextHandler; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -403,9 +405,11 @@ public class ConfiguratorTest connector.setPort(0); server.addConnector(connector); + HandlerList handlers = new HandlerList(); + ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS); context.setContextPath("/"); - server.setHandler(context); + handlers.addHandler(context); ServerContainer container = WebSocketServerContainerInitializer.configureContext(context); container.addEndpoint(CaptureHeadersSocket.class); @@ -423,6 +427,9 @@ public class ConfiguratorTest .build(); container.addEndpoint(overrideEndpointConfig); + handlers.addHandler(new DefaultHandler()); + + server.setHandler(handlers); server.start(); String host = connector.getHost(); if (host == null) From 9ee57192dc23c1b7c3b1e80fd786fa6cf822e856 Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Wed, 28 Nov 2018 10:12:07 +1000 Subject: [PATCH 196/931] use withMaven junit publisher (#3150) Signed-off-by: olivier lamy --- Jenkinsfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 1792f665999..cc9bec25fd4 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -10,7 +10,6 @@ pipeline { options { timeout(time: 120, unit: 'MINUTES') } steps { mavenBuild("jdk8", "-Pmongodb install") - junit '**/target/surefire-reports/TEST-*.xml,**/target/failsafe-reports/TEST-*.xml' // Collect up the jacoco execution results (only on main build) jacoco inclusionPattern: '**/org/eclipse/jetty/**/*.class', exclusionPattern: '' + @@ -95,6 +94,7 @@ def mavenBuild(jdk, cmdline) { jdk: "$jdk", publisherStrategy: 'EXPLICIT', globalMavenSettingsConfig: settingsName, + options: [junitPublisher(disabled: false)], mavenOpts: mavenOpts, mavenLocalRepo: localRepo) { // Some common Maven command line + provided command line @@ -102,4 +102,4 @@ def mavenBuild(jdk, cmdline) { } } -// vim: et:ts=2:sw=2:ft=groovy \ No newline at end of file +// vim: et:ts=2:sw=2:ft=groovy From bee1487eccc135d98bcf88b56d9af2bed4dff7fc Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Wed, 28 Nov 2018 10:13:04 +1000 Subject: [PATCH 197/931] copying base resources must happen when preparing packaging we must not rely on id (#3138) Signed-off-by: olivier lamy --- jetty-distribution/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jetty-distribution/pom.xml b/jetty-distribution/pom.xml index 05976455701..e83ad110f1f 100644 --- a/jetty-distribution/pom.xml +++ b/jetty-distribution/pom.xml @@ -29,7 +29,7 @@ copy-base-assembly-tree - package + prepare-package copy-resources From 8aa3655c5525434f4360b6dc41030b1c2ae2c9b2 Mon Sep 17 00:00:00 2001 From: Lachlan Roberts Date: Wed, 28 Nov 2018 09:26:55 +0100 Subject: [PATCH 198/931] Issue #113 - fix to failing tests removed tests for %B and %b which have been removed in favor of %O adjusted the NcsaRequestLogTest to only test ExtendedNCSA format Signed-off-by: Lachlan Roberts --- .../server/handler/CustomRequestLogTest.java | 28 ------------------- .../server/handler/NcsaRequestLogTest.java | 13 +++------ 2 files changed, 4 insertions(+), 37 deletions(-) diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java index 066d8fe890c..247fa7795ce 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java @@ -188,34 +188,6 @@ public class CustomRequestLogTest } } - @Test - public void testLogResponseSize() throws Exception - { - testHandlerServerStart("ResponseSize: %B"); - - _connector.getResponse("GET / HTTP/1.0\n\n"); - String log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("ResponseSize: 0")); - - _connector.getResponse("GET / HTTP/1.0\nEcho: hello world\n\n"); - log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("ResponseSize: 11")); - } - - @Test - public void testLogResponseSizeCLF() throws Exception - { - testHandlerServerStart("ResponseSize: %b"); - - _connector.getResponse("GET / HTTP/1.0\n\n"); - String log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("ResponseSize: -")); - - _connector.getResponse("GET / HTTP/1.0\nEcho: hello world\n\n"); - log = _entries.poll(5,TimeUnit.SECONDS); - assertThat(log, is("ResponseSize: 11")); - } - @Test public void testLogBytesSent() throws Exception { diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/NcsaRequestLogTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/NcsaRequestLogTest.java index 71aa3e5fa93..2945a524e83 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/NcsaRequestLogTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/NcsaRequestLogTest.java @@ -27,6 +27,7 @@ import java.util.List; import java.util.concurrent.BlockingQueue; import java.util.concurrent.TimeUnit; import java.util.stream.Stream; + import javax.servlet.AsyncContext; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; @@ -52,7 +53,6 @@ import org.junit.jupiter.params.provider.MethodSource; import org.junit.jupiter.params.provider.ValueSource; import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.contains; import static org.hamcrest.Matchers.containsString; public class NcsaRequestLogTest @@ -69,14 +69,12 @@ public class NcsaRequestLogTest switch (logType) { case "customNCSA": - _log = new CustomRequestLog(writer, CustomRequestLog.NCSA_FORMAT); + _log = new CustomRequestLog(writer, CustomRequestLog.EXTENDED_NCSA_FORMAT); break; case "NCSA": { AbstractNCSARequestLog logNCSA = new AbstractNCSARequestLog(writer); logNCSA.setExtended(true); - logNCSA.setLogLatency(true); - logNCSA.setLogCookies(true); _log = logNCSA; break; } @@ -354,7 +352,7 @@ public class NcsaRequestLogTest _connector.getResponse("GET http://[:1]/foo HTTP/1.1\nReferer: http://other.site\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("GET http://[:1]/foo ")); - assertThat(log,containsString(" 400 50 \"http://other.site\" \"-\" - ")); + assertThat(log,containsString(" 400 50 \"http://other.site\" \"-\"")); } @ParameterizedTest() @@ -367,7 +365,7 @@ public class NcsaRequestLogTest _connector.getResponse("GET http://[:1]/foo HTTP/1.1\nReferer: http://other.site\nUser-Agent: Mozilla/5.0 (test)\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); assertThat(log,containsString("GET http://[:1]/foo ")); - assertThat(log,containsString(" 400 50 \"http://other.site\" \"Mozilla/5.0 (test)\" - ")); + assertThat(log,containsString(" 400 50 \"http://other.site\" \"Mozilla/5.0 (test)\"")); } @@ -490,9 +488,6 @@ public class NcsaRequestLogTest startServer(); makeRequest(requestPath); assertRequestLog(expectedLogEntry, _log); - - if (!(testHandler instanceof HelloHandler)) - assertThat(errors,contains(requestPath)); } From 63aa9ce97daa0e77f6d6b09e09a5ebec6a9e2d03 Mon Sep 17 00:00:00 2001 From: Lachlan Roberts Date: Wed, 28 Nov 2018 10:52:17 +0100 Subject: [PATCH 199/931] Issue #113 - problems with latency tests and request handler name Signed-off-by: Lachlan Roberts --- .../jetty/server/CustomRequestLog.java | 9 +++-- .../server/handler/CustomRequestLogTest.java | 35 ++++++++++++------- .../jetty/servlet/CustomRequestLogTest.java | 3 +- 3 files changed, 31 insertions(+), 16 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java index d8f8697d735..5556a7575c3 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java @@ -1162,8 +1162,13 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog private static void logLatencyMicroseconds(StringBuilder b, Request request, Response response) { - long latency = System.currentTimeMillis() - request.getTimeStamp(); - b.append(TimeUnit.MILLISECONDS.toMicros(latency)); + long currentTime = System.currentTimeMillis(); + long requestTime = request.getTimeStamp(); + + long latency_ms = currentTime - requestTime; + long latency_us = TimeUnit.MILLISECONDS.toMicros(latency_ms); + + b.append(latency_us); } private static void logLatencyMilliseconds(StringBuilder b, Request request, Response response) diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java index 247fa7795ce..af1175c3cb1 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java @@ -53,7 +53,7 @@ import org.junit.jupiter.api.Test; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.containsString; -import static org.hamcrest.Matchers.greaterThan; +import static org.hamcrest.Matchers.greaterThanOrEqualTo; import static org.hamcrest.Matchers.is; import static org.hamcrest.Matchers.lessThanOrEqualTo; import static org.hamcrest.Matchers.not; @@ -69,6 +69,7 @@ public class CustomRequestLogTest ServerConnector _serverConnector; URI _serverURI; + private final static long DELAY = 2000; @BeforeEach public void before() throws Exception @@ -394,13 +395,16 @@ public class CustomRequestLogTest testHandlerServerStart("%{us}T"); long lowerBound = System.currentTimeMillis(); - _connector.getResponse("GET / HTTP/1.0\n\n"); + _connector.getResponse("GET /delay HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); long upperBound = requestTimes.poll(5 ,TimeUnit.SECONDS); - long duration = upperBound-lowerBound; - assertThat(Long.parseLong(log), greaterThan((long)0)); - assertThat(Long.parseLong(log), lessThanOrEqualTo(TimeUnit.MILLISECONDS.toMicros(duration))); + long measuredDuration = Long.parseLong(log); + long durationLowerBound = TimeUnit.MILLISECONDS.toMicros(DELAY); + long durationUpperBound = TimeUnit.MILLISECONDS.toMicros(upperBound-lowerBound + DELAY); + + assertThat(measuredDuration, greaterThanOrEqualTo(durationLowerBound)); + assertThat(measuredDuration, lessThanOrEqualTo(durationUpperBound)); } @Test @@ -409,13 +413,16 @@ public class CustomRequestLogTest testHandlerServerStart("%{ms}T"); long lowerBound = System.currentTimeMillis(); - _connector.getResponse("GET / HTTP/1.0\n\n"); + _connector.getResponse("GET /delay HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); long upperBound = requestTimes.poll(5 ,TimeUnit.SECONDS); - long duration = upperBound-lowerBound; - assertThat(Long.parseLong(log), greaterThan((long)0)); - assertThat(Long.parseLong(log), lessThanOrEqualTo(duration)); + long measuredDuration = Long.parseLong(log); + long durationLowerBound = DELAY; + long durationUpperBound = upperBound-lowerBound + DELAY; + + assertThat(measuredDuration, greaterThanOrEqualTo(durationLowerBound)); + assertThat(measuredDuration, lessThanOrEqualTo(durationUpperBound)); } @Test @@ -428,10 +435,12 @@ public class CustomRequestLogTest String log = _entries.poll(5,TimeUnit.SECONDS); long upperBound = requestTimes.poll(5 ,TimeUnit.SECONDS); + long measuredDuration = Long.parseLong(log); + long durationLowerBound = TimeUnit.MILLISECONDS.toSeconds(DELAY); + long durationUpperBound = TimeUnit.MILLISECONDS.toSeconds(upperBound-lowerBound + DELAY); - long duration = upperBound-lowerBound; - assertThat(Long.parseLong(log), greaterThan((long)0)); - assertThat(Long.parseLong(log), lessThanOrEqualTo(TimeUnit.MILLISECONDS.toMicros(duration))); + assertThat(measuredDuration, greaterThanOrEqualTo(durationLowerBound)); + assertThat(measuredDuration, lessThanOrEqualTo(durationUpperBound)); } @Test @@ -563,7 +572,7 @@ public class CustomRequestLogTest { try { - Thread.sleep(2000); + Thread.sleep(DELAY); } catch (InterruptedException e) { diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/CustomRequestLogTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/CustomRequestLogTest.java index 72374e44e17..bab1eb21ef2 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/CustomRequestLogTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/CustomRequestLogTest.java @@ -21,6 +21,7 @@ package org.eclipse.jetty.servlet; import java.io.IOException; import java.util.concurrent.BlockingQueue; import java.util.concurrent.TimeUnit; + import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServlet; @@ -92,7 +93,7 @@ public class CustomRequestLogTest { testHandlerServerStart("RequestHandler: %R"); - _connector.getResponse("GET / HTTP/1.0\n\n"); + _connector.getResponse("GET /context/servlet/ HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); assertThat(log, Matchers.containsString("TestServlet")); } From 69daacf8a9806a1a9b54e0688a2c277e8d713fdf Mon Sep 17 00:00:00 2001 From: Alexander Kurtakov Date: Wed, 28 Nov 2018 13:53:14 +0200 Subject: [PATCH 200/931] Bring back packageRoot parameter in jetty-jspc-maven-plugin (#3157) * Cleanup JspcMojo. * Remove useless import. * Generify where possible. * Use setWebXmlInclude instead of setWebXmlFragment. * Add it test verifying and demonstrating how to set JspC package param. Signed-off-by: Alexander Kurtakov --- .../src/it/package-root/invoker.properties | 2 + .../src/it/package-root/pom.xml | 43 +++++++++++++++++++ .../src/it/package-root/postbuild.groovy | 9 ++++ .../it/package-root/src/main/webapp/foo.jsp | 23 ++++++++++ .../eclipse/jetty/jspc/plugin/JspcMojo.java | 11 +++-- 5 files changed, 82 insertions(+), 6 deletions(-) create mode 100644 jetty-jspc-maven-plugin/src/it/package-root/invoker.properties create mode 100644 jetty-jspc-maven-plugin/src/it/package-root/pom.xml create mode 100644 jetty-jspc-maven-plugin/src/it/package-root/postbuild.groovy create mode 100644 jetty-jspc-maven-plugin/src/it/package-root/src/main/webapp/foo.jsp diff --git a/jetty-jspc-maven-plugin/src/it/package-root/invoker.properties b/jetty-jspc-maven-plugin/src/it/package-root/invoker.properties new file mode 100644 index 00000000000..df6cbf2d0bc --- /dev/null +++ b/jetty-jspc-maven-plugin/src/it/package-root/invoker.properties @@ -0,0 +1,2 @@ +invoker.goals = test -fae +invoker.debug = true diff --git a/jetty-jspc-maven-plugin/src/it/package-root/pom.xml b/jetty-jspc-maven-plugin/src/it/package-root/pom.xml new file mode 100644 index 00000000000..9e53639c1e1 --- /dev/null +++ b/jetty-jspc-maven-plugin/src/it/package-root/pom.xml @@ -0,0 +1,43 @@ + + + 4.0.0 + + org.eclipse.jetty.its.jspc + simple-jsp + 0.0.1-SNAPSHOT + pom + + Jetty :: Simple Jsp + + + UTF-8 + UTF-8 + 1.8 + @project.version@ + + + + + + org.eclipse.jetty + jetty-jspc-maven-plugin + ${jetty.version} + + + + jspc + + compile + + + org.eclipse.jetty.test + + + + + + + + + diff --git a/jetty-jspc-maven-plugin/src/it/package-root/postbuild.groovy b/jetty-jspc-maven-plugin/src/it/package-root/postbuild.groovy new file mode 100644 index 00000000000..4a73995f2a0 --- /dev/null +++ b/jetty-jspc-maven-plugin/src/it/package-root/postbuild.groovy @@ -0,0 +1,9 @@ + + +System.out.println( "running postbuild.groovy" ) + +File file = new File( basedir, "target/classes/org/eclipse/jetty/test/foo_jsp.class" ); +if ( !file.isFile() ) +{ + throw new FileNotFoundException( "Could not find generated class in the proper package name: " + file ); +} diff --git a/jetty-jspc-maven-plugin/src/it/package-root/src/main/webapp/foo.jsp b/jetty-jspc-maven-plugin/src/it/package-root/src/main/webapp/foo.jsp new file mode 100644 index 00000000000..fb73b0b0002 --- /dev/null +++ b/jetty-jspc-maven-plugin/src/it/package-root/src/main/webapp/foo.jsp @@ -0,0 +1,23 @@ + +<%@ page import="java.util.Enumeration" %> + +

JSP Dump

+ + + + + + +<% + Enumeration e =request.getParameterNames(); + while(e.hasMoreElements()) + { + String name = (String)e.nextElement(); +%> + + + +<% } %> + +
Request URI:<%= request.getRequestURI() %>
ServletPath:<%= request.getServletPath() %>
PathInfo:<%= request.getPathInfo() %>
getParameter("<%= name %>")<%= request.getParameter(name) %>
+ diff --git a/jetty-jspc-maven-plugin/src/main/java/org/eclipse/jetty/jspc/plugin/JspcMojo.java b/jetty-jspc-maven-plugin/src/main/java/org/eclipse/jetty/jspc/plugin/JspcMojo.java index 34c75bd66ee..a8c7cc48ab3 100644 --- a/jetty-jspc-maven-plugin/src/main/java/org/eclipse/jetty/jspc/plugin/JspcMojo.java +++ b/jetty-jspc-maven-plugin/src/main/java/org/eclipse/jetty/jspc/plugin/JspcMojo.java @@ -42,7 +42,6 @@ import org.apache.maven.artifact.Artifact; import org.apache.maven.plugin.AbstractMojo; import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.MojoFailureException; -import org.apache.maven.plugins.annotations.Component; import org.apache.maven.plugins.annotations.LifecyclePhase; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; @@ -137,7 +136,7 @@ public class JspcMojo extends AbstractMojo * @since jetty-7.6.3 */ @Parameter(defaultValue = "${project.artifacts}", readonly = true) - private Set projectArtifacts; + private Set projectArtifacts; /** @@ -152,7 +151,7 @@ public class JspcMojo extends AbstractMojo * The artifacts for the plugin itself. */ @Parameter(defaultValue = "${plugin.artifacts}", readonly = true) - private List pluginArtifacts; + private List pluginArtifacts; /** @@ -336,7 +335,7 @@ public class JspcMojo extends AbstractMojo jspc = new JettyJspC(); - jspc.setWebXmlFragment(webXmlFragment); + jspc.setWebXmlInclude(webXmlFragment); jspc.setUriroot(webAppSourceDirectory); jspc.setOutputDir(generatedClasses); jspc.setClassLoader(fakeWebAppClassLoader); @@ -373,7 +372,7 @@ public class JspcMojo extends AbstractMojo private String getJspFiles(String webAppSourceDirectory) throws Exception { - List fileNames = FileUtils.getFileNames(new File(webAppSourceDirectory),includes, excludes, false); + List fileNames = FileUtils.getFileNames(new File(webAppSourceDirectory),includes, excludes, false); return StringUtils.join(fileNames.toArray(new String[0]), ","); } @@ -532,7 +531,7 @@ public class JspcMojo extends AbstractMojo //add the dependencies of the webapp (which will form WEB-INF/lib) for (Iterator iter = project.getArtifacts().iterator(); iter.hasNext();) { - Artifact artifact = (Artifact)iter.next(); + Artifact artifact = iter.next(); // Include runtime and compile time libraries if (!Artifact.SCOPE_TEST.equals(artifact.getScope()) && !Artifact.SCOPE_PROVIDED.equals(artifact.getScope())) From 982895719cc900d5ca126770ea8089b583368590 Mon Sep 17 00:00:00 2001 From: Lachlan Roberts Date: Wed, 28 Nov 2018 14:58:28 +0100 Subject: [PATCH 201/931] Issue #113 - changes from review and bug fixes %t now takes in locale and timezone in the format string argument instead of getting it from the setters on the CustomRequestLog class fixed issue with multiline format strings requestLog writers are now managed objects Signed-off-by: Lachlan Roberts --- .../jetty/server/AsyncRequestLogWriter.java | 8 +- .../jetty/server/CustomRequestLog.java | 103 ++++++++---------- .../jetty/server/RequestLogWriter.java | 10 ++ .../jetty/server/Slf4jRequestLogWriter.java | 7 ++ .../server/handler/CustomRequestLogTest.java | 18 ++- 5 files changed, 82 insertions(+), 64 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java index 4c79d50ffb0..7efc1ee760e 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java @@ -75,14 +75,14 @@ public class AsyncRequestLogWriter extends RequestLogWriter AsyncRequestLogWriter.super.write(log); } } - catch (IOException e) - { - LOG.warn(e); - } catch (InterruptedException e) { LOG.ignore(e); } + catch (Throwable t) + { + LOG.warn(t); + } } } } diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java index 5556a7575c3..179690bad7c 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java @@ -25,6 +25,7 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Locale; +import java.util.TimeZone; import java.util.concurrent.TimeUnit; import java.util.function.Supplier; import java.util.regex.Matcher; @@ -199,12 +200,22 @@ import static java.lang.invoke.MethodType.methodType; * * * - * %{format}t + * %{format|timeZone|locale}t * - * The time, in the form given by an optional format, parameter (default format [18/Sep/2011:19:18:28 -0400] where - * the last number indicates the timezone offset from GMT.) - *
- * The format parameter should be in a format supported by {@link DateCache} + * The time that the request was received. + * Optional parameter in one of the following formats {format}, {format|timeZone} or {format|timeZone|locale}.

+ * + *
+ * Format Parameter: (default format [18/Sep/2011:19:18:28 -0400] where the last number indicates the timezone offset from GMT.)
+ *     Must be in a format supported by {@link DateCache}
+ *
+ * TimeZone Parameter:
+ *     Default timeZone GMT
+ *     Must be in a format supported by {@link TimeZone#getTimeZone(String)}
+ *
+ * Locale Parameter:
+ *     Default locale {@link Locale#getDefault()}
+ *     Must be in a format supported by {@link Locale#forLanguageTag(String)}
* * * @@ -269,8 +280,6 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog private String[] _ignorePaths; private transient PathMappings _ignorePathMap; - private Locale _logLocale = Locale.getDefault(); - private String _logTimeZone = "GMT"; private RequestLog.Writer _requestLogWriter; private final MethodHandle _logHandle; @@ -369,7 +378,6 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog return _ignorePaths; } - /** * Retrieve the format string. * @@ -401,48 +409,6 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog super.doStart(); } - /** - * Set the locale of the request log. - * - * @param logLocale locale object - */ - public void setLogLocale(Locale logLocale) - { - _logLocale = logLocale; - } - - /** - * Retrieve the locale of the request log. - * - * @return locale object - */ - public Locale getLogLocale() - { - return _logLocale; - } - - /** - * Set the timezone of the request log. - * - * @param tz timezone string - */ - public void setLogTimeZone(String tz) - { - _logTimeZone = tz; - } - - /** - * Retrieve the timezone of the request log. - * - * @return timezone string - */ - @ManagedAttribute("the timezone") - public String getLogTimeZone() - { - return _logTimeZone; - } - - private static void append(StringBuilder buf, String s) { if (s == null || s.length() == 0) @@ -487,7 +453,7 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog {PARAM} is an optional string parameter to the percent code. CODE is a 1 to 2 character string corresponding to a format code. */ - final Pattern PATTERN = Pattern.compile("^(?:%(?!?[0-9,]+)?(?:\\{(?[^}]+)})?(?(?:(?:ti)|(?:to)|[a-zA-Z%]))|(?[^%]+))(?.*)"); + final Pattern PATTERN = Pattern.compile("^(?:%(?!?[0-9,]+)?(?:\\{(?[^}]+)})?(?(?:(?:ti)|(?:to)|[a-zA-Z%]))|(?[^%]+))(?.*)", Pattern.DOTALL|Pattern.MULTILINE); List tokens = new ArrayList<>(); String remaining = formatString; @@ -835,11 +801,36 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog case "t": { - DateCache logDateCache; - if (arg == null || arg.isEmpty()) - logDateCache = new DateCache(DEFAULT_DATE_FORMAT, _logLocale, _logTimeZone); - else - logDateCache = new DateCache(arg, _logLocale, _logTimeZone); + String format = DEFAULT_DATE_FORMAT; + TimeZone timeZone = TimeZone.getTimeZone("GMT"); + Locale locale = Locale.getDefault(); + + if (arg != null && !arg.isEmpty()) + { + String[] args = arg.split("\\|"); + switch (args.length) + { + case 1: + format = args[0]; + break; + + case 2: + format = args[0]; + timeZone = TimeZone.getTimeZone(args[1]); + break; + + case 3: + format = args[0]; + timeZone = TimeZone.getTimeZone(args[1]); + locale = Locale.forLanguageTag(args[2]); + break; + + default: + throw new IllegalArgumentException("Too many \"|\" characters in %t"); + } + } + + DateCache logDateCache = new DateCache(format, locale, timeZone); String method = "logRequestTime"; MethodType logTypeDateCache = methodType(Void.TYPE, DateCache.class, StringBuilder.class, Request.class, Response.class); diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogWriter.java b/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogWriter.java index 7f508e6cf95..c570c9d9223 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogWriter.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogWriter.java @@ -25,6 +25,8 @@ import java.io.Writer; import java.util.TimeZone; import org.eclipse.jetty.util.RolloverFileOutputStream; +import org.eclipse.jetty.util.annotation.ManagedAttribute; +import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.component.AbstractLifeCycle; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -32,6 +34,7 @@ import org.eclipse.jetty.util.log.Logger; /** * Writer which outputs pre-formatted request log strings to a file using {@link RolloverFileOutputStream}. */ +@ManagedObject("Request Log writer which writes to file") public class RequestLogWriter extends AbstractLifeCycle implements RequestLog.Writer { private static final Logger LOG = Log.getLogger(RequestLogWriter.class); @@ -83,6 +86,7 @@ public class RequestLogWriter extends AbstractLifeCycle implements RequestLog.Wr * * @return file name of the request log */ + @ManagedAttribute("filename") public String getFileName() { return _filename; @@ -95,6 +99,7 @@ public class RequestLogWriter extends AbstractLifeCycle implements RequestLog.Wr * * @return file name of the request log, or null if not applicable */ + @ManagedAttribute("dated filename") public String getDatedFilename() { if (_fileOut instanceof RolloverFileOutputStream) @@ -102,6 +107,7 @@ public class RequestLogWriter extends AbstractLifeCycle implements RequestLog.Wr return null; } + @Deprecated protected boolean isEnabled() { return (_fileOut != null); @@ -122,6 +128,7 @@ public class RequestLogWriter extends AbstractLifeCycle implements RequestLog.Wr * * @return number of days to keep a log file */ + @ManagedAttribute("number of days to keep a log file") public int getRetainDays() { return _retainDays; @@ -143,6 +150,7 @@ public class RequestLogWriter extends AbstractLifeCycle implements RequestLog.Wr * * @return value of the flag */ + @ManagedAttribute("if request log file will be appended after restart") public boolean isAppend() { return _append; @@ -164,6 +172,7 @@ public class RequestLogWriter extends AbstractLifeCycle implements RequestLog.Wr * * @return the log File Date Format */ + @ManagedAttribute("log file name date format") public String getFilenameDateFormat() { return _filenameDateFormat; @@ -208,6 +217,7 @@ public class RequestLogWriter extends AbstractLifeCycle implements RequestLog.Wr _timeZone = timeZone; } + @ManagedAttribute("timezone of the log") public String getTimeZone() { return _timeZone; diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLogWriter.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLogWriter.java index b496283c653..91f1ce7262f 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLogWriter.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLogWriter.java @@ -20,9 +20,15 @@ package org.eclipse.jetty.server; import java.io.IOException; +import org.eclipse.jetty.util.annotation.ManagedAttribute; +import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.component.AbstractLifeCycle; import org.eclipse.jetty.util.log.Slf4jLog; +/** + * Request log writer using a Slf4jLog Logger + */ +@ManagedObject("Slf4j RequestLog Writer") public class Slf4jRequestLogWriter extends AbstractLifeCycle implements RequestLog.Writer { private Slf4jLog logger; @@ -39,6 +45,7 @@ public class Slf4jRequestLogWriter extends AbstractLifeCycle implements RequestL this.loggerName = loggerName; } + @ManagedAttribute("logger name") public String getLoggerName() { return loggerName; diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java index af1175c3cb1..efa346f58ff 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java @@ -27,6 +27,7 @@ import java.net.Socket; import java.net.URI; import java.nio.charset.StandardCharsets; import java.util.Enumeration; +import java.util.Locale; import java.util.concurrent.BlockingQueue; import java.util.concurrent.TimeUnit; @@ -373,20 +374,29 @@ public class CustomRequestLogTest _connector.getResponse("GET / HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); long requestTime = requestTimes.poll(5,TimeUnit.SECONDS); - DateCache dateCache = new DateCache(_log.DEFAULT_DATE_FORMAT, _log.getLogLocale(), _log.getLogTimeZone()); + DateCache dateCache = new DateCache(_log.DEFAULT_DATE_FORMAT, Locale.getDefault(), "GMT"); assertThat(log, is("RequestTime: ["+ dateCache.format(requestTime) +"]")); } @Test public void testLogRequestTimeCustomFormats() throws Exception { - testHandlerServerStart("RequestTime: %{EEE MMM dd HH:mm:ss zzz yyyy}t"); + testHandlerServerStart("%{EEE MMM dd HH:mm:ss zzz yyyy}t\n" + + "%{EEE MMM dd HH:mm:ss zzz yyyy|EST}t\n" + + "%{EEE MMM dd HH:mm:ss zzz yyyy|EST|ja}t"); _connector.getResponse("GET / HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); long requestTime = requestTimes.poll(5,TimeUnit.SECONDS); - DateCache dateCache = new DateCache("EEE MMM dd HH:mm:ss zzz yyyy", _log.getLogLocale(), _log.getLogTimeZone()); - assertThat(log, is("RequestTime: ["+ dateCache.format(requestTime) +"]")); + + DateCache dateCache1 = new DateCache("EEE MMM dd HH:mm:ss zzz yyyy", Locale.getDefault(), "GMT"); + DateCache dateCache2 = new DateCache("EEE MMM dd HH:mm:ss zzz yyyy", Locale.getDefault(), "EST"); + DateCache dateCache3 = new DateCache("EEE MMM dd HH:mm:ss zzz yyyy", Locale.forLanguageTag("ja"), "EST"); + + String[] logs = log.split("\n"); + assertThat(logs[0], is("["+ dateCache1.format(requestTime) +"]")); + assertThat(logs[1], is("["+ dateCache2.format(requestTime) +"]")); + assertThat(logs[2], is("["+ dateCache3.format(requestTime) +"]")); } @Test From 7ef8f882bd4cb5bdda34b57e578bb711ee5c0208 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Raymond=20Aug=C3=A9?= Date: Wed, 28 Nov 2018 09:00:31 -0500 Subject: [PATCH 202/931] fixes #3141 Upgrade jetty osgi tests to use spifly 1.2 (#3142) Signed-off-by: Raymond Auge --- .../src/main/asciidoc/development/frameworks/osgi.adoc | 4 ++-- jetty-osgi/test-jetty-osgi/pom.xml | 6 +----- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/jetty-documentation/src/main/asciidoc/development/frameworks/osgi.adoc b/jetty-documentation/src/main/asciidoc/development/frameworks/osgi.adoc index 2a890bef3e2..f6290572cf7 100644 --- a/jetty-documentation/src/main/asciidoc/development/frameworks/osgi.adoc +++ b/jetty-documentation/src/main/asciidoc/development/frameworks/osgi.adoc @@ -55,7 +55,7 @@ You *must also install the Apache Aries SPI Fly bundles* as many parts of Jetty [cols=",,",options="header",] |======================================================================= |Jar |Bundle Symbolic Name |Location -|org.apache.aries.spifly:org.apache.aries.spifly.dynamic.bundle-1.1.jar |org.apache.aries.spifly.dynamic.bundle +|org.apache.aries.spifly:org.apache.aries.spifly.dynamic.bundle-1.2.jar |org.apache.aries.spifly.dynamic.bundle |https://repo1.maven.org/maven2/org/apache/aries/spifly/org.apache.aries.spifly.dynamic.bundle/[Maven central] |======================================================================= @@ -1120,7 +1120,7 @@ You should see output similar to this on the console, using the `felix:lb` comma 22|Active | 1|Jetty :: Utilities (9.4.14) 23|Active | 1|Jetty :: Webapp Application Support (9.4.14) 24|Active | 1|Jetty :: XML utilities (9.4.14) - 25|Active | 1|Apache Aries SPI Fly Dynamic Weaving Bundle (1.1) + 25|Active | 1|Apache Aries SPI Fly Dynamic Weaving Bundle (1.2) 27|Active | 1|Apache Felix Bundle Repository (2.0.2) 28|Active | 1|Apache Felix Configuration Admin Service (1.8.0) 29|Active | 1|Apache Felix EventAdmin (1.3.2) diff --git a/jetty-osgi/test-jetty-osgi/pom.xml b/jetty-osgi/test-jetty-osgi/pom.xml index c425d5208fe..13ea322a862 100644 --- a/jetty-osgi/test-jetty-osgi/pom.xml +++ b/jetty-osgi/test-jetty-osgi/pom.xml @@ -148,17 +148,13 @@ org.apache.aries.spifly org.apache.aries.spifly.dynamic.bundle - 1.1 + 1.2 test org.apache.felix org.apache.felix.framework - - org.ow2.asm - asm-util - From e58fd9374266d05cfc5ed1f454f7ee844222cc39 Mon Sep 17 00:00:00 2001 From: Lachlan Roberts Date: Wed, 28 Nov 2018 16:05:03 +0100 Subject: [PATCH 203/931] Issue #113 - StacklessLogging for NcsaRequestLogTest expected exceptions Signed-off-by: Lachlan Roberts --- .../jetty/server/handler/NcsaRequestLogTest.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/NcsaRequestLogTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/NcsaRequestLogTest.java index 2945a524e83..48c23b98953 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/NcsaRequestLogTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/NcsaRequestLogTest.java @@ -37,6 +37,7 @@ import org.eclipse.jetty.http.BadMessageException; import org.eclipse.jetty.server.AbstractNCSARequestLog; import org.eclipse.jetty.server.CustomRequestLog; import org.eclipse.jetty.server.Handler; +import org.eclipse.jetty.server.HttpChannel; import org.eclipse.jetty.server.LocalConnector; import org.eclipse.jetty.server.Request; import org.eclipse.jetty.server.RequestLog; @@ -44,9 +45,11 @@ import org.eclipse.jetty.server.Response; import org.eclipse.jetty.server.Server; import org.eclipse.jetty.util.BlockingArrayQueue; import org.eclipse.jetty.util.component.AbstractLifeCycle; +import org.eclipse.jetty.util.log.StacklessLogging; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assumptions; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.Arguments; import org.junit.jupiter.params.provider.MethodSource; @@ -61,6 +64,7 @@ public class NcsaRequestLogTest Server _server; LocalConnector _connector; BlockingQueue _entries = new BlockingArrayQueue<>(); + StacklessLogging stacklessLogging; private void setup(String logType) throws Exception { @@ -106,10 +110,17 @@ public class NcsaRequestLogTest + @BeforeEach + public void before() throws Exception + { + stacklessLogging = new StacklessLogging(HttpChannel.class); + } + @AfterEach public void after() throws Exception { _server.stop(); + stacklessLogging.close(); } From c2749ff5e3a622dfa9010d464c04a8e5530a62b8 Mon Sep 17 00:00:00 2001 From: Lachlan Roberts Date: Wed, 28 Nov 2018 16:22:37 +0100 Subject: [PATCH 204/931] Issue #113 - fixed documentation inconsistency Signed-off-by: Lachlan Roberts --- .../eclipse/jetty/server/CustomRequestLog.java | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java index 179690bad7c..4da726c5bb4 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java @@ -106,26 +106,26 @@ import static java.lang.invoke.MethodType.methodType; * * * - * %{clf}I + * %{CLF}I * * Size of request in bytes, excluding HTTP headers. - * Optional parameter with value of clf to use CLF format, i.e. a '-' rather than a 0 when no bytes are sent. + * Optional parameter with value of "CLF" to use CLF format, i.e. a '-' rather than a 0 when no bytes are sent. * * * * - * %{clf}O + * %{CLF}O * * Size of response in bytes, excluding HTTP headers. - * Optional parameter with value of clf to use CLF format, i.e. a '-' rather than a 0 when no bytes are sent. + * Optional parameter with value of "CLF" to use CLF format, i.e. a '-' rather than a 0 when no bytes are sent. * * * * - * %{clf}S + * %{CLF}S * * Bytes transferred (received and sent). This is the combination of %I and %O. - * Optional parameter with value of clf to use CLF format, i.e. a '-' rather than a 0 when no bytes are sent. + * Optional parameter with value of "CLF" to use CLF format, i.e. a '-' rather than a 0 when no bytes are sent. * * * @@ -649,7 +649,7 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog String method; if (arg == null || arg.isEmpty()) method = "logBytesReceived"; - else if (arg.equals("CLF")) + else if (arg.equalsIgnoreCase("clf")) method = "logBytesReceivedCLF"; else throw new IllegalArgumentException("Invalid argument for %I"); @@ -663,7 +663,7 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog String method; if (arg == null || arg.isEmpty()) method = "logBytesSent"; - else if (arg.equals("CLF")) + else if (arg.equalsIgnoreCase("clf")) method = "logBytesSentCLF"; else throw new IllegalArgumentException("Invalid argument for %O"); @@ -677,7 +677,7 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog String method; if (arg == null || arg.isEmpty()) method = "logBytesTransferred"; - else if (arg.equals("CLF")) + else if (arg.equalsIgnoreCase("clf")) method = "logBytesTransferredCLF"; else throw new IllegalArgumentException("Invalid argument for %S"); From 472d7a1529697d510590b8c31474e62e55ee8f45 Mon Sep 17 00:00:00 2001 From: Lachlan Roberts Date: Wed, 28 Nov 2018 22:28:40 +0100 Subject: [PATCH 205/931] Issue #113 - latency test failures fixed Signed-off-by: Lachlan Roberts --- .../server/handler/CustomRequestLogTest.java | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java index efa346f58ff..1710798b6df 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java @@ -404,14 +404,14 @@ public class CustomRequestLogTest { testHandlerServerStart("%{us}T"); - long lowerBound = System.currentTimeMillis(); _connector.getResponse("GET /delay HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - long upperBound = requestTimes.poll(5 ,TimeUnit.SECONDS); + long lowerBound = requestTimes.poll(5 ,TimeUnit.SECONDS); + long upperBound = System.currentTimeMillis(); long measuredDuration = Long.parseLong(log); long durationLowerBound = TimeUnit.MILLISECONDS.toMicros(DELAY); - long durationUpperBound = TimeUnit.MILLISECONDS.toMicros(upperBound-lowerBound + DELAY); + long durationUpperBound = TimeUnit.MILLISECONDS.toMicros(upperBound-lowerBound); assertThat(measuredDuration, greaterThanOrEqualTo(durationLowerBound)); assertThat(measuredDuration, lessThanOrEqualTo(durationUpperBound)); @@ -422,14 +422,14 @@ public class CustomRequestLogTest { testHandlerServerStart("%{ms}T"); - long lowerBound = System.currentTimeMillis(); _connector.getResponse("GET /delay HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - long upperBound = requestTimes.poll(5 ,TimeUnit.SECONDS); + long lowerBound = requestTimes.poll(5 ,TimeUnit.SECONDS); + long upperBound = System.currentTimeMillis(); long measuredDuration = Long.parseLong(log); long durationLowerBound = DELAY; - long durationUpperBound = upperBound-lowerBound + DELAY; + long durationUpperBound = upperBound-lowerBound; assertThat(measuredDuration, greaterThanOrEqualTo(durationLowerBound)); assertThat(measuredDuration, lessThanOrEqualTo(durationUpperBound)); @@ -440,14 +440,14 @@ public class CustomRequestLogTest { testHandlerServerStart("%{s}T"); - long lowerBound = System.currentTimeMillis(); _connector.getResponse("GET /delay HTTP/1.0\n\n"); String log = _entries.poll(5,TimeUnit.SECONDS); - long upperBound = requestTimes.poll(5 ,TimeUnit.SECONDS); + long lowerBound = requestTimes.poll(5 ,TimeUnit.SECONDS); + long upperBound = System.currentTimeMillis(); long measuredDuration = Long.parseLong(log); long durationLowerBound = TimeUnit.MILLISECONDS.toSeconds(DELAY); - long durationUpperBound = TimeUnit.MILLISECONDS.toSeconds(upperBound-lowerBound + DELAY); + long durationUpperBound = TimeUnit.MILLISECONDS.toSeconds(upperBound-lowerBound); assertThat(measuredDuration, greaterThanOrEqualTo(durationLowerBound)); assertThat(measuredDuration, lessThanOrEqualTo(durationUpperBound)); From e7d4f5589186db1207c50b462ad7ae09f725b051 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Thu, 29 Nov 2018 10:13:12 +0100 Subject: [PATCH 206/931] Issue #113 Use CustomRequestLog in examples. Convenience constructors Signed-off-by: Greg Wilkins --- .../eclipse/jetty/embedded/LikeJettyXml.java | 16 +++++------- .../eclipse/jetty/embedded/ManyHandlers.java | 5 ++-- .../jetty/server/AsyncRequestLogWriter.java | 5 ++++ .../jetty/server/CustomRequestLog.java | 16 ++++++++++++ .../java/org/eclipse/jetty/TestServer.java | 26 +++++++++---------- 5 files changed, 43 insertions(+), 25 deletions(-) diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/LikeJettyXml.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/LikeJettyXml.java index de276e02d68..dcd58b84ab1 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/LikeJettyXml.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/LikeJettyXml.java @@ -30,12 +30,13 @@ import org.eclipse.jetty.http.HttpVersion; import org.eclipse.jetty.jmx.MBeanContainer; import org.eclipse.jetty.rewrite.handler.RewriteHandler; import org.eclipse.jetty.security.HashLoginService; +import org.eclipse.jetty.server.AsyncRequestLogWriter; +import org.eclipse.jetty.server.CustomRequestLog; import org.eclipse.jetty.server.DebugListener; import org.eclipse.jetty.server.Handler; import org.eclipse.jetty.server.HttpConfiguration; import org.eclipse.jetty.server.HttpConnectionFactory; import org.eclipse.jetty.server.LowResourceMonitor; -import org.eclipse.jetty.server.NCSARequestLog; import org.eclipse.jetty.server.SecureRequestCustomizer; import org.eclipse.jetty.server.Server; import org.eclipse.jetty.server.ServerConnectionStatistics; @@ -205,14 +206,11 @@ public class LikeJettyXml server.setHandler(rewrite); // === jetty-requestlog.xml === - NCSARequestLog requestLog = new NCSARequestLog(); - requestLog.setFilename(jetty_home + "/logs/yyyy_mm_dd.request.log"); - requestLog.setFilenameDateFormat("yyyy_MM_dd"); - requestLog.setRetainDays(90); - requestLog.setAppend(true); - requestLog.setExtended(true); - requestLog.setLogCookies(false); - requestLog.setLogTimeZone("GMT"); + AsyncRequestLogWriter logWriter = new AsyncRequestLogWriter(jetty_home + "/logs/yyyy_mm_dd.request.log"); + CustomRequestLog requestLog = new CustomRequestLog(logWriter, CustomRequestLog.EXTENDED_NCSA_FORMAT + " \"%C\""); + logWriter.setFilenameDateFormat("yyyy_MM_dd"); + logWriter.setRetainDays(90); + logWriter.setTimeZone("GMT"); server.setRequestLog(requestLog); diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyHandlers.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyHandlers.java index 244ff29cf68..3904331f116 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyHandlers.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyHandlers.java @@ -26,8 +26,8 @@ import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.eclipse.jetty.server.CustomRequestLog; import org.eclipse.jetty.server.Handler; -import org.eclipse.jetty.server.NCSARequestLog; import org.eclipse.jetty.server.Request; import org.eclipse.jetty.server.Server; import org.eclipse.jetty.server.handler.AbstractHandler; @@ -117,8 +117,7 @@ public class ManyHandlers // configure request logging File requestLogFile = File.createTempFile("demo", "log"); - NCSARequestLog ncsaLog = new NCSARequestLog( - requestLogFile.getAbsolutePath()); + CustomRequestLog ncsaLog = new CustomRequestLog(requestLogFile.getAbsolutePath()); server.setRequestLog(ncsaLog); // create the handler collections diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java index 7efc1ee760e..6fd89251043 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java @@ -42,6 +42,11 @@ public class AsyncRequestLogWriter extends RequestLogWriter this(null, null); } + public AsyncRequestLogWriter(String filename) + { + this(filename, null); + } + public AsyncRequestLogWriter(String filename, BlockingQueue queue) { super(filename); diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java index 4da726c5bb4..0f769c785be 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java @@ -305,6 +305,22 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog } } + public CustomRequestLog(String file) + { + this(file, NCSA_FORMAT); + } + + public CustomRequestLog(String file, String format) + { + this(new RequestLogWriter(file), format); + } + + @ManagedAttribute("The RequestLogWriter") + public RequestLog.Writer getWriter() + { + return _requestLogWriter; + } + /** * Writes the request and response information to the output stream. * diff --git a/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/TestServer.java b/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/TestServer.java index ca61e939857..cfe1140229d 100644 --- a/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/TestServer.java +++ b/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/TestServer.java @@ -18,13 +18,24 @@ package org.eclipse.jetty; +import java.io.File; +import java.io.IOException; +import java.lang.management.ManagementFactory; +import java.nio.file.FileSystems; +import java.nio.file.Files; +import java.nio.file.Path; + +import javax.servlet.ServletException; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + import org.eclipse.jetty.jmx.MBeanContainer; import org.eclipse.jetty.security.HashLoginService; +import org.eclipse.jetty.server.CustomRequestLog; import org.eclipse.jetty.server.ForwardedRequestCustomizer; import org.eclipse.jetty.server.Handler; import org.eclipse.jetty.server.HttpConfiguration; import org.eclipse.jetty.server.HttpConnectionFactory; -import org.eclipse.jetty.server.NCSARequestLog; import org.eclipse.jetty.server.Request; import org.eclipse.jetty.server.SecureRequestCustomizer; import org.eclipse.jetty.server.Server; @@ -44,16 +55,6 @@ import org.eclipse.jetty.util.thread.QueuedThreadPool; import org.eclipse.jetty.webapp.WebAppContext; import org.junit.jupiter.api.Disabled; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.File; -import java.io.IOException; -import java.lang.management.ManagementFactory; -import java.nio.file.FileSystems; -import java.nio.file.Files; -import java.nio.file.Path; - @Disabled("Not a test case") public class TestServer { @@ -121,8 +122,7 @@ public class TestServer server.addBean(login); File log=File.createTempFile("jetty-yyyy_mm_dd", "log"); - NCSARequestLog requestLog = new NCSARequestLog(log.toString()); - requestLog.setExtended(false); + CustomRequestLog requestLog = new CustomRequestLog(log.toString()); server.setRequestLog(requestLog); server.setStopAtShutdown(true); From fc39e966535ab6082a991412879d463f6fa80753 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Thu, 29 Nov 2018 10:34:42 +0100 Subject: [PATCH 207/931] Issue #113 Updated customrequestlog module defaults for timezone Signed-off-by: Greg Wilkins --- jetty-server/src/main/config/modules/customrequestlog.mod | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/jetty-server/src/main/config/modules/customrequestlog.mod b/jetty-server/src/main/config/modules/customrequestlog.mod index 68517d85de9..a668d82b887 100644 --- a/jetty-server/src/main/config/modules/customrequestlog.mod +++ b/jetty-server/src/main/config/modules/customrequestlog.mod @@ -34,8 +34,8 @@ logs/ ## Whether to append to existing file # jetty.requestlog.append=false -## Timezone of the log entries +## Timezone of the log file rollover # jetty.requestlog.timezone=GMT ## Format string -# jetty.requestlog.formatString=%a - %u %t "%r" %s %B "%{Referer}i" "%{User-Agent}i" "%C" +# jetty.requestlog.formatString=%a - %u %{dd/MMM/yyyy:HH:mm:ss ZZZ|GMT}t "%r" %s %B "%{Referer}i" "%{User-Agent}i" "%C" From 7742650fa54d135c56ed18f2e86ab526019b2259 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Thu, 29 Nov 2018 10:55:00 +0100 Subject: [PATCH 208/931] Issue #113 Fixed property names Signed-off-by: Greg Wilkins --- jetty-server/src/main/config/etc/jetty-customrequestlog.xml | 4 ++-- jetty-server/src/main/config/modules/customrequestlog.mod | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/jetty-server/src/main/config/etc/jetty-customrequestlog.xml b/jetty-server/src/main/config/etc/jetty-customrequestlog.xml index 6b605261356..baae68fb8c3 100644 --- a/jetty-server/src/main/config/etc/jetty-customrequestlog.xml +++ b/jetty-server/src/main/config/etc/jetty-customrequestlog.xml @@ -16,7 +16,7 @@ / - jetty.customrequestlog.filePath + jetty.requestlog.filePath /yyyy_mm_dd.request.log @@ -30,7 +30,7 @@ - + diff --git a/jetty-server/src/main/config/modules/customrequestlog.mod b/jetty-server/src/main/config/modules/customrequestlog.mod index a668d82b887..6f3e127058a 100644 --- a/jetty-server/src/main/config/modules/customrequestlog.mod +++ b/jetty-server/src/main/config/modules/customrequestlog.mod @@ -38,4 +38,4 @@ logs/ # jetty.requestlog.timezone=GMT ## Format string -# jetty.requestlog.formatString=%a - %u %{dd/MMM/yyyy:HH:mm:ss ZZZ|GMT}t "%r" %s %B "%{Referer}i" "%{User-Agent}i" "%C" +# jetty.customrequestlog.formatString=%a - %u %{dd/MMM/yyyy:HH:mm:ss ZZZ|GMT}t "%r" %s %B "%{Referer}i" "%{User-Agent}i" "%C" From 132aef44209ef2803b65f08d11874f18a373908b Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Thu, 29 Nov 2018 12:10:18 +0100 Subject: [PATCH 209/931] Issue #113 default to extended format Signed-off-by: Greg Wilkins --- .../main/java/org/eclipse/jetty/server/CustomRequestLog.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java index 0f769c785be..cd80f08bf69 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java @@ -307,7 +307,7 @@ public class CustomRequestLog extends ContainerLifeCycle implements RequestLog public CustomRequestLog(String file) { - this(file, NCSA_FORMAT); + this(file, EXTENDED_NCSA_FORMAT); } public CustomRequestLog(String file, String format) From b4ab8a07c12cd8c3bd5f242b02ab37c61ab06676 Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Fri, 30 Nov 2018 17:55:51 +1000 Subject: [PATCH 210/931] #2718 take care of starting new created context (#3145) Signed-off-by: olivier lamy --- .../jetty/http/spi/JettyHttpServer.java | 12 ++ .../http/spi/JettyHttpServerProvider.java | 11 +- .../TestEndpointMultiplePublishProblem.java | 120 +++++++++++++++--- 3 files changed, 117 insertions(+), 26 deletions(-) diff --git a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServer.java b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServer.java index cb0a3754af0..2a4e385f5a0 100644 --- a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServer.java +++ b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServer.java @@ -243,6 +243,18 @@ public class JettyHttpServer extends com.sun.net.httpserver.HttpServer chc.addHandler(jettyContextHandler); _contexts.put(path, context); + if(!jettyContextHandler.isStarted()) + { + try + { + jettyContextHandler.start(); + } + catch ( Exception e ) + { + throw new RuntimeException( e.getMessage(), e ); + } + } + return context; } diff --git a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServerProvider.java b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServerProvider.java index eb5f07eca92..d0409aecd23 100644 --- a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServerProvider.java +++ b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServerProvider.java @@ -18,9 +18,9 @@ package org.eclipse.jetty.http.spi; -import java.io.IOException; -import java.net.InetSocketAddress; - +import com.sun.net.httpserver.HttpServer; +import com.sun.net.httpserver.HttpsServer; +import com.sun.net.httpserver.spi.HttpServerProvider; import org.eclipse.jetty.server.Handler; import org.eclipse.jetty.server.Server; import org.eclipse.jetty.server.handler.ContextHandlerCollection; @@ -29,9 +29,8 @@ import org.eclipse.jetty.server.handler.HandlerCollection; import org.eclipse.jetty.util.thread.QueuedThreadPool; import org.eclipse.jetty.util.thread.ThreadPool; -import com.sun.net.httpserver.HttpServer; -import com.sun.net.httpserver.HttpsServer; -import com.sun.net.httpserver.spi.HttpServerProvider; +import java.io.IOException; +import java.net.InetSocketAddress; /** * Jetty implementation of Java HTTP Server SPI diff --git a/jetty-http-spi/src/test/java/org/eclipse/jetty/http/spi/TestEndpointMultiplePublishProblem.java b/jetty-http-spi/src/test/java/org/eclipse/jetty/http/spi/TestEndpointMultiplePublishProblem.java index aca8ddb5ad9..09d021993ca 100644 --- a/jetty-http-spi/src/test/java/org/eclipse/jetty/http/spi/TestEndpointMultiplePublishProblem.java +++ b/jetty-http-spi/src/test/java/org/eclipse/jetty/http/spi/TestEndpointMultiplePublishProblem.java @@ -18,68 +18,148 @@ package org.eclipse.jetty.http.spi; +import org.eclipse.jetty.client.HttpClient; +import org.eclipse.jetty.client.api.ContentResponse; import org.eclipse.jetty.server.Server; import org.eclipse.jetty.server.ServerConnector; import org.eclipse.jetty.server.handler.ContextHandlerCollection; import org.eclipse.jetty.util.thread.QueuedThreadPool; import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; import javax.jws.WebMethod; import javax.jws.WebService; +import javax.xml.namespace.QName; +import javax.xml.ws.BindingProvider; import javax.xml.ws.Endpoint; +import javax.xml.ws.Service; +import javax.xml.ws.WebEndpoint; +import javax.xml.ws.WebServiceClient; +import java.net.URL; public class TestEndpointMultiplePublishProblem { - private static String default_impl = System.getProperty("com.sun.net.httpserver.HttpServerProvider"); + private static String default_impl = System.getProperty( "com.sun.net.httpserver.HttpServerProvider" ); @BeforeAll public static void change_Impl() { - System.setProperty("com.sun.net.httpserver.HttpServerProvider", JettyHttpServerProvider.class.getName()); + System.setProperty( "com.sun.net.httpserver.HttpServerProvider", JettyHttpServerProvider.class.getName() ); } @AfterAll public static void restore_Impl() { - if(default_impl != null) + if ( default_impl != null ) { System.setProperty( "com.sun.net.httpserver.HttpServerProvider", default_impl ); } } @Test - public void mainJetty() throws Exception { + public void mainJetty() + throws Exception + { - Server jettyWebServer = new Server(new DelegatingThreadPool(new QueuedThreadPool())); - ServerConnector connector = new ServerConnector(jettyWebServer); - connector.setHost("localhost"); - connector.setPort(0); - connector.setReuseAddress(true); - jettyWebServer.addConnector(connector); - jettyWebServer.setHandler(new ContextHandlerCollection()); + Server jettyWebServer = new Server( new DelegatingThreadPool( new QueuedThreadPool() ) ); + ServerConnector connector = new ServerConnector( jettyWebServer ); + connector.setHost( "localhost" ); + connector.setPort( 0 ); + connector.setReuseAddress( true ); + jettyWebServer.addConnector( connector ); + jettyWebServer.setHandler( new ContextHandlerCollection() ); - JettyHttpServerProvider.setServer(jettyWebServer); + JettyHttpServerProvider.setServer( jettyWebServer ); jettyWebServer.start(); - Endpoint.publish(String.format("http://%s:%d/hello", "localhost", 0), new Ws()); - // Comment out the below line for success in later java such as java8_u172, works before u151 or so - Endpoint.publish(String.format("http://%s:%d/hello2", "localhost", 0), new Ws()); + Endpoint.publish( String.format( "http://%s:%d/hello", "localhost", 0 ), new WsHello() ); + Endpoint.publish( String.format( "http://%s:%d/hello2", "localhost", 0 ), new WsHello() ); int port = connector.getLocalPort(); - System.out.printf("Started, check: http://localhost:%d/hello?wsdl%n", port); + HttpClient httpClient = new HttpClient(); + httpClient.start(); + + { + String url = String.format( "http://localhost:%d/hello", port ); + String urlWsdl = url + "?wsdl"; + + ContentResponse contentResponse = httpClient.newRequest( url ).send(); + Assertions.assertEquals( 200, contentResponse.getStatus() ); + + HelloMessengerService helloMessengerService = new HelloMessengerService( new URL( urlWsdl ) ); + Hello hello = helloMessengerService.getHelloMessengerPort(); + ( (BindingProvider) hello ).getRequestContext().put( BindingProvider.ENDPOINT_ADDRESS_PROPERTY, url ); + String helloResponse = hello.hello(); + Assertions.assertEquals( "G'Day mate!", helloResponse ); + + } + + { + + String url2 = String.format( "http://localhost:%d/hello2", port ); + String url2Wsdl = url2 + "?wsdl"; + + ContentResponse contentResponse = httpClient.newRequest( url2Wsdl ).send(); + Assertions.assertEquals( 200, contentResponse.getStatus() ); + + HelloMessengerService helloMessengerService = new HelloMessengerService( new URL( url2Wsdl ) ); + Hello hello = helloMessengerService.getHelloMessengerPort(); + ( (BindingProvider) hello ).getRequestContext().put( BindingProvider.ENDPOINT_ADDRESS_PROPERTY, url2 ); + String helloResponse = hello.hello(); + Assertions.assertEquals( "G'Day mate!", helloResponse ); + } + httpClient.stop(); + jettyWebServer.stop(); + } + + @WebService( targetNamespace = "http://org.eclipse.jetty.ws.test", name = "HelloService" ) + public interface Hello + { + @WebMethod + String hello(); } - @WebService - public static class Ws { + @WebService( targetNamespace = "http://org.eclipse.jetty.ws.test", name = "HelloService" ) + public static class WsHello + implements Hello + { @WebMethod - public String hello() { - return "Hello"; + public String hello() + { + return "G'Day mate!"; } } + + + @WebServiceClient( name = "HelloService", targetNamespace = "http://org.eclipse.jetty.ws.test" ) + public static class HelloMessengerService + extends Service + { + + public HelloMessengerService( URL wsdlLocation ) + { + super( wsdlLocation, // + new QName( "http://org.eclipse.jetty.ws.test", "WsHelloService" ) ); + } + + @WebEndpoint( name = "HelloServicePort" ) + public Hello getHelloMessengerPort() + { + return super.getPort( new QName( "http://org.eclipse.jetty.ws.test", "HelloServicePort" ), // + Hello.class ); + } + } + + + private void assertWsdl( String wsdl ) + throws Exception + { + + } } From e7be37688286de892e1c0b52fe17ae111168c3b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Torbj=C3=B8rn=20Martinsen?= Date: Thu, 6 Dec 2018 08:59:08 +0100 Subject: [PATCH 211/931] Update DoSFilter.java (#3191) Add missing word and remove extra space in comments --- .../src/main/java/org/eclipse/jetty/servlets/DoSFilter.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/DoSFilter.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/DoSFilter.java index de827433e46..8fb7fab549d 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/DoSFilter.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/DoSFilter.java @@ -316,10 +316,10 @@ public class DoSFilter implements Filter // Get a rate tracker associated with this request, and record one hit. tracker = getRateTracker(request); - // Calculate the rate and check it is over the allowed limit + // Calculate the rate and check if it is over the allowed limit final boolean overRateLimit = tracker.isRateExceeded(System.currentTimeMillis()); - // Pass it through if we are not currently over the rate limit. + // Pass it through if we are not currently over the rate limit. if (!overRateLimit) { if (LOG.isDebugEnabled()) From 71c0e474468dd01764a0ca43f282d16ea751dfe9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Christian=20Seime?= Date: Mon, 10 Dec 2018 13:23:15 +0100 Subject: [PATCH 212/931] Change access of LowResourceCheck to public MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This interface is currently package-private while it's in the signature of several public methods (e.g. addLowResourceCheck, getLowResourceChecks) Signed-off-by: Bjørn Christian Seime --- .../main/java/org/eclipse/jetty/server/LowResourceMonitor.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/LowResourceMonitor.java b/jetty-server/src/main/java/org/eclipse/jetty/server/LowResourceMonitor.java index 742958ddba7..896e1bdc3dd 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/LowResourceMonitor.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/LowResourceMonitor.java @@ -442,7 +442,7 @@ public class LowResourceMonitor extends ContainerLifeCycle { } - interface LowResourceCheck + public interface LowResourceCheck { boolean isLowOnResources(); From 6af567a4b99ebd48df43715f55b2a046269eac86 Mon Sep 17 00:00:00 2001 From: Jan Bartel Date: Tue, 11 Dec 2018 06:33:44 +0100 Subject: [PATCH 213/931] Handle ServletContainerInitializer from WEB-INF/classes #3146 (#3158) * Handle the case where a ServletContainerInitializer comes from WEB-INF/classes Signed-off-by: Jan Bartel --- .../annotations/AnnotationConfiguration.java | 109 ++++++++-- .../test/jar/test-sci-for-container-path.jar | Bin 0 -> 3129 bytes .../src/test/jar/test-sci-with-ordering.jar | Bin 0 -> 3120 bytes .../TestAnnotationConfiguration.java | 198 +++++++++++++----- ...bInfClassServletContainerInitializer.java} | 4 +- .../javax.servlet.ServletContainerInitializer | 2 +- 6 files changed, 231 insertions(+), 82 deletions(-) create mode 100644 jetty-annotations/src/test/jar/test-sci-for-container-path.jar create mode 100644 jetty-annotations/src/test/jar/test-sci-with-ordering.jar rename jetty-annotations/src/test/java/org/eclipse/jetty/annotations/{ServerServletContainerInitializer.java => WebInfClassServletContainerInitializer.java} (90%) diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationConfiguration.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationConfiguration.java index 9d1cc3661bc..e9a39abd080 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationConfiguration.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationConfiguration.java @@ -667,6 +667,21 @@ public class AnnotationConfiguration extends AbstractConfiguration if (context == null) throw new IllegalArgumentException("WebAppContext null"); + //if we don't know where its from it can't be excluded + if (sciResource == null) + { + if (LOG.isDebugEnabled()) + LOG.debug("!Excluded {} null resource", sci); + return false; + } + + //A ServletContainerInitialier that came from WEB-INF/classes or equivalent cannot be excluded by an ordering + if (isFromWebInfClasses(context, sciResource)) + { + if (LOG.isDebugEnabled()) + LOG.debug("!Excluded {} from web-inf/classes", sci); + return false; + } //A ServletContainerInitializer that came from the container's classpath cannot be excluded by an ordering //of WEB-INF/lib jars @@ -695,14 +710,7 @@ public class AnnotationConfiguration extends AbstractConfiguration return true; } - if (sciResource == null) - { - //not from a jar therefore not from WEB-INF so not excludable - if (LOG.isDebugEnabled()) - LOG.debug("!Excluded {} not from jar", sci); - return false; - } - + //Check if it is excluded by an ordering URI loadingJarURI = sciResource.getURI(); boolean found = false; Iterator itor = orderedJars.iterator(); @@ -748,7 +756,46 @@ public class AnnotationConfiguration extends AbstractConfiguration { if (sci == null) return false; - return sci.getClass().getClassLoader()==context.getClassLoader().getParent(); + + ClassLoader sciLoader = sci.getClass().getClassLoader(); + + //if loaded by bootstrap loader, then its the container classpath + if ( sciLoader == null) + return true; + + //if there is no context classloader, then its the container classpath + if (context.getClassLoader() == null) + return true; + + ClassLoader loader = sciLoader; + while (loader != null) + { + if (loader == context.getClassLoader()) + return false; //the webapp classloader is in the ancestry of the classloader for the sci + else + loader = loader.getParent(); + } + + return true; + } + + /** + * Test if the ServletContainerInitializer is from WEB-INF/classes + * + * @param context the webapp to test + * @param sci a Resource representing the SCI + * @return true if the sci Resource is inside a WEB-INF/classes directory, false otherwise + */ + public boolean isFromWebInfClasses (WebAppContext context, Resource sci) + { + for (Resource dir : context.getMetaData().getWebInfClassesDirs()) + { + if (dir.equals(sci)) + { + return true; + } + } + return false; } /** @@ -834,27 +881,47 @@ public class AnnotationConfiguration extends AbstractConfiguration //No jetty-specific ordering specified, or just the wildcard value "*" specified. //Fallback to ordering the ServletContainerInitializers according to: //container classpath first, WEB-INF/classes then WEB-INF/lib (obeying any web.xml jar ordering) - - //no web.xml ordering defined, add SCIs in any order + + //First add in all SCIs that can't be excluded + int lastContainerSCI = -1; + for (Map.Entry entry:sciResourceMap.entrySet()) + { + if (entry.getKey().getClass().getClassLoader()==context.getClassLoader().getParent()) + { + nonExcludedInitializers.add(++lastContainerSCI, entry.getKey()); //add all container SCIs before any webapp SCIs + } + else if (entry.getValue() == null) //can't work out provenance of SCI, so can't be ordered/excluded + { + nonExcludedInitializers.add(entry.getKey()); //add at end of list + } + else + { + for (Resource dir : context.getMetaData().getWebInfClassesDirs()) + { + if (dir.equals(entry.getValue()))//from WEB-INF/classes so can't be ordered/excluded + { + nonExcludedInitializers.add(entry.getKey()); + } + } + } + } + + //throw out the ones we've already accounted for + for (ServletContainerInitializer s:nonExcludedInitializers) + sciResourceMap.remove(s); + if (context.getMetaData().getOrdering() == null) { if (LOG.isDebugEnabled()) LOG.debug("No web.xml ordering, ServletContainerInitializers in random order"); + //add the rest of the scis nonExcludedInitializers.addAll(sciResourceMap.keySet()); } else { if (LOG.isDebugEnabled()) LOG.debug("Ordering ServletContainerInitializers with ordering {}",context.getMetaData().getOrdering()); - for (Map.Entry entry:sciResourceMap.entrySet()) - { - //add in SCIs from the container classpath - if (entry.getKey().getClass().getClassLoader()==context.getClassLoader().getParent()) - nonExcludedInitializers.add(entry.getKey()); - else if (entry.getValue() == null) //add in SCIs not in a jar, as they must be from WEB-INF/classes and can't be ordered - nonExcludedInitializers.add(entry.getKey()); - } - + //add SCIs according to the ordering of its containing jar for (Resource webInfJar:context.getMetaData().getOrderedWebInfJars()) { @@ -874,7 +941,7 @@ public class AnnotationConfiguration extends AbstractConfiguration ListIterator it = nonExcludedInitializers.listIterator(); while (it.hasNext()) { - ServletContainerInitializer sci = it.next(); + ServletContainerInitializer sci = it.next(); if (!isFromContainerClassPath(context, sci)) { if (LOG.isDebugEnabled()) diff --git a/jetty-annotations/src/test/jar/test-sci-for-container-path.jar b/jetty-annotations/src/test/jar/test-sci-for-container-path.jar new file mode 100644 index 0000000000000000000000000000000000000000..d6fa63a78d67a2e0f627ac751f5d37a201ebd30d GIT binary patch literal 3129 zcmWIWW@h1H0D)VTwZ32ml;8x?zOEsTx}JV+`T~t1dKY=Ub+yi&Ilno`;EM5sr$stm=T7K&>pF3;KUoqsMNIpE zO2y7O-9f_MLBS<+wbqKra0^W~4ic>qJ{|N~r01*8S0A9fmvOPzflZN}m7W51UF*WV z%r0;_-@W1zrx&Nk0CO6q4_JUsOU}=QJ04R7$d4cuiOIRCc$5ht`>{B+s4O!%wHU6R z0~~Z=I}TWOF)}b%Gczz4AR8MDRG(S|B6Ctpob&Ta5;OBsi#+o(OEMF4GOJRH^pbND zi;H`MPWv5l5V2M6XWAG4!!0&rg2d}XvMsz9kF;d)wEYcGw^*_z#me+W{6?d~hwMKB zk6E)iKI(RTUwm$6@$&C)|2`ExAX#SIk$CygwANg1Yo3#nzAVu*KJv-Ew5{Ukeqo-^ zp)WgEZ@4S)YMOb>DxJ{U_T8oHmYifix?|sT#>0hIKi)PgzjbIG=U0U(8`oVBy?=R5 z#}(CB#hu#oTeOUp)UIE)^HO5_LzDR2kL-EvQM*{K9o2Yy%W?j}e}`0d?aELwI{rf1 zePWG!xnxoOVaZL8lWofE+$|;2b-o5qulC*j=#zqm=&7Sdf+^>A_r1t?S>4zw!y7!= zxBqp3;BnVFrAhzY&s_NvVEM>NDz*LpzL%Yfa~zpG+YUY1-;|iRmK zXeQ(R3*yFG<3xHIHVYQ4zc0h!YtsI6g+Fuh#C1_pmuBBHx+&WA_(}N0-Xm)Q_sF?Q z%fk{BBwjbD&fD@97@yyOaVv?O4$4!Lbkm9w({oevO7tpnb6O`D<~JJ%w3gSge(LL= zvefC=O{=BB(JP}%48;pXZclv6QdhT9JJ3V>soLv5_saeKbKHy1IZ^O*N(` z!}}f2-%FJE5m5Ntx*Z7Vuc=v z3(N$1crt_cx${@Oea`t_<@VFn^44XVXt`4L+|NqY&Y6`fUFTKKRGryrIWu&nYYd)z z&yVbc+{CifJa}HkECM7j6$48IJpv_y2_9V~sl_F_#mSkvY57IE$*>HsTaZ|i0e1%n z!vzl*lyHMM8tx8!CKdo43rc+!e`US1be`^8t=m@1r%PO4!`e9`t%loUrjWh8?W1gy&&yRZzqd?# zdar9=?)KXY?<$$ZoJ}kK^KnPrNA)W@;+L${EO~CPjkpyMt9>p;;&c4ZFG9)r-5k#v z+y9iiHA}1vWxQHl($uDPP+8}a*J7!^0Rii>j#TinlzXf(ete{@@Hr#(Ya?0szas}094)ZARy>1{3^%jF{9->V@lEL0cQ zpSS8*!Gi7gj{o>(ebz9z$@)TH{`0IK{FY72-O4)NmX+LbpY+4)kKu(U?5KI=2T$v% zB4Fw%17asKQxPc63ySg!Qj1D5Q;T`eY~%tKJPa59?t65=@{wn2Sbwn@Y78ms{WFat-2>VqYcwgE_#Pkx7IZce4TLEg%qJ zc9|MVOHQDy$(ufZ_lDUC0)}if-Id0V=!^nxA88 zh8LmuoB%4!5vItpBKehsf*4@~_QD-z$CAc;GHrks^~e^18tv#M3c{jfcJjP}TD}B$ Tv$BEA<`|Nw>w2!y0-bG$-U9EFx&TkGfxMKX^X_1cCxf43xx=tMIPnLvD5z{`P zQn7PRcaX4mP;kjyt+gUD+(MI$gG6hDPX~P#>G|sO)dwi=WnAoaU{hpgrKdn$*Sc^o zvkP3#cdxj_>BZ?Wz?_EZ0~VmulJj%nj>l91@*_w^VsdUOk}{AVfiiF)1Z2U3qBymv zEHgQ^7_OcJ9CW2IfzNvw85m5N85s0{>fy#Z0?iHv>d8qhan8>xNzBYkE%MCEEXhpF z$*f8((o4=sEH3U1I_-DJLBv+sL+~iO*1kYtUoP&~hh$rh2>AMR9J{hX{uN96lxbUn zoBxSw3yaq^$fxcJ4pFg7xcGZc@v}QGYiq0P7z>*2@(A59*^ruW`v9NwDka;Mt9Up! z-$?Md_9yz_hJfkwcJx^J3f}p!%zJ9g-SQo`A2eS1>2A34UCN1oRn~RKANjdQEKkW1 zytCWsYK?#4B2K**OebT1YBU)g?sq@Z&01LCg<0zRIFKkX;)qR*`FMB$1Ve`^}1Nxq84xN6(jT%Ngo!o(%z_0;fYveG3 z=asC)vcw8K5EqyY^zdW{?{nv`di$L7y;{s7ba16>s^v=6b3ZFpJ7-p|be&f@Q*~yi z<;>8Pt}%GBJwLJwaudr^^Wa$(vjmX9R1D0ydT0d#df8}mRoc1HU%e8qDQ;q9+;(}tKKI6CYv1eY6`#}YeMn3BRgg7%6Z`Y2 z7k_7Un}>2nNvtf{yS}cb-sSsMX6+TF&p4E(OkDeSpH)jjdCQhP?7cgmK4Q4BW7eLU zYPIP^_k8BL@hx_Hyoc9@1*tOKOy||o^*+q!-jVU~ zM0MRExtRM75nnAQruXXn=!h=8`)rC?Sw;JL>3JS;65KlP{MM^@czyc&iD^^aAs)~C zvk%_;nHtw-&0g0xdy~-V7eX;N1fSclbGp}EJXiYMn!6{ng^%ZjGV?usa+_~$%&(%$ zOI<|V_OIMkoOy8l`SJ`WTz zob;c2%@3rU0!l<*A8q(v2#o7eAa*1_&I^k23sQ?pGE<9rPaNbrWWd94p?bg4hT`M5 z8eb%+3w|{4|J``wnC_t{&&^%+>)-#FrL8Iy()HoTp_ZwWGM|;USFd~E|KQGr-v?zM z)XY3s{w_o8qt zg@Nr5xZBX{Ds*Ge3vh%n=D?tZ8w2+u(ZxB!BFsnwmD3O)!0`Y7PGpN`7!N%OfCr5G6~1H!B;+NM0a(2~13e93UP5v8xm( literal 0 HcmV?d00001 diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestAnnotationConfiguration.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestAnnotationConfiguration.java index 4a0b25f79ce..275366c1e1f 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestAnnotationConfiguration.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestAnnotationConfiguration.java @@ -28,6 +28,7 @@ import java.net.URL; import java.net.URLClassLoader; import java.util.ArrayList; import java.util.Arrays; +import java.util.Collections; import java.util.HashSet; import java.util.List; import java.util.Set; @@ -37,6 +38,7 @@ import javax.servlet.ServletContainerInitializer; import org.eclipse.jetty.toolchain.test.MavenTestingUtils; import org.eclipse.jetty.util.resource.Resource; import org.eclipse.jetty.webapp.FragmentDescriptor; +import org.eclipse.jetty.webapp.RelativeOrdering; import org.eclipse.jetty.webapp.WebAppContext; import org.junit.jupiter.api.Test; @@ -126,68 +128,148 @@ public class TestAnnotationConfiguration File web25 = MavenTestingUtils.getTestResourceFile("web25.xml"); File web31false = MavenTestingUtils.getTestResourceFile("web31false.xml"); File web31true = MavenTestingUtils.getTestResourceFile("web31true.xml"); - Set sciNames = new HashSet<>(Arrays.asList("org.eclipse.jetty.annotations.ServerServletContainerInitializer", "com.acme.initializer.FooInitializer")); - + //prepare an sci that will be on the webapp's classpath File jarDir = new File(MavenTestingUtils.getTestResourcesDir().getParentFile(), "jar"); File testSciJar = new File(jarDir, "test-sci.jar"); - assertTrue(testSciJar.exists()); - URLClassLoader webAppLoader = new URLClassLoader(new URL[] {testSciJar.toURI().toURL()}, Thread.currentThread().getContextClassLoader()); - - //test 3.1 webapp loads both server and app scis - AnnotationConfiguration config = new AnnotationConfiguration(); - WebAppContext context = new WebAppContext(); - context.setClassLoader(webAppLoader); - context.getMetaData().setWebXml(Resource.newResource(web31true)); - context.getServletContext().setEffectiveMajorVersion(3); - context.getServletContext().setEffectiveMinorVersion(1); - List scis = config.getNonExcludedInitializers(context); - assertNotNull(scis); - assertEquals(2, scis.size()); - assertTrue (sciNames.contains(scis.get(0).getClass().getName())); - assertTrue (sciNames.contains(scis.get(1).getClass().getName())); - - //test a 3.1 webapp with metadata-complete=false loads both server and webapp scis - config = new AnnotationConfiguration(); - context = new WebAppContext(); - context.setClassLoader(webAppLoader); - context.getMetaData().setWebXml(Resource.newResource(web31false)); - context.getServletContext().setEffectiveMajorVersion(3); - context.getServletContext().setEffectiveMinorVersion(1); - scis = config.getNonExcludedInitializers(context); - assertNotNull(scis); - assertEquals(2, scis.size()); - assertTrue (sciNames.contains(scis.get(0).getClass().getName())); - assertTrue (sciNames.contains(scis.get(1).getClass().getName())); - - - //test 2.5 webapp with configurationDiscovered=false loads only server scis - config = new AnnotationConfiguration(); - context = new WebAppContext(); - context.setClassLoader(webAppLoader); - context.getMetaData().setWebXml(Resource.newResource(web25)); - context.getServletContext().setEffectiveMajorVersion(2); - context.getServletContext().setEffectiveMinorVersion(5); - scis = config.getNonExcludedInitializers(context); - assertNotNull(scis); - assertEquals(1, scis.size()); - assertTrue ("org.eclipse.jetty.annotations.ServerServletContainerInitializer".equals(scis.get(0).getClass().getName())); - - //test 2.5 webapp with configurationDiscovered=true loads both server and webapp scis - config = new AnnotationConfiguration(); - context = new WebAppContext(); - context.setConfigurationDiscovered(true); - context.setClassLoader(webAppLoader); - context.getMetaData().setWebXml(Resource.newResource(web25)); - context.getServletContext().setEffectiveMajorVersion(2); - context.getServletContext().setEffectiveMinorVersion(5); - scis = config.getNonExcludedInitializers(context); - assertNotNull(scis); - assertEquals(2, scis.size()); - assertTrue (sciNames.contains(scis.get(0).getClass().getName())); - assertTrue (sciNames.contains(scis.get(1).getClass().getName())); + assertTrue(testSciJar.exists()); + + File testContainerSciJar = new File(jarDir, "test-sci-for-container-path.jar"); + URLClassLoader containerLoader = new URLClassLoader(new URL[] {testContainerSciJar.toURI().toURL()}, Thread.currentThread().getContextClassLoader()); + URLClassLoader webAppLoader = new URLClassLoader(new URL[] {testSciJar.toURI().toURL()}, containerLoader); + Resource targetClasses = Resource.newResource(MavenTestingUtils.getTargetDir().toURI()).addPath("/test-classes"); + + ClassLoader old = Thread.currentThread().getContextClassLoader(); + Thread.currentThread().setContextClassLoader(containerLoader); + try + { + + AnnotationConfiguration config = new AnnotationConfiguration(); + WebAppContext context = new WebAppContext(); + List scis; + + //test 3.1 webapp loads both server and app scis + context.setClassLoader(webAppLoader); + context.getMetaData().addWebInfJar(Resource.newResource(testSciJar.toURI().toURL())); + context.getMetaData().setWebXml(Resource.newResource(web31true)); + context.getMetaData().setWebInfClassesDirs(Collections.singletonList(targetClasses)); + context.getServletContext().setEffectiveMajorVersion(3); + context.getServletContext().setEffectiveMinorVersion(1); + scis = config.getNonExcludedInitializers(context); + assertNotNull(scis); + assertEquals(3, scis.size()); + assertEquals("com.acme.ServerServletContainerInitializer", scis.get(0).getClass().getName()); //container path + assertEquals("org.eclipse.jetty.annotations.WebInfClassServletContainerInitializer", scis.get(1).getClass().getName()); //web-inf classes + assertEquals("com.acme.initializer.FooInitializer", scis.get(2).getClass().getName()); //web-inf jar no web-fragment + + //test a 3.1 webapp with metadata-complete=false loads both server and webapp scis + config = new AnnotationConfiguration(); + context = new WebAppContext(); + context.setClassLoader(webAppLoader); + context.getMetaData().setWebXml(Resource.newResource(web31false)); + context.getMetaData().setWebInfClassesDirs(Collections.singletonList(targetClasses)); + context.getMetaData().addWebInfJar(Resource.newResource(testSciJar.toURI().toURL())); + context.getServletContext().setEffectiveMajorVersion(3); + context.getServletContext().setEffectiveMinorVersion(1); + scis = config.getNonExcludedInitializers(context); + assertNotNull(scis); + assertEquals(3, scis.size()); + assertEquals("com.acme.ServerServletContainerInitializer", scis.get(0).getClass().getName()); //container path + assertEquals("org.eclipse.jetty.annotations.WebInfClassServletContainerInitializer", scis.get(1).getClass().getName()); //web-inf classes + assertEquals("com.acme.initializer.FooInitializer", scis.get(2).getClass().getName()); //web-inf jar no web-fragment + + + //test a 3.1 webapp with RELATIVE ORDERING loads sci from equivalent of WEB-INF/classes as well as container path + File orderedFragmentJar = new File(jarDir, "test-sci-with-ordering.jar"); + assertTrue(orderedFragmentJar.exists()); + URLClassLoader orderedLoader = new URLClassLoader(new URL[] {orderedFragmentJar.toURI().toURL(), testSciJar.toURI().toURL()}, Thread.currentThread().getContextClassLoader()); + config = new AnnotationConfiguration(); + context = new WebAppContext(); + context.setClassLoader(orderedLoader); + context.getMetaData().setWebXml(Resource.newResource(web31true)); + RelativeOrdering ordering = new RelativeOrdering(context.getMetaData()); + context.getMetaData().setOrdering(ordering); + context.getMetaData().addWebInfJar(Resource.newResource(orderedFragmentJar.toURI().toURL())); + context.getMetaData().addWebInfJar(Resource.newResource(testSciJar.toURI().toURL())); + context.getMetaData().setWebInfClassesDirs(Collections.singletonList(targetClasses)); + context.getMetaData().orderFragments(); + context.getServletContext().setEffectiveMajorVersion(3); + context.getServletContext().setEffectiveMinorVersion(1); + scis = config.getNonExcludedInitializers(context); + assertNotNull(scis); + assertEquals(4, scis.size()); + assertEquals("com.acme.ServerServletContainerInitializer", scis.get(0).getClass().getName()); //container path + assertEquals("org.eclipse.jetty.annotations.WebInfClassServletContainerInitializer", scis.get(1).getClass().getName()); //web-inf classes + assertEquals("com.acme.AcmeServletContainerInitializer", scis.get(2).getClass().getName()); //first in ordering + assertEquals("com.acme.initializer.FooInitializer", scis.get(3).getClass().getName()); //other in ordering + + + //test 3.1 webapp with a specific SCI ordering + config = new AnnotationConfiguration(); + context = new WebAppContext(); + context.setClassLoader(webAppLoader); + context.getMetaData().setWebXml(Resource.newResource(web31false)); + context.getMetaData().setWebInfClassesDirs(Collections.singletonList(targetClasses)); + context.getMetaData().addWebInfJar(Resource.newResource(testSciJar.toURI().toURL())); + context.getServletContext().setEffectiveMajorVersion(3); + context.getServletContext().setEffectiveMinorVersion(1); + context.setAttribute("org.eclipse.jetty.containerInitializerOrder", "com.acme.initializer.FooInitializer,com.acme.ServerServletContainerInitializer, *"); + scis = config.getNonExcludedInitializers(context); + assertNotNull(scis); + assertEquals(3, scis.size()); + assertEquals("com.acme.initializer.FooInitializer", scis.get(0).getClass().getName()); //web-inf jar no web-fragment + assertEquals("com.acme.ServerServletContainerInitializer", scis.get(1).getClass().getName()); //container path + assertEquals("org.eclipse.jetty.annotations.WebInfClassServletContainerInitializer", scis.get(2).getClass().getName()); //web-inf classes + + + + + //test 2.5 webapp with configurationDiscovered=false loads only server scis + config = new AnnotationConfiguration(); + context = new WebAppContext(); + context.setClassLoader(webAppLoader); + context.getMetaData().setWebXml(Resource.newResource(web25)); + context.getMetaData().setWebInfClassesDirs(Collections.singletonList(targetClasses)); + context.getMetaData().addWebInfJar(Resource.newResource(testSciJar.toURI().toURL())); + context.getServletContext().setEffectiveMajorVersion(2); + context.getServletContext().setEffectiveMinorVersion(5); + scis = config.getNonExcludedInitializers(context); + assertNotNull(scis); + for (ServletContainerInitializer s:scis) + { + //should not have any of the web-inf lib scis in here + assertFalse(s.getClass().getName().equals("com.acme.AcmeServletContainerInitializer")); + assertFalse(s.getClass().getName().equals("com.acme.initializer.FooInitializer")); + //NOTE: should also not have the web-inf classes scis in here either, but due to the + //way the test is set up, the sci we're pretending is in web-inf classes will actually + //NOT be loaded by the webapp's classloader, but rather by the junit classloader, so + //it looks as if it is a container class. + } + + //test 2.5 webapp with configurationDiscovered=true loads both server and webapp scis + config = new AnnotationConfiguration(); + context = new WebAppContext(); + context.setConfigurationDiscovered(true); + context.setClassLoader(webAppLoader); + context.getMetaData().setWebXml(Resource.newResource(web25)); + context.getMetaData().setWebInfClassesDirs(Collections.singletonList(targetClasses)); + context.getMetaData().addWebInfJar(Resource.newResource(testSciJar.toURI().toURL())); + context.getServletContext().setEffectiveMajorVersion(2); + context.getServletContext().setEffectiveMinorVersion(5); + scis = config.getNonExcludedInitializers(context); + assertNotNull(scis); + assertEquals(3, scis.size()); + assertEquals("com.acme.ServerServletContainerInitializer", scis.get(0).getClass().getName()); //container path + assertEquals("org.eclipse.jetty.annotations.WebInfClassServletContainerInitializer", scis.get(1).getClass().getName()); //web-inf classes + assertEquals("com.acme.initializer.FooInitializer", scis.get(2).getClass().getName()); //web-inf jar no web-fragment + + } + finally + { + Thread.currentThread().setContextClassLoader(old); + } } - + @Test public void testGetFragmentFromJar() throws Exception diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ServerServletContainerInitializer.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/WebInfClassServletContainerInitializer.java similarity index 90% rename from jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ServerServletContainerInitializer.java rename to jetty-annotations/src/test/java/org/eclipse/jetty/annotations/WebInfClassServletContainerInitializer.java index 3fbfadce4c5..f770b0d19db 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ServerServletContainerInitializer.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/WebInfClassServletContainerInitializer.java @@ -30,13 +30,13 @@ import javax.servlet.ServletException; * * */ -public class ServerServletContainerInitializer implements ServletContainerInitializer +public class WebInfClassServletContainerInitializer implements ServletContainerInitializer { /** * */ - public ServerServletContainerInitializer() + public WebInfClassServletContainerInitializer() { // TODO Auto-generated constructor stub } diff --git a/jetty-annotations/src/test/resources/META-INF/services/javax.servlet.ServletContainerInitializer b/jetty-annotations/src/test/resources/META-INF/services/javax.servlet.ServletContainerInitializer index 8193f60e4a7..cc22e474171 100644 --- a/jetty-annotations/src/test/resources/META-INF/services/javax.servlet.ServletContainerInitializer +++ b/jetty-annotations/src/test/resources/META-INF/services/javax.servlet.ServletContainerInitializer @@ -1 +1 @@ -org.eclipse.jetty.annotations.ServerServletContainerInitializer \ No newline at end of file +org.eclipse.jetty.annotations.WebInfClassServletContainerInitializer \ No newline at end of file From fb06b821725a1c58b00cf927a0a70df6fb3a82d1 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Thu, 13 Dec 2018 13:42:08 +1100 Subject: [PATCH 214/931] Issue #3030 ignore identity content encoding during parameter extraction Signed-off-by: Greg Wilkins --- .../org/eclipse/jetty/server/Request.java | 9 ++++-- .../org/eclipse/jetty/server/RequestTest.java | 28 +++++++++++++------ 2 files changed, 26 insertions(+), 11 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java index d29d0431d54..314242ec218 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java @@ -68,6 +68,7 @@ import org.eclipse.jetty.http.HttpCookie; import org.eclipse.jetty.http.HttpField; import org.eclipse.jetty.http.HttpFields; import org.eclipse.jetty.http.HttpHeader; +import org.eclipse.jetty.http.HttpHeaderValue; import org.eclipse.jetty.http.HttpMethod; import org.eclipse.jetty.http.HttpScheme; import org.eclipse.jetty.http.HttpStatus; @@ -468,8 +469,12 @@ public class Request implements HttpServletRequest if (MimeTypes.Type.FORM_ENCODED.is(contentType) && _channel.getHttpConfiguration().isFormEncodedMethod(getMethod())) { - if (_metaData!=null && getHttpFields().contains(HttpHeader.CONTENT_ENCODING)) - throw new BadMessageException(HttpStatus.NOT_IMPLEMENTED_501,"Unsupported Content-Encoding"); + if (_metaData!=null) + { + String contentEncoding = getHttpFields().get(HttpHeader.CONTENT_ENCODING); + if (contentEncoding!=null && !HttpHeaderValue.IDENTITY.is(contentEncoding)) + throw new BadMessageException(HttpStatus.NOT_IMPLEMENTED_501, "Unsupported Content-Encoding"); + } extractFormParameters(_contentParameters); } else if (MimeTypes.Type.MULTIPART_FORM_DATA.is(contentType) && diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/RequestTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/RequestTest.java index 802e7b10a28..4b8ec31ac4f 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/RequestTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/RequestTest.java @@ -647,18 +647,29 @@ public class RequestTest assertThat(responses,startsWith("HTTP/1.1 200")); } + @Test + public void testIdentityParamExtraction() throws Exception + { + _handler._checker = (request, response) -> "bar".equals(request.getParameter("foo")); + + //Send a request with encoded form content + String request="POST / HTTP/1.1\r\n"+ + "Host: whatever\r\n"+ + "Content-Type: application/x-www-form-urlencoded; charset=utf-8\n"+ + "Content-Length: 7\n"+ + "Content-Encoding: identity\n"+ + "Connection: close\n"+ + "\n"+ + "foo=bar\n"; + + String responses=_connector.getResponse(request); + assertThat(responses,startsWith("HTTP/1.1 200")); + } @Test public void testEncodedNotParams() throws Exception { - _handler._checker = new RequestTester() - { - @Override - public boolean check(HttpServletRequest request,HttpServletResponse response) - { - return request.getParameter("param")==null; - } - }; + _handler._checker = (request, response) -> request.getParameter("param")==null; //Send a request with encoded form content String request="POST / HTTP/1.1\r\n"+ @@ -674,7 +685,6 @@ public class RequestTest assertThat(responses,startsWith("HTTP/1.1 200")); } - @Test public void testInvalidHostHeader() throws Exception { From 3acb98f47730e79f7439e1e48b3a66edbdb4e437 Mon Sep 17 00:00:00 2001 From: Jan Bartel Date: Thu, 13 Dec 2018 14:57:14 +1100 Subject: [PATCH 215/931] Issue #3161 Update to Apache JSP 8.5.35 (#3163) * Issue #3161 Update to Apache JSP 8.5.35 Signed-off-by: Jan Bartel --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 6964d749aa7..e8e918d8cf0 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ 1.2.3 1.2 1.1.3.v20160715 - 8.5.33.1 + 8.5.35.1 undefined 1.4.1 From 7c4d12fb7dae8874df2bb3200d63bc1e735ac46e Mon Sep 17 00:00:00 2001 From: WalkerWatch Date: Thu, 13 Dec 2018 13:43:22 -0500 Subject: [PATCH 216/931] Updating for customrequestlog impl Signed-off-by: WalkerWatch --- .../configuring-jetty-request-logs.adoc | 24 ++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/jetty-documentation/src/main/asciidoc/administration/logging/configuring-jetty-request-logs.adoc b/jetty-documentation/src/main/asciidoc/administration/logging/configuring-jetty-request-logs.adoc index dd452a02efd..44c7334c761 100644 --- a/jetty-documentation/src/main/asciidoc/administration/logging/configuring-jetty-request-logs.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/logging/configuring-jetty-request-logs.adoc @@ -91,7 +91,29 @@ By default, log files are kept for 90 days before being deleted. The value for `retainDays` (xml) or `setRetainDays` (Java) should be configured as _1 + n_ days. For example, if you wanted to keep the logs for the current day and the day prior you would set the `retainDays` (or `setRetainDays`) value to 2. -To examine more configuration options, see link:{JDURL}/org/eclipse/jetty/server/NCSARequestLog.html[NCSARequestLog.java]. + +[[request-log-custom-writer]] +==== Introducing RequestLog.Writer + +The concept of a `RequestLog.Writer`, introduced in Jetty 9.4.15, manages the writing to a log the string generated by the `RequestLog`. +This allows the `CustomRequestLog` to match the functionality of other `RequestLogger` implementations by plugging in any `RequestLog.Writer` and a custom format string. +Jetty currently has implementations of `RequestLog.Writer`, `RequestLogWriter`, `AsyncRequestLogWriter`, and `Slf4jRequestLogWriter`. + +So, the way to create an asynchronous `RequestLog` using the extended NCSA format has been changed from: + +`new AsyncNcsaRequestLog(filename)` + +to: + +`new CustomRequestLog(new AsyncRequestLogWriter(filename), CustomRequestLog.EXTENDED_NCSA_FORMAT)` + +Additionally, there are now two settings for the log timezone to be configured. +There is the configuration for logging the request time, which is set in the `timeZone` parameter in the `%t` format code of the string, given in the format `%{format|timeZone|locale}t`. + +The other `timeZone` parameter relates to the generation of the log file name (both at creation and roll over). +This is configured in the `requestlog` module file, or can be used as a setter on `RequestLogWriter` via XML. + +Both timezones are set to GMT by default. [[configuring-separate-request-log-for-web-application]] ==== Configuring a Separate Request Log For a Web Application From f26b9f7c156721788e23fe8b322e529c4cf7f1f5 Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Sat, 15 Dec 2018 12:35:16 +1000 Subject: [PATCH 217/931] issue #3186 add it to override javax.annotation provided by maven core (#3194) Signed-off-by: olivier lamy --- Jenkinsfile | 18 ++- .../javax-annotation-api/invoker.properties | 1 + .../src/it/javax-annotation-api/pom.xml | 103 ++++++++++++++++++ .../it/javax-annotation-api/postbuild.groovy | 21 ++++ .../src/main/java/test/App.java | 64 +++++++++++ .../src/main/resources/my.properties | 1 + 6 files changed, 197 insertions(+), 11 deletions(-) create mode 100644 jetty-maven-plugin/src/it/javax-annotation-api/invoker.properties create mode 100644 jetty-maven-plugin/src/it/javax-annotation-api/pom.xml create mode 100644 jetty-maven-plugin/src/it/javax-annotation-api/postbuild.groovy create mode 100644 jetty-maven-plugin/src/it/javax-annotation-api/src/main/java/test/App.java create mode 100644 jetty-maven-plugin/src/it/javax-annotation-api/src/main/resources/my.properties diff --git a/Jenkinsfile b/Jenkinsfile index cc9bec25fd4..538bb9b8ac1 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -9,7 +9,7 @@ pipeline { agent { node { label 'linux' } } options { timeout(time: 120, unit: 'MINUTES') } steps { - mavenBuild("jdk8", "-Pmongodb install") + mavenBuild("jdk8", "-Pmongodb install", "maven3") // Collect up the jacoco execution results (only on main build) jacoco inclusionPattern: '**/org/eclipse/jetty/**/*.class', exclusionPattern: '' + @@ -34,11 +34,7 @@ pipeline { classPattern: '**/target/classes', sourcePattern: '**/src/main/java' warnings consoleParsers: [[parserName: 'Maven'], [parserName: 'Java']] - - script { - step([$class : 'MavenInvokerRecorder', reportsFilenamePattern: "**/target/invoker-reports/BUILD*.xml", - invokerBuildDir: "**/target/its"]) - } + maven_invoker reportsFilenamePattern: "**/target/invoker-reports/BUILD*.xml", invokerBuildDir: "**/target/its" } } @@ -46,9 +42,10 @@ pipeline { agent { node { label 'linux' } } options { timeout(time: 120, unit: 'MINUTES') } steps { - mavenBuild("jdk11", "-Pmongodb install") + mavenBuild("jdk11", "-Pmongodb install", "maven3") junit '**/target/surefire-reports/TEST-*.xml,**/target/failsafe-reports/TEST-*.xml' warnings consoleParsers: [[parserName: 'Maven'], [parserName: 'Java']] + maven_invoker reportsFilenamePattern: "**/target/invoker-reports/BUILD*.xml", invokerBuildDir: "**/target/its" } } @@ -56,7 +53,7 @@ pipeline { agent { node { label 'linux' } } options { timeout(time: 30, unit: 'MINUTES') } steps { - mavenBuild("jdk8", "install javadoc:javadoc -DskipTests") + mavenBuild("jdk8", "install javadoc:javadoc -DskipTests", "maven3") warnings consoleParsers: [[parserName: 'Maven'], [parserName: 'JavaDoc'], [parserName: 'Java']] } } @@ -65,7 +62,7 @@ pipeline { agent { node { label 'linux' } } options { timeout(time: 120, unit: 'MINUTES') } steps { - mavenBuild("jdk8", "-Pcompact3 install -DskipTests") + mavenBuild("jdk8", "-Pcompact3 install -DskipTests", "maven3") warnings consoleParsers: [[parserName: 'Maven'], [parserName: 'Java']] } } @@ -83,8 +80,7 @@ pipeline { * @param cmdline the command line in " "`format. * @return the Jenkinsfile step representing a maven build */ -def mavenBuild(jdk, cmdline) { - def mvnName = 'maven3.5' +def mavenBuild(jdk, cmdline, mvnName) { def localRepo = "${env.JENKINS_HOME}/${env.EXECUTOR_NUMBER}" // ".repository" // def settingsName = 'oss-settings.xml' def mavenOpts = '-Xms1g -Xmx4g -Djava.awt.headless=true' diff --git a/jetty-maven-plugin/src/it/javax-annotation-api/invoker.properties b/jetty-maven-plugin/src/it/javax-annotation-api/invoker.properties new file mode 100644 index 00000000000..e0222d4d54e --- /dev/null +++ b/jetty-maven-plugin/src/it/javax-annotation-api/invoker.properties @@ -0,0 +1 @@ +invoker.goals = test \ No newline at end of file diff --git a/jetty-maven-plugin/src/it/javax-annotation-api/pom.xml b/jetty-maven-plugin/src/it/javax-annotation-api/pom.xml new file mode 100644 index 00000000000..4ef25cb17c3 --- /dev/null +++ b/jetty-maven-plugin/src/it/javax-annotation-api/pom.xml @@ -0,0 +1,103 @@ + + + + 4.0.0 + + + + + org.eclipse.jetty.its + it-parent-pom + 0.0.1-SNAPSHOT + + + javax-annotation-api-test + 1.0.0-SNAPSHOT + war + + + + UTF-8 + 8 + 8 + + ${project.build.directory}/jetty-run-mojo-annotation.txt + 1.3.2 + + + + + javax.servlet + javax.servlet-api + 4.0.1 + provided + + + javax.annotation + javax.annotation-api + ${annotation-api.version} + + + org.springframework.boot + spring-boot-autoconfigure + 2.1.1.RELEASE + + + org.springframework.boot + spring-boot-starter-web + 2.1.1.RELEASE + + + org.springframework.boot + spring-boot-starter-tomcat + + + + + + + + + + org.eclipse.jetty + jetty-maven-plugin + + + start-jetty + test-compile + + start + + + + + jetty.port.file + ${jetty.port.file} + + + true + + + + + + + + + javax.annotation + javax.annotation-api + ${annotation-api.version} + + + javax.annotation + jsr250-api + 1.0 + + + + diff --git a/jetty-maven-plugin/src/it/javax-annotation-api/postbuild.groovy b/jetty-maven-plugin/src/it/javax-annotation-api/postbuild.groovy new file mode 100644 index 00000000000..9533c9ecc2c --- /dev/null +++ b/jetty-maven-plugin/src/it/javax-annotation-api/postbuild.groovy @@ -0,0 +1,21 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +File buildLog = new File( basedir, 'build.log' ) +assert buildLog.text.contains( 'Started Jetty Server' ) +assert buildLog.text.contains( 'all good guys get a good Beer') diff --git a/jetty-maven-plugin/src/it/javax-annotation-api/src/main/java/test/App.java b/jetty-maven-plugin/src/it/javax-annotation-api/src/main/java/test/App.java new file mode 100644 index 00000000000..d03ad70999b --- /dev/null +++ b/jetty-maven-plugin/src/it/javax-annotation-api/src/main/java/test/App.java @@ -0,0 +1,64 @@ +// +// ======================================================================== +// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package test; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.boot.builder.SpringApplicationBuilder; +import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; +import org.springframework.context.annotation.Bean; + +import javax.annotation.PostConstruct; +import javax.annotation.Resource; +import java.io.InputStream; +import java.util.Properties; + +/** + * Hello world! + * + */ +public class App extends SpringBootServletInitializer { + + private Logger logger = LoggerFactory.getLogger( getClass() ); + + @Resource(name="my.properties") + private Properties somePropertyFile; + + @Override + protected SpringApplicationBuilder configure(SpringApplicationBuilder builder ) { + return builder.sources( App.class ); + } + + @PostConstruct + public void done(){ + logger.info( "all good guys get a good {}", somePropertyFile.get( "drink" ) ); + + } + + @Bean(name = "my.properties") + public Properties getSomeProperties() throws Exception{ + Properties properties = new Properties( ); + try(InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream( "my.properties" )) + { + properties.load( inputStream ); + } + return properties; + } + +} diff --git a/jetty-maven-plugin/src/it/javax-annotation-api/src/main/resources/my.properties b/jetty-maven-plugin/src/it/javax-annotation-api/src/main/resources/my.properties new file mode 100644 index 00000000000..5c07b0ed01e --- /dev/null +++ b/jetty-maven-plugin/src/it/javax-annotation-api/src/main/resources/my.properties @@ -0,0 +1 @@ +drink=Beer From 471dab752bad764112393c40666e419b14cc4022 Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Thu, 13 Dec 2018 18:04:03 +1000 Subject: [PATCH 218/931] Update to Maven JAR Plugin 3.1.1 to pick up the fix of MJAR-241 surefire plugin 3.0.0-M2 remove use of Automatic-Module-Name jar plugin property so we avoid failure on jpms module name validation by jar plugin 3.1.1 Signed-off-by: olivier lamy --- jetty-jndi/pom.xml | 10 +++++----- pom.xml | 6 ++---- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/jetty-jndi/pom.xml b/jetty-jndi/pom.xml index f36f315c200..8a62a86eee5 100644 --- a/jetty-jndi/pom.xml +++ b/jetty-jndi/pom.xml @@ -18,11 +18,11 @@ org.apache.felix maven-bundle-plugin true - - - javax.mail.*;resolution:=optional,* - - + + + javax.mail.*;resolution:=optional,* + + org.apache.maven.plugins diff --git a/pom.xml b/pom.xml index e8e918d8cf0..8037056b5b5 100644 --- a/pom.xml +++ b/pom.xml @@ -41,10 +41,9 @@ false - ${bundle-symbolic-name} - 2.22.1 + 3.0.0-M2 3.8.0 3.1.1 3.1.0 @@ -485,12 +484,11 @@ org.apache.maven.plugins maven-jar-plugin - 3.1.0 + 3.1.1 ${project.build.outputDirectory}/META-INF/MANIFEST.MF - ${jpms-module-name} ${project.version} Eclipse Jetty Project ${jetty.url} From 9af977fa932071f0d094a86e129de62195bf71aa Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Mon, 17 Dec 2018 09:24:11 +1000 Subject: [PATCH 219/931] fix async-rest-jar bundle name typo Signed-off-by: olivier lamy --- examples/async-rest/async-rest-jar/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/async-rest/async-rest-jar/pom.xml b/examples/async-rest/async-rest-jar/pom.xml index 9829c3940ab..2935041bd8c 100644 --- a/examples/async-rest/async-rest-jar/pom.xml +++ b/examples/async-rest/async-rest-jar/pom.xml @@ -11,7 +11,7 @@ Example Async Rest :: Jar http://www.eclipse.org/jetty - ${project.groupId}.examples.asyc.rest + ${project.groupId}.examples.async.rest From 34b6ecec6c53e3f94b4247dbac2f25d145bee727 Mon Sep 17 00:00:00 2001 From: Jan Bartel Date: Tue, 18 Dec 2018 09:32:12 +1100 Subject: [PATCH 220/931] Issue #3202 Ensure sessions created during async are cleaned up. Signed-off-by: Jan Bartel --- .../jetty/server/session/SessionHandler.java | 18 ++- .../jetty/server/session/TestFooServlet.java | 20 ++- .../jetty/server/session/AsyncTest.java | 119 ++++++++++++++++++ 3 files changed, 150 insertions(+), 7 deletions(-) create mode 100644 tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/AsyncTest.java diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java index abcd95afb3a..af5232ee7c6 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java @@ -407,6 +407,9 @@ public class SessionHandler extends ScopedHandler */ public void complete(HttpSession session) { + if (LOG.isDebugEnabled()) + LOG.debug("Complete called with session {}", session); + if (session == null) return; @@ -428,6 +431,8 @@ public class SessionHandler extends ScopedHandler { if (request.isAsyncStarted() && request.getDispatcherType() == DispatcherType.REQUEST) { + if (LOG.isDebugEnabled()) + LOG.debug("Adding AsyncListener for {}", request); request.getAsyncContext().addListener(_sessionAsyncListener); } else @@ -1599,6 +1604,9 @@ public class SessionHandler extends ScopedHandler try { + if (LOG.isDebugEnabled()) + LOG.debug("SessionHandler.doScope"); + old_session_manager = baseRequest.getSessionHandler(); old_session = baseRequest.getSession(false); @@ -1622,10 +1630,7 @@ public class SessionHandler extends ScopedHandler } if (LOG.isDebugEnabled()) - { - LOG.debug("sessionHandler=" + this); - LOG.debug("session=" + existingSession); - } + LOG.debug("sessionHandler={} session={}",this, existingSession); if (_nextScope != null) _nextScope.doScope(target,baseRequest,request,response); @@ -1638,8 +1643,9 @@ public class SessionHandler extends ScopedHandler { //if there is a session that was created during handling this context, then complete it HttpSession finalSession = baseRequest.getSession(false); - if (LOG.isDebugEnabled()) LOG.debug("FinalSession="+finalSession+" old_session_manager="+old_session_manager+" this="+this); - if ((finalSession != null) && (old_session_manager != this)) + if (LOG.isDebugEnabled()) + LOG.debug("FinalSession={}, old_session_manager={}, this={}, calling complete={}", finalSession, old_session_manager, this, (old_session_manager != this)); + if (old_session_manager != this) { complete((Session)finalSession, baseRequest); } diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestFooServlet.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestFooServlet.java index 548a5498106..621c95b74c4 100644 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestFooServlet.java +++ b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestFooServlet.java @@ -21,6 +21,7 @@ package org.eclipse.jetty.server.session; import java.io.IOException; import java.lang.reflect.Proxy; +import javax.servlet.AsyncContext; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; @@ -54,6 +55,23 @@ public class TestFooServlet extends HttpServlet if (foo == null || foo.getInt() != 33) response.sendError(500, "Foo not deserialized"); } - + else if ("async".equals(action)) + { + if (request.getAttribute("async-test") == null) + { + request.setAttribute("async-test", Boolean.TRUE); + AsyncContext acontext = request.startAsync(); + System.err.println("Starting async and dispatching"); + + acontext.dispatch(); + return; + } + else + { + HttpSession session = request.getSession(true); + System.err.println("After dispatch and finishing response"); + response.getWriter().println("OK"); + } + } } } diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/AsyncTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/AsyncTest.java new file mode 100644 index 00000000000..cfc683d2530 --- /dev/null +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/AsyncTest.java @@ -0,0 +1,119 @@ +// +// ======================================================================== +// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + + +package org.eclipse.jetty.server.session; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; + +import java.io.IOException; + +import javax.servlet.ServletException; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.eclipse.jetty.client.HttpClient; +import org.eclipse.jetty.client.api.ContentResponse; +import org.eclipse.jetty.servlet.ServletContextHandler; +import org.eclipse.jetty.servlet.ServletHolder; +import org.eclipse.jetty.util.log.Log; +import org.eclipse.jetty.util.log.StacklessLogging; +import org.junit.jupiter.api.Test; + + + +/** + * AsyncTest + * + * Tests async handling wrt sessions. + */ +public class AsyncTest +{ + + public static class LatchServlet extends HttpServlet + { + + @Override + protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException + { + resp.getWriter().println("Latched"); + } + + } + + + /** + * Test async with a session. + * + * @throws Exception + */ + @Test + public void testSessionWithAsync() throws Exception + { + + + + DefaultSessionCacheFactory cacheFactory = new DefaultSessionCacheFactory(); + cacheFactory.setEvictionPolicy(SessionCache.EVICT_ON_SESSION_EXIT); + SessionDataStoreFactory storeFactory = new TestSessionDataStoreFactory(); + TestServer server1 = new TestServer(0, -1, -1, cacheFactory, storeFactory); + + String contextPath = ""; + String fooMapping = "/server"; + TestFooServlet servlet = new TestFooServlet(); + ServletHolder holder = new ServletHolder(servlet); + ServletContextHandler contextHandler = server1.addContext(contextPath); + contextHandler.addServlet(holder, fooMapping); + LatchServlet latchServlet = new LatchServlet(); + ServletHolder latchHolder = new ServletHolder(latchServlet); + contextHandler.addServlet(latchHolder, "/latch"); + + server1.start(); + int port1 = server1.getPort(); + + try (StacklessLogging stackless = new StacklessLogging(Log.getLogger("org.eclipse.jetty.server.session"))) + { + HttpClient client = new HttpClient(); + client.start(); + String url = "http://localhost:" + port1 + contextPath + fooMapping+"?action=async"; + + //make a request to set up a session on the server + ContentResponse response = client.GET(url); + assertEquals(HttpServletResponse.SC_OK,response.getStatus()); + + String sessionCookie = response.getHeaders().get("Set-Cookie"); + assertTrue(sessionCookie != null); + + //make another request, when this is handled, the first request is definitely finished being handled + response = client.GET("http://localhost:" + port1 + contextPath + "/latch"); + assertEquals(HttpServletResponse.SC_OK,response.getStatus()); + + //session should now be evicted from the cache after request exited + String id = TestServer.extractSessionId(sessionCookie); + assertFalse(contextHandler.getSessionHandler().getSessionCache().contains(id)); + assertTrue(contextHandler.getSessionHandler().getSessionCache().getSessionDataStore().exists(id)); + } + finally + { + server1.stop(); + } + } +} From 06bbab50f9a96f5e206aa1dc26743dcc428c5ed5 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Tue, 18 Dec 2018 14:07:16 +1100 Subject: [PATCH 221/931] Issue #3202 Handle async cross context session completion --- .../jetty/server/AsyncContextState.java | 69 +++-- .../jetty/server/HttpChannelState.java | 19 ++ .../session/DefaultSessionIdManager.java | 2 +- .../eclipse/jetty/server/session/Session.java | 14 + .../jetty/server/session/SessionHandler.java | 54 ++-- .../nosql/mongodb/AttributeNameTest.java | 2 +- .../jetty/server/session/TestFooServlet.java | 77 ----- .../jetty/server/session/AsyncTest.java | 284 ++++++++++++++++-- .../session/DeleteUnloadableSessionTest.java | 7 +- .../session/SessionEvictionFailureTest.java | 9 +- 10 files changed, 370 insertions(+), 167 deletions(-) delete mode 100644 tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestFooServlet.java diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncContextState.java b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncContextState.java index 4498db8f6e4..596d6055069 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncContextState.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncContextState.java @@ -58,32 +58,7 @@ public class AsyncContextState implements AsyncContext @Override public void addListener(final AsyncListener listener, final ServletRequest request, final ServletResponse response) { - AsyncListener wrap = new AsyncListener() - { - @Override - public void onTimeout(AsyncEvent event) throws IOException - { - listener.onTimeout(new AsyncEvent(event.getAsyncContext(),request,response,event.getThrowable())); - } - - @Override - public void onStartAsync(AsyncEvent event) throws IOException - { - listener.onStartAsync(new AsyncEvent(event.getAsyncContext(),request,response,event.getThrowable())); - } - - @Override - public void onError(AsyncEvent event) throws IOException - { - listener.onError(new AsyncEvent(event.getAsyncContext(),request,response,event.getThrowable())); - } - - @Override - public void onComplete(AsyncEvent event) throws IOException - { - listener.onComplete(new AsyncEvent(event.getAsyncContext(),request,response,event.getThrowable())); - } - }; + AsyncListener wrap = new WrappedAsyncListener(listener, request, response); state().addListener(wrap); } @@ -188,6 +163,46 @@ public class AsyncContextState implements AsyncContext return state(); } - + public static class WrappedAsyncListener implements AsyncListener + { + private final AsyncListener _listener; + private final ServletRequest _request; + private final ServletResponse _response; + public WrappedAsyncListener(AsyncListener listener, ServletRequest request, ServletResponse response) + { + _listener = listener; + _request = request; + _response = response; + } + + public AsyncListener getListener() + { + return _listener; + } + + @Override + public void onTimeout(AsyncEvent event) throws IOException + { + _listener.onTimeout(new AsyncEvent(event.getAsyncContext(), _request, _response,event.getThrowable())); + } + + @Override + public void onStartAsync(AsyncEvent event) throws IOException + { + _listener.onStartAsync(new AsyncEvent(event.getAsyncContext(), _request, _response,event.getThrowable())); + } + + @Override + public void onError(AsyncEvent event) throws IOException + { + _listener.onError(new AsyncEvent(event.getAsyncContext(), _request, _response,event.getThrowable())); + } + + @Override + public void onComplete(AsyncEvent event) throws IOException + { + _listener.onComplete(new AsyncEvent(event.getAsyncContext(), _request, _response,event.getThrowable())); + } + } } diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannelState.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannelState.java index cbe1c3934a6..78e009ea839 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannelState.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannelState.java @@ -149,6 +149,25 @@ public class HttpChannelState } } + public boolean hasListener(AsyncListener listener) + { + try(Locker.Lock lock= _locker.lock()) + { + if (_asyncListeners==null) + return false; + for (AsyncListener l : _asyncListeners) + { + if (l==listener) + return true; + + if (l instanceof AsyncContextState.WrappedAsyncListener && ((AsyncContextState.WrappedAsyncListener)l).getListener()==listener) + return true; + } + + return false; + } + } + public void setTimeout(long ms) { try(Locker.Lock lock= _locker.lock()) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/DefaultSessionIdManager.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/DefaultSessionIdManager.java index b61af4cbef1..70770c6fa7a 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/DefaultSessionIdManager.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/DefaultSessionIdManager.java @@ -55,7 +55,7 @@ public class DefaultSessionIdManager extends ContainerLifeCycle implements Sessi { private final static Logger LOG = Log.getLogger("org.eclipse.jetty.server.session"); - private final static String __NEW_SESSION_ID="org.eclipse.jetty.server.newSessionId"; + public final static String __NEW_SESSION_ID="org.eclipse.jetty.server.newSessionId"; protected static final AtomicLong COUNTER = new AtomicLong(); diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/Session.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/Session.java index 673b400ecd4..cd0fe8c3d03 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/Session.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/Session.java @@ -1148,4 +1148,18 @@ public class Session implements SessionHandler.SessionIf return _resident; } + @Override + public String toString() + { + try (Lock lock = _lock.lock()) + { + return String.format("%s@%x{id=%s,x=%s,req=%d,res=%b}", + getClass().getSimpleName(), + hashCode(), + _sessionData.getId(), + _extendedId, + _requests, + _resident); + } + } } diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java index af5232ee7c6..ac197b78999 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java @@ -162,8 +162,22 @@ public class SessionHandler extends ScopedHandler @Override public void onComplete(AsyncEvent event) throws IOException { - //An async request has completed, so we can complete the session - complete(Request.getBaseRequest(event.getAsyncContext().getRequest()).getSession(false)); + // An async request has completed, so we can complete the session, + // but we must locate the session instance for this context + Request request = Request.getBaseRequest(event.getAsyncContext().getRequest()); + HttpSession session = request.getSession(false); + String id; + if (session!=null) + id = session.getId(); + else + { + id = (String)request.getAttribute(DefaultSessionIdManager.__NEW_SESSION_ID); + if (id==null) + id = request.getRequestedSessionId(); + } + + if (id!=null) + complete(getSession(id)); } @Override @@ -412,7 +426,7 @@ public class SessionHandler extends ScopedHandler if (session == null) return; - + Session s = ((SessionIf)session).getSession(); try @@ -425,25 +439,26 @@ public class SessionHandler extends ScopedHandler LOG.warn(e); } } - - - public void complete (Session session, Request request) + + @Deprecated + public void complete(Session session, Request baseRequest) { - if (request.isAsyncStarted() && request.getDispatcherType() == DispatcherType.REQUEST) + ensureCompletion(baseRequest); + } + + private void ensureCompletion(Request baseRequest) + { + if (baseRequest.isAsyncStarted()) { if (LOG.isDebugEnabled()) - LOG.debug("Adding AsyncListener for {}", request); - request.getAsyncContext().addListener(_sessionAsyncListener); + LOG.debug("Adding AsyncListener for {}", baseRequest); + if (!baseRequest.getHttpChannelState().hasListener(_sessionAsyncListener)) + baseRequest.getAsyncContext().addListener(_sessionAsyncListener); } else { - complete(session); + complete(baseRequest.getSession(false)); } - //if dispatcher type is not async and not request, complete immediately (its a forward or an include) - - //else if dispatcher type is request and not async, complete immediately - - //else register an async callback completion listener that will complete the session } @@ -460,7 +475,6 @@ public class SessionHandler extends ScopedHandler _context=ContextHandler.getCurrentContext(); _loader=Thread.currentThread().getContextClassLoader(); - synchronized (server) { //Get a SessionDataStore and a SessionDataStore, falling back to in-memory sessions only @@ -477,7 +491,6 @@ public class SessionHandler extends ScopedHandler _sessionCache.setSessionDataStore(sds); } - if (_sessionIdManager==null) { @@ -1642,13 +1655,10 @@ public class SessionHandler extends ScopedHandler finally { //if there is a session that was created during handling this context, then complete it - HttpSession finalSession = baseRequest.getSession(false); if (LOG.isDebugEnabled()) - LOG.debug("FinalSession={}, old_session_manager={}, this={}, calling complete={}", finalSession, old_session_manager, this, (old_session_manager != this)); + LOG.debug("FinalSession={}, old_session_manager={}, this={}, calling complete={}", baseRequest.getSession(false), old_session_manager, this, (old_session_manager != this)); if (old_session_manager != this) - { - complete((Session)finalSession, baseRequest); - } + ensureCompletion(baseRequest); if (old_session_manager != null && old_session_manager != this) { diff --git a/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/AttributeNameTest.java b/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/AttributeNameTest.java index d06871b6caa..876bd7e134e 100644 --- a/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/AttributeNameTest.java +++ b/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/AttributeNameTest.java @@ -117,7 +117,7 @@ public class AttributeNameTest //Mangle the cookie, replacing Path with $Path, etc. sessionCookie = sessionCookie.replaceFirst("(\\W)(P|p)ath=","$1\\$Path="); - //Make a request to the 2nd server which will do a refresh, use TestFooServlet to ensure that the + //Make a request to the 2nd server which will do a refresh, use TestServlet to ensure that the //session attribute with dotted name is not removed Request request2 = client.newRequest("http://localhost:" + port2 + contextPath + servletMapping + "?action=get"); request2.header("Cookie", sessionCookie); diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestFooServlet.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestFooServlet.java deleted file mode 100644 index 621c95b74c4..00000000000 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestFooServlet.java +++ /dev/null @@ -1,77 +0,0 @@ -// -// ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -// - -package org.eclipse.jetty.server.session; - -import java.io.IOException; -import java.lang.reflect.Proxy; - -import javax.servlet.AsyncContext; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpSession; - - - -public class TestFooServlet extends HttpServlet -{ - @Override - protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException - { - String action = request.getParameter("action"); - - if ("create".equals(action)) - { - HttpSession session = request.getSession(true); - TestFoo testFoo = new TestFoo(); - testFoo.setInt(33); - FooInvocationHandler handler = new FooInvocationHandler(testFoo); - Foo foo = (Foo)Proxy.newProxyInstance(Thread.currentThread().getContextClassLoader(), new Class[] {Foo.class}, handler); - session.setAttribute("foo", foo); - } - else if ("test".equals(action)) - { - HttpSession session = request.getSession(false); - if (session == null) - response.sendError(500, "Session not activated"); - Foo foo = (Foo)session.getAttribute("foo"); - if (foo == null || foo.getInt() != 33) - response.sendError(500, "Foo not deserialized"); - } - else if ("async".equals(action)) - { - if (request.getAttribute("async-test") == null) - { - request.setAttribute("async-test", Boolean.TRUE); - AsyncContext acontext = request.startAsync(); - System.err.println("Starting async and dispatching"); - - acontext.dispatch(); - return; - } - else - { - HttpSession session = request.getSession(true); - System.err.println("After dispatch and finishing response"); - response.getWriter().println("OK"); - } - } - } -} diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/AsyncTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/AsyncTest.java index cfc683d2530..90fd07e9a2e 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/AsyncTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/AsyncTest.java @@ -24,11 +24,16 @@ import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertTrue; import java.io.IOException; +import java.lang.reflect.Proxy; +import javax.servlet.AsyncContext; import javax.servlet.ServletException; +import javax.servlet.ServletOutputStream; +import javax.servlet.WriteListener; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; import org.eclipse.jetty.client.HttpClient; import org.eclipse.jetty.client.api.ContentResponse; @@ -58,42 +63,35 @@ public class AsyncTest } } - - - /** - * Test async with a session. - * - * @throws Exception - */ + + @Test - public void testSessionWithAsync() throws Exception + public void testSessionWithAsyncDispatch() throws Exception { - - - DefaultSessionCacheFactory cacheFactory = new DefaultSessionCacheFactory(); cacheFactory.setEvictionPolicy(SessionCache.EVICT_ON_SESSION_EXIT); - SessionDataStoreFactory storeFactory = new TestSessionDataStoreFactory(); - TestServer server1 = new TestServer(0, -1, -1, cacheFactory, storeFactory); - + SessionDataStoreFactory storeFactory = new TestSessionDataStoreFactory(); + TestServer server = new TestServer(0, -1, -1, cacheFactory, storeFactory); + String contextPath = ""; - String fooMapping = "/server"; - TestFooServlet servlet = new TestFooServlet(); + String mapping = "/server"; + + ServletContextHandler contextHandler = server.addContext(contextPath); + TestServlet servlet = new TestServlet(); ServletHolder holder = new ServletHolder(servlet); - ServletContextHandler contextHandler = server1.addContext(contextPath); - contextHandler.addServlet(holder, fooMapping); + contextHandler.addServlet(holder, mapping); LatchServlet latchServlet = new LatchServlet(); ServletHolder latchHolder = new ServletHolder(latchServlet); contextHandler.addServlet(latchHolder, "/latch"); - server1.start(); - int port1 = server1.getPort(); + server.start(); + int port = server.getPort(); try (StacklessLogging stackless = new StacklessLogging(Log.getLogger("org.eclipse.jetty.server.session"))) { HttpClient client = new HttpClient(); client.start(); - String url = "http://localhost:" + port1 + contextPath + fooMapping+"?action=async"; + String url = "http://localhost:" + port + contextPath + mapping+"?action=async"; //make a request to set up a session on the server ContentResponse response = client.GET(url); @@ -101,11 +99,11 @@ public class AsyncTest String sessionCookie = response.getHeaders().get("Set-Cookie"); assertTrue(sessionCookie != null); - + //make another request, when this is handled, the first request is definitely finished being handled - response = client.GET("http://localhost:" + port1 + contextPath + "/latch"); + response = client.GET("http://localhost:" + port + contextPath + "/latch"); assertEquals(HttpServletResponse.SC_OK,response.getStatus()); - + //session should now be evicted from the cache after request exited String id = TestServer.extractSessionId(sessionCookie); assertFalse(contextHandler.getSessionHandler().getSessionCache().contains(id)); @@ -113,7 +111,243 @@ public class AsyncTest } finally { - server1.stop(); + server.stop(); + } + } + + @Test + public void testSessionWithAsyncComplete() throws Exception + { + DefaultSessionCacheFactory cacheFactory = new DefaultSessionCacheFactory(); + cacheFactory.setEvictionPolicy(SessionCache.EVICT_ON_SESSION_EXIT); + SessionDataStoreFactory storeFactory = new TestSessionDataStoreFactory(); + TestServer server = new TestServer(0, -1, -1, cacheFactory, storeFactory); + + String contextPath = ""; + String mapping = "/server"; + + ServletContextHandler contextHandler = server.addContext(contextPath); + TestServlet servlet = new TestServlet(); + ServletHolder holder = new ServletHolder(servlet); + contextHandler.addServlet(holder, mapping); + LatchServlet latchServlet = new LatchServlet(); + ServletHolder latchHolder = new ServletHolder(latchServlet); + contextHandler.addServlet(latchHolder, "/latch"); + + server.start(); + int port = server.getPort(); + + try (StacklessLogging stackless = new StacklessLogging(Log.getLogger("org.eclipse.jetty.server.session"))) + { + HttpClient client = new HttpClient(); + client.start(); + String url = "http://localhost:" + port + contextPath + mapping+"?action=asyncComplete"; + + //make a request to set up a session on the server + ContentResponse response = client.GET(url); + assertEquals(HttpServletResponse.SC_OK,response.getStatus()); + + String sessionCookie = response.getHeaders().get("Set-Cookie"); + assertTrue(sessionCookie != null); + + //make another request, when this is handled, the first request is definitely finished being handled + response = client.GET("http://localhost:" + port + contextPath + "/latch"); + assertEquals(HttpServletResponse.SC_OK,response.getStatus()); + + //session should now be evicted from the cache after request exited + String id = TestServer.extractSessionId(sessionCookie); + assertFalse(contextHandler.getSessionHandler().getSessionCache().contains(id)); + assertTrue(contextHandler.getSessionHandler().getSessionCache().getSessionDataStore().exists(id)); + } + finally + { + server.stop(); + } + } + + @Test + public void testSessionWithCrossContextAsync() throws Exception + { + DefaultSessionCacheFactory cacheFactory = new DefaultSessionCacheFactory(); + cacheFactory.setEvictionPolicy(SessionCache.EVICT_ON_SESSION_EXIT); + SessionDataStoreFactory storeFactory = new TestSessionDataStoreFactory(); + TestServer server = new TestServer(0, -1, -1, cacheFactory, storeFactory); + + ServletContextHandler contextA = server.addContext("/ctxA"); + CrossContextServlet ccServlet = new CrossContextServlet(); + ServletHolder ccHolder = new ServletHolder(ccServlet); + contextA.addServlet(ccHolder, "/*"); + + ServletContextHandler contextB = server.addContext("/ctxB"); + TestServlet testServlet = new TestServlet(); + ServletHolder testHolder = new ServletHolder(testServlet); + contextB.addServlet(testHolder, "/*"); + LatchServlet latchServlet = new LatchServlet(); + ServletHolder latchHolder = new ServletHolder(latchServlet); + contextB.addServlet(latchHolder, "/latch"); + + + server.start(); + int port = server.getPort(); + + try (StacklessLogging stackless = new StacklessLogging(Log.getLogger("org.eclipse.jetty.server.session"))) + { + HttpClient client = new HttpClient(); + client.start(); + String url = "http://localhost:" + port + "/ctxA/test?action=async"; + + //make a request to set up a session on the server + ContentResponse response = client.GET(url); + assertEquals(HttpServletResponse.SC_OK,response.getStatus()); + + String sessionCookie = response.getHeaders().get("Set-Cookie"); + assertTrue(sessionCookie != null); + + //make another request, when this is handled, the first request is definitely finished being handled + response = client.GET("http://localhost:" + port + "/ctxB/latch"); + assertEquals(HttpServletResponse.SC_OK,response.getStatus()); + + //session should now be evicted from the cache after request exited + String id = TestServer.extractSessionId(sessionCookie); + assertFalse(contextB.getSessionHandler().getSessionCache().contains(id)); + assertTrue(contextB.getSessionHandler().getSessionCache().getSessionDataStore().exists(id)); + } + finally + { + server.stop(); + } + } + + + @Test + public void testSessionWithCrossContextAsyncComplete() throws Exception + { + DefaultSessionCacheFactory cacheFactory = new DefaultSessionCacheFactory(); + cacheFactory.setEvictionPolicy(SessionCache.EVICT_ON_SESSION_EXIT); + SessionDataStoreFactory storeFactory = new TestSessionDataStoreFactory(); + TestServer server = new TestServer(0, -1, -1, cacheFactory, storeFactory); + + ServletContextHandler contextA = server.addContext("/ctxA"); + CrossContextServlet ccServlet = new CrossContextServlet(); + ServletHolder ccHolder = new ServletHolder(ccServlet); + contextA.addServlet(ccHolder, "/*"); + + ServletContextHandler contextB = server.addContext("/ctxB"); + TestServlet testServlet = new TestServlet(); + ServletHolder testHolder = new ServletHolder(testServlet); + contextB.addServlet(testHolder, "/*"); + LatchServlet latchServlet = new LatchServlet(); + ServletHolder latchHolder = new ServletHolder(latchServlet); + contextB.addServlet(latchHolder, "/latch"); + + + server.start(); + int port = server.getPort(); + + try (StacklessLogging stackless = new StacklessLogging(Log.getLogger("org.eclipse.jetty.server.session"))) + { + HttpClient client = new HttpClient(); + client.start(); + String url = "http://localhost:" + port + "/ctxA/test?action=asyncComplete"; + + //make a request to set up a session on the server + ContentResponse response = client.GET(url); + assertEquals(HttpServletResponse.SC_OK,response.getStatus()); + + String sessionCookie = response.getHeaders().get("Set-Cookie"); + assertTrue(sessionCookie != null); + + //make another request, when this is handled, the first request is definitely finished being handled + response = client.GET("http://localhost:" + port + "/ctxB/latch"); + assertEquals(HttpServletResponse.SC_OK,response.getStatus()); + + //session should now be evicted from the cache A after request exited + String id = TestServer.extractSessionId(sessionCookie); + assertFalse(contextA.getSessionHandler().getSessionCache().contains(id)); + assertTrue(contextA.getSessionHandler().getSessionCache().getSessionDataStore().exists(id)); + } + finally + { + server.stop(); + } + } + + public static class TestServlet extends HttpServlet + { + @Override + protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + { + String action = request.getParameter("action"); + + if ("create".equals(action)) + { + HttpSession session = request.getSession(true); + TestFoo testFoo = new TestFoo(); + testFoo.setInt(33); + FooInvocationHandler handler = new FooInvocationHandler(testFoo); + Foo foo = (Foo)Proxy + .newProxyInstance(Thread.currentThread().getContextClassLoader(), new Class[] {Foo.class}, handler); + session.setAttribute("foo", foo); + } + else if ("test".equals(action)) + { + HttpSession session = request.getSession(false); + if (session == null) + response.sendError(500, "Session not activated"); + Foo foo = (Foo)session.getAttribute("foo"); + if (foo == null || foo.getInt() != 33) + response.sendError(500, "Foo not deserialized"); + } + else if ("async".equals(action)) + { + if (request.getAttribute("async-test") == null) + { + request.setAttribute("async-test", Boolean.TRUE); + AsyncContext acontext = request.startAsync(); + acontext.dispatch(); + return; + } + else + { + HttpSession session = request.getSession(true); + response.getWriter().println("OK"); + } + } + else if ("asyncComplete".equals(action)) + { + AsyncContext acontext = request.startAsync(); + ServletOutputStream out = response.getOutputStream(); + out.setWriteListener(new WriteListener() + { + @Override + public void onWritePossible() throws IOException + { + if (out.isReady()) + { + request.getSession(true); + out.print("OK\n"); + acontext.complete(); + } + } + + @Override + public void onError(Throwable t) + { + + } + }); + } + } + } + + public static class CrossContextServlet extends HttpServlet + { + @Override + protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + { + AsyncContext acontext = request.startAsync(); + + acontext.dispatch(request.getServletContext().getContext("/ctxB"),"/test"); } } } diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DeleteUnloadableSessionTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DeleteUnloadableSessionTest.java index 1565fb3f96b..be60e5f0824 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DeleteUnloadableSessionTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DeleteUnloadableSessionTest.java @@ -128,12 +128,7 @@ public class DeleteUnloadableSessionTest } } - - /** - * TestFooServlet - * - * - */ + public static class TestServlet extends HttpServlet { private static final long serialVersionUID = 1L; diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionEvictionFailureTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionEvictionFailureTest.java index 27687b4c82a..214d3e59985 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionEvictionFailureTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionEvictionFailureTest.java @@ -136,16 +136,9 @@ public class SessionEvictionFailureTest } - - - /** - * TestFooServlet - * - * - */ + public static class TestServlet extends HttpServlet { - @Override protected void doGet(HttpServletRequest request, HttpServletResponse httpServletResponse) throws ServletException, IOException { From 503bd71d4cd0fdb5e45404ee2308aa4e67d57992 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Tue, 18 Dec 2018 16:00:46 +1100 Subject: [PATCH 222/931] Issue #3202 Handle async cross context session completion --- .../jetty/server/session/SessionHandler.java | 22 +++++++++++-------- .../jetty/server/session/AsyncTest.java | 17 +++++++++----- 2 files changed, 24 insertions(+), 15 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java index ac197b78999..0879636f0d8 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java @@ -1611,7 +1611,7 @@ public class SessionHandler extends ScopedHandler @Override public void doScope(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { - SessionHandler old_session_manager = null; + SessionHandler old_session_handler = null; HttpSession old_session = null; HttpSession existingSession = null; @@ -1620,10 +1620,10 @@ public class SessionHandler extends ScopedHandler if (LOG.isDebugEnabled()) LOG.debug("SessionHandler.doScope"); - old_session_manager = baseRequest.getSessionHandler(); + old_session_handler = baseRequest.getSessionHandler(); old_session = baseRequest.getSession(false); - if (old_session_manager != this) + if (old_session_handler != this) { // new session context baseRequest.setSessionHandler(this); @@ -1634,7 +1634,7 @@ public class SessionHandler extends ScopedHandler // access any existing session for this context existingSession = baseRequest.getSession(false); - if ((existingSession != null) && (old_session_manager != this)) + if ((existingSession != null) && (old_session_handler != this)) { HttpCookie cookie = access(existingSession,request.isSecure()); // Handle changed ID or max-age refresh, but only if this is not a redispatched request @@ -1656,13 +1656,17 @@ public class SessionHandler extends ScopedHandler { //if there is a session that was created during handling this context, then complete it if (LOG.isDebugEnabled()) - LOG.debug("FinalSession={}, old_session_manager={}, this={}, calling complete={}", baseRequest.getSession(false), old_session_manager, this, (old_session_manager != this)); - if (old_session_manager != this) + LOG.debug("FinalSession={}, old_session_handler={}, this={}, calling complete={}", baseRequest.getSession(false), old_session_handler, this, (old_session_handler != this)); + + // If we are leaving the scope of this session handler, ensure the session is completed + if (old_session_handler != this) ensureCompletion(baseRequest); - - if (old_session_manager != null && old_session_manager != this) + + // revert the session handler to the previous, unless it was null, in which case remember it as + // the first session handler encountered. + if (old_session_handler != null && old_session_handler != this) { - baseRequest.setSessionHandler(old_session_manager); + baseRequest.setSessionHandler(old_session_handler); baseRequest.setSession(old_session); } } diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/AsyncTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/AsyncTest.java index 90fd07e9a2e..2c8a105d3fc 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/AsyncTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/AsyncTest.java @@ -52,22 +52,20 @@ import org.junit.jupiter.api.Test; */ public class AsyncTest { - public static class LatchServlet extends HttpServlet { - @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.getWriter().println("Latched"); } - } - @Test public void testSessionWithAsyncDispatch() throws Exception { + // Test async dispatch back to same context, which then creates a session. + DefaultSessionCacheFactory cacheFactory = new DefaultSessionCacheFactory(); cacheFactory.setEvictionPolicy(SessionCache.EVICT_ON_SESSION_EXIT); SessionDataStoreFactory storeFactory = new TestSessionDataStoreFactory(); @@ -118,6 +116,8 @@ public class AsyncTest @Test public void testSessionWithAsyncComplete() throws Exception { + // Test async write, which creates a session and completes outside of a dispatch + DefaultSessionCacheFactory cacheFactory = new DefaultSessionCacheFactory(); cacheFactory.setEvictionPolicy(SessionCache.EVICT_ON_SESSION_EXIT); SessionDataStoreFactory storeFactory = new TestSessionDataStoreFactory(); @@ -168,6 +168,9 @@ public class AsyncTest @Test public void testSessionWithCrossContextAsync() throws Exception { + // Test async dispatch from context A to context B then + // async dispatch back to context B, which then creates a session (in context B). + DefaultSessionCacheFactory cacheFactory = new DefaultSessionCacheFactory(); cacheFactory.setEvictionPolicy(SessionCache.EVICT_ON_SESSION_EXIT); SessionDataStoreFactory storeFactory = new TestSessionDataStoreFactory(); @@ -218,10 +221,13 @@ public class AsyncTest } } - @Test public void testSessionWithCrossContextAsyncComplete() throws Exception { + // Test async dispatch from context A to context B, which then does an + // async write, which creates a session (in context A) and completes outside of a + // dispatch + DefaultSessionCacheFactory cacheFactory = new DefaultSessionCacheFactory(); cacheFactory.setEvictionPolicy(SessionCache.EVICT_ON_SESSION_EXIT); SessionDataStoreFactory storeFactory = new TestSessionDataStoreFactory(); @@ -240,7 +246,6 @@ public class AsyncTest ServletHolder latchHolder = new ServletHolder(latchServlet); contextB.addServlet(latchHolder, "/latch"); - server.start(); int port = server.getPort(); From 225760c2de0dff2f9f108bff0541e088af96e510 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Wed, 19 Dec 2018 13:57:58 +1100 Subject: [PATCH 223/931] Issue #3207 Fix #3207 by providing async compliant print methods Signed-off-by: Greg Wilkins --- .../org/eclipse/jetty/server/HttpOutput.java | 111 +++++++++++++++++- .../eclipse/jetty/server/ResponseTest.java | 24 ++++ 2 files changed, 134 insertions(+), 1 deletion(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java index 4402d193a93..3127269d971 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java @@ -21,8 +21,13 @@ package org.eclipse.jetty.server; import java.io.IOException; import java.io.InputStream; import java.nio.ByteBuffer; +import java.nio.CharBuffer; import java.nio.channels.ReadableByteChannel; import java.nio.channels.WritePendingException; +import java.nio.charset.Charset; +import java.nio.charset.CharsetEncoder; +import java.nio.charset.CoderResult; +import java.util.ResourceBundle; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicReference; @@ -56,6 +61,9 @@ import org.eclipse.jetty.util.log.Logger; */ public class HttpOutput extends ServletOutputStream implements Runnable { + private static final String LSTRING_FILE = "javax.servlet.LocalStrings"; + private static ResourceBundle lStrings = ResourceBundle.getBundle(LSTRING_FILE); + /** * The HttpOutput.Interceptor is a single intercept point for all * output written to the HttpOutput: via writer; via output stream; @@ -130,6 +138,7 @@ public class HttpOutput extends ServletOutputStream implements Runnable private int _bufferSize; private int _commitSize; private WriteListener _writeListener; + private CharsetEncoder _encoder; private volatile Throwable _onError; /* ACTION OPEN ASYNC READY PENDING UNREADY CLOSED @@ -551,6 +560,8 @@ public class HttpOutput extends ServletOutputStream implements Runnable public void write(ByteBuffer buffer) throws IOException { + // This write always bypasses aggregate buffer + // Async or Blocking ? while (true) { @@ -673,11 +684,109 @@ public class HttpOutput extends ServletOutputStream implements Runnable @Override public void print(String s) throws IOException + { + print(s,false); + } + + @Override + public void println(String s) throws IOException + { + print(s,true); + } + + private void print(String s, boolean eoln) throws IOException { if (isClosed()) throw new IOException("Closed"); - write(s.getBytes(_channel.getResponse().getCharacterEncoding())); + // TODO would a Threadlocal pool be better? + String charset = _channel.getResponse().getCharacterEncoding(); + if (_encoder==null || !_encoder.charset().name().equals(charset)) + _encoder = Charset.forName(charset).newEncoder(); + else + _encoder.reset(); + + CharBuffer in = CharBuffer.wrap(s); + CharBuffer crlf = eoln?CharBuffer.wrap("\r\n"):null; + ByteBuffer out = getHttpChannel().getByteBufferPool().acquire((int)(1+(s.length()+2)*_encoder.averageBytesPerChar()),false); + BufferUtil.flipToFill(out); + + for(;;) + { + CoderResult result; + if (in.hasRemaining()) + { + result = _encoder.encode(in, out, false); + if (result.isUnderflow()) + if (crlf==null) + break; + else + continue; + } + else if (crlf.hasRemaining()) + { + result = _encoder.encode(crlf, out, true); + if (result.isUnderflow()) + { + if (!_encoder.flush(out).isUnderflow()) + result.throwException(); + break; + } + } + else + break; + + if (result.isOverflow()) + { + BufferUtil.flipToFlush(out,0); + ByteBuffer bigger = BufferUtil.ensureCapacity(out,out.capacity()+s.length()+2); + getHttpChannel().getByteBufferPool().release(out); + BufferUtil.flipToFill(bigger); + out = bigger; + continue; + } + + result.throwException(); + } + BufferUtil.flipToFlush(out,0); + write(out.array(),out.arrayOffset(),out.remaining()); + getHttpChannel().getByteBufferPool().release(out); + } + + @Override + public void println(boolean b) throws IOException + { + println(lStrings.getString(b? "value.true":"value.false")); + } + + @Override + public void println(char c) throws IOException + { + println(String.valueOf(c)); + } + + @Override + public void println(int i) throws IOException + { + println(String.valueOf(i)); + } + + @Override + public void println(long l) throws IOException + { + println(String.valueOf(l)); + } + + @Override + public void println(float f) throws IOException + { + println(String.valueOf(f)); + } + + @Override + public void println(double d) throws IOException + { + println(String.valueOf(d)); } /** diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ResponseTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ResponseTest.java index 6ef9136c453..e5f89919704 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ResponseTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ResponseTest.java @@ -578,6 +578,30 @@ public class ResponseTest assertEquals("foo2/bar2;charset=utf-8", response.getContentType()); } + + @Test + public void testPrintln() throws Exception + { + Response response = getResponse(); + Request request = response.getHttpChannel().getRequest(); + + SessionHandler session_handler = new SessionHandler(); + session_handler.setServer(_server); + session_handler.setUsingCookies(true); + session_handler.start(); + request.setSessionHandler(session_handler); + HttpSession session = request.getSession(true); + + assertThat(session,not(nullValue())); + assertTrue(session.isNew()); + + response.getOutputStream().println("ABC"); + response.getOutputStream().println("XYZ"); + response.getOutputStream().close(); + assertEquals("ABC\r\nXYZ\r\n",BufferUtil.toString(_content)); + } + + @Test public void testContentTypeWithOther() throws Exception { From 8f06fa8083eaf51a365b50001f46e80623e0f292 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Thu, 20 Dec 2018 08:53:16 +1100 Subject: [PATCH 224/931] Issue #3207 updates after review Signed-off-by: Greg Wilkins --- .../org/eclipse/jetty/server/HttpOutput.java | 26 ++++++++++++------- .../eclipse/jetty/server/ResponseTest.java | 14 ++++++++-- 2 files changed, 29 insertions(+), 11 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java index 3127269d971..b7fd19a3d70 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java @@ -27,6 +27,7 @@ import java.nio.channels.WritePendingException; import java.nio.charset.Charset; import java.nio.charset.CharsetEncoder; import java.nio.charset.CoderResult; +import java.nio.charset.CodingErrorAction; import java.util.ResourceBundle; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicReference; @@ -127,6 +128,7 @@ public class HttpOutput extends ServletOutputStream implements Runnable } private static Logger LOG = Log.getLogger(HttpOutput.class); + private final static ThreadLocal _encoder = new ThreadLocal<>(); private final HttpChannel _channel; private final SharedBlockingCallback _writeBlocker; @@ -138,7 +140,6 @@ public class HttpOutput extends ServletOutputStream implements Runnable private int _bufferSize; private int _commitSize; private WriteListener _writeListener; - private CharsetEncoder _encoder; private volatile Throwable _onError; /* ACTION OPEN ASYNC READY PENDING UNREADY CLOSED @@ -699,16 +700,23 @@ public class HttpOutput extends ServletOutputStream implements Runnable if (isClosed()) throw new IOException("Closed"); - // TODO would a Threadlocal pool be better? String charset = _channel.getResponse().getCharacterEncoding(); - if (_encoder==null || !_encoder.charset().name().equals(charset)) - _encoder = Charset.forName(charset).newEncoder(); + CharsetEncoder encoder = _encoder.get(); + if (encoder==null || !encoder.charset().name().equalsIgnoreCase(charset)) + { + encoder = Charset.forName(charset).newEncoder(); + encoder.onMalformedInput(CodingErrorAction.REPLACE); + encoder.onUnmappableCharacter(CodingErrorAction.REPLACE); + _encoder.set(encoder); + } else - _encoder.reset(); + { + encoder.reset(); + } CharBuffer in = CharBuffer.wrap(s); CharBuffer crlf = eoln?CharBuffer.wrap("\r\n"):null; - ByteBuffer out = getHttpChannel().getByteBufferPool().acquire((int)(1+(s.length()+2)*_encoder.averageBytesPerChar()),false); + ByteBuffer out = getHttpChannel().getByteBufferPool().acquire((int)(1+(s.length()+2)*encoder.averageBytesPerChar()),false); BufferUtil.flipToFill(out); for(;;) @@ -716,7 +724,7 @@ public class HttpOutput extends ServletOutputStream implements Runnable CoderResult result; if (in.hasRemaining()) { - result = _encoder.encode(in, out, false); + result = encoder.encode(in, out, crlf==null); if (result.isUnderflow()) if (crlf==null) break; @@ -725,10 +733,10 @@ public class HttpOutput extends ServletOutputStream implements Runnable } else if (crlf.hasRemaining()) { - result = _encoder.encode(crlf, out, true); + result = encoder.encode(crlf, out, true); if (result.isUnderflow()) { - if (!_encoder.flush(out).isUnderflow()) + if (!encoder.flush(out).isUnderflow()) result.throwException(); break; } diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ResponseTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ResponseTest.java index e5f89919704..49e837b5b14 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ResponseTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ResponseTest.java @@ -591,14 +591,24 @@ public class ResponseTest session_handler.start(); request.setSessionHandler(session_handler); HttpSession session = request.getSession(true); + response.setCharacterEncoding(UTF_8.name()); assertThat(session,not(nullValue())); assertTrue(session.isNew()); - response.getOutputStream().println("ABC"); + String expected = ""; + response.getOutputStream().print("ABC"); + expected += "ABC"; response.getOutputStream().println("XYZ"); + expected += "XYZ\r\n"; + String s=""; + for (int i=0; i<100; i++) + s += "\u20AC\u20AC\u20AC\u20AC\u20AC\u20AC\u20AC\u20AC\u20AC\u20AC"; + response.getOutputStream().println(s); + expected += s +"\r\n"; + response.getOutputStream().close(); - assertEquals("ABC\r\nXYZ\r\n",BufferUtil.toString(_content)); + assertEquals(expected,BufferUtil.toString(_content, UTF_8)); } From 63820e5405df2be76f3938bf70f21dfa580892e9 Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Fri, 21 Dec 2018 21:35:31 +1000 Subject: [PATCH 225/931] activate Maven enforcer Upper bound dependencies check (#3116) * add requireUpperBoundDeps rule Signed-off-by: olivier lamy --- .../jetty-gcloud-session-manager/pom.xml | 21 ++++++++++++++++++- jetty-home/pom.xml | 5 +++++ jetty-infinispan/pom.xml | 2 +- jetty-maven-plugin/pom.xml | 5 +++++ jetty-osgi/test-jetty-osgi/pom.xml | 18 ++++++++++------ pom.xml | 3 ++- 6 files changed, 45 insertions(+), 9 deletions(-) diff --git a/jetty-gcloud/jetty-gcloud-session-manager/pom.xml b/jetty-gcloud/jetty-gcloud-session-manager/pom.xml index c8504c6e5fb..e69d5e769ee 100644 --- a/jetty-gcloud/jetty-gcloud-session-manager/pom.xml +++ b/jetty-gcloud/jetty-gcloud-session-manager/pom.xml @@ -32,7 +32,26 @@ javax.servlet-api - + + + com.google.auto.value + auto-value + 1.2 + + + com.google.protobuf + protobuf-java + 3.2.0 + + + com.google.http-client + google-http-client-jackson2 + 1.21.0 + + + com.google.code.findbugs + jsr305 + 3.0.0 org.eclipse.jetty diff --git a/jetty-home/pom.xml b/jetty-home/pom.xml index fb0a49adc3d..2baec3ce6c6 100644 --- a/jetty-home/pom.xml +++ b/jetty-home/pom.xml @@ -648,6 +648,11 @@ cdi-servlet ${project.version} + + org.jboss.logging + jboss-logging + 3.3.0.Final + org.eclipse.jetty.cdi cdi-2 diff --git a/jetty-infinispan/pom.xml b/jetty-infinispan/pom.xml index 19682871a81..f16371074a1 100644 --- a/jetty-infinispan/pom.xml +++ b/jetty-infinispan/pom.xml @@ -10,7 +10,7 @@ http://www.eclipse.org/jetty ${project.groupId}.infinispan - 7.1.1.Final + 9.1.0.Final install diff --git a/jetty-maven-plugin/pom.xml b/jetty-maven-plugin/pom.xml index 49644e908e8..9635cf2df76 100644 --- a/jetty-maven-plugin/pom.xml +++ b/jetty-maven-plugin/pom.xml @@ -144,6 +144,11 @@ maven-artifact-transfer 0.9.1 + + javax.enterprise + cdi-api + 1.2 + org.eclipse.jetty jetty-util diff --git a/jetty-osgi/test-jetty-osgi/pom.xml b/jetty-osgi/test-jetty-osgi/pom.xml index 13ea322a862..f599bfc5945 100644 --- a/jetty-osgi/test-jetty-osgi/pom.xml +++ b/jetty-osgi/test-jetty-osgi/pom.xml @@ -40,6 +40,18 @@ ${exam.version} test + + org.ops4j.pax.swissbox + pax-swissbox-framework + 1.8.3 + test + + + org.ops4j.pax.swissbox + pax-swissbox-tracker + 1.8.3 + test + org.ops4j.pax.exam pax-exam-junit4 @@ -566,12 +578,6 @@ ${project.version} test - - org.conscrypt - conscrypt-openjdk-uber - ${conscrypt.version} - test - org.eclipse.jetty jetty-alpn-java-server diff --git a/pom.xml b/pom.xml index 8037056b5b5..a0a4461a84d 100644 --- a/pom.xml +++ b/pom.xml @@ -152,6 +152,7 @@ +
@@ -892,7 +893,7 @@ javax.annotation javax.annotation-api - 1.2 + 1.3 org.ow2.asm From 9aeebb13689d6b320383516a1f8f8e6eafa4b6ef Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Fri, 21 Dec 2018 13:18:42 +0100 Subject: [PATCH 226/931] Fixes #3212 - java.io.IOException: 1/unexpected_rst_stream_frame. Client and server need to to treat an incoming RST_STREAM frame differently, testing whether the stream is closed for respectively local and remote streams. Signed-off-by: Simone Bordet --- .../jetty/http2/client/HTTP2ClientSession.java | 12 ++++++++++++ .../java/org/eclipse/jetty/http2/HTTP2Session.java | 7 +++---- .../jetty/http2/server/HTTP2ServerSession.java | 12 ++++++++++++ 3 files changed, 27 insertions(+), 4 deletions(-) diff --git a/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2ClientSession.java b/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2ClientSession.java index 3be563d093c..a577e03732e 100644 --- a/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2ClientSession.java +++ b/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2ClientSession.java @@ -29,6 +29,7 @@ import org.eclipse.jetty.http2.api.Session; import org.eclipse.jetty.http2.api.Stream; import org.eclipse.jetty.http2.frames.HeadersFrame; import org.eclipse.jetty.http2.frames.PushPromiseFrame; +import org.eclipse.jetty.http2.frames.ResetFrame; import org.eclipse.jetty.http2.generator.Generator; import org.eclipse.jetty.io.EndPoint; import org.eclipse.jetty.util.Callback; @@ -117,6 +118,17 @@ public class HTTP2ClientSession extends HTTP2Session } } + @Override + protected void onResetForUnknownStream(ResetFrame frame) + { + int streamId = frame.getStreamId(); + boolean closed = isClientStream(streamId) ? isLocalStreamClosed(streamId) : isRemoteStreamClosed(streamId); + if (closed) + notifyReset(this, frame); + else + onConnectionFailure(ErrorCode.PROTOCOL_ERROR.code, "unexpected_rst_stream_frame"); + } + @Override public void onPushPromise(PushPromiseFrame frame) { diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java index e1079aeb0ff..098f11d8334 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java @@ -295,13 +295,12 @@ public abstract class HTTP2Session extends ContainerLifeCycle implements ISessio } else { - if (isRemoteStreamClosed(streamId)) - notifyReset(this, frame); - else - onConnectionFailure(ErrorCode.PROTOCOL_ERROR.code, "unexpected_rst_stream_frame"); + onResetForUnknownStream(frame); } } + protected abstract void onResetForUnknownStream(ResetFrame frame); + @Override public void onSettings(SettingsFrame frame) { diff --git a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2ServerSession.java b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2ServerSession.java index c89c72ed9ca..37d709c1385 100644 --- a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2ServerSession.java +++ b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2ServerSession.java @@ -32,6 +32,7 @@ import org.eclipse.jetty.http2.api.server.ServerSessionListener; import org.eclipse.jetty.http2.frames.Frame; import org.eclipse.jetty.http2.frames.HeadersFrame; import org.eclipse.jetty.http2.frames.PushPromiseFrame; +import org.eclipse.jetty.http2.frames.ResetFrame; import org.eclipse.jetty.http2.frames.SettingsFrame; import org.eclipse.jetty.http2.frames.WindowUpdateFrame; import org.eclipse.jetty.http2.generator.Generator; @@ -139,6 +140,17 @@ public class HTTP2ServerSession extends HTTP2Session implements ServerParser.Lis } } + @Override + protected void onResetForUnknownStream(ResetFrame frame) + { + int streamId = frame.getStreamId(); + boolean closed = isClientStream(streamId) ? isRemoteStreamClosed(streamId) : isLocalStreamClosed(streamId); + if (closed) + notifyReset(this, frame); + else + onConnectionFailure(ErrorCode.PROTOCOL_ERROR.code, "unexpected_rst_stream_frame"); + } + @Override public void onPushPromise(PushPromiseFrame frame) { From 72ebcc51afbd578f0396bbabf22887d06f5bc673 Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Sat, 22 Dec 2018 21:55:31 +1000 Subject: [PATCH 227/931] interpolate version from main pom for maven plugin it test (#3223) Signed-off-by: olivier lamy --- jetty-maven-plugin/src/it/javax-annotation-api/pom.xml | 10 +++++----- pom.xml | 5 ++++- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/jetty-maven-plugin/src/it/javax-annotation-api/pom.xml b/jetty-maven-plugin/src/it/javax-annotation-api/pom.xml index 4ef25cb17c3..6b7888878ca 100644 --- a/jetty-maven-plugin/src/it/javax-annotation-api/pom.xml +++ b/jetty-maven-plugin/src/it/javax-annotation-api/pom.xml @@ -27,14 +27,14 @@ 8 ${project.build.directory}/jetty-run-mojo-annotation.txt - 1.3.2 + @javax.annotation-api@ javax.servlet javax.servlet-api - 4.0.1 + @javax.servlet.api.version@ provided @@ -45,12 +45,12 @@ org.springframework.boot spring-boot-autoconfigure - 2.1.1.RELEASE + @spring-boot.version@ org.springframework.boot spring-boot-starter-web - 2.1.1.RELEASE + @spring-boot.version@ org.springframework.boot @@ -96,7 +96,7 @@ javax.annotation jsr250-api - 1.0 + @jsr250-api.version@ diff --git a/pom.xml b/pom.xml index a0a4461a84d..0a75c9706fa 100644 --- a/pom.xml +++ b/pom.xml @@ -53,6 +53,9 @@ 5.2 + 2.1.1.RELEASE + 1.0 + 1.3 @@ -893,7 +896,7 @@ javax.annotation javax.annotation-api - 1.3 + ${javax.annotation-api} org.ow2.asm From f406358cf6936288f841a44ba7097ed5227363ac Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Thu, 27 Dec 2018 09:32:24 +1000 Subject: [PATCH 228/931] fix maven invoker reporter path Signed-off-by: olivier lamy --- Jenkinsfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 538bb9b8ac1..d1e77426c04 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -34,7 +34,7 @@ pipeline { classPattern: '**/target/classes', sourcePattern: '**/src/main/java' warnings consoleParsers: [[parserName: 'Maven'], [parserName: 'Java']] - maven_invoker reportsFilenamePattern: "**/target/invoker-reports/BUILD*.xml", invokerBuildDir: "**/target/its" + maven_invoker reportsFilenamePattern: "**/target/invoker-reports/BUILD*.xml", invokerBuildDir: "**/target/it" } } @@ -45,7 +45,7 @@ pipeline { mavenBuild("jdk11", "-Pmongodb install", "maven3") junit '**/target/surefire-reports/TEST-*.xml,**/target/failsafe-reports/TEST-*.xml' warnings consoleParsers: [[parserName: 'Maven'], [parserName: 'Java']] - maven_invoker reportsFilenamePattern: "**/target/invoker-reports/BUILD*.xml", invokerBuildDir: "**/target/its" + maven_invoker reportsFilenamePattern: "**/target/invoker-reports/BUILD*.xml", invokerBuildDir: "**/target/it" } } From b9d9bd265483a5655186b92c183a18f9f38a25b7 Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Mon, 31 Dec 2018 11:41:37 +1000 Subject: [PATCH 229/931] activate maven publishers for Jenkins: mavenLinkerPublisher pipelineGraphPublisher Signed-off-by: olivier lamy --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index d1e77426c04..5e014365334 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -90,7 +90,7 @@ def mavenBuild(jdk, cmdline, mvnName) { jdk: "$jdk", publisherStrategy: 'EXPLICIT', globalMavenSettingsConfig: settingsName, - options: [junitPublisher(disabled: false)], + options: [junitPublisher(disabled: false),mavenLinkerPublisher(disabled: false),pipelineGraphPublisher(disabled: false)], mavenOpts: mavenOpts, mavenLocalRepo: localRepo) { // Some common Maven command line + provided command line From 9b7afd8a0341f4712031abd322ab8669f07f5c5b Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Tue, 1 Jan 2019 11:52:16 +1000 Subject: [PATCH 230/931] Happy new year!! (#3232) Signed-off-by: olivier lamy --- .../org/eclipse/jetty/apache/jsp/JettyJasperInitializer.java | 2 +- .../java/org/eclipse/jetty/apache/jsp/JettyTldPreScanned.java | 2 +- .../src/main/java/org/eclipse/jetty/apache/jsp/JuliLog.java | 2 +- .../src/main/java/org/eclipse/jetty/jsp/JettyJspServlet.java | 2 +- .../test/java/org/eclipse/jetty/jsp/TestJettyJspServlet.java | 2 +- .../java/org/eclipse/jetty/jsp/TestJettyTldPreScanned.java | 2 +- .../java/org/eclipse/jetty/jsp/TestJspFileNameToClass.java | 2 +- .../src/test/java/org/eclipse/jetty/jstl/JspConfig.java | 2 +- .../src/test/java/org/eclipse/jetty/jstl/JspIncludeTest.java | 2 +- .../src/test/java/org/eclipse/jetty/jstl/JstlTest.java | 2 +- .../eclipse/jetty/example/asyncrest/AbstractRestServlet.java | 2 +- .../org/eclipse/jetty/example/asyncrest/AsyncRestServlet.java | 2 +- .../eclipse/jetty/example/asyncrest/SerialRestServlet.java | 2 +- .../java/org/eclipse/jetty/example/asyncrest/DemoServer.java | 2 +- .../java/org/eclipse/jetty/embedded/AsyncEchoServlet.java | 2 +- .../src/main/java/org/eclipse/jetty/embedded/DumpServlet.java | 2 +- .../main/java/org/eclipse/jetty/embedded/ExampleServer.java | 2 +- .../java/org/eclipse/jetty/embedded/ExampleServerXml.java | 2 +- .../main/java/org/eclipse/jetty/embedded/FastFileServer.java | 2 +- .../src/main/java/org/eclipse/jetty/embedded/FileServer.java | 2 +- .../main/java/org/eclipse/jetty/embedded/FileServerXml.java | 2 +- .../main/java/org/eclipse/jetty/embedded/HelloHandler.java | 2 +- .../main/java/org/eclipse/jetty/embedded/HelloServlet.java | 2 +- .../java/org/eclipse/jetty/embedded/HelloSessionServlet.java | 2 +- .../src/main/java/org/eclipse/jetty/embedded/HelloWorld.java | 2 +- .../src/main/java/org/eclipse/jetty/embedded/Http2Server.java | 2 +- .../src/main/java/org/eclipse/jetty/embedded/JarServer.java | 2 +- .../main/java/org/eclipse/jetty/embedded/LikeJettyXml.java | 2 +- .../main/java/org/eclipse/jetty/embedded/ManyConnectors.java | 2 +- .../main/java/org/eclipse/jetty/embedded/ManyContexts.java | 2 +- .../main/java/org/eclipse/jetty/embedded/ManyHandlers.java | 2 +- .../java/org/eclipse/jetty/embedded/ManyServletContexts.java | 2 +- .../main/java/org/eclipse/jetty/embedded/MinimalServlets.java | 2 +- .../main/java/org/eclipse/jetty/embedded/OneConnector.java | 2 +- .../src/main/java/org/eclipse/jetty/embedded/OneContext.java | 2 +- .../src/main/java/org/eclipse/jetty/embedded/OneHandler.java | 2 +- .../java/org/eclipse/jetty/embedded/OneServletContext.java | 2 +- .../org/eclipse/jetty/embedded/OneServletContextJmxStats.java | 2 +- .../eclipse/jetty/embedded/OneServletContextWithSession.java | 2 +- .../src/main/java/org/eclipse/jetty/embedded/OneWebApp.java | 2 +- .../java/org/eclipse/jetty/embedded/OneWebAppWithJsp.java | 2 +- .../src/main/java/org/eclipse/jetty/embedded/ProxyServer.java | 2 +- .../main/java/org/eclipse/jetty/embedded/RewriteServer.java | 2 +- .../java/org/eclipse/jetty/embedded/SecuredHelloHandler.java | 2 +- .../org/eclipse/jetty/embedded/ServerWithAnnotations.java | 2 +- .../main/java/org/eclipse/jetty/embedded/ServerWithJMX.java | 2 +- .../main/java/org/eclipse/jetty/embedded/ServerWithJNDI.java | 2 +- .../main/java/org/eclipse/jetty/embedded/SimplestServer.java | 2 +- .../main/java/org/eclipse/jetty/embedded/SplitFileServer.java | 2 +- .../java/org/eclipse/jetty/embedded/WebSocketJsrServer.java | 2 +- .../main/java/org/eclipse/jetty/embedded/WebSocketServer.java | 2 +- .../src/test/java/org/eclipse/jetty/embedded/TestXml.java | 2 +- .../org/eclipse/jetty/alpn/client/ALPNClientConnection.java | 2 +- .../jetty/alpn/client/ALPNClientConnectionFactory.java | 2 +- .../alpn/conscrypt/client/ConscryptClientALPNProcessor.java | 2 +- .../eclipse/jetty/alpn/java/client/ConscryptHTTP2Client.java | 2 +- .../alpn/conscrypt/server/ConscryptServerALPNProcessor.java | 2 +- .../jetty/alpn/conscrypt/server/ConscryptHTTP2Server.java | 2 +- .../jetty/alpn/java/client/JDK9ClientALPNProcessor.java | 2 +- .../org/eclipse/jetty/alpn/java/client/JDK9HTTP2Client.java | 2 +- .../jetty/alpn/java/server/JDK9ServerALPNProcessor.java | 2 +- .../java/org/eclipse/jetty/alpn/java/server/JDK9ALPNTest.java | 2 +- .../org/eclipse/jetty/alpn/java/server/JDK9HTTP2Server.java | 2 +- .../jetty/alpn/java/client/OpenJDK8ClientALPNProcessor.java | 2 +- .../eclipse/jetty/alpn/java/client/OpenJDK8HTTP2Client.java | 2 +- .../alpn/openjdk8/server/OpenJDK8ServerALPNProcessor.java | 2 +- .../jetty/alpn/openjdk8/server/OpenJDK8HTTP2Server.java | 2 +- .../org/eclipse/jetty/alpn/server/ALPNServerConnection.java | 2 +- .../jetty/alpn/server/ALPNServerConnectionFactory.java | 2 +- .../annotations/AbstractDiscoverableAnnotationHandler.java | 2 +- .../eclipse/jetty/annotations/AnnotationConfiguration.java | 2 +- .../org/eclipse/jetty/annotations/AnnotationDecorator.java | 2 +- .../org/eclipse/jetty/annotations/AnnotationIntrospector.java | 2 +- .../java/org/eclipse/jetty/annotations/AnnotationParser.java | 2 +- .../eclipse/jetty/annotations/ClassInheritanceHandler.java | 2 +- .../annotations/ContainerInitializerAnnotationHandler.java | 2 +- .../jetty/annotations/DeclareRolesAnnotationHandler.java | 2 +- .../jetty/annotations/MultiPartConfigAnnotationHandler.java | 2 +- .../jetty/annotations/PostConstructAnnotationHandler.java | 2 +- .../jetty/annotations/PreDestroyAnnotationHandler.java | 2 +- .../eclipse/jetty/annotations/ResourceAnnotationHandler.java | 2 +- .../eclipse/jetty/annotations/ResourcesAnnotationHandler.java | 2 +- .../org/eclipse/jetty/annotations/RunAsAnnotationHandler.java | 2 +- .../annotations/ServletContainerInitializersStarter.java | 2 +- .../jetty/annotations/ServletSecurityAnnotationHandler.java | 2 +- .../org/eclipse/jetty/annotations/WebFilterAnnotation.java | 2 +- .../eclipse/jetty/annotations/WebFilterAnnotationHandler.java | 2 +- .../org/eclipse/jetty/annotations/WebListenerAnnotation.java | 2 +- .../jetty/annotations/WebListenerAnnotationHandler.java | 2 +- .../org/eclipse/jetty/annotations/WebServletAnnotation.java | 2 +- .../jetty/annotations/WebServletAnnotationHandler.java | 2 +- .../main/java/org/eclipse/jetty/annotations/package-info.java | 2 +- jetty-annotations/src/test/java/org/acme/ClassOne.java | 2 +- .../src/test/java/org/eclipse/jetty/annotations/ClassA.java | 2 +- .../src/test/java/org/eclipse/jetty/annotations/ClassB.java | 2 +- .../src/test/java/org/eclipse/jetty/annotations/FilterC.java | 2 +- .../test/java/org/eclipse/jetty/annotations/InterfaceD.java | 2 +- .../test/java/org/eclipse/jetty/annotations/ListenerC.java | 2 +- .../src/test/java/org/eclipse/jetty/annotations/Multi.java | 2 +- .../src/test/java/org/eclipse/jetty/annotations/Sample.java | 2 +- .../src/test/java/org/eclipse/jetty/annotations/ServletC.java | 2 +- .../src/test/java/org/eclipse/jetty/annotations/ServletD.java | 2 +- .../jetty/annotations/TestAnnotationConfiguration.java | 2 +- .../eclipse/jetty/annotations/TestAnnotationInheritance.java | 2 +- .../org/eclipse/jetty/annotations/TestAnnotationParser.java | 2 +- .../jetty/annotations/TestSecurityAnnotationConversions.java | 2 +- .../org/eclipse/jetty/annotations/TestServletAnnotations.java | 2 +- .../annotations/WebInfClassServletContainerInitializer.java | 2 +- .../org/eclipse/jetty/annotations/resources/ResourceA.java | 2 +- .../org/eclipse/jetty/annotations/resources/ResourceB.java | 2 +- .../jetty/annotations/resources/TestResourceAnnotations.java | 2 +- .../java/org/eclipse/jetty/ant/AntWebInfConfiguration.java | 2 +- .../src/main/java/org/eclipse/jetty/ant/JettyStopTask.java | 2 +- .../src/main/java/org/eclipse/jetty/ant/package-info.java | 2 +- .../src/main/java/org/eclipse/jetty/ant/types/Attribute.java | 2 +- .../src/main/java/org/eclipse/jetty/ant/types/Attributes.java | 2 +- .../src/main/java/org/eclipse/jetty/ant/types/Connector.java | 2 +- .../main/java/org/eclipse/jetty/ant/types/package-info.java | 2 +- .../main/java/org/eclipse/jetty/ant/utils/package-info.java | 2 +- jetty-ant/src/test/java/org/eclipse/jetty/ant/AntBuild.java | 2 +- .../src/test/java/org/eclipse/jetty/ant/JettyAntTaskTest.java | 2 +- .../src/main/java/org/eclipse/jetty/cdi/core/AnyLiteral.java | 2 +- .../main/java/org/eclipse/jetty/cdi/core/JettyLogFactory.java | 2 +- .../main/java/org/eclipse/jetty/cdi/core/NamedLiteral.java | 4 ++-- .../main/java/org/eclipse/jetty/cdi/core/ScopedInstance.java | 2 +- .../main/java/org/eclipse/jetty/cdi/core/SimpleBeanStore.java | 4 ++-- .../java/org/eclipse/jetty/cdi/core/AbstractWeldTest.java | 2 +- .../eclipse/jetty/cdi/core/logging/LeanConsoleHandler.java | 2 +- .../java/org/eclipse/jetty/cdi/core/logging/LogFactory.java | 2 +- .../test/java/org/eclipse/jetty/cdi/core/logging/Logging.java | 2 +- .../org/eclipse/jetty/cdi/servlet/EmbeddedCdiHandler.java | 2 +- .../org/eclipse/jetty/cdi/servlet/JettyWeldInitializer.java | 2 +- .../org/eclipse/jetty/cdi/servlet/WeldDeploymentBinding.java | 2 +- .../src/test/java/org/eclipse/jetty/cdi/servlet/Dumper.java | 2 +- .../java/org/eclipse/jetty/cdi/servlet/IsoTimeFormatter.java | 2 +- .../org/eclipse/jetty/cdi/servlet/LocaleTimeFormatter.java | 2 +- .../org/eclipse/jetty/cdi/servlet/RequestInfoServlet.java | 2 +- .../org/eclipse/jetty/cdi/servlet/RequestParamsDumper.java | 2 +- .../java/org/eclipse/jetty/cdi/servlet/TimeFormatter.java | 2 +- .../test/java/org/eclipse/jetty/cdi/servlet/TimeServlet.java | 2 +- .../org/eclipse/jetty/cdi/servlet/WeldInitializationTest.java | 2 +- .../jetty/cdi/websocket/AbstractContainerListener.java | 2 +- .../jetty/cdi/websocket/JavaWebSocketSessionProducer.java | 2 +- .../jetty/cdi/websocket/JettyWebSocketSessionProducer.java | 2 +- .../eclipse/jetty/cdi/websocket/WebSocketCdiInitializer.java | 2 +- .../org/eclipse/jetty/cdi/websocket/WebSocketCdiListener.java | 2 +- .../eclipse/jetty/cdi/websocket/WebSocketScopeContext.java | 2 +- .../eclipse/jetty/cdi/websocket/WebSocketScopeExtension.java | 2 +- .../jetty/cdi/websocket/annotation/WebSocketScope.java | 2 +- .../java/org/eclipse/jetty/cdi/websocket/CheckSocket.java | 2 +- .../eclipse/jetty/cdi/websocket/basicapp/BasicAppTest.java | 2 +- .../org/eclipse/jetty/cdi/websocket/basicapp/EchoSocket.java | 2 +- .../java/org/eclipse/jetty/cdi/websocket/basicscope/Food.java | 2 +- .../java/org/eclipse/jetty/cdi/websocket/basicscope/Meal.java | 2 +- .../jetty/cdi/websocket/basicscope/ScopeBasicsTest.java | 2 +- .../org/eclipse/jetty/cdi/websocket/cdiapp/CdiAppTest.java | 2 +- .../org/eclipse/jetty/cdi/websocket/cdiapp/DataMaker.java | 2 +- .../org/eclipse/jetty/cdi/websocket/cdiapp/EchoSocket.java | 2 +- .../org/eclipse/jetty/cdi/websocket/cdiapp/InfoSocket.java | 2 +- .../org/eclipse/jetty/cdi/websocket/wsscope/BogusSession.java | 2 +- .../org/eclipse/jetty/cdi/websocket/wsscope/BogusSocket.java | 2 +- .../java/org/eclipse/jetty/cdi/websocket/wsscope/Food.java | 2 +- .../java/org/eclipse/jetty/cdi/websocket/wsscope/Meal.java | 2 +- .../cdi/websocket/wsscope/WebSocketScopeBaselineTest.java | 2 +- .../cdi/websocket/wsscope/WebSocketScopeSessionTest.java | 2 +- .../src/test/java/org/eclipse/jetty/tests/HelloIT.java | 2 +- .../src/test/java/org/eclipse/jetty/tests/ServerInfoIT.java | 2 +- .../test/java/org/eclipse/jetty/tests/ws/SessionInfoIT.java | 2 +- .../src/main/java/org/eclipse/jetty/tests/HelloServlet.java | 2 +- .../main/java/org/eclipse/jetty/tests/ServerInfoServlet.java | 2 +- .../src/main/java/org/eclipse/jetty/tests/logging/JULog.java | 2 +- .../java/org/eclipse/jetty/tests/logging/JULogFactory.java | 2 +- .../java/org/eclipse/jetty/tests/ws/SessionInfoSocket.java | 2 +- .../java/org/eclipse/jetty/client/AbstractConnectionPool.java | 2 +- .../jetty/client/AbstractConnectorHttpClientTransport.java | 2 +- .../org/eclipse/jetty/client/AbstractHttpClientTransport.java | 2 +- .../java/org/eclipse/jetty/client/AsyncContentProvider.java | 2 +- .../eclipse/jetty/client/AuthenticationProtocolHandler.java | 2 +- .../main/java/org/eclipse/jetty/client/ConnectionPool.java | 2 +- .../main/java/org/eclipse/jetty/client/ContentDecoder.java | 2 +- .../org/eclipse/jetty/client/ContinueProtocolHandler.java | 2 +- .../java/org/eclipse/jetty/client/DuplexConnectionPool.java | 2 +- .../java/org/eclipse/jetty/client/GZIPContentDecoder.java | 2 +- .../org/eclipse/jetty/client/HttpAuthenticationStore.java | 2 +- .../src/main/java/org/eclipse/jetty/client/HttpChannel.java | 2 +- .../src/main/java/org/eclipse/jetty/client/HttpClient.java | 2 +- .../java/org/eclipse/jetty/client/HttpClientTransport.java | 2 +- .../main/java/org/eclipse/jetty/client/HttpConnection.java | 2 +- .../src/main/java/org/eclipse/jetty/client/HttpContent.java | 2 +- .../java/org/eclipse/jetty/client/HttpContentResponse.java | 2 +- .../main/java/org/eclipse/jetty/client/HttpConversation.java | 2 +- .../main/java/org/eclipse/jetty/client/HttpDestination.java | 2 +- .../src/main/java/org/eclipse/jetty/client/HttpExchange.java | 2 +- .../src/main/java/org/eclipse/jetty/client/HttpProxy.java | 2 +- .../src/main/java/org/eclipse/jetty/client/HttpReceiver.java | 2 +- .../main/java/org/eclipse/jetty/client/HttpRedirector.java | 2 +- .../src/main/java/org/eclipse/jetty/client/HttpRequest.java | 2 +- .../java/org/eclipse/jetty/client/HttpRequestException.java | 2 +- .../src/main/java/org/eclipse/jetty/client/HttpResponse.java | 2 +- .../java/org/eclipse/jetty/client/HttpResponseException.java | 2 +- .../src/main/java/org/eclipse/jetty/client/HttpSender.java | 2 +- .../org/eclipse/jetty/client/LeakTrackingConnectionPool.java | 2 +- .../org/eclipse/jetty/client/MultiplexConnectionPool.java | 2 +- .../org/eclipse/jetty/client/MultiplexHttpDestination.java | 2 +- .../src/main/java/org/eclipse/jetty/client/Origin.java | 2 +- .../java/org/eclipse/jetty/client/PoolingHttpDestination.java | 2 +- .../main/java/org/eclipse/jetty/client/ProtocolHandler.java | 2 +- .../main/java/org/eclipse/jetty/client/ProtocolHandlers.java | 2 +- .../jetty/client/ProxyAuthenticationProtocolHandler.java | 2 +- .../java/org/eclipse/jetty/client/ProxyConfiguration.java | 2 +- .../org/eclipse/jetty/client/RedirectProtocolHandler.java | 2 +- .../main/java/org/eclipse/jetty/client/RequestNotifier.java | 2 +- .../main/java/org/eclipse/jetty/client/ResponseNotifier.java | 2 +- .../org/eclipse/jetty/client/RoundRobinConnectionPool.java | 2 +- .../src/main/java/org/eclipse/jetty/client/SendFailure.java | 2 +- .../src/main/java/org/eclipse/jetty/client/Socks4Proxy.java | 2 +- .../main/java/org/eclipse/jetty/client/Synchronizable.java | 2 +- .../org/eclipse/jetty/client/TimeoutCompleteListener.java | 2 +- .../org/eclipse/jetty/client/ValidatingConnectionPool.java | 2 +- .../jetty/client/WWWAuthenticationProtocolHandler.java | 2 +- .../java/org/eclipse/jetty/client/api/Authentication.java | 2 +- .../org/eclipse/jetty/client/api/AuthenticationStore.java | 2 +- .../main/java/org/eclipse/jetty/client/api/Connection.java | 2 +- .../java/org/eclipse/jetty/client/api/ContentProvider.java | 2 +- .../java/org/eclipse/jetty/client/api/ContentResponse.java | 2 +- .../main/java/org/eclipse/jetty/client/api/Destination.java | 2 +- .../src/main/java/org/eclipse/jetty/client/api/Request.java | 2 +- .../src/main/java/org/eclipse/jetty/client/api/Response.java | 2 +- .../src/main/java/org/eclipse/jetty/client/api/Result.java | 2 +- .../main/java/org/eclipse/jetty/client/api/package-info.java | 2 +- .../org/eclipse/jetty/client/http/HttpChannelOverHTTP.java | 2 +- .../jetty/client/http/HttpClientTransportOverHTTP.java | 2 +- .../org/eclipse/jetty/client/http/HttpConnectionOverHTTP.java | 2 +- .../org/eclipse/jetty/client/http/HttpConnectionUpgrader.java | 2 +- .../eclipse/jetty/client/http/HttpDestinationOverHTTP.java | 2 +- .../org/eclipse/jetty/client/http/HttpReceiverOverHTTP.java | 2 +- .../org/eclipse/jetty/client/http/HttpSenderOverHTTP.java | 2 +- .../java/org/eclipse/jetty/client/jmx/HttpClientMBean.java | 2 +- .../src/main/java/org/eclipse/jetty/client/package-info.java | 2 +- .../org/eclipse/jetty/client/util/AbstractAuthentication.java | 2 +- .../jetty/client/util/AbstractTypedContentProvider.java | 2 +- .../org/eclipse/jetty/client/util/BasicAuthentication.java | 2 +- .../eclipse/jetty/client/util/BufferingResponseListener.java | 2 +- .../eclipse/jetty/client/util/ByteBufferContentProvider.java | 2 +- .../org/eclipse/jetty/client/util/BytesContentProvider.java | 2 +- .../eclipse/jetty/client/util/DeferredContentProvider.java | 2 +- .../org/eclipse/jetty/client/util/DigestAuthentication.java | 2 +- .../org/eclipse/jetty/client/util/FormContentProvider.java | 2 +- .../org/eclipse/jetty/client/util/FutureResponseListener.java | 2 +- .../eclipse/jetty/client/util/InputStreamContentProvider.java | 2 +- .../jetty/client/util/InputStreamResponseListener.java | 2 +- .../eclipse/jetty/client/util/MultiPartContentProvider.java | 2 +- .../jetty/client/util/OutputStreamContentProvider.java | 2 +- .../org/eclipse/jetty/client/util/PathContentProvider.java | 2 +- .../org/eclipse/jetty/client/util/SPNEGOAuthentication.java | 2 +- .../org/eclipse/jetty/client/util/StringContentProvider.java | 2 +- .../main/java/org/eclipse/jetty/client/util/package-info.java | 2 +- .../eclipse/jetty/client/AbstractHttpClientServerTest.java | 2 +- .../org/eclipse/jetty/client/ClientConnectionCloseTest.java | 2 +- .../java/org/eclipse/jetty/client/ConnectionPoolTest.java | 2 +- .../java/org/eclipse/jetty/client/ContentResponseTest.java | 2 +- .../java/org/eclipse/jetty/client/EmptyServerHandler.java | 2 +- .../test/java/org/eclipse/jetty/client/ExternalSiteTest.java | 2 +- .../java/org/eclipse/jetty/client/GZIPContentDecoderTest.java | 2 +- .../org/eclipse/jetty/client/HostnameVerificationTest.java | 2 +- .../org/eclipse/jetty/client/HttpAuthenticationStoreTest.java | 2 +- .../org/eclipse/jetty/client/HttpClientAsyncContentTest.java | 2 +- .../eclipse/jetty/client/HttpClientAuthenticationTest.java | 2 +- .../eclipse/jetty/client/HttpClientChunkedContentTest.java | 2 +- .../org/eclipse/jetty/client/HttpClientCustomProxyTest.java | 2 +- .../jetty/client/HttpClientExplicitConnectionTest.java | 2 +- .../java/org/eclipse/jetty/client/HttpClientFailureTest.java | 2 +- .../java/org/eclipse/jetty/client/HttpClientGZIPTest.java | 2 +- .../java/org/eclipse/jetty/client/HttpClientProxyTest.java | 2 +- .../java/org/eclipse/jetty/client/HttpClientRedirectTest.java | 2 +- .../eclipse/jetty/client/HttpClientSynchronizationTest.java | 2 +- .../test/java/org/eclipse/jetty/client/HttpClientTLSTest.java | 2 +- .../test/java/org/eclipse/jetty/client/HttpClientTest.java | 2 +- .../test/java/org/eclipse/jetty/client/HttpClientURITest.java | 2 +- .../jetty/client/HttpClientUploadDuringServerShutdown.java | 2 +- .../org/eclipse/jetty/client/HttpConnectionLifecycleTest.java | 2 +- .../test/java/org/eclipse/jetty/client/HttpCookieTest.java | 2 +- .../java/org/eclipse/jetty/client/HttpRequestAbortTest.java | 2 +- .../java/org/eclipse/jetty/client/HttpResponseAbortTest.java | 2 +- .../eclipse/jetty/client/HttpResponseConcurrentAbortTest.java | 2 +- .../jetty/client/InsufficientThreadsDetectionTest.java | 2 +- .../src/test/java/org/eclipse/jetty/client/LivelockTest.java | 2 +- .../java/org/eclipse/jetty/client/ProxyConfigurationTest.java | 2 +- .../org/eclipse/jetty/client/ServerConnectionCloseTest.java | 2 +- .../test/java/org/eclipse/jetty/client/Socks4ProxyTest.java | 2 +- .../eclipse/jetty/client/TLSServerConnectionCloseTest.java | 2 +- .../eclipse/jetty/client/ValidatingConnectionPoolTest.java | 2 +- .../src/test/java/org/eclipse/jetty/client/api/Usage.java | 2 +- .../jetty/client/http/HttpDestinationOverHTTPTest.java | 2 +- .../eclipse/jetty/client/http/HttpReceiverOverHTTPTest.java | 2 +- .../org/eclipse/jetty/client/http/HttpSenderOverHTTPTest.java | 2 +- .../java/org/eclipse/jetty/client/jmx/HttpClientJMXTest.java | 2 +- .../org/eclipse/jetty/client/ssl/NeedWantClientAuthTest.java | 2 +- .../java/org/eclipse/jetty/client/ssl/SslBytesClientTest.java | 2 +- .../java/org/eclipse/jetty/client/ssl/SslBytesServerTest.java | 2 +- .../test/java/org/eclipse/jetty/client/ssl/SslBytesTest.java | 2 +- .../java/org/eclipse/jetty/client/ssl/SslConnectionTest.java | 2 +- .../jetty/client/util/DeferredContentProviderTest.java | 2 +- .../jetty/client/util/InputStreamContentProviderTest.java | 2 +- .../jetty/client/util/MultiPartContentProviderTest.java | 2 +- .../eclipse/jetty/client/util/SPNEGOAuthenticationTest.java | 2 +- .../eclipse/jetty/client/util/TypedContentProviderTest.java | 2 +- .../java/org/eclipse/jetty/continuation/Continuation.java | 2 +- .../org/eclipse/jetty/continuation/ContinuationFilter.java | 2 +- .../org/eclipse/jetty/continuation/ContinuationListener.java | 2 +- .../org/eclipse/jetty/continuation/ContinuationSupport.java | 2 +- .../org/eclipse/jetty/continuation/ContinuationThrowable.java | 2 +- .../java/org/eclipse/jetty/continuation/FauxContinuation.java | 2 +- .../org/eclipse/jetty/continuation/Servlet3Continuation.java | 2 +- .../java/org/eclipse/jetty/continuation/package-info.java | 2 +- jetty-deploy/src/main/java/org/eclipse/jetty/deploy/App.java | 2 +- .../src/main/java/org/eclipse/jetty/deploy/AppLifeCycle.java | 2 +- .../src/main/java/org/eclipse/jetty/deploy/AppProvider.java | 2 +- .../java/org/eclipse/jetty/deploy/ConfigurationManager.java | 2 +- .../main/java/org/eclipse/jetty/deploy/DeploymentManager.java | 2 +- .../eclipse/jetty/deploy/PropertiesConfigurationManager.java | 2 +- .../java/org/eclipse/jetty/deploy/bindings/DebugBinding.java | 2 +- .../eclipse/jetty/deploy/bindings/DebugListenerBinding.java | 2 +- .../jetty/deploy/bindings/GlobalWebappConfigBinding.java | 2 +- .../eclipse/jetty/deploy/bindings/OrderedGroupBinding.java | 2 +- .../org/eclipse/jetty/deploy/bindings/StandardDeployer.java | 2 +- .../org/eclipse/jetty/deploy/bindings/StandardStarter.java | 2 +- .../org/eclipse/jetty/deploy/bindings/StandardStopper.java | 2 +- .../org/eclipse/jetty/deploy/bindings/StandardUndeployer.java | 2 +- .../java/org/eclipse/jetty/deploy/bindings/package-info.java | 2 +- .../src/main/java/org/eclipse/jetty/deploy/graph/Edge.java | 2 +- .../src/main/java/org/eclipse/jetty/deploy/graph/Graph.java | 2 +- .../java/org/eclipse/jetty/deploy/graph/GraphOutputDot.java | 2 +- .../src/main/java/org/eclipse/jetty/deploy/graph/Node.java | 2 +- .../src/main/java/org/eclipse/jetty/deploy/graph/Path.java | 2 +- .../java/org/eclipse/jetty/deploy/graph/package-info.java | 2 +- .../org/eclipse/jetty/deploy/jmx/DeploymentManagerMBean.java | 2 +- .../main/java/org/eclipse/jetty/deploy/jmx/package-info.java | 2 +- .../src/main/java/org/eclipse/jetty/deploy/package-info.java | 2 +- .../eclipse/jetty/deploy/providers/ScanningAppProvider.java | 2 +- .../org/eclipse/jetty/deploy/providers/WebAppProvider.java | 2 +- .../java/org/eclipse/jetty/deploy/providers/package-info.java | 2 +- .../src/main/java/org/eclipse/jetty/deploy/util/FileID.java | 2 +- .../main/java/org/eclipse/jetty/deploy/util/package-info.java | 2 +- .../org/eclipse/jetty/deploy/AppLifeCyclePathCollector.java | 2 +- .../test/java/org/eclipse/jetty/deploy/AppLifeCycleTest.java | 2 +- .../jetty/deploy/DeploymentManagerLifeCyclePathTest.java | 2 +- .../java/org/eclipse/jetty/deploy/DeploymentManagerTest.java | 2 +- .../java/org/eclipse/jetty/deploy/JmxServiceConnection.java | 2 +- .../test/java/org/eclipse/jetty/deploy/MockAppProvider.java | 2 +- .../jetty/deploy/bindings/GlobalWebappConfigBindingTest.java | 2 +- .../test/java/org/eclipse/jetty/deploy/graph/GraphTest.java | 2 +- .../providers/ScanningAppProviderRuntimeUpdatesTest.java | 2 +- .../deploy/providers/ScanningAppProviderStartupTest.java | 2 +- .../eclipse/jetty/deploy/providers/WebAppProviderTest.java | 2 +- .../org/eclipse/jetty/deploy/test/XmlConfiguredJetty.java | 2 +- .../src/main/asciidoc/administration/alpn/alpn.adoc | 2 +- .../src/main/asciidoc/administration/alpn/chapter.adoc | 2 +- .../src/main/asciidoc/administration/annotations/chapter.adoc | 2 +- .../administration/annotations/quick-annotations-setup.adoc | 2 +- .../annotations/using-annotations-embedded.adoc | 2 +- .../administration/annotations/using-annotations.adoc | 2 +- .../main/asciidoc/administration/extras/balancer-servlet.adoc | 2 +- .../src/main/asciidoc/administration/extras/cgi-servlet.adoc | 2 +- .../src/main/asciidoc/administration/extras/chapter.adoc | 2 +- .../asciidoc/administration/extras/cross-origin-filter.adoc | 2 +- .../main/asciidoc/administration/extras/debug-handler.adoc | 2 +- .../main/asciidoc/administration/extras/default-handler.adoc | 2 +- .../main/asciidoc/administration/extras/default-servlet.adoc | 2 +- .../src/main/asciidoc/administration/extras/dos-filter.adoc | 2 +- .../main/asciidoc/administration/extras/error-handler.adoc | 2 +- .../src/main/asciidoc/administration/extras/gzip-filter.adoc | 2 +- .../main/asciidoc/administration/extras/header-filter.adoc | 2 +- .../main/asciidoc/administration/extras/ipaccess-handler.adoc | 2 +- .../asciidoc/administration/extras/moved-context-handler.adoc | 2 +- .../main/asciidoc/administration/extras/proxy-servlet.adoc | 2 +- .../src/main/asciidoc/administration/extras/qos-filter.adoc | 2 +- .../main/asciidoc/administration/extras/resource-handler.adoc | 2 +- .../main/asciidoc/administration/extras/rewrite-handler.adoc | 2 +- .../main/asciidoc/administration/extras/shutdown-handler.adoc | 2 +- .../asciidoc/administration/extras/statistics-handler.adoc | 2 +- .../src/main/asciidoc/administration/fastcgi/chapter.adoc | 2 +- .../asciidoc/administration/fastcgi/configuring-fastcgi.adoc | 2 +- .../main/asciidoc/administration/fastcgi/fastcgi-intro.adoc | 2 +- .../src/main/asciidoc/administration/http2/chapter.adoc | 2 +- .../asciidoc/administration/http2/configuring-haproxy.adoc | 2 +- .../main/asciidoc/administration/http2/configuring-http2.adoc | 2 +- .../main/asciidoc/administration/http2/configuring-push.adoc | 2 +- .../main/asciidoc/administration/http2/enabling-http2.adoc | 2 +- .../src/main/asciidoc/administration/http2/introduction.adoc | 2 +- .../src/main/asciidoc/administration/jmx/chapter.adoc | 2 +- .../src/main/asciidoc/administration/jmx/jetty-jconsole.adoc | 2 +- .../asciidoc/administration/jmx/jetty-jmx-annotations.adoc | 2 +- .../src/main/asciidoc/administration/jmx/using-jmx.adoc | 2 +- .../src/main/asciidoc/administration/jndi/chapter.adoc | 2 +- .../main/asciidoc/administration/jndi/jndi-configuration.adoc | 2 +- .../main/asciidoc/administration/jndi/jndi-datasources.adoc | 2 +- .../src/main/asciidoc/administration/jndi/jndi-embedded.adoc | 2 +- .../main/asciidoc/administration/jndi/quick-jndi-setup.adoc | 2 +- .../src/main/asciidoc/administration/jndi/using-jndi.adoc | 2 +- .../src/main/asciidoc/administration/logging/chapter.adoc | 2 +- .../administration/logging/configuring-jetty-logging.adoc | 2 +- .../logging/configuring-jetty-request-logs.adoc | 2 +- .../administration/logging/configuring-logging-modules.adoc | 2 +- .../logging/default-logging-with-stderrlog.adoc | 2 +- .../src/main/asciidoc/administration/logging/dump-tool.adoc | 2 +- .../asciidoc/administration/logging/example-apache-log4j.adoc | 2 +- .../logging/example-java-util-logging-native.adoc | 2 +- .../administration/logging/example-java-util-logging.adoc | 2 +- .../logging/example-logback-centralized-logging.adoc | 2 +- .../administration/logging/example-logback-sifting.adoc | 2 +- .../main/asciidoc/administration/logging/example-logback.adoc | 2 +- .../logging/example-slf4j-multiple-loggers.adoc | 2 +- .../src/main/asciidoc/administration/part.adoc | 2 +- .../src/main/asciidoc/administration/runner/chapter.adoc | 2 +- .../src/main/asciidoc/administration/runner/jetty-runner.adoc | 2 +- .../src/main/asciidoc/administration/sessions/chapter.adoc | 2 +- .../sessions/legacy/session-clustering-gcloud-datastore.adoc | 2 +- .../sessions/legacy/session-clustering-infinispan.adoc | 2 +- .../sessions/legacy/session-clustering-jdbc.adoc | 2 +- .../sessions/legacy/session-clustering-mongodb.adoc | 2 +- .../sessions/legacy/setting-session-characteristics.adoc | 2 +- .../sessions/legacy/using-persistent-sessions.adoc | 2 +- .../sessions/session-configuration-file-system.adoc | 2 +- .../administration/sessions/session-configuration-gcloud.adoc | 2 +- .../sessions/session-configuration-hazelcast.adoc | 2 +- .../sessions/session-configuration-housekeeper.adoc | 2 +- .../sessions/session-configuration-infinispan.adoc | 2 +- .../administration/sessions/session-configuration-jdbc.adoc | 2 +- .../session-configuration-memcachedsessiondatastore.adoc | 2 +- .../administration/sessions/session-configuration-memory.adoc | 2 +- .../sessions/session-configuration-mongodb.adoc | 2 +- .../sessions/session-configuration-sessioncache.adoc | 2 +- .../asciidoc/administration/sessions/session-hierarchy.adoc | 2 +- .../asciidoc/administration/sessions/sessions-details.adoc | 2 +- .../asciidoc/administration/sessions/sessions-usecases.adoc | 2 +- .../src/main/asciidoc/administration/startup/chapter.adoc | 2 +- .../main/asciidoc/administration/startup/custom-modules.adoc | 2 +- .../administration/startup/screen-empty-base-listconfig.adoc | 2 +- .../asciidoc/administration/startup/screen-empty-base.adoc | 2 +- .../startup/screen-http-webapp-deploy-listconfig.adoc | 2 +- .../administration/startup/screen-http-webapp-deploy.adoc | 2 +- .../administration/startup/screen-list-logging-modules.adoc | 2 +- .../asciidoc/administration/startup/screen-list-modules.adoc | 2 +- .../src/main/asciidoc/administration/startup/start-jar.adoc | 2 +- .../main/asciidoc/administration/startup/start-matrix.adoc | 2 +- .../asciidoc/administration/startup/startup-base-vs-home.adoc | 2 +- .../asciidoc/administration/startup/startup-classpath.adoc | 2 +- .../main/asciidoc/administration/startup/startup-jpms.adoc | 2 +- .../main/asciidoc/administration/startup/startup-modules.adoc | 2 +- .../asciidoc/administration/startup/startup-overview.adoc | 2 +- .../administration/startup/startup-troubleshooting.adoc | 2 +- .../asciidoc/administration/startup/startup-unix-service.adoc | 2 +- .../administration/startup/startup-windows-service.adoc | 2 +- .../asciidoc/administration/startup/startup-xml-config.adoc | 2 +- .../src/main/asciidoc/administration/tuning/chapter.adoc | 2 +- .../asciidoc/administration/tuning/garbage-collection.adoc | 2 +- .../src/main/asciidoc/administration/tuning/high-load.adoc | 2 +- .../src/main/asciidoc/administration/tuning/limit-load.adoc | 2 +- .../src/main/asciidoc/configuring/connectors/chapter.adoc | 2 +- .../configuring/connectors/configuring-connectors.adoc | 2 +- .../configuring/connectors/configuring-ssl-distribution.adoc | 2 +- .../main/asciidoc/configuring/connectors/configuring-ssl.adoc | 2 +- .../src/main/asciidoc/configuring/contexts/chapter.adoc | 2 +- .../configuring/contexts/configuring-virtual-hosts.adoc | 2 +- .../asciidoc/configuring/contexts/custom-error-pages.adoc | 2 +- .../contexts/serving-webapp-from-particular-port.adoc | 2 +- .../asciidoc/configuring/contexts/setting-context-path.adoc | 2 +- .../main/asciidoc/configuring/contexts/setting-form-size.adoc | 2 +- .../asciidoc/configuring/contexts/temporary-directories.adoc | 2 +- .../asciidoc/configuring/deploying/anatomy-of-a-webapp.adoc | 2 +- .../configuring/deploying/automatic-webapp-deployment.adoc | 2 +- .../src/main/asciidoc/configuring/deploying/chapter.adoc | 2 +- .../deploying/configuring-specific-webapp-deployment.adoc | 2 +- .../configuring/deploying/deployment-architecture.adoc | 2 +- .../configuring/deploying/deployment-processing-webapps.adoc | 2 +- .../main/asciidoc/configuring/deploying/hot-deployment.adoc | 2 +- .../main/asciidoc/configuring/deploying/overlay-deployer.adoc | 2 +- .../asciidoc/configuring/deploying/quickstart-webapp.adoc | 2 +- .../configuring/deploying/static-content-deployment.adoc | 2 +- .../src/main/asciidoc/configuring/jsp/chapter.adoc | 2 +- .../src/main/asciidoc/configuring/jsp/configuring-jsp.adoc | 2 +- jetty-documentation/src/main/asciidoc/configuring/part.adoc | 2 +- .../main/asciidoc/configuring/security/authentication.adoc | 2 +- .../src/main/asciidoc/configuring/security/chapter.adoc | 2 +- .../asciidoc/configuring/security/configuring-form-size.adoc | 2 +- .../src/main/asciidoc/configuring/security/jaas-support.adoc | 2 +- .../configuring/security/jetty-home-and-jetty-base.adoc | 2 +- .../main/asciidoc/configuring/security/secure-passwords.adoc | 2 +- .../asciidoc/configuring/security/serving-aliased-files.adoc | 2 +- .../security/setting-port80-access-for-non-root-user.adoc | 2 +- .../main/asciidoc/configuring/security/spnego-support.adoc | 2 +- .../src/main/asciidoc/development/ant/chapter.adoc | 4 ++-- .../src/main/asciidoc/development/ant/jetty-ant.adoc | 2 +- .../src/main/asciidoc/development/clients/http/chapter.adoc | 2 +- .../asciidoc/development/clients/http/http-client-api.adoc | 2 +- .../development/clients/http/http-client-authentication.adoc | 2 +- .../asciidoc/development/clients/http/http-client-cookie.adoc | 2 +- .../asciidoc/development/clients/http/http-client-intro.adoc | 2 +- .../asciidoc/development/clients/http/http-client-proxy.adoc | 2 +- .../development/clients/http/http-client-transport.adoc | 2 +- .../src/main/asciidoc/development/continuations/chapter.adoc | 2 +- .../development/continuations/continuations-intro.adoc | 2 +- .../development/continuations/continuations-patterns.adoc | 2 +- .../development/continuations/continuations-using.adoc | 2 +- .../src/main/asciidoc/development/embedding/chapter.adoc | 4 ++-- .../asciidoc/development/embedding/embedded-examples.adoc | 2 +- .../main/asciidoc/development/embedding/embedding-jetty.adoc | 2 +- .../development/embedding/examples/embedded-file-server.adoc | 2 +- .../embedding/examples/embedded-many-connectors.adoc | 2 +- .../embedding/examples/embedded-minimal-servlet.adoc | 2 +- .../development/embedding/examples/embedded-one-webapp.adoc | 2 +- .../embedding/examples/embedded-secured-hello-handler.adoc | 2 +- .../embedding/examples/embedded-split-file-server.adoc | 2 +- .../main/asciidoc/development/embedding/jetty-helloworld.adoc | 2 +- .../src/main/asciidoc/development/frameworks/chapter.adoc | 4 ++-- .../src/main/asciidoc/development/frameworks/metro.adoc | 2 +- .../src/main/asciidoc/development/frameworks/osgi.adoc | 2 +- .../main/asciidoc/development/frameworks/spring-usage.adoc | 2 +- .../src/main/asciidoc/development/frameworks/weld.adoc | 2 +- .../src/main/asciidoc/development/handlers/chapter.adoc | 4 ++-- .../development/handlers/writing-custom-handlers.adoc | 2 +- .../src/main/asciidoc/development/maven/chapter.adoc | 4 ++-- .../asciidoc/development/maven/jetty-jspc-maven-plugin.adoc | 2 +- .../asciidoc/development/maven/jetty-maven-helloworld.adoc | 2 +- .../main/asciidoc/development/maven/jetty-maven-plugin.adoc | 2 +- .../main/asciidoc/development/maven/jetty-maven-scanning.adoc | 2 +- jetty-documentation/src/main/asciidoc/development/part.adoc | 2 +- .../main/asciidoc/development/websockets/intro/chapter.adoc | 2 +- .../main/asciidoc/development/websockets/java/chapter.adoc | 2 +- .../websockets/java/java-websocket-client-api.adoc | 2 +- .../websockets/java/java-websocket-server-api.adoc | 2 +- .../main/asciidoc/development/websockets/jetty/chapter.adoc | 4 ++-- .../websockets/jetty/jetty-websocket-api-adapter.adoc | 2 +- .../websockets/jetty/jetty-websocket-api-annotations.adoc | 2 +- .../websockets/jetty/jetty-websocket-api-events.adoc | 2 +- .../websockets/jetty/jetty-websocket-api-listener.adoc | 2 +- .../websockets/jetty/jetty-websocket-api-send-message.adoc | 2 +- .../websockets/jetty/jetty-websocket-api-session.adoc | 2 +- .../development/websockets/jetty/jetty-websocket-api.adoc | 2 +- .../websockets/jetty/jetty-websocket-client-api.adoc | 2 +- .../websockets/jetty/jetty-websocket-server-api.adoc | 2 +- jetty-documentation/src/main/asciidoc/index.adoc | 2 +- .../src/main/asciidoc/quick-start/configuring/chapter.adoc | 2 +- .../asciidoc/quick-start/configuring/how-to-configure.adoc | 2 +- .../asciidoc/quick-start/configuring/what-to-configure.adoc | 2 +- .../main/asciidoc/quick-start/getting-started/chapter.adoc | 2 +- .../getting-started/jetty-common-configuration.adoc | 2 +- .../asciidoc/quick-start/getting-started/jetty-deploying.adoc | 2 +- .../quick-start/getting-started/jetty-installing.adoc | 2 +- .../asciidoc/quick-start/getting-started/jetty-running.adoc | 2 +- .../src/main/asciidoc/quick-start/introduction/chapter.adoc | 2 +- .../asciidoc/quick-start/introduction/jetty-coordinates.adoc | 2 +- .../main/asciidoc/quick-start/introduction/jetty-javaee.adoc | 2 +- .../main/asciidoc/quick-start/introduction/what-is-jetty.adoc | 2 +- .../main/asciidoc/quick-start/introduction/what-version.adoc | 2 +- jetty-documentation/src/main/asciidoc/quick-start/part.adoc | 2 +- .../main/asciidoc/reference/architecture/1xx-responses.adoc | 2 +- .../asciidoc/reference/architecture/basic-architecture.adoc | 2 +- .../src/main/asciidoc/reference/architecture/chapter.adoc | 4 ++-- .../asciidoc/reference/architecture/jetty-classloading.adoc | 2 +- .../reference/architecture/server-side-architecture.adoc | 2 +- .../src/main/asciidoc/reference/contributing/bugs.adoc | 2 +- .../src/main/asciidoc/reference/contributing/chapter.adoc | 4 ++-- .../asciidoc/reference/contributing/coding-standards.adoc | 2 +- .../src/main/asciidoc/reference/contributing/community.adoc | 2 +- .../main/asciidoc/reference/contributing/documentation.adoc | 4 ++-- .../src/main/asciidoc/reference/contributing/patches.adoc | 2 +- .../main/asciidoc/reference/contributing/release-testing.adoc | 2 +- .../main/asciidoc/reference/contributing/releasing-jetty.adoc | 2 +- .../src/main/asciidoc/reference/contributing/security.adoc | 4 ++-- .../main/asciidoc/reference/contributing/source-build.adoc | 2 +- .../src/main/asciidoc/reference/debugging/chapter.adoc | 4 ++-- .../asciidoc/reference/debugging/debugging-with-eclipse.adoc | 4 ++-- .../asciidoc/reference/debugging/debugging-with-intellij.adoc | 4 ++-- .../asciidoc/reference/debugging/enable-remote-debugging.adoc | 2 +- .../src/main/asciidoc/reference/faq/chapter.adoc | 2 +- .../src/main/asciidoc/reference/jetty-xml/chapter.adoc | 2 +- .../src/main/asciidoc/reference/jetty-xml/jetty-env-xml.adoc | 2 +- .../asciidoc/reference/jetty-xml/jetty-web-xml-config.adoc | 2 +- .../main/asciidoc/reference/jetty-xml/jetty-xml-config.adoc | 2 +- .../main/asciidoc/reference/jetty-xml/jetty-xml-syntax.adoc | 2 +- .../main/asciidoc/reference/jetty-xml/jetty-xml-usage.adoc | 2 +- .../main/asciidoc/reference/jetty-xml/override-web-xml.adoc | 2 +- .../src/main/asciidoc/reference/jetty-xml/webdefault-xml.adoc | 2 +- jetty-documentation/src/main/asciidoc/reference/part.adoc | 2 +- .../src/main/asciidoc/reference/platforms/chapter.adoc | 2 +- .../src/main/asciidoc/reference/platforms/cloudfoundry.adoc | 2 +- .../main/asciidoc/reference/platforms/elastic-beanstalk.adoc | 4 ++-- .../src/main/asciidoc/reference/platforms/fedora.adoc | 2 +- .../src/main/asciidoc/reference/platforms/jelastic.adoc | 2 +- .../src/main/asciidoc/reference/platforms/ubuntu.adoc | 2 +- .../src/main/asciidoc/reference/troubleshooting/chapter.adoc | 2 +- .../reference/troubleshooting/preventing-memory-leaks.adoc | 2 +- .../asciidoc/reference/troubleshooting/security-reports.adoc | 2 +- .../asciidoc/reference/troubleshooting/slow-deployment.adoc | 2 +- .../troubleshooting/troubleshooting-locked-files.adoc | 2 +- .../troubleshooting/troubleshooting-zip-exceptions.adoc | 2 +- .../main/asciidoc/reference/troubleshooting/watchservice.adoc | 2 +- .../src/main/asciidoc/reference/upgrading/chapter.adoc | 2 +- .../src/main/asciidoc/reference/upgrading/sample.adoc | 2 +- .../asciidoc/reference/upgrading/upgrading-9.3-to-9.4.adoc | 2 +- .../src/main/java/org/eclipse/jetty/fcgi/FCGI.java | 2 +- .../eclipse/jetty/fcgi/client/http/HttpChannelOverFCGI.java | 2 +- .../jetty/fcgi/client/http/HttpClientTransportOverFCGI.java | 2 +- .../jetty/fcgi/client/http/HttpConnectionOverFCGI.java | 2 +- .../jetty/fcgi/client/http/HttpDestinationOverFCGI.java | 2 +- .../eclipse/jetty/fcgi/client/http/HttpReceiverOverFCGI.java | 2 +- .../eclipse/jetty/fcgi/client/http/HttpSenderOverFCGI.java | 2 +- .../fcgi/client/http/MultiplexHttpDestinationOverFCGI.java | 2 +- .../org/eclipse/jetty/fcgi/generator/ClientGenerator.java | 2 +- .../main/java/org/eclipse/jetty/fcgi/generator/Flusher.java | 2 +- .../main/java/org/eclipse/jetty/fcgi/generator/Generator.java | 2 +- .../org/eclipse/jetty/fcgi/generator/ServerGenerator.java | 2 +- .../eclipse/jetty/fcgi/parser/BeginRequestContentParser.java | 2 +- .../main/java/org/eclipse/jetty/fcgi/parser/ClientParser.java | 2 +- .../java/org/eclipse/jetty/fcgi/parser/ContentParser.java | 2 +- .../eclipse/jetty/fcgi/parser/EndRequestContentParser.java | 2 +- .../main/java/org/eclipse/jetty/fcgi/parser/HeaderParser.java | 2 +- .../org/eclipse/jetty/fcgi/parser/ParamsContentParser.java | 2 +- .../src/main/java/org/eclipse/jetty/fcgi/parser/Parser.java | 2 +- .../org/eclipse/jetty/fcgi/parser/ResponseContentParser.java | 2 +- .../main/java/org/eclipse/jetty/fcgi/parser/ServerParser.java | 2 +- .../org/eclipse/jetty/fcgi/parser/StreamContentParser.java | 2 +- .../org/eclipse/jetty/fcgi/generator/ClientGeneratorTest.java | 2 +- .../java/org/eclipse/jetty/fcgi/parser/ClientParserTest.java | 2 +- .../org/eclipse/jetty/fcgi/server/HttpChannelOverFCGI.java | 2 +- .../org/eclipse/jetty/fcgi/server/HttpTransportOverFCGI.java | 2 +- .../org/eclipse/jetty/fcgi/server/ServerFCGIConnection.java | 2 +- .../jetty/fcgi/server/ServerFCGIConnectionFactory.java | 2 +- .../eclipse/jetty/fcgi/server/proxy/FastCGIProxyServlet.java | 2 +- .../org/eclipse/jetty/fcgi/server/proxy/TryFilesFilter.java | 2 +- .../jetty/fcgi/server/AbstractHttpClientServerTest.java | 2 +- .../org/eclipse/jetty/fcgi/server/EmptyServerHandler.java | 2 +- .../eclipse/jetty/fcgi/server/ExternalFastCGIServerTest.java | 2 +- .../java/org/eclipse/jetty/fcgi/server/HttpClientTest.java | 2 +- .../fcgi/server/proxy/DrupalHTTP2FastCGIProxyServer.java | 2 +- .../jetty/fcgi/server/proxy/FastCGIProxyServletTest.java | 2 +- .../eclipse/jetty/fcgi/server/proxy/TryFilesFilterTest.java | 2 +- .../fcgi/server/proxy/WordPressHTTP2FastCGIProxyServer.java | 2 +- .../eclipse/jetty/gcloud/session/GCloudSessionDataStore.java | 2 +- .../jetty/gcloud/session/GCloudSessionDataStoreFactory.java | 2 +- .../org/eclipse/jetty/gcloud/session/GCloudSessionTester.java | 2 +- .../jetty/hazelcast/session/HazelcastSessionDataStore.java | 2 +- .../hazelcast/session/HazelcastSessionDataStoreFactory.java | 2 +- .../jetty/hazelcast/session/SessionDataSerializer.java | 2 +- .../jetty/hazelcast/session/TestHazelcastSessions.java | 2 +- .../java/org/eclipse/jetty/http/spi/DelegatingThreadPool.java | 2 +- .../org/eclipse/jetty/http/spi/HttpSpiContextHandler.java | 2 +- .../main/java/org/eclipse/jetty/http/spi/JettyExchange.java | 2 +- .../java/org/eclipse/jetty/http/spi/JettyHttpContext.java | 2 +- .../java/org/eclipse/jetty/http/spi/JettyHttpExchange.java | 2 +- .../org/eclipse/jetty/http/spi/JettyHttpExchangeDelegate.java | 2 +- .../main/java/org/eclipse/jetty/http/spi/JettyHttpServer.java | 2 +- .../org/eclipse/jetty/http/spi/JettyHttpServerProvider.java | 2 +- .../java/org/eclipse/jetty/http/spi/JettyHttpsExchange.java | 2 +- .../jetty/http/spi/TestEndpointMultiplePublishProblem.java | 2 +- .../test/java/org/eclipse/jetty/http/spi/TestSPIServer.java | 2 +- .../main/java/org/eclipse/jetty/http/BadMessageException.java | 2 +- .../java/org/eclipse/jetty/http/CompressedContentFormat.java | 2 +- .../main/java/org/eclipse/jetty/http/CookieCompliance.java | 2 +- .../src/main/java/org/eclipse/jetty/http/DateGenerator.java | 2 +- .../src/main/java/org/eclipse/jetty/http/DateParser.java | 2 +- .../main/java/org/eclipse/jetty/http/GZIPContentDecoder.java | 2 +- .../main/java/org/eclipse/jetty/http/HostPortHttpField.java | 2 +- .../java/org/eclipse/jetty/http/Http1FieldPreEncoder.java | 2 +- .../src/main/java/org/eclipse/jetty/http/HttpCompliance.java | 4 ++-- .../java/org/eclipse/jetty/http/HttpComplianceSection.java | 2 +- .../src/main/java/org/eclipse/jetty/http/HttpContent.java | 2 +- .../src/main/java/org/eclipse/jetty/http/HttpCookie.java | 2 +- .../src/main/java/org/eclipse/jetty/http/HttpField.java | 2 +- .../main/java/org/eclipse/jetty/http/HttpFieldPreEncoder.java | 4 ++-- .../src/main/java/org/eclipse/jetty/http/HttpFields.java | 2 +- .../src/main/java/org/eclipse/jetty/http/HttpGenerator.java | 2 +- .../src/main/java/org/eclipse/jetty/http/HttpHeader.java | 2 +- .../src/main/java/org/eclipse/jetty/http/HttpHeaderValue.java | 2 +- .../src/main/java/org/eclipse/jetty/http/HttpMethod.java | 2 +- .../src/main/java/org/eclipse/jetty/http/HttpParser.java | 2 +- .../src/main/java/org/eclipse/jetty/http/HttpScheme.java | 2 +- .../src/main/java/org/eclipse/jetty/http/HttpStatus.java | 2 +- .../src/main/java/org/eclipse/jetty/http/HttpTokens.java | 2 +- jetty-http/src/main/java/org/eclipse/jetty/http/HttpURI.java | 2 +- .../src/main/java/org/eclipse/jetty/http/HttpVersion.java | 2 +- jetty-http/src/main/java/org/eclipse/jetty/http/MetaData.java | 2 +- .../src/main/java/org/eclipse/jetty/http/MimeTypes.java | 2 +- .../java/org/eclipse/jetty/http/MultiPartFormInputStream.java | 2 +- .../src/main/java/org/eclipse/jetty/http/MultiPartParser.java | 2 +- jetty-http/src/main/java/org/eclipse/jetty/http/PathMap.java | 2 +- .../main/java/org/eclipse/jetty/http/PreEncodedHttpField.java | 2 +- .../java/org/eclipse/jetty/http/PrecompressedHttpContent.java | 4 ++-- .../src/main/java/org/eclipse/jetty/http/QuotedCSV.java | 2 +- .../main/java/org/eclipse/jetty/http/QuotedQualityCSV.java | 2 +- .../main/java/org/eclipse/jetty/http/ResourceHttpContent.java | 4 ++-- jetty-http/src/main/java/org/eclipse/jetty/http/Syntax.java | 2 +- .../src/main/java/org/eclipse/jetty/http/package-info.java | 2 +- .../java/org/eclipse/jetty/http/pathmap/MappedResource.java | 4 ++-- .../java/org/eclipse/jetty/http/pathmap/PathMappings.java | 2 +- .../main/java/org/eclipse/jetty/http/pathmap/PathSpec.java | 2 +- .../java/org/eclipse/jetty/http/pathmap/PathSpecGroup.java | 2 +- .../main/java/org/eclipse/jetty/http/pathmap/PathSpecSet.java | 2 +- .../java/org/eclipse/jetty/http/pathmap/RegexPathSpec.java | 2 +- .../java/org/eclipse/jetty/http/pathmap/ServletPathSpec.java | 2 +- .../org/eclipse/jetty/http/pathmap/UriTemplatePathSpec.java | 2 +- .../java/org/eclipse/jetty/http/GZIPContentDecoderTest.java | 2 +- .../src/test/java/org/eclipse/jetty/http/HttpFieldTest.java | 2 +- .../test/java/org/eclipse/jetty/http/HttpFieldsMatchers.java | 2 +- .../src/test/java/org/eclipse/jetty/http/HttpFieldsTest.java | 2 +- .../java/org/eclipse/jetty/http/HttpGeneratorClientTest.java | 2 +- .../org/eclipse/jetty/http/HttpGeneratorServerHTTPTest.java | 2 +- .../java/org/eclipse/jetty/http/HttpGeneratorServerTest.java | 2 +- .../src/test/java/org/eclipse/jetty/http/HttpParserTest.java | 2 +- .../test/java/org/eclipse/jetty/http/HttpStatusCodeTest.java | 2 +- .../src/test/java/org/eclipse/jetty/http/HttpTester.java | 2 +- .../src/test/java/org/eclipse/jetty/http/HttpTesterTest.java | 2 +- .../test/java/org/eclipse/jetty/http/HttpURIParseTest.java | 4 ++-- .../src/test/java/org/eclipse/jetty/http/HttpURITest.java | 2 +- .../src/test/java/org/eclipse/jetty/http/MimeTypesTest.java | 2 +- .../java/org/eclipse/jetty/http/MultiPartCaptureTest.java | 2 +- .../org/eclipse/jetty/http/MultiPartFormInputStreamTest.java | 2 +- .../test/java/org/eclipse/jetty/http/MultiPartParserTest.java | 2 +- .../src/test/java/org/eclipse/jetty/http/PathMapTest.java | 2 +- .../src/test/java/org/eclipse/jetty/http/QuotedCSVTest.java | 2 +- .../java/org/eclipse/jetty/http/QuotedQualityCSVTest.java | 2 +- .../src/test/java/org/eclipse/jetty/http/SyntaxTest.java | 2 +- .../jetty/http/matchers/HttpFieldsContainsHeaderKey.java | 2 +- .../jetty/http/matchers/HttpFieldsContainsHeaderValue.java | 2 +- .../eclipse/jetty/http/matchers/HttpFieldsMatchersTest.java | 2 +- .../java/org/eclipse/jetty/http/pathmap/PathMappingsTest.java | 2 +- .../java/org/eclipse/jetty/http/pathmap/PathSpecAssert.java | 2 +- .../org/eclipse/jetty/http/pathmap/RegexPathSpecTest.java | 2 +- .../jetty/http/pathmap/ServletPathSpecMatchListTest.java | 2 +- .../eclipse/jetty/http/pathmap/ServletPathSpecOrderTest.java | 2 +- .../org/eclipse/jetty/http/pathmap/ServletPathSpecTest.java | 2 +- .../jetty/http/pathmap/UriTemplatePathSpecBadSpecsTest.java | 4 ++-- .../eclipse/jetty/http/pathmap/UriTemplatePathSpecTest.java | 2 +- .../eclipse/jetty/http2/alpn/tests/ALPNNegotiationTest.java | 2 +- .../org/eclipse/jetty/http2/alpn/tests/AbstractALPNTest.java | 2 +- .../main/java/org/eclipse/jetty/http2/client/HTTP2Client.java | 2 +- .../jetty/http2/client/HTTP2ClientConnectionFactory.java | 2 +- .../org/eclipse/jetty/http2/client/HTTP2ClientSession.java | 2 +- .../java/org/eclipse/jetty/http2/client/AbstractTest.java | 2 +- .../test/java/org/eclipse/jetty/http2/client/AsyncIOTest.java | 2 +- .../java/org/eclipse/jetty/http2/client/AsyncServletTest.java | 2 +- .../jetty/http2/client/BufferingFlowControlStrategyTest.java | 2 +- .../src/test/java/org/eclipse/jetty/http2/client/Client.java | 2 +- .../org/eclipse/jetty/http2/client/ConnectTimeoutTest.java | 2 +- .../java/org/eclipse/jetty/http2/client/EmptyHttpServlet.java | 2 +- .../eclipse/jetty/http2/client/FlowControlStalledTest.java | 2 +- .../eclipse/jetty/http2/client/FlowControlStrategyTest.java | 2 +- .../eclipse/jetty/http2/client/FlowControlWindowsTest.java | 2 +- .../test/java/org/eclipse/jetty/http2/client/HTTP2Test.java | 2 +- .../java/org/eclipse/jetty/http2/client/IdleTimeoutTest.java | 2 +- .../java/org/eclipse/jetty/http2/client/InterleavingTest.java | 2 +- .../org/eclipse/jetty/http2/client/InvalidServerTest.java | 2 +- .../org/eclipse/jetty/http2/client/MaxPushedStreamsTest.java | 2 +- .../test/java/org/eclipse/jetty/http2/client/PingTest.java | 2 +- .../test/java/org/eclipse/jetty/http2/client/PrefaceTest.java | 2 +- .../java/org/eclipse/jetty/http2/client/PriorityTest.java | 2 +- .../org/eclipse/jetty/http2/client/ProxyProtocolTest.java | 2 +- .../test/java/org/eclipse/jetty/http2/client/ProxyTest.java | 2 +- .../org/eclipse/jetty/http2/client/PushCacheFilterTest.java | 2 +- .../org/eclipse/jetty/http2/client/RawHTTP2ProxyTest.java | 2 +- .../org/eclipse/jetty/http2/client/SessionFailureTest.java | 2 +- .../jetty/http2/client/SimpleFlowControlStrategyTest.java | 2 +- .../eclipse/jetty/http2/client/SmallThreadPoolLoadTest.java | 2 +- .../java/org/eclipse/jetty/http2/client/StreamCloseTest.java | 2 +- .../java/org/eclipse/jetty/http2/client/StreamCountTest.java | 2 +- .../java/org/eclipse/jetty/http2/client/StreamResetTest.java | 2 +- .../java/org/eclipse/jetty/http2/client/TrailersTest.java | 2 +- .../org/eclipse/jetty/http2/AbstractFlowControlStrategy.java | 2 +- .../org/eclipse/jetty/http2/BufferingFlowControlStrategy.java | 2 +- .../src/main/java/org/eclipse/jetty/http2/CloseState.java | 2 +- .../src/main/java/org/eclipse/jetty/http2/ErrorCode.java | 2 +- .../src/main/java/org/eclipse/jetty/http2/Flags.java | 2 +- .../java/org/eclipse/jetty/http2/FlowControlStrategy.java | 2 +- .../src/main/java/org/eclipse/jetty/http2/HTTP2Cipher.java | 2 +- .../main/java/org/eclipse/jetty/http2/HTTP2Connection.java | 2 +- .../src/main/java/org/eclipse/jetty/http2/HTTP2Flusher.java | 2 +- .../src/main/java/org/eclipse/jetty/http2/HTTP2Session.java | 2 +- .../src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java | 2 +- .../src/main/java/org/eclipse/jetty/http2/ISession.java | 2 +- .../src/main/java/org/eclipse/jetty/http2/IStream.java | 2 +- .../org/eclipse/jetty/http2/SimpleFlowControlStrategy.java | 2 +- .../src/main/java/org/eclipse/jetty/http2/api/Session.java | 2 +- .../src/main/java/org/eclipse/jetty/http2/api/Stream.java | 2 +- .../eclipse/jetty/http2/api/server/ServerSessionListener.java | 2 +- .../main/java/org/eclipse/jetty/http2/frames/DataFrame.java | 2 +- .../java/org/eclipse/jetty/http2/frames/DisconnectFrame.java | 2 +- .../java/org/eclipse/jetty/http2/frames/FailureFrame.java | 2 +- .../src/main/java/org/eclipse/jetty/http2/frames/Frame.java | 2 +- .../main/java/org/eclipse/jetty/http2/frames/FrameType.java | 2 +- .../main/java/org/eclipse/jetty/http2/frames/GoAwayFrame.java | 2 +- .../java/org/eclipse/jetty/http2/frames/HeadersFrame.java | 2 +- .../main/java/org/eclipse/jetty/http2/frames/PingFrame.java | 2 +- .../java/org/eclipse/jetty/http2/frames/PrefaceFrame.java | 2 +- .../java/org/eclipse/jetty/http2/frames/PriorityFrame.java | 2 +- .../java/org/eclipse/jetty/http2/frames/PushPromiseFrame.java | 2 +- .../main/java/org/eclipse/jetty/http2/frames/ResetFrame.java | 2 +- .../java/org/eclipse/jetty/http2/frames/SettingsFrame.java | 2 +- .../org/eclipse/jetty/http2/frames/WindowUpdateFrame.java | 2 +- .../java/org/eclipse/jetty/http2/generator/DataGenerator.java | 2 +- .../eclipse/jetty/http2/generator/DisconnectGenerator.java | 2 +- .../org/eclipse/jetty/http2/generator/FrameGenerator.java | 2 +- .../java/org/eclipse/jetty/http2/generator/Generator.java | 2 +- .../org/eclipse/jetty/http2/generator/GoAwayGenerator.java | 2 +- .../org/eclipse/jetty/http2/generator/HeaderGenerator.java | 2 +- .../org/eclipse/jetty/http2/generator/HeadersGenerator.java | 2 +- .../java/org/eclipse/jetty/http2/generator/PingGenerator.java | 2 +- .../org/eclipse/jetty/http2/generator/PrefaceGenerator.java | 2 +- .../org/eclipse/jetty/http2/generator/PriorityGenerator.java | 2 +- .../eclipse/jetty/http2/generator/PushPromiseGenerator.java | 2 +- .../org/eclipse/jetty/http2/generator/ResetGenerator.java | 2 +- .../org/eclipse/jetty/http2/generator/SettingsGenerator.java | 2 +- .../eclipse/jetty/http2/generator/WindowUpdateGenerator.java | 2 +- .../main/java/org/eclipse/jetty/http2/parser/BodyParser.java | 2 +- .../eclipse/jetty/http2/parser/ContinuationBodyParser.java | 2 +- .../java/org/eclipse/jetty/http2/parser/DataBodyParser.java | 2 +- .../java/org/eclipse/jetty/http2/parser/GoAwayBodyParser.java | 2 +- .../org/eclipse/jetty/http2/parser/HeaderBlockFragments.java | 2 +- .../org/eclipse/jetty/http2/parser/HeaderBlockParser.java | 2 +- .../java/org/eclipse/jetty/http2/parser/HeaderParser.java | 2 +- .../org/eclipse/jetty/http2/parser/HeadersBodyParser.java | 2 +- .../src/main/java/org/eclipse/jetty/http2/parser/Parser.java | 2 +- .../java/org/eclipse/jetty/http2/parser/PingBodyParser.java | 2 +- .../java/org/eclipse/jetty/http2/parser/PrefaceParser.java | 2 +- .../org/eclipse/jetty/http2/parser/PriorityBodyParser.java | 2 +- .../org/eclipse/jetty/http2/parser/PushPromiseBodyParser.java | 2 +- .../java/org/eclipse/jetty/http2/parser/ResetBodyParser.java | 2 +- .../java/org/eclipse/jetty/http2/parser/ServerParser.java | 2 +- .../org/eclipse/jetty/http2/parser/SettingsBodyParser.java | 2 +- .../org/eclipse/jetty/http2/parser/UnknownBodyParser.java | 2 +- .../eclipse/jetty/http2/parser/WindowUpdateBodyParser.java | 2 +- .../org/eclipse/jetty/http2/frames/ContinuationParseTest.java | 2 +- .../org/eclipse/jetty/http2/frames/DataGenerateParseTest.java | 2 +- .../eclipse/jetty/http2/frames/GoAwayGenerateParseTest.java | 2 +- .../eclipse/jetty/http2/frames/HeadersGenerateParseTest.java | 2 +- .../org/eclipse/jetty/http2/frames/MaxFrameSizeParseTest.java | 2 +- .../org/eclipse/jetty/http2/frames/PingGenerateParseTest.java | 2 +- .../eclipse/jetty/http2/frames/PriorityGenerateParseTest.java | 2 +- .../jetty/http2/frames/PushPromiseGenerateParseTest.java | 2 +- .../eclipse/jetty/http2/frames/ResetGenerateParseTest.java | 2 +- .../eclipse/jetty/http2/frames/SettingsGenerateParseTest.java | 2 +- .../java/org/eclipse/jetty/http2/frames/UnknownParseTest.java | 2 +- .../jetty/http2/frames/WindowUpdateGenerateParseTest.java | 2 +- .../org/eclipse/jetty/http2/hpack/AuthorityHttpField.java | 2 +- .../main/java/org/eclipse/jetty/http2/hpack/HpackContext.java | 2 +- .../main/java/org/eclipse/jetty/http2/hpack/HpackDecoder.java | 2 +- .../main/java/org/eclipse/jetty/http2/hpack/HpackEncoder.java | 2 +- .../java/org/eclipse/jetty/http2/hpack/HpackException.java | 2 +- .../org/eclipse/jetty/http2/hpack/HpackFieldPreEncoder.java | 2 +- .../src/main/java/org/eclipse/jetty/http2/hpack/Huffman.java | 2 +- .../java/org/eclipse/jetty/http2/hpack/MetaDataBuilder.java | 2 +- .../main/java/org/eclipse/jetty/http2/hpack/NBitInteger.java | 2 +- .../org/eclipse/jetty/http2/hpack/StaticTableHttpField.java | 4 ++-- .../java/org/eclipse/jetty/http2/hpack/HpackContextTest.java | 2 +- .../java/org/eclipse/jetty/http2/hpack/HpackDecoderTest.java | 2 +- .../java/org/eclipse/jetty/http2/hpack/HpackEncoderTest.java | 2 +- .../java/org/eclipse/jetty/http2/hpack/HpackPerfTest.java | 2 +- .../test/java/org/eclipse/jetty/http2/hpack/HpackTest.java | 2 +- .../test/java/org/eclipse/jetty/http2/hpack/HuffmanTest.java | 2 +- .../java/org/eclipse/jetty/http2/hpack/NBitIntegerTest.java | 2 +- .../eclipse/jetty/http2/client/http/HttpChannelOverHTTP2.java | 2 +- .../jetty/http2/client/http/HttpClientTransportOverHTTP2.java | 2 +- .../jetty/http2/client/http/HttpConnectionOverHTTP2.java | 2 +- .../jetty/http2/client/http/HttpDestinationOverHTTP2.java | 2 +- .../jetty/http2/client/http/HttpReceiverOverHTTP2.java | 2 +- .../eclipse/jetty/http2/client/http/HttpSenderOverHTTP2.java | 2 +- .../org/eclipse/jetty/http2/client/http/AbstractTest.java | 2 +- .../jetty/http2/client/http/DirectHTTP2OverTLSTest.java | 2 +- .../eclipse/jetty/http2/client/http/EmptyServerHandler.java | 2 +- .../http2/client/http/HttpClientTransportOverHTTP2Test.java | 2 +- .../jetty/http2/client/http/MaxConcurrentStreamsTest.java | 2 +- .../eclipse/jetty/http2/client/http/PushedResourcesTest.java | 2 +- .../http2/server/AbstractHTTP2ServerConnectionFactory.java | 2 +- .../jetty/http2/server/HTTP2CServerConnectionFactory.java | 2 +- .../org/eclipse/jetty/http2/server/HTTP2ServerConnection.java | 2 +- .../jetty/http2/server/HTTP2ServerConnectionFactory.java | 2 +- .../org/eclipse/jetty/http2/server/HTTP2ServerSession.java | 2 +- .../org/eclipse/jetty/http2/server/HttpChannelOverHTTP2.java | 2 +- .../eclipse/jetty/http2/server/HttpTransportOverHTTP2.java | 2 +- .../jetty/http2/server/RawHTTP2ServerConnectionFactory.java | 2 +- .../org/eclipse/jetty/http2/server/AbstractServerTest.java | 2 +- .../test/java/org/eclipse/jetty/http2/server/CloseTest.java | 2 +- .../java/org/eclipse/jetty/http2/server/H2SpecServer.java | 2 +- .../java/org/eclipse/jetty/http2/server/HTTP2CServer.java | 2 +- .../java/org/eclipse/jetty/http2/server/HTTP2CServerTest.java | 2 +- .../java/org/eclipse/jetty/http2/server/HTTP2ServerTest.java | 2 +- .../session/infinispan/InfinispanSessionDataStoreFactory.java | 2 +- .../session/infinispan/InfinispanSessionLegacyConverter.java | 2 +- .../jetty/session/infinispan/SessionDataMarshaller.java | 2 +- .../eclipse/jetty/session/infinispan/WebAppMarshaller.java | 2 +- .../main/java/org/eclipse/jetty/io/AbstractConnection.java | 2 +- .../src/main/java/org/eclipse/jetty/io/AbstractEndPoint.java | 2 +- .../main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java | 2 +- .../src/main/java/org/eclipse/jetty/io/ByteArrayEndPoint.java | 2 +- .../src/main/java/org/eclipse/jetty/io/ByteBufferPool.java | 2 +- .../src/main/java/org/eclipse/jetty/io/ChannelEndPoint.java | 2 +- .../java/org/eclipse/jetty/io/ClientConnectionFactory.java | 2 +- jetty-io/src/main/java/org/eclipse/jetty/io/Connection.java | 2 +- .../main/java/org/eclipse/jetty/io/ConnectionStatistics.java | 2 +- .../src/main/java/org/eclipse/jetty/io/CyclicTimeout.java | 2 +- jetty-io/src/main/java/org/eclipse/jetty/io/EndPoint.java | 2 +- jetty-io/src/main/java/org/eclipse/jetty/io/EofException.java | 2 +- jetty-io/src/main/java/org/eclipse/jetty/io/FillInterest.java | 2 +- jetty-io/src/main/java/org/eclipse/jetty/io/IdleTimeout.java | 2 +- .../java/org/eclipse/jetty/io/LeakTrackingByteBufferPool.java | 2 +- .../src/main/java/org/eclipse/jetty/io/ManagedSelector.java | 2 +- .../main/java/org/eclipse/jetty/io/MappedByteBufferPool.java | 2 +- .../org/eclipse/jetty/io/NegotiatingClientConnection.java | 2 +- .../eclipse/jetty/io/NegotiatingClientConnectionFactory.java | 2 +- .../java/org/eclipse/jetty/io/NetworkTrafficListener.java | 2 +- .../eclipse/jetty/io/NetworkTrafficSelectChannelEndPoint.java | 2 +- .../src/main/java/org/eclipse/jetty/io/QuietException.java | 2 +- .../main/java/org/eclipse/jetty/io/RetainableByteBuffer.java | 2 +- .../main/java/org/eclipse/jetty/io/RuntimeIOException.java | 2 +- .../main/java/org/eclipse/jetty/io/SelectChannelEndPoint.java | 2 +- .../src/main/java/org/eclipse/jetty/io/SelectorManager.java | 2 +- .../main/java/org/eclipse/jetty/io/SocketChannelEndPoint.java | 2 +- jetty-io/src/main/java/org/eclipse/jetty/io/WriteFlusher.java | 2 +- .../main/java/org/eclipse/jetty/io/WriterOutputStream.java | 2 +- jetty-io/src/main/java/org/eclipse/jetty/io/package-info.java | 2 +- .../src/main/java/org/eclipse/jetty/io/ssl/ALPNProcessor.java | 2 +- .../org/eclipse/jetty/io/ssl/SslClientConnectionFactory.java | 2 +- .../src/main/java/org/eclipse/jetty/io/ssl/SslConnection.java | 2 +- .../java/org/eclipse/jetty/io/ssl/SslHandshakeListener.java | 2 +- .../src/main/java/org/eclipse/jetty/io/ssl/package-info.java | 2 +- .../java/org/eclipse/jetty/io/ArrayByteBufferPoolTest.java | 2 +- .../test/java/org/eclipse/jetty/io/ByteArrayEndPointTest.java | 2 +- .../src/test/java/org/eclipse/jetty/io/CyclicTimeoutTest.java | 2 +- jetty-io/src/test/java/org/eclipse/jetty/io/IOTest.java | 2 +- .../src/test/java/org/eclipse/jetty/io/IdleTimeoutTest.java | 2 +- .../java/org/eclipse/jetty/io/MappedByteBufferPoolTest.java | 2 +- jetty-io/src/test/java/org/eclipse/jetty/io/NIOTest.java | 2 +- .../test/java/org/eclipse/jetty/io/SelectorManagerTest.java | 2 +- .../eclipse/jetty/io/SocketChannelEndPointInterestsTest.java | 2 +- .../eclipse/jetty/io/SocketChannelEndPointOpenCloseTest.java | 2 +- .../java/org/eclipse/jetty/io/SocketChannelEndPointTest.java | 2 +- .../src/test/java/org/eclipse/jetty/io/SslConnectionTest.java | 2 +- .../test/java/org/eclipse/jetty/io/SslEngineBehaviorTest.java | 2 +- .../src/test/java/org/eclipse/jetty/io/WriteFlusherTest.java | 2 +- .../src/main/java/org/eclipse/jetty/jaas/JAASGroup.java | 2 +- .../main/java/org/eclipse/jetty/jaas/JAASLoginService.java | 2 +- .../src/main/java/org/eclipse/jetty/jaas/JAASPrincipal.java | 2 +- jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASRole.java | 2 +- .../main/java/org/eclipse/jetty/jaas/JAASUserPrincipal.java | 2 +- .../src/main/java/org/eclipse/jetty/jaas/RoleCheckPolicy.java | 2 +- .../java/org/eclipse/jetty/jaas/StrictRoleCheckPolicy.java | 2 +- .../eclipse/jetty/jaas/callback/AbstractCallbackHandler.java | 2 +- .../eclipse/jetty/jaas/callback/DefaultCallbackHandler.java | 2 +- .../java/org/eclipse/jetty/jaas/callback/ObjectCallback.java | 2 +- .../eclipse/jetty/jaas/callback/RequestParameterCallback.java | 2 +- .../eclipse/jetty/jaas/callback/ServletRequestCallback.java | 2 +- .../java/org/eclipse/jetty/jaas/callback/package-info.java | 2 +- .../src/main/java/org/eclipse/jetty/jaas/package-info.java | 2 +- .../eclipse/jetty/jaas/spi/AbstractDatabaseLoginModule.java | 2 +- .../java/org/eclipse/jetty/jaas/spi/AbstractLoginModule.java | 2 +- .../org/eclipse/jetty/jaas/spi/DataSourceLoginModule.java | 2 +- .../main/java/org/eclipse/jetty/jaas/spi/JDBCLoginModule.java | 2 +- .../main/java/org/eclipse/jetty/jaas/spi/LdapLoginModule.java | 2 +- .../org/eclipse/jetty/jaas/spi/PropertyFileLoginModule.java | 2 +- .../src/main/java/org/eclipse/jetty/jaas/spi/UserInfo.java | 2 +- .../main/java/org/eclipse/jetty/jaas/spi/package-info.java | 2 +- .../java/org/eclipse/jetty/jaas/JAASLdapLoginServiceTest.java | 2 +- .../java/org/eclipse/jetty/jaas/JAASLoginServiceTest.java | 2 +- .../src/test/java/org/eclipse/jetty/jaas/TestLoginModule.java | 4 ++-- .../org/eclipse/jetty/security/jaspi/JaspiAuthenticator.java | 2 +- .../jetty/security/jaspi/JaspiAuthenticatorFactory.java | 2 +- .../org/eclipse/jetty/security/jaspi/JaspiMessageInfo.java | 2 +- .../eclipse/jetty/security/jaspi/ServletCallbackHandler.java | 2 +- .../org/eclipse/jetty/security/jaspi/SimpleAuthConfig.java | 2 +- .../security/jaspi/callback/CredentialValidationCallback.java | 2 +- .../eclipse/jetty/security/jaspi/callback/package-info.java | 2 +- .../eclipse/jetty/security/jaspi/modules/BaseAuthModule.java | 2 +- .../eclipse/jetty/security/jaspi/modules/BasicAuthModule.java | 2 +- .../jetty/security/jaspi/modules/ClientCertAuthModule.java | 2 +- .../jetty/security/jaspi/modules/DigestAuthModule.java | 2 +- .../eclipse/jetty/security/jaspi/modules/FormAuthModule.java | 2 +- .../org/eclipse/jetty/security/jaspi/modules/UserInfo.java | 2 +- .../eclipse/jetty/security/jaspi/modules/package-info.java | 2 +- .../java/org/eclipse/jetty/security/jaspi/package-info.java | 2 +- .../eclipse/jetty/security/jaspi/HttpHeaderAuthModule.java | 2 +- .../test/java/org/eclipse/jetty/security/jaspi/JaspiTest.java | 2 +- .../java/org/eclipse/jetty/http/jmh/MultiPartBenchmark.java | 2 +- .../java/org/eclipse/jetty/io/jmh/ByteBufferBenchmark.java | 2 +- .../org/eclipse/jetty/requestlog/jmh/RequestLogBenchmark.java | 2 +- .../org/eclipse/jetty/server/jmh/DeflaterPoolBenchmark.java | 2 +- .../java/org/eclipse/jetty/util/jmh/DateCacheBenchmark.java | 4 ++-- .../main/java/org/eclipse/jetty/util/jmh/DateCacheNoTick.java | 2 +- .../org/eclipse/jetty/util/jmh/DateCacheNoTickBenchmark.java | 4 ++-- .../org/eclipse/jetty/util/jmh/DateCacheSimpleDateFormat.java | 2 +- .../jetty/util/jmh/DateCacheSimpleDateFormatBenchmark.java | 4 ++-- .../eclipse/jetty/util/thread/jmh/ThreadPoolBenchmark.java | 4 ++-- .../eclipse/jetty/util/thread/strategy/jmh/EWYKBenchmark.java | 2 +- .../jetty/util/thread/strategy/jmh/TestConnection.java | 2 +- .../eclipse/jetty/util/thread/strategy/jmh/TestServer.java | 2 +- .../src/main/java/org/eclipse/jetty/jmx/ConnectorServer.java | 2 +- .../src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java | 2 +- jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java | 2 +- .../src/main/java/org/eclipse/jetty/jmx/ObjectMBean.java | 2 +- .../src/main/java/org/eclipse/jetty/jmx/package-info.java | 2 +- .../main/java/org/eclipse/jetty/util/log/jmx/LogMBean.java | 2 +- .../java/org/eclipse/jetty/util/log/jmx/package-info.java | 2 +- jetty-jmx/src/test/java/com/acme/Base.java | 2 +- jetty-jmx/src/test/java/com/acme/Derived.java | 2 +- jetty-jmx/src/test/java/com/acme/DerivedExtended.java | 2 +- jetty-jmx/src/test/java/com/acme/DerivedManaged.java | 2 +- jetty-jmx/src/test/java/com/acme/Managed.java | 2 +- jetty-jmx/src/test/java/com/acme/Signature.java | 2 +- jetty-jmx/src/test/java/com/acme/SuperManaged.java | 2 +- jetty-jmx/src/test/java/com/acme/jmx/DerivedMBean.java | 2 +- jetty-jmx/src/test/java/com/acme/jmx/ManagedMBean.java | 2 +- .../test/java/org/eclipse/jetty/jmx/ConnectorServerTest.java | 2 +- .../org/eclipse/jetty/jmx/MBeanContainerLifeCycleTest.java | 2 +- .../test/java/org/eclipse/jetty/jmx/MBeanContainerTest.java | 2 +- .../src/test/java/org/eclipse/jetty/jmx/ObjectMBeanTest.java | 2 +- .../test/java/org/eclipse/jetty/jmx/ObjectMBeanUtilTest.java | 2 +- jetty-jmx/src/test/java/org/eclipse/jetty/jmx/PojoTest.java | 2 +- .../java/org/eclipse/jetty/util/log/jmx/LogMBeanTest.java | 2 +- .../main/java/org/eclipse/jetty/jndi/BindingEnumeration.java | 2 +- .../src/main/java/org/eclipse/jetty/jndi/ContextFactory.java | 2 +- .../main/java/org/eclipse/jetty/jndi/DataSourceCloser.java | 2 +- .../java/org/eclipse/jetty/jndi/InitialContextFactory.java | 2 +- .../src/main/java/org/eclipse/jetty/jndi/NameEnumeration.java | 2 +- .../src/main/java/org/eclipse/jetty/jndi/NamingContext.java | 2 +- .../src/main/java/org/eclipse/jetty/jndi/NamingUtil.java | 2 +- .../eclipse/jetty/jndi/factories/MailSessionReference.java | 2 +- .../java/org/eclipse/jetty/jndi/factories/package-info.java | 2 +- .../main/java/org/eclipse/jetty/jndi/java/javaNameParser.java | 2 +- .../java/org/eclipse/jetty/jndi/java/javaRootURLContext.java | 2 +- .../org/eclipse/jetty/jndi/java/javaURLContextFactory.java | 2 +- .../main/java/org/eclipse/jetty/jndi/java/package-info.java | 2 +- .../java/org/eclipse/jetty/jndi/local/localContextRoot.java | 2 +- .../main/java/org/eclipse/jetty/jndi/local/package-info.java | 2 +- .../src/main/java/org/eclipse/jetty/jndi/package-info.java | 2 +- .../jetty/jndi/factories/TestMailSessionReference.java | 2 +- .../src/test/java/org/eclipse/jetty/jndi/java/TestJNDI.java | 2 +- .../test/java/org/eclipse/jetty/jndi/java/TestLocalJNDI.java | 2 +- .../src/main/java/org/eclipse/jetty/jspc/plugin/JspcMojo.java | 2 +- .../main/java/org/eclipse/jetty/jspc/plugin/package-info.java | 2 +- .../src/it/javax-annotation-api/src/main/java/test/App.java | 2 +- .../it/jetty-cdi-run-forked/src/main/java/test/Greeter.java | 2 +- .../api/src/main/java/test/Api.java | 4 ++-- .../java/test/ClassLoadingTestingServletContextListener.java | 4 ++-- .../jetty/its/jetty_run_distro_mojo_it/HelloServlet.java | 2 +- .../jetty/its/jetty_run_distro_mojo_it/PingServlet.java | 2 +- .../jetty/its/jetty_run_forked_mojo_it/HelloServlet.java | 2 +- .../jetty/its/jetty_run_forked_mojo_it/PingServlet.java | 2 +- .../org/eclipse/jetty/its/jetty_run_mojo_it/HelloServlet.java | 2 +- .../org/eclipse/jetty/its/jetty_run_mojo_it/PingServlet.java | 2 +- .../its/jetty_run_war_exploded_mojo_it/HelloServlet.java | 2 +- .../jetty/its/jetty_run_war_exploded_mojo_it/PingServlet.java | 2 +- .../org/eclipse/jetty/its/jetty_run_mojo_it/HelloServlet.java | 2 +- .../org/eclipse/jetty/its/jetty_run_mojo_it/PingServlet.java | 2 +- .../eclipse/jetty/its/jetty_start_mojo_it/HelloServlet.java | 2 +- .../eclipse/jetty/its/jetty_start_mojo_it/PingServlet.java | 2 +- .../beer-client/src/main/java/org/olamy/App.java | 2 +- .../src/main/java/org/olamy/GreetingServiceImpl.java | 2 +- .../beer-shared/src/main/java/org/olamy/FieldVerifier.java | 2 +- .../beer-shared/src/main/java/org/olamy/GreetingResponse.java | 2 +- .../beer-shared/src/main/java/org/olamy/GreetingService.java | 2 +- .../src/main/java/org/olamy/GreetingServiceAsync.java | 2 +- .../org/eclipse/jetty/maven/plugin/AbstractJettyMojo.java | 2 +- .../java/org/eclipse/jetty/maven/plugin/ConsoleScanner.java | 2 +- .../java/org/eclipse/jetty/maven/plugin/JettyDeployWar.java | 2 +- .../org/eclipse/jetty/maven/plugin/JettyEffectiveWebXml.java | 2 +- .../java/org/eclipse/jetty/maven/plugin/JettyRunDistro.java | 2 +- .../org/eclipse/jetty/maven/plugin/JettyRunForkedMojo.java | 2 +- .../java/org/eclipse/jetty/maven/plugin/JettyRunMojo.java | 2 +- .../eclipse/jetty/maven/plugin/JettyRunWarExplodedMojo.java | 2 +- .../java/org/eclipse/jetty/maven/plugin/JettyRunWarMojo.java | 2 +- .../java/org/eclipse/jetty/maven/plugin/JettyStartMojo.java | 2 +- .../java/org/eclipse/jetty/maven/plugin/JettyStopMojo.java | 2 +- .../org/eclipse/jetty/maven/plugin/JettyWebAppContext.java | 2 +- .../jetty/maven/plugin/MavenQuickStartConfiguration.java | 2 +- .../org/eclipse/jetty/maven/plugin/MavenServerConnector.java | 2 +- .../eclipse/jetty/maven/plugin/MavenWebInfConfiguration.java | 2 +- .../src/main/java/org/eclipse/jetty/maven/plugin/Overlay.java | 2 +- .../java/org/eclipse/jetty/maven/plugin/OverlayConfig.java | 2 +- .../main/java/org/eclipse/jetty/maven/plugin/PluginLog.java | 2 +- .../main/java/org/eclipse/jetty/maven/plugin/ScanPattern.java | 2 +- .../org/eclipse/jetty/maven/plugin/ScanTargetPattern.java | 2 +- .../org/eclipse/jetty/maven/plugin/SelectiveJarResource.java | 2 +- .../eclipse/jetty/maven/plugin/ServerConnectorListener.java | 2 +- .../java/org/eclipse/jetty/maven/plugin/ServerListener.java | 2 +- .../java/org/eclipse/jetty/maven/plugin/ServerSupport.java | 2 +- .../src/main/java/org/eclipse/jetty/maven/plugin/Starter.java | 2 +- .../java/org/eclipse/jetty/maven/plugin/SystemProperties.java | 2 +- .../java/org/eclipse/jetty/maven/plugin/SystemProperty.java | 2 +- .../java/org/eclipse/jetty/maven/plugin/WarPluginInfo.java | 2 +- .../eclipse/jetty/maven/plugin/WebAppPropertyConverter.java | 2 +- .../java/org/eclipse/jetty/maven/plugin/package-info.java | 2 +- .../org/eclipse/jetty/maven/plugin/it/TestGetContent.java | 2 +- .../jetty/memcached/session/MemcachedSessionDataMap.java | 2 +- .../memcached/session/MemcachedSessionDataMapFactory.java | 2 +- .../jetty/memcached/session/TestMemcachedSessions.java | 2 +- .../java/org/eclipse/jetty/nosql/NoSqlSessionDataStore.java | 2 +- .../eclipse/jetty/nosql/mongodb/MongoSessionDataStore.java | 2 +- .../jetty/nosql/mongodb/MongoSessionDataStoreFactory.java | 2 +- .../main/java/org/eclipse/jetty/nosql/mongodb/MongoUtils.java | 2 +- .../java/org/eclipse/jetty/nosql/mongodb/package-info.java | 2 +- .../src/main/java/org/eclipse/jetty/nosql/package-info.java | 2 +- .../jetty/osgi/boot/jasper/ContainerTldBundleDiscoverer.java | 2 +- .../eclipse/jetty/osgi/boot/jasper/JSTLBundleDiscoverer.java | 2 +- .../org/eclipse/jetty/osgi/boot/jsp/FragmentActivator.java | 2 +- .../org/eclipse/jetty/osgi/boot/warurl/WarUrlActivator.java | 2 +- .../eclipse/jetty/osgi/boot/warurl/WarUrlStreamHandler.java | 2 +- .../osgi/boot/warurl/internal/WarBundleManifestGenerator.java | 2 +- .../jetty/osgi/boot/warurl/internal/WarURLConnection.java | 2 +- .../jetty/osgi/annotations/AnnotationConfiguration.java | 2 +- .../org/eclipse/jetty/osgi/annotations/AnnotationParser.java | 2 +- .../org/eclipse/jetty/osgi/boot/AbstractContextProvider.java | 2 +- .../java/org/eclipse/jetty/osgi/boot/AbstractOSGiApp.java | 2 +- .../org/eclipse/jetty/osgi/boot/AbstractWebAppProvider.java | 2 +- .../org/eclipse/jetty/osgi/boot/BundleContextProvider.java | 2 +- .../main/java/org/eclipse/jetty/osgi/boot/BundleProvider.java | 2 +- .../org/eclipse/jetty/osgi/boot/BundleWebAppProvider.java | 2 +- .../org/eclipse/jetty/osgi/boot/JettyBootstrapActivator.java | 2 +- .../main/java/org/eclipse/jetty/osgi/boot/OSGiDeployer.java | 2 +- .../java/org/eclipse/jetty/osgi/boot/OSGiServerConstants.java | 2 +- .../main/java/org/eclipse/jetty/osgi/boot/OSGiUndeployer.java | 2 +- .../org/eclipse/jetty/osgi/boot/OSGiWebInfConfiguration.java | 2 +- .../java/org/eclipse/jetty/osgi/boot/OSGiWebappConstants.java | 2 +- .../org/eclipse/jetty/osgi/boot/ServiceContextProvider.java | 2 +- .../java/org/eclipse/jetty/osgi/boot/ServiceProvider.java | 2 +- .../org/eclipse/jetty/osgi/boot/ServiceWebAppProvider.java | 2 +- .../internal/serverfactory/DefaultJettyAtJettyHomeHelper.java | 2 +- .../internal/serverfactory/JettyServerServiceTracker.java | 2 +- .../boot/internal/serverfactory/ServerInstanceWrapper.java | 2 +- .../osgi/boot/internal/webapp/LibExtClassLoaderHelper.java | 2 +- .../osgi/boot/internal/webapp/OSGiWebappClassLoader.java | 2 +- .../jetty/osgi/boot/utils/BundleClassLoaderHelper.java | 2 +- .../jetty/osgi/boot/utils/BundleClassLoaderHelperFactory.java | 2 +- .../jetty/osgi/boot/utils/BundleFileLocatorHelper.java | 2 +- .../jetty/osgi/boot/utils/BundleFileLocatorHelperFactory.java | 2 +- .../java/org/eclipse/jetty/osgi/boot/utils/EventSender.java | 2 +- .../org/eclipse/jetty/osgi/boot/utils/FakeURLClassLoader.java | 2 +- .../org/eclipse/jetty/osgi/boot/utils/OSGiClassLoader.java | 2 +- .../jetty/osgi/boot/utils/ServerConnectorListener.java | 2 +- .../eclipse/jetty/osgi/boot/utils/TldBundleDiscoverer.java | 2 +- .../src/main/java/org/eclipse/jetty/osgi/boot/utils/Util.java | 2 +- .../boot/utils/internal/DefaultBundleClassLoaderHelper.java | 2 +- .../osgi/boot/utils/internal/DefaultFileLocatorHelper.java | 2 +- .../osgi/boot/utils/internal/PackageAdminServiceTracker.java | 2 +- .../jetty/osgi/httpservice/HttpServiceErrorHandlerHelper.java | 2 +- .../osgi/httpservice/HttpServiceErrorPageErrorHandler.java | 2 +- .../src/main/java/com/acme/osgi/Activator.java | 2 +- .../src/main/java/com/acme/osgi/Activator.java | 2 +- .../src/main/java/com/acme/osgi/Activator.java | 2 +- .../java/org/eclipse/jetty/osgi/test/SimpleEchoSocket.java | 2 +- .../org/eclipse/jetty/osgi/test/SimpleJavaxWebSocket.java | 2 +- .../jetty/osgi/test/TestJettyOSGiBootContextAsService.java | 2 +- .../org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2.java | 2 +- .../jetty/osgi/test/TestJettyOSGiBootHTTP2Conscrypt.java | 2 +- .../eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2JDK9.java | 2 +- .../jetty/osgi/test/TestJettyOSGiBootWebAppAsService.java | 2 +- .../jetty/osgi/test/TestJettyOSGiBootWithAnnotations.java | 2 +- .../jetty/osgi/test/TestJettyOSGiBootWithJavaxWebSocket.java | 2 +- .../org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithJsp.java | 2 +- .../jetty/osgi/test/TestJettyOSGiBootWithWebSocket.java | 2 +- .../test/java/org/eclipse/jetty/osgi/test/TestOSGiUtil.java | 2 +- .../java/org/eclipse/jetty/overlays/OverlayedAppProvider.java | 2 +- .../main/java/org/eclipse/jetty/overlays/TemplateContext.java | 2 +- .../main/java/org/eclipse/jetty/overlays/package-info.java | 2 +- .../test/java/org/eclipse/jetty/overlays/OverlayServer.java | 2 +- .../org/eclipse/jetty/overlays/OverlayedAppProviderTest.java | 2 +- .../eclipse/jetty/plus/annotation/ContainerInitializer.java | 2 +- .../java/org/eclipse/jetty/plus/annotation/Injection.java | 2 +- .../eclipse/jetty/plus/annotation/InjectionCollection.java | 2 +- .../org/eclipse/jetty/plus/annotation/LifeCycleCallback.java | 2 +- .../jetty/plus/annotation/LifeCycleCallbackCollection.java | 2 +- .../eclipse/jetty/plus/annotation/PostConstructCallback.java | 2 +- .../org/eclipse/jetty/plus/annotation/PreDestroyCallback.java | 2 +- .../main/java/org/eclipse/jetty/plus/annotation/RunAs.java | 2 +- .../org/eclipse/jetty/plus/annotation/RunAsCollection.java | 2 +- .../java/org/eclipse/jetty/plus/annotation/package-info.java | 2 +- .../src/main/java/org/eclipse/jetty/plus/jndi/EnvEntry.java | 2 +- .../src/main/java/org/eclipse/jetty/plus/jndi/Link.java | 2 +- .../main/java/org/eclipse/jetty/plus/jndi/NamingEntry.java | 2 +- .../java/org/eclipse/jetty/plus/jndi/NamingEntryUtil.java | 2 +- .../src/main/java/org/eclipse/jetty/plus/jndi/Resource.java | 2 +- .../main/java/org/eclipse/jetty/plus/jndi/Transaction.java | 2 +- .../main/java/org/eclipse/jetty/plus/jndi/package-info.java | 2 +- .../eclipse/jetty/plus/security/DataSourceLoginService.java | 2 +- .../java/org/eclipse/jetty/plus/security/package-info.java | 2 +- .../java/org/eclipse/jetty/plus/webapp/EnvConfiguration.java | 2 +- .../java/org/eclipse/jetty/plus/webapp/PlusConfiguration.java | 2 +- .../java/org/eclipse/jetty/plus/webapp/PlusDecorator.java | 2 +- .../eclipse/jetty/plus/webapp/PlusDescriptorProcessor.java | 2 +- .../main/java/org/eclipse/jetty/plus/webapp/package-info.java | 2 +- .../java/org/eclipse/jetty/plus/jndi/TestNamingEntries.java | 2 +- .../java/org/eclipse/jetty/plus/jndi/TestNamingEntryUtil.java | 2 +- .../jetty/plus/webapp/PlusDescriptorProcessorTest.java | 2 +- .../java/org/eclipse/jetty/plus/webapp/TestConfiguration.java | 2 +- .../java/org/eclipse/jetty/proxy/AbstractProxyServlet.java | 2 +- .../java/org/eclipse/jetty/proxy/AfterContentTransformer.java | 2 +- .../java/org/eclipse/jetty/proxy/AsyncMiddleManServlet.java | 2 +- .../main/java/org/eclipse/jetty/proxy/AsyncProxyServlet.java | 2 +- .../main/java/org/eclipse/jetty/proxy/BalancerServlet.java | 2 +- .../src/main/java/org/eclipse/jetty/proxy/ConnectHandler.java | 2 +- .../main/java/org/eclipse/jetty/proxy/ProxyConnection.java | 2 +- .../src/main/java/org/eclipse/jetty/proxy/ProxyServlet.java | 2 +- .../src/main/java/org/eclipse/jetty/proxy/package-info.java | 2 +- .../org/eclipse/jetty/proxy/AbstractConnectHandlerTest.java | 2 +- .../org/eclipse/jetty/proxy/AsyncMiddleManServletTest.java | 2 +- .../java/org/eclipse/jetty/proxy/BalancerServletTest.java | 2 +- .../java/org/eclipse/jetty/proxy/CachingProxyServlet.java | 2 +- .../java/org/eclipse/jetty/proxy/ConnectHandlerSSLTest.java | 2 +- .../test/java/org/eclipse/jetty/proxy/ConnectHandlerTest.java | 2 +- .../test/java/org/eclipse/jetty/proxy/EchoHttpServlet.java | 2 +- .../test/java/org/eclipse/jetty/proxy/EmptyHttpServlet.java | 2 +- .../java/org/eclipse/jetty/proxy/ForwardProxyServerTest.java | 2 +- .../org/eclipse/jetty/proxy/ForwardProxyTLSServerTest.java | 2 +- .../src/test/java/org/eclipse/jetty/proxy/ProxyServer.java | 2 +- .../java/org/eclipse/jetty/proxy/ProxyServletFailureTest.java | 2 +- .../java/org/eclipse/jetty/proxy/ProxyServletLoadTest.java | 2 +- .../test/java/org/eclipse/jetty/proxy/ProxyServletTest.java | 2 +- .../test/java/org/eclipse/jetty/proxy/ReverseProxyTest.java | 2 +- .../org/eclipse/jetty/quickstart/AttributeNormalizer.java | 2 +- .../jetty/quickstart/PreconfigureDescriptorProcessor.java | 2 +- .../eclipse/jetty/quickstart/PreconfigureQuickStartWar.java | 2 +- .../org/eclipse/jetty/quickstart/QuickStartConfiguration.java | 2 +- .../jetty/quickstart/QuickStartDescriptorGenerator.java | 2 +- .../jetty/quickstart/QuickStartDescriptorProcessor.java | 2 +- .../java/org/eclipse/jetty/quickstart/QuickStartWebApp.java | 2 +- .../java/org/eclipse/jetty/quickstart/FooContextListener.java | 4 ++-- .../test/java/org/eclipse/jetty/quickstart/FooServlet.java | 4 ++-- .../java/org/eclipse/jetty/quickstart/TestQuickStart.java | 2 +- .../java/org/eclipse/jetty/rewrite/RewriteCustomizer.java | 2 +- .../org/eclipse/jetty/rewrite/handler/CompactPathRule.java | 2 +- .../org/eclipse/jetty/rewrite/handler/CookiePatternRule.java | 2 +- .../jetty/rewrite/handler/ForwardedSchemeHeaderRule.java | 2 +- .../org/eclipse/jetty/rewrite/handler/HeaderPatternRule.java | 2 +- .../org/eclipse/jetty/rewrite/handler/HeaderRegexRule.java | 2 +- .../java/org/eclipse/jetty/rewrite/handler/HeaderRule.java | 2 +- .../java/org/eclipse/jetty/rewrite/handler/MsieSslRule.java | 2 +- .../java/org/eclipse/jetty/rewrite/handler/PatternRule.java | 2 +- .../eclipse/jetty/rewrite/handler/RedirectPatternRule.java | 2 +- .../org/eclipse/jetty/rewrite/handler/RedirectRegexRule.java | 2 +- .../java/org/eclipse/jetty/rewrite/handler/RedirectUtil.java | 2 +- .../java/org/eclipse/jetty/rewrite/handler/RegexRule.java | 2 +- .../eclipse/jetty/rewrite/handler/ResponsePatternRule.java | 2 +- .../org/eclipse/jetty/rewrite/handler/RewriteHandler.java | 2 +- .../org/eclipse/jetty/rewrite/handler/RewritePatternRule.java | 2 +- .../org/eclipse/jetty/rewrite/handler/RewriteRegexRule.java | 2 +- .../src/main/java/org/eclipse/jetty/rewrite/handler/Rule.java | 2 +- .../java/org/eclipse/jetty/rewrite/handler/RuleContainer.java | 2 +- .../eclipse/jetty/rewrite/handler/TerminatingPatternRule.java | 4 ++-- .../eclipse/jetty/rewrite/handler/TerminatingRegexRule.java | 4 ++-- .../java/org/eclipse/jetty/rewrite/handler/ValidUrlRule.java | 2 +- .../jetty/rewrite/handler/VirtualHostRuleContainer.java | 2 +- .../java/org/eclipse/jetty/rewrite/handler/package-info.java | 2 +- .../eclipse/jetty/rewrite/handler/AbstractRuleTestCase.java | 2 +- .../eclipse/jetty/rewrite/handler/CookiePatternRuleTest.java | 2 +- .../jetty/rewrite/handler/ForwardedSchemeHeaderRuleTest.java | 2 +- .../eclipse/jetty/rewrite/handler/HeaderPatternRuleTest.java | 2 +- .../eclipse/jetty/rewrite/handler/HeaderRegexRuleTest.java | 2 +- .../org/eclipse/jetty/rewrite/handler/MsieSslRuleTest.java | 2 +- .../org/eclipse/jetty/rewrite/handler/PatternRuleTest.java | 2 +- .../jetty/rewrite/handler/RedirectPatternRuleTest.java | 2 +- .../eclipse/jetty/rewrite/handler/RedirectRegexRuleTest.java | 2 +- .../java/org/eclipse/jetty/rewrite/handler/RegexRuleTest.java | 2 +- .../jetty/rewrite/handler/ResponsePatternRuleTest.java | 2 +- .../org/eclipse/jetty/rewrite/handler/RewriteHandlerTest.java | 2 +- .../eclipse/jetty/rewrite/handler/RewritePatternRuleTest.java | 2 +- .../eclipse/jetty/rewrite/handler/RewriteRegexRuleTest.java | 2 +- .../jetty/rewrite/handler/TerminatingPatternRuleTest.java | 2 +- .../jetty/rewrite/handler/TerminatingRegexRuleTest.java | 2 +- .../org/eclipse/jetty/rewrite/handler/ValidUrlRuleTest.java | 2 +- .../jetty/rewrite/handler/VirtualHostRuleContainerTest.java | 2 +- .../src/main/java/org/eclipse/jetty/runner/Runner.java | 2 +- .../src/main/java/org/eclipse/jetty/runner/package-info.java | 2 +- .../java/org/eclipse/jetty/security/AbstractLoginService.java | 2 +- .../eclipse/jetty/security/AbstractUserAuthentication.java | 2 +- .../main/java/org/eclipse/jetty/security/Authenticator.java | 2 +- .../jetty/security/ConfigurableSpnegoLoginService.java | 2 +- .../main/java/org/eclipse/jetty/security/ConstraintAware.java | 2 +- .../java/org/eclipse/jetty/security/ConstraintMapping.java | 2 +- .../org/eclipse/jetty/security/ConstraintSecurityHandler.java | 2 +- .../eclipse/jetty/security/DefaultAuthenticatorFactory.java | 2 +- .../org/eclipse/jetty/security/DefaultIdentityService.java | 2 +- .../java/org/eclipse/jetty/security/DefaultUserIdentity.java | 2 +- .../java/org/eclipse/jetty/security/HashLoginService.java | 2 +- .../main/java/org/eclipse/jetty/security/IdentityService.java | 2 +- .../java/org/eclipse/jetty/security/JDBCLoginService.java | 2 +- .../main/java/org/eclipse/jetty/security/LoginService.java | 2 +- .../java/org/eclipse/jetty/security/PropertyUserStore.java | 2 +- .../src/main/java/org/eclipse/jetty/security/RoleInfo.java | 2 +- .../main/java/org/eclipse/jetty/security/RoleRunAsToken.java | 2 +- .../src/main/java/org/eclipse/jetty/security/RunAsToken.java | 2 +- .../main/java/org/eclipse/jetty/security/SecurityHandler.java | 2 +- .../java/org/eclipse/jetty/security/ServerAuthException.java | 2 +- .../java/org/eclipse/jetty/security/SpnegoLoginService.java | 2 +- .../java/org/eclipse/jetty/security/SpnegoUserIdentity.java | 2 +- .../java/org/eclipse/jetty/security/SpnegoUserPrincipal.java | 2 +- .../java/org/eclipse/jetty/security/UserAuthentication.java | 2 +- .../java/org/eclipse/jetty/security/UserDataConstraint.java | 2 +- .../src/main/java/org/eclipse/jetty/security/UserStore.java | 2 +- .../jetty/security/authentication/AuthorizationService.java | 2 +- .../jetty/security/authentication/BasicAuthenticator.java | 2 +- .../security/authentication/ClientCertAuthenticator.java | 2 +- .../authentication/ConfigurableSpnegoAuthenticator.java | 2 +- .../jetty/security/authentication/DeferredAuthentication.java | 2 +- .../jetty/security/authentication/DigestAuthenticator.java | 2 +- .../jetty/security/authentication/FormAuthenticator.java | 2 +- .../jetty/security/authentication/LoginAuthenticator.java | 2 +- .../eclipse/jetty/security/authentication/LoginCallback.java | 2 +- .../jetty/security/authentication/LoginCallbackImpl.java | 2 +- .../jetty/security/authentication/SessionAuthentication.java | 2 +- .../jetty/security/authentication/SpnegoAuthenticator.java | 2 +- .../eclipse/jetty/security/authentication/package-info.java | 2 +- .../main/java/org/eclipse/jetty/security/package-info.java | 2 +- .../org/eclipse/jetty/security/AliasedConstraintTest.java | 2 +- .../test/java/org/eclipse/jetty/security/ConstraintTest.java | 2 +- .../java/org/eclipse/jetty/security/DataConstraintsTest.java | 2 +- .../org/eclipse/jetty/security/PropertyUserStoreTest.java | 2 +- .../org/eclipse/jetty/security/SpecExampleConstraintTest.java | 2 +- .../java/org/eclipse/jetty/security/TestLoginService.java | 2 +- .../test/java/org/eclipse/jetty/security/UserStoreTest.java | 2 +- .../security/authentication/SpnegoAuthenticatorTest.java | 2 +- .../org/eclipse/jetty/server/AbstractConnectionFactory.java | 2 +- .../main/java/org/eclipse/jetty/server/AbstractConnector.java | 2 +- .../java/org/eclipse/jetty/server/AbstractNCSARequestLog.java | 2 +- .../org/eclipse/jetty/server/AbstractNetworkConnector.java | 2 +- .../main/java/org/eclipse/jetty/server/AcceptRateLimit.java | 2 +- .../main/java/org/eclipse/jetty/server/AsyncContextEvent.java | 2 +- .../main/java/org/eclipse/jetty/server/AsyncContextState.java | 2 +- .../java/org/eclipse/jetty/server/AsyncNCSARequestLog.java | 2 +- .../java/org/eclipse/jetty/server/AsyncRequestLogWriter.java | 2 +- .../main/java/org/eclipse/jetty/server/Authentication.java | 2 +- .../java/org/eclipse/jetty/server/CachedContentFactory.java | 2 +- .../main/java/org/eclipse/jetty/server/ClassLoaderDump.java | 2 +- .../main/java/org/eclipse/jetty/server/ConnectionFactory.java | 2 +- .../main/java/org/eclipse/jetty/server/ConnectionLimit.java | 2 +- .../src/main/java/org/eclipse/jetty/server/Connector.java | 2 +- .../java/org/eclipse/jetty/server/ConnectorStatistics.java | 2 +- .../src/main/java/org/eclipse/jetty/server/CookieCutter.java | 2 +- .../main/java/org/eclipse/jetty/server/CustomRequestLog.java | 2 +- .../src/main/java/org/eclipse/jetty/server/DebugListener.java | 2 +- .../src/main/java/org/eclipse/jetty/server/DeflaterPool.java | 2 +- .../src/main/java/org/eclipse/jetty/server/Dispatcher.java | 2 +- .../java/org/eclipse/jetty/server/EncodingHttpWriter.java | 2 +- .../org/eclipse/jetty/server/ForwardedRequestCustomizer.java | 2 +- .../src/main/java/org/eclipse/jetty/server/Handler.java | 2 +- .../main/java/org/eclipse/jetty/server/HandlerContainer.java | 2 +- .../main/java/org/eclipse/jetty/server/HomeBaseWarning.java | 2 +- .../java/org/eclipse/jetty/server/HostHeaderCustomizer.java | 2 +- .../src/main/java/org/eclipse/jetty/server/HttpChannel.java | 2 +- .../java/org/eclipse/jetty/server/HttpChannelOverHttp.java | 2 +- .../main/java/org/eclipse/jetty/server/HttpChannelState.java | 2 +- .../main/java/org/eclipse/jetty/server/HttpConfiguration.java | 2 +- .../main/java/org/eclipse/jetty/server/HttpConnection.java | 2 +- .../java/org/eclipse/jetty/server/HttpConnectionFactory.java | 2 +- .../src/main/java/org/eclipse/jetty/server/HttpInput.java | 2 +- .../main/java/org/eclipse/jetty/server/HttpInputOverHTTP.java | 2 +- .../src/main/java/org/eclipse/jetty/server/HttpOutput.java | 2 +- .../src/main/java/org/eclipse/jetty/server/HttpTransport.java | 2 +- .../src/main/java/org/eclipse/jetty/server/HttpWriter.java | 2 +- .../java/org/eclipse/jetty/server/InclusiveByteRange.java | 2 +- .../java/org/eclipse/jetty/server/Iso88591HttpWriter.java | 2 +- .../main/java/org/eclipse/jetty/server/LocalConnector.java | 2 +- .../java/org/eclipse/jetty/server/LowResourceMonitor.java | 2 +- .../org/eclipse/jetty/server/MultiPartCleanerListener.java | 4 ++-- .../org/eclipse/jetty/server/MultiPartFormDataCompliance.java | 4 ++-- .../src/main/java/org/eclipse/jetty/server/MultiParts.java | 2 +- .../main/java/org/eclipse/jetty/server/NCSARequestLog.java | 2 +- .../org/eclipse/jetty/server/NegotiatingServerConnection.java | 2 +- .../jetty/server/NegotiatingServerConnectionFactory.java | 2 +- .../main/java/org/eclipse/jetty/server/NetworkConnector.java | 2 +- .../eclipse/jetty/server/NetworkTrafficServerConnector.java | 2 +- .../java/org/eclipse/jetty/server/ProxyConnectionFactory.java | 2 +- .../src/main/java/org/eclipse/jetty/server/PushBuilder.java | 4 ++-- .../main/java/org/eclipse/jetty/server/PushBuilderImpl.java | 2 +- .../java/org/eclipse/jetty/server/QuietServletException.java | 2 +- .../src/main/java/org/eclipse/jetty/server/Request.java | 2 +- .../src/main/java/org/eclipse/jetty/server/RequestLog.java | 2 +- .../java/org/eclipse/jetty/server/RequestLogCollection.java | 2 +- .../main/java/org/eclipse/jetty/server/RequestLogWriter.java | 2 +- .../java/org/eclipse/jetty/server/ResourceContentFactory.java | 2 +- .../main/java/org/eclipse/jetty/server/ResourceService.java | 2 +- .../src/main/java/org/eclipse/jetty/server/Response.java | 2 +- .../main/java/org/eclipse/jetty/server/ResponseWriter.java | 4 ++-- .../org/eclipse/jetty/server/SecureRequestCustomizer.java | 2 +- .../src/main/java/org/eclipse/jetty/server/Server.java | 2 +- .../org/eclipse/jetty/server/ServerConnectionStatistics.java | 2 +- .../main/java/org/eclipse/jetty/server/ServerConnector.java | 2 +- .../org/eclipse/jetty/server/ServletRequestHttpWrapper.java | 2 +- .../org/eclipse/jetty/server/ServletResponseHttpWrapper.java | 2 +- .../main/java/org/eclipse/jetty/server/SessionIdManager.java | 2 +- .../main/java/org/eclipse/jetty/server/ShutdownMonitor.java | 2 +- .../main/java/org/eclipse/jetty/server/Slf4jRequestLog.java | 2 +- .../java/org/eclipse/jetty/server/Slf4jRequestLogWriter.java | 2 +- .../org/eclipse/jetty/server/SocketCustomizationListener.java | 2 +- .../java/org/eclipse/jetty/server/SslConnectionFactory.java | 2 +- .../src/main/java/org/eclipse/jetty/server/UserIdentity.java | 2 +- .../main/java/org/eclipse/jetty/server/Utf8HttpWriter.java | 2 +- .../org/eclipse/jetty/server/handler/AbstractHandler.java | 2 +- .../jetty/server/handler/AbstractHandlerContainer.java | 2 +- .../jetty/server/handler/AllowSymLinkAliasChecker.java | 2 +- .../org/eclipse/jetty/server/handler/AsyncDelayHandler.java | 2 +- .../eclipse/jetty/server/handler/BufferedResponseHandler.java | 2 +- .../java/org/eclipse/jetty/server/handler/ContextHandler.java | 2 +- .../jetty/server/handler/ContextHandlerCollection.java | 2 +- .../java/org/eclipse/jetty/server/handler/DebugHandler.java | 2 +- .../java/org/eclipse/jetty/server/handler/DefaultHandler.java | 2 +- .../java/org/eclipse/jetty/server/handler/ErrorHandler.java | 2 +- .../org/eclipse/jetty/server/handler/HandlerCollection.java | 2 +- .../java/org/eclipse/jetty/server/handler/HandlerList.java | 2 +- .../java/org/eclipse/jetty/server/handler/HandlerWrapper.java | 2 +- .../java/org/eclipse/jetty/server/handler/HotSwapHandler.java | 2 +- .../org/eclipse/jetty/server/handler/IPAccessHandler.java | 2 +- .../org/eclipse/jetty/server/handler/IdleTimeoutHandler.java | 2 +- .../org/eclipse/jetty/server/handler/InetAccessHandler.java | 2 +- .../jetty/server/handler/ManagedAttributeListener.java | 2 +- .../org/eclipse/jetty/server/handler/MovedContextHandler.java | 2 +- .../org/eclipse/jetty/server/handler/RequestLogHandler.java | 2 +- .../org/eclipse/jetty/server/handler/ResourceHandler.java | 2 +- .../java/org/eclipse/jetty/server/handler/ScopedHandler.java | 2 +- .../eclipse/jetty/server/handler/SecuredRedirectHandler.java | 4 ++-- .../org/eclipse/jetty/server/handler/ShutdownHandler.java | 2 +- .../org/eclipse/jetty/server/handler/StatisticsHandler.java | 2 +- .../org/eclipse/jetty/server/handler/ThreadLimitHandler.java | 2 +- .../org/eclipse/jetty/server/handler/gzip/GzipFactory.java | 2 +- .../org/eclipse/jetty/server/handler/gzip/GzipHandler.java | 2 +- .../jetty/server/handler/gzip/GzipHttpInputInterceptor.java | 2 +- .../jetty/server/handler/gzip/GzipHttpOutputInterceptor.java | 2 +- .../org/eclipse/jetty/server/handler/gzip/package-info.java | 2 +- .../jetty/server/handler/jmx/AbstractHandlerMBean.java | 2 +- .../eclipse/jetty/server/handler/jmx/ContextHandlerMBean.java | 2 +- .../org/eclipse/jetty/server/handler/jmx/package-info.java | 2 +- .../java/org/eclipse/jetty/server/handler/package-info.java | 2 +- .../org/eclipse/jetty/server/jmx/AbstractConnectorMBean.java | 2 +- .../main/java/org/eclipse/jetty/server/jmx/ServerMBean.java | 2 +- .../main/java/org/eclipse/jetty/server/jmx/package-info.java | 2 +- .../server/nio/NetworkTrafficSelectChannelConnector.java | 2 +- .../main/java/org/eclipse/jetty/server/nio/package-info.java | 2 +- .../src/main/java/org/eclipse/jetty/server/package-info.java | 2 +- .../eclipse/jetty/server/session/AbstractSessionCache.java | 2 +- .../jetty/server/session/AbstractSessionDataStore.java | 2 +- .../jetty/server/session/AbstractSessionDataStoreFactory.java | 2 +- .../eclipse/jetty/server/session/CachingSessionDataStore.java | 2 +- .../jetty/server/session/CachingSessionDataStoreFactory.java | 2 +- .../org/eclipse/jetty/server/session/DatabaseAdaptor.java | 2 +- .../org/eclipse/jetty/server/session/DefaultSessionCache.java | 2 +- .../jetty/server/session/DefaultSessionCacheFactory.java | 2 +- .../eclipse/jetty/server/session/DefaultSessionIdManager.java | 2 +- .../eclipse/jetty/server/session/FileSessionDataStore.java | 2 +- .../jetty/server/session/FileSessionDataStoreFactory.java | 2 +- .../java/org/eclipse/jetty/server/session/HouseKeeper.java | 2 +- .../eclipse/jetty/server/session/JDBCSessionDataStore.java | 2 +- .../jetty/server/session/JDBCSessionDataStoreFactory.java | 2 +- .../org/eclipse/jetty/server/session/NullSessionCache.java | 2 +- .../eclipse/jetty/server/session/NullSessionCacheFactory.java | 2 +- .../eclipse/jetty/server/session/NullSessionDataStore.java | 2 +- .../jetty/server/session/NullSessionDataStoreFactory.java | 2 +- .../main/java/org/eclipse/jetty/server/session/Session.java | 2 +- .../java/org/eclipse/jetty/server/session/SessionCache.java | 2 +- .../org/eclipse/jetty/server/session/SessionCacheFactory.java | 2 +- .../java/org/eclipse/jetty/server/session/SessionContext.java | 2 +- .../java/org/eclipse/jetty/server/session/SessionData.java | 2 +- .../java/org/eclipse/jetty/server/session/SessionDataMap.java | 4 ++-- .../eclipse/jetty/server/session/SessionDataMapFactory.java | 2 +- .../org/eclipse/jetty/server/session/SessionDataStore.java | 2 +- .../eclipse/jetty/server/session/SessionDataStoreFactory.java | 2 +- .../java/org/eclipse/jetty/server/session/SessionHandler.java | 2 +- .../jetty/server/session/UnreadableSessionDataException.java | 2 +- .../jetty/server/session/UnwriteableSessionDataException.java | 2 +- .../java/org/eclipse/jetty/server/session/package-info.java | 2 +- .../test/java/org/eclipse/jetty/server/AbstractHttpTest.java | 2 +- .../java/org/eclipse/jetty/server/AsyncRequestReadTest.java | 2 +- .../test/java/org/eclipse/jetty/server/AsyncStressTest.java | 2 +- .../eclipse/jetty/server/CheckReverseProxyHeadersTest.java | 2 +- .../java/org/eclipse/jetty/server/ClassLoaderDumpTest.java | 2 +- .../org/eclipse/jetty/server/ConnectionOpenCloseTest.java | 2 +- .../java/org/eclipse/jetty/server/ConnectorCloseTestBase.java | 2 +- .../java/org/eclipse/jetty/server/ConnectorTimeoutTest.java | 2 +- .../test/java/org/eclipse/jetty/server/CookieCutterTest.java | 2 +- .../org/eclipse/jetty/server/CookieCutter_LenientTest.java | 2 +- .../org/eclipse/jetty/server/CustomResourcesMonitorTest.java | 2 +- .../src/test/java/org/eclipse/jetty/server/DumpHandler.java | 2 +- .../test/java/org/eclipse/jetty/server/ErrorHandlerTest.java | 2 +- .../java/org/eclipse/jetty/server/ExtendedServerTest.java | 2 +- .../eclipse/jetty/server/ForwardedRequestCustomizerTest.java | 2 +- .../test/java/org/eclipse/jetty/server/GracefulStopTest.java | 2 +- .../src/test/java/org/eclipse/jetty/server/HalfCloseTest.java | 2 +- .../org/eclipse/jetty/server/HostHeaderCustomizerTest.java | 2 +- .../java/org/eclipse/jetty/server/HttpChannelEventTest.java | 2 +- .../java/org/eclipse/jetty/server/HttpConnectionTest.java | 2 +- .../org/eclipse/jetty/server/HttpInputAsyncStateTest.java | 2 +- .../src/test/java/org/eclipse/jetty/server/HttpInputTest.java | 2 +- .../server/HttpManyWaysToAsyncCommitBadBehaviourTest.java | 2 +- .../eclipse/jetty/server/HttpManyWaysToAsyncCommitTest.java | 2 +- .../org/eclipse/jetty/server/HttpManyWaysToCommitTest.java | 2 +- .../test/java/org/eclipse/jetty/server/HttpOutputTest.java | 2 +- .../java/org/eclipse/jetty/server/HttpServerTestBase.java | 2 +- .../java/org/eclipse/jetty/server/HttpServerTestFixture.java | 2 +- .../org/eclipse/jetty/server/HttpVersionCustomizerTest.java | 2 +- .../test/java/org/eclipse/jetty/server/HttpWriterTest.java | 2 +- .../java/org/eclipse/jetty/server/InclusiveByteRangeTest.java | 2 +- .../jetty/server/InsufficientThreadsDetectionTest.java | 2 +- .../java/org/eclipse/jetty/server/LocalAsyncContextTest.java | 2 +- .../java/org/eclipse/jetty/server/LocalConnectorTest.java | 2 +- .../org/eclipse/jetty/server/LowResourcesMonitorTest.java | 2 +- .../org/eclipse/jetty/server/NetworkTrafficListenerTest.java | 2 +- .../test/java/org/eclipse/jetty/server/NotAcceptingTest.java | 2 +- .../java/org/eclipse/jetty/server/PartialRFC2616Test.java | 2 +- .../java/org/eclipse/jetty/server/ProxyConnectionTest.java | 2 +- .../test/java/org/eclipse/jetty/server/ProxyProtocolTest.java | 2 +- .../src/test/java/org/eclipse/jetty/server/RequestTest.java | 2 +- .../test/java/org/eclipse/jetty/server/ResourceCacheTest.java | 2 +- .../src/test/java/org/eclipse/jetty/server/ResponseTest.java | 2 +- .../eclipse/jetty/server/ServerConnectorAsyncContextTest.java | 2 +- .../org/eclipse/jetty/server/ServerConnectorCloseTest.java | 2 +- .../eclipse/jetty/server/ServerConnectorHttpServerTest.java | 2 +- .../java/org/eclipse/jetty/server/ServerConnectorTest.java | 2 +- .../org/eclipse/jetty/server/ServerConnectorTimeoutTest.java | 2 +- .../java/org/eclipse/jetty/server/ShutdownMonitorTest.java | 2 +- .../jetty/server/SlowClientWithPipelinedRequestTest.java | 2 +- .../src/test/java/org/eclipse/jetty/server/StressTest.java | 2 +- .../test/java/org/eclipse/jetty/server/SuspendHandler.java | 2 +- .../java/org/eclipse/jetty/server/ThreadStarvationTest.java | 2 +- .../org/eclipse/jetty/server/handler/AllowAllVerifier.java | 2 +- .../jetty/server/handler/AllowSymLinkAliasCheckerTest.java | 2 +- .../jetty/server/handler/BufferedResponseHandlerTest.java | 2 +- .../jetty/server/handler/ContextHandlerCollectionTest.java | 2 +- .../jetty/server/handler/ContextHandlerGetResourceTest.java | 2 +- .../org/eclipse/jetty/server/handler/ContextHandlerTest.java | 2 +- .../eclipse/jetty/server/handler/CustomRequestLogTest.java | 2 +- .../org/eclipse/jetty/server/handler/DebugHandlerTest.java | 2 +- .../org/eclipse/jetty/server/handler/DefaultHandlerTest.java | 2 +- .../java/org/eclipse/jetty/server/handler/HandlerTest.java | 2 +- .../org/eclipse/jetty/server/handler/IPAccessHandlerTest.java | 2 +- .../org/eclipse/jetty/server/handler/NcsaRequestLogTest.java | 2 +- .../jetty/server/handler/ResourceHandlerRangeTest.java | 2 +- .../org/eclipse/jetty/server/handler/ResourceHandlerTest.java | 2 +- .../org/eclipse/jetty/server/handler/ScopedHandlerTest.java | 2 +- .../jetty/server/handler/SecuredRedirectHandlerTest.java | 2 +- .../org/eclipse/jetty/server/handler/ShutdownHandlerTest.java | 2 +- .../eclipse/jetty/server/handler/StatisticsHandlerTest.java | 2 +- .../eclipse/jetty/server/handler/ThreadLimitHandlerTest.java | 2 +- .../org/eclipse/jetty/server/session/SessionCookieTest.java | 2 +- .../test/java/org/eclipse/jetty/server/ssl/SSLCloseTest.java | 2 +- .../test/java/org/eclipse/jetty/server/ssl/SSLEngineTest.java | 2 +- .../eclipse/jetty/server/ssl/SSLReadEOFAfterResponseTest.java | 2 +- .../jetty/server/ssl/SSLSelectChannelConnectorLoadTest.java | 2 +- .../eclipse/jetty/server/ssl/SelectChannelServerSslTest.java | 2 +- .../java/org/eclipse/jetty/server/ssl/SlowClientsTest.java | 2 +- .../eclipse/jetty/server/ssl/SniSslConnectionFactoryTest.java | 2 +- .../eclipse/jetty/server/ssl/SslConnectionFactoryTest.java | 2 +- .../eclipse/jetty/server/ssl/SslContextFactoryReloadTest.java | 2 +- .../eclipse/jetty/server/ssl/SslSelectChannelTimeoutTest.java | 2 +- .../test/java/org/eclipse/jetty/server/ssl/SslUploadTest.java | 2 +- .../src/main/java/org/eclipse/jetty/servlet/BaseHolder.java | 2 +- .../main/java/org/eclipse/jetty/servlet/DefaultServlet.java | 2 +- .../java/org/eclipse/jetty/servlet/ErrorPageErrorHandler.java | 2 +- .../src/main/java/org/eclipse/jetty/servlet/FilterHolder.java | 2 +- .../main/java/org/eclipse/jetty/servlet/FilterMapping.java | 2 +- .../src/main/java/org/eclipse/jetty/servlet/Holder.java | 2 +- .../src/main/java/org/eclipse/jetty/servlet/Invoker.java | 2 +- .../org/eclipse/jetty/servlet/JspPropertyGroupServlet.java | 2 +- .../main/java/org/eclipse/jetty/servlet/ListenerHolder.java | 2 +- .../src/main/java/org/eclipse/jetty/servlet/NoJspServlet.java | 2 +- .../java/org/eclipse/jetty/servlet/ServletContextHandler.java | 2 +- .../main/java/org/eclipse/jetty/servlet/ServletHandler.java | 2 +- .../main/java/org/eclipse/jetty/servlet/ServletHolder.java | 2 +- .../main/java/org/eclipse/jetty/servlet/ServletMapping.java | 2 +- .../src/main/java/org/eclipse/jetty/servlet/Source.java | 2 +- .../java/org/eclipse/jetty/servlet/StatisticsServlet.java | 2 +- .../org/eclipse/jetty/servlet/jmx/FilterMappingMBean.java | 2 +- .../main/java/org/eclipse/jetty/servlet/jmx/HolderMBean.java | 2 +- .../org/eclipse/jetty/servlet/jmx/ServletMappingMBean.java | 2 +- .../main/java/org/eclipse/jetty/servlet/jmx/package-info.java | 2 +- .../org/eclipse/jetty/servlet/listener/ELContextCleaner.java | 2 +- .../eclipse/jetty/servlet/listener/IntrospectorCleaner.java | 2 +- .../java/org/eclipse/jetty/servlet/listener/package-info.java | 2 +- .../src/main/java/org/eclipse/jetty/servlet/package-info.java | 2 +- .../jetty/servlet/AsyncContextDispatchWithQueryStrings.java | 2 +- .../org/eclipse/jetty/servlet/AsyncContextListenersTest.java | 2 +- .../test/java/org/eclipse/jetty/servlet/AsyncContextTest.java | 2 +- .../java/org/eclipse/jetty/servlet/AsyncListenerTest.java | 2 +- .../java/org/eclipse/jetty/servlet/AsyncServletIOTest.java | 2 +- .../org/eclipse/jetty/servlet/AsyncServletLongPollTest.java | 2 +- .../test/java/org/eclipse/jetty/servlet/AsyncServletTest.java | 2 +- .../eclipse/jetty/servlet/ComplianceViolations2616Test.java | 2 +- .../java/org/eclipse/jetty/servlet/CustomRequestLogTest.java | 2 +- .../org/eclipse/jetty/servlet/DefaultServletRangesTest.java | 2 +- .../java/org/eclipse/jetty/servlet/DefaultServletTest.java | 2 +- .../java/org/eclipse/jetty/servlet/DispatcherForwardTest.java | 2 +- .../test/java/org/eclipse/jetty/servlet/DispatcherTest.java | 2 +- .../test/java/org/eclipse/jetty/servlet/EncodedURITest.java | 2 +- .../test/java/org/eclipse/jetty/servlet/ErrorPageTest.java | 2 +- .../test/java/org/eclipse/jetty/servlet/FilterHolderTest.java | 2 +- .../test/java/org/eclipse/jetty/servlet/GzipHandlerTest.java | 2 +- .../src/test/java/org/eclipse/jetty/servlet/HolderTest.java | 2 +- .../java/org/eclipse/jetty/servlet/IncludedServletTest.java | 2 +- .../src/test/java/org/eclipse/jetty/servlet/InvokerTest.java | 2 +- .../test/java/org/eclipse/jetty/servlet/PostServletTest.java | 2 +- .../java/org/eclipse/jetty/servlet/RequestHeadersTest.java | 2 +- .../test/java/org/eclipse/jetty/servlet/RequestURITest.java | 2 +- .../java/org/eclipse/jetty/servlet/ResponseHeadersTest.java | 2 +- .../java/org/eclipse/jetty/servlet/SSLAsyncIOServletTest.java | 2 +- .../org/eclipse/jetty/servlet/ServletContextHandlerTest.java | 2 +- .../eclipse/jetty/servlet/ServletContextResourcesTest.java | 2 +- .../java/org/eclipse/jetty/servlet/ServletHandlerTest.java | 2 +- .../java/org/eclipse/jetty/servlet/ServletHolderTest.java | 2 +- .../java/org/eclipse/jetty/servlet/ServletRequestLogTest.java | 2 +- .../test/java/org/eclipse/jetty/servlet/ServletTester.java | 2 +- .../java/org/eclipse/jetty/servlet/StatisticsServletTest.java | 2 +- .../main/java/org/eclipse/jetty/servlets/AsyncGzipFilter.java | 2 +- .../src/main/java/org/eclipse/jetty/servlets/CGI.java | 2 +- .../java/org/eclipse/jetty/servlets/CloseableDoSFilter.java | 2 +- .../main/java/org/eclipse/jetty/servlets/ConcatServlet.java | 2 +- .../java/org/eclipse/jetty/servlets/CrossOriginFilter.java | 2 +- .../org/eclipse/jetty/servlets/DataRateLimitedServlet.java | 2 +- .../src/main/java/org/eclipse/jetty/servlets/DoSFilter.java | 2 +- .../src/main/java/org/eclipse/jetty/servlets/EventSource.java | 2 +- .../java/org/eclipse/jetty/servlets/EventSourceServlet.java | 2 +- .../src/main/java/org/eclipse/jetty/servlets/GzipFilter.java | 2 +- .../main/java/org/eclipse/jetty/servlets/HeaderFilter.java | 2 +- .../java/org/eclipse/jetty/servlets/IncludableGzipFilter.java | 2 +- .../org/eclipse/jetty/servlets/IncludeExcludeBasedFilter.java | 2 +- .../main/java/org/eclipse/jetty/servlets/MultiPartFilter.java | 2 +- .../main/java/org/eclipse/jetty/servlets/PushCacheFilter.java | 2 +- .../org/eclipse/jetty/servlets/PushSessionCacheFilter.java | 2 +- .../src/main/java/org/eclipse/jetty/servlets/PutFilter.java | 2 +- .../src/main/java/org/eclipse/jetty/servlets/QoSFilter.java | 2 +- .../main/java/org/eclipse/jetty/servlets/WelcomeFilter.java | 2 +- .../main/java/org/eclipse/jetty/servlets/package-info.java | 2 +- .../eclipse/jetty/server/handler/gzip/AsyncManipFilter.java | 2 +- .../server/handler/gzip/AsyncScheduledDispatchWrite.java | 2 +- .../jetty/server/handler/gzip/AsyncTimeoutCompleteWrite.java | 2 +- .../jetty/server/handler/gzip/AsyncTimeoutDispatchWrite.java | 2 +- .../jetty/server/handler/gzip/GzipContentLengthTest.java | 2 +- .../server/handler/gzip/GzipDefaultNoRecompressTest.java | 2 +- .../eclipse/jetty/server/handler/gzip/GzipDefaultTest.java | 2 +- .../org/eclipse/jetty/server/handler/gzip/GzipTester.java | 2 +- .../test/java/org/eclipse/jetty/server/handler/gzip/Hex.java | 2 +- .../jetty/server/handler/gzip/IncludedGzipMinSizeTest.java | 2 +- .../eclipse/jetty/server/handler/gzip/IncludedGzipTest.java | 2 +- .../eclipse/jetty/server/handler/gzip/NoOpOutputStream.java | 2 +- .../jetty/server/handler/gzip/PassThruInputStream.java | 2 +- .../jetty/server/handler/gzip/TestDirContentServlet.java | 2 +- .../jetty/server/handler/gzip/TestMinGzipSizeServlet.java | 2 +- .../server/handler/gzip/TestServletBufferTypeLengthWrite.java | 2 +- .../server/handler/gzip/TestServletLengthStreamTypeWrite.java | 2 +- .../server/handler/gzip/TestServletLengthTypeStreamWrite.java | 2 +- .../server/handler/gzip/TestServletStreamLengthTypeWrite.java | 2 +- .../gzip/TestServletStreamLengthTypeWriteWithFlush.java | 2 +- .../server/handler/gzip/TestServletStreamTypeLengthWrite.java | 2 +- .../server/handler/gzip/TestServletTypeLengthStreamWrite.java | 2 +- .../server/handler/gzip/TestServletTypeStreamLengthWrite.java | 2 +- .../jetty/server/handler/gzip/TestStaticMimeTypeServlet.java | 2 +- .../org/eclipse/jetty/servlets/AbstractDoSFilterTest.java | 2 +- .../org/eclipse/jetty/servlets/CloseableDoSFilterTest.java | 2 +- .../java/org/eclipse/jetty/servlets/ConcatServletTest.java | 2 +- .../org/eclipse/jetty/servlets/CrossOriginFilterTest.java | 2 +- .../eclipse/jetty/servlets/DataRateLimitedServletTest.java | 2 +- .../java/org/eclipse/jetty/servlets/DoSFilterJMXTest.java | 2 +- .../test/java/org/eclipse/jetty/servlets/DoSFilterTest.java | 2 +- .../org/eclipse/jetty/servlets/EventSourceServletTest.java | 2 +- .../org/eclipse/jetty/servlets/GzipFilterLayeredTest.java | 2 +- .../java/org/eclipse/jetty/servlets/HeaderFilterTest.java | 2 +- .../eclipse/jetty/servlets/IncludeExcludeBasedFilterTest.java | 2 +- .../java/org/eclipse/jetty/servlets/MultipartFilterTest.java | 2 +- .../test/java/org/eclipse/jetty/servlets/PutFilterTest.java | 2 +- .../test/java/org/eclipse/jetty/servlets/QoSFilterTest.java | 2 +- .../java/org/eclipse/jetty/servlets/ThreadStarvationTest.java | 2 +- jetty-spring/src/main/java/org/eclipse/jetty/spring/Main.java | 2 +- .../eclipse/jetty/spring/SpringConfigurationProcessor.java | 2 +- .../jetty/spring/SpringConfigurationProcessorFactory.java | 2 +- .../src/main/java/org/eclipse/jetty/spring/package-info.java | 2 +- .../org/eclipse/jetty/spring/SpringXmlConfigurationTest.java | 2 +- .../test/java/org/eclipse/jetty/spring/TestConfiguration.java | 2 +- .../src/main/java/org/eclipse/jetty/start/BaseBuilder.java | 2 +- .../src/main/java/org/eclipse/jetty/start/BaseHome.java | 2 +- .../src/main/java/org/eclipse/jetty/start/Classpath.java | 2 +- .../main/java/org/eclipse/jetty/start/CommandLineBuilder.java | 2 +- jetty-start/src/main/java/org/eclipse/jetty/start/FS.java | 2 +- .../src/main/java/org/eclipse/jetty/start/FileArg.java | 2 +- .../main/java/org/eclipse/jetty/start/FileInitializer.java | 2 +- .../src/main/java/org/eclipse/jetty/start/JarVersion.java | 2 +- .../src/main/java/org/eclipse/jetty/start/Licensing.java | 2 +- jetty-start/src/main/java/org/eclipse/jetty/start/Main.java | 2 +- jetty-start/src/main/java/org/eclipse/jetty/start/Module.java | 2 +- .../main/java/org/eclipse/jetty/start/ModuleGraphWriter.java | 2 +- .../src/main/java/org/eclipse/jetty/start/Modules.java | 2 +- .../src/main/java/org/eclipse/jetty/start/NaturalSort.java | 2 +- .../src/main/java/org/eclipse/jetty/start/PathFinder.java | 4 ++-- .../src/main/java/org/eclipse/jetty/start/PathMatchers.java | 2 +- jetty-start/src/main/java/org/eclipse/jetty/start/Props.java | 2 +- .../src/main/java/org/eclipse/jetty/start/PropsException.java | 2 +- .../src/main/java/org/eclipse/jetty/start/RawArgs.java | 2 +- .../src/main/java/org/eclipse/jetty/start/StartArgs.java | 2 +- .../src/main/java/org/eclipse/jetty/start/StartIni.java | 2 +- .../src/main/java/org/eclipse/jetty/start/StartLog.java | 2 +- .../src/main/java/org/eclipse/jetty/start/TextFile.java | 2 +- .../src/main/java/org/eclipse/jetty/start/UsageException.java | 2 +- jetty-start/src/main/java/org/eclipse/jetty/start/Utils.java | 2 +- .../src/main/java/org/eclipse/jetty/start/Version.java | 2 +- .../org/eclipse/jetty/start/builders/StartDirBuilder.java | 2 +- .../org/eclipse/jetty/start/builders/StartIniBuilder.java | 2 +- .../eclipse/jetty/start/config/CommandLineConfigSource.java | 2 +- .../java/org/eclipse/jetty/start/config/ConfigSource.java | 2 +- .../java/org/eclipse/jetty/start/config/ConfigSources.java | 2 +- .../java/org/eclipse/jetty/start/config/DirConfigSource.java | 2 +- .../org/eclipse/jetty/start/config/JettyBaseConfigSource.java | 2 +- .../org/eclipse/jetty/start/config/JettyHomeConfigSource.java | 2 +- .../jetty/start/fileinits/BaseHomeFileInitializer.java | 2 +- .../eclipse/jetty/start/fileinits/LocalFileInitializer.java | 2 +- .../jetty/start/fileinits/MavenLocalRepoFileInitializer.java | 2 +- .../eclipse/jetty/start/fileinits/TestFileInitializer.java | 2 +- .../org/eclipse/jetty/start/fileinits/UriFileInitializer.java | 2 +- .../src/main/java/org/eclipse/jetty/start/package-info.java | 2 +- .../src/test/java/org/eclipse/jetty/start/BaseHomeTest.java | 2 +- .../java/org/eclipse/jetty/start/CommandLineBuilderTest.java | 2 +- .../java/org/eclipse/jetty/start/ConfigurationAssert.java | 2 +- jetty-start/src/test/java/org/eclipse/jetty/start/FSTest.java | 2 +- .../src/test/java/org/eclipse/jetty/start/FileArgTest.java | 2 +- .../java/org/eclipse/jetty/start/IncludeJettyDirTest.java | 2 +- .../src/test/java/org/eclipse/jetty/start/JarVersionTest.java | 2 +- .../src/test/java/org/eclipse/jetty/start/MainTest.java | 2 +- .../java/org/eclipse/jetty/start/ModuleGraphWriterTest.java | 2 +- .../src/test/java/org/eclipse/jetty/start/ModuleTest.java | 2 +- .../src/test/java/org/eclipse/jetty/start/ModulesTest.java | 2 +- .../src/test/java/org/eclipse/jetty/start/PathFinderTest.java | 2 +- .../org/eclipse/jetty/start/PathMatchersAbsoluteTest.java | 2 +- .../org/eclipse/jetty/start/PathMatchersSearchRootTest.java | 2 +- .../src/test/java/org/eclipse/jetty/start/PropertyDump.java | 2 +- .../java/org/eclipse/jetty/start/PropertyPassingTest.java | 2 +- .../src/test/java/org/eclipse/jetty/start/PropsTest.java | 2 +- .../src/test/java/org/eclipse/jetty/start/StartMatchers.java | 2 +- .../test/java/org/eclipse/jetty/start/TestBadUseCases.java | 2 +- .../src/test/java/org/eclipse/jetty/start/TestEnv.java | 2 +- .../src/test/java/org/eclipse/jetty/start/TestUseCases.java | 2 +- .../src/test/java/org/eclipse/jetty/start/VersionTest.java | 2 +- .../org/eclipse/jetty/start/config/ConfigSourcesTest.java | 2 +- .../start/fileinits/MavenLocalRepoFileInitializerTest.java | 2 +- .../org/eclipse/jetty/start/util/CorrectMavenCentralRefs.java | 2 +- .../org/eclipse/jetty/start/util/RebuildTestResources.java | 2 +- .../org/eclipse/jetty/unixsocket/UnixSocketConnector.java | 2 +- .../java/org/eclipse/jetty/unixsocket/UnixSocketEndPoint.java | 2 +- .../unixsocket/client/HttpClientTransportOverUnixSockets.java | 2 +- .../src/test/java/org/eclipse/jetty/unixsocket/JnrTest.java | 2 +- .../java/org/eclipse/jetty/unixsocket/UnixSocketClient.java | 2 +- .../org/eclipse/jetty/unixsocket/UnixSocketProxyServer.java | 2 +- .../java/org/eclipse/jetty/unixsocket/UnixSocketServer.java | 2 +- .../java/org/eclipse/jetty/unixsocket/UnixSocketTest.java | 2 +- .../src/main/java/org/eclipse/jetty/util/ajax/JSON.java | 2 +- .../org/eclipse/jetty/util/ajax/JSONCollectionConvertor.java | 2 +- .../java/org/eclipse/jetty/util/ajax/JSONDateConvertor.java | 2 +- .../java/org/eclipse/jetty/util/ajax/JSONEnumConvertor.java | 2 +- .../java/org/eclipse/jetty/util/ajax/JSONObjectConvertor.java | 2 +- .../java/org/eclipse/jetty/util/ajax/JSONPojoConvertor.java | 2 +- .../org/eclipse/jetty/util/ajax/JSONPojoConvertorFactory.java | 2 +- .../main/java/org/eclipse/jetty/util/ajax/package-info.java | 2 +- .../eclipse/jetty/util/ajax/JSONCollectionConvertorTest.java | 2 +- .../eclipse/jetty/util/ajax/JSONPojoConvertorFactoryTest.java | 2 +- .../org/eclipse/jetty/util/ajax/JSONPojoConvertorTest.java | 2 +- .../src/test/java/org/eclipse/jetty/util/ajax/JSONTest.java | 2 +- .../src/main/java/org/eclipse/jetty/util/AbstractTrie.java | 2 +- .../main/java/org/eclipse/jetty/util/ArrayTernaryTrie.java | 2 +- .../src/main/java/org/eclipse/jetty/util/ArrayTrie.java | 2 +- .../src/main/java/org/eclipse/jetty/util/ArrayUtil.java | 2 +- .../src/main/java/org/eclipse/jetty/util/AtomicBiInteger.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/Atomics.java | 2 +- .../src/main/java/org/eclipse/jetty/util/Attributes.java | 2 +- .../src/main/java/org/eclipse/jetty/util/AttributesMap.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/B64Code.java | 2 +- .../main/java/org/eclipse/jetty/util/BlockingArrayQueue.java | 2 +- .../src/main/java/org/eclipse/jetty/util/BufferUtil.java | 2 +- .../java/org/eclipse/jetty/util/ByteArrayISO8859Writer.java | 2 +- .../java/org/eclipse/jetty/util/ByteArrayOutputStream2.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/Callback.java | 2 +- .../org/eclipse/jetty/util/ClassLoadingObjectInputStream.java | 2 +- .../main/java/org/eclipse/jetty/util/CompletableCallback.java | 2 +- .../main/java/org/eclipse/jetty/util/ConcurrentHashSet.java | 2 +- .../main/java/org/eclipse/jetty/util/ConstantThrowable.java | 2 +- .../main/java/org/eclipse/jetty/util/CountingCallback.java | 2 +- .../src/main/java/org/eclipse/jetty/util/DateCache.java | 2 +- .../java/org/eclipse/jetty/util/DecoratedObjectFactory.java | 2 +- .../src/main/java/org/eclipse/jetty/util/Decorator.java | 2 +- .../main/java/org/eclipse/jetty/util/DeprecationWarning.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/Fields.java | 2 +- .../src/main/java/org/eclipse/jetty/util/FutureCallback.java | 2 +- .../src/main/java/org/eclipse/jetty/util/FuturePromise.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/HostMap.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/HostPort.java | 2 +- .../src/main/java/org/eclipse/jetty/util/HttpCookieStore.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/IO.java | 2 +- .../src/main/java/org/eclipse/jetty/util/IPAddressMap.java | 2 +- .../src/main/java/org/eclipse/jetty/util/IncludeExclude.java | 2 +- .../main/java/org/eclipse/jetty/util/IncludeExcludeSet.java | 2 +- .../src/main/java/org/eclipse/jetty/util/InetAddressSet.java | 2 +- .../main/java/org/eclipse/jetty/util/IntrospectionUtil.java | 2 +- .../main/java/org/eclipse/jetty/util/IteratingCallback.java | 2 +- .../java/org/eclipse/jetty/util/IteratingNestedCallback.java | 2 +- .../src/main/java/org/eclipse/jetty/util/JavaVersion.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/Jetty.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/LazyList.java | 2 +- .../src/main/java/org/eclipse/jetty/util/LeakDetector.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/Loader.java | 2 +- .../src/main/java/org/eclipse/jetty/util/ManifestUtils.java | 2 +- .../src/main/java/org/eclipse/jetty/util/MemoryUtils.java | 2 +- .../src/main/java/org/eclipse/jetty/util/MultiException.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/MultiMap.java | 2 +- .../org/eclipse/jetty/util/MultiPartInputStreamParser.java | 2 +- .../java/org/eclipse/jetty/util/MultiPartOutputStream.java | 2 +- .../src/main/java/org/eclipse/jetty/util/MultiPartWriter.java | 2 +- .../main/java/org/eclipse/jetty/util/MultiReleaseJarFile.java | 2 +- .../src/main/java/org/eclipse/jetty/util/PathWatcher.java | 2 +- .../src/main/java/org/eclipse/jetty/util/PatternMatcher.java | 2 +- .../src/main/java/org/eclipse/jetty/util/ProcessorUtils.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/Promise.java | 2 +- .../java/org/eclipse/jetty/util/QuotedStringTokenizer.java | 2 +- .../main/java/org/eclipse/jetty/util/ReadLineInputStream.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/RegexSet.java | 2 +- .../src/main/java/org/eclipse/jetty/util/Retainable.java | 2 +- .../java/org/eclipse/jetty/util/RolloverFileOutputStream.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/Scanner.java | 2 +- .../src/main/java/org/eclipse/jetty/util/SearchPattern.java | 2 +- .../java/org/eclipse/jetty/util/SharedBlockingCallback.java | 2 +- .../java/org/eclipse/jetty/util/SocketAddressResolver.java | 2 +- .../src/main/java/org/eclipse/jetty/util/StringUtil.java | 2 +- .../src/main/java/org/eclipse/jetty/util/TopologicalSort.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/TreeTrie.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/Trie.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/TypeUtil.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/URIUtil.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/Uptime.java | 2 +- .../src/main/java/org/eclipse/jetty/util/UrlEncoded.java | 2 +- .../src/main/java/org/eclipse/jetty/util/Utf8Appendable.java | 2 +- .../src/main/java/org/eclipse/jetty/util/Utf8LineParser.java | 2 +- .../main/java/org/eclipse/jetty/util/Utf8StringBuffer.java | 2 +- .../main/java/org/eclipse/jetty/util/Utf8StringBuilder.java | 2 +- .../org/eclipse/jetty/util/annotation/ManagedAttribute.java | 2 +- .../java/org/eclipse/jetty/util/annotation/ManagedObject.java | 2 +- .../org/eclipse/jetty/util/annotation/ManagedOperation.java | 2 +- .../src/main/java/org/eclipse/jetty/util/annotation/Name.java | 2 +- .../java/org/eclipse/jetty/util/annotation/package-info.java | 2 +- .../org/eclipse/jetty/util/component/AbstractLifeCycle.java | 2 +- .../main/java/org/eclipse/jetty/util/component/Container.java | 2 +- .../org/eclipse/jetty/util/component/ContainerLifeCycle.java | 2 +- .../java/org/eclipse/jetty/util/component/Destroyable.java | 2 +- .../main/java/org/eclipse/jetty/util/component/Dumpable.java | 2 +- .../org/eclipse/jetty/util/component/DumpableCollection.java | 2 +- .../org/eclipse/jetty/util/component/FileDestroyable.java | 2 +- .../jetty/util/component/FileNoticeLifeCycleListener.java | 2 +- .../main/java/org/eclipse/jetty/util/component/Graceful.java | 2 +- .../main/java/org/eclipse/jetty/util/component/LifeCycle.java | 2 +- .../java/org/eclipse/jetty/util/component/StopLifeCycle.java | 2 +- .../java/org/eclipse/jetty/util/component/package-info.java | 2 +- .../main/java/org/eclipse/jetty/util/log/AbstractLogger.java | 2 +- .../src/main/java/org/eclipse/jetty/util/log/JavaUtilLog.java | 2 +- .../java/org/eclipse/jetty/util/log/JettyAwareLogger.java | 2 +- .../main/java/org/eclipse/jetty/util/log/JettyLogHandler.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/log/Log.java | 2 +- .../src/main/java/org/eclipse/jetty/util/log/Logger.java | 2 +- .../src/main/java/org/eclipse/jetty/util/log/LoggerLog.java | 2 +- .../src/main/java/org/eclipse/jetty/util/log/Slf4jLog.java | 2 +- .../java/org/eclipse/jetty/util/log/StacklessLogging.java | 2 +- .../src/main/java/org/eclipse/jetty/util/log/StdErrLog.java | 2 +- .../main/java/org/eclipse/jetty/util/log/package-info.java | 2 +- .../src/main/java/org/eclipse/jetty/util/package-info.java | 2 +- .../org/eclipse/jetty/util/preventers/AWTLeakPreventer.java | 2 +- .../eclipse/jetty/util/preventers/AbstractLeakPreventer.java | 2 +- .../jetty/util/preventers/AppContextLeakPreventer.java | 2 +- .../org/eclipse/jetty/util/preventers/DOMLeakPreventer.java | 2 +- .../jetty/util/preventers/DriverManagerLeakPreventer.java | 2 +- .../eclipse/jetty/util/preventers/GCThreadLeakPreventer.java | 2 +- .../eclipse/jetty/util/preventers/Java2DLeakPreventer.java | 2 +- .../org/eclipse/jetty/util/preventers/LDAPLeakPreventer.java | 2 +- .../util/preventers/LoginConfigurationLeakPreventer.java | 2 +- .../jetty/util/preventers/SecurityProviderLeakPreventer.java | 2 +- .../java/org/eclipse/jetty/util/preventers/package-info.java | 2 +- .../java/org/eclipse/jetty/util/resource/BadResource.java | 2 +- .../java/org/eclipse/jetty/util/resource/EmptyResource.java | 2 +- .../java/org/eclipse/jetty/util/resource/FileResource.java | 4 ++-- .../java/org/eclipse/jetty/util/resource/JarFileResource.java | 2 +- .../java/org/eclipse/jetty/util/resource/JarResource.java | 2 +- .../java/org/eclipse/jetty/util/resource/PathResource.java | 2 +- .../main/java/org/eclipse/jetty/util/resource/Resource.java | 2 +- .../org/eclipse/jetty/util/resource/ResourceCollection.java | 2 +- .../java/org/eclipse/jetty/util/resource/ResourceFactory.java | 2 +- .../java/org/eclipse/jetty/util/resource/URLResource.java | 2 +- .../java/org/eclipse/jetty/util/resource/package-info.java | 2 +- .../org/eclipse/jetty/util/security/CertificateUtils.java | 2 +- .../org/eclipse/jetty/util/security/CertificateValidator.java | 2 +- .../main/java/org/eclipse/jetty/util/security/Constraint.java | 2 +- .../main/java/org/eclipse/jetty/util/security/Credential.java | 2 +- .../org/eclipse/jetty/util/security/CredentialProvider.java | 2 +- .../main/java/org/eclipse/jetty/util/security/Password.java | 2 +- .../java/org/eclipse/jetty/util/security/package-info.java | 2 +- .../eclipse/jetty/util/ssl/AliasedX509ExtendedKeyManager.java | 2 +- .../org/eclipse/jetty/util/ssl/SniX509ExtendedKeyManager.java | 2 +- .../java/org/eclipse/jetty/util/ssl/SslContextFactory.java | 2 +- .../java/org/eclipse/jetty/util/ssl/SslSelectionDump.java | 2 +- jetty-util/src/main/java/org/eclipse/jetty/util/ssl/X509.java | 2 +- .../main/java/org/eclipse/jetty/util/ssl/package-info.java | 2 +- .../org/eclipse/jetty/util/statistic/CounterStatistic.java | 2 +- .../java/org/eclipse/jetty/util/statistic/RateStatistic.java | 2 +- .../org/eclipse/jetty/util/statistic/SampleStatistic.java | 2 +- .../java/org/eclipse/jetty/util/statistic/package-info.java | 2 +- .../java/org/eclipse/jetty/util/thread/ExecutionStrategy.java | 2 +- .../eclipse/jetty/util/thread/ExecutorSizedThreadPool.java | 2 +- .../org/eclipse/jetty/util/thread/ExecutorThreadPool.java | 2 +- .../main/java/org/eclipse/jetty/util/thread/Invocable.java | 2 +- .../src/main/java/org/eclipse/jetty/util/thread/Locker.java | 2 +- .../eclipse/jetty/util/thread/MonitoredQueuedThreadPool.java | 2 +- .../java/org/eclipse/jetty/util/thread/QueuedThreadPool.java | 2 +- .../org/eclipse/jetty/util/thread/ReservedThreadExecutor.java | 2 +- .../eclipse/jetty/util/thread/ScheduledExecutorScheduler.java | 2 +- .../main/java/org/eclipse/jetty/util/thread/Scheduler.java | 2 +- .../java/org/eclipse/jetty/util/thread/ShutdownThread.java | 2 +- .../src/main/java/org/eclipse/jetty/util/thread/Sweeper.java | 2 +- .../org/eclipse/jetty/util/thread/ThreadClassLoaderScope.java | 2 +- .../main/java/org/eclipse/jetty/util/thread/ThreadPool.java | 2 +- .../java/org/eclipse/jetty/util/thread/ThreadPoolBudget.java | 2 +- .../java/org/eclipse/jetty/util/thread/TimerScheduler.java | 2 +- .../main/java/org/eclipse/jetty/util/thread/TryExecutor.java | 2 +- .../main/java/org/eclipse/jetty/util/thread/package-info.java | 2 +- .../eclipse/jetty/util/thread/strategy/EatWhatYouKill.java | 2 +- .../jetty/util/thread/strategy/ExecuteProduceConsume.java | 2 +- .../eclipse/jetty/util/thread/strategy/ProduceConsume.java | 2 +- .../jetty/util/thread/strategy/ProduceExecuteConsume.java | 2 +- .../test/java/org/eclipse/jetty/util/AtomicBiIntegerTest.java | 2 +- .../src/test/java/org/eclipse/jetty/util/B64CodeTest.java | 2 +- .../java/org/eclipse/jetty/util/BlockingArrayQueueTest.java | 2 +- .../src/test/java/org/eclipse/jetty/util/BufferUtilTest.java | 2 +- .../test/java/org/eclipse/jetty/util/CollectionAssert.java | 2 +- .../src/test/java/org/eclipse/jetty/util/DateCacheTest.java | 2 +- .../test/java/org/eclipse/jetty/util/FutureCallbackTest.java | 2 +- .../src/test/java/org/eclipse/jetty/util/HostPortTest.java | 2 +- .../test/java/org/eclipse/jetty/util/IPAddressMapTest.java | 2 +- .../java/org/eclipse/jetty/util/IncludeExcludeSetTest.java | 2 +- .../test/java/org/eclipse/jetty/util/IncludeExcludeTest.java | 2 +- .../test/java/org/eclipse/jetty/util/InetAddressSetTest.java | 2 +- .../java/org/eclipse/jetty/util/IteratingCallbackTest.java | 2 +- .../src/test/java/org/eclipse/jetty/util/JavaVersionTest.java | 2 +- .../src/test/java/org/eclipse/jetty/util/LazyListTest.java | 2 +- .../test/java/org/eclipse/jetty/util/LeakDetectorTest.java | 2 +- .../test/java/org/eclipse/jetty/util/MultiExceptionTest.java | 2 +- .../src/test/java/org/eclipse/jetty/util/MultiMapTest.java | 2 +- .../java/org/eclipse/jetty/util/MultiPartInputStreamTest.java | 2 +- .../java/org/eclipse/jetty/util/MultiReleaseJarFileTest.java | 2 +- .../src/test/java/org/eclipse/jetty/util/PathWatcherDemo.java | 2 +- .../src/test/java/org/eclipse/jetty/util/PathWatcherTest.java | 2 +- .../test/java/org/eclipse/jetty/util/ProcessorUtilsTest.java | 2 +- .../test/java/org/eclipse/jetty/util/QueueBenchmarkTest.java | 2 +- .../org/eclipse/jetty/util/QuotedStringTokenizerTest.java | 2 +- .../java/org/eclipse/jetty/util/ReadLineInputStreamTest.java | 2 +- .../src/test/java/org/eclipse/jetty/util/RegexSetTest.java | 2 +- .../org/eclipse/jetty/util/RolloverFileOutputStreamTest.java | 2 +- .../src/test/java/org/eclipse/jetty/util/ScannerTest.java | 2 +- .../test/java/org/eclipse/jetty/util/SearchPatternTest.java | 2 +- .../org/eclipse/jetty/util/SharedBlockingCallbackTest.java | 2 +- .../src/test/java/org/eclipse/jetty/util/StringUtilTest.java | 2 +- .../java/org/eclipse/jetty/util/TestIntrospectionUtil.java | 2 +- .../test/java/org/eclipse/jetty/util/TopologicalSortTest.java | 2 +- jetty-util/src/test/java/org/eclipse/jetty/util/TrieTest.java | 2 +- .../src/test/java/org/eclipse/jetty/util/TypeUtilTest.java | 2 +- .../java/org/eclipse/jetty/util/URIUtilCanonicalPathTest.java | 2 +- .../src/test/java/org/eclipse/jetty/util/URIUtilTest.java | 2 +- .../src/test/java/org/eclipse/jetty/util/URLEncodedTest.java | 2 +- .../src/test/java/org/eclipse/jetty/util/UptimeTest.java | 2 +- .../org/eclipse/jetty/util/UrlEncodedInvalidEncodingTest.java | 2 +- .../test/java/org/eclipse/jetty/util/UrlEncodedUtf8Test.java | 2 +- .../test/java/org/eclipse/jetty/util/Utf8AppendableTest.java | 2 +- .../test/java/org/eclipse/jetty/util/Utf8LineParserTest.java | 2 +- .../eclipse/jetty/util/component/ContainerLifeCycleTest.java | 2 +- .../jetty/util/component/LifeCycleListenerNestedTest.java | 2 +- .../eclipse/jetty/util/component/LifeCycleListenerTest.java | 2 +- jetty-util/src/test/java/org/eclipse/jetty/util/log/Blue.java | 2 +- .../java/org/eclipse/jetty/util/log/CapturingJULHandler.java | 2 +- .../src/test/java/org/eclipse/jetty/util/log/Green.java | 2 +- .../test/java/org/eclipse/jetty/util/log/JavaUtilLogTest.java | 2 +- .../src/test/java/org/eclipse/jetty/util/log/LogTest.java | 2 +- .../test/java/org/eclipse/jetty/util/log/NamedLogTest.java | 2 +- jetty-util/src/test/java/org/eclipse/jetty/util/log/Red.java | 2 +- .../src/test/java/org/eclipse/jetty/util/log/Slf4jHelper.java | 2 +- .../test/java/org/eclipse/jetty/util/log/StdErrCapture.java | 2 +- .../test/java/org/eclipse/jetty/util/log/StdErrLogTest.java | 2 +- .../eclipse/jetty/util/resource/ClassPathResourceTest.java | 2 +- .../eclipse/jetty/util/resource/FileSystemResourceTest.java | 2 +- .../java/org/eclipse/jetty/util/resource/JarResourceTest.java | 2 +- .../java/org/eclipse/jetty/util/resource/JrtResourceTest.java | 2 +- .../org/eclipse/jetty/util/resource/ResourceAliasTest.java | 2 +- .../eclipse/jetty/util/resource/ResourceCollectionTest.java | 2 +- .../java/org/eclipse/jetty/util/resource/ResourceTest.java | 2 +- .../java/org/eclipse/jetty/util/security/CredentialTest.java | 2 +- .../java/org/eclipse/jetty/util/security/PasswordTest.java | 2 +- .../org/eclipse/jetty/util/ssl/SslContextFactoryTest.java | 2 +- .../org/eclipse/jetty/util/ssl/X509CertificateAdapter.java | 2 +- .../src/test/java/org/eclipse/jetty/util/ssl/X509Test.java | 2 +- .../eclipse/jetty/util/statistic/CounterStatisticTest.java | 2 +- .../org/eclipse/jetty/util/statistic/RateStatisticTest.java | 2 +- .../org/eclipse/jetty/util/statistic/SampleStatisticTest.java | 2 +- .../org/eclipse/jetty/util/thread/AbstractThreadPoolTest.java | 2 +- .../org/eclipse/jetty/util/thread/EatWhatYouKillTest.java | 2 +- .../org/eclipse/jetty/util/thread/ExecutorThreadPoolTest.java | 2 +- .../test/java/org/eclipse/jetty/util/thread/LockerTest.java | 2 +- .../org/eclipse/jetty/util/thread/QueuedThreadPoolTest.java | 2 +- .../eclipse/jetty/util/thread/ReservedThreadExecutorTest.java | 2 +- .../java/org/eclipse/jetty/util/thread/SchedulerTest.java | 2 +- .../test/java/org/eclipse/jetty/util/thread/SweeperTest.java | 2 +- .../eclipse/jetty/util/thread/ThreadClassLoaderScopeTest.java | 2 +- .../jetty/util/thread/strategy/ExecuteProduceConsumeTest.java | 2 +- .../jetty/util/thread/strategy/ExecutionStrategyTest.java | 2 +- .../main/java/org/eclipse/jetty/webapp/AbsoluteOrdering.java | 4 ++-- .../java/org/eclipse/jetty/webapp/AbstractConfiguration.java | 2 +- .../org/eclipse/jetty/webapp/CachingWebAppClassLoader.java | 2 +- .../main/java/org/eclipse/jetty/webapp/ClasspathPattern.java | 2 +- .../java/org/eclipse/jetty/webapp/CloneConfiguration.java | 2 +- .../src/main/java/org/eclipse/jetty/webapp/Configuration.java | 2 +- .../java/org/eclipse/jetty/webapp/DefaultsDescriptor.java | 2 +- .../src/main/java/org/eclipse/jetty/webapp/Descriptor.java | 2 +- .../java/org/eclipse/jetty/webapp/DescriptorProcessor.java | 2 +- .../java/org/eclipse/jetty/webapp/DiscoveredAnnotation.java | 2 +- .../java/org/eclipse/jetty/webapp/FragmentConfiguration.java | 2 +- .../java/org/eclipse/jetty/webapp/FragmentDescriptor.java | 2 +- .../eclipse/jetty/webapp/IterativeDescriptorProcessor.java | 2 +- .../src/main/java/org/eclipse/jetty/webapp/JarScanner.java | 2 +- .../org/eclipse/jetty/webapp/JettyWebXmlConfiguration.java | 2 +- .../src/main/java/org/eclipse/jetty/webapp/MetaData.java | 2 +- .../main/java/org/eclipse/jetty/webapp/MetaDataComplete.java | 2 +- .../java/org/eclipse/jetty/webapp/MetaInfConfiguration.java | 2 +- .../src/main/java/org/eclipse/jetty/webapp/Ordering.java | 2 +- .../src/main/java/org/eclipse/jetty/webapp/Origin.java | 2 +- .../java/org/eclipse/jetty/webapp/OverrideDescriptor.java | 2 +- .../main/java/org/eclipse/jetty/webapp/RelativeOrdering.java | 4 ++-- .../org/eclipse/jetty/webapp/StandardDescriptorProcessor.java | 2 +- .../main/java/org/eclipse/jetty/webapp/WebAppClassLoader.java | 2 +- .../src/main/java/org/eclipse/jetty/webapp/WebAppContext.java | 2 +- .../src/main/java/org/eclipse/jetty/webapp/WebDescriptor.java | 2 +- .../java/org/eclipse/jetty/webapp/WebInfConfiguration.java | 2 +- .../java/org/eclipse/jetty/webapp/WebXmlConfiguration.java | 2 +- .../src/main/java/org/eclipse/jetty/webapp/package-info.java | 2 +- jetty-webapp/src/test/java/org/acme/webapp/ClassInJarA.java | 2 +- .../java/org/eclipse/jetty/webapp/ClasspathPatternTest.java | 2 +- .../org/eclipse/jetty/webapp/MetaInfConfigurationTest.java | 2 +- .../src/test/java/org/eclipse/jetty/webapp/OrderingTest.java | 2 +- .../java/org/eclipse/jetty/webapp/URLStreamHandlerUtil.java | 2 +- .../java/org/eclipse/jetty/webapp/WebAppClassLoaderTest.java | 2 +- .../eclipse/jetty/webapp/WebAppClassLoaderUrlStreamTest.java | 2 +- .../test/java/org/eclipse/jetty/webapp/WebAppContextTest.java | 2 +- .../org/eclipse/jetty/webapp/WebInfConfigurationTest.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/AbstractJsrRemote.java | 2 +- .../eclipse/jetty/websocket/jsr356/BasicEndpointConfig.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/ClientContainer.java | 2 +- .../java/org/eclipse/jetty/websocket/jsr356/Configurable.java | 2 +- .../jetty/websocket/jsr356/ConfigurationException.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/DecoderFactory.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/EncoderFactory.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/InitException.java | 2 +- .../jetty/websocket/jsr356/JettyClientContainerProvider.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/JsrAsyncRemote.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/JsrBasicRemote.java | 2 +- .../java/org/eclipse/jetty/websocket/jsr356/JsrExtension.java | 2 +- .../eclipse/jetty/websocket/jsr356/JsrExtensionConfig.java | 2 +- .../eclipse/jetty/websocket/jsr356/JsrHandshakeResponse.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/JsrPongMessage.java | 2 +- .../java/org/eclipse/jetty/websocket/jsr356/JsrSession.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/JsrSessionFactory.java | 2 +- .../eclipse/jetty/websocket/jsr356/JsrUpgradeListener.java | 2 +- .../eclipse/jetty/websocket/jsr356/MessageHandlerFactory.java | 2 +- .../eclipse/jetty/websocket/jsr356/MessageHandlerWrapper.java | 2 +- .../java/org/eclipse/jetty/websocket/jsr356/MessageType.java | 2 +- .../jsr356/annotations/AnnotatedEndpointMetadata.java | 2 +- .../jsr356/annotations/AnnotatedEndpointScanner.java | 2 +- .../jetty/websocket/jsr356/annotations/IJsrMethod.java | 2 +- .../jetty/websocket/jsr356/annotations/IJsrParamId.java | 2 +- .../jetty/websocket/jsr356/annotations/JsrCallable.java | 2 +- .../eclipse/jetty/websocket/jsr356/annotations/JsrEvents.java | 2 +- .../jetty/websocket/jsr356/annotations/JsrParamIdBase.java | 2 +- .../jetty/websocket/jsr356/annotations/JsrParamIdBinary.java | 2 +- .../jetty/websocket/jsr356/annotations/JsrParamIdDecoder.java | 2 +- .../jetty/websocket/jsr356/annotations/JsrParamIdOnClose.java | 2 +- .../jetty/websocket/jsr356/annotations/JsrParamIdOnError.java | 2 +- .../websocket/jsr356/annotations/JsrParamIdOnMessage.java | 2 +- .../jetty/websocket/jsr356/annotations/JsrParamIdOnOpen.java | 2 +- .../jetty/websocket/jsr356/annotations/JsrParamIdPong.java | 2 +- .../jetty/websocket/jsr356/annotations/JsrParamIdText.java | 2 +- .../jetty/websocket/jsr356/annotations/OnCloseCallable.java | 2 +- .../jetty/websocket/jsr356/annotations/OnErrorCallable.java | 2 +- .../websocket/jsr356/annotations/OnMessageBinaryCallable.java | 2 +- .../jsr356/annotations/OnMessageBinaryStreamCallable.java | 2 +- .../jetty/websocket/jsr356/annotations/OnMessageCallable.java | 2 +- .../websocket/jsr356/annotations/OnMessagePongCallable.java | 2 +- .../websocket/jsr356/annotations/OnMessageTextCallable.java | 2 +- .../jsr356/annotations/OnMessageTextStreamCallable.java | 2 +- .../jetty/websocket/jsr356/annotations/OnOpenCallable.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/annotations/Param.java | 2 +- .../jsr356/client/AnnotatedClientEndpointConfig.java | 2 +- .../jsr356/client/AnnotatedClientEndpointMetadata.java | 2 +- .../websocket/jsr356/client/EmptyClientEndpointConfig.java | 2 +- .../jetty/websocket/jsr356/client/EmptyConfigurator.java | 2 +- .../jetty/websocket/jsr356/client/JsrClientEndpointImpl.java | 2 +- .../jetty/websocket/jsr356/client/SimpleEndpointMetadata.java | 2 +- .../jetty/websocket/jsr356/decoders/AbstractDecoder.java | 2 +- .../jetty/websocket/jsr356/decoders/BooleanDecoder.java | 2 +- .../jetty/websocket/jsr356/decoders/ByteArrayDecoder.java | 2 +- .../jetty/websocket/jsr356/decoders/ByteBufferDecoder.java | 2 +- .../eclipse/jetty/websocket/jsr356/decoders/ByteDecoder.java | 2 +- .../jetty/websocket/jsr356/decoders/CharacterDecoder.java | 2 +- .../jetty/websocket/jsr356/decoders/DoubleDecoder.java | 2 +- .../eclipse/jetty/websocket/jsr356/decoders/FloatDecoder.java | 2 +- .../jetty/websocket/jsr356/decoders/InputStreamDecoder.java | 2 +- .../jetty/websocket/jsr356/decoders/IntegerDecoder.java | 2 +- .../eclipse/jetty/websocket/jsr356/decoders/LongDecoder.java | 2 +- .../jetty/websocket/jsr356/decoders/PongMessageDecoder.java | 2 +- .../jsr356/decoders/PrimitiveDecoderMetadataSet.java | 2 +- .../jetty/websocket/jsr356/decoders/ReaderDecoder.java | 2 +- .../eclipse/jetty/websocket/jsr356/decoders/ShortDecoder.java | 2 +- .../jetty/websocket/jsr356/decoders/StringDecoder.java | 2 +- .../jetty/websocket/jsr356/encoders/AbstractEncoder.java | 2 +- .../jetty/websocket/jsr356/encoders/BooleanEncoder.java | 2 +- .../jetty/websocket/jsr356/encoders/ByteArrayEncoder.java | 2 +- .../jetty/websocket/jsr356/encoders/ByteBufferEncoder.java | 2 +- .../eclipse/jetty/websocket/jsr356/encoders/ByteEncoder.java | 2 +- .../jetty/websocket/jsr356/encoders/CharacterEncoder.java | 2 +- .../jetty/websocket/jsr356/encoders/DefaultBinaryEncoder.java | 2 +- .../websocket/jsr356/encoders/DefaultBinaryStreamEncoder.java | 2 +- .../jetty/websocket/jsr356/encoders/DefaultTextEncoder.java | 2 +- .../websocket/jsr356/encoders/DefaultTextStreamEncoder.java | 2 +- .../jetty/websocket/jsr356/encoders/DoubleEncoder.java | 2 +- .../jetty/websocket/jsr356/encoders/EncodeFailedFuture.java | 2 +- .../eclipse/jetty/websocket/jsr356/encoders/FloatEncoder.java | 2 +- .../jetty/websocket/jsr356/encoders/IntegerEncoder.java | 2 +- .../eclipse/jetty/websocket/jsr356/encoders/LongEncoder.java | 2 +- .../jsr356/encoders/PrimitiveEncoderMetadataSet.java | 2 +- .../eclipse/jetty/websocket/jsr356/encoders/ShortEncoder.java | 2 +- .../jetty/websocket/jsr356/encoders/StringEncoder.java | 2 +- .../websocket/jsr356/endpoints/AbstractJsrEventDriver.java | 2 +- .../jetty/websocket/jsr356/endpoints/EndpointInstance.java | 2 +- .../websocket/jsr356/endpoints/JsrAnnotatedEventDriver.java | 2 +- .../websocket/jsr356/endpoints/JsrEndpointEventDriver.java | 2 +- .../jetty/websocket/jsr356/endpoints/JsrEndpointImpl.java | 2 +- .../websocket/jsr356/endpoints/JsrEventDriverFactory.java | 2 +- .../jetty/websocket/jsr356/messages/BinaryPartialMessage.java | 2 +- .../websocket/jsr356/messages/BinaryPartialOnMessage.java | 2 +- .../jetty/websocket/jsr356/messages/BinaryWholeMessage.java | 2 +- .../websocket/jsr356/messages/SendHandlerWriteCallback.java | 2 +- .../jetty/websocket/jsr356/messages/TextPartialMessage.java | 2 +- .../jetty/websocket/jsr356/messages/TextPartialOnMessage.java | 2 +- .../jetty/websocket/jsr356/messages/TextWholeMessage.java | 2 +- .../jetty/websocket/jsr356/metadata/CoderMetadata.java | 2 +- .../jetty/websocket/jsr356/metadata/CoderMetadataSet.java | 2 +- .../jetty/websocket/jsr356/metadata/DecoderMetadata.java | 2 +- .../jetty/websocket/jsr356/metadata/DecoderMetadataSet.java | 2 +- .../websocket/jsr356/metadata/DuplicateCoderException.java | 2 +- .../jetty/websocket/jsr356/metadata/EncoderMetadata.java | 2 +- .../jetty/websocket/jsr356/metadata/EncoderMetadataSet.java | 2 +- .../jetty/websocket/jsr356/metadata/EndpointMetadata.java | 2 +- .../websocket/jsr356/metadata/MessageHandlerMetadata.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/utils/Primitives.java | 2 +- .../eclipse/jetty/websocket/jsr356/AnnotatedEchoClient.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/AnnotatedEchoTest.java | 2 +- .../jetty/websocket/jsr356/AnnotatedEndpointClient.java | 2 +- .../jetty/websocket/jsr356/AnnotatedEndpointConfigTest.java | 2 +- .../jetty/websocket/jsr356/AnnotatedEndpointConfigurator.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/ConfiguratorTest.java | 2 +- .../java/org/eclipse/jetty/websocket/jsr356/CookiesTest.java | 2 +- .../eclipse/jetty/websocket/jsr356/DecoderFactoryTest.java | 2 +- .../jetty/websocket/jsr356/DecoderReaderManySmallTest.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/DecoderReaderTest.java | 2 +- .../jetty/websocket/jsr356/DelayedStartClientTest.java | 2 +- .../eclipse/jetty/websocket/jsr356/EchoCaptureHandler.java | 2 +- .../java/org/eclipse/jetty/websocket/jsr356/EchoHandler.java | 2 +- .../eclipse/jetty/websocket/jsr356/EncoderFactoryTest.java | 2 +- .../java/org/eclipse/jetty/websocket/jsr356/EncoderTest.java | 2 +- .../eclipse/jetty/websocket/jsr356/EndpointEchoClient.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/EndpointEchoTest.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/JettyEchoSocket.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/JsrSessionTest.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/LargeMessageTest.java | 2 +- .../jetty/websocket/jsr356/MessageHandlerFactoryTest.java | 2 +- .../java/org/eclipse/jetty/websocket/jsr356/MessageQueue.java | 2 +- .../eclipse/jetty/websocket/jsr356/MessageReceivingTest.java | 2 +- .../jetty/websocket/jsr356/annotations/DateTextSocket.java | 2 +- .../websocket/jsr356/annotations/JsrParamIdDecoderTest.java | 2 +- .../jetty/websocket/jsr356/decoders/BadDualDecoder.java | 2 +- .../eclipse/jetty/websocket/jsr356/decoders/DateDecoder.java | 2 +- .../jetty/websocket/jsr356/decoders/DateTimeDecoder.java | 2 +- .../jetty/websocket/jsr356/decoders/IntegerDecoderTest.java | 2 +- .../jsr356/decoders/PrimitiveDecoderMetadataSetTest.java | 2 +- .../eclipse/jetty/websocket/jsr356/decoders/TimeDecoder.java | 2 +- .../jetty/websocket/jsr356/decoders/ValidDualDecoder.java | 2 +- .../eclipse/jetty/websocket/jsr356/demo/ExampleClient.java | 2 +- .../eclipse/jetty/websocket/jsr356/demo/ExampleSocket.java | 2 +- .../jetty/websocket/jsr356/encoders/BadDualEncoder.java | 2 +- .../eclipse/jetty/websocket/jsr356/encoders/DateEncoder.java | 2 +- .../jetty/websocket/jsr356/encoders/DateTimeEncoder.java | 2 +- .../eclipse/jetty/websocket/jsr356/encoders/DualEncoder.java | 2 +- .../eclipse/jetty/websocket/jsr356/encoders/TimeEncoder.java | 2 +- .../jetty/websocket/jsr356/encoders/ValidDualEncoder.java | 2 +- .../ClientAnnotatedEndpointScanner_GoodSignaturesTest.java | 2 +- .../ClientAnnotatedEndpointScanner_InvalidSignaturesTest.java | 2 +- .../eclipse/jetty/websocket/jsr356/endpoints/OnCloseTest.java | 2 +- .../jetty/websocket/jsr356/endpoints/TrackingSocket.java | 2 +- .../endpoints/samples/BasicBinaryMessageByteBufferSocket.java | 2 +- .../jsr356/endpoints/samples/BasicErrorSessionSocket.java | 2 +- .../endpoints/samples/BasicErrorSessionThrowableSocket.java | 2 +- .../websocket/jsr356/endpoints/samples/BasicErrorSocket.java | 2 +- .../endpoints/samples/BasicErrorThrowableSessionSocket.java | 2 +- .../jsr356/endpoints/samples/BasicErrorThrowableSocket.java | 2 +- .../jsr356/endpoints/samples/BasicInputStreamSocket.java | 2 +- .../samples/BasicInputStreamWithThrowableSocket.java | 2 +- .../jsr356/endpoints/samples/BasicOpenCloseSessionSocket.java | 2 +- .../jsr356/endpoints/samples/BasicOpenCloseSocket.java | 2 +- .../jsr356/endpoints/samples/BasicOpenSessionSocket.java | 2 +- .../websocket/jsr356/endpoints/samples/BasicOpenSocket.java | 2 +- .../jsr356/endpoints/samples/BasicPongMessageSocket.java | 2 +- .../endpoints/samples/BasicTextMessageStringSocket.java | 2 +- .../jsr356/endpoints/samples/InvalidCloseIntSocket.java | 2 +- .../jsr356/endpoints/samples/InvalidErrorErrorSocket.java | 2 +- .../jsr356/endpoints/samples/InvalidErrorExceptionSocket.java | 2 +- .../jsr356/endpoints/samples/InvalidErrorIntSocket.java | 2 +- .../endpoints/samples/InvalidOpenCloseReasonSocket.java | 2 +- .../jsr356/endpoints/samples/InvalidOpenIntSocket.java | 2 +- .../jsr356/endpoints/samples/InvalidOpenSessionIntSocket.java | 2 +- .../endpoints/samples/close/CloseEndpointConfigSocket.java | 2 +- .../endpoints/samples/close/CloseReasonSessionSocket.java | 2 +- .../jsr356/endpoints/samples/close/CloseReasonSocket.java | 2 +- .../endpoints/samples/close/CloseSessionReasonSocket.java | 2 +- .../jsr356/endpoints/samples/close/CloseSessionSocket.java | 2 +- .../websocket/jsr356/endpoints/samples/close/CloseSocket.java | 2 +- .../jetty/websocket/jsr356/handlers/BaseMessageHandler.java | 2 +- .../websocket/jsr356/handlers/ByteArrayPartialHandler.java | 2 +- .../websocket/jsr356/handlers/ByteArrayWholeHandler.java | 2 +- .../websocket/jsr356/handlers/ByteBufferPartialHandler.java | 2 +- .../websocket/jsr356/handlers/ByteBufferWholeHandler.java | 2 +- .../jetty/websocket/jsr356/handlers/ComboMessageHandler.java | 2 +- .../websocket/jsr356/handlers/ExtendedMessageHandler.java | 2 +- .../websocket/jsr356/handlers/InputStreamWholeHandler.java | 2 +- .../jetty/websocket/jsr356/handlers/LongMessageHandler.java | 2 +- .../jetty/websocket/jsr356/handlers/ReaderWholeHandler.java | 2 +- .../jetty/websocket/jsr356/handlers/StringPartialHandler.java | 2 +- .../jetty/websocket/jsr356/handlers/StringWholeHandler.java | 2 +- .../websocket/jsr356/metadata/DecoderMetadataSetTest.java | 2 +- .../websocket/jsr356/metadata/EncoderMetadataSetTest.java | 2 +- .../websocket/jsr356/misbehaving/AnnotatedRuntimeOnOpen.java | 2 +- .../websocket/jsr356/misbehaving/EndpointRuntimeOnOpen.java | 2 +- .../websocket/jsr356/misbehaving/MisbehavingClassTest.java | 2 +- .../websocket/jsr356/samples/AbstractStringEndpoint.java | 2 +- .../eclipse/jetty/websocket/jsr356/samples/DummyEndpoint.java | 2 +- .../jetty/websocket/jsr356/samples/EchoStringEndpoint.java | 2 +- .../eclipse/jetty/websocket/jsr356/samples/ExtDecoder.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/samples/Fruit.java | 2 +- .../jetty/websocket/jsr356/samples/FruitBinaryEncoder.java | 2 +- .../eclipse/jetty/websocket/jsr356/samples/FruitDecoder.java | 2 +- .../jetty/websocket/jsr356/samples/FruitTextEncoder.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/samples/IntSocket.java | 2 +- .../jetty/websocket/jsr356/utils/ReflectUtilsTest.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/utils/TypeTree.java | 2 +- .../jsr356/server/AnnotatedServerEndpointConfig.java | 2 +- .../jsr356/server/AnnotatedServerEndpointMetadata.java | 2 +- .../websocket/jsr356/server/BasicServerEndpointConfig.java | 2 +- .../websocket/jsr356/server/ContainerDefaultConfigurator.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/server/JsrCreator.java | 2 +- .../jetty/websocket/jsr356/server/JsrHandshakeRequest.java | 2 +- .../jetty/websocket/jsr356/server/JsrHandshakeResponse.java | 2 +- .../eclipse/jetty/websocket/jsr356/server/JsrPathParamId.java | 2 +- .../jetty/websocket/jsr356/server/JsrServerEndpointImpl.java | 2 +- .../websocket/jsr356/server/JsrServerExtendsEndpointImpl.java | 2 +- .../jsr356/server/PathParamServerEndpointConfig.java | 2 +- .../jetty/websocket/jsr356/server/ServerContainer.java | 2 +- .../jetty/websocket/jsr356/server/ServerEndpointMetadata.java | 2 +- .../websocket/jsr356/server/SimpleServerEndpointMetadata.java | 2 +- .../server/deploy/WebSocketServerContainerInitializer.java | 2 +- .../src/test/java/examples/GetHttpSessionConfigurator.java | 2 +- .../src/test/java/examples/GetHttpSessionSocket.java | 2 +- .../src/test/java/examples/MyAuthedConfigurator.java | 2 +- .../src/test/java/examples/MyAuthedSocket.java | 2 +- .../src/test/java/examples/StreamingEchoSocket.java | 2 +- .../eclipse/jetty/websocket/jsr356/server/AltFilterTest.java | 2 +- .../websocket/jsr356/server/AnnotatedServerEndpointTest.java | 2 +- .../jetty/websocket/jsr356/server/BasicEndpointTest.java | 2 +- .../jetty/websocket/jsr356/server/BinaryStreamTest.java | 2 +- .../jetty/websocket/jsr356/server/ConfiguratorTest.java | 2 +- .../jsr356/server/DelayedStartClientOnServerTest.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/server/EchoCase.java | 2 +- .../jetty/websocket/jsr356/server/EchoClientSocket.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/server/EchoTest.java | 2 +- .../websocket/jsr356/server/ExtensionStackProcessingTest.java | 2 +- .../jetty/websocket/jsr356/server/IdleTimeoutTest.java | 2 +- .../jetty/websocket/jsr356/server/JettyEchoSocket.java | 2 +- .../jsr356/server/JettyServerEndpointConfiguratorTest.java | 2 +- .../jetty/websocket/jsr356/server/JsrBatchModeTest.java | 2 +- .../jetty/websocket/jsr356/server/LargeAnnotatedTest.java | 2 +- .../server/LargeClientContainerInitAsServerListener.java | 2 +- .../websocket/jsr356/server/LargeClientContainerServlet.java | 2 +- .../jetty/websocket/jsr356/server/LargeContainerTest.java | 2 +- .../jsr356/server/LargeNestedClientContainerTest.java | 2 +- .../jsr356/server/LargeOnOpenSessionConfiguredTest.java | 2 +- .../server/LargeServerContainerAsClientContainerServlet.java | 2 +- .../jetty/websocket/jsr356/server/MemoryUsageTest.java | 2 +- .../jetty/websocket/jsr356/server/OnMessageReturnTest.java | 2 +- .../eclipse/jetty/websocket/jsr356/server/OnPartialTest.java | 2 +- .../eclipse/jetty/websocket/jsr356/server/PingPongTest.java | 2 +- .../ServerAnnotatedEndpointScanner_GoodSignaturesTest.java | 2 +- .../ServerAnnotatedEndpointScanner_InvalidSignaturesTest.java | 2 +- .../jetty/websocket/jsr356/server/SessionAltConfig.java | 2 +- .../jetty/websocket/jsr356/server/SessionInfoEndpoint.java | 2 +- .../jetty/websocket/jsr356/server/SessionInfoSocket.java | 2 +- .../eclipse/jetty/websocket/jsr356/server/SessionTest.java | 2 +- .../jetty/websocket/jsr356/server/SessionTrackingTest.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/server/StreamTest.java | 2 +- .../eclipse/jetty/websocket/jsr356/server/TextStreamTest.java | 2 +- .../eclipse/jetty/websocket/jsr356/server/TrackingSocket.java | 2 +- .../org/eclipse/jetty/websocket/jsr356/server/WSServer.java | 2 +- .../jsr356/server/browser/JsrBrowserConfigurator.java | 2 +- .../websocket/jsr356/server/browser/JsrBrowserDebugTool.java | 2 +- .../websocket/jsr356/server/browser/JsrBrowserSocket.java | 2 +- .../server/samples/BasicBinaryMessageByteBufferSocket.java | 2 +- .../jsr356/server/samples/BasicCloseReasonSessionSocket.java | 2 +- .../jsr356/server/samples/BasicCloseReasonSocket.java | 2 +- .../jsr356/server/samples/BasicCloseSessionReasonSocket.java | 2 +- .../websocket/jsr356/server/samples/BasicCloseSocket.java | 2 +- .../jsr356/server/samples/BasicErrorSessionSocket.java | 2 +- .../server/samples/BasicErrorSessionThrowableSocket.java | 2 +- .../websocket/jsr356/server/samples/BasicErrorSocket.java | 2 +- .../server/samples/BasicErrorThrowableSessionSocket.java | 2 +- .../jsr356/server/samples/BasicErrorThrowableSocket.java | 2 +- .../jsr356/server/samples/BasicOpenCloseSessionSocket.java | 2 +- .../websocket/jsr356/server/samples/BasicOpenCloseSocket.java | 2 +- .../jsr356/server/samples/BasicOpenSessionSocket.java | 2 +- .../websocket/jsr356/server/samples/BasicOpenSocket.java | 2 +- .../jsr356/server/samples/BasicPongMessageSocket.java | 2 +- .../jsr356/server/samples/BasicTextMessageStringSocket.java | 2 +- .../jsr356/server/samples/InvalidCloseIntSocket.java | 2 +- .../jsr356/server/samples/InvalidErrorErrorSocket.java | 2 +- .../jsr356/server/samples/InvalidErrorExceptionSocket.java | 2 +- .../jsr356/server/samples/InvalidErrorIntSocket.java | 2 +- .../jsr356/server/samples/InvalidOpenCloseReasonSocket.java | 2 +- .../websocket/jsr356/server/samples/InvalidOpenIntSocket.java | 2 +- .../jsr356/server/samples/InvalidOpenSessionIntSocket.java | 2 +- .../server/samples/StatelessTextMessageStringSocket.java | 2 +- .../websocket/jsr356/server/samples/beans/DateDecoder.java | 2 +- .../websocket/jsr356/server/samples/beans/DateEncoder.java | 2 +- .../websocket/jsr356/server/samples/beans/DateTextSocket.java | 2 +- .../jsr356/server/samples/beans/DateTimeDecoder.java | 2 +- .../jsr356/server/samples/beans/DateTimeEncoder.java | 2 +- .../websocket/jsr356/server/samples/beans/TimeDecoder.java | 2 +- .../websocket/jsr356/server/samples/beans/TimeEncoder.java | 2 +- .../jsr356/server/samples/binary/ByteBufferSocket.java | 2 +- .../jsr356/server/samples/echo/BasicEchoEndpoint.java | 2 +- .../samples/echo/BasicEchoEndpointConfigContextListener.java | 2 +- .../server/samples/echo/BasicEchoEndpointContextListener.java | 2 +- .../websocket/jsr356/server/samples/echo/BasicEchoSocket.java | 2 +- .../samples/echo/BasicEchoSocketConfigContextListener.java | 2 +- .../server/samples/echo/BasicEchoSocketContextListener.java | 2 +- .../jsr356/server/samples/echo/ConfiguredEchoSocket.java | 2 +- .../jsr356/server/samples/echo/EchoReturnEndpoint.java | 2 +- .../jsr356/server/samples/echo/EchoSocketConfigurator.java | 2 +- .../jsr356/server/samples/echo/LargeEchoAnnotatedSocket.java | 2 +- .../jsr356/server/samples/echo/LargeEchoConfiguredSocket.java | 2 +- .../jsr356/server/samples/echo/LargeEchoContextListener.java | 2 +- .../jsr356/server/samples/echo/LargeEchoDefaultSocket.java | 2 +- .../samples/idletimeout/IdleTimeoutContextListener.java | 2 +- .../server/samples/idletimeout/OnOpenIdleTimeoutEndpoint.java | 2 +- .../server/samples/idletimeout/OnOpenIdleTimeoutSocket.java | 2 +- .../server/samples/partial/PartialTextSessionSocket.java | 2 +- .../jsr356/server/samples/partial/PartialTextSocket.java | 2 +- .../jsr356/server/samples/partial/PartialTrackingSocket.java | 2 +- .../jsr356/server/samples/pong/PongContextListener.java | 2 +- .../jsr356/server/samples/pong/PongMessageEndpoint.java | 2 +- .../websocket/jsr356/server/samples/pong/PongSocket.java | 2 +- .../samples/primitives/BooleanObjectTextParamSocket.java | 2 +- .../server/samples/primitives/BooleanObjectTextSocket.java | 2 +- .../server/samples/primitives/BooleanTextParamSocket.java | 2 +- .../jsr356/server/samples/primitives/BooleanTextSocket.java | 2 +- .../server/samples/primitives/ByteObjectTextSocket.java | 2 +- .../jsr356/server/samples/primitives/ByteTextSocket.java | 2 +- .../jsr356/server/samples/primitives/CharTextSocket.java | 2 +- .../server/samples/primitives/CharacterObjectTextSocket.java | 2 +- .../server/samples/primitives/DoubleObjectTextSocket.java | 2 +- .../jsr356/server/samples/primitives/DoubleTextSocket.java | 2 +- .../server/samples/primitives/FloatObjectTextSocket.java | 2 +- .../jsr356/server/samples/primitives/FloatTextSocket.java | 2 +- .../jsr356/server/samples/primitives/IntParamTextSocket.java | 2 +- .../jsr356/server/samples/primitives/IntTextSocket.java | 2 +- .../samples/primitives/IntegerObjectParamTextSocket.java | 2 +- .../server/samples/primitives/IntegerObjectTextSocket.java | 2 +- .../server/samples/primitives/LongObjectTextSocket.java | 2 +- .../jsr356/server/samples/primitives/LongTextSocket.java | 2 +- .../server/samples/primitives/ShortObjectTextSocket.java | 2 +- .../jsr356/server/samples/primitives/ShortTextSocket.java | 2 +- .../jsr356/server/samples/streaming/InputStreamSocket.java | 2 +- .../jsr356/server/samples/streaming/ReaderParamSocket.java | 2 +- .../jsr356/server/samples/streaming/ReaderSocket.java | 2 +- .../samples/streaming/StringReturnReaderParamSocket.java | 2 +- .../org/eclipse/jetty/websocket/api/BadPayloadException.java | 2 +- .../main/java/org/eclipse/jetty/websocket/api/BatchMode.java | 2 +- .../java/org/eclipse/jetty/websocket/api/CloseException.java | 2 +- .../java/org/eclipse/jetty/websocket/api/CloseStatus.java | 2 +- .../jetty/websocket/api/InvalidWebSocketException.java | 2 +- .../eclipse/jetty/websocket/api/MessageTooLargeException.java | 2 +- .../eclipse/jetty/websocket/api/PolicyViolationException.java | 2 +- .../org/eclipse/jetty/websocket/api/ProtocolException.java | 2 +- .../java/org/eclipse/jetty/websocket/api/RemoteEndpoint.java | 2 +- .../main/java/org/eclipse/jetty/websocket/api/Session.java | 2 +- .../main/java/org/eclipse/jetty/websocket/api/StatusCode.java | 2 +- .../java/org/eclipse/jetty/websocket/api/SuspendToken.java | 2 +- .../org/eclipse/jetty/websocket/api/UpgradeException.java | 2 +- .../java/org/eclipse/jetty/websocket/api/UpgradeRequest.java | 2 +- .../java/org/eclipse/jetty/websocket/api/UpgradeResponse.java | 2 +- .../org/eclipse/jetty/websocket/api/WebSocketAdapter.java | 2 +- .../org/eclipse/jetty/websocket/api/WebSocketBehavior.java | 2 +- .../jetty/websocket/api/WebSocketConnectionListener.java | 2 +- .../org/eclipse/jetty/websocket/api/WebSocketConstants.java | 2 +- .../org/eclipse/jetty/websocket/api/WebSocketException.java | 2 +- .../eclipse/jetty/websocket/api/WebSocketFrameListener.java | 2 +- .../org/eclipse/jetty/websocket/api/WebSocketListener.java | 2 +- .../eclipse/jetty/websocket/api/WebSocketPartialListener.java | 2 +- .../jetty/websocket/api/WebSocketPingPongListener.java | 2 +- .../java/org/eclipse/jetty/websocket/api/WebSocketPolicy.java | 2 +- .../jetty/websocket/api/WebSocketTimeoutException.java | 2 +- .../java/org/eclipse/jetty/websocket/api/WriteCallback.java | 2 +- .../jetty/websocket/api/annotations/OnWebSocketClose.java | 2 +- .../jetty/websocket/api/annotations/OnWebSocketConnect.java | 2 +- .../jetty/websocket/api/annotations/OnWebSocketError.java | 2 +- .../jetty/websocket/api/annotations/OnWebSocketFrame.java | 2 +- .../jetty/websocket/api/annotations/OnWebSocketMessage.java | 2 +- .../eclipse/jetty/websocket/api/annotations/WebSocket.java | 2 +- .../eclipse/jetty/websocket/api/annotations/package-info.java | 2 +- .../org/eclipse/jetty/websocket/api/extensions/Extension.java | 2 +- .../jetty/websocket/api/extensions/ExtensionConfig.java | 2 +- .../jetty/websocket/api/extensions/ExtensionFactory.java | 2 +- .../org/eclipse/jetty/websocket/api/extensions/Frame.java | 2 +- .../jetty/websocket/api/extensions/IncomingFrames.java | 2 +- .../jetty/websocket/api/extensions/OutgoingFrames.java | 2 +- .../eclipse/jetty/websocket/api/extensions/package-info.java | 2 +- .../java/org/eclipse/jetty/websocket/api/package-info.java | 2 +- .../java/org/eclipse/jetty/websocket/api/util/QuoteUtil.java | 2 +- .../main/java/org/eclipse/jetty/websocket/api/util/WSURI.java | 2 +- .../org/eclipse/jetty/websocket/api/util/package-info.java | 2 +- .../jetty/websocket/api/extensions/ExtensionConfigTest.java | 2 +- .../org/eclipse/jetty/websocket/api/util/QuoteUtilTest.java | 2 +- .../eclipse/jetty/websocket/api/util/QuoteUtil_QuoteTest.java | 2 +- .../java/org/eclipse/jetty/websocket/api/util/WSURITest.java | 2 +- .../eclipse/jetty/websocket/client/ClientUpgradeRequest.java | 2 +- .../eclipse/jetty/websocket/client/ClientUpgradeResponse.java | 2 +- .../jetty/websocket/client/DefaultHttpClientProvider.java | 2 +- .../eclipse/jetty/websocket/client/HttpClientProvider.java | 2 +- .../java/org/eclipse/jetty/websocket/client/NoOpEndpoint.java | 2 +- .../org/eclipse/jetty/websocket/client/WebSocketClient.java | 2 +- .../jetty/websocket/client/WebSocketUpgradeRequest.java | 2 +- .../jetty/websocket/client/XmlBasedHttpClientProvider.java | 2 +- .../eclipse/jetty/websocket/client/io/ConnectionManager.java | 2 +- .../eclipse/jetty/websocket/client/io/UpgradeListener.java | 2 +- .../jetty/websocket/client/io/WebSocketClientConnection.java | 2 +- .../org/eclipse/jetty/websocket/client/io/package-info.java | 2 +- .../org/eclipse/jetty/websocket/client/masks/FixedMasker.java | 2 +- .../java/org/eclipse/jetty/websocket/client/masks/Masker.java | 2 +- .../eclipse/jetty/websocket/client/masks/RandomMasker.java | 2 +- .../org/eclipse/jetty/websocket/client/masks/ZeroMasker.java | 2 +- .../eclipse/jetty/websocket/client/masks/package-info.java | 2 +- .../java/org/eclipse/jetty/websocket/client/package-info.java | 2 +- .../src/test/java/examples/SimpleEchoClient.java | 2 +- .../src/test/java/examples/SimpleEchoSocket.java | 2 +- .../org/eclipse/jetty/websocket/client/BadNetworkTest.java | 2 +- .../org/eclipse/jetty/websocket/client/ClientCloseTest.java | 2 +- .../org/eclipse/jetty/websocket/client/ClientConnectTest.java | 2 +- .../org/eclipse/jetty/websocket/client/ClientWriteThread.java | 2 +- .../eclipse/jetty/websocket/client/ConnectionManagerTest.java | 2 +- .../java/org/eclipse/jetty/websocket/client/CookieTest.java | 2 +- .../eclipse/jetty/websocket/client/HttpClientInitTest.java | 2 +- .../eclipse/jetty/websocket/client/JettyTrackingSocket.java | 2 +- .../org/eclipse/jetty/websocket/client/MaxMessageSocket.java | 2 +- .../org/eclipse/jetty/websocket/client/ServerWriteThread.java | 2 +- .../java/org/eclipse/jetty/websocket/client/SessionTest.java | 2 +- .../org/eclipse/jetty/websocket/client/SlowClientTest.java | 2 +- .../org/eclipse/jetty/websocket/client/SlowServerTest.java | 2 +- .../jetty/websocket/client/TomcatServerQuirksTest.java | 2 +- .../jetty/websocket/client/WebSocketClientBadUriTest.java | 2 +- .../jetty/websocket/client/WebSocketClientInitTest.java | 2 +- .../eclipse/jetty/websocket/client/WebSocketClientTest.java | 2 +- .../eclipse/jetty/websocket/client/examples/TestClient.java | 2 +- .../java/org/eclipse/jetty/websocket/common/AcceptHash.java | 2 +- .../eclipse/jetty/websocket/common/BlockingWriteCallback.java | 2 +- .../java/org/eclipse/jetty/websocket/common/CloseInfo.java | 2 +- .../org/eclipse/jetty/websocket/common/ConnectionState.java | 2 +- .../java/org/eclipse/jetty/websocket/common/Generator.java | 2 +- .../org/eclipse/jetty/websocket/common/LogicalConnection.java | 2 +- .../main/java/org/eclipse/jetty/websocket/common/OpCode.java | 2 +- .../main/java/org/eclipse/jetty/websocket/common/Parser.java | 2 +- .../eclipse/jetty/websocket/common/RemoteEndpointFactory.java | 2 +- .../org/eclipse/jetty/websocket/common/SessionFactory.java | 2 +- .../eclipse/jetty/websocket/common/UpgradeRequestAdapter.java | 2 +- .../jetty/websocket/common/UpgradeResponseAdapter.java | 2 +- .../org/eclipse/jetty/websocket/common/WebSocketFrame.java | 2 +- .../jetty/websocket/common/WebSocketRemoteEndpoint.java | 2 +- .../org/eclipse/jetty/websocket/common/WebSocketSession.java | 2 +- .../jetty/websocket/common/WebSocketSessionFactory.java | 2 +- .../jetty/websocket/common/events/AbstractEventDriver.java | 2 +- .../eclipse/jetty/websocket/common/events/EventDriver.java | 2 +- .../jetty/websocket/common/events/EventDriverFactory.java | 2 +- .../jetty/websocket/common/events/EventDriverImpl.java | 2 +- .../websocket/common/events/JettyAnnotatedEventDriver.java | 2 +- .../jetty/websocket/common/events/JettyAnnotatedImpl.java | 2 +- .../jetty/websocket/common/events/JettyAnnotatedMetadata.java | 2 +- .../jetty/websocket/common/events/JettyAnnotatedScanner.java | 2 +- .../websocket/common/events/JettyListenerEventDriver.java | 2 +- .../jetty/websocket/common/events/JettyListenerImpl.java | 2 +- .../org/eclipse/jetty/websocket/common/events/ParamList.java | 2 +- .../events/annotated/AbstractMethodAnnotationScanner.java | 2 +- .../websocket/common/events/annotated/CallableMethod.java | 2 +- .../jetty/websocket/common/events/annotated/EventMethod.java | 2 +- .../jetty/websocket/common/events/annotated/EventMethods.java | 2 +- .../common/events/annotated/InvalidSignatureException.java | 2 +- .../events/annotated/OptionalSessionCallableMethod.java | 2 +- .../eclipse/jetty/websocket/common/events/package-info.java | 2 +- .../jetty/websocket/common/extensions/AbstractExtension.java | 2 +- .../jetty/websocket/common/extensions/ExtensionStack.java | 2 +- .../websocket/common/extensions/FrameCaptureExtension.java | 2 +- .../common/extensions/WebSocketExtensionFactory.java | 2 +- .../websocket/common/extensions/compress/ByteAccumulator.java | 2 +- .../common/extensions/compress/CompressExtension.java | 2 +- .../common/extensions/compress/DeflateFrameExtension.java | 2 +- .../extensions/compress/PerMessageDeflateExtension.java | 2 +- .../extensions/compress/XWebkitDeflateFrameExtension.java | 2 +- .../websocket/common/extensions/compress/package-info.java | 2 +- .../common/extensions/fragment/FragmentExtension.java | 2 +- .../websocket/common/extensions/fragment/package-info.java | 2 +- .../common/extensions/identity/IdentityExtension.java | 2 +- .../websocket/common/extensions/identity/package-info.java | 2 +- .../jetty/websocket/common/extensions/package-info.java | 2 +- .../eclipse/jetty/websocket/common/frames/BinaryFrame.java | 2 +- .../org/eclipse/jetty/websocket/common/frames/CloseFrame.java | 2 +- .../jetty/websocket/common/frames/ContinuationFrame.java | 2 +- .../eclipse/jetty/websocket/common/frames/ControlFrame.java | 2 +- .../org/eclipse/jetty/websocket/common/frames/DataFrame.java | 2 +- .../org/eclipse/jetty/websocket/common/frames/PingFrame.java | 2 +- .../org/eclipse/jetty/websocket/common/frames/PongFrame.java | 2 +- .../jetty/websocket/common/frames/ReadOnlyDelegatedFrame.java | 2 +- .../org/eclipse/jetty/websocket/common/frames/TextFrame.java | 2 +- .../websocket/common/io/AbstractWebSocketConnection.java | 2 +- .../org/eclipse/jetty/websocket/common/io/FrameFlusher.java | 2 +- .../org/eclipse/jetty/websocket/common/io/FramePipes.java | 2 +- .../jetty/websocket/common/io/FutureWriteCallback.java | 2 +- .../java/org/eclipse/jetty/websocket/common/io/IOState.java | 2 +- .../common/io/http/HttpResponseHeaderParseListener.java | 2 +- .../websocket/common/io/http/HttpResponseHeaderParser.java | 2 +- .../org/eclipse/jetty/websocket/common/io/package-info.java | 2 +- .../jetty/websocket/common/io/payload/DeMaskProcessor.java | 2 +- .../jetty/websocket/common/io/payload/PayloadProcessor.java | 2 +- .../jetty/websocket/common/io/payload/package-info.java | 2 +- .../jetty/websocket/common/message/MessageAppender.java | 2 +- .../jetty/websocket/common/message/MessageInputStream.java | 2 +- .../jetty/websocket/common/message/MessageOutputStream.java | 2 +- .../eclipse/jetty/websocket/common/message/MessageReader.java | 2 +- .../eclipse/jetty/websocket/common/message/MessageWriter.java | 2 +- .../jetty/websocket/common/message/SimpleBinaryMessage.java | 2 +- .../jetty/websocket/common/message/SimpleTextMessage.java | 2 +- .../jetty/websocket/common/message/Utf8CharBuffer.java | 2 +- .../eclipse/jetty/websocket/common/message/package-info.java | 2 +- .../java/org/eclipse/jetty/websocket/common/package-info.java | 2 +- .../websocket/common/scopes/DelegatedContainerScope.java | 2 +- .../jetty/websocket/common/scopes/SimpleContainerScope.java | 2 +- .../websocket/common/scopes/WebSocketContainerScope.java | 2 +- .../jetty/websocket/common/scopes/WebSocketSessionScope.java | 2 +- .../org/eclipse/jetty/websocket/common/util/ReflectUtils.java | 4 ++-- .../org/eclipse/jetty/websocket/common/util/TextUtil.java | 2 +- .../jetty/websocket/common/util/Utf8PartialBuilder.java | 2 +- .../src/test/java/examples/AdapterConnectCloseSocket.java | 2 +- .../src/test/java/examples/AnnotatedBinaryArraySocket.java | 2 +- .../src/test/java/examples/AnnotatedBinaryStreamSocket.java | 2 +- .../src/test/java/examples/AnnotatedFramesSocket.java | 2 +- .../src/test/java/examples/AnnotatedStreamingSocket.java | 2 +- .../src/test/java/examples/AnnotatedTextSocket.java | 2 +- .../src/test/java/examples/AnnotatedTextStreamSocket.java | 2 +- .../src/test/java/examples/ListenerBasicSocket.java | 2 +- .../src/test/java/examples/ListenerFrameSocket.java | 2 +- .../src/test/java/examples/ListenerPartialSocket.java | 2 +- .../src/test/java/examples/ListenerPingPongSocket.java | 2 +- .../src/test/java/examples/echo/AdapterEchoSocket.java | 2 +- .../src/test/java/examples/echo/AnnotatedEchoSocket.java | 2 +- .../src/test/java/examples/echo/ListenerEchoSocket.java | 2 +- .../org/eclipse/jetty/websocket/common/AcceptHashTest.java | 2 +- .../org/eclipse/jetty/websocket/common/CloseInfoTest.java | 2 +- .../jetty/websocket/common/ClosePayloadParserTest.java | 2 +- .../jetty/websocket/common/GeneratorParserRoundtripTest.java | 2 +- .../org/eclipse/jetty/websocket/common/GeneratorTest.java | 2 +- .../java/org/eclipse/jetty/websocket/common/ParserTest.java | 2 +- .../eclipse/jetty/websocket/common/PingPayloadParserTest.java | 2 +- .../jetty/websocket/common/RFC6455ExamplesGeneratorTest.java | 2 +- .../jetty/websocket/common/RFC6455ExamplesParserTest.java | 2 +- .../jetty/websocket/common/SaneFrameOrderingAssertion.java | 2 +- .../eclipse/jetty/websocket/common/TextPayloadParserTest.java | 2 +- .../eclipse/jetty/websocket/common/WebSocketFrameTest.java | 2 +- .../jetty/websocket/common/WebSocketRemoteEndpointTest.java | 2 +- .../org/eclipse/jetty/websocket/common/ab/TestABCase1_1.java | 2 +- .../org/eclipse/jetty/websocket/common/ab/TestABCase1_2.java | 2 +- .../org/eclipse/jetty/websocket/common/ab/TestABCase2.java | 2 +- .../org/eclipse/jetty/websocket/common/ab/TestABCase3.java | 2 +- .../org/eclipse/jetty/websocket/common/ab/TestABCase4.java | 2 +- .../org/eclipse/jetty/websocket/common/ab/TestABCase7_3.java | 2 +- .../common/annotations/BadBinarySignatureSocket.java | 2 +- .../common/annotations/BadDuplicateBinarySocket.java | 2 +- .../websocket/common/annotations/BadDuplicateFrameSocket.java | 2 +- .../websocket/common/annotations/BadTextSignatureSocket.java | 2 +- .../jetty/websocket/common/annotations/FrameSocket.java | 2 +- .../websocket/common/annotations/MyEchoBinarySocket.java | 2 +- .../jetty/websocket/common/annotations/MyEchoSocket.java | 2 +- .../websocket/common/annotations/MyStatelessEchoSocket.java | 2 +- .../jetty/websocket/common/annotations/NoopSocket.java | 2 +- .../jetty/websocket/common/annotations/NotASocket.java | 2 +- .../eclipse/jetty/websocket/common/events/EventCapture.java | 2 +- .../jetty/websocket/common/events/EventDriverFactoryTest.java | 2 +- .../jetty/websocket/common/events/EventDriverTest.java | 2 +- .../websocket/common/events/JettyAnnotatedScannerTest.java | 2 +- .../websocket/common/extensions/AbstractExtensionTest.java | 2 +- .../websocket/common/extensions/DummyIncomingFrames.java | 2 +- .../websocket/common/extensions/DummyOutgoingFrames.java | 2 +- .../jetty/websocket/common/extensions/ExtensionStackTest.java | 2 +- .../jetty/websocket/common/extensions/ExtensionTool.java | 2 +- .../websocket/common/extensions/FragmentExtensionTest.java | 2 +- .../websocket/common/extensions/IdentityExtensionTest.java | 2 +- .../common/extensions/compress/ByteAccumulatorTest.java | 2 +- .../common/extensions/compress/CapturedHexPayloads.java | 2 +- .../common/extensions/compress/DeflateFrameExtensionTest.java | 2 +- .../extensions/compress/PerMessageDeflateExtensionTest.java | 2 +- .../websocket/common/io/CloseableLocalWebSocketSession.java | 2 +- .../eclipse/jetty/websocket/common/io/FrameFlusherTest.java | 2 +- .../org/eclipse/jetty/websocket/common/io/IOStateTest.java | 2 +- .../jetty/websocket/common/io/LocalWebSocketConnection.java | 2 +- .../jetty/websocket/common/io/LocalWebSocketSession.java | 2 +- .../org/eclipse/jetty/websocket/common/io/MockEndPoint.java | 2 +- .../common/io/http/HttpResponseHeaderParserTest.java | 2 +- .../websocket/common/io/http/HttpResponseParseCapture.java | 2 +- .../websocket/common/io/payload/DeMaskProcessorTest.java | 2 +- .../eclipse/jetty/websocket/common/message/DummySocket.java | 2 +- .../eclipse/jetty/websocket/common/message/MessageDebug.java | 2 +- .../websocket/common/message/MessageInputStreamTest.java | 2 +- .../websocket/common/message/MessageOutputStreamTest.java | 2 +- .../jetty/websocket/common/message/MessageWriterTest.java | 2 +- .../websocket/common/message/TrackingInputStreamSocket.java | 2 +- .../jetty/websocket/common/message/TrackingSocket.java | 2 +- .../jetty/websocket/common/message/Utf8CharBufferTest.java | 2 +- .../eclipse/jetty/websocket/common/test/BlockheadClient.java | 2 +- .../websocket/common/test/BlockheadClientConnection.java | 4 ++-- .../jetty/websocket/common/test/BlockheadClientRequest.java | 2 +- .../jetty/websocket/common/test/BlockheadConnection.java | 2 +- .../eclipse/jetty/websocket/common/test/BlockheadServer.java | 2 +- .../websocket/common/test/BlockheadServerConnection.java | 2 +- .../eclipse/jetty/websocket/common/test/ByteBufferAssert.java | 2 +- .../eclipse/jetty/websocket/common/test/DummyConnection.java | 2 +- .../java/org/eclipse/jetty/websocket/common/test/Fuzzed.java | 2 +- .../java/org/eclipse/jetty/websocket/common/test/Fuzzer.java | 2 +- .../org/eclipse/jetty/websocket/common/test/HttpResponse.java | 2 +- .../eclipse/jetty/websocket/common/test/IBlockheadClient.java | 4 ++-- .../jetty/websocket/common/test/IncomingFramesCapture.java | 2 +- .../org/eclipse/jetty/websocket/common/test/MoreMatchers.java | 2 +- .../jetty/websocket/common/test/OutgoingFramesCapture.java | 2 +- .../websocket/common/test/OutgoingNetworkBytesCapture.java | 2 +- .../eclipse/jetty/websocket/common/test/RawFrameBuilder.java | 2 +- .../org/eclipse/jetty/websocket/common/test/Timeouts.java | 2 +- .../eclipse/jetty/websocket/common/test/UnitGenerator.java | 2 +- .../org/eclipse/jetty/websocket/common/test/UnitParser.java | 2 +- .../jetty/websocket/common/test/WriteCallbackDelegate.java | 2 +- .../java/org/eclipse/jetty/websocket/common/util/Hex.java | 2 +- .../eclipse/jetty/websocket/common/util/MaskedByteBuffer.java | 2 +- .../java/org/eclipse/jetty/websocket/common/util/Sha1Sum.java | 2 +- .../org/eclipse/jetty/websocket/common/util/StackUtil.java | 2 +- .../jetty/websocket/common/util/Utf8PartialBuilderTest.java | 2 +- .../org/eclipse/jetty/websocket/server/HandshakeRFC6455.java | 2 +- .../jetty/websocket/server/MappedWebSocketCreator.java | 2 +- .../jetty/websocket/server/NativeWebSocketConfiguration.java | 2 +- .../server/NativeWebSocketServletContainerInitializer.java | 2 +- .../jetty/websocket/server/ServletWebSocketRequest.java | 2 +- .../jetty/websocket/server/ServletWebSocketResponse.java | 2 +- .../org/eclipse/jetty/websocket/server/WebSocketHandler.java | 2 +- .../eclipse/jetty/websocket/server/WebSocketHandshake.java | 2 +- .../jetty/websocket/server/WebSocketServerConnection.java | 2 +- .../jetty/websocket/server/WebSocketServerFactory.java | 2 +- .../jetty/websocket/server/WebSocketUpgradeFilter.java | 2 +- .../websocket/server/WebSocketUpgradeHandlerWrapper.java | 2 +- .../java/org/eclipse/jetty/websocket/server/package-info.java | 2 +- .../org/eclipse/jetty/websocket/server/pathmap/PathSpec.java | 2 +- .../eclipse/jetty/websocket/server/pathmap/RegexPathSpec.java | 2 +- .../jetty/websocket/server/pathmap/ServletPathSpec.java | 2 +- .../jetty/websocket/server/AnnotatedMaxMessageSizeTest.java | 2 +- .../org/eclipse/jetty/websocket/server/BatchModeTest.java | 2 +- .../java/org/eclipse/jetty/websocket/server/ChromeTest.java | 2 +- .../eclipse/jetty/websocket/server/DecoratorsLegacyTest.java | 2 +- .../org/eclipse/jetty/websocket/server/DecoratorsTest.java | 2 +- .../java/org/eclipse/jetty/websocket/server/FirefoxTest.java | 2 +- .../eclipse/jetty/websocket/server/FragmentExtensionTest.java | 2 +- .../eclipse/jetty/websocket/server/IdentityExtensionTest.java | 2 +- .../org/eclipse/jetty/websocket/server/IdleTimeoutTest.java | 2 +- .../websocket/server/InfoContextAltAttributeListener.java | 2 +- .../jetty/websocket/server/InfoContextAttributeListener.java | 2 +- .../eclipse/jetty/websocket/server/InfoContextListener.java | 2 +- .../java/org/eclipse/jetty/websocket/server/InfoServlet.java | 2 +- .../java/org/eclipse/jetty/websocket/server/InfoSocket.java | 2 +- .../jetty/websocket/server/ManyConnectionsCleanupTest.java | 2 +- .../websocket/server/PerMessageDeflateExtensionTest.java | 2 +- .../jetty/websocket/server/RedirectWebSocketClientTest.java | 2 +- .../eclipse/jetty/websocket/server/RequestHeadersTest.java | 2 +- .../eclipse/jetty/websocket/server/SimpleServletServer.java | 2 +- .../org/eclipse/jetty/websocket/server/SubProtocolTest.java | 2 +- .../org/eclipse/jetty/websocket/server/SuspendResumeTest.java | 2 +- .../org/eclipse/jetty/websocket/server/TooFastClientTest.java | 2 +- .../java/org/eclipse/jetty/websocket/server/WSServer.java | 2 +- .../eclipse/jetty/websocket/server/WebSocketCloseTest.java | 2 +- .../jetty/websocket/server/WebSocketInvalidVersionTest.java | 2 +- .../eclipse/jetty/websocket/server/WebSocketOverSSLTest.java | 2 +- .../eclipse/jetty/websocket/server/WebSocketProtocolTest.java | 2 +- .../jetty/websocket/server/WebSocketServerFactoryTest.java | 2 +- .../jetty/websocket/server/WebSocketServerSessionTest.java | 2 +- .../jetty/websocket/server/WebSocketServletRFCTest.java | 2 +- .../jetty/websocket/server/WebSocketUpgradeFilterTest.java | 2 +- .../java/org/eclipse/jetty/websocket/server/ab/ABServlet.java | 2 +- .../java/org/eclipse/jetty/websocket/server/ab/ABSocket.java | 2 +- .../org/eclipse/jetty/websocket/server/ab/AbstractABCase.java | 2 +- .../org/eclipse/jetty/websocket/server/ab/TestABCase1.java | 2 +- .../org/eclipse/jetty/websocket/server/ab/TestABCase2.java | 2 +- .../org/eclipse/jetty/websocket/server/ab/TestABCase3.java | 2 +- .../org/eclipse/jetty/websocket/server/ab/TestABCase4.java | 2 +- .../org/eclipse/jetty/websocket/server/ab/TestABCase5.java | 2 +- .../org/eclipse/jetty/websocket/server/ab/TestABCase6.java | 2 +- .../eclipse/jetty/websocket/server/ab/TestABCase6_BadUTF.java | 2 +- .../jetty/websocket/server/ab/TestABCase6_GoodUTF.java | 2 +- .../org/eclipse/jetty/websocket/server/ab/TestABCase7.java | 2 +- .../jetty/websocket/server/ab/TestABCase7_BadStatusCodes.java | 2 +- .../websocket/server/ab/TestABCase7_GoodStatusCodes.java | 2 +- .../org/eclipse/jetty/websocket/server/ab/TestABCase9.java | 2 +- .../jetty/websocket/server/browser/BrowserDebugTool.java | 2 +- .../eclipse/jetty/websocket/server/browser/BrowserSocket.java | 2 +- .../jetty/websocket/server/examples/BasicEchoSocket.java | 2 +- .../websocket/server/examples/MyCustomCreationServlet.java | 2 +- .../jetty/websocket/server/examples/MyEchoServlet.java | 2 +- .../eclipse/jetty/websocket/server/examples/MyEchoSocket.java | 2 +- .../jetty/websocket/server/examples/echo/BigEchoSocket.java | 2 +- .../server/examples/echo/EchoBroadcastPingSocket.java | 2 +- .../websocket/server/examples/echo/EchoBroadcastSocket.java | 2 +- .../jetty/websocket/server/examples/echo/EchoCreator.java | 2 +- .../websocket/server/examples/echo/EchoFragmentSocket.java | 2 +- .../websocket/server/examples/echo/ExampleEchoServer.java | 2 +- .../jetty/websocket/server/examples/echo/LogSocket.java | 2 +- .../eclipse/jetty/websocket/server/helper/CaptureSocket.java | 2 +- .../eclipse/jetty/websocket/server/helper/EchoServlet.java | 2 +- .../org/eclipse/jetty/websocket/server/helper/EchoSocket.java | 2 +- .../org/eclipse/jetty/websocket/server/helper/RFCServlet.java | 2 +- .../org/eclipse/jetty/websocket/server/helper/RFCSocket.java | 2 +- .../org/eclipse/jetty/websocket/server/helper/SafariD00.java | 2 +- .../eclipse/jetty/websocket/server/helper/SessionServlet.java | 2 +- .../eclipse/jetty/websocket/server/helper/SessionSocket.java | 2 +- .../websocket/server/helper/WebSocketCaptureServlet.java | 2 +- .../server/misbehaving/AnnotatedRuntimeOnConnectSocket.java | 2 +- .../jetty/websocket/server/misbehaving/BadSocketsServlet.java | 2 +- .../server/misbehaving/ListenerRuntimeOnConnectSocket.java | 2 +- .../websocket/server/misbehaving/MisbehavingClassTest.java | 2 +- .../jetty/websocket/servlet/ServletUpgradeRequest.java | 2 +- .../jetty/websocket/servlet/ServletUpgradeResponse.java | 2 +- .../jetty/websocket/servlet/UpgradeHttpServletRequest.java | 2 +- .../org/eclipse/jetty/websocket/servlet/WebSocketCreator.java | 2 +- .../org/eclipse/jetty/websocket/servlet/WebSocketServlet.java | 2 +- .../jetty/websocket/servlet/WebSocketServletFactory.java | 2 +- .../org/eclipse/jetty/websocket/servlet/package-info.java | 2 +- .../src/test/java/examples/MyAdvancedEchoCreator.java | 2 +- .../src/test/java/examples/MyAdvancedEchoServlet.java | 2 +- .../src/test/java/examples/MyAuthedCreator.java | 2 +- .../src/test/java/examples/MyAuthedServlet.java | 2 +- .../src/test/java/examples/MyBinaryEchoSocket.java | 2 +- .../src/test/java/examples/MyEchoServlet.java | 2 +- .../src/test/java/examples/MyEchoSocket.java | 2 +- .../java/org/eclipse/jetty/xml/ConfigurationProcessor.java | 2 +- .../org/eclipse/jetty/xml/ConfigurationProcessorFactory.java | 2 +- .../src/main/java/org/eclipse/jetty/xml/XmlAppendable.java | 2 +- .../src/main/java/org/eclipse/jetty/xml/XmlConfiguration.java | 2 +- jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlParser.java | 2 +- .../src/main/java/org/eclipse/jetty/xml/package-info.java | 2 +- .../org/eclipse/jetty/xml/AnnotatedTestConfiguration.java | 2 +- .../java/org/eclipse/jetty/xml/ConstructorArgTestClass.java | 2 +- .../java/org/eclipse/jetty/xml/DefaultTestConfiguration.java | 2 +- .../test/java/org/eclipse/jetty/xml/TestConfiguration.java | 2 +- .../test/java/org/eclipse/jetty/xml/XmlAppendableTest.java | 2 +- .../test/java/org/eclipse/jetty/xml/XmlConfigurationTest.java | 2 +- .../src/test/java/org/eclipse/jetty/xml/XmlParserTest.java | 2 +- pom.xml | 2 +- .../org/eclipse/jetty/continuation/ContinuationsTest.java | 2 +- .../test/java/org/eclipse/jetty/http/client/AbstractTest.java | 2 +- .../org/eclipse/jetty/http/client/AsyncIOServletTest.java | 2 +- .../eclipse/jetty/http/client/AsyncRequestContentTest.java | 2 +- .../eclipse/jetty/http/client/ConnectionStatisticsTest.java | 2 +- .../org/eclipse/jetty/http/client/EmptyServerHandler.java | 2 +- .../eclipse/jetty/http/client/HttpChannelAssociationTest.java | 2 +- .../jetty/http/client/HttpClientConnectTimeoutTest.java | 2 +- .../org/eclipse/jetty/http/client/HttpClientContinueTest.java | 2 +- .../eclipse/jetty/http/client/HttpClientIdleTimeoutTest.java | 2 +- .../org/eclipse/jetty/http/client/HttpClientLoadTest.java | 2 +- .../org/eclipse/jetty/http/client/HttpClientStreamTest.java | 2 +- .../java/org/eclipse/jetty/http/client/HttpClientTest.java | 2 +- .../org/eclipse/jetty/http/client/HttpClientTimeoutTest.java | 2 +- .../java/org/eclipse/jetty/http/client/HttpTrailersTest.java | 2 +- .../jetty/http/client/RoundRobinConnectionPoolTest.java | 2 +- .../org/eclipse/jetty/http/client/ServerTimeoutsTest.java | 2 +- .../test/java/org/eclipse/jetty/http/client/Transport.java | 2 +- .../java/org/eclipse/jetty/http/client/TransportProvider.java | 2 +- .../java/org/eclipse/jetty/http/client/TransportScenario.java | 2 +- .../test/java/org/eclipse/jetty/test/DefaultHandlerTest.java | 2 +- .../org/eclipse/jetty/test/DeploymentErrorInitializer.java | 2 +- .../test/java/org/eclipse/jetty/test/DeploymentErrorTest.java | 2 +- .../src/test/java/org/eclipse/jetty/test/DigestPostTest.java | 2 +- .../java/org/eclipse/jetty/test/HttpInputIntegrationTest.java | 2 +- .../test/java/org/eclipse/jetty/test/jsp/FakeJspServlet.java | 2 +- .../eclipse/jetty/test/jsp/JspAndDefaultWithAliasesTest.java | 2 +- .../jetty/test/jsp/JspAndDefaultWithoutAliasesTest.java | 2 +- .../java/org/eclipse/jetty/test/rfcs/RFC2616BaseTest.java | 2 +- .../java/org/eclipse/jetty/test/rfcs/RFC2616NIOHttpTest.java | 2 +- .../java/org/eclipse/jetty/test/rfcs/RFC2616NIOHttpsTest.java | 2 +- .../test/java/org/eclipse/jetty/test/support/EchoHandler.java | 2 +- .../test/java/org/eclipse/jetty/test/support/JettyDistro.java | 2 +- .../test/java/org/eclipse/jetty/test/support/StringUtil.java | 2 +- .../org/eclipse/jetty/test/support/TestableJettyServer.java | 2 +- .../jetty/test/support/rawhttp/HttpRequestTesterTest.java | 2 +- .../jetty/test/support/rawhttp/HttpResponseTesterTest.java | 2 +- .../org/eclipse/jetty/test/support/rawhttp/HttpSocket.java | 2 +- .../eclipse/jetty/test/support/rawhttp/HttpSocketImpl.java | 2 +- .../org/eclipse/jetty/test/support/rawhttp/HttpTesting.java | 2 +- .../eclipse/jetty/test/support/rawhttp/HttpsSocketImpl.java | 2 +- .../src/test/java/org/eclipse/jetty/test/jmx/JmxIT.java | 2 +- .../main/java/org/eclipse/jetty/test/jmx/CommonComponent.java | 2 +- .../src/main/java/org/eclipse/jetty/test/jmx/Echoer.java | 2 +- .../org/eclipse/jetty/test/jmx/MyContainerInitializer.java | 2 +- .../src/main/java/org/eclipse/jetty/test/jmx/PingServlet.java | 2 +- .../src/main/java/org/eclipse/jetty/test/jmx/Pinger.java | 2 +- .../main/java/org/eclipse/jetty/test/jmx/jmx/EchoerMBean.java | 2 +- .../main/java/org/eclipse/jetty/test/jmx/jmx/PingerMBean.java | 2 +- .../java/org/eclipse/jetty/DataSourceLoginServiceTest.java | 2 +- .../org/eclipse/jetty/DatabaseLoginServiceTestServer.java | 2 +- .../src/test/java/org/eclipse/jetty/JdbcLoginServiceTest.java | 2 +- .../org/eclipse/jetty/quickstart/AttributeNormalizerTest.java | 2 +- .../quickstart/AttributeNormalizer_ToCanonicalUriTest.java | 2 +- .../src/test/java/org/eclipse/jetty/quickstart/EnvUtils.java | 2 +- .../org/eclipse/jetty/quickstart/PreconfigureJNDIWar.java | 2 +- .../org/eclipse/jetty/quickstart/PreconfigureSpecWar.java | 2 +- .../eclipse/jetty/quickstart/PreconfigureStandardTestWar.java | 2 +- .../java/org/eclipse/jetty/quickstart/QuickStartJNDIWar.java | 2 +- .../java/org/eclipse/jetty/quickstart/QuickStartSpecWar.java | 2 +- .../eclipse/jetty/quickstart/QuickStartStandardTestWar.java | 2 +- .../java/org/eclipse/jetty/quickstart/QuickStartTest.java | 2 +- .../test/java/org/eclipse/jetty/quickstart/Quickstart.java | 2 +- .../jetty/server/session/ClusteredOrphanedSessionTest.java | 2 +- .../jetty/server/session/FileSessionDataStoreTest.java | 2 +- .../java/org/eclipse/jetty/server/session/FileTestHelper.java | 2 +- .../org/eclipse/jetty/server/session/TestFileSessions.java | 2 +- .../jetty/gcloud/session/ClusteredOrphanedSessionTest.java | 2 +- .../jetty/gcloud/session/ClusteredSessionScavengingTest.java | 2 +- .../jetty/gcloud/session/GCloudSessionDataStoreTest.java | 2 +- .../jetty/gcloud/session/GCloudSessionTestSupport.java | 2 +- .../eclipse/jetty/gcloud/session/InvalidationSessionTest.java | 2 +- .../jetty/hazelcast/session/ClusteredOrphanedSessionTest.java | 2 +- .../hazelcast/session/ClusteredSessionScavengingTest.java | 2 +- .../session/HazelcastClusteredInvalidationSessionTest.java | 2 +- .../hazelcast/session/HazelcastSessionDataStoreTest.java | 2 +- .../eclipse/jetty/hazelcast/session/HazelcastTestHelper.java | 2 +- .../hazelcast/session/client/ClientOrphanedSessionTest.java | 2 +- .../hazelcast/session/client/ClientSessionScavengingTest.java | 2 +- .../jetty/server/session/ClusteredOrphanedSessionTest.java | 2 +- .../jetty/server/session/ClusteredSessionScavengingTest.java | 2 +- .../jetty/server/session/InfinispanSessionDataStoreTest.java | 2 +- .../eclipse/jetty/server/session/InfinispanTestSupport.java | 2 +- .../remote/RemoteClusteredInvalidationSessionTest.java | 2 +- .../session/remote/RemoteClusteredSessionScavengingTest.java | 2 +- .../session/remote/RemoteInfinispanSessionDataStoreTest.java | 2 +- .../server/session/remote/RemoteInfinispanTestSupport.java | 2 +- .../server/session/ClusteredInvalidationSessionTest.java | 2 +- .../jetty/server/session/ClusteredOrphanedSessionTest.java | 2 +- .../jetty/server/session/ClusteredSessionMigrationTest.java | 2 +- .../jetty/server/session/ClusteredSessionScavengingTest.java | 2 +- .../jetty/server/session/JDBCSessionDataStoreTest.java | 2 +- .../java/org/eclipse/jetty/server/session/JdbcTestHelper.java | 2 +- .../jetty/server/session/ReloadedSessionMissingClassTest.java | 2 +- .../eclipse/jetty/server/session/SessionTableSchemaTest.java | 2 +- .../jetty/server/session/WebAppObjectInSessionTest.java | 2 +- .../jetty/memcached/sessions/CachingSessionDataStoreTest.java | 2 +- .../eclipse/jetty/memcached/sessions/MemcachedTestHelper.java | 2 +- .../org/eclipse/jetty/nosql/mongodb/AttributeNameTest.java | 2 +- .../jetty/nosql/mongodb/ClusteredInvalidateSessionTest.java | 2 +- .../jetty/nosql/mongodb/ClusteredOrphanedSessionTest.java | 2 +- .../jetty/nosql/mongodb/ClusteredSessionScavengingTest.java | 2 +- .../jetty/nosql/mongodb/MongoSessionDataStoreTest.java | 2 +- .../java/org/eclipse/jetty/nosql/mongodb/MongoTestHelper.java | 2 +- .../session/AbstractClusteredInvalidationSessionTest.java | 2 +- .../server/session/AbstractClusteredOrphanedSessionTest.java | 2 +- .../session/AbstractClusteredSessionScavengingTest.java | 2 +- .../jetty/server/session/AbstractSessionDataStoreTest.java | 2 +- .../org/eclipse/jetty/server/session/AbstractTestBase.java | 2 +- .../server/session/AbstractWebAppObjectInSessionTest.java | 2 +- .../src/main/java/org/eclipse/jetty/server/session/Foo.java | 2 +- .../eclipse/jetty/server/session/FooInvocationHandler.java | 2 +- .../jetty/server/session/TestContextScopeListener.java | 4 ++-- .../main/java/org/eclipse/jetty/server/session/TestFoo.java | 2 +- .../eclipse/jetty/server/session/TestHttpSessionListener.java | 2 +- .../java/org/eclipse/jetty/server/session/TestServer.java | 2 +- .../eclipse/jetty/server/session/TestSessionDataStore.java | 2 +- .../jetty/server/session/TestSessionDataStoreFactory.java | 2 +- .../org/eclipse/jetty/server/session/TestSessionHandler.java | 2 +- .../jetty/server/session/WebAppObjectInSessionServlet.java | 2 +- .../test/java/org/eclipse/jetty/server/session/AsyncTest.java | 2 +- .../jetty/server/session/ClientCrossContextSessionTest.java | 2 +- .../java/org/eclipse/jetty/server/session/CreationTest.java | 2 +- .../eclipse/jetty/server/session/DefaultSessionCacheTest.java | 2 +- .../jetty/server/session/DeleteUnloadableSessionTest.java | 2 +- .../org/eclipse/jetty/server/session/DirtyAttributeTest.java | 2 +- .../org/eclipse/jetty/server/session/IdleSessionTest.java | 2 +- .../org/eclipse/jetty/server/session/ImmortalSessionTest.java | 2 +- .../jetty/server/session/ModifyMaxInactiveIntervalTest.java | 2 +- .../server/session/NonClusteredSessionScavengingTest.java | 2 +- .../eclipse/jetty/server/session/NullSessionCacheTest.java | 2 +- .../org/eclipse/jetty/server/session/RedirectSessionTest.java | 2 +- .../jetty/server/session/ReentrantRequestSessionTest.java | 2 +- .../org/eclipse/jetty/server/session/RemoveSessionTest.java | 2 +- .../jetty/server/session/SameContextForwardedSessionTest.java | 2 +- .../org/eclipse/jetty/server/session/SameNodeLoadTest.java | 2 +- .../org/eclipse/jetty/server/session/SaveOptimizeTest.java | 2 +- .../jetty/server/session/SessionEvictionFailureTest.java | 2 +- .../server/session/SessionInvalidateCreateScavengeTest.java | 2 +- .../org/eclipse/jetty/server/session/SessionListenerTest.java | 2 +- .../org/eclipse/jetty/server/session/SessionRenewTest.java | 2 +- .../main/java/org/eclipse/jetty/test/webapp/HTTP1Servlet.java | 2 +- .../main/java/org/eclipse/jetty/test/webapp/HTTP2Servlet.java | 2 +- .../java/org/eclipse/jetty/test/webapp/HTTP2FromWebAppIT.java | 2 +- .../test-jetty-webapp/src/main/java/com/acme/ChatServlet.java | 2 +- .../test-jetty-webapp/src/main/java/com/acme/CookieDump.java | 2 +- .../test-jetty-webapp/src/main/java/com/acme/Counter.java | 2 +- .../test-jetty-webapp/src/main/java/com/acme/Date2Tag.java | 2 +- .../test-jetty-webapp/src/main/java/com/acme/DateTag.java | 2 +- .../src/main/java/com/acme/DispatchServlet.java | 2 +- .../test-jetty-webapp/src/main/java/com/acme/Dump.java | 2 +- .../test-jetty-webapp/src/main/java/com/acme/HelloWorld.java | 2 +- .../src/main/java/com/acme/JavaxWebSocketChat.java | 2 +- .../src/main/java/com/acme/LoginServlet.java | 2 +- .../test-jetty-webapp/src/main/java/com/acme/RegTest.java | 2 +- .../src/main/java/com/acme/RewriteServlet.java | 2 +- .../src/main/java/com/acme/SecureModeServlet.java | 2 +- .../test-jetty-webapp/src/main/java/com/acme/SessionDump.java | 2 +- .../test-jetty-webapp/src/main/java/com/acme/TagListener.java | 2 +- .../test-jetty-webapp/src/main/java/com/acme/TestFilter.java | 2 +- .../src/main/java/com/acme/TestListener.java | 2 +- .../src/main/java/com/acme/WebSocketChatServlet.java | 2 +- .../src/test/java/org/eclipse/jetty/ChatServletTest.java | 2 +- .../src/test/java/org/eclipse/jetty/DispatchServletTest.java | 2 +- .../src/test/java/org/eclipse/jetty/TestServer.java | 2 +- .../test-jndi-webapp/src/main/java/com/acme/JNDITest.java | 2 +- .../src/main/java/com/acme/MockDataSource.java | 2 +- .../src/main/java/com/acme/MockTransport.java | 2 +- .../src/main/java/com/acme/MockUserTransaction.java | 2 +- .../java/org/eclipse/jetty/TestTransparentProxyServer.java | 2 +- .../src/main/java/com/acme/initializer/Foo.java | 2 +- .../src/main/java/com/acme/initializer/FooInitializer.java | 2 +- .../src/main/java/com/acme/test/AnnotatedListener.java | 2 +- .../src/main/java/com/acme/test/AnnotationTest.java | 2 +- .../src/main/java/com/acme/test/AsyncListenerServlet.java | 2 +- .../test-spec-webapp/src/main/java/com/acme/test/Bar.java | 2 +- .../src/main/java/com/acme/test/MultiPartTest.java | 2 +- .../src/main/java/com/acme/test/RoleAnnotationTest.java | 2 +- .../src/main/java/com/acme/test/SecuredServlet.java | 2 +- .../src/main/java/com/acme/test/TestListener.java | 2 +- .../src/main/java/com/acme/fragment/FragmentServlet.java | 2 +- .../org/eclipse/jetty/tests/webapp/HttpMethodsServlet.java | 2 +- 2961 files changed, 3010 insertions(+), 3010 deletions(-) diff --git a/apache-jsp/src/main/java/org/eclipse/jetty/apache/jsp/JettyJasperInitializer.java b/apache-jsp/src/main/java/org/eclipse/jetty/apache/jsp/JettyJasperInitializer.java index bbb0ce2111d..50dde16f958 100644 --- a/apache-jsp/src/main/java/org/eclipse/jetty/apache/jsp/JettyJasperInitializer.java +++ b/apache-jsp/src/main/java/org/eclipse/jetty/apache/jsp/JettyJasperInitializer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/apache-jsp/src/main/java/org/eclipse/jetty/apache/jsp/JettyTldPreScanned.java b/apache-jsp/src/main/java/org/eclipse/jetty/apache/jsp/JettyTldPreScanned.java index 2ee7e0056a8..10e8b0db609 100644 --- a/apache-jsp/src/main/java/org/eclipse/jetty/apache/jsp/JettyTldPreScanned.java +++ b/apache-jsp/src/main/java/org/eclipse/jetty/apache/jsp/JettyTldPreScanned.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/apache-jsp/src/main/java/org/eclipse/jetty/apache/jsp/JuliLog.java b/apache-jsp/src/main/java/org/eclipse/jetty/apache/jsp/JuliLog.java index 2759fde94a2..7a16fe33425 100644 --- a/apache-jsp/src/main/java/org/eclipse/jetty/apache/jsp/JuliLog.java +++ b/apache-jsp/src/main/java/org/eclipse/jetty/apache/jsp/JuliLog.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/apache-jsp/src/main/java/org/eclipse/jetty/jsp/JettyJspServlet.java b/apache-jsp/src/main/java/org/eclipse/jetty/jsp/JettyJspServlet.java index 4535472d6b5..d448b909366 100644 --- a/apache-jsp/src/main/java/org/eclipse/jetty/jsp/JettyJspServlet.java +++ b/apache-jsp/src/main/java/org/eclipse/jetty/jsp/JettyJspServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/apache-jsp/src/test/java/org/eclipse/jetty/jsp/TestJettyJspServlet.java b/apache-jsp/src/test/java/org/eclipse/jetty/jsp/TestJettyJspServlet.java index 5bdc155ef4e..fe53eca7c35 100644 --- a/apache-jsp/src/test/java/org/eclipse/jetty/jsp/TestJettyJspServlet.java +++ b/apache-jsp/src/test/java/org/eclipse/jetty/jsp/TestJettyJspServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/apache-jsp/src/test/java/org/eclipse/jetty/jsp/TestJettyTldPreScanned.java b/apache-jsp/src/test/java/org/eclipse/jetty/jsp/TestJettyTldPreScanned.java index 9c738f987ff..55fdaa1ebaf 100644 --- a/apache-jsp/src/test/java/org/eclipse/jetty/jsp/TestJettyTldPreScanned.java +++ b/apache-jsp/src/test/java/org/eclipse/jetty/jsp/TestJettyTldPreScanned.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/apache-jsp/src/test/java/org/eclipse/jetty/jsp/TestJspFileNameToClass.java b/apache-jsp/src/test/java/org/eclipse/jetty/jsp/TestJspFileNameToClass.java index 7f0966a7756..fda5f84224c 100644 --- a/apache-jsp/src/test/java/org/eclipse/jetty/jsp/TestJspFileNameToClass.java +++ b/apache-jsp/src/test/java/org/eclipse/jetty/jsp/TestJspFileNameToClass.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/apache-jstl/src/test/java/org/eclipse/jetty/jstl/JspConfig.java b/apache-jstl/src/test/java/org/eclipse/jetty/jstl/JspConfig.java index f0d7d8ad5f4..773588a977e 100644 --- a/apache-jstl/src/test/java/org/eclipse/jetty/jstl/JspConfig.java +++ b/apache-jstl/src/test/java/org/eclipse/jetty/jstl/JspConfig.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/apache-jstl/src/test/java/org/eclipse/jetty/jstl/JspIncludeTest.java b/apache-jstl/src/test/java/org/eclipse/jetty/jstl/JspIncludeTest.java index a7b5069fdf0..94cdb0a316e 100644 --- a/apache-jstl/src/test/java/org/eclipse/jetty/jstl/JspIncludeTest.java +++ b/apache-jstl/src/test/java/org/eclipse/jetty/jstl/JspIncludeTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/apache-jstl/src/test/java/org/eclipse/jetty/jstl/JstlTest.java b/apache-jstl/src/test/java/org/eclipse/jetty/jstl/JstlTest.java index b164d822a21..05a95b481bf 100644 --- a/apache-jstl/src/test/java/org/eclipse/jetty/jstl/JstlTest.java +++ b/apache-jstl/src/test/java/org/eclipse/jetty/jstl/JstlTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/async-rest/async-rest-jar/src/main/java/org/eclipse/jetty/example/asyncrest/AbstractRestServlet.java b/examples/async-rest/async-rest-jar/src/main/java/org/eclipse/jetty/example/asyncrest/AbstractRestServlet.java index 7198dd6e4df..a3373fee901 100644 --- a/examples/async-rest/async-rest-jar/src/main/java/org/eclipse/jetty/example/asyncrest/AbstractRestServlet.java +++ b/examples/async-rest/async-rest-jar/src/main/java/org/eclipse/jetty/example/asyncrest/AbstractRestServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/async-rest/async-rest-jar/src/main/java/org/eclipse/jetty/example/asyncrest/AsyncRestServlet.java b/examples/async-rest/async-rest-jar/src/main/java/org/eclipse/jetty/example/asyncrest/AsyncRestServlet.java index f09b28e93fe..6dbf802ffe7 100644 --- a/examples/async-rest/async-rest-jar/src/main/java/org/eclipse/jetty/example/asyncrest/AsyncRestServlet.java +++ b/examples/async-rest/async-rest-jar/src/main/java/org/eclipse/jetty/example/asyncrest/AsyncRestServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/async-rest/async-rest-jar/src/main/java/org/eclipse/jetty/example/asyncrest/SerialRestServlet.java b/examples/async-rest/async-rest-jar/src/main/java/org/eclipse/jetty/example/asyncrest/SerialRestServlet.java index c9093c1e8de..28c7af070bc 100644 --- a/examples/async-rest/async-rest-jar/src/main/java/org/eclipse/jetty/example/asyncrest/SerialRestServlet.java +++ b/examples/async-rest/async-rest-jar/src/main/java/org/eclipse/jetty/example/asyncrest/SerialRestServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/async-rest/async-rest-webapp/src/test/java/org/eclipse/jetty/example/asyncrest/DemoServer.java b/examples/async-rest/async-rest-webapp/src/test/java/org/eclipse/jetty/example/asyncrest/DemoServer.java index a2f44b3cd59..c7055e5765a 100644 --- a/examples/async-rest/async-rest-webapp/src/test/java/org/eclipse/jetty/example/asyncrest/DemoServer.java +++ b/examples/async-rest/async-rest-webapp/src/test/java/org/eclipse/jetty/example/asyncrest/DemoServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/AsyncEchoServlet.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/AsyncEchoServlet.java index f186dca3198..51e42aee769 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/AsyncEchoServlet.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/AsyncEchoServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/DumpServlet.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/DumpServlet.java index 96dd9139481..8a54dc67e88 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/DumpServlet.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/DumpServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ExampleServer.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ExampleServer.java index 43447a34ba5..1faa98ceb5a 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ExampleServer.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ExampleServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ExampleServerXml.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ExampleServerXml.java index 506d5a5e80a..2f190d9d454 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ExampleServerXml.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ExampleServerXml.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/FastFileServer.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/FastFileServer.java index 2bb25507c91..169ae96ec0a 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/FastFileServer.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/FastFileServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/FileServer.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/FileServer.java index 34df743d930..09de1c51f9b 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/FileServer.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/FileServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/FileServerXml.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/FileServerXml.java index 33ec7a9ca5c..c05fe5c4cd1 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/FileServerXml.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/FileServerXml.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/HelloHandler.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/HelloHandler.java index ec7fd04ecc0..7bc7827ab2a 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/HelloHandler.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/HelloHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/HelloServlet.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/HelloServlet.java index f58edee149c..3bb89aadf6b 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/HelloServlet.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/HelloServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/HelloSessionServlet.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/HelloSessionServlet.java index be66f201a54..00983103a3c 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/HelloSessionServlet.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/HelloSessionServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/HelloWorld.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/HelloWorld.java index 8620d00808e..bd09d1a2ddf 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/HelloWorld.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/HelloWorld.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/Http2Server.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/Http2Server.java index dd55e810565..b61a5a2eba2 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/Http2Server.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/Http2Server.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/JarServer.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/JarServer.java index 6d47c0db457..6b47b958b02 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/JarServer.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/JarServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/LikeJettyXml.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/LikeJettyXml.java index dcd58b84ab1..f2fe8dcffe4 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/LikeJettyXml.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/LikeJettyXml.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyConnectors.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyConnectors.java index 72285a31ee3..638eea09823 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyConnectors.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyConnectors.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyContexts.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyContexts.java index 1b7ad9bc8db..44f347c45b3 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyContexts.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyContexts.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyHandlers.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyHandlers.java index 3904331f116..6db2d2af434 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyHandlers.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyHandlers.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyServletContexts.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyServletContexts.java index 52ca4a4d514..1f466e04450 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyServletContexts.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ManyServletContexts.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/MinimalServlets.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/MinimalServlets.java index c785512f7b1..21242043a37 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/MinimalServlets.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/MinimalServlets.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneConnector.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneConnector.java index ca3ce6bce24..0520d616ac6 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneConnector.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneConnector.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneContext.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneContext.java index e425f76de51..78a85ee9ad6 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneContext.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneContext.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneHandler.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneHandler.java index ff6a14a5ea9..29a44536b6d 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneHandler.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContext.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContext.java index 832aa5af384..ec46ce19f87 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContext.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContext.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContextJmxStats.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContextJmxStats.java index e80e86a8c15..0e95902a609 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContextJmxStats.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContextJmxStats.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContextWithSession.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContextWithSession.java index 023f169794b..e523e847dad 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContextWithSession.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneServletContextWithSession.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneWebApp.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneWebApp.java index 36177dbf336..d4495c6cc78 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneWebApp.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneWebApp.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneWebAppWithJsp.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneWebAppWithJsp.java index ace3450fa5a..43052077855 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneWebAppWithJsp.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/OneWebAppWithJsp.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ProxyServer.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ProxyServer.java index 45647f39364..6f2621738a2 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ProxyServer.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ProxyServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/RewriteServer.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/RewriteServer.java index e9aa8f627ad..28e5b1b148e 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/RewriteServer.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/RewriteServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/SecuredHelloHandler.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/SecuredHelloHandler.java index fb68c42a040..da73d18b55d 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/SecuredHelloHandler.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/SecuredHelloHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithAnnotations.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithAnnotations.java index ca7ba901a84..d5ed0c922ca 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithAnnotations.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithAnnotations.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithJMX.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithJMX.java index 7c73c73b116..eb746d42ebd 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithJMX.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithJMX.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithJNDI.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithJNDI.java index 23c51719037..a8608299860 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithJNDI.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithJNDI.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/SimplestServer.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/SimplestServer.java index 73f8fbbe04c..6dfeb498472 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/SimplestServer.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/SimplestServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/SplitFileServer.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/SplitFileServer.java index a4c873f3b1f..4c1f5d09fd3 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/SplitFileServer.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/SplitFileServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/WebSocketJsrServer.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/WebSocketJsrServer.java index 916727658c0..9c621ff0e29 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/WebSocketJsrServer.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/WebSocketJsrServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/WebSocketServer.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/WebSocketServer.java index 1b854ebf24b..30b3a62b237 100644 --- a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/WebSocketServer.java +++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/WebSocketServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/examples/embedded/src/test/java/org/eclipse/jetty/embedded/TestXml.java b/examples/embedded/src/test/java/org/eclipse/jetty/embedded/TestXml.java index 614f981fd10..3807f16aadc 100644 --- a/examples/embedded/src/test/java/org/eclipse/jetty/embedded/TestXml.java +++ b/examples/embedded/src/test/java/org/eclipse/jetty/embedded/TestXml.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-alpn/jetty-alpn-client/src/main/java/org/eclipse/jetty/alpn/client/ALPNClientConnection.java b/jetty-alpn/jetty-alpn-client/src/main/java/org/eclipse/jetty/alpn/client/ALPNClientConnection.java index 8ec25a3661f..9779f0ec49a 100644 --- a/jetty-alpn/jetty-alpn-client/src/main/java/org/eclipse/jetty/alpn/client/ALPNClientConnection.java +++ b/jetty-alpn/jetty-alpn-client/src/main/java/org/eclipse/jetty/alpn/client/ALPNClientConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-alpn/jetty-alpn-client/src/main/java/org/eclipse/jetty/alpn/client/ALPNClientConnectionFactory.java b/jetty-alpn/jetty-alpn-client/src/main/java/org/eclipse/jetty/alpn/client/ALPNClientConnectionFactory.java index 04750504e14..c1a00326620 100644 --- a/jetty-alpn/jetty-alpn-client/src/main/java/org/eclipse/jetty/alpn/client/ALPNClientConnectionFactory.java +++ b/jetty-alpn/jetty-alpn-client/src/main/java/org/eclipse/jetty/alpn/client/ALPNClientConnectionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-alpn/jetty-alpn-conscrypt-client/src/main/java/org/eclipse/jetty/alpn/conscrypt/client/ConscryptClientALPNProcessor.java b/jetty-alpn/jetty-alpn-conscrypt-client/src/main/java/org/eclipse/jetty/alpn/conscrypt/client/ConscryptClientALPNProcessor.java index 4a3f94833b6..03d83a5d1c4 100644 --- a/jetty-alpn/jetty-alpn-conscrypt-client/src/main/java/org/eclipse/jetty/alpn/conscrypt/client/ConscryptClientALPNProcessor.java +++ b/jetty-alpn/jetty-alpn-conscrypt-client/src/main/java/org/eclipse/jetty/alpn/conscrypt/client/ConscryptClientALPNProcessor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-alpn/jetty-alpn-conscrypt-client/src/test/java/org/eclipse/jetty/alpn/java/client/ConscryptHTTP2Client.java b/jetty-alpn/jetty-alpn-conscrypt-client/src/test/java/org/eclipse/jetty/alpn/java/client/ConscryptHTTP2Client.java index 8b72b1eefde..d1d714dfce6 100644 --- a/jetty-alpn/jetty-alpn-conscrypt-client/src/test/java/org/eclipse/jetty/alpn/java/client/ConscryptHTTP2Client.java +++ b/jetty-alpn/jetty-alpn-conscrypt-client/src/test/java/org/eclipse/jetty/alpn/java/client/ConscryptHTTP2Client.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-alpn/jetty-alpn-conscrypt-server/src/main/java/org/eclipse/jetty/alpn/conscrypt/server/ConscryptServerALPNProcessor.java b/jetty-alpn/jetty-alpn-conscrypt-server/src/main/java/org/eclipse/jetty/alpn/conscrypt/server/ConscryptServerALPNProcessor.java index 76dfaa3a8db..9444683b58b 100644 --- a/jetty-alpn/jetty-alpn-conscrypt-server/src/main/java/org/eclipse/jetty/alpn/conscrypt/server/ConscryptServerALPNProcessor.java +++ b/jetty-alpn/jetty-alpn-conscrypt-server/src/main/java/org/eclipse/jetty/alpn/conscrypt/server/ConscryptServerALPNProcessor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-alpn/jetty-alpn-conscrypt-server/src/test/java/org/eclipse/jetty/alpn/conscrypt/server/ConscryptHTTP2Server.java b/jetty-alpn/jetty-alpn-conscrypt-server/src/test/java/org/eclipse/jetty/alpn/conscrypt/server/ConscryptHTTP2Server.java index 2c70dd6db0d..26f6ec1e92f 100644 --- a/jetty-alpn/jetty-alpn-conscrypt-server/src/test/java/org/eclipse/jetty/alpn/conscrypt/server/ConscryptHTTP2Server.java +++ b/jetty-alpn/jetty-alpn-conscrypt-server/src/test/java/org/eclipse/jetty/alpn/conscrypt/server/ConscryptHTTP2Server.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-alpn/jetty-alpn-java-client/src/main/java/org/eclipse/jetty/alpn/java/client/JDK9ClientALPNProcessor.java b/jetty-alpn/jetty-alpn-java-client/src/main/java/org/eclipse/jetty/alpn/java/client/JDK9ClientALPNProcessor.java index d049de486c0..f33a97e6a3a 100644 --- a/jetty-alpn/jetty-alpn-java-client/src/main/java/org/eclipse/jetty/alpn/java/client/JDK9ClientALPNProcessor.java +++ b/jetty-alpn/jetty-alpn-java-client/src/main/java/org/eclipse/jetty/alpn/java/client/JDK9ClientALPNProcessor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-alpn/jetty-alpn-java-client/src/test/java/org/eclipse/jetty/alpn/java/client/JDK9HTTP2Client.java b/jetty-alpn/jetty-alpn-java-client/src/test/java/org/eclipse/jetty/alpn/java/client/JDK9HTTP2Client.java index 7067fd66e5a..9dbcf11e479 100644 --- a/jetty-alpn/jetty-alpn-java-client/src/test/java/org/eclipse/jetty/alpn/java/client/JDK9HTTP2Client.java +++ b/jetty-alpn/jetty-alpn-java-client/src/test/java/org/eclipse/jetty/alpn/java/client/JDK9HTTP2Client.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-alpn/jetty-alpn-java-server/src/main/java/org/eclipse/jetty/alpn/java/server/JDK9ServerALPNProcessor.java b/jetty-alpn/jetty-alpn-java-server/src/main/java/org/eclipse/jetty/alpn/java/server/JDK9ServerALPNProcessor.java index d999a898692..fbacbdac97f 100644 --- a/jetty-alpn/jetty-alpn-java-server/src/main/java/org/eclipse/jetty/alpn/java/server/JDK9ServerALPNProcessor.java +++ b/jetty-alpn/jetty-alpn-java-server/src/main/java/org/eclipse/jetty/alpn/java/server/JDK9ServerALPNProcessor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-alpn/jetty-alpn-java-server/src/test/java/org/eclipse/jetty/alpn/java/server/JDK9ALPNTest.java b/jetty-alpn/jetty-alpn-java-server/src/test/java/org/eclipse/jetty/alpn/java/server/JDK9ALPNTest.java index 2aa48a522eb..8f74502dfe3 100644 --- a/jetty-alpn/jetty-alpn-java-server/src/test/java/org/eclipse/jetty/alpn/java/server/JDK9ALPNTest.java +++ b/jetty-alpn/jetty-alpn-java-server/src/test/java/org/eclipse/jetty/alpn/java/server/JDK9ALPNTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-alpn/jetty-alpn-java-server/src/test/java/org/eclipse/jetty/alpn/java/server/JDK9HTTP2Server.java b/jetty-alpn/jetty-alpn-java-server/src/test/java/org/eclipse/jetty/alpn/java/server/JDK9HTTP2Server.java index b3fe4b61ede..d2d2ce12536 100644 --- a/jetty-alpn/jetty-alpn-java-server/src/test/java/org/eclipse/jetty/alpn/java/server/JDK9HTTP2Server.java +++ b/jetty-alpn/jetty-alpn-java-server/src/test/java/org/eclipse/jetty/alpn/java/server/JDK9HTTP2Server.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-alpn/jetty-alpn-openjdk8-client/src/main/java/org/eclipse/jetty/alpn/java/client/OpenJDK8ClientALPNProcessor.java b/jetty-alpn/jetty-alpn-openjdk8-client/src/main/java/org/eclipse/jetty/alpn/java/client/OpenJDK8ClientALPNProcessor.java index fd1d4f10db3..4f27f7c3fc7 100644 --- a/jetty-alpn/jetty-alpn-openjdk8-client/src/main/java/org/eclipse/jetty/alpn/java/client/OpenJDK8ClientALPNProcessor.java +++ b/jetty-alpn/jetty-alpn-openjdk8-client/src/main/java/org/eclipse/jetty/alpn/java/client/OpenJDK8ClientALPNProcessor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-alpn/jetty-alpn-openjdk8-client/src/test/java/org/eclipse/jetty/alpn/java/client/OpenJDK8HTTP2Client.java b/jetty-alpn/jetty-alpn-openjdk8-client/src/test/java/org/eclipse/jetty/alpn/java/client/OpenJDK8HTTP2Client.java index bdbacdbfc56..c41c14596c3 100644 --- a/jetty-alpn/jetty-alpn-openjdk8-client/src/test/java/org/eclipse/jetty/alpn/java/client/OpenJDK8HTTP2Client.java +++ b/jetty-alpn/jetty-alpn-openjdk8-client/src/test/java/org/eclipse/jetty/alpn/java/client/OpenJDK8HTTP2Client.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-alpn/jetty-alpn-openjdk8-server/src/main/java/org/eclipse/jetty/alpn/openjdk8/server/OpenJDK8ServerALPNProcessor.java b/jetty-alpn/jetty-alpn-openjdk8-server/src/main/java/org/eclipse/jetty/alpn/openjdk8/server/OpenJDK8ServerALPNProcessor.java index 91058abc384..d121809c372 100644 --- a/jetty-alpn/jetty-alpn-openjdk8-server/src/main/java/org/eclipse/jetty/alpn/openjdk8/server/OpenJDK8ServerALPNProcessor.java +++ b/jetty-alpn/jetty-alpn-openjdk8-server/src/main/java/org/eclipse/jetty/alpn/openjdk8/server/OpenJDK8ServerALPNProcessor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-alpn/jetty-alpn-openjdk8-server/src/test/java/org/eclipse/jetty/alpn/openjdk8/server/OpenJDK8HTTP2Server.java b/jetty-alpn/jetty-alpn-openjdk8-server/src/test/java/org/eclipse/jetty/alpn/openjdk8/server/OpenJDK8HTTP2Server.java index 714cdc1dcf4..837a190f29a 100644 --- a/jetty-alpn/jetty-alpn-openjdk8-server/src/test/java/org/eclipse/jetty/alpn/openjdk8/server/OpenJDK8HTTP2Server.java +++ b/jetty-alpn/jetty-alpn-openjdk8-server/src/test/java/org/eclipse/jetty/alpn/openjdk8/server/OpenJDK8HTTP2Server.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-alpn/jetty-alpn-server/src/main/java/org/eclipse/jetty/alpn/server/ALPNServerConnection.java b/jetty-alpn/jetty-alpn-server/src/main/java/org/eclipse/jetty/alpn/server/ALPNServerConnection.java index fcd3a1c6bdb..0d724f74abe 100644 --- a/jetty-alpn/jetty-alpn-server/src/main/java/org/eclipse/jetty/alpn/server/ALPNServerConnection.java +++ b/jetty-alpn/jetty-alpn-server/src/main/java/org/eclipse/jetty/alpn/server/ALPNServerConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-alpn/jetty-alpn-server/src/main/java/org/eclipse/jetty/alpn/server/ALPNServerConnectionFactory.java b/jetty-alpn/jetty-alpn-server/src/main/java/org/eclipse/jetty/alpn/server/ALPNServerConnectionFactory.java index 8c95d5db0cc..fdf65b9d379 100644 --- a/jetty-alpn/jetty-alpn-server/src/main/java/org/eclipse/jetty/alpn/server/ALPNServerConnectionFactory.java +++ b/jetty-alpn/jetty-alpn-server/src/main/java/org/eclipse/jetty/alpn/server/ALPNServerConnectionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AbstractDiscoverableAnnotationHandler.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AbstractDiscoverableAnnotationHandler.java index 07d3afbd140..ab9a418c84c 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AbstractDiscoverableAnnotationHandler.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AbstractDiscoverableAnnotationHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationConfiguration.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationConfiguration.java index e9a39abd080..d1f008f9f75 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationConfiguration.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationDecorator.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationDecorator.java index 48c9b2bd117..bd516a4bde5 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationDecorator.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationDecorator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationIntrospector.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationIntrospector.java index 7a24a989fc5..e5b8714d5e8 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationIntrospector.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationIntrospector.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java index a23b6856167..0e7597a1de5 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ClassInheritanceHandler.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ClassInheritanceHandler.java index b1096cf7952..d2093ba258c 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ClassInheritanceHandler.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ClassInheritanceHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ContainerInitializerAnnotationHandler.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ContainerInitializerAnnotationHandler.java index 5fd74b4b579..f040f1c2f72 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ContainerInitializerAnnotationHandler.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ContainerInitializerAnnotationHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/DeclareRolesAnnotationHandler.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/DeclareRolesAnnotationHandler.java index daba6494b12..c52ba48f3a7 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/DeclareRolesAnnotationHandler.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/DeclareRolesAnnotationHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/MultiPartConfigAnnotationHandler.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/MultiPartConfigAnnotationHandler.java index 72d171eed0a..74f6482e7bf 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/MultiPartConfigAnnotationHandler.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/MultiPartConfigAnnotationHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/PostConstructAnnotationHandler.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/PostConstructAnnotationHandler.java index 4c1ac135f1c..59d009ac389 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/PostConstructAnnotationHandler.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/PostConstructAnnotationHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/PreDestroyAnnotationHandler.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/PreDestroyAnnotationHandler.java index 09fa4c922c2..542abdc5845 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/PreDestroyAnnotationHandler.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/PreDestroyAnnotationHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ResourceAnnotationHandler.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ResourceAnnotationHandler.java index 445f5d943e8..777b3371ac7 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ResourceAnnotationHandler.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ResourceAnnotationHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ResourcesAnnotationHandler.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ResourcesAnnotationHandler.java index 9132a337f82..7b8178aaf35 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ResourcesAnnotationHandler.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ResourcesAnnotationHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/RunAsAnnotationHandler.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/RunAsAnnotationHandler.java index 43ed86d213c..a765b8ea9c2 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/RunAsAnnotationHandler.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/RunAsAnnotationHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ServletContainerInitializersStarter.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ServletContainerInitializersStarter.java index 13dd0348568..7552a55f1ef 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ServletContainerInitializersStarter.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ServletContainerInitializersStarter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ServletSecurityAnnotationHandler.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ServletSecurityAnnotationHandler.java index a4395036faf..442bd98ff74 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ServletSecurityAnnotationHandler.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ServletSecurityAnnotationHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebFilterAnnotation.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebFilterAnnotation.java index c7de61c8263..435c9f34280 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebFilterAnnotation.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebFilterAnnotation.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebFilterAnnotationHandler.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebFilterAnnotationHandler.java index 1718a4feb2c..09ce8bc6fa8 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebFilterAnnotationHandler.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebFilterAnnotationHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebListenerAnnotation.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebListenerAnnotation.java index 89f9ba4f704..cb0dd23052a 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebListenerAnnotation.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebListenerAnnotation.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebListenerAnnotationHandler.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebListenerAnnotationHandler.java index 441d1441627..d3b0aa18653 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebListenerAnnotationHandler.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebListenerAnnotationHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebServletAnnotation.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebServletAnnotation.java index 940adba4f07..d7eaa3bc8fb 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebServletAnnotation.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebServletAnnotation.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebServletAnnotationHandler.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebServletAnnotationHandler.java index b7e392a3904..a42dee3a861 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebServletAnnotationHandler.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebServletAnnotationHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/package-info.java b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/package-info.java index f2f977059f1..7228624567d 100644 --- a/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/package-info.java +++ b/jetty-annotations/src/main/java/org/eclipse/jetty/annotations/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/test/java/org/acme/ClassOne.java b/jetty-annotations/src/test/java/org/acme/ClassOne.java index 6c36e0c2510..0f643f12de4 100644 --- a/jetty-annotations/src/test/java/org/acme/ClassOne.java +++ b/jetty-annotations/src/test/java/org/acme/ClassOne.java @@ -1,7 +1,7 @@ package org.acme; // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ClassA.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ClassA.java index b77e04cc684..5af8762c98f 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ClassA.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ClassA.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ClassB.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ClassB.java index b83a56ec793..b4c6885e376 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ClassB.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ClassB.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/FilterC.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/FilterC.java index 2f61d74d6b4..1556ca8b283 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/FilterC.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/FilterC.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/InterfaceD.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/InterfaceD.java index 8f9a772bb8f..0443e951733 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/InterfaceD.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/InterfaceD.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ListenerC.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ListenerC.java index 7f33ae760b0..cfd899055e5 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ListenerC.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ListenerC.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/Multi.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/Multi.java index d67ee5c6acf..134df024184 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/Multi.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/Multi.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/Sample.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/Sample.java index 4c3c5443a11..8ae1cbc51d8 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/Sample.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/Sample.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ServletC.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ServletC.java index 25124475ea5..f95b7867829 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ServletC.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ServletC.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ServletD.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ServletD.java index c5e5c9e8c8e..6a00d5f808d 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ServletD.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/ServletD.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestAnnotationConfiguration.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestAnnotationConfiguration.java index 275366c1e1f..75d805152f2 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestAnnotationConfiguration.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestAnnotationConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestAnnotationInheritance.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestAnnotationInheritance.java index 6800a684f88..c3a22e1b631 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestAnnotationInheritance.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestAnnotationInheritance.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestAnnotationParser.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestAnnotationParser.java index a734191fe35..c5449858c47 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestAnnotationParser.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestAnnotationParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestSecurityAnnotationConversions.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestSecurityAnnotationConversions.java index 7be020b0721..111e91c70b7 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestSecurityAnnotationConversions.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestSecurityAnnotationConversions.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestServletAnnotations.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestServletAnnotations.java index cdba04fc7d7..6d851888704 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestServletAnnotations.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/TestServletAnnotations.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/WebInfClassServletContainerInitializer.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/WebInfClassServletContainerInitializer.java index f770b0d19db..fb9b9b58df9 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/WebInfClassServletContainerInitializer.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/WebInfClassServletContainerInitializer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/resources/ResourceA.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/resources/ResourceA.java index 733025a58b6..26e44909f86 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/resources/ResourceA.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/resources/ResourceA.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/resources/ResourceB.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/resources/ResourceB.java index 674bb14ef46..bb2de97a7a4 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/resources/ResourceB.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/resources/ResourceB.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/resources/TestResourceAnnotations.java b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/resources/TestResourceAnnotations.java index b6143c249dc..e832b2a6227 100644 --- a/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/resources/TestResourceAnnotations.java +++ b/jetty-annotations/src/test/java/org/eclipse/jetty/annotations/resources/TestResourceAnnotations.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-ant/src/main/java/org/eclipse/jetty/ant/AntWebInfConfiguration.java b/jetty-ant/src/main/java/org/eclipse/jetty/ant/AntWebInfConfiguration.java index 6ae07abc984..6c2e9ada926 100644 --- a/jetty-ant/src/main/java/org/eclipse/jetty/ant/AntWebInfConfiguration.java +++ b/jetty-ant/src/main/java/org/eclipse/jetty/ant/AntWebInfConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-ant/src/main/java/org/eclipse/jetty/ant/JettyStopTask.java b/jetty-ant/src/main/java/org/eclipse/jetty/ant/JettyStopTask.java index 167864df17e..fd30fd9339e 100644 --- a/jetty-ant/src/main/java/org/eclipse/jetty/ant/JettyStopTask.java +++ b/jetty-ant/src/main/java/org/eclipse/jetty/ant/JettyStopTask.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-ant/src/main/java/org/eclipse/jetty/ant/package-info.java b/jetty-ant/src/main/java/org/eclipse/jetty/ant/package-info.java index 589f6104cce..8e76918c4fb 100644 --- a/jetty-ant/src/main/java/org/eclipse/jetty/ant/package-info.java +++ b/jetty-ant/src/main/java/org/eclipse/jetty/ant/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-ant/src/main/java/org/eclipse/jetty/ant/types/Attribute.java b/jetty-ant/src/main/java/org/eclipse/jetty/ant/types/Attribute.java index aed16c5a316..96633989b58 100644 --- a/jetty-ant/src/main/java/org/eclipse/jetty/ant/types/Attribute.java +++ b/jetty-ant/src/main/java/org/eclipse/jetty/ant/types/Attribute.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-ant/src/main/java/org/eclipse/jetty/ant/types/Attributes.java b/jetty-ant/src/main/java/org/eclipse/jetty/ant/types/Attributes.java index 590bd9ed655..db3de2fb456 100644 --- a/jetty-ant/src/main/java/org/eclipse/jetty/ant/types/Attributes.java +++ b/jetty-ant/src/main/java/org/eclipse/jetty/ant/types/Attributes.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-ant/src/main/java/org/eclipse/jetty/ant/types/Connector.java b/jetty-ant/src/main/java/org/eclipse/jetty/ant/types/Connector.java index a59b163e9f6..eddb1c39457 100644 --- a/jetty-ant/src/main/java/org/eclipse/jetty/ant/types/Connector.java +++ b/jetty-ant/src/main/java/org/eclipse/jetty/ant/types/Connector.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-ant/src/main/java/org/eclipse/jetty/ant/types/package-info.java b/jetty-ant/src/main/java/org/eclipse/jetty/ant/types/package-info.java index d3ad358cd3a..74366b9abc5 100644 --- a/jetty-ant/src/main/java/org/eclipse/jetty/ant/types/package-info.java +++ b/jetty-ant/src/main/java/org/eclipse/jetty/ant/types/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-ant/src/main/java/org/eclipse/jetty/ant/utils/package-info.java b/jetty-ant/src/main/java/org/eclipse/jetty/ant/utils/package-info.java index 9c01692457f..21a25fd4331 100644 --- a/jetty-ant/src/main/java/org/eclipse/jetty/ant/utils/package-info.java +++ b/jetty-ant/src/main/java/org/eclipse/jetty/ant/utils/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-ant/src/test/java/org/eclipse/jetty/ant/AntBuild.java b/jetty-ant/src/test/java/org/eclipse/jetty/ant/AntBuild.java index 919b6323fb4..9e4db36eed5 100644 --- a/jetty-ant/src/test/java/org/eclipse/jetty/ant/AntBuild.java +++ b/jetty-ant/src/test/java/org/eclipse/jetty/ant/AntBuild.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-ant/src/test/java/org/eclipse/jetty/ant/JettyAntTaskTest.java b/jetty-ant/src/test/java/org/eclipse/jetty/ant/JettyAntTaskTest.java index 8ea6ab6dfc1..ca2ef880874 100644 --- a/jetty-ant/src/test/java/org/eclipse/jetty/ant/JettyAntTaskTest.java +++ b/jetty-ant/src/test/java/org/eclipse/jetty/ant/JettyAntTaskTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/AnyLiteral.java b/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/AnyLiteral.java index 83eb00c8c6c..54d4f10eb57 100644 --- a/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/AnyLiteral.java +++ b/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/AnyLiteral.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/JettyLogFactory.java b/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/JettyLogFactory.java index 39a317988bc..aaeddb98446 100644 --- a/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/JettyLogFactory.java +++ b/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/JettyLogFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/NamedLiteral.java b/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/NamedLiteral.java index 63ea17e2288..9b1584c62db 100644 --- a/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/NamedLiteral.java +++ b/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/NamedLiteral.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -43,4 +43,4 @@ public class NamedLiteral extends AnnotationLiteral implements Named this.value = name; } } -} \ No newline at end of file +} diff --git a/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/ScopedInstance.java b/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/ScopedInstance.java index 619c8e74b1f..1b51d8823f9 100644 --- a/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/ScopedInstance.java +++ b/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/ScopedInstance.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/SimpleBeanStore.java b/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/SimpleBeanStore.java index df75e9a19cd..2b3616022fe 100644 --- a/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/SimpleBeanStore.java +++ b/jetty-cdi/cdi-core/src/main/java/org/eclipse/jetty/cdi/core/SimpleBeanStore.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -92,4 +92,4 @@ public class SimpleBeanStore { return String.format("%s@%X[size=%d]",this.getClass().getSimpleName(),hashCode(),beans.size()); } -} \ No newline at end of file +} diff --git a/jetty-cdi/cdi-core/src/test/java/org/eclipse/jetty/cdi/core/AbstractWeldTest.java b/jetty-cdi/cdi-core/src/test/java/org/eclipse/jetty/cdi/core/AbstractWeldTest.java index 7644f181ed3..c71967763de 100644 --- a/jetty-cdi/cdi-core/src/test/java/org/eclipse/jetty/cdi/core/AbstractWeldTest.java +++ b/jetty-cdi/cdi-core/src/test/java/org/eclipse/jetty/cdi/core/AbstractWeldTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-core/src/test/java/org/eclipse/jetty/cdi/core/logging/LeanConsoleHandler.java b/jetty-cdi/cdi-core/src/test/java/org/eclipse/jetty/cdi/core/logging/LeanConsoleHandler.java index 90fb7e33ab2..1941aeb23dc 100644 --- a/jetty-cdi/cdi-core/src/test/java/org/eclipse/jetty/cdi/core/logging/LeanConsoleHandler.java +++ b/jetty-cdi/cdi-core/src/test/java/org/eclipse/jetty/cdi/core/logging/LeanConsoleHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-core/src/test/java/org/eclipse/jetty/cdi/core/logging/LogFactory.java b/jetty-cdi/cdi-core/src/test/java/org/eclipse/jetty/cdi/core/logging/LogFactory.java index 0e726d60ebb..040fcfcdb26 100644 --- a/jetty-cdi/cdi-core/src/test/java/org/eclipse/jetty/cdi/core/logging/LogFactory.java +++ b/jetty-cdi/cdi-core/src/test/java/org/eclipse/jetty/cdi/core/logging/LogFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-core/src/test/java/org/eclipse/jetty/cdi/core/logging/Logging.java b/jetty-cdi/cdi-core/src/test/java/org/eclipse/jetty/cdi/core/logging/Logging.java index 53077b71f25..55181c487a0 100644 --- a/jetty-cdi/cdi-core/src/test/java/org/eclipse/jetty/cdi/core/logging/Logging.java +++ b/jetty-cdi/cdi-core/src/test/java/org/eclipse/jetty/cdi/core/logging/Logging.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-servlet/src/main/java/org/eclipse/jetty/cdi/servlet/EmbeddedCdiHandler.java b/jetty-cdi/cdi-servlet/src/main/java/org/eclipse/jetty/cdi/servlet/EmbeddedCdiHandler.java index e1e128cb4f8..600a219ff84 100644 --- a/jetty-cdi/cdi-servlet/src/main/java/org/eclipse/jetty/cdi/servlet/EmbeddedCdiHandler.java +++ b/jetty-cdi/cdi-servlet/src/main/java/org/eclipse/jetty/cdi/servlet/EmbeddedCdiHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-servlet/src/main/java/org/eclipse/jetty/cdi/servlet/JettyWeldInitializer.java b/jetty-cdi/cdi-servlet/src/main/java/org/eclipse/jetty/cdi/servlet/JettyWeldInitializer.java index 3fd5cff8665..9069f98e0d9 100644 --- a/jetty-cdi/cdi-servlet/src/main/java/org/eclipse/jetty/cdi/servlet/JettyWeldInitializer.java +++ b/jetty-cdi/cdi-servlet/src/main/java/org/eclipse/jetty/cdi/servlet/JettyWeldInitializer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-servlet/src/main/java/org/eclipse/jetty/cdi/servlet/WeldDeploymentBinding.java b/jetty-cdi/cdi-servlet/src/main/java/org/eclipse/jetty/cdi/servlet/WeldDeploymentBinding.java index 77eafe4481f..0502e35cc46 100644 --- a/jetty-cdi/cdi-servlet/src/main/java/org/eclipse/jetty/cdi/servlet/WeldDeploymentBinding.java +++ b/jetty-cdi/cdi-servlet/src/main/java/org/eclipse/jetty/cdi/servlet/WeldDeploymentBinding.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/Dumper.java b/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/Dumper.java index 8faed6976fd..d78edac76d8 100644 --- a/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/Dumper.java +++ b/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/Dumper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/IsoTimeFormatter.java b/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/IsoTimeFormatter.java index e47e421f113..426275daba8 100644 --- a/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/IsoTimeFormatter.java +++ b/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/IsoTimeFormatter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/LocaleTimeFormatter.java b/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/LocaleTimeFormatter.java index 619ed8d63ad..e018ececbfa 100644 --- a/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/LocaleTimeFormatter.java +++ b/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/LocaleTimeFormatter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/RequestInfoServlet.java b/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/RequestInfoServlet.java index 6b6a347ffe4..9f99843f294 100644 --- a/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/RequestInfoServlet.java +++ b/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/RequestInfoServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/RequestParamsDumper.java b/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/RequestParamsDumper.java index 5b8dc6216bc..64818421f1d 100644 --- a/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/RequestParamsDumper.java +++ b/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/RequestParamsDumper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/TimeFormatter.java b/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/TimeFormatter.java index bd19ce309ea..909e7098d58 100644 --- a/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/TimeFormatter.java +++ b/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/TimeFormatter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/TimeServlet.java b/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/TimeServlet.java index 6361935c715..6af0cf6bd78 100644 --- a/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/TimeServlet.java +++ b/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/TimeServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/WeldInitializationTest.java b/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/WeldInitializationTest.java index b848115927a..8fcbdef46fa 100644 --- a/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/WeldInitializationTest.java +++ b/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/WeldInitializationTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/AbstractContainerListener.java b/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/AbstractContainerListener.java index eafe1acb469..b8586be0606 100644 --- a/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/AbstractContainerListener.java +++ b/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/AbstractContainerListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/JavaWebSocketSessionProducer.java b/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/JavaWebSocketSessionProducer.java index 69527a26715..200f0b0ecf9 100644 --- a/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/JavaWebSocketSessionProducer.java +++ b/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/JavaWebSocketSessionProducer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/JettyWebSocketSessionProducer.java b/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/JettyWebSocketSessionProducer.java index 66bdf5853e2..7cdfafd93f7 100644 --- a/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/JettyWebSocketSessionProducer.java +++ b/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/JettyWebSocketSessionProducer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/WebSocketCdiInitializer.java b/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/WebSocketCdiInitializer.java index 450a42ccb67..9c8cbffc29c 100644 --- a/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/WebSocketCdiInitializer.java +++ b/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/WebSocketCdiInitializer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/WebSocketCdiListener.java b/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/WebSocketCdiListener.java index 0fe2d7f3c8d..8e7544025d7 100644 --- a/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/WebSocketCdiListener.java +++ b/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/WebSocketCdiListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/WebSocketScopeContext.java b/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/WebSocketScopeContext.java index bc464855143..64ab552e37b 100644 --- a/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/WebSocketScopeContext.java +++ b/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/WebSocketScopeContext.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/WebSocketScopeExtension.java b/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/WebSocketScopeExtension.java index 16df70b6dbd..148f28d4b72 100644 --- a/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/WebSocketScopeExtension.java +++ b/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/WebSocketScopeExtension.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/annotation/WebSocketScope.java b/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/annotation/WebSocketScope.java index aae39ef88bd..9c4ec5fde80 100644 --- a/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/annotation/WebSocketScope.java +++ b/jetty-cdi/cdi-websocket/src/main/java/org/eclipse/jetty/cdi/websocket/annotation/WebSocketScope.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/CheckSocket.java b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/CheckSocket.java index 46120753e87..c616a7c6757 100644 --- a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/CheckSocket.java +++ b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/CheckSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicapp/BasicAppTest.java b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicapp/BasicAppTest.java index 9574b9abca4..d77f05db639 100644 --- a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicapp/BasicAppTest.java +++ b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicapp/BasicAppTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicapp/EchoSocket.java b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicapp/EchoSocket.java index 2cdd1f4275a..57ec623a0ee 100644 --- a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicapp/EchoSocket.java +++ b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicapp/EchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicscope/Food.java b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicscope/Food.java index 24a0fa2d9ad..a4c933a2746 100644 --- a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicscope/Food.java +++ b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicscope/Food.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicscope/Meal.java b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicscope/Meal.java index 8fa4d567549..549bddbbb43 100644 --- a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicscope/Meal.java +++ b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicscope/Meal.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicscope/ScopeBasicsTest.java b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicscope/ScopeBasicsTest.java index ef76864cde7..278b61890a5 100644 --- a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicscope/ScopeBasicsTest.java +++ b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/basicscope/ScopeBasicsTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/cdiapp/CdiAppTest.java b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/cdiapp/CdiAppTest.java index 6b384fbc127..07f0c7a9a43 100644 --- a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/cdiapp/CdiAppTest.java +++ b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/cdiapp/CdiAppTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/cdiapp/DataMaker.java b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/cdiapp/DataMaker.java index 230f9b6f061..bf74023d362 100644 --- a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/cdiapp/DataMaker.java +++ b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/cdiapp/DataMaker.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/cdiapp/EchoSocket.java b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/cdiapp/EchoSocket.java index b52e3d80b35..8b41a85c764 100644 --- a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/cdiapp/EchoSocket.java +++ b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/cdiapp/EchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/cdiapp/InfoSocket.java b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/cdiapp/InfoSocket.java index e93eb4b9245..beb0c384279 100644 --- a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/cdiapp/InfoSocket.java +++ b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/cdiapp/InfoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/BogusSession.java b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/BogusSession.java index 3e669c44ca3..0e1ed64ca52 100644 --- a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/BogusSession.java +++ b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/BogusSession.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/BogusSocket.java b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/BogusSocket.java index c55f2962a06..cd296cdcef0 100644 --- a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/BogusSocket.java +++ b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/BogusSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/Food.java b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/Food.java index 164ede5a403..29810ee56ed 100644 --- a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/Food.java +++ b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/Food.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/Meal.java b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/Meal.java index aa24e0bba5e..5f09dbbf1a0 100644 --- a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/Meal.java +++ b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/Meal.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/WebSocketScopeBaselineTest.java b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/WebSocketScopeBaselineTest.java index f780e60ab67..2e1a74ead5a 100644 --- a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/WebSocketScopeBaselineTest.java +++ b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/WebSocketScopeBaselineTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/WebSocketScopeSessionTest.java b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/WebSocketScopeSessionTest.java index b8ad0835803..63358d2b759 100644 --- a/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/WebSocketScopeSessionTest.java +++ b/jetty-cdi/cdi-websocket/src/test/java/org/eclipse/jetty/cdi/websocket/wsscope/WebSocketScopeSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/test-cdi-it/src/test/java/org/eclipse/jetty/tests/HelloIT.java b/jetty-cdi/test-cdi-it/src/test/java/org/eclipse/jetty/tests/HelloIT.java index e90c413c2e3..371d3464500 100644 --- a/jetty-cdi/test-cdi-it/src/test/java/org/eclipse/jetty/tests/HelloIT.java +++ b/jetty-cdi/test-cdi-it/src/test/java/org/eclipse/jetty/tests/HelloIT.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/test-cdi-it/src/test/java/org/eclipse/jetty/tests/ServerInfoIT.java b/jetty-cdi/test-cdi-it/src/test/java/org/eclipse/jetty/tests/ServerInfoIT.java index 53eeb45b5d6..7adc851a3f3 100644 --- a/jetty-cdi/test-cdi-it/src/test/java/org/eclipse/jetty/tests/ServerInfoIT.java +++ b/jetty-cdi/test-cdi-it/src/test/java/org/eclipse/jetty/tests/ServerInfoIT.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/test-cdi-it/src/test/java/org/eclipse/jetty/tests/ws/SessionInfoIT.java b/jetty-cdi/test-cdi-it/src/test/java/org/eclipse/jetty/tests/ws/SessionInfoIT.java index 9ff3c239045..21931d4b0d5 100644 --- a/jetty-cdi/test-cdi-it/src/test/java/org/eclipse/jetty/tests/ws/SessionInfoIT.java +++ b/jetty-cdi/test-cdi-it/src/test/java/org/eclipse/jetty/tests/ws/SessionInfoIT.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/HelloServlet.java b/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/HelloServlet.java index 8809ca1be35..2201dddefd5 100644 --- a/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/HelloServlet.java +++ b/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/HelloServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/ServerInfoServlet.java b/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/ServerInfoServlet.java index f575c0e9b75..11b264b1998 100644 --- a/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/ServerInfoServlet.java +++ b/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/ServerInfoServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/logging/JULog.java b/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/logging/JULog.java index 718bc5066e4..dc7c7d7567f 100644 --- a/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/logging/JULog.java +++ b/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/logging/JULog.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/logging/JULogFactory.java b/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/logging/JULogFactory.java index ba5e78455cc..4a24ac94aee 100644 --- a/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/logging/JULogFactory.java +++ b/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/logging/JULogFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/ws/SessionInfoSocket.java b/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/ws/SessionInfoSocket.java index 64701462a69..efd1846e036 100644 --- a/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/ws/SessionInfoSocket.java +++ b/jetty-cdi/test-cdi-webapp/src/main/java/org/eclipse/jetty/tests/ws/SessionInfoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractConnectionPool.java b/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractConnectionPool.java index 19d0d1f073c..78d2ee3aa5d 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractConnectionPool.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractConnectionPool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractConnectorHttpClientTransport.java b/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractConnectorHttpClientTransport.java index 669ba41d757..67f57a11486 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractConnectorHttpClientTransport.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractConnectorHttpClientTransport.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractHttpClientTransport.java b/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractHttpClientTransport.java index fcbeb0a17c7..3a601f7c237 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractHttpClientTransport.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/AbstractHttpClientTransport.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/AsyncContentProvider.java b/jetty-client/src/main/java/org/eclipse/jetty/client/AsyncContentProvider.java index ccd55245b57..a0d21e2d5fe 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/AsyncContentProvider.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/AsyncContentProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/AuthenticationProtocolHandler.java b/jetty-client/src/main/java/org/eclipse/jetty/client/AuthenticationProtocolHandler.java index 11328247ad1..1fe2cd264cf 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/AuthenticationProtocolHandler.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/AuthenticationProtocolHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/ConnectionPool.java b/jetty-client/src/main/java/org/eclipse/jetty/client/ConnectionPool.java index d2895b64fd8..7cd8a3088de 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/ConnectionPool.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/ConnectionPool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/ContentDecoder.java b/jetty-client/src/main/java/org/eclipse/jetty/client/ContentDecoder.java index ad7e78332e6..471823f3d7f 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/ContentDecoder.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/ContentDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/ContinueProtocolHandler.java b/jetty-client/src/main/java/org/eclipse/jetty/client/ContinueProtocolHandler.java index 16825e704a2..fde872d55ce 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/ContinueProtocolHandler.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/ContinueProtocolHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/DuplexConnectionPool.java b/jetty-client/src/main/java/org/eclipse/jetty/client/DuplexConnectionPool.java index 92bbd49311c..6f51a4a6d8e 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/DuplexConnectionPool.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/DuplexConnectionPool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/GZIPContentDecoder.java b/jetty-client/src/main/java/org/eclipse/jetty/client/GZIPContentDecoder.java index bedd8a61ae8..857d634f044 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/GZIPContentDecoder.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/GZIPContentDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpAuthenticationStore.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpAuthenticationStore.java index 359c0a77575..54122c17d9a 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpAuthenticationStore.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpAuthenticationStore.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpChannel.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpChannel.java index 37230b902ec..3351e46f6bb 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpChannel.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpChannel.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpClient.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpClient.java index 0ffe40925db..b4b71319626 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpClient.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpClient.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpClientTransport.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpClientTransport.java index a2ba6d8b145..ff5f9269d6d 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpClientTransport.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpClientTransport.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpConnection.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpConnection.java index 19c6f7d1bd1..de3c4576da4 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpConnection.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpContent.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpContent.java index 0f02a6d970d..faa26d21021 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpContent.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpContent.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpContentResponse.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpContentResponse.java index 8ae0497e1cb..cfe7ba23346 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpContentResponse.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpContentResponse.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpConversation.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpConversation.java index 6db4e96a9f4..a555d700965 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpConversation.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpConversation.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpDestination.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpDestination.java index fda86b1d7fc..58fde88a489 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpDestination.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpDestination.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpExchange.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpExchange.java index 7c15d534adc..d694bc950e3 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpExchange.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpExchange.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpProxy.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpProxy.java index 986add411ce..42789788b53 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpProxy.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpProxy.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpReceiver.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpReceiver.java index 1e33255f6fa..7690791347b 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpReceiver.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpReceiver.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRedirector.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRedirector.java index 9d50b01e8c6..24bdc74d8c6 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRedirector.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRedirector.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRequest.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRequest.java index 0d473085779..f6a453fa67c 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRequest.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRequest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRequestException.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRequestException.java index 54938a27836..ac383844e6c 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRequestException.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRequestException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpResponse.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpResponse.java index e37e2758225..a746ca0be5e 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpResponse.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpResponse.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpResponseException.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpResponseException.java index b9e568d5821..e0d9c625a6b 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpResponseException.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpResponseException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpSender.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpSender.java index 5aa9787d610..694ff157509 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpSender.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpSender.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/LeakTrackingConnectionPool.java b/jetty-client/src/main/java/org/eclipse/jetty/client/LeakTrackingConnectionPool.java index 55cf45a5a0c..d631511dbc1 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/LeakTrackingConnectionPool.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/LeakTrackingConnectionPool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/MultiplexConnectionPool.java b/jetty-client/src/main/java/org/eclipse/jetty/client/MultiplexConnectionPool.java index 8e3bdf31195..05179ffd421 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/MultiplexConnectionPool.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/MultiplexConnectionPool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/MultiplexHttpDestination.java b/jetty-client/src/main/java/org/eclipse/jetty/client/MultiplexHttpDestination.java index 44c264a36cf..544422c3dc9 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/MultiplexHttpDestination.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/MultiplexHttpDestination.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/Origin.java b/jetty-client/src/main/java/org/eclipse/jetty/client/Origin.java index 39defb6cfe3..c94dfb8928c 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/Origin.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/Origin.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/PoolingHttpDestination.java b/jetty-client/src/main/java/org/eclipse/jetty/client/PoolingHttpDestination.java index 066184c6909..1da6f1e4859 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/PoolingHttpDestination.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/PoolingHttpDestination.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/ProtocolHandler.java b/jetty-client/src/main/java/org/eclipse/jetty/client/ProtocolHandler.java index b55aefddca1..c7d60b907d9 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/ProtocolHandler.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/ProtocolHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/ProtocolHandlers.java b/jetty-client/src/main/java/org/eclipse/jetty/client/ProtocolHandlers.java index fac8499cec8..04ab05278f2 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/ProtocolHandlers.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/ProtocolHandlers.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/ProxyAuthenticationProtocolHandler.java b/jetty-client/src/main/java/org/eclipse/jetty/client/ProxyAuthenticationProtocolHandler.java index f0655c9b1c9..207a0ac020c 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/ProxyAuthenticationProtocolHandler.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/ProxyAuthenticationProtocolHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/ProxyConfiguration.java b/jetty-client/src/main/java/org/eclipse/jetty/client/ProxyConfiguration.java index 4db6a99d013..4bfeb5b4805 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/ProxyConfiguration.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/ProxyConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/RedirectProtocolHandler.java b/jetty-client/src/main/java/org/eclipse/jetty/client/RedirectProtocolHandler.java index 34ecdfd0304..6b0cb3e0bb8 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/RedirectProtocolHandler.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/RedirectProtocolHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/RequestNotifier.java b/jetty-client/src/main/java/org/eclipse/jetty/client/RequestNotifier.java index e93c1ef4e95..9d27f62187b 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/RequestNotifier.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/RequestNotifier.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/ResponseNotifier.java b/jetty-client/src/main/java/org/eclipse/jetty/client/ResponseNotifier.java index e4c2ffe3f69..6d9faa94089 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/ResponseNotifier.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/ResponseNotifier.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/RoundRobinConnectionPool.java b/jetty-client/src/main/java/org/eclipse/jetty/client/RoundRobinConnectionPool.java index 2986d1a3189..64cda710b16 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/RoundRobinConnectionPool.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/RoundRobinConnectionPool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/SendFailure.java b/jetty-client/src/main/java/org/eclipse/jetty/client/SendFailure.java index eccf899eed8..53df9eb3449 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/SendFailure.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/SendFailure.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/Socks4Proxy.java b/jetty-client/src/main/java/org/eclipse/jetty/client/Socks4Proxy.java index 2c35a85ff4a..0cfee584cfa 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/Socks4Proxy.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/Socks4Proxy.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/Synchronizable.java b/jetty-client/src/main/java/org/eclipse/jetty/client/Synchronizable.java index 67be28fd9ab..e1a77121b63 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/Synchronizable.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/Synchronizable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/TimeoutCompleteListener.java b/jetty-client/src/main/java/org/eclipse/jetty/client/TimeoutCompleteListener.java index e5f8832766a..ced60b57239 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/TimeoutCompleteListener.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/TimeoutCompleteListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/ValidatingConnectionPool.java b/jetty-client/src/main/java/org/eclipse/jetty/client/ValidatingConnectionPool.java index bc1aa22ac56..f1ffad9e7d3 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/ValidatingConnectionPool.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/ValidatingConnectionPool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/WWWAuthenticationProtocolHandler.java b/jetty-client/src/main/java/org/eclipse/jetty/client/WWWAuthenticationProtocolHandler.java index 3f6f13867f4..2ab13b00446 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/WWWAuthenticationProtocolHandler.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/WWWAuthenticationProtocolHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/api/Authentication.java b/jetty-client/src/main/java/org/eclipse/jetty/client/api/Authentication.java index 6333a377f35..ddd2716145e 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/api/Authentication.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/api/Authentication.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/api/AuthenticationStore.java b/jetty-client/src/main/java/org/eclipse/jetty/client/api/AuthenticationStore.java index 5fffdc33a5a..14315103d75 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/api/AuthenticationStore.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/api/AuthenticationStore.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/api/Connection.java b/jetty-client/src/main/java/org/eclipse/jetty/client/api/Connection.java index 26e548ae1bd..b50bead1881 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/api/Connection.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/api/Connection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/api/ContentProvider.java b/jetty-client/src/main/java/org/eclipse/jetty/client/api/ContentProvider.java index 41293cfb898..ba11fdbc636 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/api/ContentProvider.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/api/ContentProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/api/ContentResponse.java b/jetty-client/src/main/java/org/eclipse/jetty/client/api/ContentResponse.java index 074191bb366..01e22efa62b 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/api/ContentResponse.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/api/ContentResponse.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/api/Destination.java b/jetty-client/src/main/java/org/eclipse/jetty/client/api/Destination.java index 491ef11796e..2325657c0fb 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/api/Destination.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/api/Destination.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/api/Request.java b/jetty-client/src/main/java/org/eclipse/jetty/client/api/Request.java index edd2d3a9d8b..97bcf4c9014 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/api/Request.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/api/Request.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/api/Response.java b/jetty-client/src/main/java/org/eclipse/jetty/client/api/Response.java index 562a9f77144..98efe012e1b 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/api/Response.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/api/Response.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/api/Result.java b/jetty-client/src/main/java/org/eclipse/jetty/client/api/Result.java index 08e9e7cc8d0..c014562ef5a 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/api/Result.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/api/Result.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/api/package-info.java b/jetty-client/src/main/java/org/eclipse/jetty/client/api/package-info.java index 066cf981d48..b038f552a1b 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/api/package-info.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/api/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpChannelOverHTTP.java b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpChannelOverHTTP.java index cec9cd9110f..892ff052e7c 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpChannelOverHTTP.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpChannelOverHTTP.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpClientTransportOverHTTP.java b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpClientTransportOverHTTP.java index d91bc1da02a..8c353e98f79 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpClientTransportOverHTTP.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpClientTransportOverHTTP.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpConnectionOverHTTP.java b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpConnectionOverHTTP.java index a6e69e8dad7..001989b7913 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpConnectionOverHTTP.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpConnectionOverHTTP.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpConnectionUpgrader.java b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpConnectionUpgrader.java index e09c9f274ab..e1da68d11c5 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpConnectionUpgrader.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpConnectionUpgrader.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpDestinationOverHTTP.java b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpDestinationOverHTTP.java index d6293859373..85660039ea7 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpDestinationOverHTTP.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpDestinationOverHTTP.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTP.java b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTP.java index d6a9c2f96a5..81697151435 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTP.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTP.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpSenderOverHTTP.java b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpSenderOverHTTP.java index 003d685f9c6..4cab4008904 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpSenderOverHTTP.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/http/HttpSenderOverHTTP.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/jmx/HttpClientMBean.java b/jetty-client/src/main/java/org/eclipse/jetty/client/jmx/HttpClientMBean.java index 6ec3ffcdcef..dac274d4ccf 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/jmx/HttpClientMBean.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/jmx/HttpClientMBean.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/package-info.java b/jetty-client/src/main/java/org/eclipse/jetty/client/package-info.java index 9eb109df1ee..44bdf682a96 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/package-info.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/AbstractAuthentication.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/AbstractAuthentication.java index 7ef2c4e8c1c..c0475d22ff5 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/AbstractAuthentication.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/AbstractAuthentication.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/AbstractTypedContentProvider.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/AbstractTypedContentProvider.java index 6f368418c72..e2eba112dc7 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/AbstractTypedContentProvider.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/AbstractTypedContentProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/BasicAuthentication.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/BasicAuthentication.java index 800d997b119..4d8c2680f6a 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/BasicAuthentication.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/BasicAuthentication.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/BufferingResponseListener.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/BufferingResponseListener.java index d0229b286b0..0b070ffca83 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/BufferingResponseListener.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/BufferingResponseListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/ByteBufferContentProvider.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/ByteBufferContentProvider.java index d9e879c71b0..7b4fe2f034b 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/ByteBufferContentProvider.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/ByteBufferContentProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/BytesContentProvider.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/BytesContentProvider.java index 551a33d1b3a..44fe38d9900 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/BytesContentProvider.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/BytesContentProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/DeferredContentProvider.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/DeferredContentProvider.java index 335c2eb0b98..909495ae2c2 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/DeferredContentProvider.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/DeferredContentProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/DigestAuthentication.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/DigestAuthentication.java index fc2fb8363d6..50152277725 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/DigestAuthentication.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/DigestAuthentication.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/FormContentProvider.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/FormContentProvider.java index e39b70c3a10..8e04561ab2d 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/FormContentProvider.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/FormContentProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/FutureResponseListener.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/FutureResponseListener.java index 5e1a0c87ac1..f848340fbd6 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/FutureResponseListener.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/FutureResponseListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/InputStreamContentProvider.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/InputStreamContentProvider.java index 9f8e2ad168a..7077dbbe130 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/InputStreamContentProvider.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/InputStreamContentProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/InputStreamResponseListener.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/InputStreamResponseListener.java index a5e56fbff05..c31a68b7d43 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/InputStreamResponseListener.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/InputStreamResponseListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/MultiPartContentProvider.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/MultiPartContentProvider.java index 8e61f8ec453..1c223fecb84 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/MultiPartContentProvider.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/MultiPartContentProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/OutputStreamContentProvider.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/OutputStreamContentProvider.java index c946f9b3ef9..a56b472a52b 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/OutputStreamContentProvider.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/OutputStreamContentProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/PathContentProvider.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/PathContentProvider.java index dc103dee615..720b7cd99c7 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/PathContentProvider.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/PathContentProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/SPNEGOAuthentication.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/SPNEGOAuthentication.java index 601f4abfd24..9e7add21783 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/SPNEGOAuthentication.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/SPNEGOAuthentication.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/StringContentProvider.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/StringContentProvider.java index 86aed965940..0489e76e4c6 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/StringContentProvider.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/StringContentProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/util/package-info.java b/jetty-client/src/main/java/org/eclipse/jetty/client/util/package-info.java index c0a3e0258f5..af36359f78e 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/util/package-info.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/util/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/AbstractHttpClientServerTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/AbstractHttpClientServerTest.java index a8a263772bf..dc47b51eebd 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/AbstractHttpClientServerTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/AbstractHttpClientServerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/ClientConnectionCloseTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/ClientConnectionCloseTest.java index 85aa2a97be2..6e81bcf45f6 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/ClientConnectionCloseTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/ClientConnectionCloseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/ConnectionPoolTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/ConnectionPoolTest.java index 26a810e3739..6dd31ce1bf7 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/ConnectionPoolTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/ConnectionPoolTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/ContentResponseTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/ContentResponseTest.java index 201eaa53936..43adc8bc0fe 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/ContentResponseTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/ContentResponseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/EmptyServerHandler.java b/jetty-client/src/test/java/org/eclipse/jetty/client/EmptyServerHandler.java index dca7a45c53b..cc36ad4126c 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/EmptyServerHandler.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/EmptyServerHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/ExternalSiteTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/ExternalSiteTest.java index 9105a955ad3..50238673069 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/ExternalSiteTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/ExternalSiteTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/GZIPContentDecoderTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/GZIPContentDecoderTest.java index 333ff8c1c51..c627ba84547 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/GZIPContentDecoderTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/GZIPContentDecoderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HostnameVerificationTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HostnameVerificationTest.java index 985ff01473d..706471023fd 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HostnameVerificationTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HostnameVerificationTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpAuthenticationStoreTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpAuthenticationStoreTest.java index 071e3614638..dbf8e0f9673 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpAuthenticationStoreTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpAuthenticationStoreTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientAsyncContentTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientAsyncContentTest.java index 8663ba4c999..b1f3bb78988 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientAsyncContentTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientAsyncContentTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientAuthenticationTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientAuthenticationTest.java index 12a02716450..da66f466d51 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientAuthenticationTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientAuthenticationTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientChunkedContentTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientChunkedContentTest.java index 3704f0c5f03..289f78f52ab 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientChunkedContentTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientChunkedContentTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientCustomProxyTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientCustomProxyTest.java index 5380befd7c6..529df7b4112 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientCustomProxyTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientCustomProxyTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientExplicitConnectionTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientExplicitConnectionTest.java index fe70713c688..a4c27d2f6ed 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientExplicitConnectionTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientExplicitConnectionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientFailureTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientFailureTest.java index cc92cff52fd..5192550d743 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientFailureTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientFailureTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientGZIPTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientGZIPTest.java index 0c4d5b1f5f4..0e47e96617b 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientGZIPTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientGZIPTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientProxyTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientProxyTest.java index 042ead500a9..f46d58d330e 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientProxyTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientProxyTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientRedirectTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientRedirectTest.java index fbcac8d2d3a..9038ec52f95 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientRedirectTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientRedirectTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientSynchronizationTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientSynchronizationTest.java index 2aafbe1b783..4834df9fa69 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientSynchronizationTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientSynchronizationTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTLSTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTLSTest.java index 076d923a816..ecb7789efb7 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTLSTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTLSTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTest.java index d3470da5e33..b32c271ff45 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientURITest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientURITest.java index bd4a567381c..8523d0b2fc6 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientURITest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientURITest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientUploadDuringServerShutdown.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientUploadDuringServerShutdown.java index 73804840b3e..09c43659315 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientUploadDuringServerShutdown.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientUploadDuringServerShutdown.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpConnectionLifecycleTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpConnectionLifecycleTest.java index 624092493a6..9dfc0cde09d 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpConnectionLifecycleTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpConnectionLifecycleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpCookieTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpCookieTest.java index d61b159d9f8..aaf68f81d9f 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpCookieTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpCookieTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpRequestAbortTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpRequestAbortTest.java index 4a63f1089d5..c739d8eae07 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpRequestAbortTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpRequestAbortTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpResponseAbortTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpResponseAbortTest.java index 2f13fb4f776..1b47b763127 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpResponseAbortTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpResponseAbortTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpResponseConcurrentAbortTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpResponseConcurrentAbortTest.java index f03e8a3f8e7..8df01c6715e 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpResponseConcurrentAbortTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpResponseConcurrentAbortTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/InsufficientThreadsDetectionTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/InsufficientThreadsDetectionTest.java index 4b0ec5fbbe5..ea209422f79 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/InsufficientThreadsDetectionTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/InsufficientThreadsDetectionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/LivelockTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/LivelockTest.java index c32c9396d20..172c9fdd007 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/LivelockTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/LivelockTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/ProxyConfigurationTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/ProxyConfigurationTest.java index fb773855878..2b112bcd9f9 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/ProxyConfigurationTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/ProxyConfigurationTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/ServerConnectionCloseTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/ServerConnectionCloseTest.java index 118ecd3af36..c47a69db097 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/ServerConnectionCloseTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/ServerConnectionCloseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/Socks4ProxyTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/Socks4ProxyTest.java index 41243ec8cec..c405029f675 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/Socks4ProxyTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/Socks4ProxyTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/TLSServerConnectionCloseTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/TLSServerConnectionCloseTest.java index 8575d5563bd..cdd6603dca1 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/TLSServerConnectionCloseTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/TLSServerConnectionCloseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/ValidatingConnectionPoolTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/ValidatingConnectionPoolTest.java index c3f1f8196ba..27b12989c41 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/ValidatingConnectionPoolTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/ValidatingConnectionPoolTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/api/Usage.java b/jetty-client/src/test/java/org/eclipse/jetty/client/api/Usage.java index 8d2d53530f0..a567a2cb2f6 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/api/Usage.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/api/Usage.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpDestinationOverHTTPTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpDestinationOverHTTPTest.java index 74790daf37f..1d10407b6bb 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpDestinationOverHTTPTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpDestinationOverHTTPTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTPTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTPTest.java index ab9e274a29b..cf97af756e8 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTPTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpReceiverOverHTTPTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpSenderOverHTTPTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpSenderOverHTTPTest.java index 7abe61bbfe6..5130cfd23eb 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpSenderOverHTTPTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/http/HttpSenderOverHTTPTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/jmx/HttpClientJMXTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/jmx/HttpClientJMXTest.java index e03afecd792..d799ad4c1a5 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/jmx/HttpClientJMXTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/jmx/HttpClientJMXTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/NeedWantClientAuthTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/NeedWantClientAuthTest.java index 53a1262cf16..59fd76f42cd 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/NeedWantClientAuthTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/NeedWantClientAuthTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesClientTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesClientTest.java index b30c0a39765..836c935c002 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesClientTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesClientTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesServerTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesServerTest.java index 1fc70235043..904dc2e439d 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesServerTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesServerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesTest.java index 8e3de549a35..d326afb71b3 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslBytesTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslConnectionTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslConnectionTest.java index 4293b831c6b..cb657274128 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslConnectionTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/ssl/SslConnectionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/util/DeferredContentProviderTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/util/DeferredContentProviderTest.java index 9d3e42c5e0d..d3b638d70a1 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/util/DeferredContentProviderTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/util/DeferredContentProviderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/util/InputStreamContentProviderTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/util/InputStreamContentProviderTest.java index b2e232cff41..3388358bd0b 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/util/InputStreamContentProviderTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/util/InputStreamContentProviderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/util/MultiPartContentProviderTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/util/MultiPartContentProviderTest.java index d8c89eb0532..0a2be22490a 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/util/MultiPartContentProviderTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/util/MultiPartContentProviderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/util/SPNEGOAuthenticationTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/util/SPNEGOAuthenticationTest.java index 8fa771ad4cd..ff61bb06a08 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/util/SPNEGOAuthenticationTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/util/SPNEGOAuthenticationTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/util/TypedContentProviderTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/util/TypedContentProviderTest.java index 7bdea0f738c..519d72403a7 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/util/TypedContentProviderTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/util/TypedContentProviderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/Continuation.java b/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/Continuation.java index 441c84e7ec3..8e95b54d034 100644 --- a/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/Continuation.java +++ b/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/Continuation.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/ContinuationFilter.java b/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/ContinuationFilter.java index 7c450225d28..ce6654ba441 100644 --- a/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/ContinuationFilter.java +++ b/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/ContinuationFilter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/ContinuationListener.java b/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/ContinuationListener.java index b055f9f95dc..ad63ee8a794 100644 --- a/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/ContinuationListener.java +++ b/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/ContinuationListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/ContinuationSupport.java b/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/ContinuationSupport.java index cd3f62f358a..e89ef711c6d 100644 --- a/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/ContinuationSupport.java +++ b/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/ContinuationSupport.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/ContinuationThrowable.java b/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/ContinuationThrowable.java index 0461e53f54b..6782bc4b69e 100644 --- a/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/ContinuationThrowable.java +++ b/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/ContinuationThrowable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/FauxContinuation.java b/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/FauxContinuation.java index f72e664d62a..eadb95c6a0b 100644 --- a/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/FauxContinuation.java +++ b/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/FauxContinuation.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/Servlet3Continuation.java b/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/Servlet3Continuation.java index 7a93ec480bc..653f454eeaf 100644 --- a/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/Servlet3Continuation.java +++ b/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/Servlet3Continuation.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/package-info.java b/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/package-info.java index 84f209572ea..ae9a1242fef 100644 --- a/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/package-info.java +++ b/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/App.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/App.java index eadadce0bad..ab66563d054 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/App.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/App.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/AppLifeCycle.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/AppLifeCycle.java index 3035dcd4768..02325c1eb26 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/AppLifeCycle.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/AppLifeCycle.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/AppProvider.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/AppProvider.java index d2c12b82c58..8d7fd9adf08 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/AppProvider.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/AppProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/ConfigurationManager.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/ConfigurationManager.java index 7ad819df9ea..78859ba5d98 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/ConfigurationManager.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/ConfigurationManager.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/DeploymentManager.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/DeploymentManager.java index 48648c606c0..10021292749 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/DeploymentManager.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/DeploymentManager.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/PropertiesConfigurationManager.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/PropertiesConfigurationManager.java index 5bf50024a74..244cfbf4ab7 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/PropertiesConfigurationManager.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/PropertiesConfigurationManager.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/DebugBinding.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/DebugBinding.java index a3db7dba23e..db325ed63c0 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/DebugBinding.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/DebugBinding.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/DebugListenerBinding.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/DebugListenerBinding.java index cef0ad3ec66..93065927492 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/DebugListenerBinding.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/DebugListenerBinding.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/GlobalWebappConfigBinding.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/GlobalWebappConfigBinding.java index f5832d8dd24..dc805dccf96 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/GlobalWebappConfigBinding.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/GlobalWebappConfigBinding.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/OrderedGroupBinding.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/OrderedGroupBinding.java index 68f42b6df8e..196125fbfec 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/OrderedGroupBinding.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/OrderedGroupBinding.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/StandardDeployer.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/StandardDeployer.java index f98cadeac85..dd58166c7be 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/StandardDeployer.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/StandardDeployer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/StandardStarter.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/StandardStarter.java index 30403641ae7..550ff11542f 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/StandardStarter.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/StandardStarter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/StandardStopper.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/StandardStopper.java index 7d25afb1d10..046c3e78993 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/StandardStopper.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/StandardStopper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/StandardUndeployer.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/StandardUndeployer.java index 7336a4a54fa..ad5b0377799 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/StandardUndeployer.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/StandardUndeployer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/package-info.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/package-info.java index eee11ea11df..db37dd12056 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/package-info.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/bindings/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/Edge.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/Edge.java index 83fec32fcc4..6c5ddc42f42 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/Edge.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/Edge.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/Graph.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/Graph.java index a0fe24a7c95..ec2bb0a0c51 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/Graph.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/Graph.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/GraphOutputDot.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/GraphOutputDot.java index 90753a792f9..bcdae413fb6 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/GraphOutputDot.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/GraphOutputDot.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/Node.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/Node.java index 3fc75a0a8c5..55131aa2ddd 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/Node.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/Node.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/Path.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/Path.java index 950eed16695..2e2c5d5b12c 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/Path.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/Path.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/package-info.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/package-info.java index 40e5bedf610..0b9feab60e8 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/package-info.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/graph/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/jmx/DeploymentManagerMBean.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/jmx/DeploymentManagerMBean.java index 165d10a122a..af8fe6db6fa 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/jmx/DeploymentManagerMBean.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/jmx/DeploymentManagerMBean.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/jmx/package-info.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/jmx/package-info.java index 0e0e6e0d423..1e7beb0e2b6 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/jmx/package-info.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/jmx/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/package-info.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/package-info.java index d2f6e5c9fb1..5df065738a2 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/package-info.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/providers/ScanningAppProvider.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/providers/ScanningAppProvider.java index 0112a88f7ed..3ce17135cc7 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/providers/ScanningAppProvider.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/providers/ScanningAppProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/providers/WebAppProvider.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/providers/WebAppProvider.java index cf73d9bac65..3586a8243ab 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/providers/WebAppProvider.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/providers/WebAppProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/providers/package-info.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/providers/package-info.java index 6c9eb32866b..dabea2eaa3f 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/providers/package-info.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/providers/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/util/FileID.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/util/FileID.java index 3415ef9b2be..b939fa8dbf4 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/util/FileID.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/util/FileID.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/util/package-info.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/util/package-info.java index fd6c3793f9d..81856ab941b 100644 --- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/util/package-info.java +++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/util/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/AppLifeCyclePathCollector.java b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/AppLifeCyclePathCollector.java index 354ba79963c..22537f18f82 100644 --- a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/AppLifeCyclePathCollector.java +++ b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/AppLifeCyclePathCollector.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/AppLifeCycleTest.java b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/AppLifeCycleTest.java index 3a62b1c734c..9a0f5145fe3 100644 --- a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/AppLifeCycleTest.java +++ b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/AppLifeCycleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/DeploymentManagerLifeCyclePathTest.java b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/DeploymentManagerLifeCyclePathTest.java index 728c1555e08..19dbf3846a8 100644 --- a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/DeploymentManagerLifeCyclePathTest.java +++ b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/DeploymentManagerLifeCyclePathTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/DeploymentManagerTest.java b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/DeploymentManagerTest.java index 106ab164354..0eecf6aec3f 100644 --- a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/DeploymentManagerTest.java +++ b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/DeploymentManagerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/JmxServiceConnection.java b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/JmxServiceConnection.java index 270306ba21e..98daaa738c4 100644 --- a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/JmxServiceConnection.java +++ b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/JmxServiceConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/MockAppProvider.java b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/MockAppProvider.java index 30e0fe72609..b8994bc3245 100644 --- a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/MockAppProvider.java +++ b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/MockAppProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/bindings/GlobalWebappConfigBindingTest.java b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/bindings/GlobalWebappConfigBindingTest.java index 8b66fdf3b3d..e07eda63f6e 100644 --- a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/bindings/GlobalWebappConfigBindingTest.java +++ b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/bindings/GlobalWebappConfigBindingTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/graph/GraphTest.java b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/graph/GraphTest.java index 2a4399d76a6..96ce050cae2 100644 --- a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/graph/GraphTest.java +++ b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/graph/GraphTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/providers/ScanningAppProviderRuntimeUpdatesTest.java b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/providers/ScanningAppProviderRuntimeUpdatesTest.java index 5d38c2770a2..83fdd1a6838 100644 --- a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/providers/ScanningAppProviderRuntimeUpdatesTest.java +++ b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/providers/ScanningAppProviderRuntimeUpdatesTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/providers/ScanningAppProviderStartupTest.java b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/providers/ScanningAppProviderStartupTest.java index 14e01e7d146..377267f0a02 100644 --- a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/providers/ScanningAppProviderStartupTest.java +++ b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/providers/ScanningAppProviderStartupTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/providers/WebAppProviderTest.java b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/providers/WebAppProviderTest.java index 7993b665644..257308cbeda 100644 --- a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/providers/WebAppProviderTest.java +++ b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/providers/WebAppProviderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/test/XmlConfiguredJetty.java b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/test/XmlConfiguredJetty.java index 9b5a05cf26e..db579f09088 100644 --- a/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/test/XmlConfiguredJetty.java +++ b/jetty-deploy/src/test/java/org/eclipse/jetty/deploy/test/XmlConfiguredJetty.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/alpn/alpn.adoc b/jetty-documentation/src/main/asciidoc/administration/alpn/alpn.adoc index 648e18f59e9..6daca25d529 100644 --- a/jetty-documentation/src/main/asciidoc/administration/alpn/alpn.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/alpn/alpn.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/alpn/chapter.adoc b/jetty-documentation/src/main/asciidoc/administration/alpn/chapter.adoc index 490f689ec1a..fbb80ba6e18 100644 --- a/jetty-documentation/src/main/asciidoc/administration/alpn/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/alpn/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/annotations/chapter.adoc b/jetty-documentation/src/main/asciidoc/administration/annotations/chapter.adoc index b0cbff8e453..088f4c730d6 100644 --- a/jetty-documentation/src/main/asciidoc/administration/annotations/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/annotations/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/annotations/quick-annotations-setup.adoc b/jetty-documentation/src/main/asciidoc/administration/annotations/quick-annotations-setup.adoc index 5eb90f2d4e5..302cbff1756 100644 --- a/jetty-documentation/src/main/asciidoc/administration/annotations/quick-annotations-setup.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/annotations/quick-annotations-setup.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/annotations/using-annotations-embedded.adoc b/jetty-documentation/src/main/asciidoc/administration/annotations/using-annotations-embedded.adoc index a296e879f82..dca6e528b35 100644 --- a/jetty-documentation/src/main/asciidoc/administration/annotations/using-annotations-embedded.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/annotations/using-annotations-embedded.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/annotations/using-annotations.adoc b/jetty-documentation/src/main/asciidoc/administration/annotations/using-annotations.adoc index d84ec8bd691..f71bdce91b1 100644 --- a/jetty-documentation/src/main/asciidoc/administration/annotations/using-annotations.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/annotations/using-annotations.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/balancer-servlet.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/balancer-servlet.adoc index 1059cc42ca5..199f5af55d4 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/balancer-servlet.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/balancer-servlet.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/cgi-servlet.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/cgi-servlet.adoc index 2cca30b128a..2b4c07f310a 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/cgi-servlet.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/cgi-servlet.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/chapter.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/chapter.adoc index 136234beb50..2f26f645529 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/cross-origin-filter.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/cross-origin-filter.adoc index bbc4ad75286..50cbf4144a9 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/cross-origin-filter.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/cross-origin-filter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/debug-handler.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/debug-handler.adoc index a693ecbe637..fe28c883170 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/debug-handler.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/debug-handler.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/default-handler.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/default-handler.adoc index b15c4e68f86..642f24b9388 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/default-handler.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/default-handler.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/default-servlet.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/default-servlet.adoc index f91059a8e6c..4182ad6ae00 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/default-servlet.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/default-servlet.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/dos-filter.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/dos-filter.adoc index eb96c9badfb..07be5b0cbee 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/dos-filter.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/dos-filter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/error-handler.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/error-handler.adoc index 3b580181139..400842899de 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/error-handler.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/error-handler.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/gzip-filter.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/gzip-filter.adoc index 7d962dae2aa..18bdb5b0236 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/gzip-filter.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/gzip-filter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/header-filter.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/header-filter.adoc index 8de9536b95a..8fdbfa489d1 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/header-filter.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/header-filter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/ipaccess-handler.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/ipaccess-handler.adoc index 8ac09fa6a9f..45811f9b063 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/ipaccess-handler.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/ipaccess-handler.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/moved-context-handler.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/moved-context-handler.adoc index e4a68f83213..da5bf832b7e 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/moved-context-handler.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/moved-context-handler.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/proxy-servlet.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/proxy-servlet.adoc index 16486efbdb0..38c01bbfe25 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/proxy-servlet.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/proxy-servlet.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/qos-filter.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/qos-filter.adoc index 2b6eccb0735..7b4504204b8 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/qos-filter.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/qos-filter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/resource-handler.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/resource-handler.adoc index d7fdbda3925..f3aec28d3b7 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/resource-handler.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/resource-handler.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/rewrite-handler.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/rewrite-handler.adoc index 6c7e82209e3..41c8d6f3d08 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/rewrite-handler.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/rewrite-handler.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/shutdown-handler.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/shutdown-handler.adoc index 4b668cc4f3c..f2eea737872 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/shutdown-handler.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/shutdown-handler.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/extras/statistics-handler.adoc b/jetty-documentation/src/main/asciidoc/administration/extras/statistics-handler.adoc index 56ee9459f42..e4af9941430 100644 --- a/jetty-documentation/src/main/asciidoc/administration/extras/statistics-handler.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/extras/statistics-handler.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/fastcgi/chapter.adoc b/jetty-documentation/src/main/asciidoc/administration/fastcgi/chapter.adoc index e33be3aafe5..afe2a6861f7 100644 --- a/jetty-documentation/src/main/asciidoc/administration/fastcgi/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/fastcgi/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/fastcgi/configuring-fastcgi.adoc b/jetty-documentation/src/main/asciidoc/administration/fastcgi/configuring-fastcgi.adoc index b5c693f360c..3a7a47cd1a5 100644 --- a/jetty-documentation/src/main/asciidoc/administration/fastcgi/configuring-fastcgi.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/fastcgi/configuring-fastcgi.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/fastcgi/fastcgi-intro.adoc b/jetty-documentation/src/main/asciidoc/administration/fastcgi/fastcgi-intro.adoc index e788fe1af33..e84c3ca25dd 100644 --- a/jetty-documentation/src/main/asciidoc/administration/fastcgi/fastcgi-intro.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/fastcgi/fastcgi-intro.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/http2/chapter.adoc b/jetty-documentation/src/main/asciidoc/administration/http2/chapter.adoc index d11a39ebc6f..5c8b7460c2e 100644 --- a/jetty-documentation/src/main/asciidoc/administration/http2/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/http2/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/http2/configuring-haproxy.adoc b/jetty-documentation/src/main/asciidoc/administration/http2/configuring-haproxy.adoc index bfb4d608601..ffa0b6c1463 100644 --- a/jetty-documentation/src/main/asciidoc/administration/http2/configuring-haproxy.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/http2/configuring-haproxy.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/http2/configuring-http2.adoc b/jetty-documentation/src/main/asciidoc/administration/http2/configuring-http2.adoc index 874c74a0bd1..ea676126d33 100644 --- a/jetty-documentation/src/main/asciidoc/administration/http2/configuring-http2.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/http2/configuring-http2.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/http2/configuring-push.adoc b/jetty-documentation/src/main/asciidoc/administration/http2/configuring-push.adoc index 7d7dcd6a489..24b27955274 100644 --- a/jetty-documentation/src/main/asciidoc/administration/http2/configuring-push.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/http2/configuring-push.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/http2/enabling-http2.adoc b/jetty-documentation/src/main/asciidoc/administration/http2/enabling-http2.adoc index 04e387324a9..9eaefadc53f 100644 --- a/jetty-documentation/src/main/asciidoc/administration/http2/enabling-http2.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/http2/enabling-http2.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/http2/introduction.adoc b/jetty-documentation/src/main/asciidoc/administration/http2/introduction.adoc index 98600a256b0..6f3d7b17e9c 100644 --- a/jetty-documentation/src/main/asciidoc/administration/http2/introduction.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/http2/introduction.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/jmx/chapter.adoc b/jetty-documentation/src/main/asciidoc/administration/jmx/chapter.adoc index 4f002238058..caaf3883408 100644 --- a/jetty-documentation/src/main/asciidoc/administration/jmx/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/jmx/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/jmx/jetty-jconsole.adoc b/jetty-documentation/src/main/asciidoc/administration/jmx/jetty-jconsole.adoc index d8260067976..0f7444a952b 100644 --- a/jetty-documentation/src/main/asciidoc/administration/jmx/jetty-jconsole.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/jmx/jetty-jconsole.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/jmx/jetty-jmx-annotations.adoc b/jetty-documentation/src/main/asciidoc/administration/jmx/jetty-jmx-annotations.adoc index b0b8139d9ba..7c19b124d63 100644 --- a/jetty-documentation/src/main/asciidoc/administration/jmx/jetty-jmx-annotations.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/jmx/jetty-jmx-annotations.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/jmx/using-jmx.adoc b/jetty-documentation/src/main/asciidoc/administration/jmx/using-jmx.adoc index e4760cf8450..e650ecb0f8b 100644 --- a/jetty-documentation/src/main/asciidoc/administration/jmx/using-jmx.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/jmx/using-jmx.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/jndi/chapter.adoc b/jetty-documentation/src/main/asciidoc/administration/jndi/chapter.adoc index da395aaa2a8..2f47039cd95 100644 --- a/jetty-documentation/src/main/asciidoc/administration/jndi/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/jndi/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/jndi/jndi-configuration.adoc b/jetty-documentation/src/main/asciidoc/administration/jndi/jndi-configuration.adoc index 0871ea53f69..4dd787f2d8b 100644 --- a/jetty-documentation/src/main/asciidoc/administration/jndi/jndi-configuration.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/jndi/jndi-configuration.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/jndi/jndi-datasources.adoc b/jetty-documentation/src/main/asciidoc/administration/jndi/jndi-datasources.adoc index 2eda57495ec..9b660052a36 100644 --- a/jetty-documentation/src/main/asciidoc/administration/jndi/jndi-datasources.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/jndi/jndi-datasources.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/jndi/jndi-embedded.adoc b/jetty-documentation/src/main/asciidoc/administration/jndi/jndi-embedded.adoc index ccc7f32a1eb..e77490bab82 100644 --- a/jetty-documentation/src/main/asciidoc/administration/jndi/jndi-embedded.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/jndi/jndi-embedded.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/jndi/quick-jndi-setup.adoc b/jetty-documentation/src/main/asciidoc/administration/jndi/quick-jndi-setup.adoc index ec35360fe26..dec37697215 100644 --- a/jetty-documentation/src/main/asciidoc/administration/jndi/quick-jndi-setup.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/jndi/quick-jndi-setup.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/jndi/using-jndi.adoc b/jetty-documentation/src/main/asciidoc/administration/jndi/using-jndi.adoc index 523fbed7bb9..7344090b589 100644 --- a/jetty-documentation/src/main/asciidoc/administration/jndi/using-jndi.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/jndi/using-jndi.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/logging/chapter.adoc b/jetty-documentation/src/main/asciidoc/administration/logging/chapter.adoc index 38b35596c1b..689537a5137 100644 --- a/jetty-documentation/src/main/asciidoc/administration/logging/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/logging/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/logging/configuring-jetty-logging.adoc b/jetty-documentation/src/main/asciidoc/administration/logging/configuring-jetty-logging.adoc index 9ca9f00a475..13f10c44348 100644 --- a/jetty-documentation/src/main/asciidoc/administration/logging/configuring-jetty-logging.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/logging/configuring-jetty-logging.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/logging/configuring-jetty-request-logs.adoc b/jetty-documentation/src/main/asciidoc/administration/logging/configuring-jetty-request-logs.adoc index 44c7334c761..bee4f26d0e4 100644 --- a/jetty-documentation/src/main/asciidoc/administration/logging/configuring-jetty-request-logs.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/logging/configuring-jetty-request-logs.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/logging/configuring-logging-modules.adoc b/jetty-documentation/src/main/asciidoc/administration/logging/configuring-logging-modules.adoc index ee4fd3e0d3a..099e9aa972f 100644 --- a/jetty-documentation/src/main/asciidoc/administration/logging/configuring-logging-modules.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/logging/configuring-logging-modules.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/logging/default-logging-with-stderrlog.adoc b/jetty-documentation/src/main/asciidoc/administration/logging/default-logging-with-stderrlog.adoc index 755a4e6c740..ef98aa966ad 100644 --- a/jetty-documentation/src/main/asciidoc/administration/logging/default-logging-with-stderrlog.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/logging/default-logging-with-stderrlog.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/logging/dump-tool.adoc b/jetty-documentation/src/main/asciidoc/administration/logging/dump-tool.adoc index 5d18b7ff921..0f729e2e563 100644 --- a/jetty-documentation/src/main/asciidoc/administration/logging/dump-tool.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/logging/dump-tool.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/logging/example-apache-log4j.adoc b/jetty-documentation/src/main/asciidoc/administration/logging/example-apache-log4j.adoc index 3a943e7d7df..391e9728e2c 100644 --- a/jetty-documentation/src/main/asciidoc/administration/logging/example-apache-log4j.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/logging/example-apache-log4j.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/logging/example-java-util-logging-native.adoc b/jetty-documentation/src/main/asciidoc/administration/logging/example-java-util-logging-native.adoc index 92ff12ceefe..c59be6b6086 100644 --- a/jetty-documentation/src/main/asciidoc/administration/logging/example-java-util-logging-native.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/logging/example-java-util-logging-native.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/logging/example-java-util-logging.adoc b/jetty-documentation/src/main/asciidoc/administration/logging/example-java-util-logging.adoc index 124b12dae79..bf23ce9456c 100644 --- a/jetty-documentation/src/main/asciidoc/administration/logging/example-java-util-logging.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/logging/example-java-util-logging.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/logging/example-logback-centralized-logging.adoc b/jetty-documentation/src/main/asciidoc/administration/logging/example-logback-centralized-logging.adoc index 4d8382fa24f..1598d03eb75 100644 --- a/jetty-documentation/src/main/asciidoc/administration/logging/example-logback-centralized-logging.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/logging/example-logback-centralized-logging.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/logging/example-logback-sifting.adoc b/jetty-documentation/src/main/asciidoc/administration/logging/example-logback-sifting.adoc index b9c0278c498..4f58b0adf7a 100644 --- a/jetty-documentation/src/main/asciidoc/administration/logging/example-logback-sifting.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/logging/example-logback-sifting.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/logging/example-logback.adoc b/jetty-documentation/src/main/asciidoc/administration/logging/example-logback.adoc index b0060639fc8..51e909cbc38 100644 --- a/jetty-documentation/src/main/asciidoc/administration/logging/example-logback.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/logging/example-logback.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/logging/example-slf4j-multiple-loggers.adoc b/jetty-documentation/src/main/asciidoc/administration/logging/example-slf4j-multiple-loggers.adoc index 422ec9e7948..66bf99d6f6b 100644 --- a/jetty-documentation/src/main/asciidoc/administration/logging/example-slf4j-multiple-loggers.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/logging/example-slf4j-multiple-loggers.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/part.adoc b/jetty-documentation/src/main/asciidoc/administration/part.adoc index f449e6cdc67..382c90a4058 100644 --- a/jetty-documentation/src/main/asciidoc/administration/part.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/part.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/runner/chapter.adoc b/jetty-documentation/src/main/asciidoc/administration/runner/chapter.adoc index 57ae50b075d..b6a857ca7f8 100644 --- a/jetty-documentation/src/main/asciidoc/administration/runner/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/runner/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/runner/jetty-runner.adoc b/jetty-documentation/src/main/asciidoc/administration/runner/jetty-runner.adoc index b019e8c6256..26bcd73d9a6 100644 --- a/jetty-documentation/src/main/asciidoc/administration/runner/jetty-runner.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/runner/jetty-runner.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/chapter.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/chapter.adoc index f7a5657d0e9..875c8747317 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/session-clustering-gcloud-datastore.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/session-clustering-gcloud-datastore.adoc index f382cdb5a12..e67d55ea952 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/session-clustering-gcloud-datastore.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/session-clustering-gcloud-datastore.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/session-clustering-infinispan.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/session-clustering-infinispan.adoc index c782941eaf1..02c1e49ca3c 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/session-clustering-infinispan.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/session-clustering-infinispan.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/session-clustering-jdbc.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/session-clustering-jdbc.adoc index 8470fab0a64..f154c2b7434 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/session-clustering-jdbc.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/session-clustering-jdbc.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/session-clustering-mongodb.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/session-clustering-mongodb.adoc index d817d3b62f9..9f00ef6a57a 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/session-clustering-mongodb.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/session-clustering-mongodb.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/setting-session-characteristics.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/setting-session-characteristics.adoc index b50c9dcc543..60a112e87d8 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/setting-session-characteristics.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/setting-session-characteristics.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/using-persistent-sessions.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/using-persistent-sessions.adoc index 0ae44005dae..d68f34a2cb4 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/using-persistent-sessions.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/legacy/using-persistent-sessions.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-file-system.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-file-system.adoc index e88f173f9cf..a824a8aa866 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-file-system.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-file-system.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-gcloud.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-gcloud.adoc index 7360d96082f..0a349212ff9 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-gcloud.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-gcloud.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-hazelcast.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-hazelcast.adoc index 193e7a6d9ae..11eaf71790e 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-hazelcast.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-hazelcast.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-housekeeper.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-housekeeper.adoc index 4470b2eae13..398dd99cbac 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-housekeeper.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-housekeeper.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-infinispan.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-infinispan.adoc index 67e99562104..8647aa9ce1c 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-infinispan.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-infinispan.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-jdbc.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-jdbc.adoc index 85cc4658518..7fd85eb66b3 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-jdbc.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-jdbc.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-memcachedsessiondatastore.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-memcachedsessiondatastore.adoc index 7e5772db601..e03141b40b4 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-memcachedsessiondatastore.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-memcachedsessiondatastore.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-memory.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-memory.adoc index 7d59cb57790..0c854251e81 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-memory.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-memory.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-mongodb.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-mongodb.adoc index 35c2525cfb2..418328c0760 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-mongodb.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-mongodb.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-sessioncache.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-sessioncache.adoc index b9775a258af..d06c0f74f28 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-sessioncache.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/session-configuration-sessioncache.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/session-hierarchy.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/session-hierarchy.adoc index 4734dc90301..f8a760e7510 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/session-hierarchy.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/session-hierarchy.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/sessions-details.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/sessions-details.adoc index e87f382f7bb..7e89e729039 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/sessions-details.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/sessions-details.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/sessions/sessions-usecases.adoc b/jetty-documentation/src/main/asciidoc/administration/sessions/sessions-usecases.adoc index 87cb3ba6e65..9e6c43e8047 100644 --- a/jetty-documentation/src/main/asciidoc/administration/sessions/sessions-usecases.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/sessions/sessions-usecases.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/chapter.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/chapter.adoc index 3b63ab8ae5e..50a635f1544 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/custom-modules.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/custom-modules.adoc index dff59d79315..8664c8dcc92 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/custom-modules.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/custom-modules.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/screen-empty-base-listconfig.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/screen-empty-base-listconfig.adoc index 712487db306..1ed43bfbfd1 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/screen-empty-base-listconfig.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/screen-empty-base-listconfig.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/screen-empty-base.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/screen-empty-base.adoc index 260c86a487b..d22e0bf36ff 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/screen-empty-base.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/screen-empty-base.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/screen-http-webapp-deploy-listconfig.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/screen-http-webapp-deploy-listconfig.adoc index b63440dda76..f56b90a72a7 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/screen-http-webapp-deploy-listconfig.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/screen-http-webapp-deploy-listconfig.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/screen-http-webapp-deploy.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/screen-http-webapp-deploy.adoc index 7698aada319..7594413b7c1 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/screen-http-webapp-deploy.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/screen-http-webapp-deploy.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/screen-list-logging-modules.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/screen-list-logging-modules.adoc index e4cc6d88542..ca175842225 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/screen-list-logging-modules.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/screen-list-logging-modules.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/screen-list-modules.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/screen-list-modules.adoc index 8093141ecb8..3702cccecd1 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/screen-list-modules.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/screen-list-modules.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/start-jar.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/start-jar.adoc index 2a713497958..2dbd3be34e3 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/start-jar.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/start-jar.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/start-matrix.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/start-matrix.adoc index 051749fba36..013d80a8b64 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/start-matrix.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/start-matrix.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/startup-base-vs-home.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/startup-base-vs-home.adoc index 93634198870..41ecada6ffc 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/startup-base-vs-home.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/startup-base-vs-home.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/startup-classpath.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/startup-classpath.adoc index 648664e42f6..6394d918527 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/startup-classpath.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/startup-classpath.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/startup-jpms.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/startup-jpms.adoc index 51f3b6b2984..7d149169c2f 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/startup-jpms.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/startup-jpms.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/startup-modules.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/startup-modules.adoc index ee2ff06ebe3..014546eea6d 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/startup-modules.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/startup-modules.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/startup-overview.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/startup-overview.adoc index 6193508a076..400d36d14f9 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/startup-overview.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/startup-overview.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/startup-troubleshooting.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/startup-troubleshooting.adoc index 72058630181..58f8027c2a5 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/startup-troubleshooting.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/startup-troubleshooting.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/startup-unix-service.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/startup-unix-service.adoc index a7d704e3d30..c8b381b9eff 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/startup-unix-service.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/startup-unix-service.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/startup-windows-service.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/startup-windows-service.adoc index aceb9a325ff..086b216a267 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/startup-windows-service.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/startup-windows-service.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/startup-xml-config.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/startup-xml-config.adoc index f8bc6dfda0a..1f83416b3cc 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/startup-xml-config.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/startup-xml-config.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/tuning/chapter.adoc b/jetty-documentation/src/main/asciidoc/administration/tuning/chapter.adoc index d534a8a1692..be0a01ae936 100644 --- a/jetty-documentation/src/main/asciidoc/administration/tuning/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/tuning/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/tuning/garbage-collection.adoc b/jetty-documentation/src/main/asciidoc/administration/tuning/garbage-collection.adoc index cd34d0a8761..d774428c9b3 100644 --- a/jetty-documentation/src/main/asciidoc/administration/tuning/garbage-collection.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/tuning/garbage-collection.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/tuning/high-load.adoc b/jetty-documentation/src/main/asciidoc/administration/tuning/high-load.adoc index 8e536c0077f..145ff5e6bad 100644 --- a/jetty-documentation/src/main/asciidoc/administration/tuning/high-load.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/tuning/high-load.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/administration/tuning/limit-load.adoc b/jetty-documentation/src/main/asciidoc/administration/tuning/limit-load.adoc index 537e0bfe1e4..e93f7156844 100644 --- a/jetty-documentation/src/main/asciidoc/administration/tuning/limit-load.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/tuning/limit-load.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/connectors/chapter.adoc b/jetty-documentation/src/main/asciidoc/configuring/connectors/chapter.adoc index e1b48a8f6a9..61d75a6e0f9 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/connectors/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/connectors/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/connectors/configuring-connectors.adoc b/jetty-documentation/src/main/asciidoc/configuring/connectors/configuring-connectors.adoc index 1822811b293..8b2a1864a28 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/connectors/configuring-connectors.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/connectors/configuring-connectors.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/connectors/configuring-ssl-distribution.adoc b/jetty-documentation/src/main/asciidoc/configuring/connectors/configuring-ssl-distribution.adoc index 2f482785b0b..d2725e63756 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/connectors/configuring-ssl-distribution.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/connectors/configuring-ssl-distribution.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/connectors/configuring-ssl.adoc b/jetty-documentation/src/main/asciidoc/configuring/connectors/configuring-ssl.adoc index c7c64a66e5a..eff950eb2ef 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/connectors/configuring-ssl.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/connectors/configuring-ssl.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/contexts/chapter.adoc b/jetty-documentation/src/main/asciidoc/configuring/contexts/chapter.adoc index 3c12094eb8a..4b7d276ce13 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/contexts/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/contexts/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/contexts/configuring-virtual-hosts.adoc b/jetty-documentation/src/main/asciidoc/configuring/contexts/configuring-virtual-hosts.adoc index b6f4456692e..451c589f046 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/contexts/configuring-virtual-hosts.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/contexts/configuring-virtual-hosts.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/contexts/custom-error-pages.adoc b/jetty-documentation/src/main/asciidoc/configuring/contexts/custom-error-pages.adoc index a41bb03fe73..78a0c17c354 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/contexts/custom-error-pages.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/contexts/custom-error-pages.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/contexts/serving-webapp-from-particular-port.adoc b/jetty-documentation/src/main/asciidoc/configuring/contexts/serving-webapp-from-particular-port.adoc index c826102e639..2551e96fb04 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/contexts/serving-webapp-from-particular-port.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/contexts/serving-webapp-from-particular-port.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/contexts/setting-context-path.adoc b/jetty-documentation/src/main/asciidoc/configuring/contexts/setting-context-path.adoc index 0a51afeee41..74606e81494 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/contexts/setting-context-path.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/contexts/setting-context-path.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/contexts/setting-form-size.adoc b/jetty-documentation/src/main/asciidoc/configuring/contexts/setting-form-size.adoc index 0304e9d0d72..7a0ee0c1910 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/contexts/setting-form-size.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/contexts/setting-form-size.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/contexts/temporary-directories.adoc b/jetty-documentation/src/main/asciidoc/configuring/contexts/temporary-directories.adoc index f9851d47ce5..671109941f4 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/contexts/temporary-directories.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/contexts/temporary-directories.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/deploying/anatomy-of-a-webapp.adoc b/jetty-documentation/src/main/asciidoc/configuring/deploying/anatomy-of-a-webapp.adoc index 4c9e2ab7dd2..77b86f49d1b 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/deploying/anatomy-of-a-webapp.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/deploying/anatomy-of-a-webapp.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/deploying/automatic-webapp-deployment.adoc b/jetty-documentation/src/main/asciidoc/configuring/deploying/automatic-webapp-deployment.adoc index 0ea7ad79ca4..f639d619a98 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/deploying/automatic-webapp-deployment.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/deploying/automatic-webapp-deployment.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/deploying/chapter.adoc b/jetty-documentation/src/main/asciidoc/configuring/deploying/chapter.adoc index 2155226c762..7bdd70ab2d5 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/deploying/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/deploying/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/deploying/configuring-specific-webapp-deployment.adoc b/jetty-documentation/src/main/asciidoc/configuring/deploying/configuring-specific-webapp-deployment.adoc index a4491b2554b..66370f0a4bb 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/deploying/configuring-specific-webapp-deployment.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/deploying/configuring-specific-webapp-deployment.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/deploying/deployment-architecture.adoc b/jetty-documentation/src/main/asciidoc/configuring/deploying/deployment-architecture.adoc index 55000f4fe6c..b7a203c5ab1 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/deploying/deployment-architecture.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/deploying/deployment-architecture.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/deploying/deployment-processing-webapps.adoc b/jetty-documentation/src/main/asciidoc/configuring/deploying/deployment-processing-webapps.adoc index 9b43ef3a998..2f5d52f2a94 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/deploying/deployment-processing-webapps.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/deploying/deployment-processing-webapps.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/deploying/hot-deployment.adoc b/jetty-documentation/src/main/asciidoc/configuring/deploying/hot-deployment.adoc index 406a3a1b821..664e5f1f398 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/deploying/hot-deployment.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/deploying/hot-deployment.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/deploying/overlay-deployer.adoc b/jetty-documentation/src/main/asciidoc/configuring/deploying/overlay-deployer.adoc index 5f5fea6c485..739c7b3b0e1 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/deploying/overlay-deployer.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/deploying/overlay-deployer.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/deploying/quickstart-webapp.adoc b/jetty-documentation/src/main/asciidoc/configuring/deploying/quickstart-webapp.adoc index f01eeab6d58..cbbc71e40f3 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/deploying/quickstart-webapp.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/deploying/quickstart-webapp.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/deploying/static-content-deployment.adoc b/jetty-documentation/src/main/asciidoc/configuring/deploying/static-content-deployment.adoc index 275bae8f056..a2cfe410bb5 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/deploying/static-content-deployment.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/deploying/static-content-deployment.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/jsp/chapter.adoc b/jetty-documentation/src/main/asciidoc/configuring/jsp/chapter.adoc index 5ed19c2d1d6..c9476bf21bd 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/jsp/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/jsp/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/jsp/configuring-jsp.adoc b/jetty-documentation/src/main/asciidoc/configuring/jsp/configuring-jsp.adoc index 068e3404831..9689e565a8d 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/jsp/configuring-jsp.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/jsp/configuring-jsp.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/part.adoc b/jetty-documentation/src/main/asciidoc/configuring/part.adoc index cc36301813b..620243d697e 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/part.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/part.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/security/authentication.adoc b/jetty-documentation/src/main/asciidoc/configuring/security/authentication.adoc index 5dbe28ebe21..3e7ab4917ef 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/security/authentication.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/security/authentication.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/security/chapter.adoc b/jetty-documentation/src/main/asciidoc/configuring/security/chapter.adoc index 6aa4fd54653..1c28d1535ce 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/security/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/security/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/security/configuring-form-size.adoc b/jetty-documentation/src/main/asciidoc/configuring/security/configuring-form-size.adoc index aabda82c15b..066aa482385 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/security/configuring-form-size.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/security/configuring-form-size.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/security/jaas-support.adoc b/jetty-documentation/src/main/asciidoc/configuring/security/jaas-support.adoc index be22d3b5298..ce69083655b 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/security/jaas-support.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/security/jaas-support.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/security/jetty-home-and-jetty-base.adoc b/jetty-documentation/src/main/asciidoc/configuring/security/jetty-home-and-jetty-base.adoc index 2aeb1174b03..91cfee53a4d 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/security/jetty-home-and-jetty-base.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/security/jetty-home-and-jetty-base.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/security/secure-passwords.adoc b/jetty-documentation/src/main/asciidoc/configuring/security/secure-passwords.adoc index b44c0d7d0ac..8bbf9b85f90 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/security/secure-passwords.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/security/secure-passwords.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/security/serving-aliased-files.adoc b/jetty-documentation/src/main/asciidoc/configuring/security/serving-aliased-files.adoc index 85e0fe0c43c..290cad1e31d 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/security/serving-aliased-files.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/security/serving-aliased-files.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/security/setting-port80-access-for-non-root-user.adoc b/jetty-documentation/src/main/asciidoc/configuring/security/setting-port80-access-for-non-root-user.adoc index 9a17614cf04..6f64faf2748 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/security/setting-port80-access-for-non-root-user.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/security/setting-port80-access-for-non-root-user.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/configuring/security/spnego-support.adoc b/jetty-documentation/src/main/asciidoc/configuring/security/spnego-support.adoc index 47f565af6a4..6902e599093 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/security/spnego-support.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/security/spnego-support.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/ant/chapter.adoc b/jetty-documentation/src/main/asciidoc/development/ant/chapter.adoc index edc282ab98c..b006e7a5877 100644 --- a/jetty-documentation/src/main/asciidoc/development/ant/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/development/ant/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -21,4 +21,4 @@ This chapter explains how to use Jetty with Ant and the Jetty Ant tasks. -include::jetty-ant.adoc[] \ No newline at end of file +include::jetty-ant.adoc[] diff --git a/jetty-documentation/src/main/asciidoc/development/ant/jetty-ant.adoc b/jetty-documentation/src/main/asciidoc/development/ant/jetty-ant.adoc index 5d00fd04109..01b0b77df54 100644 --- a/jetty-documentation/src/main/asciidoc/development/ant/jetty-ant.adoc +++ b/jetty-documentation/src/main/asciidoc/development/ant/jetty-ant.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/clients/http/chapter.adoc b/jetty-documentation/src/main/asciidoc/development/clients/http/chapter.adoc index 0915e901061..1c53cdfcaf3 100644 --- a/jetty-documentation/src/main/asciidoc/development/clients/http/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/development/clients/http/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-api.adoc b/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-api.adoc index 882108cdd5c..8792a6ccdcf 100644 --- a/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-api.adoc +++ b/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-api.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-authentication.adoc b/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-authentication.adoc index fa954e06721..7f23e976c20 100644 --- a/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-authentication.adoc +++ b/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-authentication.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-cookie.adoc b/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-cookie.adoc index 3cfd92f5601..4e3e113ac46 100644 --- a/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-cookie.adoc +++ b/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-cookie.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-intro.adoc b/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-intro.adoc index 8ff722ff739..de8d0567f31 100644 --- a/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-intro.adoc +++ b/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-intro.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-proxy.adoc b/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-proxy.adoc index 808a6d277c0..f5f0659510e 100644 --- a/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-proxy.adoc +++ b/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-proxy.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-transport.adoc b/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-transport.adoc index 62cea88312f..ae566236c33 100644 --- a/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-transport.adoc +++ b/jetty-documentation/src/main/asciidoc/development/clients/http/http-client-transport.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/continuations/chapter.adoc b/jetty-documentation/src/main/asciidoc/development/continuations/chapter.adoc index 8eafe8a67d6..0dca58b6ce6 100644 --- a/jetty-documentation/src/main/asciidoc/development/continuations/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/development/continuations/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/continuations/continuations-intro.adoc b/jetty-documentation/src/main/asciidoc/development/continuations/continuations-intro.adoc index af982ac8617..277977bde6a 100644 --- a/jetty-documentation/src/main/asciidoc/development/continuations/continuations-intro.adoc +++ b/jetty-documentation/src/main/asciidoc/development/continuations/continuations-intro.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/continuations/continuations-patterns.adoc b/jetty-documentation/src/main/asciidoc/development/continuations/continuations-patterns.adoc index e0ebcaf1389..bc96488c566 100644 --- a/jetty-documentation/src/main/asciidoc/development/continuations/continuations-patterns.adoc +++ b/jetty-documentation/src/main/asciidoc/development/continuations/continuations-patterns.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/continuations/continuations-using.adoc b/jetty-documentation/src/main/asciidoc/development/continuations/continuations-using.adoc index 7e806c7ab0c..2e50c27185a 100644 --- a/jetty-documentation/src/main/asciidoc/development/continuations/continuations-using.adoc +++ b/jetty-documentation/src/main/asciidoc/development/continuations/continuations-using.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/embedding/chapter.adoc b/jetty-documentation/src/main/asciidoc/development/embedding/chapter.adoc index c316fa9b8d2..56350930eef 100644 --- a/jetty-documentation/src/main/asciidoc/development/embedding/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/development/embedding/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -21,4 +21,4 @@ include::jetty-helloworld.adoc[] include::embedding-jetty.adoc[] -include::embedded-examples.adoc[] \ No newline at end of file +include::embedded-examples.adoc[] diff --git a/jetty-documentation/src/main/asciidoc/development/embedding/embedded-examples.adoc b/jetty-documentation/src/main/asciidoc/development/embedding/embedded-examples.adoc index 42e6e6ab061..8a7507f5307 100644 --- a/jetty-documentation/src/main/asciidoc/development/embedding/embedded-examples.adoc +++ b/jetty-documentation/src/main/asciidoc/development/embedding/embedded-examples.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/embedding/embedding-jetty.adoc b/jetty-documentation/src/main/asciidoc/development/embedding/embedding-jetty.adoc index 3d973562ce8..8790ef996fa 100644 --- a/jetty-documentation/src/main/asciidoc/development/embedding/embedding-jetty.adoc +++ b/jetty-documentation/src/main/asciidoc/development/embedding/embedding-jetty.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-file-server.adoc b/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-file-server.adoc index bee9783e6ef..d4a6d5c2f2c 100644 --- a/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-file-server.adoc +++ b/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-file-server.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-many-connectors.adoc b/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-many-connectors.adoc index 7fdbd1b13d9..8ee42831a4c 100644 --- a/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-many-connectors.adoc +++ b/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-many-connectors.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-minimal-servlet.adoc b/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-minimal-servlet.adoc index a965701ac79..a799bf5c3e5 100644 --- a/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-minimal-servlet.adoc +++ b/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-minimal-servlet.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-one-webapp.adoc b/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-one-webapp.adoc index 3c0e6a6f90e..f81651079e0 100644 --- a/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-one-webapp.adoc +++ b/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-one-webapp.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-secured-hello-handler.adoc b/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-secured-hello-handler.adoc index be663c1b4e6..8171e5c5219 100644 --- a/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-secured-hello-handler.adoc +++ b/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-secured-hello-handler.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-split-file-server.adoc b/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-split-file-server.adoc index 615b45d09be..ee7a6e29009 100644 --- a/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-split-file-server.adoc +++ b/jetty-documentation/src/main/asciidoc/development/embedding/examples/embedded-split-file-server.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/embedding/jetty-helloworld.adoc b/jetty-documentation/src/main/asciidoc/development/embedding/jetty-helloworld.adoc index 66f9983b52c..4acd12f6ac5 100644 --- a/jetty-documentation/src/main/asciidoc/development/embedding/jetty-helloworld.adoc +++ b/jetty-documentation/src/main/asciidoc/development/embedding/jetty-helloworld.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/frameworks/chapter.adoc b/jetty-documentation/src/main/asciidoc/development/frameworks/chapter.adoc index 7ed447e189e..3acc2011a22 100644 --- a/jetty-documentation/src/main/asciidoc/development/frameworks/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/development/frameworks/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -22,4 +22,4 @@ include::spring-usage.adoc[] include::osgi.adoc[] include::weld.adoc[] -include::metro.adoc[] \ No newline at end of file +include::metro.adoc[] diff --git a/jetty-documentation/src/main/asciidoc/development/frameworks/metro.adoc b/jetty-documentation/src/main/asciidoc/development/frameworks/metro.adoc index 8dcd06fedf4..e4fd98e0ce1 100644 --- a/jetty-documentation/src/main/asciidoc/development/frameworks/metro.adoc +++ b/jetty-documentation/src/main/asciidoc/development/frameworks/metro.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/frameworks/osgi.adoc b/jetty-documentation/src/main/asciidoc/development/frameworks/osgi.adoc index f6290572cf7..18d246be242 100644 --- a/jetty-documentation/src/main/asciidoc/development/frameworks/osgi.adoc +++ b/jetty-documentation/src/main/asciidoc/development/frameworks/osgi.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/frameworks/spring-usage.adoc b/jetty-documentation/src/main/asciidoc/development/frameworks/spring-usage.adoc index c2e5c0c994b..2139690edf8 100644 --- a/jetty-documentation/src/main/asciidoc/development/frameworks/spring-usage.adoc +++ b/jetty-documentation/src/main/asciidoc/development/frameworks/spring-usage.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/frameworks/weld.adoc b/jetty-documentation/src/main/asciidoc/development/frameworks/weld.adoc index fa98f604664..7c42e138663 100644 --- a/jetty-documentation/src/main/asciidoc/development/frameworks/weld.adoc +++ b/jetty-documentation/src/main/asciidoc/development/frameworks/weld.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/handlers/chapter.adoc b/jetty-documentation/src/main/asciidoc/development/handlers/chapter.adoc index d47427effe7..c44a65977ff 100644 --- a/jetty-documentation/src/main/asciidoc/development/handlers/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/development/handlers/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -19,4 +19,4 @@ [[jetty-handlers]] == Handlers -include::writing-custom-handlers.adoc[] \ No newline at end of file +include::writing-custom-handlers.adoc[] diff --git a/jetty-documentation/src/main/asciidoc/development/handlers/writing-custom-handlers.adoc b/jetty-documentation/src/main/asciidoc/development/handlers/writing-custom-handlers.adoc index a8bfd46b9af..21730437c2b 100644 --- a/jetty-documentation/src/main/asciidoc/development/handlers/writing-custom-handlers.adoc +++ b/jetty-documentation/src/main/asciidoc/development/handlers/writing-custom-handlers.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/maven/chapter.adoc b/jetty-documentation/src/main/asciidoc/development/maven/chapter.adoc index 34b458ce2b4..42925cd1c5b 100644 --- a/jetty-documentation/src/main/asciidoc/development/maven/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/development/maven/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -24,4 +24,4 @@ This chapter explains how to use Jetty with Maven and the Jetty Maven plugin. include::jetty-maven-helloworld.adoc[] include::jetty-maven-plugin.adoc[] include::jetty-maven-scanning.adoc[] -include::jetty-jspc-maven-plugin.adoc[] \ No newline at end of file +include::jetty-jspc-maven-plugin.adoc[] diff --git a/jetty-documentation/src/main/asciidoc/development/maven/jetty-jspc-maven-plugin.adoc b/jetty-documentation/src/main/asciidoc/development/maven/jetty-jspc-maven-plugin.adoc index c387792349d..c715177cc18 100644 --- a/jetty-documentation/src/main/asciidoc/development/maven/jetty-jspc-maven-plugin.adoc +++ b/jetty-documentation/src/main/asciidoc/development/maven/jetty-jspc-maven-plugin.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/maven/jetty-maven-helloworld.adoc b/jetty-documentation/src/main/asciidoc/development/maven/jetty-maven-helloworld.adoc index c700cf1a3e2..90cbe9e14ed 100644 --- a/jetty-documentation/src/main/asciidoc/development/maven/jetty-maven-helloworld.adoc +++ b/jetty-documentation/src/main/asciidoc/development/maven/jetty-maven-helloworld.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/maven/jetty-maven-plugin.adoc b/jetty-documentation/src/main/asciidoc/development/maven/jetty-maven-plugin.adoc index a0fd6bacc42..fb090f72801 100644 --- a/jetty-documentation/src/main/asciidoc/development/maven/jetty-maven-plugin.adoc +++ b/jetty-documentation/src/main/asciidoc/development/maven/jetty-maven-plugin.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/maven/jetty-maven-scanning.adoc b/jetty-documentation/src/main/asciidoc/development/maven/jetty-maven-scanning.adoc index 27e068b24de..6d36dd9d497 100644 --- a/jetty-documentation/src/main/asciidoc/development/maven/jetty-maven-scanning.adoc +++ b/jetty-documentation/src/main/asciidoc/development/maven/jetty-maven-scanning.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/part.adoc b/jetty-documentation/src/main/asciidoc/development/part.adoc index c97a3bf6ff1..1ef5a9d996f 100644 --- a/jetty-documentation/src/main/asciidoc/development/part.adoc +++ b/jetty-documentation/src/main/asciidoc/development/part.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/websockets/intro/chapter.adoc b/jetty-documentation/src/main/asciidoc/development/websockets/intro/chapter.adoc index 9a43439e238..f5783ef1c3b 100644 --- a/jetty-documentation/src/main/asciidoc/development/websockets/intro/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/development/websockets/intro/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/websockets/java/chapter.adoc b/jetty-documentation/src/main/asciidoc/development/websockets/java/chapter.adoc index cb625b6a1d0..d9c99b3f54d 100644 --- a/jetty-documentation/src/main/asciidoc/development/websockets/java/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/development/websockets/java/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/websockets/java/java-websocket-client-api.adoc b/jetty-documentation/src/main/asciidoc/development/websockets/java/java-websocket-client-api.adoc index fa9dca17c21..169ca4eb8b1 100644 --- a/jetty-documentation/src/main/asciidoc/development/websockets/java/java-websocket-client-api.adoc +++ b/jetty-documentation/src/main/asciidoc/development/websockets/java/java-websocket-client-api.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/websockets/java/java-websocket-server-api.adoc b/jetty-documentation/src/main/asciidoc/development/websockets/java/java-websocket-server-api.adoc index 9ed83f02571..6890f3997d4 100644 --- a/jetty-documentation/src/main/asciidoc/development/websockets/java/java-websocket-server-api.adoc +++ b/jetty-documentation/src/main/asciidoc/development/websockets/java/java-websocket-server-api.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/chapter.adoc b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/chapter.adoc index 56ce1cb9b37..177c3564d37 100644 --- a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -29,4 +29,4 @@ include::jetty-websocket-api-annotations.adoc[] include::jetty-websocket-api-listener.adoc[] include::jetty-websocket-api-adapter.adoc[] include::jetty-websocket-server-api.adoc[] -include::jetty-websocket-client-api.adoc[] \ No newline at end of file +include::jetty-websocket-client-api.adoc[] diff --git a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-adapter.adoc b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-adapter.adoc index f845dc3e3a3..cfe096302e1 100644 --- a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-adapter.adoc +++ b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-adapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-annotations.adoc b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-annotations.adoc index 55c161745bb..429e590bdd3 100644 --- a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-annotations.adoc +++ b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-annotations.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-events.adoc b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-events.adoc index 319c7bf2d5c..0352059229b 100644 --- a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-events.adoc +++ b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-events.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-listener.adoc b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-listener.adoc index 25bcb8f799a..292c23ca4c9 100644 --- a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-listener.adoc +++ b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-listener.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-send-message.adoc b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-send-message.adoc index f9dcbae27fb..a8b6e11957f 100644 --- a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-send-message.adoc +++ b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-send-message.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-session.adoc b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-session.adoc index 83b8227ec23..67c34790b40 100644 --- a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-session.adoc +++ b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api-session.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api.adoc b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api.adoc index 63f5235a5ed..861d11a96dc 100644 --- a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api.adoc +++ b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-api.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-client-api.adoc b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-client-api.adoc index 0f69d81cfef..13c7ddaa132 100644 --- a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-client-api.adoc +++ b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-client-api.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-server-api.adoc b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-server-api.adoc index 99d582a8883..3b478f19ef3 100644 --- a/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-server-api.adoc +++ b/jetty-documentation/src/main/asciidoc/development/websockets/jetty/jetty-websocket-server-api.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/index.adoc b/jetty-documentation/src/main/asciidoc/index.adoc index 9595398c802..a1bbda81c88 100644 --- a/jetty-documentation/src/main/asciidoc/index.adoc +++ b/jetty-documentation/src/main/asciidoc/index.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/quick-start/configuring/chapter.adoc b/jetty-documentation/src/main/asciidoc/quick-start/configuring/chapter.adoc index 4650b2ee173..d38647dbef3 100644 --- a/jetty-documentation/src/main/asciidoc/quick-start/configuring/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/quick-start/configuring/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/quick-start/configuring/how-to-configure.adoc b/jetty-documentation/src/main/asciidoc/quick-start/configuring/how-to-configure.adoc index c63aa91959c..2ca4cf98321 100644 --- a/jetty-documentation/src/main/asciidoc/quick-start/configuring/how-to-configure.adoc +++ b/jetty-documentation/src/main/asciidoc/quick-start/configuring/how-to-configure.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/quick-start/configuring/what-to-configure.adoc b/jetty-documentation/src/main/asciidoc/quick-start/configuring/what-to-configure.adoc index 2eb0cb90038..ad125fb47c3 100644 --- a/jetty-documentation/src/main/asciidoc/quick-start/configuring/what-to-configure.adoc +++ b/jetty-documentation/src/main/asciidoc/quick-start/configuring/what-to-configure.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/quick-start/getting-started/chapter.adoc b/jetty-documentation/src/main/asciidoc/quick-start/getting-started/chapter.adoc index b5358ba24a1..bf2fbfbcaa7 100644 --- a/jetty-documentation/src/main/asciidoc/quick-start/getting-started/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/quick-start/getting-started/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-common-configuration.adoc b/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-common-configuration.adoc index 607d452694c..ce07076f907 100644 --- a/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-common-configuration.adoc +++ b/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-common-configuration.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-deploying.adoc b/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-deploying.adoc index 598954ef9c4..12cd942a998 100644 --- a/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-deploying.adoc +++ b/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-deploying.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-installing.adoc b/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-installing.adoc index 9ce7f41ffab..ecc102733b5 100644 --- a/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-installing.adoc +++ b/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-installing.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-running.adoc b/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-running.adoc index de8808a3193..5230dc29edc 100644 --- a/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-running.adoc +++ b/jetty-documentation/src/main/asciidoc/quick-start/getting-started/jetty-running.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/quick-start/introduction/chapter.adoc b/jetty-documentation/src/main/asciidoc/quick-start/introduction/chapter.adoc index 542be3715c9..c69837a1a69 100644 --- a/jetty-documentation/src/main/asciidoc/quick-start/introduction/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/quick-start/introduction/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/quick-start/introduction/jetty-coordinates.adoc b/jetty-documentation/src/main/asciidoc/quick-start/introduction/jetty-coordinates.adoc index d64ca85d5bd..9385883e9e3 100644 --- a/jetty-documentation/src/main/asciidoc/quick-start/introduction/jetty-coordinates.adoc +++ b/jetty-documentation/src/main/asciidoc/quick-start/introduction/jetty-coordinates.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/quick-start/introduction/jetty-javaee.adoc b/jetty-documentation/src/main/asciidoc/quick-start/introduction/jetty-javaee.adoc index f37ec16cebf..6fa929d8f05 100644 --- a/jetty-documentation/src/main/asciidoc/quick-start/introduction/jetty-javaee.adoc +++ b/jetty-documentation/src/main/asciidoc/quick-start/introduction/jetty-javaee.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/quick-start/introduction/what-is-jetty.adoc b/jetty-documentation/src/main/asciidoc/quick-start/introduction/what-is-jetty.adoc index 55bd747a6f1..93c858f560a 100644 --- a/jetty-documentation/src/main/asciidoc/quick-start/introduction/what-is-jetty.adoc +++ b/jetty-documentation/src/main/asciidoc/quick-start/introduction/what-is-jetty.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/quick-start/introduction/what-version.adoc b/jetty-documentation/src/main/asciidoc/quick-start/introduction/what-version.adoc index 52902ec03c8..b4164bb19c7 100644 --- a/jetty-documentation/src/main/asciidoc/quick-start/introduction/what-version.adoc +++ b/jetty-documentation/src/main/asciidoc/quick-start/introduction/what-version.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/quick-start/part.adoc b/jetty-documentation/src/main/asciidoc/quick-start/part.adoc index c577d4afafd..b445cbc3d64 100644 --- a/jetty-documentation/src/main/asciidoc/quick-start/part.adoc +++ b/jetty-documentation/src/main/asciidoc/quick-start/part.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/architecture/1xx-responses.adoc b/jetty-documentation/src/main/asciidoc/reference/architecture/1xx-responses.adoc index 7b00a2194f0..a4aaf9c4974 100644 --- a/jetty-documentation/src/main/asciidoc/reference/architecture/1xx-responses.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/architecture/1xx-responses.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/architecture/basic-architecture.adoc b/jetty-documentation/src/main/asciidoc/reference/architecture/basic-architecture.adoc index 5416bb089fb..0c5e8b173e2 100644 --- a/jetty-documentation/src/main/asciidoc/reference/architecture/basic-architecture.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/architecture/basic-architecture.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/architecture/chapter.adoc b/jetty-documentation/src/main/asciidoc/reference/architecture/chapter.adoc index a0795fa490f..ace8703b3fb 100644 --- a/jetty-documentation/src/main/asciidoc/reference/architecture/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/architecture/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -24,4 +24,4 @@ General items related to the architecture of jetty and how it deals with certain include::basic-architecture.adoc[] include::jetty-classloading.adoc[] include::1xx-responses.adoc[] -include::server-side-architecture.adoc[] \ No newline at end of file +include::server-side-architecture.adoc[] diff --git a/jetty-documentation/src/main/asciidoc/reference/architecture/jetty-classloading.adoc b/jetty-documentation/src/main/asciidoc/reference/architecture/jetty-classloading.adoc index 071f15314c7..e5f07735802 100644 --- a/jetty-documentation/src/main/asciidoc/reference/architecture/jetty-classloading.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/architecture/jetty-classloading.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/architecture/server-side-architecture.adoc b/jetty-documentation/src/main/asciidoc/reference/architecture/server-side-architecture.adoc index 9550b35fb1e..62df993188f 100644 --- a/jetty-documentation/src/main/asciidoc/reference/architecture/server-side-architecture.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/architecture/server-side-architecture.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/contributing/bugs.adoc b/jetty-documentation/src/main/asciidoc/reference/contributing/bugs.adoc index 86e743f74d0..cfe3477bbc9 100644 --- a/jetty-documentation/src/main/asciidoc/reference/contributing/bugs.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/contributing/bugs.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/contributing/chapter.adoc b/jetty-documentation/src/main/asciidoc/reference/contributing/chapter.adoc index 797d59b5411..fcf4ca49e92 100644 --- a/jetty-documentation/src/main/asciidoc/reference/contributing/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/contributing/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -30,4 +30,4 @@ include::bugs.adoc[] include::patches.adoc[] include::security.adoc[] include::releasing-jetty.adoc[] -include::release-testing.adoc[] \ No newline at end of file +include::release-testing.adoc[] diff --git a/jetty-documentation/src/main/asciidoc/reference/contributing/coding-standards.adoc b/jetty-documentation/src/main/asciidoc/reference/contributing/coding-standards.adoc index 59007e0b9bb..ae2c7271e31 100644 --- a/jetty-documentation/src/main/asciidoc/reference/contributing/coding-standards.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/contributing/coding-standards.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/contributing/community.adoc b/jetty-documentation/src/main/asciidoc/reference/contributing/community.adoc index e73a038e53f..f6213ceb156 100644 --- a/jetty-documentation/src/main/asciidoc/reference/contributing/community.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/contributing/community.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/contributing/documentation.adoc b/jetty-documentation/src/main/asciidoc/reference/contributing/documentation.adoc index 33f780e4550..bd295c93a44 100644 --- a/jetty-documentation/src/main/asciidoc/reference/contributing/documentation.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/contributing/documentation.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -193,7 +193,7 @@ license blocks:: .... // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/contributing/patches.adoc b/jetty-documentation/src/main/asciidoc/reference/contributing/patches.adoc index b32cf4e78ae..cee213520bf 100644 --- a/jetty-documentation/src/main/asciidoc/reference/contributing/patches.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/contributing/patches.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/contributing/release-testing.adoc b/jetty-documentation/src/main/asciidoc/reference/contributing/release-testing.adoc index 7b5b70acf9d..60516d75be1 100644 --- a/jetty-documentation/src/main/asciidoc/reference/contributing/release-testing.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/contributing/release-testing.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/contributing/releasing-jetty.adoc b/jetty-documentation/src/main/asciidoc/reference/contributing/releasing-jetty.adoc index 495629798cb..bbdecffd8ce 100644 --- a/jetty-documentation/src/main/asciidoc/reference/contributing/releasing-jetty.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/contributing/releasing-jetty.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/contributing/security.adoc b/jetty-documentation/src/main/asciidoc/reference/contributing/security.adoc index 6760f809eeb..87634a2e2cd 100644 --- a/jetty-documentation/src/main/asciidoc/reference/contributing/security.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/contributing/security.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -29,4 +29,4 @@ If the issue is related to Eclipse or its Jetty integration then we encourage yo If the issue is related to integrations with Jetty we are happy to work with you to identify the proper entity and either of the approaches above is fine. -We prefer that security issues are reported directly to Jetty developers as opposed through GitHub Issues since it has no facility to tag issues as _private_. \ No newline at end of file +We prefer that security issues are reported directly to Jetty developers as opposed through GitHub Issues since it has no facility to tag issues as _private_. diff --git a/jetty-documentation/src/main/asciidoc/reference/contributing/source-build.adoc b/jetty-documentation/src/main/asciidoc/reference/contributing/source-build.adoc index d9f9c22c480..dd3179a9f64 100644 --- a/jetty-documentation/src/main/asciidoc/reference/contributing/source-build.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/contributing/source-build.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/debugging/chapter.adoc b/jetty-documentation/src/main/asciidoc/reference/debugging/chapter.adoc index a501c7ce0ab..2fde923a99a 100644 --- a/jetty-documentation/src/main/asciidoc/reference/debugging/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/debugging/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -27,4 +27,4 @@ If you would like to contribute to this section simply fork the repository and c include::enable-remote-debugging.adoc[] include::debugging-with-intellij.adoc[] -include::debugging-with-eclipse.adoc[] \ No newline at end of file +include::debugging-with-eclipse.adoc[] diff --git a/jetty-documentation/src/main/asciidoc/reference/debugging/debugging-with-eclipse.adoc b/jetty-documentation/src/main/asciidoc/reference/debugging/debugging-with-eclipse.adoc index 6ce95ae1df8..82f90aab1cf 100644 --- a/jetty-documentation/src/main/asciidoc/reference/debugging/debugging-with-eclipse.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/debugging/debugging-with-eclipse.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -56,4 +56,4 @@ file. If this file is on your classpath then Jetty will use it for configuring logging, we use this approach extensively throughout Jetty development and it makes life ever so much easier. You can see this in action in the xref:configuring-jetty-stderrlog[] section. -____ \ No newline at end of file +____ diff --git a/jetty-documentation/src/main/asciidoc/reference/debugging/debugging-with-intellij.adoc b/jetty-documentation/src/main/asciidoc/reference/debugging/debugging-with-intellij.adoc index b5519dc92d6..2872f8793a2 100644 --- a/jetty-documentation/src/main/asciidoc/reference/debugging/debugging-with-intellij.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/debugging/debugging-with-intellij.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -66,4 +66,4 @@ ____ You can easily configure logging through a `jetty-logging.properties` file. If this file is on your classpath then Jetty will use it for configuring logging, we use this approach extensively throughout Jetty development and it makes life ever so much easier. You can see this in action in the xref:configuring-jetty-stderrlog[] section. -____ \ No newline at end of file +____ diff --git a/jetty-documentation/src/main/asciidoc/reference/debugging/enable-remote-debugging.adoc b/jetty-documentation/src/main/asciidoc/reference/debugging/enable-remote-debugging.adoc index f153874f51a..9edcb39bf63 100644 --- a/jetty-documentation/src/main/asciidoc/reference/debugging/enable-remote-debugging.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/debugging/enable-remote-debugging.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/faq/chapter.adoc b/jetty-documentation/src/main/asciidoc/reference/faq/chapter.adoc index 1fcdd2cdc54..fb7d8c6a8a6 100644 --- a/jetty-documentation/src/main/asciidoc/reference/faq/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/faq/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/jetty-xml/chapter.adoc b/jetty-documentation/src/main/asciidoc/reference/jetty-xml/chapter.adoc index 156c820f515..81e05bea2a5 100644 --- a/jetty-documentation/src/main/asciidoc/reference/jetty-xml/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/jetty-xml/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-env-xml.adoc b/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-env-xml.adoc index f9a042c624a..74963239c48 100644 --- a/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-env-xml.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-env-xml.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-web-xml-config.adoc b/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-web-xml-config.adoc index 283e9ea8e3c..1ce5b7852e5 100644 --- a/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-web-xml-config.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-web-xml-config.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-xml-config.adoc b/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-xml-config.adoc index 36f7041ee99..62b82387d00 100644 --- a/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-xml-config.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-xml-config.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-xml-syntax.adoc b/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-xml-syntax.adoc index b0b646bf7e1..8288088f2c0 100644 --- a/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-xml-syntax.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-xml-syntax.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-xml-usage.adoc b/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-xml-usage.adoc index 1bbaaf0eec9..93e0947c96b 100644 --- a/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-xml-usage.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/jetty-xml/jetty-xml-usage.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/jetty-xml/override-web-xml.adoc b/jetty-documentation/src/main/asciidoc/reference/jetty-xml/override-web-xml.adoc index f4909a7b8c4..e77435c6ad3 100644 --- a/jetty-documentation/src/main/asciidoc/reference/jetty-xml/override-web-xml.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/jetty-xml/override-web-xml.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/jetty-xml/webdefault-xml.adoc b/jetty-documentation/src/main/asciidoc/reference/jetty-xml/webdefault-xml.adoc index 59ed488bae3..f2f83c7e8e4 100644 --- a/jetty-documentation/src/main/asciidoc/reference/jetty-xml/webdefault-xml.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/jetty-xml/webdefault-xml.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/part.adoc b/jetty-documentation/src/main/asciidoc/reference/part.adoc index 7d3d8e4331e..29b9b87567d 100644 --- a/jetty-documentation/src/main/asciidoc/reference/part.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/part.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/platforms/chapter.adoc b/jetty-documentation/src/main/asciidoc/reference/platforms/chapter.adoc index e36e6ac5662..2e72902f7f8 100644 --- a/jetty-documentation/src/main/asciidoc/reference/platforms/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/platforms/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/platforms/cloudfoundry.adoc b/jetty-documentation/src/main/asciidoc/reference/platforms/cloudfoundry.adoc index 224da63a01a..cb6f02928f8 100644 --- a/jetty-documentation/src/main/asciidoc/reference/platforms/cloudfoundry.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/platforms/cloudfoundry.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/platforms/elastic-beanstalk.adoc b/jetty-documentation/src/main/asciidoc/reference/platforms/elastic-beanstalk.adoc index fed2d082f51..ed9031146ef 100644 --- a/jetty-documentation/src/main/asciidoc/reference/platforms/elastic-beanstalk.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/platforms/elastic-beanstalk.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -85,4 +85,4 @@ Bluepill is used to manage the start and stop process of the app server. This seems to be a problematic bit of software with a colored history and the version in use at the time of this writing is old. When starting and stopping (or restarting) the appserver you may see error messages show up that the Server timed out getting a response or things like that. These are red herrings and my experience is that jetty has started and stopped just fine, the pid file required shows up in a very timely fashion (under `/var/run/jetty.pid`) so do check that the app server has started, but please be aware there is a strangeness here that hasn't been sorted out yet. -____ \ No newline at end of file +____ diff --git a/jetty-documentation/src/main/asciidoc/reference/platforms/fedora.adoc b/jetty-documentation/src/main/asciidoc/reference/platforms/fedora.adoc index f307b1f8127..a0385fd9221 100644 --- a/jetty-documentation/src/main/asciidoc/reference/platforms/fedora.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/platforms/fedora.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/platforms/jelastic.adoc b/jetty-documentation/src/main/asciidoc/reference/platforms/jelastic.adoc index 52f7a5e245e..b02da5f090a 100644 --- a/jetty-documentation/src/main/asciidoc/reference/platforms/jelastic.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/platforms/jelastic.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/platforms/ubuntu.adoc b/jetty-documentation/src/main/asciidoc/reference/platforms/ubuntu.adoc index 42d04b03ed2..abbe0937599 100644 --- a/jetty-documentation/src/main/asciidoc/reference/platforms/ubuntu.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/platforms/ubuntu.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/troubleshooting/chapter.adoc b/jetty-documentation/src/main/asciidoc/reference/troubleshooting/chapter.adoc index bf865bbabd2..62f78a632d2 100644 --- a/jetty-documentation/src/main/asciidoc/reference/troubleshooting/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/troubleshooting/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/troubleshooting/preventing-memory-leaks.adoc b/jetty-documentation/src/main/asciidoc/reference/troubleshooting/preventing-memory-leaks.adoc index 5c4d643d81d..c9169ba4840 100644 --- a/jetty-documentation/src/main/asciidoc/reference/troubleshooting/preventing-memory-leaks.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/troubleshooting/preventing-memory-leaks.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/troubleshooting/security-reports.adoc b/jetty-documentation/src/main/asciidoc/reference/troubleshooting/security-reports.adoc index e4f9bc9c812..658bfd190a5 100644 --- a/jetty-documentation/src/main/asciidoc/reference/troubleshooting/security-reports.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/troubleshooting/security-reports.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/troubleshooting/slow-deployment.adoc b/jetty-documentation/src/main/asciidoc/reference/troubleshooting/slow-deployment.adoc index 11e935d422a..7f230c33c2b 100644 --- a/jetty-documentation/src/main/asciidoc/reference/troubleshooting/slow-deployment.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/troubleshooting/slow-deployment.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/troubleshooting/troubleshooting-locked-files.adoc b/jetty-documentation/src/main/asciidoc/reference/troubleshooting/troubleshooting-locked-files.adoc index 584241d2cfb..a1adf7988c4 100644 --- a/jetty-documentation/src/main/asciidoc/reference/troubleshooting/troubleshooting-locked-files.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/troubleshooting/troubleshooting-locked-files.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/troubleshooting/troubleshooting-zip-exceptions.adoc b/jetty-documentation/src/main/asciidoc/reference/troubleshooting/troubleshooting-zip-exceptions.adoc index 925ada439fe..8e6acf07062 100644 --- a/jetty-documentation/src/main/asciidoc/reference/troubleshooting/troubleshooting-zip-exceptions.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/troubleshooting/troubleshooting-zip-exceptions.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/troubleshooting/watchservice.adoc b/jetty-documentation/src/main/asciidoc/reference/troubleshooting/watchservice.adoc index 45720a81ad0..369c361ab79 100644 --- a/jetty-documentation/src/main/asciidoc/reference/troubleshooting/watchservice.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/troubleshooting/watchservice.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/upgrading/chapter.adoc b/jetty-documentation/src/main/asciidoc/reference/upgrading/chapter.adoc index 99ece4508ec..fa4eb328814 100644 --- a/jetty-documentation/src/main/asciidoc/reference/upgrading/chapter.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/upgrading/chapter.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/upgrading/sample.adoc b/jetty-documentation/src/main/asciidoc/reference/upgrading/sample.adoc index 247897b7ea0..d11b705f235 100644 --- a/jetty-documentation/src/main/asciidoc/reference/upgrading/sample.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/upgrading/sample.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-documentation/src/main/asciidoc/reference/upgrading/upgrading-9.3-to-9.4.adoc b/jetty-documentation/src/main/asciidoc/reference/upgrading/upgrading-9.3-to-9.4.adoc index 9a02b58bcb6..5bc17f241c9 100644 --- a/jetty-documentation/src/main/asciidoc/reference/upgrading/upgrading-9.3-to-9.4.adoc +++ b/jetty-documentation/src/main/asciidoc/reference/upgrading/upgrading-9.3-to-9.4.adoc @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ======================================================================== // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/FCGI.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/FCGI.java index ff52c443fa6..f7424aea3e8 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/FCGI.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/FCGI.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpChannelOverFCGI.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpChannelOverFCGI.java index 6ae8eb39fca..dda541f1e1e 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpChannelOverFCGI.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpChannelOverFCGI.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpClientTransportOverFCGI.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpClientTransportOverFCGI.java index 90aafa519eb..12247864f81 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpClientTransportOverFCGI.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpClientTransportOverFCGI.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpConnectionOverFCGI.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpConnectionOverFCGI.java index d72762f2d63..d9ebea6a496 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpConnectionOverFCGI.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpConnectionOverFCGI.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpDestinationOverFCGI.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpDestinationOverFCGI.java index 9295139fc96..9a296c1bf13 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpDestinationOverFCGI.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpDestinationOverFCGI.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpReceiverOverFCGI.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpReceiverOverFCGI.java index cf7fb56cb39..4f99ea24bb1 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpReceiverOverFCGI.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpReceiverOverFCGI.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpSenderOverFCGI.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpSenderOverFCGI.java index 02ca68dfd0f..3a5a6b63a4d 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpSenderOverFCGI.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/HttpSenderOverFCGI.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/MultiplexHttpDestinationOverFCGI.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/MultiplexHttpDestinationOverFCGI.java index dddb30cd9d7..dcf7d2fc605 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/MultiplexHttpDestinationOverFCGI.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/client/http/MultiplexHttpDestinationOverFCGI.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/generator/ClientGenerator.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/generator/ClientGenerator.java index 96f2cd5626a..2094f46528f 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/generator/ClientGenerator.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/generator/ClientGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/generator/Flusher.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/generator/Flusher.java index 0661b18c5e9..ea1b3f9d137 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/generator/Flusher.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/generator/Flusher.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/generator/Generator.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/generator/Generator.java index ac3b137daee..aaceab03673 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/generator/Generator.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/generator/Generator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/generator/ServerGenerator.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/generator/ServerGenerator.java index 12eb6bd5962..53e24d6c020 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/generator/ServerGenerator.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/generator/ServerGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/BeginRequestContentParser.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/BeginRequestContentParser.java index f318395fcff..6fe19cd44b3 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/BeginRequestContentParser.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/BeginRequestContentParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ClientParser.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ClientParser.java index 2fe8eb9f147..3d2bcdf001e 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ClientParser.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ClientParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ContentParser.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ContentParser.java index 2407c8dd32f..54521faeb24 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ContentParser.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ContentParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/EndRequestContentParser.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/EndRequestContentParser.java index e76edd437a6..9116159c70f 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/EndRequestContentParser.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/EndRequestContentParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/HeaderParser.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/HeaderParser.java index e4d7564f258..c02ddb655f3 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/HeaderParser.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/HeaderParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ParamsContentParser.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ParamsContentParser.java index 0000dd33b31..888f12a1863 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ParamsContentParser.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ParamsContentParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/Parser.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/Parser.java index cc217f82c27..8eee11f53b1 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/Parser.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/Parser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ResponseContentParser.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ResponseContentParser.java index af908cdf1cb..7fd2b3bd3de 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ResponseContentParser.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ResponseContentParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ServerParser.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ServerParser.java index c01f0104cbc..0ffeba7bfb8 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ServerParser.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/ServerParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/StreamContentParser.java b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/StreamContentParser.java index 682b826978b..8e53ea67b5f 100644 --- a/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/StreamContentParser.java +++ b/jetty-fcgi/fcgi-client/src/main/java/org/eclipse/jetty/fcgi/parser/StreamContentParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/test/java/org/eclipse/jetty/fcgi/generator/ClientGeneratorTest.java b/jetty-fcgi/fcgi-client/src/test/java/org/eclipse/jetty/fcgi/generator/ClientGeneratorTest.java index 02fa56926ca..f4abdef6958 100644 --- a/jetty-fcgi/fcgi-client/src/test/java/org/eclipse/jetty/fcgi/generator/ClientGeneratorTest.java +++ b/jetty-fcgi/fcgi-client/src/test/java/org/eclipse/jetty/fcgi/generator/ClientGeneratorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-client/src/test/java/org/eclipse/jetty/fcgi/parser/ClientParserTest.java b/jetty-fcgi/fcgi-client/src/test/java/org/eclipse/jetty/fcgi/parser/ClientParserTest.java index 65f4b32f4c3..06084247e3c 100644 --- a/jetty-fcgi/fcgi-client/src/test/java/org/eclipse/jetty/fcgi/parser/ClientParserTest.java +++ b/jetty-fcgi/fcgi-client/src/test/java/org/eclipse/jetty/fcgi/parser/ClientParserTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/HttpChannelOverFCGI.java b/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/HttpChannelOverFCGI.java index 60f904995ce..8e52bbeedd7 100644 --- a/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/HttpChannelOverFCGI.java +++ b/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/HttpChannelOverFCGI.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/HttpTransportOverFCGI.java b/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/HttpTransportOverFCGI.java index cf6e4a1cc24..817a51aa6ea 100644 --- a/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/HttpTransportOverFCGI.java +++ b/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/HttpTransportOverFCGI.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/ServerFCGIConnection.java b/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/ServerFCGIConnection.java index a9e7d4fc329..71cefd61f02 100644 --- a/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/ServerFCGIConnection.java +++ b/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/ServerFCGIConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/ServerFCGIConnectionFactory.java b/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/ServerFCGIConnectionFactory.java index 02fb9e0a21f..57da66914fe 100644 --- a/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/ServerFCGIConnectionFactory.java +++ b/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/ServerFCGIConnectionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/proxy/FastCGIProxyServlet.java b/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/proxy/FastCGIProxyServlet.java index 15b769f8f3d..5762414a455 100644 --- a/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/proxy/FastCGIProxyServlet.java +++ b/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/proxy/FastCGIProxyServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/proxy/TryFilesFilter.java b/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/proxy/TryFilesFilter.java index a158e307773..3964dea1150 100644 --- a/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/proxy/TryFilesFilter.java +++ b/jetty-fcgi/fcgi-server/src/main/java/org/eclipse/jetty/fcgi/server/proxy/TryFilesFilter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/AbstractHttpClientServerTest.java b/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/AbstractHttpClientServerTest.java index ab0162991ad..d32d29ad87a 100644 --- a/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/AbstractHttpClientServerTest.java +++ b/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/AbstractHttpClientServerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/EmptyServerHandler.java b/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/EmptyServerHandler.java index 696c27ec02b..955d2ef4b83 100644 --- a/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/EmptyServerHandler.java +++ b/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/EmptyServerHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/ExternalFastCGIServerTest.java b/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/ExternalFastCGIServerTest.java index dd1a680eebc..933acc70f6a 100644 --- a/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/ExternalFastCGIServerTest.java +++ b/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/ExternalFastCGIServerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/HttpClientTest.java b/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/HttpClientTest.java index bd661438d38..27a7ef955dc 100644 --- a/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/HttpClientTest.java +++ b/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/HttpClientTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/proxy/DrupalHTTP2FastCGIProxyServer.java b/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/proxy/DrupalHTTP2FastCGIProxyServer.java index c8bf2f0a57c..67568980f73 100644 --- a/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/proxy/DrupalHTTP2FastCGIProxyServer.java +++ b/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/proxy/DrupalHTTP2FastCGIProxyServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/proxy/FastCGIProxyServletTest.java b/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/proxy/FastCGIProxyServletTest.java index 9361914e6ad..5513cbf9894 100644 --- a/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/proxy/FastCGIProxyServletTest.java +++ b/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/proxy/FastCGIProxyServletTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/proxy/TryFilesFilterTest.java b/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/proxy/TryFilesFilterTest.java index 173df037ac8..3e52405c11d 100644 --- a/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/proxy/TryFilesFilterTest.java +++ b/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/proxy/TryFilesFilterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/proxy/WordPressHTTP2FastCGIProxyServer.java b/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/proxy/WordPressHTTP2FastCGIProxyServer.java index f37b536bc6e..c10e94c1782 100644 --- a/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/proxy/WordPressHTTP2FastCGIProxyServer.java +++ b/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/proxy/WordPressHTTP2FastCGIProxyServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-gcloud/jetty-gcloud-session-manager/src/main/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStore.java b/jetty-gcloud/jetty-gcloud-session-manager/src/main/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStore.java index cd85db19ccb..5f304f660e9 100644 --- a/jetty-gcloud/jetty-gcloud-session-manager/src/main/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStore.java +++ b/jetty-gcloud/jetty-gcloud-session-manager/src/main/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStore.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-gcloud/jetty-gcloud-session-manager/src/main/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStoreFactory.java b/jetty-gcloud/jetty-gcloud-session-manager/src/main/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStoreFactory.java index ad65d3e8d29..7c8e480d4d7 100644 --- a/jetty-gcloud/jetty-gcloud-session-manager/src/main/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStoreFactory.java +++ b/jetty-gcloud/jetty-gcloud-session-manager/src/main/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStoreFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-gcloud/jetty-gcloud-session-manager/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionTester.java b/jetty-gcloud/jetty-gcloud-session-manager/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionTester.java index 6d50d76ae1c..d58d8bb3144 100644 --- a/jetty-gcloud/jetty-gcloud-session-manager/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionTester.java +++ b/jetty-gcloud/jetty-gcloud-session-manager/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionTester.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStore.java b/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStore.java index 8e813da6c35..1de88c048b7 100644 --- a/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStore.java +++ b/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStore.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStoreFactory.java b/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStoreFactory.java index aa076cf4011..f1524102cef 100644 --- a/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStoreFactory.java +++ b/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStoreFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/SessionDataSerializer.java b/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/SessionDataSerializer.java index e5dc9d3514c..5179f685cf4 100644 --- a/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/SessionDataSerializer.java +++ b/jetty-hazelcast/src/main/java/org/eclipse/jetty/hazelcast/session/SessionDataSerializer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-hazelcast/src/test/java/org/eclipse/jetty/hazelcast/session/TestHazelcastSessions.java b/jetty-hazelcast/src/test/java/org/eclipse/jetty/hazelcast/session/TestHazelcastSessions.java index 3ba4c4f31df..59c6e8d2d00 100644 --- a/jetty-hazelcast/src/test/java/org/eclipse/jetty/hazelcast/session/TestHazelcastSessions.java +++ b/jetty-hazelcast/src/test/java/org/eclipse/jetty/hazelcast/session/TestHazelcastSessions.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/DelegatingThreadPool.java b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/DelegatingThreadPool.java index 5a664d7e05b..0f8fbb08caa 100644 --- a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/DelegatingThreadPool.java +++ b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/DelegatingThreadPool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/HttpSpiContextHandler.java b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/HttpSpiContextHandler.java index 0627db74bcc..7149e747775 100644 --- a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/HttpSpiContextHandler.java +++ b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/HttpSpiContextHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyExchange.java b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyExchange.java index 73af298d8fb..18085d6ef46 100644 --- a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyExchange.java +++ b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyExchange.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpContext.java b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpContext.java index 18b45d99ea5..7e1d56b877f 100644 --- a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpContext.java +++ b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpContext.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpExchange.java b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpExchange.java index 802b8b3f604..1c436c67264 100644 --- a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpExchange.java +++ b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpExchange.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpExchangeDelegate.java b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpExchangeDelegate.java index 556efbc81ce..92de9c1386a 100644 --- a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpExchangeDelegate.java +++ b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpExchangeDelegate.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServer.java b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServer.java index 2a4e385f5a0..de384c53f98 100644 --- a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServer.java +++ b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServerProvider.java b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServerProvider.java index d0409aecd23..aa36ac27ce6 100644 --- a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServerProvider.java +++ b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServerProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpsExchange.java b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpsExchange.java index b96dee48d05..f67b111afe4 100644 --- a/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpsExchange.java +++ b/jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpsExchange.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http-spi/src/test/java/org/eclipse/jetty/http/spi/TestEndpointMultiplePublishProblem.java b/jetty-http-spi/src/test/java/org/eclipse/jetty/http/spi/TestEndpointMultiplePublishProblem.java index 09d021993ca..8cb1e1f1c0d 100644 --- a/jetty-http-spi/src/test/java/org/eclipse/jetty/http/spi/TestEndpointMultiplePublishProblem.java +++ b/jetty-http-spi/src/test/java/org/eclipse/jetty/http/spi/TestEndpointMultiplePublishProblem.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http-spi/src/test/java/org/eclipse/jetty/http/spi/TestSPIServer.java b/jetty-http-spi/src/test/java/org/eclipse/jetty/http/spi/TestSPIServer.java index 429c517bccd..89168cf770a 100644 --- a/jetty-http-spi/src/test/java/org/eclipse/jetty/http/spi/TestSPIServer.java +++ b/jetty-http-spi/src/test/java/org/eclipse/jetty/http/spi/TestSPIServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/BadMessageException.java b/jetty-http/src/main/java/org/eclipse/jetty/http/BadMessageException.java index 0fa182ce2a7..9623a3aa35e 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/BadMessageException.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/BadMessageException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/CompressedContentFormat.java b/jetty-http/src/main/java/org/eclipse/jetty/http/CompressedContentFormat.java index 93b9501541c..8cce4fc22a0 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/CompressedContentFormat.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/CompressedContentFormat.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/CookieCompliance.java b/jetty-http/src/main/java/org/eclipse/jetty/http/CookieCompliance.java index dc208524d25..b2d339cd885 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/CookieCompliance.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/CookieCompliance.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/DateGenerator.java b/jetty-http/src/main/java/org/eclipse/jetty/http/DateGenerator.java index 2b29b5f1516..d768d4f470b 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/DateGenerator.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/DateGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/DateParser.java b/jetty-http/src/main/java/org/eclipse/jetty/http/DateParser.java index e76a0a1310b..9dd257533e5 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/DateParser.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/DateParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/GZIPContentDecoder.java b/jetty-http/src/main/java/org/eclipse/jetty/http/GZIPContentDecoder.java index e3e0401fbee..e56bab22639 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/GZIPContentDecoder.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/GZIPContentDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HostPortHttpField.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HostPortHttpField.java index 47cfb9e5390..215c353b4b9 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HostPortHttpField.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HostPortHttpField.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/Http1FieldPreEncoder.java b/jetty-http/src/main/java/org/eclipse/jetty/http/Http1FieldPreEncoder.java index f8951b44155..c94ebffdbf5 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/Http1FieldPreEncoder.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/Http1FieldPreEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpCompliance.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpCompliance.java index 1c5d92c8ebe..289b9f244a7 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpCompliance.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpCompliance.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -193,4 +193,4 @@ public enum HttpCompliance // TODO in Jetty-10 convert this enum to a class so t return _sections; } -} \ No newline at end of file +} diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpComplianceSection.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpComplianceSection.java index 190a4dea7aa..4aadc830306 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpComplianceSection.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpComplianceSection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpContent.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpContent.java index 53822a4aca2..c2a03d12692 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpContent.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpContent.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpCookie.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpCookie.java index 33517ccfd2d..62ab47e9c55 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpCookie.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpCookie.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpField.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpField.java index 58bd7f7e547..12fdde7f412 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpField.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpField.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpFieldPreEncoder.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpFieldPreEncoder.java index 8961932fd3a..a06b4fbf681 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpFieldPreEncoder.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpFieldPreEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -33,4 +33,4 @@ public interface HttpFieldPreEncoder */ HttpVersion getHttpVersion(); byte[] getEncodedField(HttpHeader header, String headerString, String value); -} \ No newline at end of file +} diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpFields.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpFields.java index 19b77a84883..14c4335eb5a 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpFields.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpFields.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpGenerator.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpGenerator.java index 58ff3c68649..8e37f5910df 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpGenerator.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpHeader.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpHeader.java index 3be15acc258..f39c0f7df98 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpHeader.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpHeader.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpHeaderValue.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpHeaderValue.java index 97ba411c79f..e5f10b04605 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpHeaderValue.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpHeaderValue.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpMethod.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpMethod.java index f99f66e8a79..e529eff2c51 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpMethod.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpMethod.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java index a00e3e6c49a..2abc4b6c431 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpScheme.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpScheme.java index 341c0249cc6..31039ea6f39 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpScheme.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpScheme.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpStatus.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpStatus.java index 505b5174efa..dc2a2c8c533 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpStatus.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpStatus.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpTokens.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpTokens.java index 818eb1f3426..352a6e5cb12 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpTokens.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpTokens.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpURI.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpURI.java index af3e12e678e..9c43512d9cf 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpURI.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpURI.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpVersion.java b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpVersion.java index dfc700fde39..9a9faf7c479 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/HttpVersion.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/HttpVersion.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/MetaData.java b/jetty-http/src/main/java/org/eclipse/jetty/http/MetaData.java index decab4d73bd..416a37159eb 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/MetaData.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/MetaData.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/MimeTypes.java b/jetty-http/src/main/java/org/eclipse/jetty/http/MimeTypes.java index de50d4bc09d..6c0c4fb91a3 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/MimeTypes.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/MimeTypes.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/MultiPartFormInputStream.java b/jetty-http/src/main/java/org/eclipse/jetty/http/MultiPartFormInputStream.java index 8e68ba43c9d..928f59c3c64 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/MultiPartFormInputStream.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/MultiPartFormInputStream.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/MultiPartParser.java b/jetty-http/src/main/java/org/eclipse/jetty/http/MultiPartParser.java index 3b1fb97b1ca..0832e0f8641 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/MultiPartParser.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/MultiPartParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/PathMap.java b/jetty-http/src/main/java/org/eclipse/jetty/http/PathMap.java index 86bd0054935..11cf72b5e7a 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/PathMap.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/PathMap.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/PreEncodedHttpField.java b/jetty-http/src/main/java/org/eclipse/jetty/http/PreEncodedHttpField.java index 4bff0efdf92..11ad88821c0 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/PreEncodedHttpField.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/PreEncodedHttpField.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/PrecompressedHttpContent.java b/jetty-http/src/main/java/org/eclipse/jetty/http/PrecompressedHttpContent.java index 3a52aaab406..3cdce953736 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/PrecompressedHttpContent.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/PrecompressedHttpContent.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -179,4 +179,4 @@ public class PrecompressedHttpContent implements HttpContent { return null; } -} \ No newline at end of file +} diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/QuotedCSV.java b/jetty-http/src/main/java/org/eclipse/jetty/http/QuotedCSV.java index 9fbb36ab86d..9ca7dbeec2c 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/QuotedCSV.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/QuotedCSV.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/QuotedQualityCSV.java b/jetty-http/src/main/java/org/eclipse/jetty/http/QuotedQualityCSV.java index 4f9ff72ed6c..61cee88bfd5 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/QuotedQualityCSV.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/QuotedQualityCSV.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/ResourceHttpContent.java b/jetty-http/src/main/java/org/eclipse/jetty/http/ResourceHttpContent.java index 5ea4365975f..c52b2f4f5dd 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/ResourceHttpContent.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/ResourceHttpContent.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -237,4 +237,4 @@ public class ResourceHttpContent implements HttpContent return _precompressedContents; } -} \ No newline at end of file +} diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/Syntax.java b/jetty-http/src/main/java/org/eclipse/jetty/http/Syntax.java index b934a6bbcc3..1c8305ba101 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/Syntax.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/Syntax.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/package-info.java b/jetty-http/src/main/java/org/eclipse/jetty/http/package-info.java index e5c027f0572..0532f07bf83 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/package-info.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/MappedResource.java b/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/MappedResource.java index b696cbba4c9..2c41790006d 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/MappedResource.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/MappedResource.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -98,4 +98,4 @@ public class MappedResource implements Comparable> { return String.format("MappedResource[pathSpec=%s,resource=%s]",pathSpec,resource); } -} \ No newline at end of file +} diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathMappings.java b/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathMappings.java index 1954da4228c..f93b856748e 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathMappings.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathMappings.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathSpec.java b/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathSpec.java index 98f4293fd57..4ecb76f01b4 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathSpec.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathSpec.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathSpecGroup.java b/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathSpecGroup.java index 3fbfd989b5a..0f286236990 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathSpecGroup.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathSpecGroup.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathSpecSet.java b/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathSpecSet.java index 705a1dcfb23..75e7ede0bca 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathSpecSet.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathSpecSet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/RegexPathSpec.java b/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/RegexPathSpec.java index 87c6d5a9670..42624ac7ca2 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/RegexPathSpec.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/RegexPathSpec.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/ServletPathSpec.java b/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/ServletPathSpec.java index 8f374c193dd..514c3070853 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/ServletPathSpec.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/ServletPathSpec.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/UriTemplatePathSpec.java b/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/UriTemplatePathSpec.java index 62dcf8be295..6eed9015d6a 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/UriTemplatePathSpec.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/UriTemplatePathSpec.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/GZIPContentDecoderTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/GZIPContentDecoderTest.java index ad6c92fa230..b5dea752126 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/GZIPContentDecoderTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/GZIPContentDecoderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpFieldTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpFieldTest.java index 64f2f76335b..1b0e9697b11 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpFieldTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpFieldTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpFieldsMatchers.java b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpFieldsMatchers.java index 4cb8e6cf917..dafec619638 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpFieldsMatchers.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpFieldsMatchers.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpFieldsTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpFieldsTest.java index 7227c7d4776..3ec1b84c454 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpFieldsTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpFieldsTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpGeneratorClientTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpGeneratorClientTest.java index 941900584ea..2af4efc02d6 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpGeneratorClientTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpGeneratorClientTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpGeneratorServerHTTPTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpGeneratorServerHTTPTest.java index 59168afee43..9f9ac3bd20f 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpGeneratorServerHTTPTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpGeneratorServerHTTPTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpGeneratorServerTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpGeneratorServerTest.java index a1d5aaebe4b..164fb878a62 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpGeneratorServerTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpGeneratorServerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpParserTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpParserTest.java index cb96bef18a7..c0bcc5f7b16 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpParserTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpParserTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpStatusCodeTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpStatusCodeTest.java index b6baef773ca..4350310618a 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpStatusCodeTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpStatusCodeTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpTester.java b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpTester.java index 6b2a2f01acf..00c4a40d942 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpTester.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpTester.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpTesterTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpTesterTest.java index 964038ba485..ad10aa8f4bf 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpTesterTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpTesterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpURIParseTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpURIParseTest.java index 6510679f850..63dca9a81f2 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpURIParseTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpURIParseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -250,4 +250,4 @@ public class HttpURIParseTest assertThat("[" + input + "] .fragment",httpUri.getFragment(),is(javaUri.getFragment())); assertThat("[" + input + "] .toString",httpUri.toString(),is(javaUri.toASCIIString())); } -} \ No newline at end of file +} diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpURITest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpURITest.java index b9f93871d4a..63a58cf9465 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/HttpURITest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/HttpURITest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/MimeTypesTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/MimeTypesTest.java index a27ff28f876..0d84e4e8c89 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/MimeTypesTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/MimeTypesTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/MultiPartCaptureTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/MultiPartCaptureTest.java index 8715794d88e..9fd119b0eca 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/MultiPartCaptureTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/MultiPartCaptureTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/MultiPartFormInputStreamTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/MultiPartFormInputStreamTest.java index 87ca092a65f..6501c57ed2d 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/MultiPartFormInputStreamTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/MultiPartFormInputStreamTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/MultiPartParserTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/MultiPartParserTest.java index e54f17989e1..1e3010d9bfb 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/MultiPartParserTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/MultiPartParserTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/PathMapTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/PathMapTest.java index b507bd8d348..2caa3f5d33d 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/PathMapTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/PathMapTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/QuotedCSVTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/QuotedCSVTest.java index 29b17a6ccae..954fb562dfc 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/QuotedCSVTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/QuotedCSVTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/QuotedQualityCSVTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/QuotedQualityCSVTest.java index 334cb5b9a87..ba0db4a8972 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/QuotedQualityCSVTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/QuotedQualityCSVTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/SyntaxTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/SyntaxTest.java index 173d3d1d548..5f4725061fb 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/SyntaxTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/SyntaxTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/matchers/HttpFieldsContainsHeaderKey.java b/jetty-http/src/test/java/org/eclipse/jetty/http/matchers/HttpFieldsContainsHeaderKey.java index b4ef5f11e39..9b52d9da9fa 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/matchers/HttpFieldsContainsHeaderKey.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/matchers/HttpFieldsContainsHeaderKey.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/matchers/HttpFieldsContainsHeaderValue.java b/jetty-http/src/test/java/org/eclipse/jetty/http/matchers/HttpFieldsContainsHeaderValue.java index 1e8389089f1..130dd23bb70 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/matchers/HttpFieldsContainsHeaderValue.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/matchers/HttpFieldsContainsHeaderValue.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/matchers/HttpFieldsMatchersTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/matchers/HttpFieldsMatchersTest.java index 895049a797f..41395928ed3 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/matchers/HttpFieldsMatchersTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/matchers/HttpFieldsMatchersTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/PathMappingsTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/PathMappingsTest.java index 6ca1022c6cf..fbc010b7a4d 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/PathMappingsTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/PathMappingsTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/PathSpecAssert.java b/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/PathSpecAssert.java index 1770db67923..6ee46c5c29a 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/PathSpecAssert.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/PathSpecAssert.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/RegexPathSpecTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/RegexPathSpecTest.java index 6771a27f300..56d48a3e793 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/RegexPathSpecTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/RegexPathSpecTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/ServletPathSpecMatchListTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/ServletPathSpecMatchListTest.java index 36079878b2c..7839eda4383 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/ServletPathSpecMatchListTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/ServletPathSpecMatchListTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/ServletPathSpecOrderTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/ServletPathSpecOrderTest.java index a1a4a370457..8d859699425 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/ServletPathSpecOrderTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/ServletPathSpecOrderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/ServletPathSpecTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/ServletPathSpecTest.java index b0154e6b52c..b575079f0f0 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/ServletPathSpecTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/ServletPathSpecTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/UriTemplatePathSpecBadSpecsTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/UriTemplatePathSpecBadSpecsTest.java index 9cdb498a06c..2201d2c9b07 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/UriTemplatePathSpecBadSpecsTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/UriTemplatePathSpecBadSpecsTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -60,4 +60,4 @@ public class UriTemplatePathSpecBadSpecsTest { assertThrows(IllegalArgumentException.class, ()-> new UriTemplatePathSpec(pathSpec)); } -} \ No newline at end of file +} diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/UriTemplatePathSpecTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/UriTemplatePathSpecTest.java index edac6c3eb7a..38efbb059fc 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/UriTemplatePathSpecTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/pathmap/UriTemplatePathSpecTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-alpn-tests/src/test/java/org/eclipse/jetty/http2/alpn/tests/ALPNNegotiationTest.java b/jetty-http2/http2-alpn-tests/src/test/java/org/eclipse/jetty/http2/alpn/tests/ALPNNegotiationTest.java index 60c859bf5ff..aff9ebf3c41 100644 --- a/jetty-http2/http2-alpn-tests/src/test/java/org/eclipse/jetty/http2/alpn/tests/ALPNNegotiationTest.java +++ b/jetty-http2/http2-alpn-tests/src/test/java/org/eclipse/jetty/http2/alpn/tests/ALPNNegotiationTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-alpn-tests/src/test/java/org/eclipse/jetty/http2/alpn/tests/AbstractALPNTest.java b/jetty-http2/http2-alpn-tests/src/test/java/org/eclipse/jetty/http2/alpn/tests/AbstractALPNTest.java index 59ad2d7e3c1..783298b9377 100644 --- a/jetty-http2/http2-alpn-tests/src/test/java/org/eclipse/jetty/http2/alpn/tests/AbstractALPNTest.java +++ b/jetty-http2/http2-alpn-tests/src/test/java/org/eclipse/jetty/http2/alpn/tests/AbstractALPNTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2Client.java b/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2Client.java index 03bd0d3d006..3b969874d63 100644 --- a/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2Client.java +++ b/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2Client.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2ClientConnectionFactory.java b/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2ClientConnectionFactory.java index 803d95b586a..cfe45c13d49 100644 --- a/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2ClientConnectionFactory.java +++ b/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2ClientConnectionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2ClientSession.java b/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2ClientSession.java index a577e03732e..660ae6c205f 100644 --- a/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2ClientSession.java +++ b/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2ClientSession.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/AbstractTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/AbstractTest.java index 9d55e94971f..f056d1835a1 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/AbstractTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/AbstractTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/AsyncIOTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/AsyncIOTest.java index 46a15a43b12..75a329ed132 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/AsyncIOTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/AsyncIOTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/AsyncServletTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/AsyncServletTest.java index 2ea9eb80f9d..67e67cbedbf 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/AsyncServletTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/AsyncServletTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/BufferingFlowControlStrategyTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/BufferingFlowControlStrategyTest.java index 1dc3391bad9..45fd917f240 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/BufferingFlowControlStrategyTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/BufferingFlowControlStrategyTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/Client.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/Client.java index 657e19d1558..956a7b39c8f 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/Client.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/Client.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/ConnectTimeoutTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/ConnectTimeoutTest.java index c6bd653a9eb..4e84108c705 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/ConnectTimeoutTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/ConnectTimeoutTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/EmptyHttpServlet.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/EmptyHttpServlet.java index efff08e2ddc..9f52bff7abf 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/EmptyHttpServlet.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/EmptyHttpServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/FlowControlStalledTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/FlowControlStalledTest.java index 2a71d1ecc9b..095fe315c17 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/FlowControlStalledTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/FlowControlStalledTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/FlowControlStrategyTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/FlowControlStrategyTest.java index 08b60cd0388..1d188e6d459 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/FlowControlStrategyTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/FlowControlStrategyTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/FlowControlWindowsTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/FlowControlWindowsTest.java index ecf9e8d1331..f96f714b07d 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/FlowControlWindowsTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/FlowControlWindowsTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/HTTP2Test.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/HTTP2Test.java index 33ef5e818a0..367332b1b0d 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/HTTP2Test.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/HTTP2Test.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/IdleTimeoutTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/IdleTimeoutTest.java index 297b93fd91f..a645ee64479 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/IdleTimeoutTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/IdleTimeoutTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/InterleavingTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/InterleavingTest.java index a194c01b27f..f6dcc5f0bd6 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/InterleavingTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/InterleavingTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/InvalidServerTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/InvalidServerTest.java index 750f0aca457..82c2eaac274 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/InvalidServerTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/InvalidServerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/MaxPushedStreamsTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/MaxPushedStreamsTest.java index c2eb22730fd..3bb52113d99 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/MaxPushedStreamsTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/MaxPushedStreamsTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/PingTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/PingTest.java index 7c8c8bb0569..0480950b9fd 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/PingTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/PingTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/PrefaceTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/PrefaceTest.java index 835db222aac..44b61f22123 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/PrefaceTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/PrefaceTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/PriorityTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/PriorityTest.java index 0832264bd07..14fb95436cf 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/PriorityTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/PriorityTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/ProxyProtocolTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/ProxyProtocolTest.java index dffd55f185f..684619f2e3a 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/ProxyProtocolTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/ProxyProtocolTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/ProxyTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/ProxyTest.java index c5eec2e1155..3afb7645fed 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/ProxyTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/ProxyTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/PushCacheFilterTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/PushCacheFilterTest.java index a8bb32169eb..a8d66323f72 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/PushCacheFilterTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/PushCacheFilterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/RawHTTP2ProxyTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/RawHTTP2ProxyTest.java index 5b9f3ad3f3c..6d3a6e1d37e 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/RawHTTP2ProxyTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/RawHTTP2ProxyTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/SessionFailureTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/SessionFailureTest.java index f4787700a21..8dfbe455862 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/SessionFailureTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/SessionFailureTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/SimpleFlowControlStrategyTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/SimpleFlowControlStrategyTest.java index 4e4f84b315e..ba85d9148be 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/SimpleFlowControlStrategyTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/SimpleFlowControlStrategyTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/SmallThreadPoolLoadTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/SmallThreadPoolLoadTest.java index e67928f5e4d..622e14523d3 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/SmallThreadPoolLoadTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/SmallThreadPoolLoadTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/StreamCloseTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/StreamCloseTest.java index 4a20cb85540..6d7306736e6 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/StreamCloseTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/StreamCloseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/StreamCountTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/StreamCountTest.java index 9a5d22f94c0..fa007d27a62 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/StreamCountTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/StreamCountTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/StreamResetTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/StreamResetTest.java index bae4c00c3ad..ccd3e31f968 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/StreamResetTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/StreamResetTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/TrailersTest.java b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/TrailersTest.java index b2007ec6efe..5b81e21bf20 100644 --- a/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/TrailersTest.java +++ b/jetty-http2/http2-client/src/test/java/org/eclipse/jetty/http2/client/TrailersTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/AbstractFlowControlStrategy.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/AbstractFlowControlStrategy.java index fe8deaaa6a0..80c66c2af0b 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/AbstractFlowControlStrategy.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/AbstractFlowControlStrategy.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/BufferingFlowControlStrategy.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/BufferingFlowControlStrategy.java index cfff9b01b84..993f314b423 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/BufferingFlowControlStrategy.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/BufferingFlowControlStrategy.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/CloseState.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/CloseState.java index 5ee85cbec56..6b90b89165f 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/CloseState.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/CloseState.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/ErrorCode.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/ErrorCode.java index aae6c082ccd..dfe91e6c7c9 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/ErrorCode.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/ErrorCode.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/Flags.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/Flags.java index f4ee05a3c1b..c2d9488a799 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/Flags.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/Flags.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/FlowControlStrategy.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/FlowControlStrategy.java index 7b536d729f0..4faefa85a3c 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/FlowControlStrategy.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/FlowControlStrategy.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Cipher.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Cipher.java index 9f3145201a5..f3247f73064 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Cipher.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Cipher.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Connection.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Connection.java index d1ee4dd829d..a414dff9d9b 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Connection.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Connection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Flusher.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Flusher.java index 219c36e8d48..d12e8a8c7e2 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Flusher.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Flusher.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java index 098f11d8334..eb20e4910d7 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Session.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java index 715581e53ce..df6932f4df0 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/HTTP2Stream.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/ISession.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/ISession.java index 3d74301e125..3d788b38db0 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/ISession.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/ISession.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/IStream.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/IStream.java index 95dc4f4fb87..e671d27b86f 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/IStream.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/IStream.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/SimpleFlowControlStrategy.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/SimpleFlowControlStrategy.java index 9ad7a15a7b8..e8ba053ef63 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/SimpleFlowControlStrategy.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/SimpleFlowControlStrategy.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/Session.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/Session.java index e1c99ac2ae5..7eee172b9c1 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/Session.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/Session.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/Stream.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/Stream.java index 6ddbf7b0350..2133bcb9bf1 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/Stream.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/Stream.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/server/ServerSessionListener.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/server/ServerSessionListener.java index 07ca8f09e89..e5c9c3cd180 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/server/ServerSessionListener.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/api/server/ServerSessionListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/DataFrame.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/DataFrame.java index a2e929efaf8..5f0c95b62b5 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/DataFrame.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/DataFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/DisconnectFrame.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/DisconnectFrame.java index 9e98ba247a6..b2a590f9d5b 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/DisconnectFrame.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/DisconnectFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/FailureFrame.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/FailureFrame.java index ea16526d15d..17b913c05f4 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/FailureFrame.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/FailureFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/Frame.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/Frame.java index 6c9cc486063..bca3f38a9bd 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/Frame.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/Frame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/FrameType.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/FrameType.java index 3353c85a5b2..3ab19fec249 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/FrameType.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/FrameType.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/GoAwayFrame.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/GoAwayFrame.java index 57a2dd5c5d0..28154dcec2b 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/GoAwayFrame.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/GoAwayFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/HeadersFrame.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/HeadersFrame.java index 478dae889e9..ff676a1930d 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/HeadersFrame.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/HeadersFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/PingFrame.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/PingFrame.java index 34f26cb2cae..450b0aa5434 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/PingFrame.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/PingFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/PrefaceFrame.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/PrefaceFrame.java index 2879a717b0f..07018972de7 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/PrefaceFrame.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/PrefaceFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/PriorityFrame.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/PriorityFrame.java index 08663a5bc03..62f65e7408a 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/PriorityFrame.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/PriorityFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/PushPromiseFrame.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/PushPromiseFrame.java index 3ac664a4478..b6a0d9faf4a 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/PushPromiseFrame.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/PushPromiseFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/ResetFrame.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/ResetFrame.java index b05a6812ca6..672c030883b 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/ResetFrame.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/ResetFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/SettingsFrame.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/SettingsFrame.java index 76eed25b4bf..14b2caf5407 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/SettingsFrame.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/SettingsFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/WindowUpdateFrame.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/WindowUpdateFrame.java index fd657bf2d1d..0ad323d3afe 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/WindowUpdateFrame.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/frames/WindowUpdateFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/DataGenerator.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/DataGenerator.java index 7ae9b92199d..284f41fb517 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/DataGenerator.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/DataGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/DisconnectGenerator.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/DisconnectGenerator.java index 6b3395106b1..7085f71d786 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/DisconnectGenerator.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/DisconnectGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/FrameGenerator.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/FrameGenerator.java index 9f32f39afa3..0194beccc27 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/FrameGenerator.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/FrameGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/Generator.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/Generator.java index e804dee3507..b7288d3897a 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/Generator.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/Generator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/GoAwayGenerator.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/GoAwayGenerator.java index 1b6e1735358..1e04094fc0b 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/GoAwayGenerator.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/GoAwayGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/HeaderGenerator.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/HeaderGenerator.java index 434910228ec..33283a72389 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/HeaderGenerator.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/HeaderGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/HeadersGenerator.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/HeadersGenerator.java index 6376bbfbd1d..4d50b09cacb 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/HeadersGenerator.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/HeadersGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/PingGenerator.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/PingGenerator.java index 0c15664aa22..99ac42b47a6 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/PingGenerator.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/PingGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/PrefaceGenerator.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/PrefaceGenerator.java index 1b8e6710654..76cf4694bbc 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/PrefaceGenerator.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/PrefaceGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/PriorityGenerator.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/PriorityGenerator.java index 98630cec647..9b72800d562 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/PriorityGenerator.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/PriorityGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/PushPromiseGenerator.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/PushPromiseGenerator.java index 7c982119be8..d4fe2640ef9 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/PushPromiseGenerator.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/PushPromiseGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/ResetGenerator.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/ResetGenerator.java index 0f8ee2a5211..2a0533a8f08 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/ResetGenerator.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/ResetGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/SettingsGenerator.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/SettingsGenerator.java index 5024fff4ce8..dcb9831ff14 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/SettingsGenerator.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/SettingsGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/WindowUpdateGenerator.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/WindowUpdateGenerator.java index ca94b09364d..cd7a265caf8 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/WindowUpdateGenerator.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/generator/WindowUpdateGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/BodyParser.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/BodyParser.java index 369f312618e..82d18f96a84 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/BodyParser.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/BodyParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/ContinuationBodyParser.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/ContinuationBodyParser.java index db52392be3b..65e47d1c827 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/ContinuationBodyParser.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/ContinuationBodyParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/DataBodyParser.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/DataBodyParser.java index abb7b58bc22..ac9e7bab991 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/DataBodyParser.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/DataBodyParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/GoAwayBodyParser.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/GoAwayBodyParser.java index 1e8313a75c2..b84e229fc11 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/GoAwayBodyParser.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/GoAwayBodyParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/HeaderBlockFragments.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/HeaderBlockFragments.java index 86a17256b21..71ca1b3814d 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/HeaderBlockFragments.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/HeaderBlockFragments.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/HeaderBlockParser.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/HeaderBlockParser.java index 7dc2e2c357c..cfea5260eef 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/HeaderBlockParser.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/HeaderBlockParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/HeaderParser.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/HeaderParser.java index df717084674..0e4d2dc5e9e 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/HeaderParser.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/HeaderParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/HeadersBodyParser.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/HeadersBodyParser.java index 2a1df70a4cd..febdefb6c25 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/HeadersBodyParser.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/HeadersBodyParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/Parser.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/Parser.java index e1515134734..6ac14471695 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/Parser.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/Parser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/PingBodyParser.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/PingBodyParser.java index 3cc280ca56a..8cee350e91e 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/PingBodyParser.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/PingBodyParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/PrefaceParser.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/PrefaceParser.java index c007bd360d7..3a6058878a4 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/PrefaceParser.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/PrefaceParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/PriorityBodyParser.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/PriorityBodyParser.java index 6c1f94d956c..a9d11398987 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/PriorityBodyParser.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/PriorityBodyParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/PushPromiseBodyParser.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/PushPromiseBodyParser.java index c46da3dcb39..9e4341acb00 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/PushPromiseBodyParser.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/PushPromiseBodyParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/ResetBodyParser.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/ResetBodyParser.java index 0108d485713..45d99104d18 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/ResetBodyParser.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/ResetBodyParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/ServerParser.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/ServerParser.java index 2f688b1161c..1b17ddfa73c 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/ServerParser.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/ServerParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/SettingsBodyParser.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/SettingsBodyParser.java index 6c9ede766f1..fbaa7b4cc1c 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/SettingsBodyParser.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/SettingsBodyParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/UnknownBodyParser.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/UnknownBodyParser.java index 97a418c2ec4..dbb29bfede2 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/UnknownBodyParser.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/UnknownBodyParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/WindowUpdateBodyParser.java b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/WindowUpdateBodyParser.java index 145353730c0..78505540939 100644 --- a/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/WindowUpdateBodyParser.java +++ b/jetty-http2/http2-common/src/main/java/org/eclipse/jetty/http2/parser/WindowUpdateBodyParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/ContinuationParseTest.java b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/ContinuationParseTest.java index e1f6aba087b..0f0bfbe9b2d 100644 --- a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/ContinuationParseTest.java +++ b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/ContinuationParseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/DataGenerateParseTest.java b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/DataGenerateParseTest.java index 097de2d32d6..e1e2a51dd73 100644 --- a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/DataGenerateParseTest.java +++ b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/DataGenerateParseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/GoAwayGenerateParseTest.java b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/GoAwayGenerateParseTest.java index 36bae05839c..8935cac7500 100644 --- a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/GoAwayGenerateParseTest.java +++ b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/GoAwayGenerateParseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/HeadersGenerateParseTest.java b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/HeadersGenerateParseTest.java index b5a0ba1787f..eaee34f3217 100644 --- a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/HeadersGenerateParseTest.java +++ b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/HeadersGenerateParseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/MaxFrameSizeParseTest.java b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/MaxFrameSizeParseTest.java index 2004b33d82a..318b335bcc9 100644 --- a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/MaxFrameSizeParseTest.java +++ b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/MaxFrameSizeParseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/PingGenerateParseTest.java b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/PingGenerateParseTest.java index 45f2a69fa24..7dcc138c957 100644 --- a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/PingGenerateParseTest.java +++ b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/PingGenerateParseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/PriorityGenerateParseTest.java b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/PriorityGenerateParseTest.java index 9aa3f5d8db6..f4c0bbbd7b8 100644 --- a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/PriorityGenerateParseTest.java +++ b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/PriorityGenerateParseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/PushPromiseGenerateParseTest.java b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/PushPromiseGenerateParseTest.java index 9448d92bb17..55206b3d6a0 100644 --- a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/PushPromiseGenerateParseTest.java +++ b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/PushPromiseGenerateParseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/ResetGenerateParseTest.java b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/ResetGenerateParseTest.java index 9d412663755..b0073907b1d 100644 --- a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/ResetGenerateParseTest.java +++ b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/ResetGenerateParseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/SettingsGenerateParseTest.java b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/SettingsGenerateParseTest.java index 0cd08e7a614..588b3ce0530 100644 --- a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/SettingsGenerateParseTest.java +++ b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/SettingsGenerateParseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/UnknownParseTest.java b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/UnknownParseTest.java index a9a6ec29897..06f132f8052 100644 --- a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/UnknownParseTest.java +++ b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/UnknownParseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/WindowUpdateGenerateParseTest.java b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/WindowUpdateGenerateParseTest.java index 51ad3cb2abf..9e8cf261e7e 100644 --- a/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/WindowUpdateGenerateParseTest.java +++ b/jetty-http2/http2-common/src/test/java/org/eclipse/jetty/http2/frames/WindowUpdateGenerateParseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/AuthorityHttpField.java b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/AuthorityHttpField.java index 57fc182e4a0..175b7e00856 100644 --- a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/AuthorityHttpField.java +++ b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/AuthorityHttpField.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackContext.java b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackContext.java index 2d7b6757d3d..1047ec85b91 100644 --- a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackContext.java +++ b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackContext.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackDecoder.java b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackDecoder.java index df7b2a6e971..dc0af4d8a5b 100644 --- a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackDecoder.java +++ b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackEncoder.java b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackEncoder.java index 9f9ee924f97..69739ff989a 100644 --- a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackEncoder.java +++ b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackException.java b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackException.java index 78516c73bd2..d1fc70fce3a 100644 --- a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackException.java +++ b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackFieldPreEncoder.java b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackFieldPreEncoder.java index 140483e92d8..a369897d906 100644 --- a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackFieldPreEncoder.java +++ b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackFieldPreEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/Huffman.java b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/Huffman.java index a0ed7b538e1..c45f40ec5e6 100644 --- a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/Huffman.java +++ b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/Huffman.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/MetaDataBuilder.java b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/MetaDataBuilder.java index 636d464686e..ff836e7bdab 100644 --- a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/MetaDataBuilder.java +++ b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/MetaDataBuilder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/NBitInteger.java b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/NBitInteger.java index 489b292b261..b21823f4cda 100644 --- a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/NBitInteger.java +++ b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/NBitInteger.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/StaticTableHttpField.java b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/StaticTableHttpField.java index de093c99d31..6f9e6d9c32a 100644 --- a/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/StaticTableHttpField.java +++ b/jetty-http2/http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/StaticTableHttpField.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -58,4 +58,4 @@ public class StaticTableHttpField extends HttpField { return super.toString()+"(evaluated)"; } -} \ No newline at end of file +} diff --git a/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackContextTest.java b/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackContextTest.java index 28db8f7a738..4f868208e12 100644 --- a/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackContextTest.java +++ b/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackContextTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackDecoderTest.java b/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackDecoderTest.java index 5c0bd8b9e2d..b16f1387e59 100644 --- a/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackDecoderTest.java +++ b/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackDecoderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackEncoderTest.java b/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackEncoderTest.java index 43571dcc8b9..26e5a464a64 100644 --- a/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackEncoderTest.java +++ b/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackEncoderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackPerfTest.java b/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackPerfTest.java index 719a22c06ae..6b27809a2bd 100644 --- a/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackPerfTest.java +++ b/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackPerfTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackTest.java b/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackTest.java index 5962fdfb65e..141f871dfc4 100644 --- a/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackTest.java +++ b/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HuffmanTest.java b/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HuffmanTest.java index c909d383d54..0d6acc0b4c0 100644 --- a/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HuffmanTest.java +++ b/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HuffmanTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/NBitIntegerTest.java b/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/NBitIntegerTest.java index b002bf29116..1f9c3e63082 100644 --- a/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/NBitIntegerTest.java +++ b/jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/NBitIntegerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpChannelOverHTTP2.java b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpChannelOverHTTP2.java index 27c6022b642..690b25474c5 100644 --- a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpChannelOverHTTP2.java +++ b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpChannelOverHTTP2.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpClientTransportOverHTTP2.java b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpClientTransportOverHTTP2.java index 59996074445..7584d1966e1 100644 --- a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpClientTransportOverHTTP2.java +++ b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpClientTransportOverHTTP2.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpConnectionOverHTTP2.java b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpConnectionOverHTTP2.java index 7863d3381ca..31e415ebce7 100644 --- a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpConnectionOverHTTP2.java +++ b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpConnectionOverHTTP2.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpDestinationOverHTTP2.java b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpDestinationOverHTTP2.java index a63a028018c..5a030431de9 100644 --- a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpDestinationOverHTTP2.java +++ b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpDestinationOverHTTP2.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpReceiverOverHTTP2.java b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpReceiverOverHTTP2.java index 5f1a6751239..e4cde5c10c5 100644 --- a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpReceiverOverHTTP2.java +++ b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpReceiverOverHTTP2.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpSenderOverHTTP2.java b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpSenderOverHTTP2.java index 1635d27f912..b37d77a8b94 100644 --- a/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpSenderOverHTTP2.java +++ b/jetty-http2/http2-http-client-transport/src/main/java/org/eclipse/jetty/http2/client/http/HttpSenderOverHTTP2.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/AbstractTest.java b/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/AbstractTest.java index 3216456974e..b6cd168abe3 100644 --- a/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/AbstractTest.java +++ b/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/AbstractTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/DirectHTTP2OverTLSTest.java b/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/DirectHTTP2OverTLSTest.java index 4b110edd986..fe7e3ed2307 100644 --- a/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/DirectHTTP2OverTLSTest.java +++ b/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/DirectHTTP2OverTLSTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/EmptyServerHandler.java b/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/EmptyServerHandler.java index cd146e572d6..84d46744d0b 100644 --- a/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/EmptyServerHandler.java +++ b/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/EmptyServerHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/HttpClientTransportOverHTTP2Test.java b/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/HttpClientTransportOverHTTP2Test.java index c159e34c200..00b92695f73 100644 --- a/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/HttpClientTransportOverHTTP2Test.java +++ b/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/HttpClientTransportOverHTTP2Test.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/MaxConcurrentStreamsTest.java b/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/MaxConcurrentStreamsTest.java index 9e981ee1e80..cee3802220d 100644 --- a/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/MaxConcurrentStreamsTest.java +++ b/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/MaxConcurrentStreamsTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/PushedResourcesTest.java b/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/PushedResourcesTest.java index 228438357ed..3a2936ac00a 100644 --- a/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/PushedResourcesTest.java +++ b/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/PushedResourcesTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/AbstractHTTP2ServerConnectionFactory.java b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/AbstractHTTP2ServerConnectionFactory.java index da37a88d485..6fb6467ad77 100644 --- a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/AbstractHTTP2ServerConnectionFactory.java +++ b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/AbstractHTTP2ServerConnectionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2CServerConnectionFactory.java b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2CServerConnectionFactory.java index e495a11457d..ebc61045c9c 100644 --- a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2CServerConnectionFactory.java +++ b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2CServerConnectionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2ServerConnection.java b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2ServerConnection.java index 6eea1873892..f6f32350e9f 100644 --- a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2ServerConnection.java +++ b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2ServerConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2ServerConnectionFactory.java b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2ServerConnectionFactory.java index 3feb1f12fad..9ae23123000 100644 --- a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2ServerConnectionFactory.java +++ b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2ServerConnectionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2ServerSession.java b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2ServerSession.java index 37d709c1385..9e657a9b464 100644 --- a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2ServerSession.java +++ b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HTTP2ServerSession.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HttpChannelOverHTTP2.java b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HttpChannelOverHTTP2.java index 3e76a2c703f..03b082e2e80 100644 --- a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HttpChannelOverHTTP2.java +++ b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HttpChannelOverHTTP2.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HttpTransportOverHTTP2.java b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HttpTransportOverHTTP2.java index 5087f04435e..b7e0fcdad8e 100644 --- a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HttpTransportOverHTTP2.java +++ b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/HttpTransportOverHTTP2.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/RawHTTP2ServerConnectionFactory.java b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/RawHTTP2ServerConnectionFactory.java index 7a1c65293b3..c1d1a92dba9 100644 --- a/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/RawHTTP2ServerConnectionFactory.java +++ b/jetty-http2/http2-server/src/main/java/org/eclipse/jetty/http2/server/RawHTTP2ServerConnectionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/AbstractServerTest.java b/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/AbstractServerTest.java index 26423c54a7f..7f0a454bdcb 100644 --- a/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/AbstractServerTest.java +++ b/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/AbstractServerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/CloseTest.java b/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/CloseTest.java index 69caa8949a8..d68e203541e 100644 --- a/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/CloseTest.java +++ b/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/CloseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/H2SpecServer.java b/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/H2SpecServer.java index de99425b90b..97d0a86fa2d 100644 --- a/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/H2SpecServer.java +++ b/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/H2SpecServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/HTTP2CServer.java b/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/HTTP2CServer.java index c1a183c7126..fbb8206830b 100644 --- a/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/HTTP2CServer.java +++ b/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/HTTP2CServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/HTTP2CServerTest.java b/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/HTTP2CServerTest.java index 649ea7048cb..da7a7fe7a8a 100644 --- a/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/HTTP2CServerTest.java +++ b/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/HTTP2CServerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/HTTP2ServerTest.java b/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/HTTP2ServerTest.java index a8334ca42fe..c7722493042 100644 --- a/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/HTTP2ServerTest.java +++ b/jetty-http2/http2-server/src/test/java/org/eclipse/jetty/http2/server/HTTP2ServerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionDataStoreFactory.java b/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionDataStoreFactory.java index 969e4ffd855..291b80a6dc9 100644 --- a/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionDataStoreFactory.java +++ b/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionDataStoreFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionLegacyConverter.java b/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionLegacyConverter.java index 2571e52bcc0..919ad74c49c 100644 --- a/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionLegacyConverter.java +++ b/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/InfinispanSessionLegacyConverter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/SessionDataMarshaller.java b/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/SessionDataMarshaller.java index 0d380d4cb22..128182c7da9 100644 --- a/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/SessionDataMarshaller.java +++ b/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/SessionDataMarshaller.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/WebAppMarshaller.java b/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/WebAppMarshaller.java index 1d3c52e5eef..e06b0c5db87 100644 --- a/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/WebAppMarshaller.java +++ b/jetty-infinispan/src/main/java/org/eclipse/jetty/session/infinispan/WebAppMarshaller.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractConnection.java b/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractConnection.java index 7c6e1b99680..d0e5abd6153 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractConnection.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractEndPoint.java b/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractEndPoint.java index 105bbd74584..e5403752a7e 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractEndPoint.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractEndPoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java index 2d22aa0b3dd..f2fc9cf6b7e 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ByteArrayEndPoint.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ByteArrayEndPoint.java index 0b25f5600e6..88921e2a39d 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ByteArrayEndPoint.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ByteArrayEndPoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java index d8f834498d1..541953edb31 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ChannelEndPoint.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ChannelEndPoint.java index 84e80276e28..84a08b3f6bb 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ChannelEndPoint.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ChannelEndPoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ClientConnectionFactory.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ClientConnectionFactory.java index e6aa50ce1b0..9902ce0d4e0 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ClientConnectionFactory.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ClientConnectionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/Connection.java b/jetty-io/src/main/java/org/eclipse/jetty/io/Connection.java index 0414ad906bd..76828bc53e5 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/Connection.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/Connection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ConnectionStatistics.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ConnectionStatistics.java index f13877f430e..62daa30a0c8 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ConnectionStatistics.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ConnectionStatistics.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/CyclicTimeout.java b/jetty-io/src/main/java/org/eclipse/jetty/io/CyclicTimeout.java index 7eca7e18722..4b26c3d184c 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/CyclicTimeout.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/CyclicTimeout.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/EndPoint.java b/jetty-io/src/main/java/org/eclipse/jetty/io/EndPoint.java index c1a2613547a..61e16c95c4d 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/EndPoint.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/EndPoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/EofException.java b/jetty-io/src/main/java/org/eclipse/jetty/io/EofException.java index 7c4e788abc5..eb90f970b47 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/EofException.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/EofException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/FillInterest.java b/jetty-io/src/main/java/org/eclipse/jetty/io/FillInterest.java index 8cafdf56afd..5daad36db21 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/FillInterest.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/FillInterest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/IdleTimeout.java b/jetty-io/src/main/java/org/eclipse/jetty/io/IdleTimeout.java index caa29b8f59f..df6230bca2c 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/IdleTimeout.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/IdleTimeout.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/LeakTrackingByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/LeakTrackingByteBufferPool.java index 1d8f150d0e2..f286d5cc97e 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/LeakTrackingByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/LeakTrackingByteBufferPool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java index b379c60a25c..93ba2f3fbe6 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java index 485f0a9701d..a4b40322715 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/NegotiatingClientConnection.java b/jetty-io/src/main/java/org/eclipse/jetty/io/NegotiatingClientConnection.java index 74092300669..932644d6e62 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/NegotiatingClientConnection.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/NegotiatingClientConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/NegotiatingClientConnectionFactory.java b/jetty-io/src/main/java/org/eclipse/jetty/io/NegotiatingClientConnectionFactory.java index 9b4aa4b5f86..8bf4a52e262 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/NegotiatingClientConnectionFactory.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/NegotiatingClientConnectionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/NetworkTrafficListener.java b/jetty-io/src/main/java/org/eclipse/jetty/io/NetworkTrafficListener.java index be902761551..1c0b0f7c2e9 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/NetworkTrafficListener.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/NetworkTrafficListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/NetworkTrafficSelectChannelEndPoint.java b/jetty-io/src/main/java/org/eclipse/jetty/io/NetworkTrafficSelectChannelEndPoint.java index f8831bca8e7..eef6ef0a4d7 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/NetworkTrafficSelectChannelEndPoint.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/NetworkTrafficSelectChannelEndPoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/QuietException.java b/jetty-io/src/main/java/org/eclipse/jetty/io/QuietException.java index 9723b6bf40a..197c64e588f 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/QuietException.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/QuietException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/RetainableByteBuffer.java b/jetty-io/src/main/java/org/eclipse/jetty/io/RetainableByteBuffer.java index eebf5fb4d5f..c605aee6d75 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/RetainableByteBuffer.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/RetainableByteBuffer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/RuntimeIOException.java b/jetty-io/src/main/java/org/eclipse/jetty/io/RuntimeIOException.java index 894017f5a15..dfda06b8cfa 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/RuntimeIOException.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/RuntimeIOException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/SelectChannelEndPoint.java b/jetty-io/src/main/java/org/eclipse/jetty/io/SelectChannelEndPoint.java index d18fc3ec2e3..527cad59c16 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/SelectChannelEndPoint.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/SelectChannelEndPoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/SelectorManager.java b/jetty-io/src/main/java/org/eclipse/jetty/io/SelectorManager.java index 33a830e8450..29f0eefb6a6 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/SelectorManager.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/SelectorManager.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/SocketChannelEndPoint.java b/jetty-io/src/main/java/org/eclipse/jetty/io/SocketChannelEndPoint.java index cc8d9fa7351..71a77f3885a 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/SocketChannelEndPoint.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/SocketChannelEndPoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/WriteFlusher.java b/jetty-io/src/main/java/org/eclipse/jetty/io/WriteFlusher.java index d567f45577d..e77781a0a2c 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/WriteFlusher.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/WriteFlusher.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/WriterOutputStream.java b/jetty-io/src/main/java/org/eclipse/jetty/io/WriterOutputStream.java index 659123aeb3c..a8272ecf157 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/WriterOutputStream.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/WriterOutputStream.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/package-info.java b/jetty-io/src/main/java/org/eclipse/jetty/io/package-info.java index 2f30f7b1124..f32f774ab72 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/package-info.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/ALPNProcessor.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/ALPNProcessor.java index cbac606261d..f25a50e05bd 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/ALPNProcessor.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/ALPNProcessor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/SslClientConnectionFactory.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/SslClientConnectionFactory.java index 5ef729c15c8..a86fcb9f3c7 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/SslClientConnectionFactory.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/SslClientConnectionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/SslConnection.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/SslConnection.java index 47f81f633e4..2d76b105675 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/SslConnection.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/SslConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/SslHandshakeListener.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/SslHandshakeListener.java index c2961d5ec77..5ccff435164 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/SslHandshakeListener.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/SslHandshakeListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/package-info.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/package-info.java index dc21922272b..42403dc5dfe 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/package-info.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/ArrayByteBufferPoolTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/ArrayByteBufferPoolTest.java index a8ab2a5df0b..97f988b1018 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/ArrayByteBufferPoolTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/ArrayByteBufferPoolTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/ByteArrayEndPointTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/ByteArrayEndPointTest.java index 68e681a00f6..bcbec949ce5 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/ByteArrayEndPointTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/ByteArrayEndPointTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/CyclicTimeoutTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/CyclicTimeoutTest.java index 4d316d05030..293f8954d3e 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/CyclicTimeoutTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/CyclicTimeoutTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/IOTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/IOTest.java index f3e41098f60..697a60184b9 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/IOTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/IOTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/IdleTimeoutTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/IdleTimeoutTest.java index a27692ae200..b4f34c079c4 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/IdleTimeoutTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/IdleTimeoutTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/MappedByteBufferPoolTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/MappedByteBufferPoolTest.java index dc6070c3b0a..ee9589e0d96 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/MappedByteBufferPoolTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/MappedByteBufferPoolTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/NIOTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/NIOTest.java index 8ecef4b3700..46a6ef6b79f 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/NIOTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/NIOTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/SelectorManagerTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/SelectorManagerTest.java index 034e6eb8097..58cc0bd1fb2 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/SelectorManagerTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/SelectorManagerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/SocketChannelEndPointInterestsTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/SocketChannelEndPointInterestsTest.java index 87f5b03fbf1..a775cba72ef 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/SocketChannelEndPointInterestsTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/SocketChannelEndPointInterestsTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/SocketChannelEndPointOpenCloseTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/SocketChannelEndPointOpenCloseTest.java index 0c5f1f5f21f..332e48f869c 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/SocketChannelEndPointOpenCloseTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/SocketChannelEndPointOpenCloseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/SocketChannelEndPointTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/SocketChannelEndPointTest.java index d0e11801a30..565ef8bf5d0 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/SocketChannelEndPointTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/SocketChannelEndPointTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/SslConnectionTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/SslConnectionTest.java index 03bf26c0ad8..113e74527aa 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/SslConnectionTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/SslConnectionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/SslEngineBehaviorTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/SslEngineBehaviorTest.java index ea6af2c6028..ac6a8ac1d3a 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/SslEngineBehaviorTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/SslEngineBehaviorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/WriteFlusherTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/WriteFlusherTest.java index 6b455c40ead..185bc0a783e 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/WriteFlusherTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/WriteFlusherTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASGroup.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASGroup.java index e83dac76ea5..fe87b01d4bf 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASGroup.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASGroup.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASLoginService.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASLoginService.java index b983756fca1..90cf053cfc7 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASLoginService.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASLoginService.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASPrincipal.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASPrincipal.java index 2cbe8b0165e..027c239b498 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASPrincipal.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASPrincipal.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASRole.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASRole.java index 312d4bff6ab..f9c3ddcfa09 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASRole.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASRole.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASUserPrincipal.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASUserPrincipal.java index 63616bc97db..dba128eea8f 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASUserPrincipal.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASUserPrincipal.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/RoleCheckPolicy.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/RoleCheckPolicy.java index 7be76593f59..d83f647f9d6 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/RoleCheckPolicy.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/RoleCheckPolicy.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/StrictRoleCheckPolicy.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/StrictRoleCheckPolicy.java index 4684f282bc0..712a4bc4911 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/StrictRoleCheckPolicy.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/StrictRoleCheckPolicy.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/AbstractCallbackHandler.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/AbstractCallbackHandler.java index 0880b52a0a6..f27a6789f63 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/AbstractCallbackHandler.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/AbstractCallbackHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/DefaultCallbackHandler.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/DefaultCallbackHandler.java index 62f9734346c..efec20209ec 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/DefaultCallbackHandler.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/DefaultCallbackHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/ObjectCallback.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/ObjectCallback.java index d79edce258a..b0d1d1083a8 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/ObjectCallback.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/ObjectCallback.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/RequestParameterCallback.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/RequestParameterCallback.java index 37f50e3d097..14a2f3b6a85 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/RequestParameterCallback.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/RequestParameterCallback.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/ServletRequestCallback.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/ServletRequestCallback.java index 991c774e163..70f3e6c51c1 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/ServletRequestCallback.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/ServletRequestCallback.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/package-info.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/package-info.java index 96564fa58aa..824fdbafb48 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/package-info.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/callback/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/package-info.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/package-info.java index 093e3ee87b4..79af1aad7e6 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/package-info.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/AbstractDatabaseLoginModule.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/AbstractDatabaseLoginModule.java index 1c11e4beaa3..bd61640eb0f 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/AbstractDatabaseLoginModule.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/AbstractDatabaseLoginModule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/AbstractLoginModule.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/AbstractLoginModule.java index 12ff84162d7..94f1678dfeb 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/AbstractLoginModule.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/AbstractLoginModule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/DataSourceLoginModule.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/DataSourceLoginModule.java index 850f3451a2e..7e1eef2d86b 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/DataSourceLoginModule.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/DataSourceLoginModule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/JDBCLoginModule.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/JDBCLoginModule.java index 03552ec92fd..773fe859fa5 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/JDBCLoginModule.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/JDBCLoginModule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/LdapLoginModule.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/LdapLoginModule.java index 49f1a99a895..af63c29e1c4 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/LdapLoginModule.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/LdapLoginModule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/PropertyFileLoginModule.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/PropertyFileLoginModule.java index 7d0b7cbbc9b..d865ee32ca2 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/PropertyFileLoginModule.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/PropertyFileLoginModule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/UserInfo.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/UserInfo.java index 8ee32265f18..88e8c6aa69a 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/UserInfo.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/UserInfo.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/package-info.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/package-info.java index c2fea422e55..22b8001adff 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/package-info.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/spi/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/test/java/org/eclipse/jetty/jaas/JAASLdapLoginServiceTest.java b/jetty-jaas/src/test/java/org/eclipse/jetty/jaas/JAASLdapLoginServiceTest.java index addc8252856..c78be1082b2 100644 --- a/jetty-jaas/src/test/java/org/eclipse/jetty/jaas/JAASLdapLoginServiceTest.java +++ b/jetty-jaas/src/test/java/org/eclipse/jetty/jaas/JAASLdapLoginServiceTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/test/java/org/eclipse/jetty/jaas/JAASLoginServiceTest.java b/jetty-jaas/src/test/java/org/eclipse/jetty/jaas/JAASLoginServiceTest.java index b247eeb1344..876f323742d 100644 --- a/jetty-jaas/src/test/java/org/eclipse/jetty/jaas/JAASLoginServiceTest.java +++ b/jetty-jaas/src/test/java/org/eclipse/jetty/jaas/JAASLoginServiceTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaas/src/test/java/org/eclipse/jetty/jaas/TestLoginModule.java b/jetty-jaas/src/test/java/org/eclipse/jetty/jaas/TestLoginModule.java index 593d1530084..89cbc636ef3 100644 --- a/jetty-jaas/src/test/java/org/eclipse/jetty/jaas/TestLoginModule.java +++ b/jetty-jaas/src/test/java/org/eclipse/jetty/jaas/TestLoginModule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -56,4 +56,4 @@ public class TestLoginModule extends AbstractLoginModule return result; } -} \ No newline at end of file +} diff --git a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/JaspiAuthenticator.java b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/JaspiAuthenticator.java index ec01d9ebe78..b300415c431 100644 --- a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/JaspiAuthenticator.java +++ b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/JaspiAuthenticator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/JaspiAuthenticatorFactory.java b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/JaspiAuthenticatorFactory.java index facb0d4d8a7..38458ef94b6 100644 --- a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/JaspiAuthenticatorFactory.java +++ b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/JaspiAuthenticatorFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/JaspiMessageInfo.java b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/JaspiMessageInfo.java index 8c755809cf5..120fc777233 100644 --- a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/JaspiMessageInfo.java +++ b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/JaspiMessageInfo.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/ServletCallbackHandler.java b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/ServletCallbackHandler.java index d81cdcfd74c..942332792ed 100644 --- a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/ServletCallbackHandler.java +++ b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/ServletCallbackHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/SimpleAuthConfig.java b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/SimpleAuthConfig.java index 59144cf4697..34e931cb29d 100644 --- a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/SimpleAuthConfig.java +++ b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/SimpleAuthConfig.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/callback/CredentialValidationCallback.java b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/callback/CredentialValidationCallback.java index 46ef40c413b..c70a5e11631 100644 --- a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/callback/CredentialValidationCallback.java +++ b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/callback/CredentialValidationCallback.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/callback/package-info.java b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/callback/package-info.java index 67caf38f201..750d5502692 100644 --- a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/callback/package-info.java +++ b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/callback/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/BaseAuthModule.java b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/BaseAuthModule.java index 4f6c7e0d05c..e2c1ffb1a1f 100644 --- a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/BaseAuthModule.java +++ b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/BaseAuthModule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/BasicAuthModule.java b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/BasicAuthModule.java index a973dbf3900..6c6934fa2ed 100644 --- a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/BasicAuthModule.java +++ b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/BasicAuthModule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/ClientCertAuthModule.java b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/ClientCertAuthModule.java index 097b8d4d780..754c7450142 100644 --- a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/ClientCertAuthModule.java +++ b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/ClientCertAuthModule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/DigestAuthModule.java b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/DigestAuthModule.java index b7287367e59..10c897166e6 100644 --- a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/DigestAuthModule.java +++ b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/DigestAuthModule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/FormAuthModule.java b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/FormAuthModule.java index 6e7118acfc1..7bbe80014e5 100644 --- a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/FormAuthModule.java +++ b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/FormAuthModule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/UserInfo.java b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/UserInfo.java index 9e7e8aaa6a4..1ebd0cae20d 100644 --- a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/UserInfo.java +++ b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/UserInfo.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/package-info.java b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/package-info.java index 87f4ad3cb74..eae72c4f105 100644 --- a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/package-info.java +++ b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/modules/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/package-info.java b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/package-info.java index b50f5d0410a..f907bd3fd87 100644 --- a/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/package-info.java +++ b/jetty-jaspi/src/main/java/org/eclipse/jetty/security/jaspi/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaspi/src/test/java/org/eclipse/jetty/security/jaspi/HttpHeaderAuthModule.java b/jetty-jaspi/src/test/java/org/eclipse/jetty/security/jaspi/HttpHeaderAuthModule.java index 1435f40324d..f238239bcd1 100644 --- a/jetty-jaspi/src/test/java/org/eclipse/jetty/security/jaspi/HttpHeaderAuthModule.java +++ b/jetty-jaspi/src/test/java/org/eclipse/jetty/security/jaspi/HttpHeaderAuthModule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jaspi/src/test/java/org/eclipse/jetty/security/jaspi/JaspiTest.java b/jetty-jaspi/src/test/java/org/eclipse/jetty/security/jaspi/JaspiTest.java index e874681a291..58b23e3ecc7 100644 --- a/jetty-jaspi/src/test/java/org/eclipse/jetty/security/jaspi/JaspiTest.java +++ b/jetty-jaspi/src/test/java/org/eclipse/jetty/security/jaspi/JaspiTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmh/src/main/java/org/eclipse/jetty/http/jmh/MultiPartBenchmark.java b/jetty-jmh/src/main/java/org/eclipse/jetty/http/jmh/MultiPartBenchmark.java index 63136a3b57b..2867de517d9 100644 --- a/jetty-jmh/src/main/java/org/eclipse/jetty/http/jmh/MultiPartBenchmark.java +++ b/jetty-jmh/src/main/java/org/eclipse/jetty/http/jmh/MultiPartBenchmark.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmh/src/main/java/org/eclipse/jetty/io/jmh/ByteBufferBenchmark.java b/jetty-jmh/src/main/java/org/eclipse/jetty/io/jmh/ByteBufferBenchmark.java index eb2ba3ec9b2..4c41bd74719 100644 --- a/jetty-jmh/src/main/java/org/eclipse/jetty/io/jmh/ByteBufferBenchmark.java +++ b/jetty-jmh/src/main/java/org/eclipse/jetty/io/jmh/ByteBufferBenchmark.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmh/src/main/java/org/eclipse/jetty/requestlog/jmh/RequestLogBenchmark.java b/jetty-jmh/src/main/java/org/eclipse/jetty/requestlog/jmh/RequestLogBenchmark.java index 7058b0d2045..d63876ba78d 100644 --- a/jetty-jmh/src/main/java/org/eclipse/jetty/requestlog/jmh/RequestLogBenchmark.java +++ b/jetty-jmh/src/main/java/org/eclipse/jetty/requestlog/jmh/RequestLogBenchmark.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmh/src/main/java/org/eclipse/jetty/server/jmh/DeflaterPoolBenchmark.java b/jetty-jmh/src/main/java/org/eclipse/jetty/server/jmh/DeflaterPoolBenchmark.java index bff91a9325b..784abd908c7 100644 --- a/jetty-jmh/src/main/java/org/eclipse/jetty/server/jmh/DeflaterPoolBenchmark.java +++ b/jetty-jmh/src/main/java/org/eclipse/jetty/server/jmh/DeflaterPoolBenchmark.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheBenchmark.java b/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheBenchmark.java index aa11e93a3cc..4b1560df656 100644 --- a/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheBenchmark.java +++ b/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheBenchmark.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -88,4 +88,4 @@ public class DateCacheBenchmark new Runner(opt).run(); } -} \ No newline at end of file +} diff --git a/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheNoTick.java b/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheNoTick.java index 0b224055f39..520c9e9bcb2 100644 --- a/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheNoTick.java +++ b/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheNoTick.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheNoTickBenchmark.java b/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheNoTickBenchmark.java index 6fb8781ca93..cf37a7978e4 100644 --- a/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheNoTickBenchmark.java +++ b/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheNoTickBenchmark.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -87,4 +87,4 @@ public class DateCacheNoTickBenchmark new Runner(opt).run(); } -} \ No newline at end of file +} diff --git a/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheSimpleDateFormat.java b/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheSimpleDateFormat.java index 8c9826e442a..a40250078b8 100644 --- a/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheSimpleDateFormat.java +++ b/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheSimpleDateFormat.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheSimpleDateFormatBenchmark.java b/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheSimpleDateFormatBenchmark.java index 3006bddd892..ca0868bd873 100644 --- a/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheSimpleDateFormatBenchmark.java +++ b/jetty-jmh/src/main/java/org/eclipse/jetty/util/jmh/DateCacheSimpleDateFormatBenchmark.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -87,4 +87,4 @@ public class DateCacheSimpleDateFormatBenchmark new Runner(opt).run(); } -} \ No newline at end of file +} diff --git a/jetty-jmh/src/main/java/org/eclipse/jetty/util/thread/jmh/ThreadPoolBenchmark.java b/jetty-jmh/src/main/java/org/eclipse/jetty/util/thread/jmh/ThreadPoolBenchmark.java index c5c70ace7b8..f986a6217a9 100644 --- a/jetty-jmh/src/main/java/org/eclipse/jetty/util/thread/jmh/ThreadPoolBenchmark.java +++ b/jetty-jmh/src/main/java/org/eclipse/jetty/util/thread/jmh/ThreadPoolBenchmark.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -133,4 +133,4 @@ public class ThreadPoolBenchmark new Runner(opt).run(); } -} \ No newline at end of file +} diff --git a/jetty-jmh/src/main/java/org/eclipse/jetty/util/thread/strategy/jmh/EWYKBenchmark.java b/jetty-jmh/src/main/java/org/eclipse/jetty/util/thread/strategy/jmh/EWYKBenchmark.java index 2d8211e664f..7c81298cc83 100644 --- a/jetty-jmh/src/main/java/org/eclipse/jetty/util/thread/strategy/jmh/EWYKBenchmark.java +++ b/jetty-jmh/src/main/java/org/eclipse/jetty/util/thread/strategy/jmh/EWYKBenchmark.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmh/src/main/java/org/eclipse/jetty/util/thread/strategy/jmh/TestConnection.java b/jetty-jmh/src/main/java/org/eclipse/jetty/util/thread/strategy/jmh/TestConnection.java index 3a5d1853596..f91638d9f91 100644 --- a/jetty-jmh/src/main/java/org/eclipse/jetty/util/thread/strategy/jmh/TestConnection.java +++ b/jetty-jmh/src/main/java/org/eclipse/jetty/util/thread/strategy/jmh/TestConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmh/src/main/java/org/eclipse/jetty/util/thread/strategy/jmh/TestServer.java b/jetty-jmh/src/main/java/org/eclipse/jetty/util/thread/strategy/jmh/TestServer.java index 9a4f9b29258..ab99582cad6 100644 --- a/jetty-jmh/src/main/java/org/eclipse/jetty/util/thread/strategy/jmh/TestServer.java +++ b/jetty-jmh/src/main/java/org/eclipse/jetty/util/thread/strategy/jmh/TestServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/ConnectorServer.java b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/ConnectorServer.java index 4e45f8973a5..3363c342b83 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/ConnectorServer.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/ConnectorServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java index ec1970fba71..42955478c5c 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java index c290c727770..d073153d353 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MetaData.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/ObjectMBean.java b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/ObjectMBean.java index 5782ffe660e..aa40e5cf17d 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/ObjectMBean.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/ObjectMBean.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/package-info.java b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/package-info.java index e973638b2e3..4a14bafe9b5 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/package-info.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/util/log/jmx/LogMBean.java b/jetty-jmx/src/main/java/org/eclipse/jetty/util/log/jmx/LogMBean.java index 301c8944d31..6f7b4c1f840 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/util/log/jmx/LogMBean.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/util/log/jmx/LogMBean.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/util/log/jmx/package-info.java b/jetty-jmx/src/main/java/org/eclipse/jetty/util/log/jmx/package-info.java index c7c7b1bca37..119069fab0a 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/util/log/jmx/package-info.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/util/log/jmx/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/test/java/com/acme/Base.java b/jetty-jmx/src/test/java/com/acme/Base.java index dd079580c73..049ca5fdeeb 100644 --- a/jetty-jmx/src/test/java/com/acme/Base.java +++ b/jetty-jmx/src/test/java/com/acme/Base.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/test/java/com/acme/Derived.java b/jetty-jmx/src/test/java/com/acme/Derived.java index eba0baac1f6..793ddf5441a 100644 --- a/jetty-jmx/src/test/java/com/acme/Derived.java +++ b/jetty-jmx/src/test/java/com/acme/Derived.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/test/java/com/acme/DerivedExtended.java b/jetty-jmx/src/test/java/com/acme/DerivedExtended.java index daa3f34aea5..d072d357529 100644 --- a/jetty-jmx/src/test/java/com/acme/DerivedExtended.java +++ b/jetty-jmx/src/test/java/com/acme/DerivedExtended.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/test/java/com/acme/DerivedManaged.java b/jetty-jmx/src/test/java/com/acme/DerivedManaged.java index 0ce4c30920b..b539528b0cd 100644 --- a/jetty-jmx/src/test/java/com/acme/DerivedManaged.java +++ b/jetty-jmx/src/test/java/com/acme/DerivedManaged.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/test/java/com/acme/Managed.java b/jetty-jmx/src/test/java/com/acme/Managed.java index bd7831fa8d4..c7e12a4aa95 100644 --- a/jetty-jmx/src/test/java/com/acme/Managed.java +++ b/jetty-jmx/src/test/java/com/acme/Managed.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/test/java/com/acme/Signature.java b/jetty-jmx/src/test/java/com/acme/Signature.java index 12031386d73..759df6a1811 100644 --- a/jetty-jmx/src/test/java/com/acme/Signature.java +++ b/jetty-jmx/src/test/java/com/acme/Signature.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/test/java/com/acme/SuperManaged.java b/jetty-jmx/src/test/java/com/acme/SuperManaged.java index a9646945f1f..83322b9a2ab 100644 --- a/jetty-jmx/src/test/java/com/acme/SuperManaged.java +++ b/jetty-jmx/src/test/java/com/acme/SuperManaged.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/test/java/com/acme/jmx/DerivedMBean.java b/jetty-jmx/src/test/java/com/acme/jmx/DerivedMBean.java index 6b7b14449af..834de9e506e 100644 --- a/jetty-jmx/src/test/java/com/acme/jmx/DerivedMBean.java +++ b/jetty-jmx/src/test/java/com/acme/jmx/DerivedMBean.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/test/java/com/acme/jmx/ManagedMBean.java b/jetty-jmx/src/test/java/com/acme/jmx/ManagedMBean.java index ae4fce0de43..585c73c7e10 100644 --- a/jetty-jmx/src/test/java/com/acme/jmx/ManagedMBean.java +++ b/jetty-jmx/src/test/java/com/acme/jmx/ManagedMBean.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ConnectorServerTest.java b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ConnectorServerTest.java index c007488b3de..0fd9ad74dd1 100644 --- a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ConnectorServerTest.java +++ b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ConnectorServerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/MBeanContainerLifeCycleTest.java b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/MBeanContainerLifeCycleTest.java index 889abadd909..c8fc3383798 100644 --- a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/MBeanContainerLifeCycleTest.java +++ b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/MBeanContainerLifeCycleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/MBeanContainerTest.java b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/MBeanContainerTest.java index 630c95374a8..52c4624adc6 100644 --- a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/MBeanContainerTest.java +++ b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/MBeanContainerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ObjectMBeanTest.java b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ObjectMBeanTest.java index f6db43ad89b..0e844c10399 100644 --- a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ObjectMBeanTest.java +++ b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ObjectMBeanTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ObjectMBeanUtilTest.java b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ObjectMBeanUtilTest.java index 054f11eea33..b35480324d9 100644 --- a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ObjectMBeanUtilTest.java +++ b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/ObjectMBeanUtilTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/PojoTest.java b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/PojoTest.java index 2d1aad0bae0..4356cdbc5ad 100644 --- a/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/PojoTest.java +++ b/jetty-jmx/src/test/java/org/eclipse/jetty/jmx/PojoTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jmx/src/test/java/org/eclipse/jetty/util/log/jmx/LogMBeanTest.java b/jetty-jmx/src/test/java/org/eclipse/jetty/util/log/jmx/LogMBeanTest.java index 32518893349..6945d5e68ba 100644 --- a/jetty-jmx/src/test/java/org/eclipse/jetty/util/log/jmx/LogMBeanTest.java +++ b/jetty-jmx/src/test/java/org/eclipse/jetty/util/log/jmx/LogMBeanTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/BindingEnumeration.java b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/BindingEnumeration.java index 6e1c874a453..d7ee1c6df90 100644 --- a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/BindingEnumeration.java +++ b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/BindingEnumeration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/ContextFactory.java b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/ContextFactory.java index 143efa9e5f9..ab1601b274c 100644 --- a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/ContextFactory.java +++ b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/ContextFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/DataSourceCloser.java b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/DataSourceCloser.java index 7b60a643757..da6819fde8e 100644 --- a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/DataSourceCloser.java +++ b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/DataSourceCloser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/InitialContextFactory.java b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/InitialContextFactory.java index d9b5a67ea45..ab90fe0c684 100644 --- a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/InitialContextFactory.java +++ b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/InitialContextFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/NameEnumeration.java b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/NameEnumeration.java index 7ecdc50bca6..ac2b758e7bb 100644 --- a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/NameEnumeration.java +++ b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/NameEnumeration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/NamingContext.java b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/NamingContext.java index 009e271c00a..49c85e06123 100644 --- a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/NamingContext.java +++ b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/NamingContext.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/NamingUtil.java b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/NamingUtil.java index 22e25db4457..c0053dd6ab1 100644 --- a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/NamingUtil.java +++ b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/NamingUtil.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/factories/MailSessionReference.java b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/factories/MailSessionReference.java index 3cc355a254e..cd28060123e 100644 --- a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/factories/MailSessionReference.java +++ b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/factories/MailSessionReference.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/factories/package-info.java b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/factories/package-info.java index eb095894426..4549efa2878 100644 --- a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/factories/package-info.java +++ b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/factories/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/java/javaNameParser.java b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/java/javaNameParser.java index 317ca5d086a..08d165c2d1e 100644 --- a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/java/javaNameParser.java +++ b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/java/javaNameParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/java/javaRootURLContext.java b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/java/javaRootURLContext.java index 58cb52a3957..f32344e60d5 100644 --- a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/java/javaRootURLContext.java +++ b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/java/javaRootURLContext.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/java/javaURLContextFactory.java b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/java/javaURLContextFactory.java index d17a2a12507..8fd9bf3d118 100644 --- a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/java/javaURLContextFactory.java +++ b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/java/javaURLContextFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/java/package-info.java b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/java/package-info.java index 5706fb6fda2..189f9393067 100644 --- a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/java/package-info.java +++ b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/java/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/local/localContextRoot.java b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/local/localContextRoot.java index 4881a9cbea7..1fb4183b438 100644 --- a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/local/localContextRoot.java +++ b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/local/localContextRoot.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/local/package-info.java b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/local/package-info.java index ac507d2707e..7538092e2dd 100644 --- a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/local/package-info.java +++ b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/local/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/package-info.java b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/package-info.java index 7bf3d64e1bc..3f719dc5e4f 100644 --- a/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/package-info.java +++ b/jetty-jndi/src/main/java/org/eclipse/jetty/jndi/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jndi/src/test/java/org/eclipse/jetty/jndi/factories/TestMailSessionReference.java b/jetty-jndi/src/test/java/org/eclipse/jetty/jndi/factories/TestMailSessionReference.java index 96cc462e846..057efd11868 100644 --- a/jetty-jndi/src/test/java/org/eclipse/jetty/jndi/factories/TestMailSessionReference.java +++ b/jetty-jndi/src/test/java/org/eclipse/jetty/jndi/factories/TestMailSessionReference.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jndi/src/test/java/org/eclipse/jetty/jndi/java/TestJNDI.java b/jetty-jndi/src/test/java/org/eclipse/jetty/jndi/java/TestJNDI.java index 791d1a4630e..f966b57f89a 100644 --- a/jetty-jndi/src/test/java/org/eclipse/jetty/jndi/java/TestJNDI.java +++ b/jetty-jndi/src/test/java/org/eclipse/jetty/jndi/java/TestJNDI.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jndi/src/test/java/org/eclipse/jetty/jndi/java/TestLocalJNDI.java b/jetty-jndi/src/test/java/org/eclipse/jetty/jndi/java/TestLocalJNDI.java index 238fffac914..ab1099727b7 100644 --- a/jetty-jndi/src/test/java/org/eclipse/jetty/jndi/java/TestLocalJNDI.java +++ b/jetty-jndi/src/test/java/org/eclipse/jetty/jndi/java/TestLocalJNDI.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jspc-maven-plugin/src/main/java/org/eclipse/jetty/jspc/plugin/JspcMojo.java b/jetty-jspc-maven-plugin/src/main/java/org/eclipse/jetty/jspc/plugin/JspcMojo.java index a8c7cc48ab3..373e9675c39 100644 --- a/jetty-jspc-maven-plugin/src/main/java/org/eclipse/jetty/jspc/plugin/JspcMojo.java +++ b/jetty-jspc-maven-plugin/src/main/java/org/eclipse/jetty/jspc/plugin/JspcMojo.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-jspc-maven-plugin/src/main/java/org/eclipse/jetty/jspc/plugin/package-info.java b/jetty-jspc-maven-plugin/src/main/java/org/eclipse/jetty/jspc/plugin/package-info.java index b3f891e2d67..dc7883db9dc 100644 --- a/jetty-jspc-maven-plugin/src/main/java/org/eclipse/jetty/jspc/plugin/package-info.java +++ b/jetty-jspc-maven-plugin/src/main/java/org/eclipse/jetty/jspc/plugin/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/javax-annotation-api/src/main/java/test/App.java b/jetty-maven-plugin/src/it/javax-annotation-api/src/main/java/test/App.java index d03ad70999b..78386d9142b 100644 --- a/jetty-maven-plugin/src/it/javax-annotation-api/src/main/java/test/App.java +++ b/jetty-maven-plugin/src/it/javax-annotation-api/src/main/java/test/App.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/jetty-cdi-run-forked/src/main/java/test/Greeter.java b/jetty-maven-plugin/src/it/jetty-cdi-run-forked/src/main/java/test/Greeter.java index c9e9a9ab797..43d854fc63c 100644 --- a/jetty-maven-plugin/src/it/jetty-cdi-run-forked/src/main/java/test/Greeter.java +++ b/jetty-maven-plugin/src/it/jetty-cdi-run-forked/src/main/java/test/Greeter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/jetty-maven-plugin-provided-module-dep/api/src/main/java/test/Api.java b/jetty-maven-plugin/src/it/jetty-maven-plugin-provided-module-dep/api/src/main/java/test/Api.java index fc5ad794a23..c68931dcabb 100755 --- a/jetty-maven-plugin/src/it/jetty-maven-plugin-provided-module-dep/api/src/main/java/test/Api.java +++ b/jetty-maven-plugin/src/it/jetty-maven-plugin-provided-module-dep/api/src/main/java/test/Api.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -25,4 +25,4 @@ public class Api public void noOp() { } -} \ No newline at end of file +} diff --git a/jetty-maven-plugin/src/it/jetty-maven-plugin-provided-module-dep/web/src/main/java/test/ClassLoadingTestingServletContextListener.java b/jetty-maven-plugin/src/it/jetty-maven-plugin-provided-module-dep/web/src/main/java/test/ClassLoadingTestingServletContextListener.java index 8d22ee0a6e3..0118c62bf94 100755 --- a/jetty-maven-plugin/src/it/jetty-maven-plugin-provided-module-dep/web/src/main/java/test/ClassLoadingTestingServletContextListener.java +++ b/jetty-maven-plugin/src/it/jetty-maven-plugin-provided-module-dep/web/src/main/java/test/ClassLoadingTestingServletContextListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -46,4 +46,4 @@ public class ClassLoadingTestingServletContextListener public void contextDestroyed( ServletContextEvent sce ) { } -} \ No newline at end of file +} diff --git a/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_distro_mojo_it/HelloServlet.java b/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_distro_mojo_it/HelloServlet.java index 12a508a7e96..db83c9748a6 100644 --- a/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_distro_mojo_it/HelloServlet.java +++ b/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_distro_mojo_it/HelloServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_distro_mojo_it/PingServlet.java b/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_distro_mojo_it/PingServlet.java index 434fdae2d12..b0f2d2fb885 100644 --- a/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_distro_mojo_it/PingServlet.java +++ b/jetty-maven-plugin/src/it/jetty-run-distro-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_distro_mojo_it/PingServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_forked_mojo_it/HelloServlet.java b/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_forked_mojo_it/HelloServlet.java index 9d4582a75f6..5d6de2e2083 100644 --- a/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_forked_mojo_it/HelloServlet.java +++ b/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_forked_mojo_it/HelloServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_forked_mojo_it/PingServlet.java b/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_forked_mojo_it/PingServlet.java index 51259941ca4..28d55df50db 100644 --- a/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_forked_mojo_it/PingServlet.java +++ b/jetty-maven-plugin/src/it/jetty-run-forked-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_forked_mojo_it/PingServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_mojo_it/HelloServlet.java b/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_mojo_it/HelloServlet.java index 1c093c1675c..8ef4c4841a1 100644 --- a/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_mojo_it/HelloServlet.java +++ b/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_mojo_it/HelloServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_mojo_it/PingServlet.java b/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_mojo_it/PingServlet.java index dc1d723151f..ce057142549 100644 --- a/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_mojo_it/PingServlet.java +++ b/jetty-maven-plugin/src/it/jetty-run-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_mojo_it/PingServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_war_exploded_mojo_it/HelloServlet.java b/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_war_exploded_mojo_it/HelloServlet.java index 0ab06680ecf..cc6cf89df32 100644 --- a/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_war_exploded_mojo_it/HelloServlet.java +++ b/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_war_exploded_mojo_it/HelloServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_war_exploded_mojo_it/PingServlet.java b/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_war_exploded_mojo_it/PingServlet.java index 88155a20738..d14e2838461 100644 --- a/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_war_exploded_mojo_it/PingServlet.java +++ b/jetty-maven-plugin/src/it/jetty-run-war-exploded-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_war_exploded_mojo_it/PingServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_mojo_it/HelloServlet.java b/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_mojo_it/HelloServlet.java index 1c093c1675c..8ef4c4841a1 100644 --- a/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_mojo_it/HelloServlet.java +++ b/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_mojo_it/HelloServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_mojo_it/PingServlet.java b/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_mojo_it/PingServlet.java index dc1d723151f..ce057142549 100644 --- a/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_mojo_it/PingServlet.java +++ b/jetty-maven-plugin/src/it/jetty-run-war-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_run_mojo_it/PingServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_start_mojo_it/HelloServlet.java b/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_start_mojo_it/HelloServlet.java index f2457ceea25..75912023601 100644 --- a/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_start_mojo_it/HelloServlet.java +++ b/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_start_mojo_it/HelloServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_start_mojo_it/PingServlet.java b/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_start_mojo_it/PingServlet.java index 0ee6afe6cf0..3f0adfdf342 100644 --- a/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_start_mojo_it/PingServlet.java +++ b/jetty-maven-plugin/src/it/jetty-start-mojo-it/jetty-simple-base/src/main/java/org/eclipse/jetty/its/jetty_start_mojo_it/PingServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-client/src/main/java/org/olamy/App.java b/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-client/src/main/java/org/olamy/App.java index 10c1ab186ab..1e02da18d13 100644 --- a/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-client/src/main/java/org/olamy/App.java +++ b/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-client/src/main/java/org/olamy/App.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-server/src/main/java/org/olamy/GreetingServiceImpl.java b/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-server/src/main/java/org/olamy/GreetingServiceImpl.java index 2b5b84fa242..d079bf87c71 100644 --- a/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-server/src/main/java/org/olamy/GreetingServiceImpl.java +++ b/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-server/src/main/java/org/olamy/GreetingServiceImpl.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/src/main/java/org/olamy/FieldVerifier.java b/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/src/main/java/org/olamy/FieldVerifier.java index fb6084995b8..8a7ac9139a7 100644 --- a/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/src/main/java/org/olamy/FieldVerifier.java +++ b/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/src/main/java/org/olamy/FieldVerifier.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/src/main/java/org/olamy/GreetingResponse.java b/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/src/main/java/org/olamy/GreetingResponse.java index 1e98d9918fc..e179c9e248b 100644 --- a/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/src/main/java/org/olamy/GreetingResponse.java +++ b/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/src/main/java/org/olamy/GreetingResponse.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/src/main/java/org/olamy/GreetingService.java b/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/src/main/java/org/olamy/GreetingService.java index 286e3723468..cca1568d188 100644 --- a/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/src/main/java/org/olamy/GreetingService.java +++ b/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/src/main/java/org/olamy/GreetingService.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/src/main/java/org/olamy/GreetingServiceAsync.java b/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/src/main/java/org/olamy/GreetingServiceAsync.java index 164c1537937..7346668b4d2 100644 --- a/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/src/main/java/org/olamy/GreetingServiceAsync.java +++ b/jetty-maven-plugin/src/it/run-mojo-gwt-it/beer-shared/src/main/java/org/olamy/GreetingServiceAsync.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/AbstractJettyMojo.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/AbstractJettyMojo.java index face6ed10d0..d33dbc10180 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/AbstractJettyMojo.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/AbstractJettyMojo.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ConsoleScanner.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ConsoleScanner.java index d784099e944..ea51433bcf9 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ConsoleScanner.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ConsoleScanner.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyDeployWar.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyDeployWar.java index bc608a2bc9e..c1f0d5ba3bb 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyDeployWar.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyDeployWar.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyEffectiveWebXml.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyEffectiveWebXml.java index 8208290abea..fa773bb8911 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyEffectiveWebXml.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyEffectiveWebXml.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunDistro.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunDistro.java index d5a502e5f50..e37fe1ae3c3 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunDistro.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunDistro.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunForkedMojo.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunForkedMojo.java index 5ff79475c8a..b69bef67ba8 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunForkedMojo.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunForkedMojo.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunMojo.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunMojo.java index 038e3a83a82..183d557a1ca 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunMojo.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunMojo.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunWarExplodedMojo.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunWarExplodedMojo.java index 0b7b910bfe4..78405efc199 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunWarExplodedMojo.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunWarExplodedMojo.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunWarMojo.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunWarMojo.java index c4e8f04f746..b91d877a262 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunWarMojo.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyRunWarMojo.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyStartMojo.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyStartMojo.java index 70fe508dace..a503f041eb2 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyStartMojo.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyStartMojo.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyStopMojo.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyStopMojo.java index 57550e16b1d..0f832162861 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyStopMojo.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyStopMojo.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyWebAppContext.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyWebAppContext.java index 92982799df8..98abd11fa47 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyWebAppContext.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyWebAppContext.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/MavenQuickStartConfiguration.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/MavenQuickStartConfiguration.java index f7533e33b5d..e03a9534497 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/MavenQuickStartConfiguration.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/MavenQuickStartConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/MavenServerConnector.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/MavenServerConnector.java index bbd524ac69c..0e73445e061 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/MavenServerConnector.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/MavenServerConnector.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/MavenWebInfConfiguration.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/MavenWebInfConfiguration.java index 70b45244488..68fe3ef6a4e 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/MavenWebInfConfiguration.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/MavenWebInfConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/Overlay.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/Overlay.java index e507d4f04e9..96dc527ff59 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/Overlay.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/Overlay.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/OverlayConfig.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/OverlayConfig.java index bdc11cc9fd6..e288a1c19e8 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/OverlayConfig.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/OverlayConfig.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/PluginLog.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/PluginLog.java index ec0ae63e628..ef3907b282a 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/PluginLog.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/PluginLog.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ScanPattern.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ScanPattern.java index 9c420348d9d..97e2a9142db 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ScanPattern.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ScanPattern.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ScanTargetPattern.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ScanTargetPattern.java index c25c3d63661..e1107b8b5c3 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ScanTargetPattern.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ScanTargetPattern.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/SelectiveJarResource.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/SelectiveJarResource.java index 104ef924fa1..91a9d4b9623 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/SelectiveJarResource.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/SelectiveJarResource.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ServerConnectorListener.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ServerConnectorListener.java index e55fb8b389b..df71c8b9494 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ServerConnectorListener.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ServerConnectorListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ServerListener.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ServerListener.java index efc171834b9..f9c337ea858 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ServerListener.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ServerListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ServerSupport.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ServerSupport.java index 00c8e6c9c4c..3a92709c3b4 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ServerSupport.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/ServerSupport.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/Starter.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/Starter.java index 91938bb2e05..be9f1f9ebf4 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/Starter.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/Starter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/SystemProperties.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/SystemProperties.java index 240528a9002..d6a114c6561 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/SystemProperties.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/SystemProperties.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/SystemProperty.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/SystemProperty.java index 7217ebe7942..72d80248d78 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/SystemProperty.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/SystemProperty.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/WarPluginInfo.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/WarPluginInfo.java index 83ce7867c82..b61d7903998 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/WarPluginInfo.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/WarPluginInfo.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/WebAppPropertyConverter.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/WebAppPropertyConverter.java index f0cdd618d52..b18e2700f2b 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/WebAppPropertyConverter.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/WebAppPropertyConverter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/package-info.java b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/package-info.java index 33dff65294b..8bd40d96c9c 100644 --- a/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/package-info.java +++ b/jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-maven-plugin/src/test/java/org/eclipse/jetty/maven/plugin/it/TestGetContent.java b/jetty-maven-plugin/src/test/java/org/eclipse/jetty/maven/plugin/it/TestGetContent.java index 51495bf8d05..c3deb8d3bb1 100644 --- a/jetty-maven-plugin/src/test/java/org/eclipse/jetty/maven/plugin/it/TestGetContent.java +++ b/jetty-maven-plugin/src/test/java/org/eclipse/jetty/maven/plugin/it/TestGetContent.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-memcached/jetty-memcached-sessions/src/main/java/org/eclipse/jetty/memcached/session/MemcachedSessionDataMap.java b/jetty-memcached/jetty-memcached-sessions/src/main/java/org/eclipse/jetty/memcached/session/MemcachedSessionDataMap.java index 1b3d01da1ee..daaee207e6a 100644 --- a/jetty-memcached/jetty-memcached-sessions/src/main/java/org/eclipse/jetty/memcached/session/MemcachedSessionDataMap.java +++ b/jetty-memcached/jetty-memcached-sessions/src/main/java/org/eclipse/jetty/memcached/session/MemcachedSessionDataMap.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-memcached/jetty-memcached-sessions/src/main/java/org/eclipse/jetty/memcached/session/MemcachedSessionDataMapFactory.java b/jetty-memcached/jetty-memcached-sessions/src/main/java/org/eclipse/jetty/memcached/session/MemcachedSessionDataMapFactory.java index 82f83928c39..0c4dd20fe14 100644 --- a/jetty-memcached/jetty-memcached-sessions/src/main/java/org/eclipse/jetty/memcached/session/MemcachedSessionDataMapFactory.java +++ b/jetty-memcached/jetty-memcached-sessions/src/main/java/org/eclipse/jetty/memcached/session/MemcachedSessionDataMapFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-memcached/jetty-memcached-sessions/src/test/java/org/eclipse/jetty/memcached/session/TestMemcachedSessions.java b/jetty-memcached/jetty-memcached-sessions/src/test/java/org/eclipse/jetty/memcached/session/TestMemcachedSessions.java index 6f640e4bf2b..6d1cd331fe9 100644 --- a/jetty-memcached/jetty-memcached-sessions/src/test/java/org/eclipse/jetty/memcached/session/TestMemcachedSessions.java +++ b/jetty-memcached/jetty-memcached-sessions/src/test/java/org/eclipse/jetty/memcached/session/TestMemcachedSessions.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/NoSqlSessionDataStore.java b/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/NoSqlSessionDataStore.java index cbe769900b2..3c283ad12bf 100644 --- a/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/NoSqlSessionDataStore.java +++ b/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/NoSqlSessionDataStore.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStore.java b/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStore.java index 80e456f4aac..ab0b3fa6579 100644 --- a/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStore.java +++ b/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStore.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStoreFactory.java b/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStoreFactory.java index e8ca93542f1..4d603961670 100644 --- a/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStoreFactory.java +++ b/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStoreFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/MongoUtils.java b/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/MongoUtils.java index cea0c039bb5..9dfec359bba 100644 --- a/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/MongoUtils.java +++ b/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/MongoUtils.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/package-info.java b/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/package-info.java index 214f244e559..69443e75abe 100644 --- a/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/package-info.java +++ b/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/mongodb/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/package-info.java b/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/package-info.java index ec914f57410..d92cfa5d36d 100644 --- a/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/package-info.java +++ b/jetty-nosql/src/main/java/org/eclipse/jetty/nosql/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot-jsp/src/main/java/org/eclipse/jetty/osgi/boot/jasper/ContainerTldBundleDiscoverer.java b/jetty-osgi/jetty-osgi-boot-jsp/src/main/java/org/eclipse/jetty/osgi/boot/jasper/ContainerTldBundleDiscoverer.java index fd34521803a..fa87ca85883 100644 --- a/jetty-osgi/jetty-osgi-boot-jsp/src/main/java/org/eclipse/jetty/osgi/boot/jasper/ContainerTldBundleDiscoverer.java +++ b/jetty-osgi/jetty-osgi-boot-jsp/src/main/java/org/eclipse/jetty/osgi/boot/jasper/ContainerTldBundleDiscoverer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot-jsp/src/main/java/org/eclipse/jetty/osgi/boot/jasper/JSTLBundleDiscoverer.java b/jetty-osgi/jetty-osgi-boot-jsp/src/main/java/org/eclipse/jetty/osgi/boot/jasper/JSTLBundleDiscoverer.java index 94a6977a543..57f946fa6b9 100644 --- a/jetty-osgi/jetty-osgi-boot-jsp/src/main/java/org/eclipse/jetty/osgi/boot/jasper/JSTLBundleDiscoverer.java +++ b/jetty-osgi/jetty-osgi-boot-jsp/src/main/java/org/eclipse/jetty/osgi/boot/jasper/JSTLBundleDiscoverer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot-jsp/src/main/java/org/eclipse/jetty/osgi/boot/jsp/FragmentActivator.java b/jetty-osgi/jetty-osgi-boot-jsp/src/main/java/org/eclipse/jetty/osgi/boot/jsp/FragmentActivator.java index 385b2c6a7cf..e3bcc1617fb 100644 --- a/jetty-osgi/jetty-osgi-boot-jsp/src/main/java/org/eclipse/jetty/osgi/boot/jsp/FragmentActivator.java +++ b/jetty-osgi/jetty-osgi-boot-jsp/src/main/java/org/eclipse/jetty/osgi/boot/jsp/FragmentActivator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot-warurl/src/main/java/org/eclipse/jetty/osgi/boot/warurl/WarUrlActivator.java b/jetty-osgi/jetty-osgi-boot-warurl/src/main/java/org/eclipse/jetty/osgi/boot/warurl/WarUrlActivator.java index 27c7269b7bf..39f2c514d61 100644 --- a/jetty-osgi/jetty-osgi-boot-warurl/src/main/java/org/eclipse/jetty/osgi/boot/warurl/WarUrlActivator.java +++ b/jetty-osgi/jetty-osgi-boot-warurl/src/main/java/org/eclipse/jetty/osgi/boot/warurl/WarUrlActivator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot-warurl/src/main/java/org/eclipse/jetty/osgi/boot/warurl/WarUrlStreamHandler.java b/jetty-osgi/jetty-osgi-boot-warurl/src/main/java/org/eclipse/jetty/osgi/boot/warurl/WarUrlStreamHandler.java index f04d04f4c6e..63ba912b3d2 100644 --- a/jetty-osgi/jetty-osgi-boot-warurl/src/main/java/org/eclipse/jetty/osgi/boot/warurl/WarUrlStreamHandler.java +++ b/jetty-osgi/jetty-osgi-boot-warurl/src/main/java/org/eclipse/jetty/osgi/boot/warurl/WarUrlStreamHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot-warurl/src/main/java/org/eclipse/jetty/osgi/boot/warurl/internal/WarBundleManifestGenerator.java b/jetty-osgi/jetty-osgi-boot-warurl/src/main/java/org/eclipse/jetty/osgi/boot/warurl/internal/WarBundleManifestGenerator.java index f533a8aa3a4..0c257ba182b 100644 --- a/jetty-osgi/jetty-osgi-boot-warurl/src/main/java/org/eclipse/jetty/osgi/boot/warurl/internal/WarBundleManifestGenerator.java +++ b/jetty-osgi/jetty-osgi-boot-warurl/src/main/java/org/eclipse/jetty/osgi/boot/warurl/internal/WarBundleManifestGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot-warurl/src/main/java/org/eclipse/jetty/osgi/boot/warurl/internal/WarURLConnection.java b/jetty-osgi/jetty-osgi-boot-warurl/src/main/java/org/eclipse/jetty/osgi/boot/warurl/internal/WarURLConnection.java index c675bcab340..e1b4b2196b0 100644 --- a/jetty-osgi/jetty-osgi-boot-warurl/src/main/java/org/eclipse/jetty/osgi/boot/warurl/internal/WarURLConnection.java +++ b/jetty-osgi/jetty-osgi-boot-warurl/src/main/java/org/eclipse/jetty/osgi/boot/warurl/internal/WarURLConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/annotations/AnnotationConfiguration.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/annotations/AnnotationConfiguration.java index a649a79d14b..fddb0e8cc0d 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/annotations/AnnotationConfiguration.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/annotations/AnnotationConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/annotations/AnnotationParser.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/annotations/AnnotationParser.java index 00f0919a023..5b7be2e2510 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/annotations/AnnotationParser.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/annotations/AnnotationParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/AbstractContextProvider.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/AbstractContextProvider.java index ef045288ff1..ad405c9e03c 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/AbstractContextProvider.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/AbstractContextProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/AbstractOSGiApp.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/AbstractOSGiApp.java index 68cd5c4b5bd..6d1785f1060 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/AbstractOSGiApp.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/AbstractOSGiApp.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/AbstractWebAppProvider.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/AbstractWebAppProvider.java index 2ac88bee6d0..17e08383caf 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/AbstractWebAppProvider.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/AbstractWebAppProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/BundleContextProvider.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/BundleContextProvider.java index f35c8e237aa..e88526a0d86 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/BundleContextProvider.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/BundleContextProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/BundleProvider.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/BundleProvider.java index 0539040f647..9efa432c03b 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/BundleProvider.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/BundleProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/BundleWebAppProvider.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/BundleWebAppProvider.java index 04591fc68d7..a3768471d2b 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/BundleWebAppProvider.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/BundleWebAppProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/JettyBootstrapActivator.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/JettyBootstrapActivator.java index d09d6301252..f54d8be9882 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/JettyBootstrapActivator.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/JettyBootstrapActivator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiDeployer.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiDeployer.java index 06f636ec675..9edfd10df4a 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiDeployer.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiDeployer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiServerConstants.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiServerConstants.java index 616ae707000..b66e097ed04 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiServerConstants.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiServerConstants.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiUndeployer.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiUndeployer.java index 364a25d0a23..0e113da0270 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiUndeployer.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiUndeployer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiWebInfConfiguration.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiWebInfConfiguration.java index 44301b47f5b..11af9ca7985 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiWebInfConfiguration.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiWebInfConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiWebappConstants.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiWebappConstants.java index 8a2ff37a7e0..d4515d25717 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiWebappConstants.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiWebappConstants.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/ServiceContextProvider.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/ServiceContextProvider.java index b870188db6c..783a3e98fe9 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/ServiceContextProvider.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/ServiceContextProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/ServiceProvider.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/ServiceProvider.java index 0bbb382c3d6..036830b789f 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/ServiceProvider.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/ServiceProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/ServiceWebAppProvider.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/ServiceWebAppProvider.java index abb95eb9216..4ffa0177905 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/ServiceWebAppProvider.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/ServiceWebAppProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/serverfactory/DefaultJettyAtJettyHomeHelper.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/serverfactory/DefaultJettyAtJettyHomeHelper.java index 2988ccbb146..f54a150f23f 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/serverfactory/DefaultJettyAtJettyHomeHelper.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/serverfactory/DefaultJettyAtJettyHomeHelper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/serverfactory/JettyServerServiceTracker.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/serverfactory/JettyServerServiceTracker.java index 5656c10baf6..d60eb57fe59 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/serverfactory/JettyServerServiceTracker.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/serverfactory/JettyServerServiceTracker.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/serverfactory/ServerInstanceWrapper.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/serverfactory/ServerInstanceWrapper.java index 9e126ec4d67..7b6d31983fb 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/serverfactory/ServerInstanceWrapper.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/serverfactory/ServerInstanceWrapper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/webapp/LibExtClassLoaderHelper.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/webapp/LibExtClassLoaderHelper.java index 95123b51f50..15db1c464c0 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/webapp/LibExtClassLoaderHelper.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/webapp/LibExtClassLoaderHelper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/webapp/OSGiWebappClassLoader.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/webapp/OSGiWebappClassLoader.java index 3642373d861..5e4212ff8c0 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/webapp/OSGiWebappClassLoader.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/internal/webapp/OSGiWebappClassLoader.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/BundleClassLoaderHelper.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/BundleClassLoaderHelper.java index 533c20d1a76..3cbc3264697 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/BundleClassLoaderHelper.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/BundleClassLoaderHelper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/BundleClassLoaderHelperFactory.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/BundleClassLoaderHelperFactory.java index a3f8213561c..20c473f95e6 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/BundleClassLoaderHelperFactory.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/BundleClassLoaderHelperFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/BundleFileLocatorHelper.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/BundleFileLocatorHelper.java index 0d6cfbc51ab..c808a2fafb2 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/BundleFileLocatorHelper.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/BundleFileLocatorHelper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/BundleFileLocatorHelperFactory.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/BundleFileLocatorHelperFactory.java index 7ed0cec8a62..0a1c091e1de 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/BundleFileLocatorHelperFactory.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/BundleFileLocatorHelperFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/EventSender.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/EventSender.java index fb63f55b210..27b19cda888 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/EventSender.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/EventSender.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/FakeURLClassLoader.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/FakeURLClassLoader.java index 9fffcd97fbf..ccc3e6a4b7f 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/FakeURLClassLoader.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/FakeURLClassLoader.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/OSGiClassLoader.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/OSGiClassLoader.java index 0b7f86e6528..51ce968a220 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/OSGiClassLoader.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/OSGiClassLoader.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/ServerConnectorListener.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/ServerConnectorListener.java index 311e3ee9225..60ddccbc0c7 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/ServerConnectorListener.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/ServerConnectorListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/TldBundleDiscoverer.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/TldBundleDiscoverer.java index fdaa4b8c96f..700988354ce 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/TldBundleDiscoverer.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/TldBundleDiscoverer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/Util.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/Util.java index c28846ab975..489820aa902 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/Util.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/Util.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/internal/DefaultBundleClassLoaderHelper.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/internal/DefaultBundleClassLoaderHelper.java index 53a754535dd..9dd493c576c 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/internal/DefaultBundleClassLoaderHelper.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/internal/DefaultBundleClassLoaderHelper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/internal/DefaultFileLocatorHelper.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/internal/DefaultFileLocatorHelper.java index 96c2b6cc1a0..cb857cb5876 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/internal/DefaultFileLocatorHelper.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/internal/DefaultFileLocatorHelper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/internal/PackageAdminServiceTracker.java b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/internal/PackageAdminServiceTracker.java index 50616767cee..b2662a93762 100644 --- a/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/internal/PackageAdminServiceTracker.java +++ b/jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/utils/internal/PackageAdminServiceTracker.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-httpservice/src/main/java/org/eclipse/jetty/osgi/httpservice/HttpServiceErrorHandlerHelper.java b/jetty-osgi/jetty-osgi-httpservice/src/main/java/org/eclipse/jetty/osgi/httpservice/HttpServiceErrorHandlerHelper.java index 83089f4de1c..249d9709cea 100644 --- a/jetty-osgi/jetty-osgi-httpservice/src/main/java/org/eclipse/jetty/osgi/httpservice/HttpServiceErrorHandlerHelper.java +++ b/jetty-osgi/jetty-osgi-httpservice/src/main/java/org/eclipse/jetty/osgi/httpservice/HttpServiceErrorHandlerHelper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/jetty-osgi-httpservice/src/main/java/org/eclipse/jetty/osgi/httpservice/HttpServiceErrorPageErrorHandler.java b/jetty-osgi/jetty-osgi-httpservice/src/main/java/org/eclipse/jetty/osgi/httpservice/HttpServiceErrorPageErrorHandler.java index eedbf6ecaf0..45a7ed54ec6 100644 --- a/jetty-osgi/jetty-osgi-httpservice/src/main/java/org/eclipse/jetty/osgi/httpservice/HttpServiceErrorPageErrorHandler.java +++ b/jetty-osgi/jetty-osgi-httpservice/src/main/java/org/eclipse/jetty/osgi/httpservice/HttpServiceErrorPageErrorHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/test-jetty-osgi-context/src/main/java/com/acme/osgi/Activator.java b/jetty-osgi/test-jetty-osgi-context/src/main/java/com/acme/osgi/Activator.java index 3abe2a26536..508280b1b40 100644 --- a/jetty-osgi/test-jetty-osgi-context/src/main/java/com/acme/osgi/Activator.java +++ b/jetty-osgi/test-jetty-osgi-context/src/main/java/com/acme/osgi/Activator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/test-jetty-osgi-server/src/main/java/com/acme/osgi/Activator.java b/jetty-osgi/test-jetty-osgi-server/src/main/java/com/acme/osgi/Activator.java index 89288615b63..3c10675a245 100644 --- a/jetty-osgi/test-jetty-osgi-server/src/main/java/com/acme/osgi/Activator.java +++ b/jetty-osgi/test-jetty-osgi-server/src/main/java/com/acme/osgi/Activator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/test-jetty-osgi-webapp/src/main/java/com/acme/osgi/Activator.java b/jetty-osgi/test-jetty-osgi-webapp/src/main/java/com/acme/osgi/Activator.java index c73ce4945bf..6a8da9e4938 100644 --- a/jetty-osgi/test-jetty-osgi-webapp/src/main/java/com/acme/osgi/Activator.java +++ b/jetty-osgi/test-jetty-osgi-webapp/src/main/java/com/acme/osgi/Activator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/SimpleEchoSocket.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/SimpleEchoSocket.java index 3c21433eb9e..0629ca8600d 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/SimpleEchoSocket.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/SimpleEchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/SimpleJavaxWebSocket.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/SimpleJavaxWebSocket.java index cbea7817258..165bed6630c 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/SimpleJavaxWebSocket.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/SimpleJavaxWebSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootContextAsService.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootContextAsService.java index d897e8988b8..09a5ef097d7 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootContextAsService.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootContextAsService.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2.java index bb6152af2e5..6a24a8aa9cc 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2Conscrypt.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2Conscrypt.java index e461d6ab975..6a957b87d3e 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2Conscrypt.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2Conscrypt.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2JDK9.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2JDK9.java index ae8d0308535..f002b962f46 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2JDK9.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2JDK9.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWebAppAsService.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWebAppAsService.java index 56083be7bb6..64021341faf 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWebAppAsService.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWebAppAsService.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithAnnotations.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithAnnotations.java index c8e5a57f1a1..c80370c4b73 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithAnnotations.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithAnnotations.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithJavaxWebSocket.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithJavaxWebSocket.java index 2f26120da88..601719c570b 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithJavaxWebSocket.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithJavaxWebSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithJsp.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithJsp.java index 7ccfb2fca56..61bf5885077 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithJsp.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithJsp.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithWebSocket.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithWebSocket.java index 8cc48047f27..1ad9ba84141 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithWebSocket.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithWebSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestOSGiUtil.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestOSGiUtil.java index eb3c086e0ec..13f00ebf588 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestOSGiUtil.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestOSGiUtil.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-overlay-deployer/src/main/java/org/eclipse/jetty/overlays/OverlayedAppProvider.java b/jetty-overlay-deployer/src/main/java/org/eclipse/jetty/overlays/OverlayedAppProvider.java index dc2d0c2ae7a..62113e69dcc 100644 --- a/jetty-overlay-deployer/src/main/java/org/eclipse/jetty/overlays/OverlayedAppProvider.java +++ b/jetty-overlay-deployer/src/main/java/org/eclipse/jetty/overlays/OverlayedAppProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-overlay-deployer/src/main/java/org/eclipse/jetty/overlays/TemplateContext.java b/jetty-overlay-deployer/src/main/java/org/eclipse/jetty/overlays/TemplateContext.java index 823fa9ac4e9..44b05450677 100644 --- a/jetty-overlay-deployer/src/main/java/org/eclipse/jetty/overlays/TemplateContext.java +++ b/jetty-overlay-deployer/src/main/java/org/eclipse/jetty/overlays/TemplateContext.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-overlay-deployer/src/main/java/org/eclipse/jetty/overlays/package-info.java b/jetty-overlay-deployer/src/main/java/org/eclipse/jetty/overlays/package-info.java index dff63951e79..8ae9a98d282 100644 --- a/jetty-overlay-deployer/src/main/java/org/eclipse/jetty/overlays/package-info.java +++ b/jetty-overlay-deployer/src/main/java/org/eclipse/jetty/overlays/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-overlay-deployer/src/test/java/org/eclipse/jetty/overlays/OverlayServer.java b/jetty-overlay-deployer/src/test/java/org/eclipse/jetty/overlays/OverlayServer.java index 49acecfd3ce..768616a6a17 100644 --- a/jetty-overlay-deployer/src/test/java/org/eclipse/jetty/overlays/OverlayServer.java +++ b/jetty-overlay-deployer/src/test/java/org/eclipse/jetty/overlays/OverlayServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-overlay-deployer/src/test/java/org/eclipse/jetty/overlays/OverlayedAppProviderTest.java b/jetty-overlay-deployer/src/test/java/org/eclipse/jetty/overlays/OverlayedAppProviderTest.java index 0ab984874d1..81e89db6a9a 100644 --- a/jetty-overlay-deployer/src/test/java/org/eclipse/jetty/overlays/OverlayedAppProviderTest.java +++ b/jetty-overlay-deployer/src/test/java/org/eclipse/jetty/overlays/OverlayedAppProviderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/ContainerInitializer.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/ContainerInitializer.java index fd11711372d..b3ea50dfce4 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/ContainerInitializer.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/ContainerInitializer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/Injection.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/Injection.java index a5de5ffcdaf..59d1f5f3a63 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/Injection.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/Injection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/InjectionCollection.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/InjectionCollection.java index a768d510168..30812e6d054 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/InjectionCollection.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/InjectionCollection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/LifeCycleCallback.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/LifeCycleCallback.java index ee6d41fa8ca..c002fbf9340 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/LifeCycleCallback.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/LifeCycleCallback.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/LifeCycleCallbackCollection.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/LifeCycleCallbackCollection.java index 8b5f9be113b..4b694a0e858 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/LifeCycleCallbackCollection.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/LifeCycleCallbackCollection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/PostConstructCallback.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/PostConstructCallback.java index d025c9c0cf7..f270a27286e 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/PostConstructCallback.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/PostConstructCallback.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/PreDestroyCallback.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/PreDestroyCallback.java index 7fa9eab0e22..7aa2ae58710 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/PreDestroyCallback.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/PreDestroyCallback.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/RunAs.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/RunAs.java index 4ce7b69ea86..6a7f2cc68b4 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/RunAs.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/RunAs.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/RunAsCollection.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/RunAsCollection.java index 6ee1801bfd4..7563fdba60c 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/RunAsCollection.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/RunAsCollection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/package-info.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/package-info.java index 1d5c3608a84..61440a0fc02 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/package-info.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/EnvEntry.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/EnvEntry.java index ababe9660fb..8a08ae902e4 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/EnvEntry.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/EnvEntry.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/Link.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/Link.java index 6e2703c0fab..aeb96e096e3 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/Link.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/Link.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/NamingEntry.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/NamingEntry.java index df4f90b1b5f..b7ac050a6de 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/NamingEntry.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/NamingEntry.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/NamingEntryUtil.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/NamingEntryUtil.java index 9df8c874354..81599b33547 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/NamingEntryUtil.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/NamingEntryUtil.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/Resource.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/Resource.java index 909341ea916..083affc2875 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/Resource.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/Resource.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/Transaction.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/Transaction.java index f8053021a16..fdb0a491b34 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/Transaction.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/Transaction.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/package-info.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/package-info.java index a85a1747010..69d3f29eeb6 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/package-info.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/jndi/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/security/DataSourceLoginService.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/security/DataSourceLoginService.java index f807044e194..81971044844 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/security/DataSourceLoginService.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/security/DataSourceLoginService.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/security/package-info.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/security/package-info.java index 5981b34d775..e756888d652 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/security/package-info.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/security/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/EnvConfiguration.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/EnvConfiguration.java index 72a4e90acf5..869d2d605d0 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/EnvConfiguration.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/EnvConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/PlusConfiguration.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/PlusConfiguration.java index e494dbd334f..af6d2baaf54 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/PlusConfiguration.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/PlusConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/PlusDecorator.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/PlusDecorator.java index c00c9a02d2a..ab42579b280 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/PlusDecorator.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/PlusDecorator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/PlusDescriptorProcessor.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/PlusDescriptorProcessor.java index fd7d7256d0b..09934003f71 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/PlusDescriptorProcessor.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/PlusDescriptorProcessor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/package-info.java b/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/package-info.java index a7b35c41b4d..0dff5cac33a 100644 --- a/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/package-info.java +++ b/jetty-plus/src/main/java/org/eclipse/jetty/plus/webapp/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/test/java/org/eclipse/jetty/plus/jndi/TestNamingEntries.java b/jetty-plus/src/test/java/org/eclipse/jetty/plus/jndi/TestNamingEntries.java index 36086e2a27f..63ef7e49593 100644 --- a/jetty-plus/src/test/java/org/eclipse/jetty/plus/jndi/TestNamingEntries.java +++ b/jetty-plus/src/test/java/org/eclipse/jetty/plus/jndi/TestNamingEntries.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/test/java/org/eclipse/jetty/plus/jndi/TestNamingEntryUtil.java b/jetty-plus/src/test/java/org/eclipse/jetty/plus/jndi/TestNamingEntryUtil.java index b82ad7ed5f2..b861ef308a9 100644 --- a/jetty-plus/src/test/java/org/eclipse/jetty/plus/jndi/TestNamingEntryUtil.java +++ b/jetty-plus/src/test/java/org/eclipse/jetty/plus/jndi/TestNamingEntryUtil.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/test/java/org/eclipse/jetty/plus/webapp/PlusDescriptorProcessorTest.java b/jetty-plus/src/test/java/org/eclipse/jetty/plus/webapp/PlusDescriptorProcessorTest.java index 8b79c325ef5..d9ae6bf1fa1 100644 --- a/jetty-plus/src/test/java/org/eclipse/jetty/plus/webapp/PlusDescriptorProcessorTest.java +++ b/jetty-plus/src/test/java/org/eclipse/jetty/plus/webapp/PlusDescriptorProcessorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-plus/src/test/java/org/eclipse/jetty/plus/webapp/TestConfiguration.java b/jetty-plus/src/test/java/org/eclipse/jetty/plus/webapp/TestConfiguration.java index f0935bd06dc..75abf1751ab 100644 --- a/jetty-plus/src/test/java/org/eclipse/jetty/plus/webapp/TestConfiguration.java +++ b/jetty-plus/src/test/java/org/eclipse/jetty/plus/webapp/TestConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AbstractProxyServlet.java b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AbstractProxyServlet.java index 9dd44df710b..ad44afff3e7 100644 --- a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AbstractProxyServlet.java +++ b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AbstractProxyServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AfterContentTransformer.java b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AfterContentTransformer.java index 2c97c5f49f3..0a80653f04b 100644 --- a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AfterContentTransformer.java +++ b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AfterContentTransformer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AsyncMiddleManServlet.java b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AsyncMiddleManServlet.java index 4cc81643dcd..f1e29d97568 100644 --- a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AsyncMiddleManServlet.java +++ b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AsyncMiddleManServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AsyncProxyServlet.java b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AsyncProxyServlet.java index ee4ab9e950d..a0515b01885 100644 --- a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AsyncProxyServlet.java +++ b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AsyncProxyServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/BalancerServlet.java b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/BalancerServlet.java index fffb90c93c7..f58b79d504d 100644 --- a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/BalancerServlet.java +++ b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/BalancerServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ConnectHandler.java b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ConnectHandler.java index 34826102b05..f096401cf35 100644 --- a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ConnectHandler.java +++ b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ConnectHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ProxyConnection.java b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ProxyConnection.java index bbd51efd17e..84bd52b1ba4 100644 --- a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ProxyConnection.java +++ b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ProxyConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ProxyServlet.java b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ProxyServlet.java index 2ecb88dd898..c41aad7bd1d 100644 --- a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ProxyServlet.java +++ b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ProxyServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/package-info.java b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/package-info.java index 2c530060b2d..4ef4cf41da2 100644 --- a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/package-info.java +++ b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/AbstractConnectHandlerTest.java b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/AbstractConnectHandlerTest.java index 5dfa8908f1e..4e160053cff 100644 --- a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/AbstractConnectHandlerTest.java +++ b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/AbstractConnectHandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/AsyncMiddleManServletTest.java b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/AsyncMiddleManServletTest.java index 759aeadd915..f273fc262f1 100644 --- a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/AsyncMiddleManServletTest.java +++ b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/AsyncMiddleManServletTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/BalancerServletTest.java b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/BalancerServletTest.java index 86c113d390e..b17b0c99f03 100644 --- a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/BalancerServletTest.java +++ b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/BalancerServletTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/CachingProxyServlet.java b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/CachingProxyServlet.java index 6f8c18096a6..0322197d4a6 100644 --- a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/CachingProxyServlet.java +++ b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/CachingProxyServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ConnectHandlerSSLTest.java b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ConnectHandlerSSLTest.java index bc47339d584..c128b15e884 100644 --- a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ConnectHandlerSSLTest.java +++ b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ConnectHandlerSSLTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ConnectHandlerTest.java b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ConnectHandlerTest.java index 4bdc833a4d2..e8d5ae53ae9 100644 --- a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ConnectHandlerTest.java +++ b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ConnectHandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/EchoHttpServlet.java b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/EchoHttpServlet.java index 5399e6ce1e9..ba3917721c5 100644 --- a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/EchoHttpServlet.java +++ b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/EchoHttpServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/EmptyHttpServlet.java b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/EmptyHttpServlet.java index 4e78b78be41..aa05f665371 100644 --- a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/EmptyHttpServlet.java +++ b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/EmptyHttpServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ForwardProxyServerTest.java b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ForwardProxyServerTest.java index 8eba53edf19..53042a1f403 100644 --- a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ForwardProxyServerTest.java +++ b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ForwardProxyServerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ForwardProxyTLSServerTest.java b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ForwardProxyTLSServerTest.java index aa8731edb9c..d4f8e085f12 100644 --- a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ForwardProxyTLSServerTest.java +++ b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ForwardProxyTLSServerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServer.java b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServer.java index 833cd2e8f62..10fe24f40a8 100644 --- a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServer.java +++ b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServletFailureTest.java b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServletFailureTest.java index 68e326d5d2e..7df552a7677 100644 --- a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServletFailureTest.java +++ b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServletFailureTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServletLoadTest.java b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServletLoadTest.java index 2b51f959ec8..df98606a3c6 100644 --- a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServletLoadTest.java +++ b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServletLoadTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServletTest.java b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServletTest.java index 715ca1e4967..8791899bb18 100644 --- a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServletTest.java +++ b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ProxyServletTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ReverseProxyTest.java b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ReverseProxyTest.java index d908cf3d344..b86bd7d2969 100644 --- a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ReverseProxyTest.java +++ b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ReverseProxyTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/AttributeNormalizer.java b/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/AttributeNormalizer.java index a6a3735eae9..c153be32d3c 100644 --- a/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/AttributeNormalizer.java +++ b/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/AttributeNormalizer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/PreconfigureDescriptorProcessor.java b/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/PreconfigureDescriptorProcessor.java index 53517c26b19..24d80d6d727 100644 --- a/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/PreconfigureDescriptorProcessor.java +++ b/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/PreconfigureDescriptorProcessor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/PreconfigureQuickStartWar.java b/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/PreconfigureQuickStartWar.java index 8e6e3abe1d8..794294574f8 100644 --- a/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/PreconfigureQuickStartWar.java +++ b/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/PreconfigureQuickStartWar.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartConfiguration.java b/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartConfiguration.java index 5356df4fd28..68355d6cfc3 100644 --- a/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartConfiguration.java +++ b/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartDescriptorGenerator.java b/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartDescriptorGenerator.java index 896bc4f84bf..a00085abeee 100644 --- a/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartDescriptorGenerator.java +++ b/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartDescriptorGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartDescriptorProcessor.java b/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartDescriptorProcessor.java index 71b26680f01..6af472cc1fc 100644 --- a/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartDescriptorProcessor.java +++ b/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartDescriptorProcessor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartWebApp.java b/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartWebApp.java index 4043a9e451b..a253daef50d 100644 --- a/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartWebApp.java +++ b/jetty-quickstart/src/main/java/org/eclipse/jetty/quickstart/QuickStartWebApp.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-quickstart/src/test/java/org/eclipse/jetty/quickstart/FooContextListener.java b/jetty-quickstart/src/test/java/org/eclipse/jetty/quickstart/FooContextListener.java index 4aa052aa119..8f5cd62fe57 100644 --- a/jetty-quickstart/src/test/java/org/eclipse/jetty/quickstart/FooContextListener.java +++ b/jetty-quickstart/src/test/java/org/eclipse/jetty/quickstart/FooContextListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -54,4 +54,4 @@ public class FooContextListener implements ServletContextListener public void contextDestroyed(ServletContextEvent sce) { } -} \ No newline at end of file +} diff --git a/jetty-quickstart/src/test/java/org/eclipse/jetty/quickstart/FooServlet.java b/jetty-quickstart/src/test/java/org/eclipse/jetty/quickstart/FooServlet.java index ce6d1a8a92f..010894fa94e 100644 --- a/jetty-quickstart/src/test/java/org/eclipse/jetty/quickstart/FooServlet.java +++ b/jetty-quickstart/src/test/java/org/eclipse/jetty/quickstart/FooServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -39,4 +39,4 @@ public class FooServlet extends HttpServlet resp.getWriter().println("FOO"); } -} \ No newline at end of file +} diff --git a/jetty-quickstart/src/test/java/org/eclipse/jetty/quickstart/TestQuickStart.java b/jetty-quickstart/src/test/java/org/eclipse/jetty/quickstart/TestQuickStart.java index df0a5aa91d1..259d9b5e40e 100644 --- a/jetty-quickstart/src/test/java/org/eclipse/jetty/quickstart/TestQuickStart.java +++ b/jetty-quickstart/src/test/java/org/eclipse/jetty/quickstart/TestQuickStart.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/RewriteCustomizer.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/RewriteCustomizer.java index d5ce4219352..edc7435fcbe 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/RewriteCustomizer.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/RewriteCustomizer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/CompactPathRule.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/CompactPathRule.java index f55584e6ee7..8a939a1c98d 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/CompactPathRule.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/CompactPathRule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/CookiePatternRule.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/CookiePatternRule.java index 6488be2f6c5..d03fcfb6079 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/CookiePatternRule.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/CookiePatternRule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/ForwardedSchemeHeaderRule.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/ForwardedSchemeHeaderRule.java index eb5c66b022f..dbb555f9d2f 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/ForwardedSchemeHeaderRule.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/ForwardedSchemeHeaderRule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/HeaderPatternRule.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/HeaderPatternRule.java index 5ac7d180d43..aa6ca321b60 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/HeaderPatternRule.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/HeaderPatternRule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/HeaderRegexRule.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/HeaderRegexRule.java index b477bcb4d41..8e92cf41e6f 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/HeaderRegexRule.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/HeaderRegexRule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/HeaderRule.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/HeaderRule.java index 5a3ce961aa7..90c8a28b722 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/HeaderRule.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/HeaderRule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/MsieSslRule.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/MsieSslRule.java index d49aa77a67b..f191cd317b9 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/MsieSslRule.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/MsieSslRule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/PatternRule.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/PatternRule.java index be3297bbf40..23177f0b42d 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/PatternRule.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/PatternRule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RedirectPatternRule.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RedirectPatternRule.java index d35c70d00ca..7cf246bc9f8 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RedirectPatternRule.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RedirectPatternRule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RedirectRegexRule.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RedirectRegexRule.java index 7d18b3d254a..755bf42672a 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RedirectRegexRule.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RedirectRegexRule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RedirectUtil.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RedirectUtil.java index a41e280a5c1..f99d6b30a8b 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RedirectUtil.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RedirectUtil.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RegexRule.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RegexRule.java index 6fb8355ed71..6d8c09e419c 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RegexRule.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RegexRule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/ResponsePatternRule.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/ResponsePatternRule.java index 42ea974ffc8..f0ab22576a6 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/ResponsePatternRule.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/ResponsePatternRule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RewriteHandler.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RewriteHandler.java index 099f978aba5..3e26d0e4e89 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RewriteHandler.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RewriteHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RewritePatternRule.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RewritePatternRule.java index 523345817d6..aa6c5a081c5 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RewritePatternRule.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RewritePatternRule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RewriteRegexRule.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RewriteRegexRule.java index 13b4ad44495..1888fdc9815 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RewriteRegexRule.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RewriteRegexRule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/Rule.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/Rule.java index 417accd7fe9..91faf3b7fe3 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/Rule.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/Rule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RuleContainer.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RuleContainer.java index ff317926b12..f0bddc0d16c 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RuleContainer.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/RuleContainer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/TerminatingPatternRule.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/TerminatingPatternRule.java index 8f4aea15c44..6bb521162c6 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/TerminatingPatternRule.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/TerminatingPatternRule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -54,4 +54,4 @@ public class TerminatingPatternRule extends PatternRule { return target; } -} \ No newline at end of file +} diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/TerminatingRegexRule.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/TerminatingRegexRule.java index 389c8086cff..2f162d4844b 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/TerminatingRegexRule.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/TerminatingRegexRule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -57,4 +57,4 @@ public class TerminatingRegexRule extends RegexRule { return target; } -} \ No newline at end of file +} diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/ValidUrlRule.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/ValidUrlRule.java index 67078aa83a3..650fe11012c 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/ValidUrlRule.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/ValidUrlRule.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/VirtualHostRuleContainer.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/VirtualHostRuleContainer.java index f510437f183..0ff550a5b05 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/VirtualHostRuleContainer.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/VirtualHostRuleContainer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/package-info.java b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/package-info.java index 77f92c1e8a7..75058dae819 100644 --- a/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/package-info.java +++ b/jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/AbstractRuleTestCase.java b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/AbstractRuleTestCase.java index 9a8f7a11f80..24d280236cf 100644 --- a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/AbstractRuleTestCase.java +++ b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/AbstractRuleTestCase.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/CookiePatternRuleTest.java b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/CookiePatternRuleTest.java index edfa3de5b24..3a4620802e2 100644 --- a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/CookiePatternRuleTest.java +++ b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/CookiePatternRuleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/ForwardedSchemeHeaderRuleTest.java b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/ForwardedSchemeHeaderRuleTest.java index a5fe0957228..99f2102a604 100644 --- a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/ForwardedSchemeHeaderRuleTest.java +++ b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/ForwardedSchemeHeaderRuleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/HeaderPatternRuleTest.java b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/HeaderPatternRuleTest.java index 1057dd8fe0c..5497f346734 100644 --- a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/HeaderPatternRuleTest.java +++ b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/HeaderPatternRuleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/HeaderRegexRuleTest.java b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/HeaderRegexRuleTest.java index aa5b44cafed..de0b367734c 100644 --- a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/HeaderRegexRuleTest.java +++ b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/HeaderRegexRuleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/MsieSslRuleTest.java b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/MsieSslRuleTest.java index 94983b5d3aa..de6c41e7163 100644 --- a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/MsieSslRuleTest.java +++ b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/MsieSslRuleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/PatternRuleTest.java b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/PatternRuleTest.java index c78cfff5ef9..287ffedc18d 100644 --- a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/PatternRuleTest.java +++ b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/PatternRuleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RedirectPatternRuleTest.java b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RedirectPatternRuleTest.java index f26059257e9..8a377bf878c 100644 --- a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RedirectPatternRuleTest.java +++ b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RedirectPatternRuleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RedirectRegexRuleTest.java b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RedirectRegexRuleTest.java index d8fbda51775..8e91e760d0f 100644 --- a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RedirectRegexRuleTest.java +++ b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RedirectRegexRuleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RegexRuleTest.java b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RegexRuleTest.java index c3d5f06cc65..837e325c986 100644 --- a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RegexRuleTest.java +++ b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RegexRuleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/ResponsePatternRuleTest.java b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/ResponsePatternRuleTest.java index b427974c09f..542a04d0434 100644 --- a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/ResponsePatternRuleTest.java +++ b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/ResponsePatternRuleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RewriteHandlerTest.java b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RewriteHandlerTest.java index e20c460f89d..141c3cc938b 100644 --- a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RewriteHandlerTest.java +++ b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RewriteHandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RewritePatternRuleTest.java b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RewritePatternRuleTest.java index 5819c7f5111..d22971569cb 100644 --- a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RewritePatternRuleTest.java +++ b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RewritePatternRuleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RewriteRegexRuleTest.java b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RewriteRegexRuleTest.java index 95651cd01b5..46cceabceff 100644 --- a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RewriteRegexRuleTest.java +++ b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/RewriteRegexRuleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/TerminatingPatternRuleTest.java b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/TerminatingPatternRuleTest.java index 4417c85c8da..57ec5cc2fc8 100644 --- a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/TerminatingPatternRuleTest.java +++ b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/TerminatingPatternRuleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/TerminatingRegexRuleTest.java b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/TerminatingRegexRuleTest.java index c62d4ef17a3..cf60b2e5ca4 100644 --- a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/TerminatingRegexRuleTest.java +++ b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/TerminatingRegexRuleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/ValidUrlRuleTest.java b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/ValidUrlRuleTest.java index 7a02fd283bc..9b1855faf13 100644 --- a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/ValidUrlRuleTest.java +++ b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/ValidUrlRuleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/VirtualHostRuleContainerTest.java b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/VirtualHostRuleContainerTest.java index f98b70893d2..958473a051b 100644 --- a/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/VirtualHostRuleContainerTest.java +++ b/jetty-rewrite/src/test/java/org/eclipse/jetty/rewrite/handler/VirtualHostRuleContainerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-runner/src/main/java/org/eclipse/jetty/runner/Runner.java b/jetty-runner/src/main/java/org/eclipse/jetty/runner/Runner.java index 9348f82858f..d13e3d21818 100644 --- a/jetty-runner/src/main/java/org/eclipse/jetty/runner/Runner.java +++ b/jetty-runner/src/main/java/org/eclipse/jetty/runner/Runner.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-runner/src/main/java/org/eclipse/jetty/runner/package-info.java b/jetty-runner/src/main/java/org/eclipse/jetty/runner/package-info.java index 68f2bbf79f8..57a9ac3b871 100644 --- a/jetty-runner/src/main/java/org/eclipse/jetty/runner/package-info.java +++ b/jetty-runner/src/main/java/org/eclipse/jetty/runner/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/AbstractLoginService.java b/jetty-security/src/main/java/org/eclipse/jetty/security/AbstractLoginService.java index 7202a964439..5ccf42ea9e9 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/AbstractLoginService.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/AbstractLoginService.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/AbstractUserAuthentication.java b/jetty-security/src/main/java/org/eclipse/jetty/security/AbstractUserAuthentication.java index 9cd80caf055..5ca2bc7ce02 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/AbstractUserAuthentication.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/AbstractUserAuthentication.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/Authenticator.java b/jetty-security/src/main/java/org/eclipse/jetty/security/Authenticator.java index e9c343eabb0..42229058576 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/Authenticator.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/Authenticator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/ConfigurableSpnegoLoginService.java b/jetty-security/src/main/java/org/eclipse/jetty/security/ConfigurableSpnegoLoginService.java index fe256d8e749..424c12fc24f 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/ConfigurableSpnegoLoginService.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/ConfigurableSpnegoLoginService.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintAware.java b/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintAware.java index df8c66d1709..3bd0beb0f38 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintAware.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintAware.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintMapping.java b/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintMapping.java index 538e777b45f..153e301e0b6 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintMapping.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintMapping.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintSecurityHandler.java b/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintSecurityHandler.java index 8e24e70cae5..8f67beebae5 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintSecurityHandler.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintSecurityHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/DefaultAuthenticatorFactory.java b/jetty-security/src/main/java/org/eclipse/jetty/security/DefaultAuthenticatorFactory.java index 588464545f1..4b389fb5fbf 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/DefaultAuthenticatorFactory.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/DefaultAuthenticatorFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/DefaultIdentityService.java b/jetty-security/src/main/java/org/eclipse/jetty/security/DefaultIdentityService.java index fc608ac2fc9..0fcfc54028a 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/DefaultIdentityService.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/DefaultIdentityService.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/DefaultUserIdentity.java b/jetty-security/src/main/java/org/eclipse/jetty/security/DefaultUserIdentity.java index 4c2644985fb..5a46186c668 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/DefaultUserIdentity.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/DefaultUserIdentity.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/HashLoginService.java b/jetty-security/src/main/java/org/eclipse/jetty/security/HashLoginService.java index 4ef00f55ed4..e40a9fed9f8 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/HashLoginService.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/HashLoginService.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/IdentityService.java b/jetty-security/src/main/java/org/eclipse/jetty/security/IdentityService.java index 59d41b64fb2..2a1e82b215c 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/IdentityService.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/IdentityService.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/JDBCLoginService.java b/jetty-security/src/main/java/org/eclipse/jetty/security/JDBCLoginService.java index 8d0b2f9b4e9..cd7c404a687 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/JDBCLoginService.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/JDBCLoginService.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/LoginService.java b/jetty-security/src/main/java/org/eclipse/jetty/security/LoginService.java index 289fc8a985c..e750e5eedb4 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/LoginService.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/LoginService.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/PropertyUserStore.java b/jetty-security/src/main/java/org/eclipse/jetty/security/PropertyUserStore.java index f07760ab045..e43f4719d30 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/PropertyUserStore.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/PropertyUserStore.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/RoleInfo.java b/jetty-security/src/main/java/org/eclipse/jetty/security/RoleInfo.java index da30ce9c814..119db9a59ac 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/RoleInfo.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/RoleInfo.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/RoleRunAsToken.java b/jetty-security/src/main/java/org/eclipse/jetty/security/RoleRunAsToken.java index ee4278ecc74..eb4e0bd39e4 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/RoleRunAsToken.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/RoleRunAsToken.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/RunAsToken.java b/jetty-security/src/main/java/org/eclipse/jetty/security/RunAsToken.java index c02e8532e71..03668c0cbb4 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/RunAsToken.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/RunAsToken.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/SecurityHandler.java b/jetty-security/src/main/java/org/eclipse/jetty/security/SecurityHandler.java index 58f5de0e3eb..68f19442bdf 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/SecurityHandler.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/SecurityHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/ServerAuthException.java b/jetty-security/src/main/java/org/eclipse/jetty/security/ServerAuthException.java index 717ea968603..4a459d89eed 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/ServerAuthException.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/ServerAuthException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/SpnegoLoginService.java b/jetty-security/src/main/java/org/eclipse/jetty/security/SpnegoLoginService.java index 41f30f0a736..6365ed71d3f 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/SpnegoLoginService.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/SpnegoLoginService.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/SpnegoUserIdentity.java b/jetty-security/src/main/java/org/eclipse/jetty/security/SpnegoUserIdentity.java index 307f4ba5e41..12278e19b51 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/SpnegoUserIdentity.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/SpnegoUserIdentity.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/SpnegoUserPrincipal.java b/jetty-security/src/main/java/org/eclipse/jetty/security/SpnegoUserPrincipal.java index 4ad45083953..8365b8af725 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/SpnegoUserPrincipal.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/SpnegoUserPrincipal.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/UserAuthentication.java b/jetty-security/src/main/java/org/eclipse/jetty/security/UserAuthentication.java index cfbbdcb1560..6c2d586d5e9 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/UserAuthentication.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/UserAuthentication.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/UserDataConstraint.java b/jetty-security/src/main/java/org/eclipse/jetty/security/UserDataConstraint.java index 9c86713ad3c..af65fb3c793 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/UserDataConstraint.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/UserDataConstraint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/UserStore.java b/jetty-security/src/main/java/org/eclipse/jetty/security/UserStore.java index bf44c879dbe..619dd33b6e8 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/UserStore.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/UserStore.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/AuthorizationService.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/AuthorizationService.java index 87adc2db830..ea384f65f89 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/AuthorizationService.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/AuthorizationService.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/BasicAuthenticator.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/BasicAuthenticator.java index b489ba86874..e1654a793f3 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/BasicAuthenticator.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/BasicAuthenticator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/ClientCertAuthenticator.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/ClientCertAuthenticator.java index 674a556d77d..db573545701 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/ClientCertAuthenticator.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/ClientCertAuthenticator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/ConfigurableSpnegoAuthenticator.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/ConfigurableSpnegoAuthenticator.java index 6cae1a4745b..8a76ad089fe 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/ConfigurableSpnegoAuthenticator.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/ConfigurableSpnegoAuthenticator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/DeferredAuthentication.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/DeferredAuthentication.java index 6c26254171c..e28a634d74a 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/DeferredAuthentication.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/DeferredAuthentication.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/DigestAuthenticator.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/DigestAuthenticator.java index 7f66c2e5dab..f0b41ad5880 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/DigestAuthenticator.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/DigestAuthenticator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/FormAuthenticator.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/FormAuthenticator.java index 4b0e3a769fb..0b8ce9210a3 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/FormAuthenticator.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/FormAuthenticator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/LoginAuthenticator.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/LoginAuthenticator.java index 17413a5d430..b0d4abf1d33 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/LoginAuthenticator.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/LoginAuthenticator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/LoginCallback.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/LoginCallback.java index 42425d1b032..915fb1f2a95 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/LoginCallback.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/LoginCallback.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/LoginCallbackImpl.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/LoginCallbackImpl.java index 16cd018449e..496d1676b2e 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/LoginCallbackImpl.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/LoginCallbackImpl.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SessionAuthentication.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SessionAuthentication.java index 1b1ee3dddb0..db529af60cc 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SessionAuthentication.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SessionAuthentication.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SpnegoAuthenticator.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SpnegoAuthenticator.java index 8142eb7c4d8..9056b07b8e2 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SpnegoAuthenticator.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/SpnegoAuthenticator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/package-info.java b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/package-info.java index ca9409c7e56..eab242900bc 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/package-info.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/authentication/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/package-info.java b/jetty-security/src/main/java/org/eclipse/jetty/security/package-info.java index 3b79f08d8c8..77b20e4921b 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/package-info.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/test/java/org/eclipse/jetty/security/AliasedConstraintTest.java b/jetty-security/src/test/java/org/eclipse/jetty/security/AliasedConstraintTest.java index 562d5bd85e8..33e50226e08 100644 --- a/jetty-security/src/test/java/org/eclipse/jetty/security/AliasedConstraintTest.java +++ b/jetty-security/src/test/java/org/eclipse/jetty/security/AliasedConstraintTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/test/java/org/eclipse/jetty/security/ConstraintTest.java b/jetty-security/src/test/java/org/eclipse/jetty/security/ConstraintTest.java index 7ef790624f2..8288fed3d9e 100644 --- a/jetty-security/src/test/java/org/eclipse/jetty/security/ConstraintTest.java +++ b/jetty-security/src/test/java/org/eclipse/jetty/security/ConstraintTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/test/java/org/eclipse/jetty/security/DataConstraintsTest.java b/jetty-security/src/test/java/org/eclipse/jetty/security/DataConstraintsTest.java index fd31fb5396b..e9a6baf83af 100644 --- a/jetty-security/src/test/java/org/eclipse/jetty/security/DataConstraintsTest.java +++ b/jetty-security/src/test/java/org/eclipse/jetty/security/DataConstraintsTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/test/java/org/eclipse/jetty/security/PropertyUserStoreTest.java b/jetty-security/src/test/java/org/eclipse/jetty/security/PropertyUserStoreTest.java index 5fcb9392652..71608305dd2 100644 --- a/jetty-security/src/test/java/org/eclipse/jetty/security/PropertyUserStoreTest.java +++ b/jetty-security/src/test/java/org/eclipse/jetty/security/PropertyUserStoreTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/test/java/org/eclipse/jetty/security/SpecExampleConstraintTest.java b/jetty-security/src/test/java/org/eclipse/jetty/security/SpecExampleConstraintTest.java index 22e179c2273..74e241334d9 100644 --- a/jetty-security/src/test/java/org/eclipse/jetty/security/SpecExampleConstraintTest.java +++ b/jetty-security/src/test/java/org/eclipse/jetty/security/SpecExampleConstraintTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/test/java/org/eclipse/jetty/security/TestLoginService.java b/jetty-security/src/test/java/org/eclipse/jetty/security/TestLoginService.java index 6cccec0c916..b39ebc27c60 100644 --- a/jetty-security/src/test/java/org/eclipse/jetty/security/TestLoginService.java +++ b/jetty-security/src/test/java/org/eclipse/jetty/security/TestLoginService.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/test/java/org/eclipse/jetty/security/UserStoreTest.java b/jetty-security/src/test/java/org/eclipse/jetty/security/UserStoreTest.java index be0cb9b6d07..df56c82c8f0 100644 --- a/jetty-security/src/test/java/org/eclipse/jetty/security/UserStoreTest.java +++ b/jetty-security/src/test/java/org/eclipse/jetty/security/UserStoreTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-security/src/test/java/org/eclipse/jetty/security/authentication/SpnegoAuthenticatorTest.java b/jetty-security/src/test/java/org/eclipse/jetty/security/authentication/SpnegoAuthenticatorTest.java index 9b03ed72874..50cae96be70 100644 --- a/jetty-security/src/test/java/org/eclipse/jetty/security/authentication/SpnegoAuthenticatorTest.java +++ b/jetty-security/src/test/java/org/eclipse/jetty/security/authentication/SpnegoAuthenticatorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractConnectionFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractConnectionFactory.java index d799d00c6b4..70a7474d1bf 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractConnectionFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractConnectionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractConnector.java b/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractConnector.java index ec7b51c62b4..d84f52c8219 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractConnector.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractConnector.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractNCSARequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractNCSARequestLog.java index 99e0a94cf63..77abd5b3bd7 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractNCSARequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractNCSARequestLog.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractNetworkConnector.java b/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractNetworkConnector.java index 4a79b9eada4..c019ab3259a 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractNetworkConnector.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/AbstractNetworkConnector.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/AcceptRateLimit.java b/jetty-server/src/main/java/org/eclipse/jetty/server/AcceptRateLimit.java index 760175732f7..99d24e06df4 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/AcceptRateLimit.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/AcceptRateLimit.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncContextEvent.java b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncContextEvent.java index 8c76994250b..581f2442071 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncContextEvent.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncContextEvent.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncContextState.java b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncContextState.java index 596d6055069..85f24e0c0bc 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncContextState.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncContextState.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncNCSARequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncNCSARequestLog.java index 3290b7794d2..671b1fcb17e 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncNCSARequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncNCSARequestLog.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java index 6fd89251043..5a6d55e7a05 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/AsyncRequestLogWriter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Authentication.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Authentication.java index 3e9e906b398..eaadb742bdc 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Authentication.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Authentication.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/CachedContentFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/CachedContentFactory.java index 18c32ec6f81..5073c094800 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/CachedContentFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/CachedContentFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ClassLoaderDump.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ClassLoaderDump.java index 44072e42b65..1327a15ee06 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ClassLoaderDump.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ClassLoaderDump.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ConnectionFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ConnectionFactory.java index f012b74dda0..68bac7b460b 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ConnectionFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ConnectionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ConnectionLimit.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ConnectionLimit.java index e25d25911b6..c54fb27f01b 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ConnectionLimit.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ConnectionLimit.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Connector.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Connector.java index 0fb327ecc8f..dc27eaa3509 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Connector.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Connector.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ConnectorStatistics.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ConnectorStatistics.java index ae42690537c..5862a9f81b0 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ConnectorStatistics.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ConnectorStatistics.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/CookieCutter.java b/jetty-server/src/main/java/org/eclipse/jetty/server/CookieCutter.java index d9e7971df05..5dce1cf791a 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/CookieCutter.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/CookieCutter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java index cd80f08bf69..1e6883dadde 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/CustomRequestLog.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/DebugListener.java b/jetty-server/src/main/java/org/eclipse/jetty/server/DebugListener.java index 8b11dde9228..bbaca10311d 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/DebugListener.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/DebugListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/DeflaterPool.java b/jetty-server/src/main/java/org/eclipse/jetty/server/DeflaterPool.java index ed181f01377..27f4070421f 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/DeflaterPool.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/DeflaterPool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Dispatcher.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Dispatcher.java index c1baef1553d..d68ecac1473 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Dispatcher.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Dispatcher.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/EncodingHttpWriter.java b/jetty-server/src/main/java/org/eclipse/jetty/server/EncodingHttpWriter.java index 74b0abc031a..40bb1168708 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/EncodingHttpWriter.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/EncodingHttpWriter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ForwardedRequestCustomizer.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ForwardedRequestCustomizer.java index 7767314b8d6..65e1c880f11 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ForwardedRequestCustomizer.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ForwardedRequestCustomizer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Handler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Handler.java index 2ffb2f87f06..ba78e792669 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Handler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Handler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HandlerContainer.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HandlerContainer.java index 89b845d4773..540a7a93634 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HandlerContainer.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HandlerContainer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HomeBaseWarning.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HomeBaseWarning.java index 396bdaa5347..fe511967a81 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HomeBaseWarning.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HomeBaseWarning.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HostHeaderCustomizer.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HostHeaderCustomizer.java index 689be9354c6..a075344a21e 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HostHeaderCustomizer.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HostHeaderCustomizer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java index f2dc4940f9a..b52b941c1ba 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannelOverHttp.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannelOverHttp.java index 3e2f0cbd654..8a3bd623719 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannelOverHttp.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannelOverHttp.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannelState.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannelState.java index 78e009ea839..de296ced18a 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannelState.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannelState.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConfiguration.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConfiguration.java index 4d9537ad024..af6a82fcccc 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConfiguration.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConnection.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConnection.java index 97583b4d33d..3d124c5d752 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConnection.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConnectionFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConnectionFactory.java index 6459b0394d1..8bddfd3e289 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConnectionFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConnectionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpInput.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpInput.java index d4592a72607..1c66f0b5a2b 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpInput.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpInput.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpInputOverHTTP.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpInputOverHTTP.java index 8c23d10961e..c8766ff3169 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpInputOverHTTP.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpInputOverHTTP.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java index b7fd19a3d70..30e65225eea 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpTransport.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpTransport.java index 53b80397872..23fa8294ccb 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpTransport.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpTransport.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpWriter.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpWriter.java index 09618ce63ff..5f57fb2aa54 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpWriter.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpWriter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/InclusiveByteRange.java b/jetty-server/src/main/java/org/eclipse/jetty/server/InclusiveByteRange.java index d283579093e..97ab4f2dfc9 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/InclusiveByteRange.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/InclusiveByteRange.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Iso88591HttpWriter.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Iso88591HttpWriter.java index 6bc021b357d..f00913e7cb5 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Iso88591HttpWriter.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Iso88591HttpWriter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/LocalConnector.java b/jetty-server/src/main/java/org/eclipse/jetty/server/LocalConnector.java index 5914ae725d4..c1fb7ef325c 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/LocalConnector.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/LocalConnector.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/LowResourceMonitor.java b/jetty-server/src/main/java/org/eclipse/jetty/server/LowResourceMonitor.java index 896e1bdc3dd..811c547307a 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/LowResourceMonitor.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/LowResourceMonitor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/MultiPartCleanerListener.java b/jetty-server/src/main/java/org/eclipse/jetty/server/MultiPartCleanerListener.java index 99acef7d50f..6212abb4b91 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/MultiPartCleanerListener.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/MultiPartCleanerListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -64,4 +64,4 @@ public class MultiPartCleanerListener implements ServletRequestListener //nothing to do, multipart config set up by ServletHolder.handle() } -} \ No newline at end of file +} diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/MultiPartFormDataCompliance.java b/jetty-server/src/main/java/org/eclipse/jetty/server/MultiPartFormDataCompliance.java index 1616d0785bd..d65bedbb575 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/MultiPartFormDataCompliance.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/MultiPartFormDataCompliance.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -35,4 +35,4 @@ public enum MultiPartFormDataCompliance * @see org.eclipse.jetty.http.MultiPartFormInputStream */ RFC7578 -} \ No newline at end of file +} diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/MultiParts.java b/jetty-server/src/main/java/org/eclipse/jetty/server/MultiParts.java index 7ab21c7af1e..f28b9453b3c 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/MultiParts.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/MultiParts.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/NCSARequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/NCSARequestLog.java index 6a660fb3dc1..afdf47308f9 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/NCSARequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/NCSARequestLog.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/NegotiatingServerConnection.java b/jetty-server/src/main/java/org/eclipse/jetty/server/NegotiatingServerConnection.java index 50c2a2c76bf..4aea0f42235 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/NegotiatingServerConnection.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/NegotiatingServerConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/NegotiatingServerConnectionFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/NegotiatingServerConnectionFactory.java index 4eafd91a373..714a50532be 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/NegotiatingServerConnectionFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/NegotiatingServerConnectionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/NetworkConnector.java b/jetty-server/src/main/java/org/eclipse/jetty/server/NetworkConnector.java index 3660133774f..854f221af9a 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/NetworkConnector.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/NetworkConnector.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/NetworkTrafficServerConnector.java b/jetty-server/src/main/java/org/eclipse/jetty/server/NetworkTrafficServerConnector.java index 478f2ff5135..d2bfae69b69 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/NetworkTrafficServerConnector.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/NetworkTrafficServerConnector.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ProxyConnectionFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ProxyConnectionFactory.java index 84504a0eb41..5436006635f 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ProxyConnectionFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ProxyConnectionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/PushBuilder.java b/jetty-server/src/main/java/org/eclipse/jetty/server/PushBuilder.java index 642f9b4c18a..aef4f6a65aa 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/PushBuilder.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/PushBuilder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -248,4 +248,4 @@ public interface PushBuilder public abstract String getPath(); public abstract String getEtag(); public abstract String getLastModified(); -} \ No newline at end of file +} diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/PushBuilderImpl.java b/jetty-server/src/main/java/org/eclipse/jetty/server/PushBuilderImpl.java index 458095e0b5c..d083341ba01 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/PushBuilderImpl.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/PushBuilderImpl.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/QuietServletException.java b/jetty-server/src/main/java/org/eclipse/jetty/server/QuietServletException.java index d289024dd95..1257a91fd5e 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/QuietServletException.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/QuietServletException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java index 314242ec218..3db45d61de4 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLog.java index 4ad0fd64146..fa190a7de4e 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLog.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogCollection.java b/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogCollection.java index adb5143044c..f6beb7f2488 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogCollection.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogCollection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogWriter.java b/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogWriter.java index c570c9d9223..5944605a6c6 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogWriter.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/RequestLogWriter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ResourceContentFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ResourceContentFactory.java index f89290bd635..39f2648276c 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ResourceContentFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ResourceContentFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ResourceService.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ResourceService.java index 58823b77edb..3d3f05c7f2a 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ResourceService.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ResourceService.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Response.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Response.java index 3741ee1b256..5afd02437c8 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Response.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Response.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ResponseWriter.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ResponseWriter.java index 47103e6257c..bfbe133e2b9 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ResponseWriter.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ResponseWriter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -492,4 +492,4 @@ public class ResponseWriter extends PrintWriter -} \ No newline at end of file +} diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/SecureRequestCustomizer.java b/jetty-server/src/main/java/org/eclipse/jetty/server/SecureRequestCustomizer.java index 4beb63fcced..3dd805f7e48 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/SecureRequestCustomizer.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/SecureRequestCustomizer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Server.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Server.java index aff082efd6e..7ca34c3a9b4 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Server.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Server.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnectionStatistics.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnectionStatistics.java index ce7cc9ec5bb..87a436d2ce1 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnectionStatistics.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnectionStatistics.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnector.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnector.java index d18b3a08e1a..0eb40924376 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnector.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnector.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ServletRequestHttpWrapper.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ServletRequestHttpWrapper.java index 3d707c9bd2f..3859a635d2e 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ServletRequestHttpWrapper.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ServletRequestHttpWrapper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ServletResponseHttpWrapper.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ServletResponseHttpWrapper.java index d06c9c2db70..7adb65cd634 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ServletResponseHttpWrapper.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ServletResponseHttpWrapper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/SessionIdManager.java b/jetty-server/src/main/java/org/eclipse/jetty/server/SessionIdManager.java index c5ef3958c0c..9401a105396 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/SessionIdManager.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/SessionIdManager.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ShutdownMonitor.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ShutdownMonitor.java index f1be05128f0..08fdf0c6d5d 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ShutdownMonitor.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ShutdownMonitor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLog.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLog.java index a6340c9f399..f9c388c363c 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLog.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLog.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLogWriter.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLogWriter.java index 91f1ce7262f..fdc3efe7632 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLogWriter.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Slf4jRequestLogWriter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/SocketCustomizationListener.java b/jetty-server/src/main/java/org/eclipse/jetty/server/SocketCustomizationListener.java index b97b85f7d41..3a23cbfaf7e 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/SocketCustomizationListener.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/SocketCustomizationListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/SslConnectionFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/SslConnectionFactory.java index e6edf0412b4..98470a9d617 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/SslConnectionFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/SslConnectionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/UserIdentity.java b/jetty-server/src/main/java/org/eclipse/jetty/server/UserIdentity.java index daa60a0fcdf..a021e9967b5 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/UserIdentity.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/UserIdentity.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Utf8HttpWriter.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Utf8HttpWriter.java index fae6af882f8..5bc09479de9 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/Utf8HttpWriter.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Utf8HttpWriter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/AbstractHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/AbstractHandler.java index a891fdb4e05..4607be6248e 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/AbstractHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/AbstractHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/AbstractHandlerContainer.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/AbstractHandlerContainer.java index 510851fc8ba..333d4e973e5 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/AbstractHandlerContainer.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/AbstractHandlerContainer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/AllowSymLinkAliasChecker.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/AllowSymLinkAliasChecker.java index e0965530ccf..9ff646e2898 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/AllowSymLinkAliasChecker.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/AllowSymLinkAliasChecker.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/AsyncDelayHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/AsyncDelayHandler.java index 6dcd4c25cbf..aaf4b7391e9 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/AsyncDelayHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/AsyncDelayHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/BufferedResponseHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/BufferedResponseHandler.java index 9c36b21bdfe..d75cac1dc2c 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/BufferedResponseHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/BufferedResponseHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java index 08839a4f137..236354be226 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandlerCollection.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandlerCollection.java index 4b264af1949..3beaa60f56c 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandlerCollection.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandlerCollection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/DebugHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/DebugHandler.java index 7edf624089a..9d8583715bb 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/DebugHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/DebugHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/DefaultHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/DefaultHandler.java index 0704c467402..343f02a7f73 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/DefaultHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/DefaultHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ErrorHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ErrorHandler.java index ee1e996f3e8..84088146cd3 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ErrorHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ErrorHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HandlerCollection.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HandlerCollection.java index 0018d17ed7c..f7697255b06 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HandlerCollection.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HandlerCollection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HandlerList.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HandlerList.java index 7ae42e1c920..32ec00183ea 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HandlerList.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HandlerList.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HandlerWrapper.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HandlerWrapper.java index d216eb2dd24..f27b27345a9 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HandlerWrapper.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HandlerWrapper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HotSwapHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HotSwapHandler.java index 448c2ba7fa8..21eb279fe28 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HotSwapHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/HotSwapHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/IPAccessHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/IPAccessHandler.java index 642d66ec741..c8119014e57 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/IPAccessHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/IPAccessHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/IdleTimeoutHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/IdleTimeoutHandler.java index ca6ad0d298b..2708f930581 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/IdleTimeoutHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/IdleTimeoutHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/InetAccessHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/InetAccessHandler.java index d3d4137301b..0573f237286 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/InetAccessHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/InetAccessHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ManagedAttributeListener.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ManagedAttributeListener.java index 11e3ecc91c1..3d7291cddc3 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ManagedAttributeListener.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ManagedAttributeListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/MovedContextHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/MovedContextHandler.java index c0622078303..876e17b9391 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/MovedContextHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/MovedContextHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/RequestLogHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/RequestLogHandler.java index e30764a2e92..4fac5e62856 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/RequestLogHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/RequestLogHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ResourceHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ResourceHandler.java index b568b3defbb..362266a4486 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ResourceHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ResourceHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ScopedHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ScopedHandler.java index e0b8c913b12..27fc8cdd849 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ScopedHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ScopedHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/SecuredRedirectHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/SecuredRedirectHandler.java index ec20668b960..619f2fc5dbf 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/SecuredRedirectHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/SecuredRedirectHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -72,4 +72,4 @@ public class SecuredRedirectHandler extends AbstractHandler baseRequest.setHandled(true); } -} \ No newline at end of file +} diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ShutdownHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ShutdownHandler.java index fbae27d9231..7a2355e0891 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ShutdownHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ShutdownHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/StatisticsHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/StatisticsHandler.java index d22a49c72fd..139d927e584 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/StatisticsHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/StatisticsHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ThreadLimitHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ThreadLimitHandler.java index a8b7c36876c..d53e88785a1 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ThreadLimitHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ThreadLimitHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/GzipFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/GzipFactory.java index 392dee684b1..449c1c341d3 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/GzipFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/GzipFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/GzipHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/GzipHandler.java index 719a23715ae..34f555c9c6a 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/GzipHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/GzipHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/GzipHttpInputInterceptor.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/GzipHttpInputInterceptor.java index b40f64d38b3..9fedb2b3938 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/GzipHttpInputInterceptor.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/GzipHttpInputInterceptor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/GzipHttpOutputInterceptor.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/GzipHttpOutputInterceptor.java index 6585f788924..4612ce81764 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/GzipHttpOutputInterceptor.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/GzipHttpOutputInterceptor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/package-info.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/package-info.java index 758835b0a42..cf287c516e1 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/package-info.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/jmx/AbstractHandlerMBean.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/jmx/AbstractHandlerMBean.java index 201a0ef920d..dadb4467268 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/jmx/AbstractHandlerMBean.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/jmx/AbstractHandlerMBean.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/jmx/ContextHandlerMBean.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/jmx/ContextHandlerMBean.java index 5ccbd6c0276..88d6f2dc425 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/jmx/ContextHandlerMBean.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/jmx/ContextHandlerMBean.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/jmx/package-info.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/jmx/package-info.java index b49e1083bb9..b4b9a8b0d34 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/jmx/package-info.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/jmx/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/package-info.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/package-info.java index c10b43bb411..819ece8c1af 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/package-info.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/jmx/AbstractConnectorMBean.java b/jetty-server/src/main/java/org/eclipse/jetty/server/jmx/AbstractConnectorMBean.java index 2d51bba9d35..09b1b07f029 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/jmx/AbstractConnectorMBean.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/jmx/AbstractConnectorMBean.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/jmx/ServerMBean.java b/jetty-server/src/main/java/org/eclipse/jetty/server/jmx/ServerMBean.java index 0c612b40d4b..876c9883f29 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/jmx/ServerMBean.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/jmx/ServerMBean.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/jmx/package-info.java b/jetty-server/src/main/java/org/eclipse/jetty/server/jmx/package-info.java index 30d296ba3b1..7c707a93f85 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/jmx/package-info.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/jmx/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/nio/NetworkTrafficSelectChannelConnector.java b/jetty-server/src/main/java/org/eclipse/jetty/server/nio/NetworkTrafficSelectChannelConnector.java index 080b08ca146..90b9c712e60 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/nio/NetworkTrafficSelectChannelConnector.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/nio/NetworkTrafficSelectChannelConnector.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/nio/package-info.java b/jetty-server/src/main/java/org/eclipse/jetty/server/nio/package-info.java index b982d4271a7..61933a3948b 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/nio/package-info.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/nio/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/package-info.java b/jetty-server/src/main/java/org/eclipse/jetty/server/package-info.java index 2d46031149c..307d4a04fe7 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/package-info.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionCache.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionCache.java index 1f22ba2e2c4..5520a661bfd 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionCache.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionCache.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionDataStore.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionDataStore.java index 95037c85e47..a6a99050de3 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionDataStore.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionDataStore.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionDataStoreFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionDataStoreFactory.java index 5cc4db63198..5234818f1eb 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionDataStoreFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionDataStoreFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/CachingSessionDataStore.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/CachingSessionDataStore.java index 71e5610bc99..5541001567e 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/CachingSessionDataStore.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/CachingSessionDataStore.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/CachingSessionDataStoreFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/CachingSessionDataStoreFactory.java index ce055233733..df397c09601 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/CachingSessionDataStoreFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/CachingSessionDataStoreFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/DatabaseAdaptor.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/DatabaseAdaptor.java index aff58611792..ef6275f1dd3 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/DatabaseAdaptor.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/DatabaseAdaptor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/DefaultSessionCache.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/DefaultSessionCache.java index e0335feba49..8ec5bc9c15a 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/DefaultSessionCache.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/DefaultSessionCache.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/DefaultSessionCacheFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/DefaultSessionCacheFactory.java index 193b9746e45..86c338aa112 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/DefaultSessionCacheFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/DefaultSessionCacheFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/DefaultSessionIdManager.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/DefaultSessionIdManager.java index 70770c6fa7a..d97fb498a77 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/DefaultSessionIdManager.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/DefaultSessionIdManager.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/FileSessionDataStore.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/FileSessionDataStore.java index 82b2f7edbc4..9ff531e2a40 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/FileSessionDataStore.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/FileSessionDataStore.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/FileSessionDataStoreFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/FileSessionDataStoreFactory.java index 7179b8d3eea..1e088a8b864 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/FileSessionDataStoreFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/FileSessionDataStoreFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/HouseKeeper.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/HouseKeeper.java index 4dc1c17daf7..82bc5e1f4d1 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/HouseKeeper.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/HouseKeeper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/JDBCSessionDataStore.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/JDBCSessionDataStore.java index 447d2cfd6c3..a8aff42491b 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/JDBCSessionDataStore.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/JDBCSessionDataStore.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/JDBCSessionDataStoreFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/JDBCSessionDataStoreFactory.java index 61fc43433ef..d2f5e22374c 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/JDBCSessionDataStoreFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/JDBCSessionDataStoreFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionCache.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionCache.java index b986efd0644..b629b9e1de5 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionCache.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionCache.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionCacheFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionCacheFactory.java index 958e7eaa8b4..925b59c48e8 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionCacheFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionCacheFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionDataStore.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionDataStore.java index f1c9914a826..dd863b06a0a 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionDataStore.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionDataStore.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionDataStoreFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionDataStoreFactory.java index 5a6fd532b55..59cd0df98bc 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionDataStoreFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/NullSessionDataStoreFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/Session.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/Session.java index cd0fe8c3d03..c7dc82c5d7e 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/Session.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/Session.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionCache.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionCache.java index ecf99fd1ae3..10fdd933935 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionCache.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionCache.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionCacheFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionCacheFactory.java index b9907fe1de2..bdd58f48858 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionCacheFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionCacheFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionContext.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionContext.java index d982a469638..70e9ef8cdf3 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionContext.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionContext.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionData.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionData.java index 6a70f16a53b..6d1e7b8018f 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionData.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionData.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionDataMap.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionDataMap.java index c7fdf9cf5c9..dcc182eeb95 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionDataMap.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionDataMap.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -67,4 +67,4 @@ public interface SessionDataMap extends LifeCycle public boolean delete (String id) throws Exception; -} \ No newline at end of file +} diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionDataMapFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionDataMapFactory.java index 638b105c63d..fde18f21e1a 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionDataMapFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionDataMapFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionDataStore.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionDataStore.java index 75652fb39e4..c33e03a5179 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionDataStore.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionDataStore.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionDataStoreFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionDataStoreFactory.java index 80f35c8a850..46854ec0df8 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionDataStoreFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionDataStoreFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java index 0879636f0d8..ef650dc60a6 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/UnreadableSessionDataException.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/UnreadableSessionDataException.java index d6bc38b378f..41434cf58e9 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/UnreadableSessionDataException.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/UnreadableSessionDataException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/UnwriteableSessionDataException.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/UnwriteableSessionDataException.java index 61e51b304b3..b9be5614693 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/UnwriteableSessionDataException.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/UnwriteableSessionDataException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/package-info.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/package-info.java index bca4c91baeb..4ca53199245 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/package-info.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/AbstractHttpTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/AbstractHttpTest.java index a49653b3cbf..415d75558eb 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/AbstractHttpTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/AbstractHttpTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/AsyncRequestReadTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/AsyncRequestReadTest.java index ba5053896d4..d7297529d97 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/AsyncRequestReadTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/AsyncRequestReadTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/AsyncStressTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/AsyncStressTest.java index bda5d7b6598..5982de96d0a 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/AsyncStressTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/AsyncStressTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/CheckReverseProxyHeadersTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/CheckReverseProxyHeadersTest.java index 149d458d872..1c8ff509085 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/CheckReverseProxyHeadersTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/CheckReverseProxyHeadersTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ClassLoaderDumpTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ClassLoaderDumpTest.java index 3f8778511d6..43a82cd0717 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ClassLoaderDumpTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ClassLoaderDumpTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ConnectionOpenCloseTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ConnectionOpenCloseTest.java index b922ceb0906..159b54f4201 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ConnectionOpenCloseTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ConnectionOpenCloseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ConnectorCloseTestBase.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ConnectorCloseTestBase.java index 96b5e6ef7ce..1aa3c545a5a 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ConnectorCloseTestBase.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ConnectorCloseTestBase.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ConnectorTimeoutTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ConnectorTimeoutTest.java index 2c500154ec4..c6bb4a2bcf7 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ConnectorTimeoutTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ConnectorTimeoutTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/CookieCutterTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/CookieCutterTest.java index 8419d9462f5..ec534a1af5c 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/CookieCutterTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/CookieCutterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/CookieCutter_LenientTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/CookieCutter_LenientTest.java index 906a0a22b06..4ea782aa15a 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/CookieCutter_LenientTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/CookieCutter_LenientTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/CustomResourcesMonitorTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/CustomResourcesMonitorTest.java index 0048f34fcdb..3673cfd4327 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/CustomResourcesMonitorTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/CustomResourcesMonitorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/DumpHandler.java b/jetty-server/src/test/java/org/eclipse/jetty/server/DumpHandler.java index e845b8b627a..47fc9fc0ac0 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/DumpHandler.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/DumpHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ErrorHandlerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ErrorHandlerTest.java index f2261e1cc69..b27477889db 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ErrorHandlerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ErrorHandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ExtendedServerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ExtendedServerTest.java index 8b0c765638e..07bb50db3a1 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ExtendedServerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ExtendedServerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ForwardedRequestCustomizerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ForwardedRequestCustomizerTest.java index 873b5e337a1..cc15cba1957 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ForwardedRequestCustomizerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ForwardedRequestCustomizerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/GracefulStopTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/GracefulStopTest.java index 2cb23ede8a4..b6a83d254a7 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/GracefulStopTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/GracefulStopTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/HalfCloseTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/HalfCloseTest.java index ddcaa1abae8..ddb0581dd8c 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/HalfCloseTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/HalfCloseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/HostHeaderCustomizerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/HostHeaderCustomizerTest.java index bfa036875d7..4668e34ec56 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/HostHeaderCustomizerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/HostHeaderCustomizerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpChannelEventTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpChannelEventTest.java index d09d570b0ea..8e30ebc6771 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpChannelEventTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpChannelEventTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpConnectionTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpConnectionTest.java index 811b22a8093..918a112042e 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpConnectionTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpConnectionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpInputAsyncStateTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpInputAsyncStateTest.java index 58dd8d6bb49..c79089fbef9 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpInputAsyncStateTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpInputAsyncStateTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpInputTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpInputTest.java index 39c6c3a87de..45cfd43c8f0 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpInputTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpInputTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpManyWaysToAsyncCommitBadBehaviourTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpManyWaysToAsyncCommitBadBehaviourTest.java index dc0ac7ce03d..1979e4b66da 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpManyWaysToAsyncCommitBadBehaviourTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpManyWaysToAsyncCommitBadBehaviourTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpManyWaysToAsyncCommitTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpManyWaysToAsyncCommitTest.java index c668a017ddc..0f5bae09f2b 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpManyWaysToAsyncCommitTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpManyWaysToAsyncCommitTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpManyWaysToCommitTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpManyWaysToCommitTest.java index 7c68256f3fb..2093e39376e 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpManyWaysToCommitTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpManyWaysToCommitTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpOutputTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpOutputTest.java index 9f6a6253585..735d81d128e 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpOutputTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpOutputTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpServerTestBase.java b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpServerTestBase.java index 45c11c43b9a..635924e14ab 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpServerTestBase.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpServerTestBase.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpServerTestFixture.java b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpServerTestFixture.java index c86691db5b2..e521d4693df 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpServerTestFixture.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpServerTestFixture.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpVersionCustomizerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpVersionCustomizerTest.java index 6d95c1fcdba..1a36d023257 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpVersionCustomizerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpVersionCustomizerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpWriterTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpWriterTest.java index 7543f94ced0..82c056cde2a 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/HttpWriterTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/HttpWriterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/InclusiveByteRangeTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/InclusiveByteRangeTest.java index 46263412c9d..997c3ca5355 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/InclusiveByteRangeTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/InclusiveByteRangeTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/InsufficientThreadsDetectionTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/InsufficientThreadsDetectionTest.java index fb13cd58978..b3c5a229822 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/InsufficientThreadsDetectionTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/InsufficientThreadsDetectionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/LocalAsyncContextTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/LocalAsyncContextTest.java index f92f1354f86..40963ce3e61 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/LocalAsyncContextTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/LocalAsyncContextTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/LocalConnectorTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/LocalConnectorTest.java index 2aaf7e87a72..426e544351f 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/LocalConnectorTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/LocalConnectorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/LowResourcesMonitorTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/LowResourcesMonitorTest.java index 6cebfcdada6..2b46f56cb94 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/LowResourcesMonitorTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/LowResourcesMonitorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/NetworkTrafficListenerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/NetworkTrafficListenerTest.java index b37b7f90b64..58cd88779c5 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/NetworkTrafficListenerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/NetworkTrafficListenerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/NotAcceptingTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/NotAcceptingTest.java index 17c0345822e..e4f29749d0e 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/NotAcceptingTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/NotAcceptingTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/PartialRFC2616Test.java b/jetty-server/src/test/java/org/eclipse/jetty/server/PartialRFC2616Test.java index 5d2cf086fe2..9179265db1d 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/PartialRFC2616Test.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/PartialRFC2616Test.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ProxyConnectionTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ProxyConnectionTest.java index 913d2fffaa7..579f6305194 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ProxyConnectionTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ProxyConnectionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ProxyProtocolTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ProxyProtocolTest.java index 3d3249a7d9e..8c32d508a1b 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ProxyProtocolTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ProxyProtocolTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/RequestTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/RequestTest.java index 4b8ec31ac4f..425a9ae7b2e 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/RequestTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/RequestTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ResourceCacheTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ResourceCacheTest.java index 446cc3f4682..e4e0f11e385 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ResourceCacheTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ResourceCacheTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ResponseTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ResponseTest.java index 49e837b5b14..812519b8210 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ResponseTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ResponseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorAsyncContextTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorAsyncContextTest.java index 164e3d6f3c6..bd10f9e49ee 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorAsyncContextTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorAsyncContextTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorCloseTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorCloseTest.java index 848dafa97eb..3d858bc8fe9 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorCloseTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorCloseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorHttpServerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorHttpServerTest.java index 5724e364e08..5949c52c3b8 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorHttpServerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorHttpServerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTest.java index 6642057d8ab..f2c97ee9d7d 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTimeoutTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTimeoutTest.java index 36f233a0003..cc7a7948750 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTimeoutTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorTimeoutTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ShutdownMonitorTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ShutdownMonitorTest.java index 76fd9486a59..c91d5289b71 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ShutdownMonitorTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ShutdownMonitorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/SlowClientWithPipelinedRequestTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/SlowClientWithPipelinedRequestTest.java index 3cd93a4b4c3..3dc45dd5017 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/SlowClientWithPipelinedRequestTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/SlowClientWithPipelinedRequestTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/StressTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/StressTest.java index 41d673c031e..f172887a57b 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/StressTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/StressTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/SuspendHandler.java b/jetty-server/src/test/java/org/eclipse/jetty/server/SuspendHandler.java index 68907b1cce9..1f0e02cdb08 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/SuspendHandler.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/SuspendHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ThreadStarvationTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ThreadStarvationTest.java index 08116346aa8..3ddb18825cb 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ThreadStarvationTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ThreadStarvationTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/AllowAllVerifier.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/AllowAllVerifier.java index 553f8f33dee..3c369d76fb6 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/AllowAllVerifier.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/AllowAllVerifier.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/AllowSymLinkAliasCheckerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/AllowSymLinkAliasCheckerTest.java index 94ff99eb590..e0b89c90798 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/AllowSymLinkAliasCheckerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/AllowSymLinkAliasCheckerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/BufferedResponseHandlerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/BufferedResponseHandlerTest.java index 683b357f781..5c5c7986aca 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/BufferedResponseHandlerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/BufferedResponseHandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ContextHandlerCollectionTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ContextHandlerCollectionTest.java index fb478fb7e7b..b0eda81f5c3 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ContextHandlerCollectionTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ContextHandlerCollectionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ContextHandlerGetResourceTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ContextHandlerGetResourceTest.java index 0dd1f95efe5..4e047c8e55d 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ContextHandlerGetResourceTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ContextHandlerGetResourceTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ContextHandlerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ContextHandlerTest.java index 4a0f739040e..dff21b14281 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ContextHandlerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ContextHandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java index 1710798b6df..c53f332cfb6 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/CustomRequestLogTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/DebugHandlerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/DebugHandlerTest.java index 936a909a41f..2feb624dd67 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/DebugHandlerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/DebugHandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/DefaultHandlerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/DefaultHandlerTest.java index 2c1fd4edebd..a229967fda0 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/DefaultHandlerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/DefaultHandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/HandlerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/HandlerTest.java index 37d648f7adb..f8a8d8a614f 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/HandlerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/HandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/IPAccessHandlerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/IPAccessHandlerTest.java index be13ae5bfb9..02b9edba117 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/IPAccessHandlerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/IPAccessHandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/NcsaRequestLogTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/NcsaRequestLogTest.java index 48c23b98953..b9a7f113c6e 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/NcsaRequestLogTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/NcsaRequestLogTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ResourceHandlerRangeTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ResourceHandlerRangeTest.java index 49898253edb..71119f8ddf3 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ResourceHandlerRangeTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ResourceHandlerRangeTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ResourceHandlerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ResourceHandlerTest.java index 9bb4d3dd179..fdb5f428cda 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ResourceHandlerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ResourceHandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ScopedHandlerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ScopedHandlerTest.java index 447d7e0257c..88e5a47dcef 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ScopedHandlerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ScopedHandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/SecuredRedirectHandlerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/SecuredRedirectHandlerTest.java index 506cbc9a542..f95c4d43fb6 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/SecuredRedirectHandlerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/SecuredRedirectHandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ShutdownHandlerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ShutdownHandlerTest.java index 6e59da1d6c5..bc8e6c434d4 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ShutdownHandlerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ShutdownHandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/StatisticsHandlerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/StatisticsHandlerTest.java index d8bcbb19656..2ca574ee3c6 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/StatisticsHandlerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/StatisticsHandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ThreadLimitHandlerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ThreadLimitHandlerTest.java index 8bb3bca2a2f..b4b98d5a0f6 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ThreadLimitHandlerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/handler/ThreadLimitHandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/session/SessionCookieTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/session/SessionCookieTest.java index f79d597e071..d24e84c75ca 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/session/SessionCookieTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/session/SessionCookieTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLCloseTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLCloseTest.java index 344a620fc58..04033335e28 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLCloseTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLCloseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLEngineTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLEngineTest.java index af5f7b4b10f..4f2b68aa842 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLEngineTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLEngineTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLReadEOFAfterResponseTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLReadEOFAfterResponseTest.java index 827e958ee89..e6d027179a2 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLReadEOFAfterResponseTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLReadEOFAfterResponseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLSelectChannelConnectorLoadTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLSelectChannelConnectorLoadTest.java index a91feeb69d9..d1f68b93cd9 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLSelectChannelConnectorLoadTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SSLSelectChannelConnectorLoadTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SelectChannelServerSslTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SelectChannelServerSslTest.java index 9dfc1ffb8b9..7c1d0466aca 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SelectChannelServerSslTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SelectChannelServerSslTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SlowClientsTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SlowClientsTest.java index 540eff7351e..f66fa3be0be 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SlowClientsTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SlowClientsTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SniSslConnectionFactoryTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SniSslConnectionFactoryTest.java index 7f5aba94244..7b39695b5a4 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SniSslConnectionFactoryTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SniSslConnectionFactoryTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SslConnectionFactoryTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SslConnectionFactoryTest.java index 71335ce544d..03378b1864a 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SslConnectionFactoryTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SslConnectionFactoryTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SslContextFactoryReloadTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SslContextFactoryReloadTest.java index 674f13495b7..76ff9110bbc 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SslContextFactoryReloadTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SslContextFactoryReloadTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SslSelectChannelTimeoutTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SslSelectChannelTimeoutTest.java index 9f7e7b10541..d71c89d9e82 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SslSelectChannelTimeoutTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SslSelectChannelTimeoutTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SslUploadTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SslUploadTest.java index d3015f55164..707e6f8c874 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SslUploadTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SslUploadTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/BaseHolder.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/BaseHolder.java index 3b244704249..12e5337e43e 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/BaseHolder.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/BaseHolder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/DefaultServlet.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/DefaultServlet.java index 90582bb965a..69563a9c9f8 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/DefaultServlet.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/DefaultServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ErrorPageErrorHandler.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ErrorPageErrorHandler.java index 8629def9086..915da074375 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ErrorPageErrorHandler.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ErrorPageErrorHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterHolder.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterHolder.java index b4e03591156..1c9a29436c5 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterHolder.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterHolder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterMapping.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterMapping.java index 5b66fea8b1d..a170123e3fd 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterMapping.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterMapping.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/Holder.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/Holder.java index 66a16d6f552..9c41edeed71 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/Holder.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/Holder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/Invoker.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/Invoker.java index f827c192da8..b0608947539 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/Invoker.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/Invoker.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/JspPropertyGroupServlet.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/JspPropertyGroupServlet.java index 4c31ec3a3b8..e83e9853d5d 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/JspPropertyGroupServlet.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/JspPropertyGroupServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ListenerHolder.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ListenerHolder.java index c8ab56b5ffc..4c53bc3065d 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ListenerHolder.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ListenerHolder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/NoJspServlet.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/NoJspServlet.java index cefa625d8c2..c9550cdb9f0 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/NoJspServlet.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/NoJspServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletContextHandler.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletContextHandler.java index b4196f3197f..11bd7254d89 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletContextHandler.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletContextHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHandler.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHandler.java index c4406f3bb2a..d5c2b1917a4 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHandler.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHolder.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHolder.java index 30bc77031bc..66d242a3726 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHolder.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHolder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletMapping.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletMapping.java index a01c543fadf..fc58d31e464 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletMapping.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletMapping.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/Source.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/Source.java index d3b22ee3207..7cb8e69fead 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/Source.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/Source.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/StatisticsServlet.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/StatisticsServlet.java index 9a022fdc001..fd4f041e64a 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/StatisticsServlet.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/StatisticsServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/jmx/FilterMappingMBean.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/jmx/FilterMappingMBean.java index d544c1db502..5f33b5e6a1e 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/jmx/FilterMappingMBean.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/jmx/FilterMappingMBean.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/jmx/HolderMBean.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/jmx/HolderMBean.java index 50eca6477e1..c98ffafe52b 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/jmx/HolderMBean.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/jmx/HolderMBean.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/jmx/ServletMappingMBean.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/jmx/ServletMappingMBean.java index 19e7c828fdd..2a73b711155 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/jmx/ServletMappingMBean.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/jmx/ServletMappingMBean.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/jmx/package-info.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/jmx/package-info.java index 744afb6caf4..465174d010f 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/jmx/package-info.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/jmx/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/listener/ELContextCleaner.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/listener/ELContextCleaner.java index 278a0d3d08f..e4397ebb693 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/listener/ELContextCleaner.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/listener/ELContextCleaner.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/listener/IntrospectorCleaner.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/listener/IntrospectorCleaner.java index dfbd7c465cf..598fe89ca56 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/listener/IntrospectorCleaner.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/listener/IntrospectorCleaner.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/listener/package-info.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/listener/package-info.java index c06ecf11147..3c3424107fd 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/listener/package-info.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/listener/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/package-info.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/package-info.java index 6def5ddb828..7780853eaf3 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/package-info.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncContextDispatchWithQueryStrings.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncContextDispatchWithQueryStrings.java index 20b0d3be7e3..23b9ec1fb75 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncContextDispatchWithQueryStrings.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncContextDispatchWithQueryStrings.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncContextListenersTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncContextListenersTest.java index e2b3056991d..8001bb65257 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncContextListenersTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncContextListenersTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncContextTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncContextTest.java index 8d440e80d2a..6450cdcfcfa 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncContextTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncContextTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncListenerTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncListenerTest.java index fd40ad7dbf7..b2d2a22f9e6 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncListenerTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncListenerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncServletIOTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncServletIOTest.java index d0d080f7a57..484ee87b619 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncServletIOTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncServletIOTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncServletLongPollTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncServletLongPollTest.java index bd2e6242522..d4ad4af1256 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncServletLongPollTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncServletLongPollTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncServletTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncServletTest.java index 1f69ae1c852..e9e89bf1641 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncServletTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncServletTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ComplianceViolations2616Test.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ComplianceViolations2616Test.java index f9b8d430310..a96e14a36e5 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ComplianceViolations2616Test.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ComplianceViolations2616Test.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/CustomRequestLogTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/CustomRequestLogTest.java index bab1eb21ef2..d4cae832321 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/CustomRequestLogTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/CustomRequestLogTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletRangesTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletRangesTest.java index ce3dbe87f9c..fbb13d5b5fb 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletRangesTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletRangesTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletTest.java index e78fbd65e08..e23ecb914b3 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DispatcherForwardTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DispatcherForwardTest.java index 0396a03612b..ac4b12ffd50 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DispatcherForwardTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DispatcherForwardTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DispatcherTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DispatcherTest.java index d0238d88088..75cacda899e 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DispatcherTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DispatcherTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/EncodedURITest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/EncodedURITest.java index 765ec58f4de..50a5f2a57fb 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/EncodedURITest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/EncodedURITest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java index a0c230d5fec..e6414d7b561 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/FilterHolderTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/FilterHolderTest.java index 0624c47f923..b9b1e7315bc 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/FilterHolderTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/FilterHolderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/GzipHandlerTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/GzipHandlerTest.java index 48a39b7d2e7..7febc12f446 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/GzipHandlerTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/GzipHandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/HolderTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/HolderTest.java index 7fb197bb4e5..004fe3dc43e 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/HolderTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/HolderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/IncludedServletTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/IncludedServletTest.java index e555ccc680c..cddc47f02ec 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/IncludedServletTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/IncludedServletTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/InvokerTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/InvokerTest.java index 44f8ad4b56f..3b32d248ba1 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/InvokerTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/InvokerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/PostServletTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/PostServletTest.java index 771965e4938..f9eae8f2047 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/PostServletTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/PostServletTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/RequestHeadersTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/RequestHeadersTest.java index 19e903f318e..7bd02577415 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/RequestHeadersTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/RequestHeadersTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/RequestURITest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/RequestURITest.java index 60de8d37420..4a494fa41f7 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/RequestURITest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/RequestURITest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ResponseHeadersTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ResponseHeadersTest.java index 134825f5b32..ffaaed78bf0 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ResponseHeadersTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ResponseHeadersTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/SSLAsyncIOServletTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/SSLAsyncIOServletTest.java index bd787c1e811..c10acb1a33b 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/SSLAsyncIOServletTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/SSLAsyncIOServletTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletContextHandlerTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletContextHandlerTest.java index 9a67a85e5ff..db12d4eada4 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletContextHandlerTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletContextHandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletContextResourcesTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletContextResourcesTest.java index 6d90492f2e8..efb3eb38eb3 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletContextResourcesTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletContextResourcesTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletHandlerTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletHandlerTest.java index 838314875e7..3e0043841c8 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletHandlerTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletHandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletHolderTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletHolderTest.java index efe1e4e2156..350c4ce47b9 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletHolderTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletHolderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletRequestLogTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletRequestLogTest.java index 2ab0f0b5b7a..f1e9a2216ca 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletRequestLogTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletRequestLogTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletTester.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletTester.java index 557c52b4b4c..37d40d7daf1 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletTester.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ServletTester.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/StatisticsServletTest.java b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/StatisticsServletTest.java index 9f689efb89b..dc5ea061d35 100644 --- a/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/StatisticsServletTest.java +++ b/jetty-servlet/src/test/java/org/eclipse/jetty/servlet/StatisticsServletTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/AsyncGzipFilter.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/AsyncGzipFilter.java index c1706f6cbb7..1886d48c52c 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/AsyncGzipFilter.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/AsyncGzipFilter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/CGI.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/CGI.java index e47e343673d..63222907c08 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/CGI.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/CGI.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/CloseableDoSFilter.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/CloseableDoSFilter.java index 2136d755fc4..a84f936a866 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/CloseableDoSFilter.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/CloseableDoSFilter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/ConcatServlet.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/ConcatServlet.java index a17bfb9b9d3..a4b7df09f4d 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/ConcatServlet.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/ConcatServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/CrossOriginFilter.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/CrossOriginFilter.java index f61208695ee..d25f3f44d65 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/CrossOriginFilter.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/CrossOriginFilter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/DataRateLimitedServlet.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/DataRateLimitedServlet.java index aaf2bf1709b..f7392b7ff06 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/DataRateLimitedServlet.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/DataRateLimitedServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/DoSFilter.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/DoSFilter.java index 8fb7fab549d..c37d529a890 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/DoSFilter.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/DoSFilter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/EventSource.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/EventSource.java index a21089e62e8..54ca90c83b1 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/EventSource.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/EventSource.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/EventSourceServlet.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/EventSourceServlet.java index dfdcf5f9cd0..ad921656146 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/EventSourceServlet.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/EventSourceServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/GzipFilter.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/GzipFilter.java index c4de474dfa5..1bfdf0a945d 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/GzipFilter.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/GzipFilter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/HeaderFilter.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/HeaderFilter.java index 67e641cbeb4..890d817bedf 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/HeaderFilter.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/HeaderFilter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/IncludableGzipFilter.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/IncludableGzipFilter.java index 9b8a99cf00f..cf882aafa6c 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/IncludableGzipFilter.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/IncludableGzipFilter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/IncludeExcludeBasedFilter.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/IncludeExcludeBasedFilter.java index 1480324611b..3a00fa676d3 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/IncludeExcludeBasedFilter.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/IncludeExcludeBasedFilter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/MultiPartFilter.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/MultiPartFilter.java index b1f01913507..cb6caee3378 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/MultiPartFilter.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/MultiPartFilter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushCacheFilter.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushCacheFilter.java index c2c2d405a0f..6bbd176b0d1 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushCacheFilter.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushCacheFilter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushSessionCacheFilter.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushSessionCacheFilter.java index b223491de50..8e73a17b6b0 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushSessionCacheFilter.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushSessionCacheFilter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PutFilter.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PutFilter.java index 8d0e9280930..8e909e0e6b2 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PutFilter.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PutFilter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/QoSFilter.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/QoSFilter.java index 65d00182e79..79b1d108333 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/QoSFilter.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/QoSFilter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/WelcomeFilter.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/WelcomeFilter.java index a30efa06331..e67a0675067 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/WelcomeFilter.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/WelcomeFilter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/package-info.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/package-info.java index b0bf484f1be..53c92c95677 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/package-info.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/AsyncManipFilter.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/AsyncManipFilter.java index 6d2d219cd37..7c35d689e1d 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/AsyncManipFilter.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/AsyncManipFilter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/AsyncScheduledDispatchWrite.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/AsyncScheduledDispatchWrite.java index ed190efcbd0..5776bd4b2d4 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/AsyncScheduledDispatchWrite.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/AsyncScheduledDispatchWrite.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/AsyncTimeoutCompleteWrite.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/AsyncTimeoutCompleteWrite.java index e45f0cb90f2..3e2b54aca0a 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/AsyncTimeoutCompleteWrite.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/AsyncTimeoutCompleteWrite.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/AsyncTimeoutDispatchWrite.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/AsyncTimeoutDispatchWrite.java index dc572de2561..34ccfeac738 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/AsyncTimeoutDispatchWrite.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/AsyncTimeoutDispatchWrite.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/GzipContentLengthTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/GzipContentLengthTest.java index d7315836a5f..754b99efda4 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/GzipContentLengthTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/GzipContentLengthTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/GzipDefaultNoRecompressTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/GzipDefaultNoRecompressTest.java index 19100e59fbb..1f3cfae909c 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/GzipDefaultNoRecompressTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/GzipDefaultNoRecompressTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/GzipDefaultTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/GzipDefaultTest.java index 9d6b2ca2f8e..429941d7120 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/GzipDefaultTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/GzipDefaultTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/GzipTester.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/GzipTester.java index 38e7de40acc..807ba4c92c0 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/GzipTester.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/GzipTester.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/Hex.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/Hex.java index 135087f9f50..269c6fe9959 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/Hex.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/Hex.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/IncludedGzipMinSizeTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/IncludedGzipMinSizeTest.java index 95e19710c49..22a78d57a81 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/IncludedGzipMinSizeTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/IncludedGzipMinSizeTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/IncludedGzipTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/IncludedGzipTest.java index af031a0e15b..1ae43500561 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/IncludedGzipTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/IncludedGzipTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/NoOpOutputStream.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/NoOpOutputStream.java index 9892001b109..70a89685817 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/NoOpOutputStream.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/NoOpOutputStream.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/PassThruInputStream.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/PassThruInputStream.java index 47aab55f268..a663fcd7f0f 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/PassThruInputStream.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/PassThruInputStream.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestDirContentServlet.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestDirContentServlet.java index 9f02fb20d8c..abdbc79dfef 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestDirContentServlet.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestDirContentServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestMinGzipSizeServlet.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestMinGzipSizeServlet.java index b413688f1c6..b23a6532b20 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestMinGzipSizeServlet.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestMinGzipSizeServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletBufferTypeLengthWrite.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletBufferTypeLengthWrite.java index cbc231d5ea0..f673aba85d6 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletBufferTypeLengthWrite.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletBufferTypeLengthWrite.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletLengthStreamTypeWrite.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletLengthStreamTypeWrite.java index d0db613efad..fe45d73b12b 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletLengthStreamTypeWrite.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletLengthStreamTypeWrite.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletLengthTypeStreamWrite.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletLengthTypeStreamWrite.java index 69f97f887e8..8018352f36d 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletLengthTypeStreamWrite.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletLengthTypeStreamWrite.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletStreamLengthTypeWrite.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletStreamLengthTypeWrite.java index 4d3764dc17f..a2828831d61 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletStreamLengthTypeWrite.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletStreamLengthTypeWrite.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletStreamLengthTypeWriteWithFlush.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletStreamLengthTypeWriteWithFlush.java index 575cc93eb6c..f81fd5a87f8 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletStreamLengthTypeWriteWithFlush.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletStreamLengthTypeWriteWithFlush.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletStreamTypeLengthWrite.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletStreamTypeLengthWrite.java index 037d9aa10ea..1106aa25143 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletStreamTypeLengthWrite.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletStreamTypeLengthWrite.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletTypeLengthStreamWrite.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletTypeLengthStreamWrite.java index cbb724e16d3..77e909e2181 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletTypeLengthStreamWrite.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletTypeLengthStreamWrite.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletTypeStreamLengthWrite.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletTypeStreamLengthWrite.java index dc18e94ffc4..0a8efc5439b 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletTypeStreamLengthWrite.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestServletTypeStreamLengthWrite.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestStaticMimeTypeServlet.java b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestStaticMimeTypeServlet.java index dd42523f27f..0213776db98 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestStaticMimeTypeServlet.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/server/handler/gzip/TestStaticMimeTypeServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/AbstractDoSFilterTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/AbstractDoSFilterTest.java index fcb3cf6129b..581fc627b11 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/AbstractDoSFilterTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/AbstractDoSFilterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/CloseableDoSFilterTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/CloseableDoSFilterTest.java index b48a886e750..140f56d5407 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/CloseableDoSFilterTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/CloseableDoSFilterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/ConcatServletTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/ConcatServletTest.java index 18c3baa4fc8..3fcb9afe221 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/ConcatServletTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/ConcatServletTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/CrossOriginFilterTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/CrossOriginFilterTest.java index 30513b012c3..d55bfcfafee 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/CrossOriginFilterTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/CrossOriginFilterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/DataRateLimitedServletTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/DataRateLimitedServletTest.java index a4f7b7e57cd..63a5c5aaf3a 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/DataRateLimitedServletTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/DataRateLimitedServletTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/DoSFilterJMXTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/DoSFilterJMXTest.java index b319156dd6c..57bdd41f777 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/DoSFilterJMXTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/DoSFilterJMXTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/DoSFilterTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/DoSFilterTest.java index 7d369b15ae9..f358c0c3d06 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/DoSFilterTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/DoSFilterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/EventSourceServletTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/EventSourceServletTest.java index da57159d675..83bc6ef1d7a 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/EventSourceServletTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/EventSourceServletTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/GzipFilterLayeredTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/GzipFilterLayeredTest.java index 024a804360e..228e5b156cd 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/GzipFilterLayeredTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/GzipFilterLayeredTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/HeaderFilterTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/HeaderFilterTest.java index 4cd96250a60..003be1acb5b 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/HeaderFilterTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/HeaderFilterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/IncludeExcludeBasedFilterTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/IncludeExcludeBasedFilterTest.java index ba69119de76..ab87ccb0679 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/IncludeExcludeBasedFilterTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/IncludeExcludeBasedFilterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/MultipartFilterTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/MultipartFilterTest.java index befadefc1da..bb9252573a5 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/MultipartFilterTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/MultipartFilterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/PutFilterTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/PutFilterTest.java index 102a9b24bd3..a57d6faa6d4 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/PutFilterTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/PutFilterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/QoSFilterTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/QoSFilterTest.java index a0ae467df35..f6c6b219299 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/QoSFilterTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/QoSFilterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/ThreadStarvationTest.java b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/ThreadStarvationTest.java index 0b91c557770..a62a1eddeca 100644 --- a/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/ThreadStarvationTest.java +++ b/jetty-servlets/src/test/java/org/eclipse/jetty/servlets/ThreadStarvationTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-spring/src/main/java/org/eclipse/jetty/spring/Main.java b/jetty-spring/src/main/java/org/eclipse/jetty/spring/Main.java index 0f175a1fce1..478037c7af2 100644 --- a/jetty-spring/src/main/java/org/eclipse/jetty/spring/Main.java +++ b/jetty-spring/src/main/java/org/eclipse/jetty/spring/Main.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-spring/src/main/java/org/eclipse/jetty/spring/SpringConfigurationProcessor.java b/jetty-spring/src/main/java/org/eclipse/jetty/spring/SpringConfigurationProcessor.java index 9e660e2310a..cc8a7ba7143 100644 --- a/jetty-spring/src/main/java/org/eclipse/jetty/spring/SpringConfigurationProcessor.java +++ b/jetty-spring/src/main/java/org/eclipse/jetty/spring/SpringConfigurationProcessor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-spring/src/main/java/org/eclipse/jetty/spring/SpringConfigurationProcessorFactory.java b/jetty-spring/src/main/java/org/eclipse/jetty/spring/SpringConfigurationProcessorFactory.java index ec03e076518..92fe18eb818 100644 --- a/jetty-spring/src/main/java/org/eclipse/jetty/spring/SpringConfigurationProcessorFactory.java +++ b/jetty-spring/src/main/java/org/eclipse/jetty/spring/SpringConfigurationProcessorFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-spring/src/main/java/org/eclipse/jetty/spring/package-info.java b/jetty-spring/src/main/java/org/eclipse/jetty/spring/package-info.java index b77c3c2ed80..d80e60f56c9 100644 --- a/jetty-spring/src/main/java/org/eclipse/jetty/spring/package-info.java +++ b/jetty-spring/src/main/java/org/eclipse/jetty/spring/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-spring/src/test/java/org/eclipse/jetty/spring/SpringXmlConfigurationTest.java b/jetty-spring/src/test/java/org/eclipse/jetty/spring/SpringXmlConfigurationTest.java index 8b7e9592326..6e7bd866c9e 100644 --- a/jetty-spring/src/test/java/org/eclipse/jetty/spring/SpringXmlConfigurationTest.java +++ b/jetty-spring/src/test/java/org/eclipse/jetty/spring/SpringXmlConfigurationTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-spring/src/test/java/org/eclipse/jetty/spring/TestConfiguration.java b/jetty-spring/src/test/java/org/eclipse/jetty/spring/TestConfiguration.java index 4fc3112efa0..54c9531bb20 100644 --- a/jetty-spring/src/test/java/org/eclipse/jetty/spring/TestConfiguration.java +++ b/jetty-spring/src/test/java/org/eclipse/jetty/spring/TestConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/BaseBuilder.java b/jetty-start/src/main/java/org/eclipse/jetty/start/BaseBuilder.java index 42607af783e..f0d03e4241d 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/BaseBuilder.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/BaseBuilder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/BaseHome.java b/jetty-start/src/main/java/org/eclipse/jetty/start/BaseHome.java index 23e2ea6d096..68307c36a8a 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/BaseHome.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/BaseHome.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/Classpath.java b/jetty-start/src/main/java/org/eclipse/jetty/start/Classpath.java index 66e1850661d..f9ca7870947 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/Classpath.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/Classpath.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/CommandLineBuilder.java b/jetty-start/src/main/java/org/eclipse/jetty/start/CommandLineBuilder.java index 5b9e0d0273d..dc274efbed6 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/CommandLineBuilder.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/CommandLineBuilder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/FS.java b/jetty-start/src/main/java/org/eclipse/jetty/start/FS.java index 817c35e2dff..3fecc5e5a0e 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/FS.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/FS.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/FileArg.java b/jetty-start/src/main/java/org/eclipse/jetty/start/FileArg.java index c9b32ee1021..419b359fd53 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/FileArg.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/FileArg.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/FileInitializer.java b/jetty-start/src/main/java/org/eclipse/jetty/start/FileInitializer.java index 9c0457e23a1..422482e03ed 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/FileInitializer.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/FileInitializer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/JarVersion.java b/jetty-start/src/main/java/org/eclipse/jetty/start/JarVersion.java index 65c711804ad..468d1dbf9e6 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/JarVersion.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/JarVersion.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/Licensing.java b/jetty-start/src/main/java/org/eclipse/jetty/start/Licensing.java index 4cf604042b0..134fd1e4827 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/Licensing.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/Licensing.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/Main.java b/jetty-start/src/main/java/org/eclipse/jetty/start/Main.java index c032034f2ed..1d330efd758 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/Main.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/Main.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/Module.java b/jetty-start/src/main/java/org/eclipse/jetty/start/Module.java index d449001d39c..946107d97d4 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/Module.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/Module.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/ModuleGraphWriter.java b/jetty-start/src/main/java/org/eclipse/jetty/start/ModuleGraphWriter.java index f96fca13d1a..6e6633570d1 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/ModuleGraphWriter.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/ModuleGraphWriter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/Modules.java b/jetty-start/src/main/java/org/eclipse/jetty/start/Modules.java index e5930122ca4..0aac521e0aa 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/Modules.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/Modules.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/NaturalSort.java b/jetty-start/src/main/java/org/eclipse/jetty/start/NaturalSort.java index 01ceeebd860..6a1f5911b84 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/NaturalSort.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/NaturalSort.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/PathFinder.java b/jetty-start/src/main/java/org/eclipse/jetty/start/PathFinder.java index ce7f8078e64..ca02d809445 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/PathFinder.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/PathFinder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -166,4 +166,4 @@ public class PathFinder extends SimpleFileVisitor return super.visitFileFailed(file,exc); } } -} \ No newline at end of file +} diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/PathMatchers.java b/jetty-start/src/main/java/org/eclipse/jetty/start/PathMatchers.java index a0f04e437f1..c56d05796e9 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/PathMatchers.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/PathMatchers.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/Props.java b/jetty-start/src/main/java/org/eclipse/jetty/start/Props.java index 73f9775ef6a..6148971baca 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/Props.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/Props.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/PropsException.java b/jetty-start/src/main/java/org/eclipse/jetty/start/PropsException.java index 36cc2cb0607..6e90bd69f14 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/PropsException.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/PropsException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/RawArgs.java b/jetty-start/src/main/java/org/eclipse/jetty/start/RawArgs.java index 94e04f61f08..253680b1fa5 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/RawArgs.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/RawArgs.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java b/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java index 51b90d96d50..a074efd5123 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/StartIni.java b/jetty-start/src/main/java/org/eclipse/jetty/start/StartIni.java index 08a2ddf43ad..373dffda4d8 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/StartIni.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/StartIni.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/StartLog.java b/jetty-start/src/main/java/org/eclipse/jetty/start/StartLog.java index 0817fa19e00..b645a17641f 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/StartLog.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/StartLog.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/TextFile.java b/jetty-start/src/main/java/org/eclipse/jetty/start/TextFile.java index 21a9b4edc40..44c7c456973 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/TextFile.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/TextFile.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/UsageException.java b/jetty-start/src/main/java/org/eclipse/jetty/start/UsageException.java index 5c3905622c6..4b880dfcd94 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/UsageException.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/UsageException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/Utils.java b/jetty-start/src/main/java/org/eclipse/jetty/start/Utils.java index 42c0adb58df..02820a7a9d9 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/Utils.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/Utils.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/Version.java b/jetty-start/src/main/java/org/eclipse/jetty/start/Version.java index 8684588578d..9eee0f8de83 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/Version.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/Version.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/builders/StartDirBuilder.java b/jetty-start/src/main/java/org/eclipse/jetty/start/builders/StartDirBuilder.java index 9f539f9152d..fc7c2871aff 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/builders/StartDirBuilder.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/builders/StartDirBuilder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/builders/StartIniBuilder.java b/jetty-start/src/main/java/org/eclipse/jetty/start/builders/StartIniBuilder.java index c45a6409454..ec81f6f3cf9 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/builders/StartIniBuilder.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/builders/StartIniBuilder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/config/CommandLineConfigSource.java b/jetty-start/src/main/java/org/eclipse/jetty/start/config/CommandLineConfigSource.java index f0c9e07b2a8..c587f97353a 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/config/CommandLineConfigSource.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/config/CommandLineConfigSource.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/config/ConfigSource.java b/jetty-start/src/main/java/org/eclipse/jetty/start/config/ConfigSource.java index a7de6ff6c9c..dd8d6c1e5e6 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/config/ConfigSource.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/config/ConfigSource.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/config/ConfigSources.java b/jetty-start/src/main/java/org/eclipse/jetty/start/config/ConfigSources.java index 125d3cff771..657b19175b9 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/config/ConfigSources.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/config/ConfigSources.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/config/DirConfigSource.java b/jetty-start/src/main/java/org/eclipse/jetty/start/config/DirConfigSource.java index 6c2eb54b54b..684f7c65436 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/config/DirConfigSource.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/config/DirConfigSource.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/config/JettyBaseConfigSource.java b/jetty-start/src/main/java/org/eclipse/jetty/start/config/JettyBaseConfigSource.java index 935bbcde626..89829f694ba 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/config/JettyBaseConfigSource.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/config/JettyBaseConfigSource.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/config/JettyHomeConfigSource.java b/jetty-start/src/main/java/org/eclipse/jetty/start/config/JettyHomeConfigSource.java index 89ba155934a..edcc23811a1 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/config/JettyHomeConfigSource.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/config/JettyHomeConfigSource.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/BaseHomeFileInitializer.java b/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/BaseHomeFileInitializer.java index ad8eea22cba..bbc8ce6c046 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/BaseHomeFileInitializer.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/BaseHomeFileInitializer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/LocalFileInitializer.java b/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/LocalFileInitializer.java index 622abe5f65a..fe57c52cdc4 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/LocalFileInitializer.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/LocalFileInitializer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/MavenLocalRepoFileInitializer.java b/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/MavenLocalRepoFileInitializer.java index 23bda3963e4..a5695324807 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/MavenLocalRepoFileInitializer.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/MavenLocalRepoFileInitializer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/TestFileInitializer.java b/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/TestFileInitializer.java index 96277e497c6..06974b9daa9 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/TestFileInitializer.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/TestFileInitializer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/UriFileInitializer.java b/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/UriFileInitializer.java index 4a0fd13a832..2f26ccc209a 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/UriFileInitializer.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/fileinits/UriFileInitializer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/package-info.java b/jetty-start/src/main/java/org/eclipse/jetty/start/package-info.java index d97ae826bc4..b17ea04f3a6 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/package-info.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/BaseHomeTest.java b/jetty-start/src/test/java/org/eclipse/jetty/start/BaseHomeTest.java index 2febb6bff73..93cfd42754a 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/BaseHomeTest.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/BaseHomeTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/CommandLineBuilderTest.java b/jetty-start/src/test/java/org/eclipse/jetty/start/CommandLineBuilderTest.java index 6877fb71f67..09972559749 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/CommandLineBuilderTest.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/CommandLineBuilderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/ConfigurationAssert.java b/jetty-start/src/test/java/org/eclipse/jetty/start/ConfigurationAssert.java index 412f2ea3837..98fe963b020 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/ConfigurationAssert.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/ConfigurationAssert.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/FSTest.java b/jetty-start/src/test/java/org/eclipse/jetty/start/FSTest.java index 83bf6cba78e..4ae4ff3db13 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/FSTest.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/FSTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/FileArgTest.java b/jetty-start/src/test/java/org/eclipse/jetty/start/FileArgTest.java index bca5844317e..248f9fd4240 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/FileArgTest.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/FileArgTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/IncludeJettyDirTest.java b/jetty-start/src/test/java/org/eclipse/jetty/start/IncludeJettyDirTest.java index 472d67604af..638cf0cb0e1 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/IncludeJettyDirTest.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/IncludeJettyDirTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/JarVersionTest.java b/jetty-start/src/test/java/org/eclipse/jetty/start/JarVersionTest.java index cd359d7add3..231de2a1a02 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/JarVersionTest.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/JarVersionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/MainTest.java b/jetty-start/src/test/java/org/eclipse/jetty/start/MainTest.java index db5b7247937..d0011fb1ea8 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/MainTest.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/MainTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/ModuleGraphWriterTest.java b/jetty-start/src/test/java/org/eclipse/jetty/start/ModuleGraphWriterTest.java index 0b3af4ee7e5..c5edb5dd2d2 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/ModuleGraphWriterTest.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/ModuleGraphWriterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/ModuleTest.java b/jetty-start/src/test/java/org/eclipse/jetty/start/ModuleTest.java index 8f6b8b252c5..e893fda065a 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/ModuleTest.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/ModuleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/ModulesTest.java b/jetty-start/src/test/java/org/eclipse/jetty/start/ModulesTest.java index 6ffcbcaaa1d..9b5467c0c59 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/ModulesTest.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/ModulesTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/PathFinderTest.java b/jetty-start/src/test/java/org/eclipse/jetty/start/PathFinderTest.java index 9f2889114a7..9c8be8ce47c 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/PathFinderTest.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/PathFinderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/PathMatchersAbsoluteTest.java b/jetty-start/src/test/java/org/eclipse/jetty/start/PathMatchersAbsoluteTest.java index b48066697ce..1c35ced53ef 100755 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/PathMatchersAbsoluteTest.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/PathMatchersAbsoluteTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/PathMatchersSearchRootTest.java b/jetty-start/src/test/java/org/eclipse/jetty/start/PathMatchersSearchRootTest.java index 65aece57cc7..fc9587e0a91 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/PathMatchersSearchRootTest.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/PathMatchersSearchRootTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/PropertyDump.java b/jetty-start/src/test/java/org/eclipse/jetty/start/PropertyDump.java index 74c83d97e74..83a57bed538 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/PropertyDump.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/PropertyDump.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/PropertyPassingTest.java b/jetty-start/src/test/java/org/eclipse/jetty/start/PropertyPassingTest.java index 50a7cf4c343..fc063b9f1e5 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/PropertyPassingTest.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/PropertyPassingTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/PropsTest.java b/jetty-start/src/test/java/org/eclipse/jetty/start/PropsTest.java index 6dfdbf7566f..2031a388f02 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/PropsTest.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/PropsTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/StartMatchers.java b/jetty-start/src/test/java/org/eclipse/jetty/start/StartMatchers.java index 75463aa71c8..2f5b64ead46 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/StartMatchers.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/StartMatchers.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/TestBadUseCases.java b/jetty-start/src/test/java/org/eclipse/jetty/start/TestBadUseCases.java index b38f11d0285..f54c942447a 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/TestBadUseCases.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/TestBadUseCases.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/TestEnv.java b/jetty-start/src/test/java/org/eclipse/jetty/start/TestEnv.java index 853c7cf943f..955b3f01df0 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/TestEnv.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/TestEnv.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/TestUseCases.java b/jetty-start/src/test/java/org/eclipse/jetty/start/TestUseCases.java index e9d149a11c6..6d044373505 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/TestUseCases.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/TestUseCases.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/VersionTest.java b/jetty-start/src/test/java/org/eclipse/jetty/start/VersionTest.java index 80cb57570d8..6113a3b5928 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/VersionTest.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/VersionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/config/ConfigSourcesTest.java b/jetty-start/src/test/java/org/eclipse/jetty/start/config/ConfigSourcesTest.java index 409c1a930fe..7fcfe113907 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/config/ConfigSourcesTest.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/config/ConfigSourcesTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/fileinits/MavenLocalRepoFileInitializerTest.java b/jetty-start/src/test/java/org/eclipse/jetty/start/fileinits/MavenLocalRepoFileInitializerTest.java index 8342a96d96a..ee01bea74f0 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/fileinits/MavenLocalRepoFileInitializerTest.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/fileinits/MavenLocalRepoFileInitializerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/util/CorrectMavenCentralRefs.java b/jetty-start/src/test/java/org/eclipse/jetty/start/util/CorrectMavenCentralRefs.java index a15c14ccbc2..4083f97a700 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/util/CorrectMavenCentralRefs.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/util/CorrectMavenCentralRefs.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/util/RebuildTestResources.java b/jetty-start/src/test/java/org/eclipse/jetty/start/util/RebuildTestResources.java index a73e63672f1..45538cfce1c 100644 --- a/jetty-start/src/test/java/org/eclipse/jetty/start/util/RebuildTestResources.java +++ b/jetty-start/src/test/java/org/eclipse/jetty/start/util/RebuildTestResources.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-unixsocket/src/main/java/org/eclipse/jetty/unixsocket/UnixSocketConnector.java b/jetty-unixsocket/src/main/java/org/eclipse/jetty/unixsocket/UnixSocketConnector.java index 9690d315e36..7767e772097 100644 --- a/jetty-unixsocket/src/main/java/org/eclipse/jetty/unixsocket/UnixSocketConnector.java +++ b/jetty-unixsocket/src/main/java/org/eclipse/jetty/unixsocket/UnixSocketConnector.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-unixsocket/src/main/java/org/eclipse/jetty/unixsocket/UnixSocketEndPoint.java b/jetty-unixsocket/src/main/java/org/eclipse/jetty/unixsocket/UnixSocketEndPoint.java index 8f798e22e3b..3556b73c390 100644 --- a/jetty-unixsocket/src/main/java/org/eclipse/jetty/unixsocket/UnixSocketEndPoint.java +++ b/jetty-unixsocket/src/main/java/org/eclipse/jetty/unixsocket/UnixSocketEndPoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-unixsocket/src/main/java/org/eclipse/jetty/unixsocket/client/HttpClientTransportOverUnixSockets.java b/jetty-unixsocket/src/main/java/org/eclipse/jetty/unixsocket/client/HttpClientTransportOverUnixSockets.java index 230a05508af..9e30713099a 100644 --- a/jetty-unixsocket/src/main/java/org/eclipse/jetty/unixsocket/client/HttpClientTransportOverUnixSockets.java +++ b/jetty-unixsocket/src/main/java/org/eclipse/jetty/unixsocket/client/HttpClientTransportOverUnixSockets.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/JnrTest.java b/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/JnrTest.java index ebfb831c244..ecff07eb60f 100644 --- a/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/JnrTest.java +++ b/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/JnrTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/UnixSocketClient.java b/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/UnixSocketClient.java index fba85af1088..66ae618df6d 100644 --- a/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/UnixSocketClient.java +++ b/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/UnixSocketClient.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/UnixSocketProxyServer.java b/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/UnixSocketProxyServer.java index 41653ea9d5b..ce88a7acf2f 100644 --- a/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/UnixSocketProxyServer.java +++ b/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/UnixSocketProxyServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/UnixSocketServer.java b/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/UnixSocketServer.java index 7ee733ac585..4323fa8767e 100644 --- a/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/UnixSocketServer.java +++ b/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/UnixSocketServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/UnixSocketTest.java b/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/UnixSocketTest.java index c76ff633f57..682d55c78d1 100644 --- a/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/UnixSocketTest.java +++ b/jetty-unixsocket/src/test/java/org/eclipse/jetty/unixsocket/UnixSocketTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSON.java b/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSON.java index f1dad0ed0a8..c331ac7a3e2 100644 --- a/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSON.java +++ b/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSON.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONCollectionConvertor.java b/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONCollectionConvertor.java index 93c7254005c..7ab5a38a204 100644 --- a/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONCollectionConvertor.java +++ b/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONCollectionConvertor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONDateConvertor.java b/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONDateConvertor.java index ea4360a1236..cdbe03a37d9 100644 --- a/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONDateConvertor.java +++ b/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONDateConvertor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONEnumConvertor.java b/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONEnumConvertor.java index 8ce9286cc96..8de0ad88357 100644 --- a/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONEnumConvertor.java +++ b/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONEnumConvertor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONObjectConvertor.java b/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONObjectConvertor.java index dc72f89bae0..e8dad41fd9f 100644 --- a/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONObjectConvertor.java +++ b/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONObjectConvertor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONPojoConvertor.java b/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONPojoConvertor.java index 98c5aff4f38..561c7a66175 100644 --- a/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONPojoConvertor.java +++ b/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONPojoConvertor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONPojoConvertorFactory.java b/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONPojoConvertorFactory.java index dba596562fc..d6c734698eb 100644 --- a/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONPojoConvertorFactory.java +++ b/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/JSONPojoConvertorFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/package-info.java b/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/package-info.java index 5cf429f008e..cc60ed55950 100644 --- a/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/package-info.java +++ b/jetty-util-ajax/src/main/java/org/eclipse/jetty/util/ajax/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util-ajax/src/test/java/org/eclipse/jetty/util/ajax/JSONCollectionConvertorTest.java b/jetty-util-ajax/src/test/java/org/eclipse/jetty/util/ajax/JSONCollectionConvertorTest.java index 930b0fb3f94..c719e2521dc 100644 --- a/jetty-util-ajax/src/test/java/org/eclipse/jetty/util/ajax/JSONCollectionConvertorTest.java +++ b/jetty-util-ajax/src/test/java/org/eclipse/jetty/util/ajax/JSONCollectionConvertorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util-ajax/src/test/java/org/eclipse/jetty/util/ajax/JSONPojoConvertorFactoryTest.java b/jetty-util-ajax/src/test/java/org/eclipse/jetty/util/ajax/JSONPojoConvertorFactoryTest.java index 5bb1ad01b08..0a08e28d1ba 100644 --- a/jetty-util-ajax/src/test/java/org/eclipse/jetty/util/ajax/JSONPojoConvertorFactoryTest.java +++ b/jetty-util-ajax/src/test/java/org/eclipse/jetty/util/ajax/JSONPojoConvertorFactoryTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util-ajax/src/test/java/org/eclipse/jetty/util/ajax/JSONPojoConvertorTest.java b/jetty-util-ajax/src/test/java/org/eclipse/jetty/util/ajax/JSONPojoConvertorTest.java index 687e70dd336..2d59a105aa2 100644 --- a/jetty-util-ajax/src/test/java/org/eclipse/jetty/util/ajax/JSONPojoConvertorTest.java +++ b/jetty-util-ajax/src/test/java/org/eclipse/jetty/util/ajax/JSONPojoConvertorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util-ajax/src/test/java/org/eclipse/jetty/util/ajax/JSONTest.java b/jetty-util-ajax/src/test/java/org/eclipse/jetty/util/ajax/JSONTest.java index e8054fd65f0..1c21f16312c 100644 --- a/jetty-util-ajax/src/test/java/org/eclipse/jetty/util/ajax/JSONTest.java +++ b/jetty-util-ajax/src/test/java/org/eclipse/jetty/util/ajax/JSONTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/AbstractTrie.java b/jetty-util/src/main/java/org/eclipse/jetty/util/AbstractTrie.java index 39b1069628e..e7fbd070ea3 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/AbstractTrie.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/AbstractTrie.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ArrayTernaryTrie.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ArrayTernaryTrie.java index b1417413545..a5944cee473 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ArrayTernaryTrie.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ArrayTernaryTrie.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ArrayTrie.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ArrayTrie.java index 6ceb555d8a4..9f4bf05f3d3 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ArrayTrie.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ArrayTrie.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ArrayUtil.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ArrayUtil.java index dda9364d7d9..661556f1a68 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ArrayUtil.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ArrayUtil.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/AtomicBiInteger.java b/jetty-util/src/main/java/org/eclipse/jetty/util/AtomicBiInteger.java index ee679b1fbfc..de4e26718e0 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/AtomicBiInteger.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/AtomicBiInteger.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/Atomics.java b/jetty-util/src/main/java/org/eclipse/jetty/util/Atomics.java index 7937e3c0dc7..ffa1ace3cfd 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/Atomics.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/Atomics.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/Attributes.java b/jetty-util/src/main/java/org/eclipse/jetty/util/Attributes.java index bc8b33f5562..71b2e0f9c72 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/Attributes.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/Attributes.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/AttributesMap.java b/jetty-util/src/main/java/org/eclipse/jetty/util/AttributesMap.java index 4ff033d6673..ecb92c5c810 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/AttributesMap.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/AttributesMap.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/B64Code.java b/jetty-util/src/main/java/org/eclipse/jetty/util/B64Code.java index 6e9d7d8599b..6dde1f35247 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/B64Code.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/B64Code.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/BlockingArrayQueue.java b/jetty-util/src/main/java/org/eclipse/jetty/util/BlockingArrayQueue.java index ec65469d746..4658e88a27f 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/BlockingArrayQueue.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/BlockingArrayQueue.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/BufferUtil.java b/jetty-util/src/main/java/org/eclipse/jetty/util/BufferUtil.java index f7c3c42d7f5..d144da07932 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/BufferUtil.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/BufferUtil.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ByteArrayISO8859Writer.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ByteArrayISO8859Writer.java index 2915ffc1bdb..d741571270b 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ByteArrayISO8859Writer.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ByteArrayISO8859Writer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ByteArrayOutputStream2.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ByteArrayOutputStream2.java index 0f91e701677..5f759b8330a 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ByteArrayOutputStream2.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ByteArrayOutputStream2.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/Callback.java b/jetty-util/src/main/java/org/eclipse/jetty/util/Callback.java index 603e41f908d..a08da8f5932 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/Callback.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/Callback.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ClassLoadingObjectInputStream.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ClassLoadingObjectInputStream.java index f7107e1fc11..004d8bf22e7 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ClassLoadingObjectInputStream.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ClassLoadingObjectInputStream.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/CompletableCallback.java b/jetty-util/src/main/java/org/eclipse/jetty/util/CompletableCallback.java index 34ad437125d..281a8304e1b 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/CompletableCallback.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/CompletableCallback.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ConcurrentHashSet.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ConcurrentHashSet.java index fc06b149f8e..95b7f987c22 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ConcurrentHashSet.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ConcurrentHashSet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ConstantThrowable.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ConstantThrowable.java index d1a2af990d3..303ad153015 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ConstantThrowable.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ConstantThrowable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/CountingCallback.java b/jetty-util/src/main/java/org/eclipse/jetty/util/CountingCallback.java index ee0ee47dade..a59d227d387 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/CountingCallback.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/CountingCallback.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/DateCache.java b/jetty-util/src/main/java/org/eclipse/jetty/util/DateCache.java index 9f7fc960c41..ea9b48b071f 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/DateCache.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/DateCache.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/DecoratedObjectFactory.java b/jetty-util/src/main/java/org/eclipse/jetty/util/DecoratedObjectFactory.java index 963bd1f7a8a..eb7d41e182b 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/DecoratedObjectFactory.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/DecoratedObjectFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/Decorator.java b/jetty-util/src/main/java/org/eclipse/jetty/util/Decorator.java index e36339ade64..c8f1efb68ac 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/Decorator.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/Decorator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/DeprecationWarning.java b/jetty-util/src/main/java/org/eclipse/jetty/util/DeprecationWarning.java index 7e071c0235e..28c0e5bc71b 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/DeprecationWarning.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/DeprecationWarning.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/Fields.java b/jetty-util/src/main/java/org/eclipse/jetty/util/Fields.java index 23b8e0713d3..cad3247760e 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/Fields.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/Fields.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/FutureCallback.java b/jetty-util/src/main/java/org/eclipse/jetty/util/FutureCallback.java index 8bd69e8fe76..a3e52020051 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/FutureCallback.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/FutureCallback.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/FuturePromise.java b/jetty-util/src/main/java/org/eclipse/jetty/util/FuturePromise.java index 1ddb49ce0a5..1c0b78aa85d 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/FuturePromise.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/FuturePromise.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/HostMap.java b/jetty-util/src/main/java/org/eclipse/jetty/util/HostMap.java index d9579c08222..9c40964949d 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/HostMap.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/HostMap.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/HostPort.java b/jetty-util/src/main/java/org/eclipse/jetty/util/HostPort.java index 65140afda70..1824dd799d1 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/HostPort.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/HostPort.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/HttpCookieStore.java b/jetty-util/src/main/java/org/eclipse/jetty/util/HttpCookieStore.java index eabdc62d9db..d0a92d56afb 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/HttpCookieStore.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/HttpCookieStore.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/IO.java b/jetty-util/src/main/java/org/eclipse/jetty/util/IO.java index 8a17d08b4b2..067da67602a 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/IO.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/IO.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/IPAddressMap.java b/jetty-util/src/main/java/org/eclipse/jetty/util/IPAddressMap.java index dd2cd5cf036..b3773bdcaa4 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/IPAddressMap.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/IPAddressMap.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/IncludeExclude.java b/jetty-util/src/main/java/org/eclipse/jetty/util/IncludeExclude.java index 3f22befc48f..6cda85cba9b 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/IncludeExclude.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/IncludeExclude.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/IncludeExcludeSet.java b/jetty-util/src/main/java/org/eclipse/jetty/util/IncludeExcludeSet.java index 73cb2583cfd..d2c67af63a3 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/IncludeExcludeSet.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/IncludeExcludeSet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/InetAddressSet.java b/jetty-util/src/main/java/org/eclipse/jetty/util/InetAddressSet.java index 30efacda595..4cc0a261a31 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/InetAddressSet.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/InetAddressSet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/IntrospectionUtil.java b/jetty-util/src/main/java/org/eclipse/jetty/util/IntrospectionUtil.java index b504616392c..188cd4dc523 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/IntrospectionUtil.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/IntrospectionUtil.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/IteratingCallback.java b/jetty-util/src/main/java/org/eclipse/jetty/util/IteratingCallback.java index bdbfc5f9db1..de0a8f521e8 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/IteratingCallback.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/IteratingCallback.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/IteratingNestedCallback.java b/jetty-util/src/main/java/org/eclipse/jetty/util/IteratingNestedCallback.java index f848a008b1c..e7f15c2c466 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/IteratingNestedCallback.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/IteratingNestedCallback.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/JavaVersion.java b/jetty-util/src/main/java/org/eclipse/jetty/util/JavaVersion.java index f1cbd74b718..9c16ee732ed 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/JavaVersion.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/JavaVersion.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/Jetty.java b/jetty-util/src/main/java/org/eclipse/jetty/util/Jetty.java index d9636250e44..fc9692743c4 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/Jetty.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/Jetty.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/LazyList.java b/jetty-util/src/main/java/org/eclipse/jetty/util/LazyList.java index 83e88494687..a84378552ef 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/LazyList.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/LazyList.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/LeakDetector.java b/jetty-util/src/main/java/org/eclipse/jetty/util/LeakDetector.java index 848f8ad6fc5..4f58c9745a3 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/LeakDetector.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/LeakDetector.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/Loader.java b/jetty-util/src/main/java/org/eclipse/jetty/util/Loader.java index fa4587f18ff..e22e941ebb4 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/Loader.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/Loader.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ManifestUtils.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ManifestUtils.java index 83e9f5517a8..77360ab42c7 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ManifestUtils.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ManifestUtils.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/MemoryUtils.java b/jetty-util/src/main/java/org/eclipse/jetty/util/MemoryUtils.java index 0f9b6b60462..c004d276d0b 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/MemoryUtils.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/MemoryUtils.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/MultiException.java b/jetty-util/src/main/java/org/eclipse/jetty/util/MultiException.java index f7843c11c48..74a44235d09 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/MultiException.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/MultiException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/MultiMap.java b/jetty-util/src/main/java/org/eclipse/jetty/util/MultiMap.java index 9fa4f401d6c..34561ad8576 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/MultiMap.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/MultiMap.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartInputStreamParser.java b/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartInputStreamParser.java index a1847b3540a..17e7bb1f55f 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartInputStreamParser.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartInputStreamParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartOutputStream.java b/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartOutputStream.java index 2ae6fc0a222..5cc971cb297 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartOutputStream.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartOutputStream.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartWriter.java b/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartWriter.java index e2a0edb44e2..b31ea1c5d1d 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartWriter.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartWriter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/MultiReleaseJarFile.java b/jetty-util/src/main/java/org/eclipse/jetty/util/MultiReleaseJarFile.java index d9e37a4b3dd..b29e6e39864 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/MultiReleaseJarFile.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/MultiReleaseJarFile.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/PathWatcher.java b/jetty-util/src/main/java/org/eclipse/jetty/util/PathWatcher.java index 57ba31a30cc..aae05a74c99 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/PathWatcher.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/PathWatcher.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/PatternMatcher.java b/jetty-util/src/main/java/org/eclipse/jetty/util/PatternMatcher.java index 1b84cd19e67..23e923ceca2 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/PatternMatcher.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/PatternMatcher.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ProcessorUtils.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ProcessorUtils.java index 8fcedda39cd..fd3aafb9bbd 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ProcessorUtils.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ProcessorUtils.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/Promise.java b/jetty-util/src/main/java/org/eclipse/jetty/util/Promise.java index 2efdc5e361d..05ed377cdd2 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/Promise.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/Promise.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/QuotedStringTokenizer.java b/jetty-util/src/main/java/org/eclipse/jetty/util/QuotedStringTokenizer.java index 0acc7ee1714..fc17acaf553 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/QuotedStringTokenizer.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/QuotedStringTokenizer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ReadLineInputStream.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ReadLineInputStream.java index 427c8a65e91..9a3b5c9ee16 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ReadLineInputStream.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ReadLineInputStream.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/RegexSet.java b/jetty-util/src/main/java/org/eclipse/jetty/util/RegexSet.java index e6cc9f35a09..25cfcbd2298 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/RegexSet.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/RegexSet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/Retainable.java b/jetty-util/src/main/java/org/eclipse/jetty/util/Retainable.java index 3fcc03ddbef..b54183525c9 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/Retainable.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/Retainable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/RolloverFileOutputStream.java b/jetty-util/src/main/java/org/eclipse/jetty/util/RolloverFileOutputStream.java index aba6e34b229..836574bf0c4 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/RolloverFileOutputStream.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/RolloverFileOutputStream.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/Scanner.java b/jetty-util/src/main/java/org/eclipse/jetty/util/Scanner.java index 262a6678807..6ee3ff5b1f1 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/Scanner.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/Scanner.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/SearchPattern.java b/jetty-util/src/main/java/org/eclipse/jetty/util/SearchPattern.java index ab894211247..0654ad8f778 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/SearchPattern.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/SearchPattern.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/SharedBlockingCallback.java b/jetty-util/src/main/java/org/eclipse/jetty/util/SharedBlockingCallback.java index 33a4dfd0f8c..670d48e9de4 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/SharedBlockingCallback.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/SharedBlockingCallback.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/SocketAddressResolver.java b/jetty-util/src/main/java/org/eclipse/jetty/util/SocketAddressResolver.java index a091303c89f..bef819aa0fb 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/SocketAddressResolver.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/SocketAddressResolver.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/StringUtil.java b/jetty-util/src/main/java/org/eclipse/jetty/util/StringUtil.java index b4ff5c18d1b..60104d69f72 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/StringUtil.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/StringUtil.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/TopologicalSort.java b/jetty-util/src/main/java/org/eclipse/jetty/util/TopologicalSort.java index 4abe11cdce3..078a9b2e57c 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/TopologicalSort.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/TopologicalSort.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/TreeTrie.java b/jetty-util/src/main/java/org/eclipse/jetty/util/TreeTrie.java index 0f899dd2fbc..21e9103111d 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/TreeTrie.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/TreeTrie.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/Trie.java b/jetty-util/src/main/java/org/eclipse/jetty/util/Trie.java index 513fdaf8738..699d7433f9d 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/Trie.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/Trie.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/TypeUtil.java b/jetty-util/src/main/java/org/eclipse/jetty/util/TypeUtil.java index 5752581b205..3f977980dca 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/TypeUtil.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/TypeUtil.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/URIUtil.java b/jetty-util/src/main/java/org/eclipse/jetty/util/URIUtil.java index 01bf07875e5..50394f7c6fb 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/URIUtil.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/URIUtil.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/Uptime.java b/jetty-util/src/main/java/org/eclipse/jetty/util/Uptime.java index 43743bf74bb..a1687830055 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/Uptime.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/Uptime.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/UrlEncoded.java b/jetty-util/src/main/java/org/eclipse/jetty/util/UrlEncoded.java index 455857647a2..936e7b9ed89 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/UrlEncoded.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/UrlEncoded.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/Utf8Appendable.java b/jetty-util/src/main/java/org/eclipse/jetty/util/Utf8Appendable.java index bfb8d1ecbb4..553fd19309d 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/Utf8Appendable.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/Utf8Appendable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/Utf8LineParser.java b/jetty-util/src/main/java/org/eclipse/jetty/util/Utf8LineParser.java index d110b4fb2bb..6323bffa74a 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/Utf8LineParser.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/Utf8LineParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/Utf8StringBuffer.java b/jetty-util/src/main/java/org/eclipse/jetty/util/Utf8StringBuffer.java index e30f1b77add..6507cbd87bf 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/Utf8StringBuffer.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/Utf8StringBuffer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/Utf8StringBuilder.java b/jetty-util/src/main/java/org/eclipse/jetty/util/Utf8StringBuilder.java index c1bc1b0a3bf..aa115f08a36 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/Utf8StringBuilder.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/Utf8StringBuilder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/ManagedAttribute.java b/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/ManagedAttribute.java index 4fc83f63285..f016f8b5570 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/ManagedAttribute.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/ManagedAttribute.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/ManagedObject.java b/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/ManagedObject.java index 3599a61d42f..74c2c0aac3d 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/ManagedObject.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/ManagedObject.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/ManagedOperation.java b/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/ManagedOperation.java index e6dba8ce05c..33235b21cc9 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/ManagedOperation.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/ManagedOperation.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/Name.java b/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/Name.java index b501074a0ec..ce8b6f1959c 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/Name.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/Name.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/package-info.java b/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/package-info.java index 6226fef3f09..fbcae5e13f7 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/package-info.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/annotation/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/component/AbstractLifeCycle.java b/jetty-util/src/main/java/org/eclipse/jetty/util/component/AbstractLifeCycle.java index d87f557e107..d34214877be 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/component/AbstractLifeCycle.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/component/AbstractLifeCycle.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/component/Container.java b/jetty-util/src/main/java/org/eclipse/jetty/util/component/Container.java index 0b1eb3db159..7ead27df1c5 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/component/Container.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/component/Container.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/component/ContainerLifeCycle.java b/jetty-util/src/main/java/org/eclipse/jetty/util/component/ContainerLifeCycle.java index 4fbe2d255a2..ad1c4d4aceb 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/component/ContainerLifeCycle.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/component/ContainerLifeCycle.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/component/Destroyable.java b/jetty-util/src/main/java/org/eclipse/jetty/util/component/Destroyable.java index 3ee961f1dd7..c98b3043030 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/component/Destroyable.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/component/Destroyable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/component/Dumpable.java b/jetty-util/src/main/java/org/eclipse/jetty/util/component/Dumpable.java index ff9a993e269..748c678167f 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/component/Dumpable.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/component/Dumpable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/component/DumpableCollection.java b/jetty-util/src/main/java/org/eclipse/jetty/util/component/DumpableCollection.java index 7e7e4190740..a25af015b66 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/component/DumpableCollection.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/component/DumpableCollection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/component/FileDestroyable.java b/jetty-util/src/main/java/org/eclipse/jetty/util/component/FileDestroyable.java index 9e36be2e1c5..a906edcd3fe 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/component/FileDestroyable.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/component/FileDestroyable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/component/FileNoticeLifeCycleListener.java b/jetty-util/src/main/java/org/eclipse/jetty/util/component/FileNoticeLifeCycleListener.java index 3c37c833a8d..eec1cdd4b66 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/component/FileNoticeLifeCycleListener.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/component/FileNoticeLifeCycleListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/component/Graceful.java b/jetty-util/src/main/java/org/eclipse/jetty/util/component/Graceful.java index 8721734f508..ea631bfe443 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/component/Graceful.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/component/Graceful.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/component/LifeCycle.java b/jetty-util/src/main/java/org/eclipse/jetty/util/component/LifeCycle.java index 03ae94b431a..e5abb8e11f3 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/component/LifeCycle.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/component/LifeCycle.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/component/StopLifeCycle.java b/jetty-util/src/main/java/org/eclipse/jetty/util/component/StopLifeCycle.java index 7708710dd78..480a5bc8ff4 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/component/StopLifeCycle.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/component/StopLifeCycle.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/component/package-info.java b/jetty-util/src/main/java/org/eclipse/jetty/util/component/package-info.java index c80c52703b1..b354c61cebd 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/component/package-info.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/component/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/log/AbstractLogger.java b/jetty-util/src/main/java/org/eclipse/jetty/util/log/AbstractLogger.java index f27a55a3dff..3912c8a7faf 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/log/AbstractLogger.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/log/AbstractLogger.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/log/JavaUtilLog.java b/jetty-util/src/main/java/org/eclipse/jetty/util/log/JavaUtilLog.java index 4c760dacd2f..83af20f2cdd 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/log/JavaUtilLog.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/log/JavaUtilLog.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/log/JettyAwareLogger.java b/jetty-util/src/main/java/org/eclipse/jetty/util/log/JettyAwareLogger.java index 7c058ae4fc1..a848a9424f0 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/log/JettyAwareLogger.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/log/JettyAwareLogger.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/log/JettyLogHandler.java b/jetty-util/src/main/java/org/eclipse/jetty/util/log/JettyLogHandler.java index c2f6992a76c..918143a3e9b 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/log/JettyLogHandler.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/log/JettyLogHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/log/Log.java b/jetty-util/src/main/java/org/eclipse/jetty/util/log/Log.java index e50fa646959..5a8e6c49dd1 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/log/Log.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/log/Log.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/log/Logger.java b/jetty-util/src/main/java/org/eclipse/jetty/util/log/Logger.java index e9c1535492a..b439af176a6 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/log/Logger.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/log/Logger.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/log/LoggerLog.java b/jetty-util/src/main/java/org/eclipse/jetty/util/log/LoggerLog.java index 44afdfb65a4..ab2b0932cc8 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/log/LoggerLog.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/log/LoggerLog.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/log/Slf4jLog.java b/jetty-util/src/main/java/org/eclipse/jetty/util/log/Slf4jLog.java index 8594a3e26fb..3e23a7afa5a 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/log/Slf4jLog.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/log/Slf4jLog.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/log/StacklessLogging.java b/jetty-util/src/main/java/org/eclipse/jetty/util/log/StacklessLogging.java index ce71b93d0cf..00739b1d998 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/log/StacklessLogging.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/log/StacklessLogging.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/log/StdErrLog.java b/jetty-util/src/main/java/org/eclipse/jetty/util/log/StdErrLog.java index 06ba9101441..5567cf2c982 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/log/StdErrLog.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/log/StdErrLog.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/log/package-info.java b/jetty-util/src/main/java/org/eclipse/jetty/util/log/package-info.java index 98b3fc99bf7..877b11fb03a 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/log/package-info.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/log/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/package-info.java b/jetty-util/src/main/java/org/eclipse/jetty/util/package-info.java index 125064ece7b..37b677fb69e 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/package-info.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/AWTLeakPreventer.java b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/AWTLeakPreventer.java index a2aa8078fec..ef878480bf2 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/AWTLeakPreventer.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/AWTLeakPreventer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/AbstractLeakPreventer.java b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/AbstractLeakPreventer.java index 3887781e10f..077751d20bb 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/AbstractLeakPreventer.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/AbstractLeakPreventer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/AppContextLeakPreventer.java b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/AppContextLeakPreventer.java index a41a558fce7..ee7aace8afa 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/AppContextLeakPreventer.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/AppContextLeakPreventer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/DOMLeakPreventer.java b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/DOMLeakPreventer.java index 8e53c3f020c..4c3faeaf5dc 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/DOMLeakPreventer.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/DOMLeakPreventer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/DriverManagerLeakPreventer.java b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/DriverManagerLeakPreventer.java index 60512dcdc14..aaf15556c4b 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/DriverManagerLeakPreventer.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/DriverManagerLeakPreventer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/GCThreadLeakPreventer.java b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/GCThreadLeakPreventer.java index 930c75eaec3..1dcab79760f 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/GCThreadLeakPreventer.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/GCThreadLeakPreventer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/Java2DLeakPreventer.java b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/Java2DLeakPreventer.java index 0f7ad33987b..83e132ebd08 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/Java2DLeakPreventer.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/Java2DLeakPreventer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/LDAPLeakPreventer.java b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/LDAPLeakPreventer.java index 23ae1e77d7e..2b46e9c07b3 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/LDAPLeakPreventer.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/LDAPLeakPreventer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/LoginConfigurationLeakPreventer.java b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/LoginConfigurationLeakPreventer.java index 68c5b49f8c4..554a210956e 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/LoginConfigurationLeakPreventer.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/LoginConfigurationLeakPreventer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/SecurityProviderLeakPreventer.java b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/SecurityProviderLeakPreventer.java index 5abc47d1531..d6dc9121231 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/SecurityProviderLeakPreventer.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/SecurityProviderLeakPreventer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/package-info.java b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/package-info.java index 684d600ab7a..90ddf2ab249 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/package-info.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/BadResource.java b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/BadResource.java index a2984af540f..89896254ae3 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/BadResource.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/BadResource.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/EmptyResource.java b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/EmptyResource.java index 84999c268a7..247495925c3 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/EmptyResource.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/EmptyResource.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/FileResource.java b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/FileResource.java index 33d73c73657..522e3a4de7d 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/FileResource.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/FileResource.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -482,4 +482,4 @@ public class FileResource extends Resource { return _uri.toString(); } -} \ No newline at end of file +} diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/JarFileResource.java b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/JarFileResource.java index e09c735a01c..406781fa8ca 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/JarFileResource.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/JarFileResource.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/JarResource.java b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/JarResource.java index d62e641f3aa..199141c57c7 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/JarResource.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/JarResource.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/PathResource.java b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/PathResource.java index 0dfb3ffd274..3264d25a518 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/PathResource.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/PathResource.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/Resource.java b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/Resource.java index 51aa864da3e..2c016d1ad53 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/Resource.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/Resource.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceCollection.java b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceCollection.java index 4806756dd25..828f37affc6 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceCollection.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceCollection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceFactory.java b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceFactory.java index 8f19deb26b6..ccaba514869 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceFactory.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/URLResource.java b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/URLResource.java index 533b8272c11..97733627a03 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/URLResource.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/URLResource.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/package-info.java b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/package-info.java index bf55ffe7b87..3af596a45da 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/package-info.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/security/CertificateUtils.java b/jetty-util/src/main/java/org/eclipse/jetty/util/security/CertificateUtils.java index f17176e4a2b..1b7a3cccf4f 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/security/CertificateUtils.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/security/CertificateUtils.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/security/CertificateValidator.java b/jetty-util/src/main/java/org/eclipse/jetty/util/security/CertificateValidator.java index d1793ad2482..d21e32397df 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/security/CertificateValidator.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/security/CertificateValidator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/security/Constraint.java b/jetty-util/src/main/java/org/eclipse/jetty/util/security/Constraint.java index c4a851e68f4..766b950c5a8 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/security/Constraint.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/security/Constraint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/security/Credential.java b/jetty-util/src/main/java/org/eclipse/jetty/util/security/Credential.java index 2f86d7554e0..e557dc41615 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/security/Credential.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/security/Credential.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/security/CredentialProvider.java b/jetty-util/src/main/java/org/eclipse/jetty/util/security/CredentialProvider.java index 99549d94c03..3c4d90b564d 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/security/CredentialProvider.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/security/CredentialProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/security/Password.java b/jetty-util/src/main/java/org/eclipse/jetty/util/security/Password.java index 3a7895de0fd..dff6d7fa207 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/security/Password.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/security/Password.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/security/package-info.java b/jetty-util/src/main/java/org/eclipse/jetty/util/security/package-info.java index f9135e08c2a..4dbe39ef850 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/security/package-info.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/security/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/AliasedX509ExtendedKeyManager.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/AliasedX509ExtendedKeyManager.java index f97485c30b3..c631f6ad12d 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/AliasedX509ExtendedKeyManager.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/AliasedX509ExtendedKeyManager.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SniX509ExtendedKeyManager.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SniX509ExtendedKeyManager.java index b0837adfd31..c4daee10381 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SniX509ExtendedKeyManager.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SniX509ExtendedKeyManager.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslContextFactory.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslContextFactory.java index 3188aa09f6d..2eec785ad99 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslContextFactory.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslContextFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslSelectionDump.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslSelectionDump.java index e19355ed3e7..52bffc57f3a 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslSelectionDump.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslSelectionDump.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/X509.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/X509.java index 77509297ab5..ecb563010a8 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/X509.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/X509.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/package-info.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/package-info.java index 264b65930ca..45cae8ff1e4 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/package-info.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/statistic/CounterStatistic.java b/jetty-util/src/main/java/org/eclipse/jetty/util/statistic/CounterStatistic.java index 933f84de2b3..0d53dab453e 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/statistic/CounterStatistic.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/statistic/CounterStatistic.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/statistic/RateStatistic.java b/jetty-util/src/main/java/org/eclipse/jetty/util/statistic/RateStatistic.java index 59890cb1ca0..6e33ce2aebf 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/statistic/RateStatistic.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/statistic/RateStatistic.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/statistic/SampleStatistic.java b/jetty-util/src/main/java/org/eclipse/jetty/util/statistic/SampleStatistic.java index e7bf1a6972a..db1ac838aee 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/statistic/SampleStatistic.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/statistic/SampleStatistic.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/statistic/package-info.java b/jetty-util/src/main/java/org/eclipse/jetty/util/statistic/package-info.java index 63b35ff0c98..ad92503a83f 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/statistic/package-info.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/statistic/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ExecutionStrategy.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ExecutionStrategy.java index cc67e581dcf..7a43448c6d5 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ExecutionStrategy.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ExecutionStrategy.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ExecutorSizedThreadPool.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ExecutorSizedThreadPool.java index 69cdef92ad9..d3402787e0c 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ExecutorSizedThreadPool.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ExecutorSizedThreadPool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ExecutorThreadPool.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ExecutorThreadPool.java index d7764554710..7b7253c9e29 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ExecutorThreadPool.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ExecutorThreadPool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/Invocable.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/Invocable.java index e87459ebf8c..00b4e239b83 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/Invocable.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/Invocable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/Locker.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/Locker.java index 89fd8a10f8b..d00dfbde1df 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/Locker.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/Locker.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/MonitoredQueuedThreadPool.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/MonitoredQueuedThreadPool.java index 9c120ddc0a8..237f2bfd7df 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/MonitoredQueuedThreadPool.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/MonitoredQueuedThreadPool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/QueuedThreadPool.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/QueuedThreadPool.java index 5b2e9d2d132..4d79a3fc4eb 100755 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/QueuedThreadPool.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/QueuedThreadPool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ReservedThreadExecutor.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ReservedThreadExecutor.java index 61a5fd9c8ef..01d131e43d6 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ReservedThreadExecutor.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ReservedThreadExecutor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ScheduledExecutorScheduler.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ScheduledExecutorScheduler.java index 8740dc78326..0ad6b76bb86 100755 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ScheduledExecutorScheduler.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ScheduledExecutorScheduler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/Scheduler.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/Scheduler.java index 5e28181edbe..93e7e8ccb61 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/Scheduler.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/Scheduler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ShutdownThread.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ShutdownThread.java index cb5daf36398..cf0d9a27676 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ShutdownThread.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ShutdownThread.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/Sweeper.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/Sweeper.java index 6df360f3416..04805535f0a 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/Sweeper.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/Sweeper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ThreadClassLoaderScope.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ThreadClassLoaderScope.java index 901917134ff..44cb80f8270 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ThreadClassLoaderScope.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ThreadClassLoaderScope.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ThreadPool.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ThreadPool.java index 58e7caa40a6..7d0749d12b6 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ThreadPool.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ThreadPool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ThreadPoolBudget.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ThreadPoolBudget.java index d83f827ab19..487a38098bb 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ThreadPoolBudget.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ThreadPoolBudget.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/TimerScheduler.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/TimerScheduler.java index 3ee8fa1da3d..498e5a74f16 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/TimerScheduler.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/TimerScheduler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/TryExecutor.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/TryExecutor.java index b80342feebe..a9696fb6db9 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/TryExecutor.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/TryExecutor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/package-info.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/package-info.java index a2ac03be091..60e0ce71b12 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/package-info.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/strategy/EatWhatYouKill.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/strategy/EatWhatYouKill.java index 21bf857849b..a22665ee4b5 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/strategy/EatWhatYouKill.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/strategy/EatWhatYouKill.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/strategy/ExecuteProduceConsume.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/strategy/ExecuteProduceConsume.java index fc583901a04..46c4ff3b9f4 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/strategy/ExecuteProduceConsume.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/strategy/ExecuteProduceConsume.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/strategy/ProduceConsume.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/strategy/ProduceConsume.java index 6b8853c2dfb..4d80ff16107 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/strategy/ProduceConsume.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/strategy/ProduceConsume.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/strategy/ProduceExecuteConsume.java b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/strategy/ProduceExecuteConsume.java index a9ce7dd1258..f12adf6a967 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/thread/strategy/ProduceExecuteConsume.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/thread/strategy/ProduceExecuteConsume.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/AtomicBiIntegerTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/AtomicBiIntegerTest.java index 29724f54864..1c7d5df921a 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/AtomicBiIntegerTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/AtomicBiIntegerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/B64CodeTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/B64CodeTest.java index 8889492e224..c0de3b489ac 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/B64CodeTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/B64CodeTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/BlockingArrayQueueTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/BlockingArrayQueueTest.java index daf21241e57..0d59a1ec4af 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/BlockingArrayQueueTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/BlockingArrayQueueTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/BufferUtilTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/BufferUtilTest.java index b2ec23e0dd0..3d8cb915b0b 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/BufferUtilTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/BufferUtilTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/CollectionAssert.java b/jetty-util/src/test/java/org/eclipse/jetty/util/CollectionAssert.java index 5b9d1de0555..23cb31ccba9 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/CollectionAssert.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/CollectionAssert.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/DateCacheTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/DateCacheTest.java index 6b34ee366ee..b5a221ee648 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/DateCacheTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/DateCacheTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/FutureCallbackTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/FutureCallbackTest.java index 4ea801bd381..e7962d31534 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/FutureCallbackTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/FutureCallbackTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/HostPortTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/HostPortTest.java index 01e32151b9a..705bbbf6fa6 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/HostPortTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/HostPortTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/IPAddressMapTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/IPAddressMapTest.java index 1c696078cef..57ffe2e8049 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/IPAddressMapTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/IPAddressMapTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/IncludeExcludeSetTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/IncludeExcludeSetTest.java index 7f9293b7032..65100719f75 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/IncludeExcludeSetTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/IncludeExcludeSetTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/IncludeExcludeTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/IncludeExcludeTest.java index 95ea1a78cef..021d7bd1f53 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/IncludeExcludeTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/IncludeExcludeTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/InetAddressSetTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/InetAddressSetTest.java index 1ca7df25191..b681010c6a4 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/InetAddressSetTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/InetAddressSetTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/IteratingCallbackTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/IteratingCallbackTest.java index 045df4add8b..e48e437a7fc 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/IteratingCallbackTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/IteratingCallbackTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/JavaVersionTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/JavaVersionTest.java index 47cd2edd1e0..3fa24e8dc36 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/JavaVersionTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/JavaVersionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/LazyListTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/LazyListTest.java index 1b8e29ec2d3..28a49387955 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/LazyListTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/LazyListTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/LeakDetectorTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/LeakDetectorTest.java index 70ed995002f..088dc5c40f7 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/LeakDetectorTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/LeakDetectorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/MultiExceptionTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/MultiExceptionTest.java index 7bd09c50569..196dcdb9845 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/MultiExceptionTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/MultiExceptionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/MultiMapTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/MultiMapTest.java index 64896cb5de8..559b6f20fac 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/MultiMapTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/MultiMapTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/MultiPartInputStreamTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/MultiPartInputStreamTest.java index c957022e2a5..ee16afe9ecb 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/MultiPartInputStreamTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/MultiPartInputStreamTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/MultiReleaseJarFileTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/MultiReleaseJarFileTest.java index eaffe9edd5b..362db10c438 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/MultiReleaseJarFileTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/MultiReleaseJarFileTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/PathWatcherDemo.java b/jetty-util/src/test/java/org/eclipse/jetty/util/PathWatcherDemo.java index 36729d411e5..87c6a86128d 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/PathWatcherDemo.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/PathWatcherDemo.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/PathWatcherTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/PathWatcherTest.java index 0f0ea9e391c..774103192d3 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/PathWatcherTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/PathWatcherTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/ProcessorUtilsTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/ProcessorUtilsTest.java index debf444a4a8..640f8001a28 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/ProcessorUtilsTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/ProcessorUtilsTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/QueueBenchmarkTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/QueueBenchmarkTest.java index 5e48c0e701c..45e3042b616 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/QueueBenchmarkTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/QueueBenchmarkTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/QuotedStringTokenizerTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/QuotedStringTokenizerTest.java index ddcbe5f6195..edd08b80ea6 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/QuotedStringTokenizerTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/QuotedStringTokenizerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/ReadLineInputStreamTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/ReadLineInputStreamTest.java index 63c68754f35..121996bcb5b 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/ReadLineInputStreamTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/ReadLineInputStreamTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/RegexSetTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/RegexSetTest.java index 99ea31f3077..7fd4eaa4611 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/RegexSetTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/RegexSetTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/RolloverFileOutputStreamTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/RolloverFileOutputStreamTest.java index d101471c894..c0c58767f12 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/RolloverFileOutputStreamTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/RolloverFileOutputStreamTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/ScannerTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/ScannerTest.java index 11585283173..7686b78583b 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/ScannerTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/ScannerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/SearchPatternTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/SearchPatternTest.java index bbf2d143ec1..873c62d4058 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/SearchPatternTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/SearchPatternTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/SharedBlockingCallbackTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/SharedBlockingCallbackTest.java index 7fa83d14790..09a1ec2d372 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/SharedBlockingCallbackTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/SharedBlockingCallbackTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/StringUtilTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/StringUtilTest.java index fd6b25f7504..8069b1fc595 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/StringUtilTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/StringUtilTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/TestIntrospectionUtil.java b/jetty-util/src/test/java/org/eclipse/jetty/util/TestIntrospectionUtil.java index e8902aa1839..8bbeb0d4299 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/TestIntrospectionUtil.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/TestIntrospectionUtil.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/TopologicalSortTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/TopologicalSortTest.java index 31da1875175..19ea458647c 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/TopologicalSortTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/TopologicalSortTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/TrieTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/TrieTest.java index 79aedf95ee6..3e41437aa6c 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/TrieTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/TrieTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/TypeUtilTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/TypeUtilTest.java index 6349a364fae..d9b907835c0 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/TypeUtilTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/TypeUtilTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/URIUtilCanonicalPathTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/URIUtilCanonicalPathTest.java index fa9fd4288cd..71dbb742344 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/URIUtilCanonicalPathTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/URIUtilCanonicalPathTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/URIUtilTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/URIUtilTest.java index 9b332ac9e54..92838feb54c 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/URIUtilTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/URIUtilTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/URLEncodedTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/URLEncodedTest.java index 5997a1d69d4..99e5afb56b4 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/URLEncodedTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/URLEncodedTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/UptimeTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/UptimeTest.java index 5d0da411cd4..8855773f1bc 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/UptimeTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/UptimeTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/UrlEncodedInvalidEncodingTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/UrlEncodedInvalidEncodingTest.java index 5cd28a74a35..3950284c47d 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/UrlEncodedInvalidEncodingTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/UrlEncodedInvalidEncodingTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/UrlEncodedUtf8Test.java b/jetty-util/src/test/java/org/eclipse/jetty/util/UrlEncodedUtf8Test.java index f21cfda2921..8ad37a44204 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/UrlEncodedUtf8Test.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/UrlEncodedUtf8Test.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/Utf8AppendableTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/Utf8AppendableTest.java index 0f3c327df36..06b744ed90e 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/Utf8AppendableTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/Utf8AppendableTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/Utf8LineParserTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/Utf8LineParserTest.java index 59871374d40..ed3f1c28981 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/Utf8LineParserTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/Utf8LineParserTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/component/ContainerLifeCycleTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/component/ContainerLifeCycleTest.java index 019af01bd25..125aab171c4 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/component/ContainerLifeCycleTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/component/ContainerLifeCycleTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/component/LifeCycleListenerNestedTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/component/LifeCycleListenerNestedTest.java index 9e08ddeb758..5ea984b9457 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/component/LifeCycleListenerNestedTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/component/LifeCycleListenerNestedTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/component/LifeCycleListenerTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/component/LifeCycleListenerTest.java index 749382e8780..11c144e5c31 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/component/LifeCycleListenerTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/component/LifeCycleListenerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/log/Blue.java b/jetty-util/src/test/java/org/eclipse/jetty/util/log/Blue.java index 6d92992b159..f7ecd8b29ef 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/log/Blue.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/log/Blue.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/log/CapturingJULHandler.java b/jetty-util/src/test/java/org/eclipse/jetty/util/log/CapturingJULHandler.java index 27d74c28fec..2de0a530898 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/log/CapturingJULHandler.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/log/CapturingJULHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/log/Green.java b/jetty-util/src/test/java/org/eclipse/jetty/util/log/Green.java index c05a6be78c3..57f259ad1ba 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/log/Green.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/log/Green.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/log/JavaUtilLogTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/log/JavaUtilLogTest.java index 73154a1f312..c000c082c5c 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/log/JavaUtilLogTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/log/JavaUtilLogTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/log/LogTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/log/LogTest.java index 513560745b5..9b2f919f4d9 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/log/LogTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/log/LogTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/log/NamedLogTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/log/NamedLogTest.java index 5d16617d24e..380b4192dfd 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/log/NamedLogTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/log/NamedLogTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/log/Red.java b/jetty-util/src/test/java/org/eclipse/jetty/util/log/Red.java index 68d0a8d04d3..d9931a99a56 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/log/Red.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/log/Red.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/log/Slf4jHelper.java b/jetty-util/src/test/java/org/eclipse/jetty/util/log/Slf4jHelper.java index 11ee613fa6a..1c0b7a99e2d 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/log/Slf4jHelper.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/log/Slf4jHelper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/log/StdErrCapture.java b/jetty-util/src/test/java/org/eclipse/jetty/util/log/StdErrCapture.java index e22f86596e1..177c800fa98 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/log/StdErrCapture.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/log/StdErrCapture.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/log/StdErrLogTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/log/StdErrLogTest.java index 3ef69ed3540..a129275cb2e 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/log/StdErrLogTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/log/StdErrLogTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ClassPathResourceTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ClassPathResourceTest.java index aa47eb3a0ac..d27f431dd50 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ClassPathResourceTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ClassPathResourceTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/FileSystemResourceTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/FileSystemResourceTest.java index abff1f5fe1b..f56c309817c 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/FileSystemResourceTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/FileSystemResourceTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/JarResourceTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/JarResourceTest.java index d51fcc76885..2a67edbdb2b 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/JarResourceTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/JarResourceTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/JrtResourceTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/JrtResourceTest.java index 1f677d17fcb..d8da1f91028 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/JrtResourceTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/JrtResourceTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceAliasTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceAliasTest.java index 5001ca91e79..343ac5cde86 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceAliasTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceAliasTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceCollectionTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceCollectionTest.java index 15cfacd7ea5..f6bdbd31bd9 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceCollectionTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceCollectionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceTest.java index 0fe43816c7b..846acc9d116 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/security/CredentialTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/security/CredentialTest.java index 5ea977f104a..678e2eaa7e1 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/security/CredentialTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/security/CredentialTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/security/PasswordTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/security/PasswordTest.java index 2fe8a34de40..9dfaed38523 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/security/PasswordTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/security/PasswordTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/ssl/SslContextFactoryTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/ssl/SslContextFactoryTest.java index fb1060810dc..44e7d8a49be 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/ssl/SslContextFactoryTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/ssl/SslContextFactoryTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/ssl/X509CertificateAdapter.java b/jetty-util/src/test/java/org/eclipse/jetty/util/ssl/X509CertificateAdapter.java index dc26c350ff8..3b5b834ff77 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/ssl/X509CertificateAdapter.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/ssl/X509CertificateAdapter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/ssl/X509Test.java b/jetty-util/src/test/java/org/eclipse/jetty/util/ssl/X509Test.java index d600529add2..d907889dacf 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/ssl/X509Test.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/ssl/X509Test.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/statistic/CounterStatisticTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/statistic/CounterStatisticTest.java index 27f4d991365..906c1f88a4e 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/statistic/CounterStatisticTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/statistic/CounterStatisticTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/statistic/RateStatisticTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/statistic/RateStatisticTest.java index 9ef3e5578d2..52069f2084e 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/statistic/RateStatisticTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/statistic/RateStatisticTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/statistic/SampleStatisticTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/statistic/SampleStatisticTest.java index e72cb688b9e..c864f063478 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/statistic/SampleStatisticTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/statistic/SampleStatisticTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/AbstractThreadPoolTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/AbstractThreadPoolTest.java index 36fe528fb50..1f29ef82187 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/AbstractThreadPoolTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/AbstractThreadPoolTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/EatWhatYouKillTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/EatWhatYouKillTest.java index f8d63d01e58..d1aa99267fd 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/EatWhatYouKillTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/EatWhatYouKillTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/ExecutorThreadPoolTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/ExecutorThreadPoolTest.java index dcf0dbe28eb..9207bdcb21e 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/ExecutorThreadPoolTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/ExecutorThreadPoolTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/LockerTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/LockerTest.java index 81cd78e4273..ee325413795 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/LockerTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/LockerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/QueuedThreadPoolTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/QueuedThreadPoolTest.java index d83bd2a15f2..c896a1dd2f2 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/QueuedThreadPoolTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/QueuedThreadPoolTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/ReservedThreadExecutorTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/ReservedThreadExecutorTest.java index 9b13f12f3f2..d814f681254 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/ReservedThreadExecutorTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/ReservedThreadExecutorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/SchedulerTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/SchedulerTest.java index 156298522b9..f59edc4760c 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/SchedulerTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/SchedulerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/SweeperTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/SweeperTest.java index 8ef1d7e5219..ae3be54630b 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/SweeperTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/SweeperTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/ThreadClassLoaderScopeTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/ThreadClassLoaderScopeTest.java index f0b36940cf4..46ad1c17f7a 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/ThreadClassLoaderScopeTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/ThreadClassLoaderScopeTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/strategy/ExecuteProduceConsumeTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/strategy/ExecuteProduceConsumeTest.java index c1f4f925df4..6cf4e5a758b 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/strategy/ExecuteProduceConsumeTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/strategy/ExecuteProduceConsumeTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/strategy/ExecutionStrategyTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/strategy/ExecutionStrategyTest.java index 19f41ac8c10..f818028d395 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/thread/strategy/ExecutionStrategyTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/thread/strategy/ExecutionStrategyTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/AbsoluteOrdering.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/AbsoluteOrdering.java index 3a190705504..fc099b38b1a 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/AbsoluteOrdering.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/AbsoluteOrdering.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -92,4 +92,4 @@ public class AbsoluteOrdering implements Ordering _hasOther = true; _order.add(OTHER); } -} \ No newline at end of file +} diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/AbstractConfiguration.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/AbstractConfiguration.java index 9f8bdf0a9f0..8907c4cd007 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/AbstractConfiguration.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/AbstractConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/CachingWebAppClassLoader.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/CachingWebAppClassLoader.java index 02ce7a33e58..d7427f7737b 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/CachingWebAppClassLoader.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/CachingWebAppClassLoader.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/ClasspathPattern.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/ClasspathPattern.java index 1c11bbd1aa5..3bf487417f9 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/ClasspathPattern.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/ClasspathPattern.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/CloneConfiguration.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/CloneConfiguration.java index 8448708e987..ff3ec62ab43 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/CloneConfiguration.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/CloneConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/Configuration.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/Configuration.java index 95d152f05ff..ffdef586d6c 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/Configuration.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/Configuration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/DefaultsDescriptor.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/DefaultsDescriptor.java index e5be3fd34c4..cf382a4569f 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/DefaultsDescriptor.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/DefaultsDescriptor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/Descriptor.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/Descriptor.java index 84fba6b2c03..66ba7841ae3 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/Descriptor.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/Descriptor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/DescriptorProcessor.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/DescriptorProcessor.java index 19afc5d05a3..d2e2d5564a7 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/DescriptorProcessor.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/DescriptorProcessor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/DiscoveredAnnotation.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/DiscoveredAnnotation.java index a7b676ad8a7..6a41c657d95 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/DiscoveredAnnotation.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/DiscoveredAnnotation.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/FragmentConfiguration.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/FragmentConfiguration.java index 815ac859a7e..a2b211d7682 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/FragmentConfiguration.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/FragmentConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/FragmentDescriptor.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/FragmentDescriptor.java index f3eb8444b09..58e0d8c202f 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/FragmentDescriptor.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/FragmentDescriptor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/IterativeDescriptorProcessor.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/IterativeDescriptorProcessor.java index 5d379ffa6fd..df97c24e0d2 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/IterativeDescriptorProcessor.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/IterativeDescriptorProcessor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/JarScanner.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/JarScanner.java index c2e935a6a3c..832e6e35641 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/JarScanner.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/JarScanner.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/JettyWebXmlConfiguration.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/JettyWebXmlConfiguration.java index cc949f0546f..8bc4671ecaf 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/JettyWebXmlConfiguration.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/JettyWebXmlConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/MetaData.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/MetaData.java index 3d28189a782..01829ffdf4f 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/MetaData.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/MetaData.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/MetaDataComplete.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/MetaDataComplete.java index 4618ecfc047..d10e4c59440 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/MetaDataComplete.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/MetaDataComplete.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/MetaInfConfiguration.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/MetaInfConfiguration.java index cbf40ab740e..cdc866a0936 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/MetaInfConfiguration.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/MetaInfConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/Ordering.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/Ordering.java index 93176e6456e..2d939406697 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/Ordering.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/Ordering.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/Origin.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/Origin.java index 083adc8b4d3..707159048f8 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/Origin.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/Origin.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/OverrideDescriptor.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/OverrideDescriptor.java index c5f486edd85..69c31223fad 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/OverrideDescriptor.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/OverrideDescriptor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/RelativeOrdering.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/RelativeOrdering.java index ce44b3ce7b0..cfd5c2ed8b3 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/RelativeOrdering.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/RelativeOrdering.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -141,4 +141,4 @@ public class RelativeOrdering implements Ordering return sorted; } -} \ No newline at end of file +} diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/StandardDescriptorProcessor.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/StandardDescriptorProcessor.java index 21454cb806d..4ad5d94ef01 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/StandardDescriptorProcessor.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/StandardDescriptorProcessor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebAppClassLoader.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebAppClassLoader.java index 9c2693dcbd7..bcee5a51529 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebAppClassLoader.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebAppClassLoader.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebAppContext.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebAppContext.java index 41d67a3624f..75015ac0e10 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebAppContext.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebAppContext.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebDescriptor.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebDescriptor.java index cf96d68095f..a538d7be448 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebDescriptor.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebDescriptor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebInfConfiguration.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebInfConfiguration.java index f38bc347ad8..b94f7881a69 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebInfConfiguration.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebInfConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebXmlConfiguration.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebXmlConfiguration.java index 0e22d00e3f1..58b3c871b48 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebXmlConfiguration.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebXmlConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/package-info.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/package-info.java index e66d27a6ef6..65968d02fa2 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/package-info.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/test/java/org/acme/webapp/ClassInJarA.java b/jetty-webapp/src/test/java/org/acme/webapp/ClassInJarA.java index a04dc8851e9..67328932925 100644 --- a/jetty-webapp/src/test/java/org/acme/webapp/ClassInJarA.java +++ b/jetty-webapp/src/test/java/org/acme/webapp/ClassInJarA.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/ClasspathPatternTest.java b/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/ClasspathPatternTest.java index f1349b9a48a..117d553deda 100644 --- a/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/ClasspathPatternTest.java +++ b/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/ClasspathPatternTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/MetaInfConfigurationTest.java b/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/MetaInfConfigurationTest.java index 8e783c21897..4d88f47fde0 100644 --- a/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/MetaInfConfigurationTest.java +++ b/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/MetaInfConfigurationTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/OrderingTest.java b/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/OrderingTest.java index 891e86c2334..f7b33ae9691 100644 --- a/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/OrderingTest.java +++ b/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/OrderingTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/URLStreamHandlerUtil.java b/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/URLStreamHandlerUtil.java index caa86a0e95e..4f7bcfedf14 100644 --- a/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/URLStreamHandlerUtil.java +++ b/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/URLStreamHandlerUtil.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/WebAppClassLoaderTest.java b/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/WebAppClassLoaderTest.java index 201d72793ab..572c42b5aec 100644 --- a/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/WebAppClassLoaderTest.java +++ b/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/WebAppClassLoaderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/WebAppClassLoaderUrlStreamTest.java b/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/WebAppClassLoaderUrlStreamTest.java index d4a057a3447..e2e011e98b7 100644 --- a/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/WebAppClassLoaderUrlStreamTest.java +++ b/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/WebAppClassLoaderUrlStreamTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/WebAppContextTest.java b/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/WebAppContextTest.java index 656ba4084ff..2598af87df1 100644 --- a/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/WebAppContextTest.java +++ b/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/WebAppContextTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/WebInfConfigurationTest.java b/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/WebInfConfigurationTest.java index 21634e101a0..0307e31a080 100644 --- a/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/WebInfConfigurationTest.java +++ b/jetty-webapp/src/test/java/org/eclipse/jetty/webapp/WebInfConfigurationTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/AbstractJsrRemote.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/AbstractJsrRemote.java index 9de8703cb33..e24d76b98a2 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/AbstractJsrRemote.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/AbstractJsrRemote.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/BasicEndpointConfig.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/BasicEndpointConfig.java index a6c55ae3a8e..71ba357f6ba 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/BasicEndpointConfig.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/BasicEndpointConfig.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/ClientContainer.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/ClientContainer.java index 9efe4361ea2..7885c22afaf 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/ClientContainer.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/ClientContainer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/Configurable.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/Configurable.java index c65212d7f1d..0803a9c2bd0 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/Configurable.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/Configurable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/ConfigurationException.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/ConfigurationException.java index 491a16d70a2..c370fb46cd2 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/ConfigurationException.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/ConfigurationException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/DecoderFactory.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/DecoderFactory.java index 2846636b8a3..8615bf86a77 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/DecoderFactory.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/DecoderFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/EncoderFactory.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/EncoderFactory.java index 3c002d5e2f0..f35e34b98ed 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/EncoderFactory.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/EncoderFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/InitException.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/InitException.java index f16cf138031..0a475e8e5a0 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/InitException.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/InitException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JettyClientContainerProvider.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JettyClientContainerProvider.java index 0ac78b62a45..30898b9aed0 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JettyClientContainerProvider.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JettyClientContainerProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrAsyncRemote.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrAsyncRemote.java index eb11465690d..e1f9249b55a 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrAsyncRemote.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrAsyncRemote.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrBasicRemote.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrBasicRemote.java index 9c932c9e43a..b463cdd8bc8 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrBasicRemote.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrBasicRemote.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrExtension.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrExtension.java index fb7a4060358..189ad8016f6 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrExtension.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrExtension.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrExtensionConfig.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrExtensionConfig.java index 4730441a396..9ac160c6ff8 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrExtensionConfig.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrExtensionConfig.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrHandshakeResponse.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrHandshakeResponse.java index 1d51a5ae5ff..389bed92eca 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrHandshakeResponse.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrHandshakeResponse.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrPongMessage.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrPongMessage.java index 0b16d2a0dc0..5271cc900b2 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrPongMessage.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrPongMessage.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrSession.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrSession.java index c678a0d304f..e502ec3e0c3 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrSession.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrSession.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrSessionFactory.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrSessionFactory.java index ea6280625a5..9a79fbf27f9 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrSessionFactory.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrSessionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrUpgradeListener.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrUpgradeListener.java index 7f76457d816..cbbb2a6d0a7 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrUpgradeListener.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/JsrUpgradeListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/MessageHandlerFactory.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/MessageHandlerFactory.java index 2c35553b1b4..6ef7fa6ab60 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/MessageHandlerFactory.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/MessageHandlerFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/MessageHandlerWrapper.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/MessageHandlerWrapper.java index 2bd31064d7e..836b79936ed 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/MessageHandlerWrapper.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/MessageHandlerWrapper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/MessageType.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/MessageType.java index ff568da98b9..895160f4b8b 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/MessageType.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/MessageType.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/AnnotatedEndpointMetadata.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/AnnotatedEndpointMetadata.java index 856c80cc718..cbbf33d1b0e 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/AnnotatedEndpointMetadata.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/AnnotatedEndpointMetadata.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/AnnotatedEndpointScanner.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/AnnotatedEndpointScanner.java index f31c734efbf..6f130ef92a9 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/AnnotatedEndpointScanner.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/AnnotatedEndpointScanner.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/IJsrMethod.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/IJsrMethod.java index 706e9604c3e..e9a498f22b7 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/IJsrMethod.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/IJsrMethod.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/IJsrParamId.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/IJsrParamId.java index 23f262f66e5..aa07406b6b6 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/IJsrParamId.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/IJsrParamId.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrCallable.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrCallable.java index afabdd419f0..aac3d322b80 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrCallable.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrCallable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrEvents.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrEvents.java index 57a3f84787e..9a2b74b29b9 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrEvents.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrEvents.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdBase.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdBase.java index 917173eb90b..3702f316b84 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdBase.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdBase.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdBinary.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdBinary.java index e11610f950f..66b14923438 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdBinary.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdBinary.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdDecoder.java index 5bfafbe19f1..2ab11e7860e 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdOnClose.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdOnClose.java index 353abc5a41e..93d826e834d 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdOnClose.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdOnClose.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdOnError.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdOnError.java index 9dedea6be1a..d8f11c4435e 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdOnError.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdOnError.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdOnMessage.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdOnMessage.java index afb75a6d69a..0792f00d34d 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdOnMessage.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdOnMessage.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdOnOpen.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdOnOpen.java index f6eee262b4f..3965ed8a8a8 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdOnOpen.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdOnOpen.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdPong.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdPong.java index 4b48e1af669..8e65a7493e3 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdPong.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdPong.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdText.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdText.java index 8472ac3c54e..cc51ab41a39 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdText.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdText.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnCloseCallable.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnCloseCallable.java index 90ba489217d..83d6ec73eba 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnCloseCallable.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnCloseCallable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnErrorCallable.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnErrorCallable.java index cf8e4c0377e..87e900b267c 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnErrorCallable.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnErrorCallable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageBinaryCallable.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageBinaryCallable.java index 6ccde690f9a..a6d7f3a486b 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageBinaryCallable.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageBinaryCallable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageBinaryStreamCallable.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageBinaryStreamCallable.java index 7eefdc5f5a8..e965c0952d7 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageBinaryStreamCallable.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageBinaryStreamCallable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageCallable.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageCallable.java index 81a9a694c42..5ddf76ae7cf 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageCallable.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageCallable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessagePongCallable.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessagePongCallable.java index 85d98dd67f9..b33ec33cffd 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessagePongCallable.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessagePongCallable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageTextCallable.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageTextCallable.java index ca097eda782..82a8ced5eb2 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageTextCallable.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageTextCallable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageTextStreamCallable.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageTextStreamCallable.java index c784b602d12..23b37415706 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageTextStreamCallable.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnMessageTextStreamCallable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnOpenCallable.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnOpenCallable.java index 711fbe17b5d..f98c04dac6c 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnOpenCallable.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/OnOpenCallable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/Param.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/Param.java index 5bfd5800932..3791c4847b1 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/Param.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/Param.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/AnnotatedClientEndpointConfig.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/AnnotatedClientEndpointConfig.java index 5625e238e59..95ccfeb30bc 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/AnnotatedClientEndpointConfig.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/AnnotatedClientEndpointConfig.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/AnnotatedClientEndpointMetadata.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/AnnotatedClientEndpointMetadata.java index b4f359cb002..93864847607 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/AnnotatedClientEndpointMetadata.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/AnnotatedClientEndpointMetadata.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/EmptyClientEndpointConfig.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/EmptyClientEndpointConfig.java index feac5dcb46a..5e916289e86 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/EmptyClientEndpointConfig.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/EmptyClientEndpointConfig.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/EmptyConfigurator.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/EmptyConfigurator.java index f28b31e4dfa..fd8bb043ab1 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/EmptyConfigurator.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/EmptyConfigurator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/JsrClientEndpointImpl.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/JsrClientEndpointImpl.java index 6e053c692ec..a303c6fdef5 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/JsrClientEndpointImpl.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/JsrClientEndpointImpl.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/SimpleEndpointMetadata.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/SimpleEndpointMetadata.java index e97b4bd281d..c1eecca2502 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/SimpleEndpointMetadata.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/client/SimpleEndpointMetadata.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/AbstractDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/AbstractDecoder.java index 0dfb4f63bc9..9866837bafe 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/AbstractDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/AbstractDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/BooleanDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/BooleanDecoder.java index 5506f9b6e12..af682b0e5ec 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/BooleanDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/BooleanDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ByteArrayDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ByteArrayDecoder.java index f0f0eb039eb..6a9849596f6 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ByteArrayDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ByteArrayDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ByteBufferDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ByteBufferDecoder.java index 183a70c8a68..24024f16c56 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ByteBufferDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ByteBufferDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ByteDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ByteDecoder.java index ad9e90a88a1..edbed981bf4 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ByteDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ByteDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/CharacterDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/CharacterDecoder.java index 0c45ad3c898..5881db01b88 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/CharacterDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/CharacterDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/DoubleDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/DoubleDecoder.java index e15b4a9fc2d..4527d81315b 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/DoubleDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/DoubleDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/FloatDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/FloatDecoder.java index b966a14d079..0ceefdd87c2 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/FloatDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/FloatDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/InputStreamDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/InputStreamDecoder.java index 440aac1cdf2..233c52d2efe 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/InputStreamDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/InputStreamDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/IntegerDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/IntegerDecoder.java index 49680fb2f50..42912053252 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/IntegerDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/IntegerDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/LongDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/LongDecoder.java index 9eccdfa3015..b8ac679ad5e 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/LongDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/LongDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/PongMessageDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/PongMessageDecoder.java index cda964ce0f4..689328f1c16 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/PongMessageDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/PongMessageDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/PrimitiveDecoderMetadataSet.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/PrimitiveDecoderMetadataSet.java index 9835a1a2a23..c6b4a90da41 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/PrimitiveDecoderMetadataSet.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/PrimitiveDecoderMetadataSet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ReaderDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ReaderDecoder.java index 85605f8a934..3595a97f74e 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ReaderDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ReaderDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ShortDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ShortDecoder.java index 317240c0e37..1359704040f 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ShortDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/ShortDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/StringDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/StringDecoder.java index 7dc31413663..894e41a6100 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/StringDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/decoders/StringDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/AbstractEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/AbstractEncoder.java index 0c47b9834df..4014ce24ce4 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/AbstractEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/AbstractEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/BooleanEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/BooleanEncoder.java index ba8afea4a7a..22a6807663f 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/BooleanEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/BooleanEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/ByteArrayEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/ByteArrayEncoder.java index f8cdf11536f..e8c0a493dd9 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/ByteArrayEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/ByteArrayEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/ByteBufferEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/ByteBufferEncoder.java index 4cc36c65640..c280c23ff77 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/ByteBufferEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/ByteBufferEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/ByteEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/ByteEncoder.java index 10abc86050e..ce1653b92f4 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/ByteEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/ByteEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/CharacterEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/CharacterEncoder.java index 36b1f0901f7..86933bc6df9 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/CharacterEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/CharacterEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DefaultBinaryEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DefaultBinaryEncoder.java index 0f11178ee2d..2053ec08f9d 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DefaultBinaryEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DefaultBinaryEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DefaultBinaryStreamEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DefaultBinaryStreamEncoder.java index 8104dd29d9b..3fa4f7df6f7 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DefaultBinaryStreamEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DefaultBinaryStreamEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DefaultTextEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DefaultTextEncoder.java index 9d723574c75..6333a5ac523 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DefaultTextEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DefaultTextEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DefaultTextStreamEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DefaultTextStreamEncoder.java index 97734abf104..2261c4a48a7 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DefaultTextStreamEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DefaultTextStreamEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DoubleEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DoubleEncoder.java index 0977f8b926d..0fcb790f325 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DoubleEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/DoubleEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/EncodeFailedFuture.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/EncodeFailedFuture.java index 3e7ad632f0e..f36a202ce1a 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/EncodeFailedFuture.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/EncodeFailedFuture.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/FloatEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/FloatEncoder.java index 205ffc645f8..85271e46882 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/FloatEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/FloatEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/IntegerEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/IntegerEncoder.java index 8d89be27240..2cdba51ff7d 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/IntegerEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/IntegerEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/LongEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/LongEncoder.java index 6f5612021ef..6cc6efcaa02 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/LongEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/LongEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/PrimitiveEncoderMetadataSet.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/PrimitiveEncoderMetadataSet.java index baabbb0011e..267c9e32627 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/PrimitiveEncoderMetadataSet.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/PrimitiveEncoderMetadataSet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/ShortEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/ShortEncoder.java index 6682ab359cf..d36ddba3be9 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/ShortEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/ShortEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/StringEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/StringEncoder.java index 95a2bde92a7..8a322fb1ce6 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/StringEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/encoders/StringEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/AbstractJsrEventDriver.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/AbstractJsrEventDriver.java index ab50dee4c32..cf9a4f57d56 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/AbstractJsrEventDriver.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/AbstractJsrEventDriver.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/EndpointInstance.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/EndpointInstance.java index 107a83e29e9..80a00075398 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/EndpointInstance.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/EndpointInstance.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JsrAnnotatedEventDriver.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JsrAnnotatedEventDriver.java index 348af60cc7a..54ad01e029b 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JsrAnnotatedEventDriver.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JsrAnnotatedEventDriver.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JsrEndpointEventDriver.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JsrEndpointEventDriver.java index 78fd0291a7f..a058d268039 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JsrEndpointEventDriver.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JsrEndpointEventDriver.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JsrEndpointImpl.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JsrEndpointImpl.java index faea0587084..a1b639ee16b 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JsrEndpointImpl.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JsrEndpointImpl.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JsrEventDriverFactory.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JsrEventDriverFactory.java index d61d44b66ce..1817f32cbc2 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JsrEventDriverFactory.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/endpoints/JsrEventDriverFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/BinaryPartialMessage.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/BinaryPartialMessage.java index 158ed4e4202..cb5ac0a67fb 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/BinaryPartialMessage.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/BinaryPartialMessage.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/BinaryPartialOnMessage.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/BinaryPartialOnMessage.java index a307a74f97c..8f26d66da3a 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/BinaryPartialOnMessage.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/BinaryPartialOnMessage.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/BinaryWholeMessage.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/BinaryWholeMessage.java index d69c507bba0..e64d9b1a2a8 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/BinaryWholeMessage.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/BinaryWholeMessage.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/SendHandlerWriteCallback.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/SendHandlerWriteCallback.java index fe69a50db39..8323bb55917 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/SendHandlerWriteCallback.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/SendHandlerWriteCallback.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/TextPartialMessage.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/TextPartialMessage.java index 3bb7fece79b..3a1cb5386e7 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/TextPartialMessage.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/TextPartialMessage.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/TextPartialOnMessage.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/TextPartialOnMessage.java index e15e73a55b3..75782266bf6 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/TextPartialOnMessage.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/TextPartialOnMessage.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/TextWholeMessage.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/TextWholeMessage.java index a0ff754f362..8f11d96c2a2 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/TextWholeMessage.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/messages/TextWholeMessage.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/CoderMetadata.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/CoderMetadata.java index 66bf457ca7e..4b21acf26dd 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/CoderMetadata.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/CoderMetadata.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/CoderMetadataSet.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/CoderMetadataSet.java index bc94ff31dbc..339417f77db 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/CoderMetadataSet.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/CoderMetadataSet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/DecoderMetadata.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/DecoderMetadata.java index c246e67e10d..976e61b2ac4 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/DecoderMetadata.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/DecoderMetadata.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/DecoderMetadataSet.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/DecoderMetadataSet.java index 411c78ecb25..39d900bcb9b 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/DecoderMetadataSet.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/DecoderMetadataSet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/DuplicateCoderException.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/DuplicateCoderException.java index 78a3434a3c2..f8ed8f0fd8a 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/DuplicateCoderException.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/DuplicateCoderException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/EncoderMetadata.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/EncoderMetadata.java index 070cef72c06..09b44094b32 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/EncoderMetadata.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/EncoderMetadata.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/EncoderMetadataSet.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/EncoderMetadataSet.java index 4d5b0e3a01b..d5d0a31afba 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/EncoderMetadataSet.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/EncoderMetadataSet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/EndpointMetadata.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/EndpointMetadata.java index 63003d07296..68381340425 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/EndpointMetadata.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/EndpointMetadata.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/MessageHandlerMetadata.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/MessageHandlerMetadata.java index a984c95a0c8..b37855507aa 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/MessageHandlerMetadata.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/metadata/MessageHandlerMetadata.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/utils/Primitives.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/utils/Primitives.java index 3e7396a9eb0..f55bd4ecc72 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/utils/Primitives.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/utils/Primitives.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEchoClient.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEchoClient.java index 5347f85df66..c94aca59f1a 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEchoClient.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEchoClient.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEchoTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEchoTest.java index abcc4211320..88690bca788 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEchoTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEchoTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEndpointClient.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEndpointClient.java index 691beec4455..781965a9ca3 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEndpointClient.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEndpointClient.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEndpointConfigTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEndpointConfigTest.java index 33631426cb8..5a6e3d97e96 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEndpointConfigTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEndpointConfigTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEndpointConfigurator.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEndpointConfigurator.java index e7aaf22f163..144d8d04ee1 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEndpointConfigurator.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/AnnotatedEndpointConfigurator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/ConfiguratorTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/ConfiguratorTest.java index 54b4cdb0cb5..e23db17a358 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/ConfiguratorTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/ConfiguratorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/CookiesTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/CookiesTest.java index 28c0ed33143..ef5569e3b4b 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/CookiesTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/CookiesTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/DecoderFactoryTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/DecoderFactoryTest.java index a9f455aad73..6399db1eb9f 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/DecoderFactoryTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/DecoderFactoryTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/DecoderReaderManySmallTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/DecoderReaderManySmallTest.java index 29e7dac754e..dd91eb4cf29 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/DecoderReaderManySmallTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/DecoderReaderManySmallTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/DecoderReaderTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/DecoderReaderTest.java index 19984f90a83..99a13791b26 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/DecoderReaderTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/DecoderReaderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/DelayedStartClientTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/DelayedStartClientTest.java index af7d084be11..8b35727be75 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/DelayedStartClientTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/DelayedStartClientTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EchoCaptureHandler.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EchoCaptureHandler.java index d114b7f27f0..dfb5a1b5b4e 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EchoCaptureHandler.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EchoCaptureHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EchoHandler.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EchoHandler.java index 2988b8edee9..69ebf39c9de 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EchoHandler.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EchoHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EncoderFactoryTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EncoderFactoryTest.java index e5f279d46aa..77ef1df489d 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EncoderFactoryTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EncoderFactoryTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EncoderTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EncoderTest.java index 386cbbdcfd0..dc720c5f6c8 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EncoderTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EncoderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EndpointEchoClient.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EndpointEchoClient.java index 5d8a48bc54d..eed99ffdf85 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EndpointEchoClient.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EndpointEchoClient.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EndpointEchoTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EndpointEchoTest.java index 4e06ba67de8..7f959582bf3 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EndpointEchoTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/EndpointEchoTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/JettyEchoSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/JettyEchoSocket.java index 81bd2b7df35..e7b141911f2 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/JettyEchoSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/JettyEchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/JsrSessionTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/JsrSessionTest.java index 1b3816060d6..6ca7c9b8e06 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/JsrSessionTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/JsrSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/LargeMessageTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/LargeMessageTest.java index 261ee466803..d16228d360d 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/LargeMessageTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/LargeMessageTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/MessageHandlerFactoryTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/MessageHandlerFactoryTest.java index 3796a9e33fa..a2f9ec1aab9 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/MessageHandlerFactoryTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/MessageHandlerFactoryTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/MessageQueue.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/MessageQueue.java index a46f5fb4b20..c67bdc13953 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/MessageQueue.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/MessageQueue.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/MessageReceivingTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/MessageReceivingTest.java index 5a3971eec4f..6421ba26758 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/MessageReceivingTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/MessageReceivingTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/annotations/DateTextSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/annotations/DateTextSocket.java index ad9b508b757..1d09e540489 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/annotations/DateTextSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/annotations/DateTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdDecoderTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdDecoderTest.java index d0de37241c3..d8b6b2fa769 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdDecoderTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrParamIdDecoderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/BadDualDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/BadDualDecoder.java index e16ffe95af3..831185dd1a8 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/BadDualDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/BadDualDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/DateDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/DateDecoder.java index 9b7345b61b1..92f33d800fe 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/DateDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/DateDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/DateTimeDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/DateTimeDecoder.java index ace714d2208..dfadc616da7 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/DateTimeDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/DateTimeDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/IntegerDecoderTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/IntegerDecoderTest.java index 64e21f2aeb0..49c1f6afbb4 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/IntegerDecoderTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/IntegerDecoderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/PrimitiveDecoderMetadataSetTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/PrimitiveDecoderMetadataSetTest.java index df664218310..98bb30c091d 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/PrimitiveDecoderMetadataSetTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/PrimitiveDecoderMetadataSetTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/TimeDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/TimeDecoder.java index ee4c680d3e9..96e4ea2a2a7 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/TimeDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/TimeDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/ValidDualDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/ValidDualDecoder.java index 767638bf5df..3c2f6207d4d 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/ValidDualDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/decoders/ValidDualDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/demo/ExampleClient.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/demo/ExampleClient.java index f5df022a31d..c5ae22adfd2 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/demo/ExampleClient.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/demo/ExampleClient.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/demo/ExampleSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/demo/ExampleSocket.java index 86fba839a5a..5933898e55e 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/demo/ExampleSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/demo/ExampleSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/BadDualEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/BadDualEncoder.java index 98e36bcaf31..8dc09718db2 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/BadDualEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/BadDualEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/DateEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/DateEncoder.java index 2d973842928..531e260a34b 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/DateEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/DateEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/DateTimeEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/DateTimeEncoder.java index 28f17b113f4..afe3c18e455 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/DateTimeEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/DateTimeEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/DualEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/DualEncoder.java index 9b006d76fc3..e1544d7ddd8 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/DualEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/DualEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/TimeEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/TimeEncoder.java index 30047ed4960..da799de56ae 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/TimeEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/TimeEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/ValidDualEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/ValidDualEncoder.java index 40f14b8062c..fec6d75fc74 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/ValidDualEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/encoders/ValidDualEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/ClientAnnotatedEndpointScanner_GoodSignaturesTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/ClientAnnotatedEndpointScanner_GoodSignaturesTest.java index c55b7ffd5d0..15101b017c1 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/ClientAnnotatedEndpointScanner_GoodSignaturesTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/ClientAnnotatedEndpointScanner_GoodSignaturesTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/ClientAnnotatedEndpointScanner_InvalidSignaturesTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/ClientAnnotatedEndpointScanner_InvalidSignaturesTest.java index fc248f1456b..22d7761ce05 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/ClientAnnotatedEndpointScanner_InvalidSignaturesTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/ClientAnnotatedEndpointScanner_InvalidSignaturesTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/OnCloseTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/OnCloseTest.java index 6babca95df3..70514be2976 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/OnCloseTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/OnCloseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/TrackingSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/TrackingSocket.java index 753ebcbf367..d029b0569d5 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/TrackingSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/TrackingSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicBinaryMessageByteBufferSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicBinaryMessageByteBufferSocket.java index 1438fd30a8c..c1150564cee 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicBinaryMessageByteBufferSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicBinaryMessageByteBufferSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorSessionSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorSessionSocket.java index 8089bb1b0ee..6fa75080b84 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorSessionSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorSessionSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorSessionThrowableSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorSessionThrowableSocket.java index b24b579ecf8..427876bb9bf 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorSessionThrowableSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorSessionThrowableSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorSocket.java index f83dde4e179..13f8b3620a7 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorThrowableSessionSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorThrowableSessionSocket.java index 1ce52b38f8f..64500312882 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorThrowableSessionSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorThrowableSessionSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorThrowableSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorThrowableSocket.java index f01e2ab8bbc..32b4d7178dd 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorThrowableSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicErrorThrowableSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicInputStreamSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicInputStreamSocket.java index 58cbf3fe0af..e9f20422330 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicInputStreamSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicInputStreamSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicInputStreamWithThrowableSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicInputStreamWithThrowableSocket.java index 2ab92275e99..e5553058a72 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicInputStreamWithThrowableSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicInputStreamWithThrowableSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicOpenCloseSessionSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicOpenCloseSessionSocket.java index ff4787e7cf0..d1ccb57e151 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicOpenCloseSessionSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicOpenCloseSessionSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicOpenCloseSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicOpenCloseSocket.java index bea3cd10bc3..392f63fe6a5 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicOpenCloseSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicOpenCloseSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicOpenSessionSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicOpenSessionSocket.java index a6bbe0cfb8e..a9128b97221 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicOpenSessionSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicOpenSessionSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicOpenSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicOpenSocket.java index 613f4602a70..4b05906e9ed 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicOpenSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicOpenSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicPongMessageSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicPongMessageSocket.java index 0e8c8e18e09..30ca0be41ad 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicPongMessageSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicPongMessageSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicTextMessageStringSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicTextMessageStringSocket.java index 91a13d634fc..f113a92ec5f 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicTextMessageStringSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/BasicTextMessageStringSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidCloseIntSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidCloseIntSocket.java index be946080cd2..6e5efe9f613 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidCloseIntSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidCloseIntSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidErrorErrorSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidErrorErrorSocket.java index b0ea04f0703..bffb19b98ad 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidErrorErrorSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidErrorErrorSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidErrorExceptionSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidErrorExceptionSocket.java index 3f1510c1641..d036ba74fcb 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidErrorExceptionSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidErrorExceptionSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidErrorIntSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidErrorIntSocket.java index e4a2eb51b9b..61b2289115b 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidErrorIntSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidErrorIntSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidOpenCloseReasonSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidOpenCloseReasonSocket.java index f7b218aa3ab..9b67e2ccffe 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidOpenCloseReasonSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidOpenCloseReasonSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidOpenIntSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidOpenIntSocket.java index 640ab8817e5..7b5332d7ae4 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidOpenIntSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidOpenIntSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidOpenSessionIntSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidOpenSessionIntSocket.java index fdde042e06a..85664f71768 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidOpenSessionIntSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/InvalidOpenSessionIntSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseEndpointConfigSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseEndpointConfigSocket.java index 7040b5ad1e9..75988afb970 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseEndpointConfigSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseEndpointConfigSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseReasonSessionSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseReasonSessionSocket.java index a4f6aefe178..f63297ff1df 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseReasonSessionSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseReasonSessionSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseReasonSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseReasonSocket.java index 93d8a9008bb..d202b797274 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseReasonSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseReasonSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseSessionReasonSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseSessionReasonSocket.java index 74244079d10..8d24fdcedb6 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseSessionReasonSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseSessionReasonSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseSessionSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseSessionSocket.java index 30de1ec8503..5b6fb4616a3 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseSessionSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseSessionSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseSocket.java index 0db2fd42d37..26fe28b9e41 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/endpoints/samples/close/CloseSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/BaseMessageHandler.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/BaseMessageHandler.java index 76298ba2933..c595c929d01 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/BaseMessageHandler.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/BaseMessageHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ByteArrayPartialHandler.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ByteArrayPartialHandler.java index 674c599bd90..1c250fdb41a 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ByteArrayPartialHandler.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ByteArrayPartialHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ByteArrayWholeHandler.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ByteArrayWholeHandler.java index 7968fa3eb9f..79498d3d4c4 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ByteArrayWholeHandler.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ByteArrayWholeHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ByteBufferPartialHandler.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ByteBufferPartialHandler.java index 8ea737384c2..c35c6766b5f 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ByteBufferPartialHandler.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ByteBufferPartialHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ByteBufferWholeHandler.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ByteBufferWholeHandler.java index 1d783002d6d..3a2d922445c 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ByteBufferWholeHandler.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ByteBufferWholeHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ComboMessageHandler.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ComboMessageHandler.java index d32d41c5323..18428640de0 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ComboMessageHandler.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ComboMessageHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ExtendedMessageHandler.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ExtendedMessageHandler.java index 079206581cd..22deac5383c 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ExtendedMessageHandler.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ExtendedMessageHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/InputStreamWholeHandler.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/InputStreamWholeHandler.java index 8c7b1610d77..4779ca77ebe 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/InputStreamWholeHandler.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/InputStreamWholeHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/LongMessageHandler.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/LongMessageHandler.java index e8fae99726d..0d4d7f37df1 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/LongMessageHandler.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/LongMessageHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ReaderWholeHandler.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ReaderWholeHandler.java index afb3efd3fd2..531b6711ef8 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ReaderWholeHandler.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/ReaderWholeHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/StringPartialHandler.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/StringPartialHandler.java index 8c4bac039b8..033c13d7f2e 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/StringPartialHandler.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/StringPartialHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/StringWholeHandler.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/StringWholeHandler.java index ed03ba26cbd..f77e3695ac7 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/StringWholeHandler.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/handlers/StringWholeHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/metadata/DecoderMetadataSetTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/metadata/DecoderMetadataSetTest.java index c87a80d6da5..607816a4b8d 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/metadata/DecoderMetadataSetTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/metadata/DecoderMetadataSetTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/metadata/EncoderMetadataSetTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/metadata/EncoderMetadataSetTest.java index d0e9d7d1b39..2fda3773af3 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/metadata/EncoderMetadataSetTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/metadata/EncoderMetadataSetTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/misbehaving/AnnotatedRuntimeOnOpen.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/misbehaving/AnnotatedRuntimeOnOpen.java index e8ca38ab77c..d1507129019 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/misbehaving/AnnotatedRuntimeOnOpen.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/misbehaving/AnnotatedRuntimeOnOpen.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/misbehaving/EndpointRuntimeOnOpen.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/misbehaving/EndpointRuntimeOnOpen.java index d3db3a47bb9..be454a0ae2d 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/misbehaving/EndpointRuntimeOnOpen.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/misbehaving/EndpointRuntimeOnOpen.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/misbehaving/MisbehavingClassTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/misbehaving/MisbehavingClassTest.java index 0cdf58c052a..3dcb2276ff8 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/misbehaving/MisbehavingClassTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/misbehaving/MisbehavingClassTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/AbstractStringEndpoint.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/AbstractStringEndpoint.java index 28936f94cad..948b5fae300 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/AbstractStringEndpoint.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/AbstractStringEndpoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/DummyEndpoint.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/DummyEndpoint.java index dfab6659dfd..227ee75b3ff 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/DummyEndpoint.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/DummyEndpoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/EchoStringEndpoint.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/EchoStringEndpoint.java index 207e01c5ea1..2a73f126396 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/EchoStringEndpoint.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/EchoStringEndpoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/ExtDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/ExtDecoder.java index b750086b1e1..f1887534d1b 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/ExtDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/ExtDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/Fruit.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/Fruit.java index 8741fe0da57..c3d58790c36 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/Fruit.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/Fruit.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/FruitBinaryEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/FruitBinaryEncoder.java index 49f60bb9bf7..63cfcd19782 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/FruitBinaryEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/FruitBinaryEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/FruitDecoder.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/FruitDecoder.java index 2b201cab1c4..f504a06c238 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/FruitDecoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/FruitDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/FruitTextEncoder.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/FruitTextEncoder.java index d666c3eba8f..36c4b8fa3c0 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/FruitTextEncoder.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/FruitTextEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/IntSocket.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/IntSocket.java index 7256c13aab8..93937f4f923 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/IntSocket.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/samples/IntSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/utils/ReflectUtilsTest.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/utils/ReflectUtilsTest.java index 2e77f60bfbc..c077397cfde 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/utils/ReflectUtilsTest.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/utils/ReflectUtilsTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/utils/TypeTree.java b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/utils/TypeTree.java index 6e075f77d10..4fe27319ac2 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/utils/TypeTree.java +++ b/jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/utils/TypeTree.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/AnnotatedServerEndpointConfig.java b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/AnnotatedServerEndpointConfig.java index 822cd44f1c7..483c6ae5eb0 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/AnnotatedServerEndpointConfig.java +++ b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/AnnotatedServerEndpointConfig.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/AnnotatedServerEndpointMetadata.java b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/AnnotatedServerEndpointMetadata.java index f8d7373b67c..14853226328 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/AnnotatedServerEndpointMetadata.java +++ b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/AnnotatedServerEndpointMetadata.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/BasicServerEndpointConfig.java b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/BasicServerEndpointConfig.java index a7020d53bae..98b4c1f66d3 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/BasicServerEndpointConfig.java +++ b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/BasicServerEndpointConfig.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/ContainerDefaultConfigurator.java b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/ContainerDefaultConfigurator.java index a4b7e6052b9..f5b442d9879 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/ContainerDefaultConfigurator.java +++ b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/ContainerDefaultConfigurator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrCreator.java b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrCreator.java index 741a8213a9f..27182696240 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrCreator.java +++ b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrCreator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrHandshakeRequest.java b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrHandshakeRequest.java index 6f7b4dbe242..c6493f61173 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrHandshakeRequest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrHandshakeRequest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrHandshakeResponse.java b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrHandshakeResponse.java index 9be556ef0cd..f2820f6e158 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrHandshakeResponse.java +++ b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrHandshakeResponse.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrPathParamId.java b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrPathParamId.java index 3a7fd3dce6e..6d195226a42 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrPathParamId.java +++ b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrPathParamId.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrServerEndpointImpl.java b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrServerEndpointImpl.java index 25d3d03755d..ad13ea42156 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrServerEndpointImpl.java +++ b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrServerEndpointImpl.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrServerExtendsEndpointImpl.java b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrServerExtendsEndpointImpl.java index 09ac8975997..6bd76a62203 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrServerExtendsEndpointImpl.java +++ b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrServerExtendsEndpointImpl.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/PathParamServerEndpointConfig.java b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/PathParamServerEndpointConfig.java index a02c7f9dbe5..ba649705e41 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/PathParamServerEndpointConfig.java +++ b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/PathParamServerEndpointConfig.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/ServerContainer.java b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/ServerContainer.java index 5fd94256745..4ad77048a4d 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/ServerContainer.java +++ b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/ServerContainer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/ServerEndpointMetadata.java b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/ServerEndpointMetadata.java index 4ec24083867..2a449a093a8 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/ServerEndpointMetadata.java +++ b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/ServerEndpointMetadata.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/SimpleServerEndpointMetadata.java b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/SimpleServerEndpointMetadata.java index 2f3da301cfe..eabe2287190 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/SimpleServerEndpointMetadata.java +++ b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/SimpleServerEndpointMetadata.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/deploy/WebSocketServerContainerInitializer.java b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/deploy/WebSocketServerContainerInitializer.java index 4c8a0d7b172..2eee8b7ed44 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/deploy/WebSocketServerContainerInitializer.java +++ b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/deploy/WebSocketServerContainerInitializer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/GetHttpSessionConfigurator.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/GetHttpSessionConfigurator.java index 4306a3a115b..83fe0714b0c 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/GetHttpSessionConfigurator.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/GetHttpSessionConfigurator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/GetHttpSessionSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/GetHttpSessionSocket.java index f0b6a266715..23a731cecbd 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/GetHttpSessionSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/GetHttpSessionSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/MyAuthedConfigurator.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/MyAuthedConfigurator.java index 0b05892dd57..fd554bdd19b 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/MyAuthedConfigurator.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/MyAuthedConfigurator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/MyAuthedSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/MyAuthedSocket.java index 135450a1a9c..74fe7c3e1c9 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/MyAuthedSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/MyAuthedSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/StreamingEchoSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/StreamingEchoSocket.java index 5d1604ecd7c..238fd572fd0 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/StreamingEchoSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/examples/StreamingEchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/AltFilterTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/AltFilterTest.java index bc50dae3aed..4fc2c7b48e2 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/AltFilterTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/AltFilterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/AnnotatedServerEndpointTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/AnnotatedServerEndpointTest.java index 11c99332b28..f6f1b190ebb 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/AnnotatedServerEndpointTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/AnnotatedServerEndpointTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/BasicEndpointTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/BasicEndpointTest.java index 66401ead7eb..3c4da936b77 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/BasicEndpointTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/BasicEndpointTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/BinaryStreamTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/BinaryStreamTest.java index 1edc2dc9b8f..0018d9ec0eb 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/BinaryStreamTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/BinaryStreamTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ConfiguratorTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ConfiguratorTest.java index 7527453c0eb..f8ce31c0ce0 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ConfiguratorTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ConfiguratorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/DelayedStartClientOnServerTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/DelayedStartClientOnServerTest.java index b3b28301b83..41e948008c0 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/DelayedStartClientOnServerTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/DelayedStartClientOnServerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/EchoCase.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/EchoCase.java index 9891343d8b9..d63d04fc5dc 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/EchoCase.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/EchoCase.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/EchoClientSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/EchoClientSocket.java index 519928c44ed..106c51309bd 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/EchoClientSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/EchoClientSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/EchoTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/EchoTest.java index dc1cc97c8de..21afb1e585b 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/EchoTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/EchoTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ExtensionStackProcessingTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ExtensionStackProcessingTest.java index e4d4302c75d..51ffd38e288 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ExtensionStackProcessingTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ExtensionStackProcessingTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/IdleTimeoutTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/IdleTimeoutTest.java index f1c4c50c137..efd202013c7 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/IdleTimeoutTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/IdleTimeoutTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/JettyEchoSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/JettyEchoSocket.java index 721be5fd487..49907cbf7f3 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/JettyEchoSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/JettyEchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/JettyServerEndpointConfiguratorTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/JettyServerEndpointConfiguratorTest.java index a9f34b532bf..28003f6676a 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/JettyServerEndpointConfiguratorTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/JettyServerEndpointConfiguratorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/JsrBatchModeTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/JsrBatchModeTest.java index e3170bb99c0..72fead808af 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/JsrBatchModeTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/JsrBatchModeTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeAnnotatedTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeAnnotatedTest.java index ba9d9fb8044..a88d99b3180 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeAnnotatedTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeAnnotatedTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeClientContainerInitAsServerListener.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeClientContainerInitAsServerListener.java index 8258a51ef93..73f93f5b7be 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeClientContainerInitAsServerListener.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeClientContainerInitAsServerListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeClientContainerServlet.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeClientContainerServlet.java index 12298ac33db..c8386aabbb4 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeClientContainerServlet.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeClientContainerServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeContainerTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeContainerTest.java index 9b3d482f0b8..7a094994c17 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeContainerTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeContainerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeNestedClientContainerTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeNestedClientContainerTest.java index 40fe79f15fd..19ee794496c 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeNestedClientContainerTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeNestedClientContainerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeOnOpenSessionConfiguredTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeOnOpenSessionConfiguredTest.java index 332dae4fecb..5e968ccf38d 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeOnOpenSessionConfiguredTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeOnOpenSessionConfiguredTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeServerContainerAsClientContainerServlet.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeServerContainerAsClientContainerServlet.java index aa64330096c..936ed511891 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeServerContainerAsClientContainerServlet.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/LargeServerContainerAsClientContainerServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/MemoryUsageTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/MemoryUsageTest.java index 093795efa6d..a72cd3a03af 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/MemoryUsageTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/MemoryUsageTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/OnMessageReturnTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/OnMessageReturnTest.java index b2d22427b96..9b28a382886 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/OnMessageReturnTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/OnMessageReturnTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/OnPartialTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/OnPartialTest.java index ae8ecc0c795..14b8e48b5e0 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/OnPartialTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/OnPartialTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/PingPongTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/PingPongTest.java index 34b48db2e3a..6fc61c9757c 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/PingPongTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/PingPongTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ServerAnnotatedEndpointScanner_GoodSignaturesTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ServerAnnotatedEndpointScanner_GoodSignaturesTest.java index 95658a48df3..2b11797732a 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ServerAnnotatedEndpointScanner_GoodSignaturesTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ServerAnnotatedEndpointScanner_GoodSignaturesTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ServerAnnotatedEndpointScanner_InvalidSignaturesTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ServerAnnotatedEndpointScanner_InvalidSignaturesTest.java index 8cf43e6f46e..3ecac4301a6 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ServerAnnotatedEndpointScanner_InvalidSignaturesTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/ServerAnnotatedEndpointScanner_InvalidSignaturesTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionAltConfig.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionAltConfig.java index f84430e63a3..d5147ef2446 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionAltConfig.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionAltConfig.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionInfoEndpoint.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionInfoEndpoint.java index a89c12c72b4..747c5e476af 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionInfoEndpoint.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionInfoEndpoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionInfoSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionInfoSocket.java index b93bed84266..0cb20f12cc1 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionInfoSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionInfoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionTest.java index 52706e2cbff..4a9d3706032 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionTrackingTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionTrackingTest.java index 2b4a2ceb68d..e4ea2ec89a5 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionTrackingTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionTrackingTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/StreamTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/StreamTest.java index 62170ef0c99..b72c31ab6ab 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/StreamTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/StreamTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/TextStreamTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/TextStreamTest.java index 78dce946814..42c517fd678 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/TextStreamTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/TextStreamTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/TrackingSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/TrackingSocket.java index f7530c58b62..628f8db746e 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/TrackingSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/TrackingSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/WSServer.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/WSServer.java index 1e43fa3f273..616bdeec801 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/WSServer.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/WSServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/browser/JsrBrowserConfigurator.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/browser/JsrBrowserConfigurator.java index d8531c53ccc..dcad0d4ad57 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/browser/JsrBrowserConfigurator.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/browser/JsrBrowserConfigurator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/browser/JsrBrowserDebugTool.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/browser/JsrBrowserDebugTool.java index d3690b27eba..ea45a3d2fda 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/browser/JsrBrowserDebugTool.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/browser/JsrBrowserDebugTool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/browser/JsrBrowserSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/browser/JsrBrowserSocket.java index 4e610850592..f30d26f86e3 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/browser/JsrBrowserSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/browser/JsrBrowserSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicBinaryMessageByteBufferSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicBinaryMessageByteBufferSocket.java index 6fdc19182be..93f0d7cc46e 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicBinaryMessageByteBufferSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicBinaryMessageByteBufferSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicCloseReasonSessionSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicCloseReasonSessionSocket.java index e434b17b561..a2e340e28a2 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicCloseReasonSessionSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicCloseReasonSessionSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicCloseReasonSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicCloseReasonSocket.java index 0d1a5e6dde8..408d86db9f7 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicCloseReasonSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicCloseReasonSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicCloseSessionReasonSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicCloseSessionReasonSocket.java index 239e73432b7..ccbabb64163 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicCloseSessionReasonSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicCloseSessionReasonSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicCloseSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicCloseSocket.java index 6fcb979e3db..5ca7918621d 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicCloseSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicCloseSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorSessionSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorSessionSocket.java index 477e43d7e01..61214f5af34 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorSessionSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorSessionSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorSessionThrowableSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorSessionThrowableSocket.java index 2ee7fa97d78..95c94776891 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorSessionThrowableSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorSessionThrowableSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorSocket.java index 55351ec6c35..858f5c69841 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorThrowableSessionSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorThrowableSessionSocket.java index bce8519c769..c70e77d2ded 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorThrowableSessionSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorThrowableSessionSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorThrowableSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorThrowableSocket.java index 3d8f87ec081..2c889306578 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorThrowableSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicErrorThrowableSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicOpenCloseSessionSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicOpenCloseSessionSocket.java index 3df5c9d1ddc..e3ec8ce3b57 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicOpenCloseSessionSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicOpenCloseSessionSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicOpenCloseSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicOpenCloseSocket.java index bc4507af984..5a7e70f15c2 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicOpenCloseSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicOpenCloseSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicOpenSessionSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicOpenSessionSocket.java index c84056c3d1d..eeb57b2e1ee 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicOpenSessionSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicOpenSessionSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicOpenSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicOpenSocket.java index 892129e7737..ce4cabd99da 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicOpenSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicOpenSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicPongMessageSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicPongMessageSocket.java index 2756578e1cc..7f460402599 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicPongMessageSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicPongMessageSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicTextMessageStringSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicTextMessageStringSocket.java index bce1dcec34e..01053ae8704 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicTextMessageStringSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/BasicTextMessageStringSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidCloseIntSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidCloseIntSocket.java index feeeda83817..52a7bbda20d 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidCloseIntSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidCloseIntSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidErrorErrorSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidErrorErrorSocket.java index bf9ea985328..0dc60cfef9a 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidErrorErrorSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidErrorErrorSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidErrorExceptionSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidErrorExceptionSocket.java index 155dd17c7b5..0bf7f17e3af 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidErrorExceptionSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidErrorExceptionSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidErrorIntSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidErrorIntSocket.java index 9c43bab5919..a202fd39444 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidErrorIntSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidErrorIntSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidOpenCloseReasonSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidOpenCloseReasonSocket.java index 7f309ef9eb7..4549bc22451 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidOpenCloseReasonSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidOpenCloseReasonSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidOpenIntSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidOpenIntSocket.java index 9e2733217eb..51a291bbf1d 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidOpenIntSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidOpenIntSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidOpenSessionIntSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidOpenSessionIntSocket.java index f097dbf2bc5..f9d36ea4efe 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidOpenSessionIntSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/InvalidOpenSessionIntSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/StatelessTextMessageStringSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/StatelessTextMessageStringSocket.java index 3477596b085..e56949ceee0 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/StatelessTextMessageStringSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/StatelessTextMessageStringSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateDecoder.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateDecoder.java index 29adc66e7d9..6fe2f223bec 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateDecoder.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateEncoder.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateEncoder.java index c98f4a9aeac..a64e3265c68 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateEncoder.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateTextSocket.java index baec1bb3330..55f12c91fe5 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateTimeDecoder.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateTimeDecoder.java index 7f570a5f972..ed1e16fbf45 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateTimeDecoder.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateTimeDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateTimeEncoder.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateTimeEncoder.java index 9b3347ce38e..918aaeb8b03 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateTimeEncoder.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/DateTimeEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/TimeDecoder.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/TimeDecoder.java index 83e96b7e4f7..79bab752539 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/TimeDecoder.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/TimeDecoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/TimeEncoder.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/TimeEncoder.java index 65d41288cd7..b85784117bf 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/TimeEncoder.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/beans/TimeEncoder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/binary/ByteBufferSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/binary/ByteBufferSocket.java index 59716312026..92af5113c06 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/binary/ByteBufferSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/binary/ByteBufferSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoEndpoint.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoEndpoint.java index 4c7ce367f03..ec106712eea 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoEndpoint.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoEndpoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoEndpointConfigContextListener.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoEndpointConfigContextListener.java index 4249ef4358b..e5653a99ed1 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoEndpointConfigContextListener.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoEndpointConfigContextListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoEndpointContextListener.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoEndpointContextListener.java index b74a697923a..08877f7e4d2 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoEndpointContextListener.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoEndpointContextListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoSocket.java index b24482eed5b..9c0287355c4 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoSocketConfigContextListener.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoSocketConfigContextListener.java index 1298bd57eb9..c2e56ca2c22 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoSocketConfigContextListener.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoSocketConfigContextListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoSocketContextListener.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoSocketContextListener.java index ddf2a13c83a..70ff4088128 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoSocketContextListener.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/BasicEchoSocketContextListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/ConfiguredEchoSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/ConfiguredEchoSocket.java index 397dcd1aa56..7ed1eb32a04 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/ConfiguredEchoSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/ConfiguredEchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/EchoReturnEndpoint.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/EchoReturnEndpoint.java index 1a3affc3880..43729f8ac98 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/EchoReturnEndpoint.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/EchoReturnEndpoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/EchoSocketConfigurator.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/EchoSocketConfigurator.java index e68546514c9..3c05c357389 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/EchoSocketConfigurator.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/EchoSocketConfigurator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoAnnotatedSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoAnnotatedSocket.java index 1c1b9422518..4511d03c5bb 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoAnnotatedSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoAnnotatedSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoConfiguredSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoConfiguredSocket.java index edace612c3d..87efe3a9c48 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoConfiguredSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoConfiguredSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoContextListener.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoContextListener.java index 9056428a47a..e3690accb4d 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoContextListener.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoContextListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoDefaultSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoDefaultSocket.java index f895b6616e4..4fd78e991c7 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoDefaultSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoDefaultSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/idletimeout/IdleTimeoutContextListener.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/idletimeout/IdleTimeoutContextListener.java index 14d7747f81a..bab0f4c3056 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/idletimeout/IdleTimeoutContextListener.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/idletimeout/IdleTimeoutContextListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/idletimeout/OnOpenIdleTimeoutEndpoint.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/idletimeout/OnOpenIdleTimeoutEndpoint.java index 9394d69b487..90a92776fa5 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/idletimeout/OnOpenIdleTimeoutEndpoint.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/idletimeout/OnOpenIdleTimeoutEndpoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/idletimeout/OnOpenIdleTimeoutSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/idletimeout/OnOpenIdleTimeoutSocket.java index 6f5898d697e..1d98584c8d2 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/idletimeout/OnOpenIdleTimeoutSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/idletimeout/OnOpenIdleTimeoutSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/partial/PartialTextSessionSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/partial/PartialTextSessionSocket.java index cdb0bcf56df..af490020b8a 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/partial/PartialTextSessionSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/partial/PartialTextSessionSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/partial/PartialTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/partial/PartialTextSocket.java index 680c173dde1..f35202e1696 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/partial/PartialTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/partial/PartialTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/partial/PartialTrackingSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/partial/PartialTrackingSocket.java index 3a5825ba284..290dd33b1f5 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/partial/PartialTrackingSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/partial/PartialTrackingSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/pong/PongContextListener.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/pong/PongContextListener.java index b56630c97a4..3bc6cdf946c 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/pong/PongContextListener.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/pong/PongContextListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/pong/PongMessageEndpoint.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/pong/PongMessageEndpoint.java index 4ee45ffa765..f22bce05cdf 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/pong/PongMessageEndpoint.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/pong/PongMessageEndpoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/pong/PongSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/pong/PongSocket.java index 50b51b8f405..c368fb77f85 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/pong/PongSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/pong/PongSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/BooleanObjectTextParamSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/BooleanObjectTextParamSocket.java index a952fb6fd5d..a400941864d 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/BooleanObjectTextParamSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/BooleanObjectTextParamSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/BooleanObjectTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/BooleanObjectTextSocket.java index caa56ec8b4c..a54cd87cae6 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/BooleanObjectTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/BooleanObjectTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/BooleanTextParamSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/BooleanTextParamSocket.java index 50b4da6091d..07b3d73a406 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/BooleanTextParamSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/BooleanTextParamSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/BooleanTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/BooleanTextSocket.java index 13cfa1eec5f..ed6cc633502 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/BooleanTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/BooleanTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/ByteObjectTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/ByteObjectTextSocket.java index 6030c8ea569..78fc523eb10 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/ByteObjectTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/ByteObjectTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/ByteTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/ByteTextSocket.java index 4b0b1a40c45..22c8c398610 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/ByteTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/ByteTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/CharTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/CharTextSocket.java index c86aaaae0b0..9272e0f7d49 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/CharTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/CharTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/CharacterObjectTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/CharacterObjectTextSocket.java index 648f014111a..6b07e5ec3a8 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/CharacterObjectTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/CharacterObjectTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/DoubleObjectTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/DoubleObjectTextSocket.java index f2e3b756540..c256f71d598 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/DoubleObjectTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/DoubleObjectTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/DoubleTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/DoubleTextSocket.java index 6edb6feac9b..e0660b63eb0 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/DoubleTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/DoubleTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/FloatObjectTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/FloatObjectTextSocket.java index f3e57d931f6..e40539b1f27 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/FloatObjectTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/FloatObjectTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/FloatTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/FloatTextSocket.java index 0a8d8cd0e81..30881c159be 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/FloatTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/FloatTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/IntParamTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/IntParamTextSocket.java index 0ede5dac4cf..aa5a265de06 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/IntParamTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/IntParamTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/IntTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/IntTextSocket.java index ec28ba1344a..3221f2286d9 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/IntTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/IntTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/IntegerObjectParamTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/IntegerObjectParamTextSocket.java index 736a2416ba1..6640a53a6e4 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/IntegerObjectParamTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/IntegerObjectParamTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/IntegerObjectTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/IntegerObjectTextSocket.java index 8cbb81e6537..986cab3de25 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/IntegerObjectTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/IntegerObjectTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/LongObjectTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/LongObjectTextSocket.java index f2133c8edae..21306b8b6d9 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/LongObjectTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/LongObjectTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/LongTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/LongTextSocket.java index 810bf6e26be..cc96d96942a 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/LongTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/LongTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/ShortObjectTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/ShortObjectTextSocket.java index d61458c3f2f..d7ff7076bf0 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/ShortObjectTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/ShortObjectTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/ShortTextSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/ShortTextSocket.java index 1f417b977ca..72eff084111 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/ShortTextSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/primitives/ShortTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/streaming/InputStreamSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/streaming/InputStreamSocket.java index 17899098d69..8fe08b0d1ba 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/streaming/InputStreamSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/streaming/InputStreamSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/streaming/ReaderParamSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/streaming/ReaderParamSocket.java index b26b0a800b1..f59c4dee3f8 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/streaming/ReaderParamSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/streaming/ReaderParamSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/streaming/ReaderSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/streaming/ReaderSocket.java index ada435988eb..9f7799125f0 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/streaming/ReaderSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/streaming/ReaderSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/streaming/StringReturnReaderParamSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/streaming/StringReturnReaderParamSocket.java index d752d1d8e7f..428dcae2e1e 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/streaming/StringReturnReaderParamSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/streaming/StringReturnReaderParamSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/BadPayloadException.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/BadPayloadException.java index 23ab324dfd1..ba0fb72bab5 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/BadPayloadException.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/BadPayloadException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/BatchMode.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/BatchMode.java index 4e54b7e4ed2..68e70e32af5 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/BatchMode.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/BatchMode.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/CloseException.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/CloseException.java index 9fbe8d62e21..4c893af9032 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/CloseException.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/CloseException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/CloseStatus.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/CloseStatus.java index 3661795e91b..191dbcf178f 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/CloseStatus.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/CloseStatus.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/InvalidWebSocketException.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/InvalidWebSocketException.java index 288a70fd508..f5d0a17ee10 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/InvalidWebSocketException.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/InvalidWebSocketException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/MessageTooLargeException.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/MessageTooLargeException.java index 9bbf582af9c..ee3690b5be3 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/MessageTooLargeException.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/MessageTooLargeException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/PolicyViolationException.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/PolicyViolationException.java index fb6d6b3c9ad..ce240ff9c3b 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/PolicyViolationException.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/PolicyViolationException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/ProtocolException.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/ProtocolException.java index f94f252306a..c42ac21baf1 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/ProtocolException.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/ProtocolException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/RemoteEndpoint.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/RemoteEndpoint.java index 6f1a276e1ce..9e858d20970 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/RemoteEndpoint.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/RemoteEndpoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/Session.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/Session.java index 910b8c5522b..c074850dff3 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/Session.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/Session.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/StatusCode.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/StatusCode.java index c8fa778c1e3..d10b6471f50 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/StatusCode.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/StatusCode.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/SuspendToken.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/SuspendToken.java index e4a892707f2..ab90ce4aa72 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/SuspendToken.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/SuspendToken.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/UpgradeException.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/UpgradeException.java index 1ca35aa4d7a..ac61d56fb64 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/UpgradeException.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/UpgradeException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/UpgradeRequest.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/UpgradeRequest.java index faf6bc4505c..7575a3ae269 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/UpgradeRequest.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/UpgradeRequest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/UpgradeResponse.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/UpgradeResponse.java index 0494b127167..e15f1792316 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/UpgradeResponse.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/UpgradeResponse.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketAdapter.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketAdapter.java index 0a6dd1aa084..3406d895053 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketAdapter.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketAdapter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketBehavior.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketBehavior.java index a102bb32ec0..dd024c425ee 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketBehavior.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketBehavior.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketConnectionListener.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketConnectionListener.java index 30f5e8b7c03..adf79a1d638 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketConnectionListener.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketConnectionListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketConstants.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketConstants.java index b0cc7603e0c..2f2365001ae 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketConstants.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketConstants.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketException.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketException.java index bd7942a7e0e..f3e3118e700 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketException.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketFrameListener.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketFrameListener.java index 917677f8dd8..85170a1c1be 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketFrameListener.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketFrameListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketListener.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketListener.java index b177258b7b8..1222c5a92c3 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketListener.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketPartialListener.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketPartialListener.java index 0b4ecb8fc04..7cf20037db0 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketPartialListener.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketPartialListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketPingPongListener.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketPingPongListener.java index 51b19b95886..bb4b857ca42 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketPingPongListener.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketPingPongListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketPolicy.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketPolicy.java index f115add8a3b..d1f433a7b2e 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketPolicy.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketPolicy.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketTimeoutException.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketTimeoutException.java index f1ff62487e5..2848752d082 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketTimeoutException.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WebSocketTimeoutException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WriteCallback.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WriteCallback.java index 59dc5f93643..73a05d6fc63 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WriteCallback.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WriteCallback.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketClose.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketClose.java index a3605e1406f..c3b9b792562 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketClose.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketClose.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketConnect.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketConnect.java index d657f1199dc..6c04399d14f 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketConnect.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketConnect.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketError.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketError.java index 3463d4442ba..b46b502fcaa 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketError.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketError.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketFrame.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketFrame.java index f5a1520a6f0..d6ab2881eda 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketFrame.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketMessage.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketMessage.java index d4438c6a3fe..84d92a35e78 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketMessage.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/OnWebSocketMessage.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/WebSocket.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/WebSocket.java index 7102e3ee915..848d8af540c 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/WebSocket.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/WebSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/package-info.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/package-info.java index 7706669efc7..ffb39d65727 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/package-info.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/annotations/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/Extension.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/Extension.java index 6b1340902ea..ff6da509918 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/Extension.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/Extension.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/ExtensionConfig.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/ExtensionConfig.java index 41f924bca29..3f5701499e4 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/ExtensionConfig.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/ExtensionConfig.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/ExtensionFactory.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/ExtensionFactory.java index 4ed11b1188f..80ca434db18 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/ExtensionFactory.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/ExtensionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/Frame.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/Frame.java index adea894d86c..8e8adba53b2 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/Frame.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/Frame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/IncomingFrames.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/IncomingFrames.java index db638c3b505..bb446a5ef6e 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/IncomingFrames.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/IncomingFrames.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/OutgoingFrames.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/OutgoingFrames.java index a358e94b7b2..ec81fddb4eb 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/OutgoingFrames.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/OutgoingFrames.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/package-info.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/package-info.java index 886c579d3c6..ac48e36919c 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/package-info.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/package-info.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/package-info.java index 08dc2860e8e..21a1848737c 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/package-info.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/util/QuoteUtil.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/util/QuoteUtil.java index 1fb2cbd9f17..ce5acd5d459 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/util/QuoteUtil.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/util/QuoteUtil.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/util/WSURI.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/util/WSURI.java index 2540710b45c..ba929f0abeb 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/util/WSURI.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/util/WSURI.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/util/package-info.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/util/package-info.java index f6b6bb72761..ff092082ba2 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/util/package-info.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/util/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/test/java/org/eclipse/jetty/websocket/api/extensions/ExtensionConfigTest.java b/jetty-websocket/websocket-api/src/test/java/org/eclipse/jetty/websocket/api/extensions/ExtensionConfigTest.java index 0f9fb020733..3dfb638f54e 100644 --- a/jetty-websocket/websocket-api/src/test/java/org/eclipse/jetty/websocket/api/extensions/ExtensionConfigTest.java +++ b/jetty-websocket/websocket-api/src/test/java/org/eclipse/jetty/websocket/api/extensions/ExtensionConfigTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/test/java/org/eclipse/jetty/websocket/api/util/QuoteUtilTest.java b/jetty-websocket/websocket-api/src/test/java/org/eclipse/jetty/websocket/api/util/QuoteUtilTest.java index 429ab96c1e5..d1896776543 100644 --- a/jetty-websocket/websocket-api/src/test/java/org/eclipse/jetty/websocket/api/util/QuoteUtilTest.java +++ b/jetty-websocket/websocket-api/src/test/java/org/eclipse/jetty/websocket/api/util/QuoteUtilTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/test/java/org/eclipse/jetty/websocket/api/util/QuoteUtil_QuoteTest.java b/jetty-websocket/websocket-api/src/test/java/org/eclipse/jetty/websocket/api/util/QuoteUtil_QuoteTest.java index 92061006ce8..0d867d55548 100644 --- a/jetty-websocket/websocket-api/src/test/java/org/eclipse/jetty/websocket/api/util/QuoteUtil_QuoteTest.java +++ b/jetty-websocket/websocket-api/src/test/java/org/eclipse/jetty/websocket/api/util/QuoteUtil_QuoteTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-api/src/test/java/org/eclipse/jetty/websocket/api/util/WSURITest.java b/jetty-websocket/websocket-api/src/test/java/org/eclipse/jetty/websocket/api/util/WSURITest.java index f5fb0edf80c..70f63a06498 100644 --- a/jetty-websocket/websocket-api/src/test/java/org/eclipse/jetty/websocket/api/util/WSURITest.java +++ b/jetty-websocket/websocket-api/src/test/java/org/eclipse/jetty/websocket/api/util/WSURITest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/ClientUpgradeRequest.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/ClientUpgradeRequest.java index d991531e3d1..668708362f9 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/ClientUpgradeRequest.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/ClientUpgradeRequest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/ClientUpgradeResponse.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/ClientUpgradeResponse.java index d40b8408650..5bca8cf1483 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/ClientUpgradeResponse.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/ClientUpgradeResponse.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/DefaultHttpClientProvider.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/DefaultHttpClientProvider.java index 0756337470c..fb8c8856ba4 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/DefaultHttpClientProvider.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/DefaultHttpClientProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/HttpClientProvider.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/HttpClientProvider.java index d0812c27a29..fe57df7862a 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/HttpClientProvider.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/HttpClientProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/NoOpEndpoint.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/NoOpEndpoint.java index 1f74b9f7187..ebeff7ea0de 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/NoOpEndpoint.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/NoOpEndpoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketClient.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketClient.java index c30a5e664c1..c6fd082f404 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketClient.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketClient.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketUpgradeRequest.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketUpgradeRequest.java index 143944f78db..b975f00edb4 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketUpgradeRequest.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketUpgradeRequest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/XmlBasedHttpClientProvider.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/XmlBasedHttpClientProvider.java index 3f3618862bf..e45ac4c6518 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/XmlBasedHttpClientProvider.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/XmlBasedHttpClientProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/io/ConnectionManager.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/io/ConnectionManager.java index 6205e066f87..6f74a6e2282 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/io/ConnectionManager.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/io/ConnectionManager.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/io/UpgradeListener.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/io/UpgradeListener.java index 1bf92bf2b2a..e8e415448b9 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/io/UpgradeListener.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/io/UpgradeListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/io/WebSocketClientConnection.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/io/WebSocketClientConnection.java index bd7e90db8f0..12b97f694a9 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/io/WebSocketClientConnection.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/io/WebSocketClientConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/io/package-info.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/io/package-info.java index b4c89db2afa..d2303734f26 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/io/package-info.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/io/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/FixedMasker.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/FixedMasker.java index d5e35aa97c7..ee6b20b9271 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/FixedMasker.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/FixedMasker.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/Masker.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/Masker.java index 369785bc017..aa13746daea 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/Masker.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/Masker.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/RandomMasker.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/RandomMasker.java index 61e7cb23bf8..cfdf81400f3 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/RandomMasker.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/RandomMasker.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/ZeroMasker.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/ZeroMasker.java index 3eb9801b03e..2a4ff82899e 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/ZeroMasker.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/ZeroMasker.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/package-info.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/package-info.java index 5e35a83899a..0a18b93ac61 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/package-info.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/masks/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/package-info.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/package-info.java index 8f69a3e5cab..a3628650fcf 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/package-info.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/examples/SimpleEchoClient.java b/jetty-websocket/websocket-client/src/test/java/examples/SimpleEchoClient.java index 14fc467d83b..952e973239f 100644 --- a/jetty-websocket/websocket-client/src/test/java/examples/SimpleEchoClient.java +++ b/jetty-websocket/websocket-client/src/test/java/examples/SimpleEchoClient.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/examples/SimpleEchoSocket.java b/jetty-websocket/websocket-client/src/test/java/examples/SimpleEchoSocket.java index 2398f3b49b4..85733a24549 100644 --- a/jetty-websocket/websocket-client/src/test/java/examples/SimpleEchoSocket.java +++ b/jetty-websocket/websocket-client/src/test/java/examples/SimpleEchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/BadNetworkTest.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/BadNetworkTest.java index 7489f53cad0..34dafc34c3a 100644 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/BadNetworkTest.java +++ b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/BadNetworkTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ClientCloseTest.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ClientCloseTest.java index e95cbd4f3c7..9cde4e87994 100644 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ClientCloseTest.java +++ b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ClientCloseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ClientConnectTest.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ClientConnectTest.java index 14f894a40ef..811718de27d 100644 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ClientConnectTest.java +++ b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ClientConnectTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ClientWriteThread.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ClientWriteThread.java index 3e3c7cc7043..c67dc50f27a 100644 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ClientWriteThread.java +++ b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ClientWriteThread.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ConnectionManagerTest.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ConnectionManagerTest.java index 0c5a4ae73cb..e903f312963 100644 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ConnectionManagerTest.java +++ b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ConnectionManagerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/CookieTest.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/CookieTest.java index d869d88ce8e..d2fa670639c 100644 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/CookieTest.java +++ b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/CookieTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/HttpClientInitTest.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/HttpClientInitTest.java index 94bb86580e6..3042bc95431 100644 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/HttpClientInitTest.java +++ b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/HttpClientInitTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/JettyTrackingSocket.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/JettyTrackingSocket.java index 246010401bb..614456189cd 100644 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/JettyTrackingSocket.java +++ b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/JettyTrackingSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/MaxMessageSocket.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/MaxMessageSocket.java index 30e4ea1c70b..ce9b322e1be 100644 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/MaxMessageSocket.java +++ b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/MaxMessageSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ServerWriteThread.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ServerWriteThread.java index 80fd5fb510b..3f4a0ba2fb1 100644 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ServerWriteThread.java +++ b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ServerWriteThread.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SessionTest.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SessionTest.java index ca553545db3..db79faa311e 100644 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SessionTest.java +++ b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SlowClientTest.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SlowClientTest.java index 1cac5b5e889..a224f94e97c 100644 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SlowClientTest.java +++ b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SlowClientTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SlowServerTest.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SlowServerTest.java index 08ce4d1b029..7973fa724d4 100644 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SlowServerTest.java +++ b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SlowServerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/TomcatServerQuirksTest.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/TomcatServerQuirksTest.java index 476b5b379b7..90ba2ec043a 100644 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/TomcatServerQuirksTest.java +++ b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/TomcatServerQuirksTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/WebSocketClientBadUriTest.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/WebSocketClientBadUriTest.java index adcdc27e7a4..b5a0d375d3b 100644 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/WebSocketClientBadUriTest.java +++ b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/WebSocketClientBadUriTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/WebSocketClientInitTest.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/WebSocketClientInitTest.java index 0f8cc8f50ca..fad1fc9f887 100644 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/WebSocketClientInitTest.java +++ b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/WebSocketClientInitTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/WebSocketClientTest.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/WebSocketClientTest.java index 4208baf7d1a..adee6b543d4 100644 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/WebSocketClientTest.java +++ b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/WebSocketClientTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/examples/TestClient.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/examples/TestClient.java index 2cb3b1e5df5..0ac586f0822 100644 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/examples/TestClient.java +++ b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/examples/TestClient.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/AcceptHash.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/AcceptHash.java index 81e077a01e0..f056fc6bb0d 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/AcceptHash.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/AcceptHash.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/BlockingWriteCallback.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/BlockingWriteCallback.java index 683f471fd9f..a6c73fd95a5 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/BlockingWriteCallback.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/BlockingWriteCallback.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/CloseInfo.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/CloseInfo.java index dabf03b88a1..bb98d2ad28a 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/CloseInfo.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/CloseInfo.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/ConnectionState.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/ConnectionState.java index b249dfa7ca3..2dd8d44dc6c 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/ConnectionState.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/ConnectionState.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/Generator.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/Generator.java index 4cc63dfe6c6..c42330f3929 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/Generator.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/Generator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/LogicalConnection.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/LogicalConnection.java index 60c251d707f..0ee24d298dc 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/LogicalConnection.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/LogicalConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/OpCode.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/OpCode.java index 41afcd57c5e..d2fab8f5db8 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/OpCode.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/OpCode.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/Parser.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/Parser.java index 8d02ed64473..68f695c88ec 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/Parser.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/Parser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/RemoteEndpointFactory.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/RemoteEndpointFactory.java index f6bff43da4d..272cd731867 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/RemoteEndpointFactory.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/RemoteEndpointFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/SessionFactory.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/SessionFactory.java index 6fce5c38df1..c56e89354cf 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/SessionFactory.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/SessionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/UpgradeRequestAdapter.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/UpgradeRequestAdapter.java index f0c44ed16bb..c760b044205 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/UpgradeRequestAdapter.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/UpgradeRequestAdapter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/UpgradeResponseAdapter.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/UpgradeResponseAdapter.java index 04ad8c41e2d..91d56abf7ec 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/UpgradeResponseAdapter.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/UpgradeResponseAdapter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketFrame.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketFrame.java index a50fd819a4d..c67e5b2e5bd 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketFrame.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketRemoteEndpoint.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketRemoteEndpoint.java index d73e961f7d8..db79051a105 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketRemoteEndpoint.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketRemoteEndpoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java index ab1fea38900..d3e339a3950 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSessionFactory.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSessionFactory.java index 9a5984ebbf5..5aab46cabd7 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSessionFactory.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSessionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/AbstractEventDriver.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/AbstractEventDriver.java index 895f85325b5..a4dccca8cc6 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/AbstractEventDriver.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/AbstractEventDriver.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/EventDriver.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/EventDriver.java index 65ff373600c..6666aea1e23 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/EventDriver.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/EventDriver.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/EventDriverFactory.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/EventDriverFactory.java index 12bda415428..515ee7ba627 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/EventDriverFactory.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/EventDriverFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/EventDriverImpl.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/EventDriverImpl.java index 9a48d48cc50..f62c15bdfca 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/EventDriverImpl.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/EventDriverImpl.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedEventDriver.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedEventDriver.java index 255d0e83e9c..99266b082d9 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedEventDriver.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedEventDriver.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedImpl.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedImpl.java index 836008b4455..3855d2e83d1 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedImpl.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedImpl.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedMetadata.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedMetadata.java index c72d3a0c4e0..f51f16ad432 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedMetadata.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedMetadata.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedScanner.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedScanner.java index 810594baa1e..1a830fe57e2 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedScanner.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedScanner.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyListenerEventDriver.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyListenerEventDriver.java index b5ed833317e..0cc39024e0d 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyListenerEventDriver.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyListenerEventDriver.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyListenerImpl.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyListenerImpl.java index 636680bce32..cec2520e54b 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyListenerImpl.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyListenerImpl.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/ParamList.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/ParamList.java index 0f235b13151..5bb8ab9f947 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/ParamList.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/ParamList.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/AbstractMethodAnnotationScanner.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/AbstractMethodAnnotationScanner.java index baee093f466..c1ac0e96868 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/AbstractMethodAnnotationScanner.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/AbstractMethodAnnotationScanner.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/CallableMethod.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/CallableMethod.java index 812de2c8319..0b083e5b6c7 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/CallableMethod.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/CallableMethod.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/EventMethod.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/EventMethod.java index 1f1418ccd44..42a26c3b64d 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/EventMethod.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/EventMethod.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/EventMethods.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/EventMethods.java index d3ed153541d..7c03e69d54d 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/EventMethods.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/EventMethods.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/InvalidSignatureException.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/InvalidSignatureException.java index 70be6878d8f..8a7d03ca856 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/InvalidSignatureException.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/InvalidSignatureException.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/OptionalSessionCallableMethod.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/OptionalSessionCallableMethod.java index 4aee7d40b25..d76b3c27667 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/OptionalSessionCallableMethod.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/annotated/OptionalSessionCallableMethod.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/package-info.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/package-info.java index 2dd62adfd5e..211cddd6bb5 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/package-info.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtension.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtension.java index 9cd3b91b304..013cc9aebdf 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtension.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtension.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStack.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStack.java index fc687a63e8e..d720869555b 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStack.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStack.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/FrameCaptureExtension.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/FrameCaptureExtension.java index 1a8afa2b3b3..7b0a653ae6c 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/FrameCaptureExtension.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/FrameCaptureExtension.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/WebSocketExtensionFactory.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/WebSocketExtensionFactory.java index 1b81f7f7429..03df0b398f7 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/WebSocketExtensionFactory.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/WebSocketExtensionFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/ByteAccumulator.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/ByteAccumulator.java index 14daae2d31e..94d0c579663 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/ByteAccumulator.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/ByteAccumulator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/CompressExtension.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/CompressExtension.java index e7963d182a8..53c1189dd21 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/CompressExtension.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/CompressExtension.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/DeflateFrameExtension.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/DeflateFrameExtension.java index 5fccb7f4175..b331dd0a62f 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/DeflateFrameExtension.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/DeflateFrameExtension.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/PerMessageDeflateExtension.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/PerMessageDeflateExtension.java index 20eec1724ad..6b8202256a5 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/PerMessageDeflateExtension.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/PerMessageDeflateExtension.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/XWebkitDeflateFrameExtension.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/XWebkitDeflateFrameExtension.java index 24d694bdf80..191843cdb23 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/XWebkitDeflateFrameExtension.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/XWebkitDeflateFrameExtension.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/package-info.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/package-info.java index 8208415493f..38b919f1ebe 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/package-info.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/compress/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/fragment/FragmentExtension.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/fragment/FragmentExtension.java index 38b8eb832a0..ce09b4c5f0f 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/fragment/FragmentExtension.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/fragment/FragmentExtension.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/fragment/package-info.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/fragment/package-info.java index 0f94dc11a0f..618c9be05c3 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/fragment/package-info.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/fragment/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/identity/IdentityExtension.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/identity/IdentityExtension.java index 37cf3d95178..132dccb183a 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/identity/IdentityExtension.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/identity/IdentityExtension.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/identity/package-info.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/identity/package-info.java index 1db7e4bb416..33056e01891 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/identity/package-info.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/identity/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/package-info.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/package-info.java index 324277c37a5..86c15078c6b 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/package-info.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/BinaryFrame.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/BinaryFrame.java index 28e3fc7102c..3e7306ea5ac 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/BinaryFrame.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/BinaryFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/CloseFrame.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/CloseFrame.java index a484287f653..8e57283b617 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/CloseFrame.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/CloseFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/ContinuationFrame.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/ContinuationFrame.java index 73f30fd8623..56b63255850 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/ContinuationFrame.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/ContinuationFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/ControlFrame.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/ControlFrame.java index 7a9be98f278..22a5be49e5c 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/ControlFrame.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/ControlFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/DataFrame.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/DataFrame.java index 4a4f8608be7..c2a0a8f2708 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/DataFrame.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/DataFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/PingFrame.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/PingFrame.java index 14d14232cd0..f82d6b3fb53 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/PingFrame.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/PingFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/PongFrame.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/PongFrame.java index 0ce2deb793b..3f1d71f4a3a 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/PongFrame.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/PongFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/ReadOnlyDelegatedFrame.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/ReadOnlyDelegatedFrame.java index 41c70c19c0b..b215440f524 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/ReadOnlyDelegatedFrame.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/ReadOnlyDelegatedFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/TextFrame.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/TextFrame.java index c6746daa146..9c7f7908a71 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/TextFrame.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/frames/TextFrame.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java index 8f32399d2c6..eb4efef26ab 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FrameFlusher.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FrameFlusher.java index 401a0732245..65cbadf5cdd 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FrameFlusher.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FrameFlusher.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FramePipes.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FramePipes.java index 9ca5b9ae18f..e3e21c62978 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FramePipes.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FramePipes.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FutureWriteCallback.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FutureWriteCallback.java index 68c39bb3eaf..c48532151af 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FutureWriteCallback.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FutureWriteCallback.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/IOState.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/IOState.java index 42c1074eecb..34535342fa7 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/IOState.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/IOState.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/http/HttpResponseHeaderParseListener.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/http/HttpResponseHeaderParseListener.java index 40c168c00d6..b73927adb01 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/http/HttpResponseHeaderParseListener.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/http/HttpResponseHeaderParseListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/http/HttpResponseHeaderParser.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/http/HttpResponseHeaderParser.java index ecec7c417bc..9531c7b524e 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/http/HttpResponseHeaderParser.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/http/HttpResponseHeaderParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/package-info.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/package-info.java index 87b50f1cd6c..1f2f1b1e36e 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/package-info.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/payload/DeMaskProcessor.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/payload/DeMaskProcessor.java index 8db8e01d992..89d384d028d 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/payload/DeMaskProcessor.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/payload/DeMaskProcessor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/payload/PayloadProcessor.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/payload/PayloadProcessor.java index 1d2ae322284..a3b4a455858 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/payload/PayloadProcessor.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/payload/PayloadProcessor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/payload/package-info.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/payload/package-info.java index 86c455e1693..806d5c426f6 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/payload/package-info.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/payload/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageAppender.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageAppender.java index 5ad9a7ceccd..b33402e4afc 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageAppender.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageAppender.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageInputStream.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageInputStream.java index 7765127e5bf..fc7204434a1 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageInputStream.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageInputStream.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageOutputStream.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageOutputStream.java index d86a7cf4e10..9b3bf3ec82f 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageOutputStream.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageOutputStream.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageReader.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageReader.java index 42650856a24..4330a5dc32f 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageReader.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageReader.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageWriter.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageWriter.java index 4c2f7bf8aff..49dea7e70a4 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageWriter.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/MessageWriter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/SimpleBinaryMessage.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/SimpleBinaryMessage.java index 5ebcb3a42b6..6a47cc1abee 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/SimpleBinaryMessage.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/SimpleBinaryMessage.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/SimpleTextMessage.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/SimpleTextMessage.java index 80da656320a..2ce4204b9c7 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/SimpleTextMessage.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/SimpleTextMessage.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/Utf8CharBuffer.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/Utf8CharBuffer.java index 1dd2cfea9c7..fa795699bb6 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/Utf8CharBuffer.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/Utf8CharBuffer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/package-info.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/package-info.java index 9ceaa9edf39..6bc70b11411 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/package-info.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/message/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/package-info.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/package-info.java index 09a1c863f06..64a5a049093 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/package-info.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/DelegatedContainerScope.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/DelegatedContainerScope.java index cf7c7b2f09f..42de4868e40 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/DelegatedContainerScope.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/DelegatedContainerScope.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/SimpleContainerScope.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/SimpleContainerScope.java index 6513b0a29e6..2e31b969713 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/SimpleContainerScope.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/SimpleContainerScope.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/WebSocketContainerScope.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/WebSocketContainerScope.java index 84f8e234a48..114e770879d 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/WebSocketContainerScope.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/WebSocketContainerScope.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/WebSocketSessionScope.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/WebSocketSessionScope.java index 8f8be5e83d8..c3bae34d1dc 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/WebSocketSessionScope.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/WebSocketSessionScope.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/util/ReflectUtils.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/util/ReflectUtils.java index 25a2607d454..3525736be70 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/util/ReflectUtils.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/util/ReflectUtils.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -392,4 +392,4 @@ public class ReflectUtils } return name; } -} \ No newline at end of file +} diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/util/TextUtil.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/util/TextUtil.java index 90285613fb2..5b227e99de9 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/util/TextUtil.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/util/TextUtil.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/util/Utf8PartialBuilder.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/util/Utf8PartialBuilder.java index 82adaf307bb..fa59acde466 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/util/Utf8PartialBuilder.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/util/Utf8PartialBuilder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/examples/AdapterConnectCloseSocket.java b/jetty-websocket/websocket-common/src/test/java/examples/AdapterConnectCloseSocket.java index 744dfb2784b..ca631ce1d7d 100644 --- a/jetty-websocket/websocket-common/src/test/java/examples/AdapterConnectCloseSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/examples/AdapterConnectCloseSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedBinaryArraySocket.java b/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedBinaryArraySocket.java index 9fcb4575c56..7b60ae204cf 100644 --- a/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedBinaryArraySocket.java +++ b/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedBinaryArraySocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedBinaryStreamSocket.java b/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedBinaryStreamSocket.java index 9910f78db96..74d6c0174c8 100644 --- a/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedBinaryStreamSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedBinaryStreamSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedFramesSocket.java b/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedFramesSocket.java index ccc9b738bba..5b634d48fe7 100644 --- a/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedFramesSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedFramesSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedStreamingSocket.java b/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedStreamingSocket.java index 58b02d7ae35..c0c8eec2580 100644 --- a/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedStreamingSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedStreamingSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedTextSocket.java b/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedTextSocket.java index 02a11d77482..f8988f874e2 100644 --- a/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedTextSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedTextSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedTextStreamSocket.java b/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedTextStreamSocket.java index cf6576df8ab..70905856b27 100644 --- a/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedTextStreamSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/examples/AnnotatedTextStreamSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/examples/ListenerBasicSocket.java b/jetty-websocket/websocket-common/src/test/java/examples/ListenerBasicSocket.java index 10d36f35206..e11bdec18cd 100644 --- a/jetty-websocket/websocket-common/src/test/java/examples/ListenerBasicSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/examples/ListenerBasicSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/examples/ListenerFrameSocket.java b/jetty-websocket/websocket-common/src/test/java/examples/ListenerFrameSocket.java index f42f2552440..4c93d671d40 100644 --- a/jetty-websocket/websocket-common/src/test/java/examples/ListenerFrameSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/examples/ListenerFrameSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/examples/ListenerPartialSocket.java b/jetty-websocket/websocket-common/src/test/java/examples/ListenerPartialSocket.java index 2e7b89e1f49..136d5aed2b1 100644 --- a/jetty-websocket/websocket-common/src/test/java/examples/ListenerPartialSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/examples/ListenerPartialSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/examples/ListenerPingPongSocket.java b/jetty-websocket/websocket-common/src/test/java/examples/ListenerPingPongSocket.java index 9f3692dafb8..b11c008d0af 100644 --- a/jetty-websocket/websocket-common/src/test/java/examples/ListenerPingPongSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/examples/ListenerPingPongSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/examples/echo/AdapterEchoSocket.java b/jetty-websocket/websocket-common/src/test/java/examples/echo/AdapterEchoSocket.java index 354e6eb6a87..519f8388dfb 100644 --- a/jetty-websocket/websocket-common/src/test/java/examples/echo/AdapterEchoSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/examples/echo/AdapterEchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/examples/echo/AnnotatedEchoSocket.java b/jetty-websocket/websocket-common/src/test/java/examples/echo/AnnotatedEchoSocket.java index 3a19eab2d9f..4d38d6a853d 100644 --- a/jetty-websocket/websocket-common/src/test/java/examples/echo/AnnotatedEchoSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/examples/echo/AnnotatedEchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/examples/echo/ListenerEchoSocket.java b/jetty-websocket/websocket-common/src/test/java/examples/echo/ListenerEchoSocket.java index 7a98a114416..c4d365b87ab 100644 --- a/jetty-websocket/websocket-common/src/test/java/examples/echo/ListenerEchoSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/examples/echo/ListenerEchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/AcceptHashTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/AcceptHashTest.java index e670638a781..aa9ebfbe133 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/AcceptHashTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/AcceptHashTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/CloseInfoTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/CloseInfoTest.java index d65895015ee..e28fb9819ef 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/CloseInfoTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/CloseInfoTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ClosePayloadParserTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ClosePayloadParserTest.java index b52ce227946..36dcfb4f629 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ClosePayloadParserTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ClosePayloadParserTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/GeneratorParserRoundtripTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/GeneratorParserRoundtripTest.java index 344d9405113..2cea2e745e0 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/GeneratorParserRoundtripTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/GeneratorParserRoundtripTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/GeneratorTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/GeneratorTest.java index 37612ef3ff2..01c5aa7df0f 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/GeneratorTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/GeneratorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ParserTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ParserTest.java index 17b52a9af8a..2cbae6495ce 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ParserTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ParserTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/PingPayloadParserTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/PingPayloadParserTest.java index 948e82d9410..9b2260a0446 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/PingPayloadParserTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/PingPayloadParserTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/RFC6455ExamplesGeneratorTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/RFC6455ExamplesGeneratorTest.java index e77c5c6f08f..a920d2a06e6 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/RFC6455ExamplesGeneratorTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/RFC6455ExamplesGeneratorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/RFC6455ExamplesParserTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/RFC6455ExamplesParserTest.java index ddc279ced41..7026a94e7c9 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/RFC6455ExamplesParserTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/RFC6455ExamplesParserTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/SaneFrameOrderingAssertion.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/SaneFrameOrderingAssertion.java index 8653ac79e76..8fd3966a4ec 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/SaneFrameOrderingAssertion.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/SaneFrameOrderingAssertion.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/TextPayloadParserTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/TextPayloadParserTest.java index c4fe8ee3d8b..f2535d2993f 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/TextPayloadParserTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/TextPayloadParserTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/WebSocketFrameTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/WebSocketFrameTest.java index 35a18af1e2a..bde0534846f 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/WebSocketFrameTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/WebSocketFrameTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/WebSocketRemoteEndpointTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/WebSocketRemoteEndpointTest.java index 64dddd6b1d5..c6b72a30adc 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/WebSocketRemoteEndpointTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/WebSocketRemoteEndpointTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase1_1.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase1_1.java index 467b5f3bd75..c7a94143066 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase1_1.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase1_1.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase1_2.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase1_2.java index 6fee3ca58bd..82575204076 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase1_2.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase1_2.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase2.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase2.java index 86a8aece77a..17ec7266662 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase2.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase2.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase3.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase3.java index 1025b5d5d75..8d9f328764a 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase3.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase3.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase4.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase4.java index 52bd92ed113..4975e2700d2 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase4.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase4.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase7_3.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase7_3.java index 606c1acc8a3..7676b320353 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase7_3.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase7_3.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/BadBinarySignatureSocket.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/BadBinarySignatureSocket.java index 6950c7ae475..9516b54ad94 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/BadBinarySignatureSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/BadBinarySignatureSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/BadDuplicateBinarySocket.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/BadDuplicateBinarySocket.java index 7922c43e14f..2f7a2029c0c 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/BadDuplicateBinarySocket.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/BadDuplicateBinarySocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/BadDuplicateFrameSocket.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/BadDuplicateFrameSocket.java index 7e6da590655..39ffb3b5261 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/BadDuplicateFrameSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/BadDuplicateFrameSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/BadTextSignatureSocket.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/BadTextSignatureSocket.java index ae36f0ba40d..1f97ba3d9fc 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/BadTextSignatureSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/BadTextSignatureSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/FrameSocket.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/FrameSocket.java index 498d2704ed4..11c1fe58886 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/FrameSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/FrameSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/MyEchoBinarySocket.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/MyEchoBinarySocket.java index ce0c82150c0..d1b1411fecd 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/MyEchoBinarySocket.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/MyEchoBinarySocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/MyEchoSocket.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/MyEchoSocket.java index 6d3d19de4c6..2b36f58b335 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/MyEchoSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/MyEchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/MyStatelessEchoSocket.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/MyStatelessEchoSocket.java index cd058b1916c..72b3fb9fdda 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/MyStatelessEchoSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/MyStatelessEchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/NoopSocket.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/NoopSocket.java index 60c322b74f7..86d2db90d97 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/NoopSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/NoopSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/NotASocket.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/NotASocket.java index 5ae9cbd939b..71f427d0aed 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/NotASocket.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/annotations/NotASocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/EventCapture.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/EventCapture.java index b05265841f9..1c410405cf5 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/EventCapture.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/EventCapture.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/EventDriverFactoryTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/EventDriverFactoryTest.java index 7b9086c69cd..33e0fb485fe 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/EventDriverFactoryTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/EventDriverFactoryTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/EventDriverTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/EventDriverTest.java index 7f1c19437e9..5209bc4bd08 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/EventDriverTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/EventDriverTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedScannerTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedScannerTest.java index a698bc7830c..eefe1e40360 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedScannerTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedScannerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtensionTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtensionTest.java index 2d38af9e93d..0620312aceb 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtensionTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtensionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/DummyIncomingFrames.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/DummyIncomingFrames.java index 37f95eb5042..5eca0a2858c 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/DummyIncomingFrames.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/DummyIncomingFrames.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/DummyOutgoingFrames.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/DummyOutgoingFrames.java index d1086ad5eac..e5bc3536308 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/DummyOutgoingFrames.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/DummyOutgoingFrames.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStackTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStackTest.java index 59097120ae2..b80f6962936 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStackTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStackTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/ExtensionTool.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/ExtensionTool.java index 7f8cc7536a4..7ef10477d47 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/ExtensionTool.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/ExtensionTool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/FragmentExtensionTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/FragmentExtensionTest.java index 120da711b75..1ae732538bd 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/FragmentExtensionTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/FragmentExtensionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/IdentityExtensionTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/IdentityExtensionTest.java index b82161fd89b..aa4491cd10e 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/IdentityExtensionTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/IdentityExtensionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/ByteAccumulatorTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/ByteAccumulatorTest.java index bea6ea116c9..3b36591d6d7 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/ByteAccumulatorTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/ByteAccumulatorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/CapturedHexPayloads.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/CapturedHexPayloads.java index 8161e7bf783..d3b69fd7924 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/CapturedHexPayloads.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/CapturedHexPayloads.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/DeflateFrameExtensionTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/DeflateFrameExtensionTest.java index 16963499f69..5f5efdc5510 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/DeflateFrameExtensionTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/DeflateFrameExtensionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/PerMessageDeflateExtensionTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/PerMessageDeflateExtensionTest.java index 09be8b678a1..831ce477813 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/PerMessageDeflateExtensionTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/PerMessageDeflateExtensionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/CloseableLocalWebSocketSession.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/CloseableLocalWebSocketSession.java index c92f49b8397..78767d154ed 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/CloseableLocalWebSocketSession.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/CloseableLocalWebSocketSession.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/FrameFlusherTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/FrameFlusherTest.java index 64dbd83fbab..7cd4c4407bf 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/FrameFlusherTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/FrameFlusherTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/IOStateTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/IOStateTest.java index 83ac02dc1f3..7a10958219d 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/IOStateTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/IOStateTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/LocalWebSocketConnection.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/LocalWebSocketConnection.java index aaa47af5110..917b0d3a050 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/LocalWebSocketConnection.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/LocalWebSocketConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/LocalWebSocketSession.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/LocalWebSocketSession.java index 40dfeef9d15..7ab88830561 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/LocalWebSocketSession.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/LocalWebSocketSession.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/MockEndPoint.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/MockEndPoint.java index b31f85e8989..1c72676fc16 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/MockEndPoint.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/MockEndPoint.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/http/HttpResponseHeaderParserTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/http/HttpResponseHeaderParserTest.java index 2295099fb75..b5b0ea00421 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/http/HttpResponseHeaderParserTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/http/HttpResponseHeaderParserTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/http/HttpResponseParseCapture.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/http/HttpResponseParseCapture.java index 15e57bc29a0..35006f06a60 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/http/HttpResponseParseCapture.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/http/HttpResponseParseCapture.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/payload/DeMaskProcessorTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/payload/DeMaskProcessorTest.java index 789d052c8d8..c9bc342b5a1 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/payload/DeMaskProcessorTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/payload/DeMaskProcessorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/DummySocket.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/DummySocket.java index be1657fe0a5..f3e7861d20f 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/DummySocket.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/DummySocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/MessageDebug.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/MessageDebug.java index b3e0f71ba8f..31de322280f 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/MessageDebug.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/MessageDebug.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/MessageInputStreamTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/MessageInputStreamTest.java index d96276c787f..ae8c466ec0c 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/MessageInputStreamTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/MessageInputStreamTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/MessageOutputStreamTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/MessageOutputStreamTest.java index ab68e87c3d9..8219757583c 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/MessageOutputStreamTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/MessageOutputStreamTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/MessageWriterTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/MessageWriterTest.java index c5b6a390914..0ddded0b8d9 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/MessageWriterTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/MessageWriterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/TrackingInputStreamSocket.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/TrackingInputStreamSocket.java index d8a1c49920a..2c2c45c0913 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/TrackingInputStreamSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/TrackingInputStreamSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/TrackingSocket.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/TrackingSocket.java index 4730768154f..9b4eb052814 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/TrackingSocket.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/TrackingSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/Utf8CharBufferTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/Utf8CharBufferTest.java index da7a6b4fb70..b1a70fc83be 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/Utf8CharBufferTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/message/Utf8CharBufferTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadClient.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadClient.java index 3dba1c72bb0..16e59f5e4a8 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadClient.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadClient.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadClientConnection.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadClientConnection.java index 75d2a40950c..7d6ef2df439 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadClientConnection.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadClientConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -51,4 +51,4 @@ public class BlockheadClientConnection extends BlockheadConnection } super.write(frame); } -} \ No newline at end of file +} diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadClientRequest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadClientRequest.java index c082ea7c05a..d8d1c42330d 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadClientRequest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadClientRequest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadConnection.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadConnection.java index 52a1f9852ad..b8fef4a52cd 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadConnection.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadServer.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadServer.java index b671eb9d334..b846658b5ec 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadServer.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadServerConnection.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadServerConnection.java index fa4445743c4..e554aba64bb 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadServerConnection.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadServerConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/ByteBufferAssert.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/ByteBufferAssert.java index 5b8cc49b5c9..e56273f4190 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/ByteBufferAssert.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/ByteBufferAssert.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/DummyConnection.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/DummyConnection.java index 7811d6b0f6e..010182734c3 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/DummyConnection.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/DummyConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/Fuzzed.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/Fuzzed.java index ee0858f404b..310f52e6764 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/Fuzzed.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/Fuzzed.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/Fuzzer.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/Fuzzer.java index ddfa0136841..573f42e7e3b 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/Fuzzer.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/Fuzzer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/HttpResponse.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/HttpResponse.java index c538f5fb1ba..3b19b78ce91 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/HttpResponse.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/HttpResponse.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/IBlockheadClient.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/IBlockheadClient.java index 743e718fda1..6ad7113d736 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/IBlockheadClient.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/IBlockheadClient.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -77,4 +77,4 @@ public interface IBlockheadClient extends AutoCloseable public void writeRaw(String str) throws IOException; public void writeRawSlowly(ByteBuffer buf, int segmentSize) throws IOException; -} \ No newline at end of file +} diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/IncomingFramesCapture.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/IncomingFramesCapture.java index 0e5a22ad08e..6dd881c10f0 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/IncomingFramesCapture.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/IncomingFramesCapture.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/MoreMatchers.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/MoreMatchers.java index a185e872ee2..ca00869d45e 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/MoreMatchers.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/MoreMatchers.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/OutgoingFramesCapture.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/OutgoingFramesCapture.java index fb6fd5e8983..ce0960545b9 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/OutgoingFramesCapture.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/OutgoingFramesCapture.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/OutgoingNetworkBytesCapture.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/OutgoingNetworkBytesCapture.java index ad40899d4b5..1fda4fa58dc 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/OutgoingNetworkBytesCapture.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/OutgoingNetworkBytesCapture.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/RawFrameBuilder.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/RawFrameBuilder.java index 8165e528772..fec1dd9b7c3 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/RawFrameBuilder.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/RawFrameBuilder.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/Timeouts.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/Timeouts.java index d82d964bf08..748328ff084 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/Timeouts.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/Timeouts.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/UnitGenerator.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/UnitGenerator.java index fe9116125de..f7e39b1c42d 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/UnitGenerator.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/UnitGenerator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/UnitParser.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/UnitParser.java index 921315fad92..854c4b25efa 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/UnitParser.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/UnitParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/WriteCallbackDelegate.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/WriteCallbackDelegate.java index 0d906c294d1..e899ee8e975 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/WriteCallbackDelegate.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/WriteCallbackDelegate.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/Hex.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/Hex.java index 89fa4394a0a..ba4ee53607a 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/Hex.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/Hex.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/MaskedByteBuffer.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/MaskedByteBuffer.java index 845b8451083..5c5f7470ee1 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/MaskedByteBuffer.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/MaskedByteBuffer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/Sha1Sum.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/Sha1Sum.java index d5c44ddf72f..095b6476c2b 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/Sha1Sum.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/Sha1Sum.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/StackUtil.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/StackUtil.java index 5275fa8d34f..80854fdca88 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/StackUtil.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/StackUtil.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/Utf8PartialBuilderTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/Utf8PartialBuilderTest.java index f55a9f4d261..bf728cdba88 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/Utf8PartialBuilderTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/util/Utf8PartialBuilderTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/HandshakeRFC6455.java b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/HandshakeRFC6455.java index 939a9b0af6d..1d5267272dc 100644 --- a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/HandshakeRFC6455.java +++ b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/HandshakeRFC6455.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/MappedWebSocketCreator.java b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/MappedWebSocketCreator.java index 8c6bcbc5f0d..3c6852c99fc 100644 --- a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/MappedWebSocketCreator.java +++ b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/MappedWebSocketCreator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/NativeWebSocketConfiguration.java b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/NativeWebSocketConfiguration.java index d1acab21594..800787bc992 100644 --- a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/NativeWebSocketConfiguration.java +++ b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/NativeWebSocketConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/NativeWebSocketServletContainerInitializer.java b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/NativeWebSocketServletContainerInitializer.java index f7c7d761a1f..4559ae1fdb7 100644 --- a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/NativeWebSocketServletContainerInitializer.java +++ b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/NativeWebSocketServletContainerInitializer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/ServletWebSocketRequest.java b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/ServletWebSocketRequest.java index ee7fde03b09..2bd2e80a821 100644 --- a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/ServletWebSocketRequest.java +++ b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/ServletWebSocketRequest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/ServletWebSocketResponse.java b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/ServletWebSocketResponse.java index 6500c27c5f4..7c9dddb23e8 100644 --- a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/ServletWebSocketResponse.java +++ b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/ServletWebSocketResponse.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketHandler.java b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketHandler.java index 9f607067206..b9298853f64 100644 --- a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketHandler.java +++ b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketHandshake.java b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketHandshake.java index c869a7ee771..da6b7003789 100644 --- a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketHandshake.java +++ b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketHandshake.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketServerConnection.java b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketServerConnection.java index 585c5fb9cfc..aa9a716ce3b 100644 --- a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketServerConnection.java +++ b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketServerConnection.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketServerFactory.java b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketServerFactory.java index 9eef8ab1d2d..918d3e12b44 100644 --- a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketServerFactory.java +++ b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketServerFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeFilter.java b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeFilter.java index 90487b4a129..0d91dc11639 100644 --- a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeFilter.java +++ b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeFilter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeHandlerWrapper.java b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeHandlerWrapper.java index f2748cf2154..7106d80c819 100644 --- a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeHandlerWrapper.java +++ b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeHandlerWrapper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/package-info.java b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/package-info.java index fe6a40aa60e..190bd68399e 100644 --- a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/package-info.java +++ b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/pathmap/PathSpec.java b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/pathmap/PathSpec.java index 99d8222768f..34efaf78ad0 100644 --- a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/pathmap/PathSpec.java +++ b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/pathmap/PathSpec.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/pathmap/RegexPathSpec.java b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/pathmap/RegexPathSpec.java index b89e61e4f5a..aebfb0c4826 100644 --- a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/pathmap/RegexPathSpec.java +++ b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/pathmap/RegexPathSpec.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/pathmap/ServletPathSpec.java b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/pathmap/ServletPathSpec.java index 98426507edf..191740be569 100644 --- a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/pathmap/ServletPathSpec.java +++ b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/pathmap/ServletPathSpec.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/AnnotatedMaxMessageSizeTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/AnnotatedMaxMessageSizeTest.java index 9abf03d1132..dca4156ab3c 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/AnnotatedMaxMessageSizeTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/AnnotatedMaxMessageSizeTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/BatchModeTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/BatchModeTest.java index 272537d5ff8..84811447440 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/BatchModeTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/BatchModeTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ChromeTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ChromeTest.java index cc5a9464307..8a5d53f2417 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ChromeTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ChromeTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/DecoratorsLegacyTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/DecoratorsLegacyTest.java index 686dab087fc..fc0499eb582 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/DecoratorsLegacyTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/DecoratorsLegacyTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/DecoratorsTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/DecoratorsTest.java index 09103cab7a1..5b2906c8a50 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/DecoratorsTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/DecoratorsTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/FirefoxTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/FirefoxTest.java index 0470c555704..210e4d0f212 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/FirefoxTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/FirefoxTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/FragmentExtensionTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/FragmentExtensionTest.java index 426c70f0642..426beb2c155 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/FragmentExtensionTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/FragmentExtensionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/IdentityExtensionTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/IdentityExtensionTest.java index 7b632cb78ca..169456b3f4c 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/IdentityExtensionTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/IdentityExtensionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/IdleTimeoutTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/IdleTimeoutTest.java index 016f8a9de87..5fba484fa8f 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/IdleTimeoutTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/IdleTimeoutTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoContextAltAttributeListener.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoContextAltAttributeListener.java index 131253ccb15..eb5c3053378 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoContextAltAttributeListener.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoContextAltAttributeListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoContextAttributeListener.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoContextAttributeListener.java index c38c0d06523..d84bf4c2fe8 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoContextAttributeListener.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoContextAttributeListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoContextListener.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoContextListener.java index 34ae18146a6..8e89143dee7 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoContextListener.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoContextListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoServlet.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoServlet.java index 07390192463..d8fe7abd8b7 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoServlet.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoSocket.java index 3f405d3c871..e5d474157bf 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/InfoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ManyConnectionsCleanupTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ManyConnectionsCleanupTest.java index 2bbd522d537..d682fc0831a 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ManyConnectionsCleanupTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ManyConnectionsCleanupTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/PerMessageDeflateExtensionTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/PerMessageDeflateExtensionTest.java index 481e214947e..d0f5f80f11b 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/PerMessageDeflateExtensionTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/PerMessageDeflateExtensionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/RedirectWebSocketClientTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/RedirectWebSocketClientTest.java index e4d6ccbd0c4..b808feaadb4 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/RedirectWebSocketClientTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/RedirectWebSocketClientTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/RequestHeadersTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/RequestHeadersTest.java index e23a8bb6cb1..e51eebaade0 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/RequestHeadersTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/RequestHeadersTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SimpleServletServer.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SimpleServletServer.java index da75550f8ee..a6cb3ecd785 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SimpleServletServer.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SimpleServletServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SubProtocolTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SubProtocolTest.java index 16d3420560a..6d2a5c29d57 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SubProtocolTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SubProtocolTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SuspendResumeTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SuspendResumeTest.java index 76d747e457d..b52f0c2ec0a 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SuspendResumeTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SuspendResumeTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/TooFastClientTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/TooFastClientTest.java index 73f896bae40..0c6dccfc350 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/TooFastClientTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/TooFastClientTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WSServer.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WSServer.java index c3e8962e966..40e7c3caaba 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WSServer.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WSServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketCloseTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketCloseTest.java index 22fc7abdf80..756b752fd06 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketCloseTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketCloseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketInvalidVersionTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketInvalidVersionTest.java index e0c3e2bc9d2..b69ce94e146 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketInvalidVersionTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketInvalidVersionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketOverSSLTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketOverSSLTest.java index 5866a42f297..9ef28872a94 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketOverSSLTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketOverSSLTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketProtocolTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketProtocolTest.java index 79d07ab08be..a887e662274 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketProtocolTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketProtocolTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketServerFactoryTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketServerFactoryTest.java index 781b0c319e8..6ebb9b95fed 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketServerFactoryTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketServerFactoryTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketServerSessionTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketServerSessionTest.java index 847a060fb79..19b95eb8d90 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketServerSessionTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketServerSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketServletRFCTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketServletRFCTest.java index ff4836bbd70..c5d872fa5d0 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketServletRFCTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketServletRFCTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeFilterTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeFilterTest.java index 0c3e5ccdb76..4a97acf9f84 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeFilterTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeFilterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/ABServlet.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/ABServlet.java index e8f6894457f..62c1f6e2f34 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/ABServlet.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/ABServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/ABSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/ABSocket.java index b145119aea9..00879eed628 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/ABSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/ABSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/AbstractABCase.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/AbstractABCase.java index 513f1c23982..81ca0deea25 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/AbstractABCase.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/AbstractABCase.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase1.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase1.java index 659e85dace5..fa99131d260 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase1.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase1.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase2.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase2.java index 40b27d1324d..b330696e991 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase2.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase2.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase3.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase3.java index ffebfa449e7..43b20b8cc36 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase3.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase3.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase4.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase4.java index 066fc13e0d6..344549e0802 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase4.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase4.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase5.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase5.java index 20ab62d809d..97e5bd875ae 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase5.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase5.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase6.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase6.java index a5efbc100d8..49ee633830a 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase6.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase6.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase6_BadUTF.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase6_BadUTF.java index 2e5ab5ce80b..358e95062c3 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase6_BadUTF.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase6_BadUTF.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase6_GoodUTF.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase6_GoodUTF.java index 403768a7278..bdf15b1421c 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase6_GoodUTF.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase6_GoodUTF.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase7.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase7.java index 3f925bba939..d75a1bcbd66 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase7.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase7.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase7_BadStatusCodes.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase7_BadStatusCodes.java index 55eccfcbe3b..06191a74b90 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase7_BadStatusCodes.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase7_BadStatusCodes.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase7_GoodStatusCodes.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase7_GoodStatusCodes.java index 2d5e536537a..5812a9386dc 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase7_GoodStatusCodes.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase7_GoodStatusCodes.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase9.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase9.java index a13e28e9481..e9223e6aac4 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase9.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/TestABCase9.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/browser/BrowserDebugTool.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/browser/BrowserDebugTool.java index a6c4444af79..f1645badb96 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/browser/BrowserDebugTool.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/browser/BrowserDebugTool.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/browser/BrowserSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/browser/BrowserSocket.java index 537c6227e66..24828ac6724 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/browser/BrowserSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/browser/BrowserSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/BasicEchoSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/BasicEchoSocket.java index 1f797373a65..583c90f5b7d 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/BasicEchoSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/BasicEchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/MyCustomCreationServlet.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/MyCustomCreationServlet.java index cca6d20f538..9484a724444 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/MyCustomCreationServlet.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/MyCustomCreationServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/MyEchoServlet.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/MyEchoServlet.java index c73e2f8f67c..e8bf5499077 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/MyEchoServlet.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/MyEchoServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/MyEchoSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/MyEchoSocket.java index 283ee8add7e..c1bdec9a4ab 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/MyEchoSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/MyEchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/BigEchoSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/BigEchoSocket.java index bddb4a4b0d9..471d8627295 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/BigEchoSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/BigEchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/EchoBroadcastPingSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/EchoBroadcastPingSocket.java index eba3e83584d..61badd86c0e 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/EchoBroadcastPingSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/EchoBroadcastPingSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/EchoBroadcastSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/EchoBroadcastSocket.java index 34cd414c5b6..a42a3b7930b 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/EchoBroadcastSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/EchoBroadcastSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/EchoCreator.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/EchoCreator.java index bfd9b44377d..8e981ed67bb 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/EchoCreator.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/EchoCreator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/EchoFragmentSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/EchoFragmentSocket.java index 3d28b389ccc..3f5c2565cf9 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/EchoFragmentSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/EchoFragmentSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/ExampleEchoServer.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/ExampleEchoServer.java index 8b1c68b7b72..91d6b43f70e 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/ExampleEchoServer.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/ExampleEchoServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/LogSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/LogSocket.java index ff190e801bb..10cdfedb596 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/LogSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/LogSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/CaptureSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/CaptureSocket.java index a87fa4c9f87..9a45ab49453 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/CaptureSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/CaptureSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/EchoServlet.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/EchoServlet.java index ec0cd7a3730..c1fafed37db 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/EchoServlet.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/EchoServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/EchoSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/EchoSocket.java index 3918d2055f0..8a37db12f9a 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/EchoSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/EchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/RFCServlet.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/RFCServlet.java index 8922c8f5336..7aac2231b42 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/RFCServlet.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/RFCServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/RFCSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/RFCSocket.java index 6b5d1c36a3d..bb42c47c106 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/RFCSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/RFCSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/SafariD00.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/SafariD00.java index a6bac48e8c5..794893623ed 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/SafariD00.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/SafariD00.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/SessionServlet.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/SessionServlet.java index c88a2e99203..4e75ff4d6ef 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/SessionServlet.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/SessionServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/SessionSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/SessionSocket.java index 93f4dc35029..e0438387639 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/SessionSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/SessionSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/WebSocketCaptureServlet.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/WebSocketCaptureServlet.java index f46b99f74bb..ae2302b5f01 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/WebSocketCaptureServlet.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/WebSocketCaptureServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/AnnotatedRuntimeOnConnectSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/AnnotatedRuntimeOnConnectSocket.java index 5b825c0ed8c..841a211fde6 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/AnnotatedRuntimeOnConnectSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/AnnotatedRuntimeOnConnectSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/BadSocketsServlet.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/BadSocketsServlet.java index c0846e0a630..86a5369d3ca 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/BadSocketsServlet.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/BadSocketsServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/ListenerRuntimeOnConnectSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/ListenerRuntimeOnConnectSocket.java index 0ee22a52d67..b3353ad435b 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/ListenerRuntimeOnConnectSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/ListenerRuntimeOnConnectSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/MisbehavingClassTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/MisbehavingClassTest.java index e34c794a946..28299838f99 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/MisbehavingClassTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/MisbehavingClassTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/ServletUpgradeRequest.java b/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/ServletUpgradeRequest.java index 3d5df3626f9..a2af8f6d774 100644 --- a/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/ServletUpgradeRequest.java +++ b/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/ServletUpgradeRequest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/ServletUpgradeResponse.java b/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/ServletUpgradeResponse.java index 38267694e28..3b355ee5f72 100644 --- a/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/ServletUpgradeResponse.java +++ b/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/ServletUpgradeResponse.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/UpgradeHttpServletRequest.java b/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/UpgradeHttpServletRequest.java index e2a8a782194..dbd0d1c5347 100644 --- a/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/UpgradeHttpServletRequest.java +++ b/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/UpgradeHttpServletRequest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/WebSocketCreator.java b/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/WebSocketCreator.java index 6a427e7c388..7bd79f26eda 100644 --- a/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/WebSocketCreator.java +++ b/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/WebSocketCreator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/WebSocketServlet.java b/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/WebSocketServlet.java index e6c379c5cf6..3620a663c22 100644 --- a/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/WebSocketServlet.java +++ b/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/WebSocketServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/WebSocketServletFactory.java b/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/WebSocketServletFactory.java index 17f95799c5c..1f78cca5ead 100644 --- a/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/WebSocketServletFactory.java +++ b/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/WebSocketServletFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/package-info.java b/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/package-info.java index c78f909b74a..540a3df4923 100644 --- a/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/package-info.java +++ b/jetty-websocket/websocket-servlet/src/main/java/org/eclipse/jetty/websocket/servlet/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-servlet/src/test/java/examples/MyAdvancedEchoCreator.java b/jetty-websocket/websocket-servlet/src/test/java/examples/MyAdvancedEchoCreator.java index 2aaa680d0ce..2a2a2964bb7 100644 --- a/jetty-websocket/websocket-servlet/src/test/java/examples/MyAdvancedEchoCreator.java +++ b/jetty-websocket/websocket-servlet/src/test/java/examples/MyAdvancedEchoCreator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-servlet/src/test/java/examples/MyAdvancedEchoServlet.java b/jetty-websocket/websocket-servlet/src/test/java/examples/MyAdvancedEchoServlet.java index d8626bcc7b7..38c7d01cefa 100644 --- a/jetty-websocket/websocket-servlet/src/test/java/examples/MyAdvancedEchoServlet.java +++ b/jetty-websocket/websocket-servlet/src/test/java/examples/MyAdvancedEchoServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-servlet/src/test/java/examples/MyAuthedCreator.java b/jetty-websocket/websocket-servlet/src/test/java/examples/MyAuthedCreator.java index 9509253d196..973c1257fb0 100644 --- a/jetty-websocket/websocket-servlet/src/test/java/examples/MyAuthedCreator.java +++ b/jetty-websocket/websocket-servlet/src/test/java/examples/MyAuthedCreator.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-servlet/src/test/java/examples/MyAuthedServlet.java b/jetty-websocket/websocket-servlet/src/test/java/examples/MyAuthedServlet.java index fb30b1591f0..c374b307136 100644 --- a/jetty-websocket/websocket-servlet/src/test/java/examples/MyAuthedServlet.java +++ b/jetty-websocket/websocket-servlet/src/test/java/examples/MyAuthedServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-servlet/src/test/java/examples/MyBinaryEchoSocket.java b/jetty-websocket/websocket-servlet/src/test/java/examples/MyBinaryEchoSocket.java index 193d2584424..8b59a249a98 100644 --- a/jetty-websocket/websocket-servlet/src/test/java/examples/MyBinaryEchoSocket.java +++ b/jetty-websocket/websocket-servlet/src/test/java/examples/MyBinaryEchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-servlet/src/test/java/examples/MyEchoServlet.java b/jetty-websocket/websocket-servlet/src/test/java/examples/MyEchoServlet.java index d38c2b99542..23d83decc10 100644 --- a/jetty-websocket/websocket-servlet/src/test/java/examples/MyEchoServlet.java +++ b/jetty-websocket/websocket-servlet/src/test/java/examples/MyEchoServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-websocket/websocket-servlet/src/test/java/examples/MyEchoSocket.java b/jetty-websocket/websocket-servlet/src/test/java/examples/MyEchoSocket.java index 66bb69b116e..710b04f8b61 100644 --- a/jetty-websocket/websocket-servlet/src/test/java/examples/MyEchoSocket.java +++ b/jetty-websocket/websocket-servlet/src/test/java/examples/MyEchoSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-xml/src/main/java/org/eclipse/jetty/xml/ConfigurationProcessor.java b/jetty-xml/src/main/java/org/eclipse/jetty/xml/ConfigurationProcessor.java index 91e7347a5b1..c67b25899dc 100644 --- a/jetty-xml/src/main/java/org/eclipse/jetty/xml/ConfigurationProcessor.java +++ b/jetty-xml/src/main/java/org/eclipse/jetty/xml/ConfigurationProcessor.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-xml/src/main/java/org/eclipse/jetty/xml/ConfigurationProcessorFactory.java b/jetty-xml/src/main/java/org/eclipse/jetty/xml/ConfigurationProcessorFactory.java index 3567ac2e0c0..7f05892c7d5 100644 --- a/jetty-xml/src/main/java/org/eclipse/jetty/xml/ConfigurationProcessorFactory.java +++ b/jetty-xml/src/main/java/org/eclipse/jetty/xml/ConfigurationProcessorFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlAppendable.java b/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlAppendable.java index 2779072c940..ea9eabf43c9 100644 --- a/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlAppendable.java +++ b/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlAppendable.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlConfiguration.java b/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlConfiguration.java index 7a01c9643ee..09bcefc032d 100644 --- a/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlConfiguration.java +++ b/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlParser.java b/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlParser.java index 576f7dff3d4..071853cab4f 100644 --- a/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlParser.java +++ b/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlParser.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-xml/src/main/java/org/eclipse/jetty/xml/package-info.java b/jetty-xml/src/main/java/org/eclipse/jetty/xml/package-info.java index 9eea14a61d0..3858e599f33 100644 --- a/jetty-xml/src/main/java/org/eclipse/jetty/xml/package-info.java +++ b/jetty-xml/src/main/java/org/eclipse/jetty/xml/package-info.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-xml/src/test/java/org/eclipse/jetty/xml/AnnotatedTestConfiguration.java b/jetty-xml/src/test/java/org/eclipse/jetty/xml/AnnotatedTestConfiguration.java index 67de5060a56..f694d176792 100644 --- a/jetty-xml/src/test/java/org/eclipse/jetty/xml/AnnotatedTestConfiguration.java +++ b/jetty-xml/src/test/java/org/eclipse/jetty/xml/AnnotatedTestConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-xml/src/test/java/org/eclipse/jetty/xml/ConstructorArgTestClass.java b/jetty-xml/src/test/java/org/eclipse/jetty/xml/ConstructorArgTestClass.java index 4a5f35b9e29..b486250d5f0 100644 --- a/jetty-xml/src/test/java/org/eclipse/jetty/xml/ConstructorArgTestClass.java +++ b/jetty-xml/src/test/java/org/eclipse/jetty/xml/ConstructorArgTestClass.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-xml/src/test/java/org/eclipse/jetty/xml/DefaultTestConfiguration.java b/jetty-xml/src/test/java/org/eclipse/jetty/xml/DefaultTestConfiguration.java index 6e72ce3fb94..31cd9553dc8 100644 --- a/jetty-xml/src/test/java/org/eclipse/jetty/xml/DefaultTestConfiguration.java +++ b/jetty-xml/src/test/java/org/eclipse/jetty/xml/DefaultTestConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-xml/src/test/java/org/eclipse/jetty/xml/TestConfiguration.java b/jetty-xml/src/test/java/org/eclipse/jetty/xml/TestConfiguration.java index 38e33f622c4..80ded79dc76 100644 --- a/jetty-xml/src/test/java/org/eclipse/jetty/xml/TestConfiguration.java +++ b/jetty-xml/src/test/java/org/eclipse/jetty/xml/TestConfiguration.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-xml/src/test/java/org/eclipse/jetty/xml/XmlAppendableTest.java b/jetty-xml/src/test/java/org/eclipse/jetty/xml/XmlAppendableTest.java index 4106308de46..208330dbae3 100644 --- a/jetty-xml/src/test/java/org/eclipse/jetty/xml/XmlAppendableTest.java +++ b/jetty-xml/src/test/java/org/eclipse/jetty/xml/XmlAppendableTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-xml/src/test/java/org/eclipse/jetty/xml/XmlConfigurationTest.java b/jetty-xml/src/test/java/org/eclipse/jetty/xml/XmlConfigurationTest.java index d3bcfb4af32..22734d002a1 100644 --- a/jetty-xml/src/test/java/org/eclipse/jetty/xml/XmlConfigurationTest.java +++ b/jetty-xml/src/test/java/org/eclipse/jetty/xml/XmlConfigurationTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/jetty-xml/src/test/java/org/eclipse/jetty/xml/XmlParserTest.java b/jetty-xml/src/test/java/org/eclipse/jetty/xml/XmlParserTest.java index cc34173ca24..2c352210071 100644 --- a/jetty-xml/src/test/java/org/eclipse/jetty/xml/XmlParserTest.java +++ b/jetty-xml/src/test/java/org/eclipse/jetty/xml/XmlParserTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/pom.xml b/pom.xml index 0a75c9706fa..2ea4b1713d5 100644 --- a/pom.xml +++ b/pom.xml @@ -332,7 +332,7 @@ true true - ${project.inceptionYear}-2018 + ${project.inceptionYear}-2019 diff --git a/tests/test-continuation/src/test/java/org/eclipse/jetty/continuation/ContinuationsTest.java b/tests/test-continuation/src/test/java/org/eclipse/jetty/continuation/ContinuationsTest.java index 49e7245787e..fbe3c9cd6ae 100644 --- a/tests/test-continuation/src/test/java/org/eclipse/jetty/continuation/ContinuationsTest.java +++ b/tests/test-continuation/src/test/java/org/eclipse/jetty/continuation/ContinuationsTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/AbstractTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/AbstractTest.java index 98ed427b41a..dd9dace0e69 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/AbstractTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/AbstractTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/AsyncIOServletTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/AsyncIOServletTest.java index 7431672f01b..b5ef43875c7 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/AsyncIOServletTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/AsyncIOServletTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/AsyncRequestContentTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/AsyncRequestContentTest.java index aa67cf17a3d..350234362d6 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/AsyncRequestContentTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/AsyncRequestContentTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/ConnectionStatisticsTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/ConnectionStatisticsTest.java index 6242cd402a2..ef651ee12e5 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/ConnectionStatisticsTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/ConnectionStatisticsTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/EmptyServerHandler.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/EmptyServerHandler.java index 394cc392c10..5e06e46ef2a 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/EmptyServerHandler.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/EmptyServerHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpChannelAssociationTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpChannelAssociationTest.java index f4efbba5479..d435454ec45 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpChannelAssociationTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpChannelAssociationTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientConnectTimeoutTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientConnectTimeoutTest.java index bd61e6f0f50..c62f6ba4366 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientConnectTimeoutTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientConnectTimeoutTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientContinueTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientContinueTest.java index a6ff741129c..082d7de6b9d 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientContinueTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientContinueTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientIdleTimeoutTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientIdleTimeoutTest.java index b7133073c36..3cde40558bf 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientIdleTimeoutTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientIdleTimeoutTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientLoadTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientLoadTest.java index 471e74aba53..ab3f952f3a6 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientLoadTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientLoadTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientStreamTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientStreamTest.java index bc43ae52d80..def480e37cf 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientStreamTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientStreamTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientTest.java index fc3027582bb..97eeb3727e8 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientTimeoutTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientTimeoutTest.java index 7beb4731a6d..6f40363ef39 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientTimeoutTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpClientTimeoutTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpTrailersTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpTrailersTest.java index d6e6d7bbceb..3f37b72f28a 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpTrailersTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpTrailersTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/RoundRobinConnectionPoolTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/RoundRobinConnectionPoolTest.java index eb5f486c548..b14d6befef9 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/RoundRobinConnectionPoolTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/RoundRobinConnectionPoolTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/ServerTimeoutsTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/ServerTimeoutsTest.java index ba32c40d9fa..a68356ee08b 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/ServerTimeoutsTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/ServerTimeoutsTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/Transport.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/Transport.java index a85d0f0183a..58f7bc543b2 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/Transport.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/Transport.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/TransportProvider.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/TransportProvider.java index 606b389d70f..fbd3dbf9e48 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/TransportProvider.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/TransportProvider.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/TransportScenario.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/TransportScenario.java index d66e883ca4f..c392ab3bf7b 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/TransportScenario.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/TransportScenario.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/DefaultHandlerTest.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/DefaultHandlerTest.java index 973b45eb3c8..f70f12324f6 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/DefaultHandlerTest.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/DefaultHandlerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/DeploymentErrorInitializer.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/DeploymentErrorInitializer.java index b203b3b1802..e11b63500fb 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/DeploymentErrorInitializer.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/DeploymentErrorInitializer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/DeploymentErrorTest.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/DeploymentErrorTest.java index e8c15d7c131..a3bca7e2ba2 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/DeploymentErrorTest.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/DeploymentErrorTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/DigestPostTest.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/DigestPostTest.java index a1d13fe10c3..1c52c50c56d 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/DigestPostTest.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/DigestPostTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/HttpInputIntegrationTest.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/HttpInputIntegrationTest.java index 14d05d61a54..d655157273d 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/HttpInputIntegrationTest.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/HttpInputIntegrationTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/jsp/FakeJspServlet.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/jsp/FakeJspServlet.java index a1cc41eed0a..ef10564f808 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/jsp/FakeJspServlet.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/jsp/FakeJspServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/jsp/JspAndDefaultWithAliasesTest.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/jsp/JspAndDefaultWithAliasesTest.java index b9ae5853a98..414e0311388 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/jsp/JspAndDefaultWithAliasesTest.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/jsp/JspAndDefaultWithAliasesTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/jsp/JspAndDefaultWithoutAliasesTest.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/jsp/JspAndDefaultWithoutAliasesTest.java index 0c340dfaff2..8f20e4aac87 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/jsp/JspAndDefaultWithoutAliasesTest.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/jsp/JspAndDefaultWithoutAliasesTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/rfcs/RFC2616BaseTest.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/rfcs/RFC2616BaseTest.java index 4d84d8be53a..2fa66666904 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/rfcs/RFC2616BaseTest.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/rfcs/RFC2616BaseTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/rfcs/RFC2616NIOHttpTest.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/rfcs/RFC2616NIOHttpTest.java index 4255723f0b4..4f3929142ae 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/rfcs/RFC2616NIOHttpTest.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/rfcs/RFC2616NIOHttpTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/rfcs/RFC2616NIOHttpsTest.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/rfcs/RFC2616NIOHttpsTest.java index b5268bf93c6..34a98de8901 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/rfcs/RFC2616NIOHttpsTest.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/rfcs/RFC2616NIOHttpsTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/EchoHandler.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/EchoHandler.java index fe733d95e19..aef1d1c8410 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/EchoHandler.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/EchoHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/JettyDistro.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/JettyDistro.java index 27994a3e1d3..b523e9bf398 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/JettyDistro.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/JettyDistro.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/StringUtil.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/StringUtil.java index e057b59576f..6b0830f7f72 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/StringUtil.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/StringUtil.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/TestableJettyServer.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/TestableJettyServer.java index abd4854f627..d47cc4380db 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/TestableJettyServer.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/TestableJettyServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpRequestTesterTest.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpRequestTesterTest.java index a4ab3017b28..3e646b7c65e 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpRequestTesterTest.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpRequestTesterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpResponseTesterTest.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpResponseTesterTest.java index 5118bd62a69..e470513241a 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpResponseTesterTest.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpResponseTesterTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpSocket.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpSocket.java index 16c942be319..c3a4d13cdc7 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpSocket.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpSocket.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpSocketImpl.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpSocketImpl.java index a81cfeb908e..f8f5e7182ef 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpSocketImpl.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpSocketImpl.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpTesting.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpTesting.java index e216c20458b..4414b095303 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpTesting.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpTesting.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpsSocketImpl.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpsSocketImpl.java index e7855198bfd..5bf8f8b621a 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpsSocketImpl.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpsSocketImpl.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-jmx/jmx-webapp-it/src/test/java/org/eclipse/jetty/test/jmx/JmxIT.java b/tests/test-jmx/jmx-webapp-it/src/test/java/org/eclipse/jetty/test/jmx/JmxIT.java index 991071f6228..20631392728 100644 --- a/tests/test-jmx/jmx-webapp-it/src/test/java/org/eclipse/jetty/test/jmx/JmxIT.java +++ b/tests/test-jmx/jmx-webapp-it/src/test/java/org/eclipse/jetty/test/jmx/JmxIT.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/CommonComponent.java b/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/CommonComponent.java index e08c5291650..4b42f724539 100644 --- a/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/CommonComponent.java +++ b/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/CommonComponent.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/Echoer.java b/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/Echoer.java index 33e5b9031d3..63b880636bb 100644 --- a/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/Echoer.java +++ b/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/Echoer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/MyContainerInitializer.java b/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/MyContainerInitializer.java index c55e5dbe28a..91b5a8896dd 100644 --- a/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/MyContainerInitializer.java +++ b/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/MyContainerInitializer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/PingServlet.java b/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/PingServlet.java index 9a8c131779d..86472d0b93b 100644 --- a/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/PingServlet.java +++ b/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/PingServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/Pinger.java b/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/Pinger.java index 00fd34ce04f..d2710c806d5 100644 --- a/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/Pinger.java +++ b/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/Pinger.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/jmx/EchoerMBean.java b/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/jmx/EchoerMBean.java index ee2dbba76d3..01795bee185 100644 --- a/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/jmx/EchoerMBean.java +++ b/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/jmx/EchoerMBean.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/jmx/PingerMBean.java b/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/jmx/PingerMBean.java index edee4f3e955..d061a26dd14 100644 --- a/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/jmx/PingerMBean.java +++ b/tests/test-jmx/jmx-webapp/src/main/java/org/eclipse/jetty/test/jmx/jmx/PingerMBean.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-loginservice/src/test/java/org/eclipse/jetty/DataSourceLoginServiceTest.java b/tests/test-loginservice/src/test/java/org/eclipse/jetty/DataSourceLoginServiceTest.java index e03da011ddb..17e6ab37738 100644 --- a/tests/test-loginservice/src/test/java/org/eclipse/jetty/DataSourceLoginServiceTest.java +++ b/tests/test-loginservice/src/test/java/org/eclipse/jetty/DataSourceLoginServiceTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-loginservice/src/test/java/org/eclipse/jetty/DatabaseLoginServiceTestServer.java b/tests/test-loginservice/src/test/java/org/eclipse/jetty/DatabaseLoginServiceTestServer.java index a8c6969f368..8d680ee4d75 100644 --- a/tests/test-loginservice/src/test/java/org/eclipse/jetty/DatabaseLoginServiceTestServer.java +++ b/tests/test-loginservice/src/test/java/org/eclipse/jetty/DatabaseLoginServiceTestServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-loginservice/src/test/java/org/eclipse/jetty/JdbcLoginServiceTest.java b/tests/test-loginservice/src/test/java/org/eclipse/jetty/JdbcLoginServiceTest.java index 69928116afb..8ecd054e7e2 100644 --- a/tests/test-loginservice/src/test/java/org/eclipse/jetty/JdbcLoginServiceTest.java +++ b/tests/test-loginservice/src/test/java/org/eclipse/jetty/JdbcLoginServiceTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/AttributeNormalizerTest.java b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/AttributeNormalizerTest.java index 4f47272814b..a32ece90088 100644 --- a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/AttributeNormalizerTest.java +++ b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/AttributeNormalizerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/AttributeNormalizer_ToCanonicalUriTest.java b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/AttributeNormalizer_ToCanonicalUriTest.java index cc639f505ab..9d2f4c88bfe 100644 --- a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/AttributeNormalizer_ToCanonicalUriTest.java +++ b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/AttributeNormalizer_ToCanonicalUriTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/EnvUtils.java b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/EnvUtils.java index c6a718840a3..17ea6145132 100644 --- a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/EnvUtils.java +++ b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/EnvUtils.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/PreconfigureJNDIWar.java b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/PreconfigureJNDIWar.java index 85a4f809ebd..25846fb26a1 100644 --- a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/PreconfigureJNDIWar.java +++ b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/PreconfigureJNDIWar.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/PreconfigureSpecWar.java b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/PreconfigureSpecWar.java index 7b59fb1f9b5..80d4e8299d5 100644 --- a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/PreconfigureSpecWar.java +++ b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/PreconfigureSpecWar.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/PreconfigureStandardTestWar.java b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/PreconfigureStandardTestWar.java index df0293785e1..1df2b2a25cf 100644 --- a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/PreconfigureStandardTestWar.java +++ b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/PreconfigureStandardTestWar.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/QuickStartJNDIWar.java b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/QuickStartJNDIWar.java index f57e91b4b67..d1d93db173d 100644 --- a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/QuickStartJNDIWar.java +++ b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/QuickStartJNDIWar.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/QuickStartSpecWar.java b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/QuickStartSpecWar.java index fe9c6cee0ef..d9924d2f638 100644 --- a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/QuickStartSpecWar.java +++ b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/QuickStartSpecWar.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/QuickStartStandardTestWar.java b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/QuickStartStandardTestWar.java index cdccae5f8a7..34b5df21f42 100644 --- a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/QuickStartStandardTestWar.java +++ b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/QuickStartStandardTestWar.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/QuickStartTest.java b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/QuickStartTest.java index 2db9de787ef..e7899924e29 100644 --- a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/QuickStartTest.java +++ b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/QuickStartTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/Quickstart.java b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/Quickstart.java index b74c8ea70df..f9656f143d1 100644 --- a/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/Quickstart.java +++ b/tests/test-quickstart/src/test/java/org/eclipse/jetty/quickstart/Quickstart.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredOrphanedSessionTest.java b/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredOrphanedSessionTest.java index dc579b89ad7..8b55bf5b4f8 100644 --- a/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredOrphanedSessionTest.java +++ b/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredOrphanedSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/FileSessionDataStoreTest.java b/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/FileSessionDataStoreTest.java index ea7383a60a8..1cc47506216 100644 --- a/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/FileSessionDataStoreTest.java +++ b/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/FileSessionDataStoreTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/FileTestHelper.java b/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/FileTestHelper.java index 6757dd8abcb..1df61d6d2f5 100644 --- a/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/FileTestHelper.java +++ b/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/FileTestHelper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/TestFileSessions.java b/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/TestFileSessions.java index a524a02ad3d..762d9e84b06 100644 --- a/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/TestFileSessions.java +++ b/tests/test-sessions/test-file-sessions/src/test/java/org/eclipse/jetty/server/session/TestFileSessions.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredOrphanedSessionTest.java b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredOrphanedSessionTest.java index 6aea4e330cf..0011c9e4fa9 100644 --- a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredOrphanedSessionTest.java +++ b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredOrphanedSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredSessionScavengingTest.java b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredSessionScavengingTest.java index b4be6a648f7..2b99f7b5f0c 100644 --- a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredSessionScavengingTest.java +++ b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/ClusteredSessionScavengingTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStoreTest.java b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStoreTest.java index d10de993b63..bbdf1810263 100644 --- a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStoreTest.java +++ b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionDataStoreTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionTestSupport.java b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionTestSupport.java index 9842201f77c..79510a08485 100644 --- a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionTestSupport.java +++ b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/GCloudSessionTestSupport.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/InvalidationSessionTest.java b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/InvalidationSessionTest.java index 837c7749524..38cd6a9a951 100644 --- a/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/InvalidationSessionTest.java +++ b/tests/test-sessions/test-gcloud-sessions/src/test/java/org/eclipse/jetty/gcloud/session/InvalidationSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/ClusteredOrphanedSessionTest.java b/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/ClusteredOrphanedSessionTest.java index 8c02caf3dbb..2cff60e767f 100644 --- a/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/ClusteredOrphanedSessionTest.java +++ b/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/ClusteredOrphanedSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/ClusteredSessionScavengingTest.java b/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/ClusteredSessionScavengingTest.java index 379ba76e5fb..8edb08003c6 100644 --- a/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/ClusteredSessionScavengingTest.java +++ b/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/ClusteredSessionScavengingTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/HazelcastClusteredInvalidationSessionTest.java b/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/HazelcastClusteredInvalidationSessionTest.java index 3850491f41e..0f5c768f146 100644 --- a/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/HazelcastClusteredInvalidationSessionTest.java +++ b/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/HazelcastClusteredInvalidationSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStoreTest.java b/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStoreTest.java index a3c07193d81..527acb6de06 100644 --- a/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStoreTest.java +++ b/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/HazelcastSessionDataStoreTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/HazelcastTestHelper.java b/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/HazelcastTestHelper.java index c76761aad5c..08d7eae7304 100644 --- a/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/HazelcastTestHelper.java +++ b/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/HazelcastTestHelper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/client/ClientOrphanedSessionTest.java b/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/client/ClientOrphanedSessionTest.java index 2782032052d..98998c6c5bf 100644 --- a/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/client/ClientOrphanedSessionTest.java +++ b/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/client/ClientOrphanedSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/client/ClientSessionScavengingTest.java b/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/client/ClientSessionScavengingTest.java index deb06ba540b..3bcc6b3e00e 100644 --- a/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/client/ClientSessionScavengingTest.java +++ b/tests/test-sessions/test-hazelcast-sessions/src/test/java/org/eclipse/jetty/hazelcast/session/client/ClientSessionScavengingTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredOrphanedSessionTest.java b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredOrphanedSessionTest.java index 81c3b6a95b5..75f414e998f 100644 --- a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredOrphanedSessionTest.java +++ b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredOrphanedSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionScavengingTest.java b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionScavengingTest.java index 76551935cf1..a620ef73229 100644 --- a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionScavengingTest.java +++ b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionScavengingTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/InfinispanSessionDataStoreTest.java b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/InfinispanSessionDataStoreTest.java index 88905be6db8..4a3c2618c45 100644 --- a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/InfinispanSessionDataStoreTest.java +++ b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/InfinispanSessionDataStoreTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/InfinispanTestSupport.java b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/InfinispanTestSupport.java index 8ad971ebde8..57ecb1f80d3 100644 --- a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/InfinispanTestSupport.java +++ b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/InfinispanTestSupport.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteClusteredInvalidationSessionTest.java b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteClusteredInvalidationSessionTest.java index 285746d110c..25fa84cb61a 100644 --- a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteClusteredInvalidationSessionTest.java +++ b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteClusteredInvalidationSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteClusteredSessionScavengingTest.java b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteClusteredSessionScavengingTest.java index d3f02822360..b612f7bae18 100644 --- a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteClusteredSessionScavengingTest.java +++ b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteClusteredSessionScavengingTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteInfinispanSessionDataStoreTest.java b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteInfinispanSessionDataStoreTest.java index d13c12d2315..40461797143 100644 --- a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteInfinispanSessionDataStoreTest.java +++ b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteInfinispanSessionDataStoreTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteInfinispanTestSupport.java b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteInfinispanTestSupport.java index 02e4faedd52..450fdaf9096 100644 --- a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteInfinispanTestSupport.java +++ b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/remote/RemoteInfinispanTestSupport.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredInvalidationSessionTest.java b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredInvalidationSessionTest.java index c3d053109b3..9edae48e1ad 100644 --- a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredInvalidationSessionTest.java +++ b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredInvalidationSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredOrphanedSessionTest.java b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredOrphanedSessionTest.java index 4e01fd5ca01..5ac7b392662 100644 --- a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredOrphanedSessionTest.java +++ b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredOrphanedSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionMigrationTest.java b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionMigrationTest.java index 0d2c494e630..03a34762f79 100644 --- a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionMigrationTest.java +++ b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionMigrationTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionScavengingTest.java b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionScavengingTest.java index e3e326cd404..9781ecad2e4 100644 --- a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionScavengingTest.java +++ b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionScavengingTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/JDBCSessionDataStoreTest.java b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/JDBCSessionDataStoreTest.java index b343a000e2f..e8fdf69803b 100644 --- a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/JDBCSessionDataStoreTest.java +++ b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/JDBCSessionDataStoreTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/JdbcTestHelper.java b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/JdbcTestHelper.java index 73f6466dab4..980dbd39517 100644 --- a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/JdbcTestHelper.java +++ b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/JdbcTestHelper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ReloadedSessionMissingClassTest.java b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ReloadedSessionMissingClassTest.java index 702b6d4ec8e..2df36adc3c2 100644 --- a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ReloadedSessionMissingClassTest.java +++ b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/ReloadedSessionMissingClassTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/SessionTableSchemaTest.java b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/SessionTableSchemaTest.java index fde8ba51558..78f7b135a6e 100644 --- a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/SessionTableSchemaTest.java +++ b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/SessionTableSchemaTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/WebAppObjectInSessionTest.java b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/WebAppObjectInSessionTest.java index a5a7b909e51..0c52a90ea53 100644 --- a/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/WebAppObjectInSessionTest.java +++ b/tests/test-sessions/test-jdbc-sessions/src/test/java/org/eclipse/jetty/server/session/WebAppObjectInSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-memcached-sessions/src/test/java/org/eclipse/jetty/memcached/sessions/CachingSessionDataStoreTest.java b/tests/test-sessions/test-memcached-sessions/src/test/java/org/eclipse/jetty/memcached/sessions/CachingSessionDataStoreTest.java index 0750f4616db..5dcaa70d78c 100644 --- a/tests/test-sessions/test-memcached-sessions/src/test/java/org/eclipse/jetty/memcached/sessions/CachingSessionDataStoreTest.java +++ b/tests/test-sessions/test-memcached-sessions/src/test/java/org/eclipse/jetty/memcached/sessions/CachingSessionDataStoreTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-memcached-sessions/src/test/java/org/eclipse/jetty/memcached/sessions/MemcachedTestHelper.java b/tests/test-sessions/test-memcached-sessions/src/test/java/org/eclipse/jetty/memcached/sessions/MemcachedTestHelper.java index 49a02bcd38f..a6de0b6f907 100644 --- a/tests/test-sessions/test-memcached-sessions/src/test/java/org/eclipse/jetty/memcached/sessions/MemcachedTestHelper.java +++ b/tests/test-sessions/test-memcached-sessions/src/test/java/org/eclipse/jetty/memcached/sessions/MemcachedTestHelper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/AttributeNameTest.java b/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/AttributeNameTest.java index 876bd7e134e..aaa571e0d5e 100644 --- a/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/AttributeNameTest.java +++ b/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/AttributeNameTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/ClusteredInvalidateSessionTest.java b/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/ClusteredInvalidateSessionTest.java index be93ecf8578..b344dfbfe09 100644 --- a/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/ClusteredInvalidateSessionTest.java +++ b/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/ClusteredInvalidateSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/ClusteredOrphanedSessionTest.java b/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/ClusteredOrphanedSessionTest.java index 5e16ee74eb1..abb0e18788e 100644 --- a/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/ClusteredOrphanedSessionTest.java +++ b/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/ClusteredOrphanedSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/ClusteredSessionScavengingTest.java b/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/ClusteredSessionScavengingTest.java index 02982279323..c81dfe52dc3 100644 --- a/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/ClusteredSessionScavengingTest.java +++ b/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/ClusteredSessionScavengingTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStoreTest.java b/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStoreTest.java index 1fade684ab4..9c4d8dea0ad 100644 --- a/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStoreTest.java +++ b/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/MongoSessionDataStoreTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/MongoTestHelper.java b/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/MongoTestHelper.java index 47c536ff7cc..e0ef31ff4cb 100644 --- a/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/MongoTestHelper.java +++ b/tests/test-sessions/test-mongodb-sessions/src/test/java/org/eclipse/jetty/nosql/mongodb/MongoTestHelper.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractClusteredInvalidationSessionTest.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractClusteredInvalidationSessionTest.java index 1aa5395309a..40221a32054 100644 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractClusteredInvalidationSessionTest.java +++ b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractClusteredInvalidationSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractClusteredOrphanedSessionTest.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractClusteredOrphanedSessionTest.java index 8648b1005a2..40d0230c20d 100644 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractClusteredOrphanedSessionTest.java +++ b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractClusteredOrphanedSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractClusteredSessionScavengingTest.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractClusteredSessionScavengingTest.java index f3bdf7618bb..7dfbc2236eb 100644 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractClusteredSessionScavengingTest.java +++ b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractClusteredSessionScavengingTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractSessionDataStoreTest.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractSessionDataStoreTest.java index aac29b9dab0..288597bf681 100644 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractSessionDataStoreTest.java +++ b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractSessionDataStoreTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractTestBase.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractTestBase.java index 6ed26aea352..1ee055b2a58 100644 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractTestBase.java +++ b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractTestBase.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractWebAppObjectInSessionTest.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractWebAppObjectInSessionTest.java index fdd530b5b3e..b8be44a00ec 100644 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractWebAppObjectInSessionTest.java +++ b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractWebAppObjectInSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/Foo.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/Foo.java index 72819d75362..e8a47c13d9c 100644 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/Foo.java +++ b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/Foo.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/FooInvocationHandler.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/FooInvocationHandler.java index ef5f630f76f..0a673120511 100644 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/FooInvocationHandler.java +++ b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/FooInvocationHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestContextScopeListener.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestContextScopeListener.java index 6db87aea440..a6c4393b614 100644 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestContextScopeListener.java +++ b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestContextScopeListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 @@ -57,4 +57,4 @@ public class TestContextScopeListener implements ContextScopeListener if (_exitSynchronizer.get() != null) _exitSynchronizer.get().countDown(); } -} \ No newline at end of file +} diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestFoo.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestFoo.java index 8b004fe99cb..df754e8a361 100644 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestFoo.java +++ b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestFoo.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestHttpSessionListener.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestHttpSessionListener.java index 6e366458183..770627b6894 100644 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestHttpSessionListener.java +++ b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestHttpSessionListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestServer.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestServer.java index 4990d7f8a91..f2de6f96c9c 100644 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestServer.java +++ b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestSessionDataStore.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestSessionDataStore.java index 20baeb75033..703f8770c37 100644 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestSessionDataStore.java +++ b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestSessionDataStore.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestSessionDataStoreFactory.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestSessionDataStoreFactory.java index f029469fd46..bfea8f2b4a4 100644 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestSessionDataStoreFactory.java +++ b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestSessionDataStoreFactory.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestSessionHandler.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestSessionHandler.java index 2e1098ef075..edbbc639410 100644 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestSessionHandler.java +++ b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/TestSessionHandler.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/WebAppObjectInSessionServlet.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/WebAppObjectInSessionServlet.java index 4cbff16a82a..48eda0f3444 100644 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/WebAppObjectInSessionServlet.java +++ b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/WebAppObjectInSessionServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/AsyncTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/AsyncTest.java index 2c8a105d3fc..fa4cc51786c 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/AsyncTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/AsyncTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/ClientCrossContextSessionTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/ClientCrossContextSessionTest.java index 92b65c02829..fe84ae7215d 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/ClientCrossContextSessionTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/ClientCrossContextSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/CreationTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/CreationTest.java index 978d5c901dd..dfc3a39a362 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/CreationTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/CreationTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DefaultSessionCacheTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DefaultSessionCacheTest.java index 9cb25844567..32c805eda55 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DefaultSessionCacheTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DefaultSessionCacheTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DeleteUnloadableSessionTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DeleteUnloadableSessionTest.java index be60e5f0824..f9355cf9d57 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DeleteUnloadableSessionTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DeleteUnloadableSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DirtyAttributeTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DirtyAttributeTest.java index c538e2b9ecd..1a67d0bee4c 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DirtyAttributeTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/DirtyAttributeTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/IdleSessionTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/IdleSessionTest.java index bd52fe79621..a0a9e938aa6 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/IdleSessionTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/IdleSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/ImmortalSessionTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/ImmortalSessionTest.java index b0564b6519b..fefbf4949c6 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/ImmortalSessionTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/ImmortalSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/ModifyMaxInactiveIntervalTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/ModifyMaxInactiveIntervalTest.java index 151ceda98fe..0c6d56d84f2 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/ModifyMaxInactiveIntervalTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/ModifyMaxInactiveIntervalTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/NonClusteredSessionScavengingTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/NonClusteredSessionScavengingTest.java index 4046f57e3de..4ea7a96a394 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/NonClusteredSessionScavengingTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/NonClusteredSessionScavengingTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/NullSessionCacheTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/NullSessionCacheTest.java index 3679728fe89..47534cb5d09 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/NullSessionCacheTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/NullSessionCacheTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/RedirectSessionTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/RedirectSessionTest.java index 6b82ad2174a..2b38715c6ac 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/RedirectSessionTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/RedirectSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/ReentrantRequestSessionTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/ReentrantRequestSessionTest.java index 1be42cbce97..82207fcf3c8 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/ReentrantRequestSessionTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/ReentrantRequestSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/RemoveSessionTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/RemoveSessionTest.java index e0da5a23371..d6584291e0a 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/RemoveSessionTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/RemoveSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SameContextForwardedSessionTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SameContextForwardedSessionTest.java index da0b42c708e..cc1fdc88f16 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SameContextForwardedSessionTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SameContextForwardedSessionTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SameNodeLoadTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SameNodeLoadTest.java index a77dc5a73f7..5de54537677 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SameNodeLoadTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SameNodeLoadTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SaveOptimizeTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SaveOptimizeTest.java index 96f988c5869..179190e1b67 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SaveOptimizeTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SaveOptimizeTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionEvictionFailureTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionEvictionFailureTest.java index 214d3e59985..9cf29f42517 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionEvictionFailureTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionEvictionFailureTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionInvalidateCreateScavengeTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionInvalidateCreateScavengeTest.java index 417bbdfb1ed..7d87757366a 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionInvalidateCreateScavengeTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionInvalidateCreateScavengeTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionListenerTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionListenerTest.java index 403c029c09b..ba83986c69a 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionListenerTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionListenerTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionRenewTest.java b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionRenewTest.java index b0763dcf90f..6258df9559e 100644 --- a/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionRenewTest.java +++ b/tests/test-sessions/test-sessions-common/src/test/java/org/eclipse/jetty/server/session/SessionRenewTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-http2-webapp/src/main/java/org/eclipse/jetty/test/webapp/HTTP1Servlet.java b/tests/test-webapps/test-http2-webapp/src/main/java/org/eclipse/jetty/test/webapp/HTTP1Servlet.java index 83d9c361860..cd1beb2a8ad 100644 --- a/tests/test-webapps/test-http2-webapp/src/main/java/org/eclipse/jetty/test/webapp/HTTP1Servlet.java +++ b/tests/test-webapps/test-http2-webapp/src/main/java/org/eclipse/jetty/test/webapp/HTTP1Servlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-http2-webapp/src/main/java/org/eclipse/jetty/test/webapp/HTTP2Servlet.java b/tests/test-webapps/test-http2-webapp/src/main/java/org/eclipse/jetty/test/webapp/HTTP2Servlet.java index 77e6c420d24..dc9d71259ce 100644 --- a/tests/test-webapps/test-http2-webapp/src/main/java/org/eclipse/jetty/test/webapp/HTTP2Servlet.java +++ b/tests/test-webapps/test-http2-webapp/src/main/java/org/eclipse/jetty/test/webapp/HTTP2Servlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-http2-webapp/src/test/java/org/eclipse/jetty/test/webapp/HTTP2FromWebAppIT.java b/tests/test-webapps/test-http2-webapp/src/test/java/org/eclipse/jetty/test/webapp/HTTP2FromWebAppIT.java index 6931d510a80..d1fca3bc1a0 100644 --- a/tests/test-webapps/test-http2-webapp/src/test/java/org/eclipse/jetty/test/webapp/HTTP2FromWebAppIT.java +++ b/tests/test-webapps/test-http2-webapp/src/test/java/org/eclipse/jetty/test/webapp/HTTP2FromWebAppIT.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/ChatServlet.java b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/ChatServlet.java index 359335d28b4..ca99ec2efad 100644 --- a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/ChatServlet.java +++ b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/ChatServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/CookieDump.java b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/CookieDump.java index 6cdfbf62ae0..f9c6d58ce89 100644 --- a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/CookieDump.java +++ b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/CookieDump.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/Counter.java b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/Counter.java index 548d8cd6d0d..3c87fc55cfa 100644 --- a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/Counter.java +++ b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/Counter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/Date2Tag.java b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/Date2Tag.java index e377b9c4a97..6a8282d9d39 100644 --- a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/Date2Tag.java +++ b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/Date2Tag.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/DateTag.java b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/DateTag.java index c0286c2f2ed..6aaa787188f 100644 --- a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/DateTag.java +++ b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/DateTag.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/DispatchServlet.java b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/DispatchServlet.java index 62bc5ba8a92..e2d2cc9720a 100644 --- a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/DispatchServlet.java +++ b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/DispatchServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/Dump.java b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/Dump.java index 87e87da94b6..1110e8bfeff 100644 --- a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/Dump.java +++ b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/Dump.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/HelloWorld.java b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/HelloWorld.java index d31efbb125c..ec56c279203 100644 --- a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/HelloWorld.java +++ b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/HelloWorld.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/JavaxWebSocketChat.java b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/JavaxWebSocketChat.java index 86e5280e403..2456385cd8e 100644 --- a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/JavaxWebSocketChat.java +++ b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/JavaxWebSocketChat.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/LoginServlet.java b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/LoginServlet.java index 485f4578df1..b90b9f8ba0b 100644 --- a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/LoginServlet.java +++ b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/LoginServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/RegTest.java b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/RegTest.java index d547652be53..5261180fe8f 100644 --- a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/RegTest.java +++ b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/RegTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/RewriteServlet.java b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/RewriteServlet.java index 7b6b8c76de1..71417aa926f 100644 --- a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/RewriteServlet.java +++ b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/RewriteServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/SecureModeServlet.java b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/SecureModeServlet.java index 29f4062e33e..e8e6a776c64 100644 --- a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/SecureModeServlet.java +++ b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/SecureModeServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/SessionDump.java b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/SessionDump.java index f2ca605a78f..3e9e7c15af8 100644 --- a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/SessionDump.java +++ b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/SessionDump.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/TagListener.java b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/TagListener.java index f8204ac0224..397f08131c6 100644 --- a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/TagListener.java +++ b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/TagListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/TestFilter.java b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/TestFilter.java index fc802a59749..ba50fe7500c 100644 --- a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/TestFilter.java +++ b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/TestFilter.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/TestListener.java b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/TestListener.java index 1d31e5a58d7..eae2c96eec4 100644 --- a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/TestListener.java +++ b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/TestListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/WebSocketChatServlet.java b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/WebSocketChatServlet.java index 7f6a1d53967..5fc1794edc7 100644 --- a/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/WebSocketChatServlet.java +++ b/tests/test-webapps/test-jetty-webapp/src/main/java/com/acme/WebSocketChatServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/ChatServletTest.java b/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/ChatServletTest.java index 7fd769a7b00..3741fc33dfe 100644 --- a/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/ChatServletTest.java +++ b/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/ChatServletTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/DispatchServletTest.java b/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/DispatchServletTest.java index 50861b49c60..5196c890391 100644 --- a/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/DispatchServletTest.java +++ b/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/DispatchServletTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/TestServer.java b/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/TestServer.java index cfe1140229d..a7af06405f0 100644 --- a/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/TestServer.java +++ b/tests/test-webapps/test-jetty-webapp/src/test/java/org/eclipse/jetty/TestServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-jndi-webapp/src/main/java/com/acme/JNDITest.java b/tests/test-webapps/test-jndi-webapp/src/main/java/com/acme/JNDITest.java index bcbf6363d7a..e6c55b14e5a 100644 --- a/tests/test-webapps/test-jndi-webapp/src/main/java/com/acme/JNDITest.java +++ b/tests/test-webapps/test-jndi-webapp/src/main/java/com/acme/JNDITest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-mock-resources/src/main/java/com/acme/MockDataSource.java b/tests/test-webapps/test-mock-resources/src/main/java/com/acme/MockDataSource.java index 8c85947792a..e75f9531754 100644 --- a/tests/test-webapps/test-mock-resources/src/main/java/com/acme/MockDataSource.java +++ b/tests/test-webapps/test-mock-resources/src/main/java/com/acme/MockDataSource.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-mock-resources/src/main/java/com/acme/MockTransport.java b/tests/test-webapps/test-mock-resources/src/main/java/com/acme/MockTransport.java index c3dbcfcc7b7..e30591c36ce 100644 --- a/tests/test-webapps/test-mock-resources/src/main/java/com/acme/MockTransport.java +++ b/tests/test-webapps/test-mock-resources/src/main/java/com/acme/MockTransport.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-mock-resources/src/main/java/com/acme/MockUserTransaction.java b/tests/test-webapps/test-mock-resources/src/main/java/com/acme/MockUserTransaction.java index 6721d275815..1d8bd07cc6a 100644 --- a/tests/test-webapps/test-mock-resources/src/main/java/com/acme/MockUserTransaction.java +++ b/tests/test-webapps/test-mock-resources/src/main/java/com/acme/MockUserTransaction.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-proxy-webapp/src/test/java/org/eclipse/jetty/TestTransparentProxyServer.java b/tests/test-webapps/test-proxy-webapp/src/test/java/org/eclipse/jetty/TestTransparentProxyServer.java index af4dfdcfab7..002156a46fd 100644 --- a/tests/test-webapps/test-proxy-webapp/src/test/java/org/eclipse/jetty/TestTransparentProxyServer.java +++ b/tests/test-webapps/test-proxy-webapp/src/test/java/org/eclipse/jetty/TestTransparentProxyServer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-servlet-spec/test-container-initializer/src/main/java/com/acme/initializer/Foo.java b/tests/test-webapps/test-servlet-spec/test-container-initializer/src/main/java/com/acme/initializer/Foo.java index aad6ce6f222..dffe1d36063 100644 --- a/tests/test-webapps/test-servlet-spec/test-container-initializer/src/main/java/com/acme/initializer/Foo.java +++ b/tests/test-webapps/test-servlet-spec/test-container-initializer/src/main/java/com/acme/initializer/Foo.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-servlet-spec/test-container-initializer/src/main/java/com/acme/initializer/FooInitializer.java b/tests/test-webapps/test-servlet-spec/test-container-initializer/src/main/java/com/acme/initializer/FooInitializer.java index 9ae544d7ce8..5a13c8304f8 100644 --- a/tests/test-webapps/test-servlet-spec/test-container-initializer/src/main/java/com/acme/initializer/FooInitializer.java +++ b/tests/test-webapps/test-servlet-spec/test-container-initializer/src/main/java/com/acme/initializer/FooInitializer.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/AnnotatedListener.java b/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/AnnotatedListener.java index 884911d54b3..11f63080543 100644 --- a/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/AnnotatedListener.java +++ b/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/AnnotatedListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/AnnotationTest.java b/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/AnnotationTest.java index 21355401674..d24402b0af6 100644 --- a/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/AnnotationTest.java +++ b/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/AnnotationTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/AsyncListenerServlet.java b/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/AsyncListenerServlet.java index 86e1b3eb43b..f07b4c0b573 100644 --- a/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/AsyncListenerServlet.java +++ b/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/AsyncListenerServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/Bar.java b/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/Bar.java index 978cd9304f3..ac820990c34 100644 --- a/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/Bar.java +++ b/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/Bar.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/MultiPartTest.java b/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/MultiPartTest.java index 8c351b77f85..ad1b1cabdbc 100644 --- a/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/MultiPartTest.java +++ b/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/MultiPartTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/RoleAnnotationTest.java b/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/RoleAnnotationTest.java index 75b916805ff..516d0d3f017 100644 --- a/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/RoleAnnotationTest.java +++ b/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/RoleAnnotationTest.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/SecuredServlet.java b/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/SecuredServlet.java index 766cd709e21..a98dfdbba6e 100644 --- a/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/SecuredServlet.java +++ b/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/SecuredServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/TestListener.java b/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/TestListener.java index 3962fdef9c2..7f0cc779368 100644 --- a/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/TestListener.java +++ b/tests/test-webapps/test-servlet-spec/test-spec-webapp/src/main/java/com/acme/test/TestListener.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-servlet-spec/test-web-fragment/src/main/java/com/acme/fragment/FragmentServlet.java b/tests/test-webapps/test-servlet-spec/test-web-fragment/src/main/java/com/acme/fragment/FragmentServlet.java index d15624d7ed3..0b30cad69cf 100644 --- a/tests/test-webapps/test-servlet-spec/test-web-fragment/src/main/java/com/acme/fragment/FragmentServlet.java +++ b/tests/test-webapps/test-servlet-spec/test-web-fragment/src/main/java/com/acme/fragment/FragmentServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 diff --git a/tests/test-webapps/test-webapp-rfc2616/src/main/java/org/eclipse/jetty/tests/webapp/HttpMethodsServlet.java b/tests/test-webapps/test-webapp-rfc2616/src/main/java/org/eclipse/jetty/tests/webapp/HttpMethodsServlet.java index f77c2de6514..942607bf8df 100644 --- a/tests/test-webapps/test-webapp-rfc2616/src/main/java/org/eclipse/jetty/tests/webapp/HttpMethodsServlet.java +++ b/tests/test-webapps/test-webapp-rfc2616/src/main/java/org/eclipse/jetty/tests/webapp/HttpMethodsServlet.java @@ -1,6 +1,6 @@ // // ======================================================================== -// Copyright (c) 1995-2018 Mort Bay Consulting Pty. Ltd. +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 From f49c2fb23ce3ca98a8cd159fb06716c149181670 Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Tue, 1 Jan 2019 11:55:24 +1000 Subject: [PATCH 231/931] update Copyright year on NOTICE file Signed-off-by: olivier lamy --- NOTICE.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/NOTICE.txt b/NOTICE.txt index 9ca92f1f704..28ee14ee3e1 100644 --- a/NOTICE.txt +++ b/NOTICE.txt @@ -1,6 +1,6 @@ ============================================================== Jetty Web Container - Copyright 1995-2018 Mort Bay Consulting Pty Ltd. + Copyright 1995-2019 Mort Bay Consulting Pty Ltd. ============================================================== The Jetty Web Container is Copyright Mort Bay Consulting Pty Ltd From b0f13d80c3d4d538b9ae21ff0ec1bfc408610819 Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Tue, 1 Jan 2019 12:14:48 +1000 Subject: [PATCH 232/931] fix bundle Copyright Signed-off-by: olivier lamy --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 2ea4b1713d5..b076bf9c3e1 100644 --- a/pom.xml +++ b/pom.xml @@ -637,7 +637,7 @@ ${jetty.url} Eclipse Jetty Project . - Copyright (c) 2008-2018 Mort Bay Consulting Pty. Ltd. + Copyright (c) 2008-2019 Mort Bay Consulting Pty. Ltd. <_provider-policy>]]> <_consumer-policy>]]> From dc194456056eb9ea10a4cca250e0c91802e6c8c0 Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Tue, 1 Jan 2019 12:37:24 +1000 Subject: [PATCH 233/931] saving some io during the build Signed-off-by: olivier lamy --- Jenkinsfile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Jenkinsfile b/Jenkinsfile index 5e014365334..6b4dda7f39c 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -2,6 +2,8 @@ pipeline { agent any + // save some io during the build + options { durabilityHint('PERFORMANCE_OPTIMIZED') } stages { stage("Parallel Stage") { parallel { From da3d69261cd23d2826db799ba45ce551dc73881e Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Fri, 4 Jan 2019 21:27:39 +0100 Subject: [PATCH 234/931] Fixes #3240 - ALPN support for Java 13. --- .../src/main/config/modules/alpn-impl/alpn-13.mod | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 jetty-alpn/jetty-alpn-server/src/main/config/modules/alpn-impl/alpn-13.mod diff --git a/jetty-alpn/jetty-alpn-server/src/main/config/modules/alpn-impl/alpn-13.mod b/jetty-alpn/jetty-alpn-server/src/main/config/modules/alpn-impl/alpn-13.mod new file mode 100644 index 00000000000..689601a4197 --- /dev/null +++ b/jetty-alpn/jetty-alpn-server/src/main/config/modules/alpn-impl/alpn-13.mod @@ -0,0 +1,4 @@ +DO NOT EDIT - See: https://www.eclipse.org/jetty/documentation/current/startup-modules.html + +[depend] +alpn-impl/alpn-9 From 0078d8aed6874defdc18f2dd5460a9b776ad9044 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Tue, 8 Jan 2019 15:45:54 -0600 Subject: [PATCH 235/931] Issue #3242 - Updating BrowserDebugTool to help troubleshoot issue Signed-off-by: Joakim Erdfelt --- .../server/browser/BrowserDebugTool.java | 21 +++++++++++++++---- .../server/browser/BrowserSocket.java | 6 ++++++ .../resources/browser-debug-tool/index.html | 4 ++-- .../resources/browser-debug-tool/websocket.js | 2 +- 4 files changed, 26 insertions(+), 7 deletions(-) diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/browser/BrowserDebugTool.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/browser/BrowserDebugTool.java index f1645badb96..5dfba99464a 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/browser/BrowserDebugTool.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/browser/BrowserDebugTool.java @@ -18,14 +18,22 @@ package org.eclipse.jetty.websocket.server.browser; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.net.MalformedURLException; +import java.net.URISyntaxException; +import java.nio.file.Path; import java.util.ArrayList; import java.util.List; import org.eclipse.jetty.server.Server; import org.eclipse.jetty.server.ServerConnector; import org.eclipse.jetty.server.handler.ResourceHandler; +import org.eclipse.jetty.toolchain.test.MavenTestingUtils; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; +import org.eclipse.jetty.util.resource.PathResource; +import org.eclipse.jetty.util.resource.Resource; import org.eclipse.jetty.websocket.api.extensions.ExtensionConfig; import org.eclipse.jetty.websocket.common.extensions.FrameCaptureExtension; import org.eclipse.jetty.websocket.server.WebSocketHandler; @@ -120,8 +128,7 @@ public class BrowserDebugTool implements WebSocketCreator return connector.getLocalPort(); } - public void prepare(int port) - { + public void prepare(int port) throws IOException, URISyntaxException { server = new Server(); connector = new ServerConnector(server); connector.setPort(port); @@ -150,16 +157,22 @@ public class BrowserDebugTool implements WebSocketCreator server.setHandler(wsHandler); - String resourceBase = "src/test/resources/browser-debug-tool"; + Resource staticResourceBase = findStaticResources(); ResourceHandler rHandler = new ResourceHandler(); rHandler.setDirectoriesListed(true); - rHandler.setResourceBase(resourceBase); + rHandler.setBaseResource(staticResourceBase); wsHandler.setHandler(rHandler); LOG.info("{} setup on port {}",this.getClass().getName(),port); } + private Resource findStaticResources() throws FileNotFoundException, URISyntaxException, MalformedURLException { + Path path = MavenTestingUtils.getTestResourcePathDir("browser-debug-tool"); + LOG.info("Static Resources: {}", path); + return new PathResource(path); + } + public void start() throws Exception { server.start(); diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/browser/BrowserSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/browser/BrowserSocket.java index 24828ac6724..a27d566cd80 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/browser/BrowserSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/browser/BrowserSocket.java @@ -39,6 +39,7 @@ import org.eclipse.jetty.websocket.api.annotations.OnWebSocketConnect; import org.eclipse.jetty.websocket.api.annotations.OnWebSocketError; import org.eclipse.jetty.websocket.api.annotations.OnWebSocketMessage; import org.eclipse.jetty.websocket.api.annotations.WebSocket; +import org.eclipse.jetty.websocket.common.WebSocketSession; @WebSocket public class BrowserSocket @@ -226,6 +227,11 @@ public class BrowserSocket writeMessage("Server time: %s",sdf.format(now.getTime())); break; } + case "dump": + { + ((WebSocketSession)session).dumpStdErr(); + break; + } default: { writeMessage("key[%s] val[%s]",key,val); diff --git a/jetty-websocket/websocket-server/src/test/resources/browser-debug-tool/index.html b/jetty-websocket/websocket-server/src/test/resources/browser-debug-tool/index.html index 4ffb6e5cc63..b7b638d3ba1 100644 --- a/jetty-websocket/websocket-server/src/test/resources/browser-debug-tool/index.html +++ b/jetty-websocket/websocket-server/src/test/resources/browser-debug-tool/index.html @@ -16,8 +16,8 @@ + - @@ -32,7 +32,7 @@ $("manythreads").onclick = function(event) {wstool.write("manythreads:20,25,60"); return false; } $("hello").onclick = function(event) {wstool.write("Hello"); return false; } $("there").onclick = function(event) {wstool.write("There"); return false; } - $("twain").onclick = function(event) {wstool.write("@twain.txt"); return false; } + $("dump").onclick = function(event) {wstool.write("dump:"); return false; } $("json").onclick = function(event) {wstool.write("[{\"channel\":\"/meta/subscribe\",\"subscription\":\"/chat/demo\",\"id\":\"2\",\"clientId\":\"81dwnxwbgs0h0bq8968b0a0gyl\",\"timestamp\":\"Thu," + " 12 Sep 2013 19:42:30 GMT\"},{\"channel\":\"/meta/subscribe\",\"subscription\":\"/members/demo\",\"id\":\"3\",\"clientId\":\"81dwnxwbgs0h0bq8968b0a0gyl\",\"timestamp\":\"Thu," + " 12 Sep 2013 19:42:30 GMT\"},{\"channel\":\"/chat/demo\",\"data\":{\"user\":\"ch\",\"membership\":\"join\",\"chat\":\"ch" diff --git a/jetty-websocket/websocket-server/src/test/resources/browser-debug-tool/websocket.js b/jetty-websocket/websocket-server/src/test/resources/browser-debug-tool/websocket.js index 03f2896d4cc..66a1ec0ee52 100644 --- a/jetty-websocket/websocket-server/src/test/resources/browser-debug-tool/websocket.js +++ b/jetty-websocket/websocket-server/src/test/resources/browser-debug-tool/websocket.js @@ -84,8 +84,8 @@ var wstool = { $('manythreads').disabled = !enabled; $('hello').disabled = !enabled; $('there').disabled = !enabled; + $('dump').disabled = !enabled; $('json').disabled = !enabled; - $('twain').disabled = !enabled; $('send10k').disabled = !enabled; $('send100k').disabled = !enabled; $('send1000k').disabled = !enabled; From 87c82ae64459002179dd00135bb85d0059529894 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Tue, 8 Jan 2019 15:47:17 -0600 Subject: [PATCH 236/931] Issue #3242 - Allow Dumpable to control how self is represented + Do not rely on Object.toString() for representing self (aka:this) in the dump output. Using Object.toString() can result in lots of duplicated information in the dump (and super long lines) Signed-off-by: Joakim Erdfelt --- .../org/eclipse/jetty/util/component/Dumpable.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/component/Dumpable.java b/jetty-util/src/main/java/org/eclipse/jetty/util/component/Dumpable.java index 748c678167f..37efb48a2e9 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/component/Dumpable.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/component/Dumpable.java @@ -70,6 +70,15 @@ public interface Dumpable return b.toString(); } + /** + * The description of this/self found in the dump. + * Allows for alternative representation of Object other then .toString() + * where the long form output of toString() is represented in a cleaner way + * within the dump infrastructure. + * + * @return the representation of self + */ + default String dumpSelf() { return toString(); } /** * Dump just an Object (but not it's contained items) to an Appendable. @@ -90,6 +99,8 @@ public interface Dumpable s = String.format("%s@%x[size=%d]",o.getClass().getComponentType(),o.hashCode(), Array.getLength(o)); else if (o instanceof Map) s = String.format("%s@%x{size=%d}",o.getClass().getName(),o.hashCode(),((Map)o).size()); + else if (o instanceof Dumpable) + s = ((Dumpable)o).dumpSelf().replace("\r\n","|").replace("\n","|"); else s = String.valueOf(o).replace("\r\n","|").replace("\n","|"); From 689fab4979c515900c2b0e2c226aa7797c8b46cb Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Tue, 8 Jan 2019 15:47:49 -0600 Subject: [PATCH 237/931] Issue #3242 - Cleaning up WebSocket dump Signed-off-by: Joakim Erdfelt --- .../websocket/common/WebSocketSession.java | 13 +++++++---- .../common/extensions/AbstractExtension.java | 23 +------------------ .../common/extensions/ExtensionStack.java | 17 +++----------- .../io/AbstractWebSocketConnection.java | 16 +++++++------ 4 files changed, 21 insertions(+), 48 deletions(-) diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java index d3e339a3950..36ffdf9f65d 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java @@ -37,6 +37,7 @@ import org.eclipse.jetty.util.Callback; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.component.ContainerLifeCycle; +import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.component.DumpableCollection; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -277,11 +278,13 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem } @Override - public void dump(Appendable out, String indent) throws IOException - { - dumpObjects(out,indent, - DumpableCollection.from("incoming", incomingHandler), - DumpableCollection.from("outgoing", outgoingHandler)); + public String dumpSelf() { + return String.format("%s@%x[behavior=%s,batchMode=%s,idleTimeout=%,d,requestURI=%s]", + this.getClass().getSimpleName(), hashCode(), + getPolicy().getBehavior(), + getBatchMode(), + getIdleTimeout(), + getRequestURI()); } @Override diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtension.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtension.java index 013cc9aebdf..0013ceaaa40 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtension.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtension.java @@ -39,7 +39,7 @@ import org.eclipse.jetty.websocket.common.LogicalConnection; import org.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope; @ManagedObject("Abstract Extension") -public abstract class AbstractExtension extends AbstractLifeCycle implements Dumpable, Extension +public abstract class AbstractExtension extends AbstractLifeCycle implements Extension { private final Logger log; private WebSocketPolicy policy; @@ -54,27 +54,6 @@ public abstract class AbstractExtension extends AbstractLifeCycle implements Dum log = Log.getLogger(this.getClass()); } - @Override - public String dump() - { - return Dumpable.dump(this); - } - - @Override - public void dump(Appendable out, String indent) throws IOException - { - // incoming - dumpWithHeading(out, indent, "incoming", this.nextIncoming); - dumpWithHeading(out, indent, "outgoing", this.nextOutgoing); - } - - protected void dumpWithHeading(Appendable out, String indent, String heading, Object bean) throws IOException - { - out.append(indent).append(" +- "); - out.append(heading).append(" : "); - out.append(bean.toString()); - } - @Deprecated public void init(WebSocketContainerScope container) { diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStack.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStack.java index d720869555b..083db32cc6f 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStack.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStack.java @@ -29,6 +29,7 @@ import org.eclipse.jetty.util.IteratingCallback; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.component.ContainerLifeCycle; +import org.eclipse.jetty.util.component.DumpableCollection; import org.eclipse.jetty.util.component.LifeCycle; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -108,20 +109,8 @@ public class ExtensionStack extends ContainerLifeCycle implements IncomingFrames } @Override - public void dump(Appendable out, String indent) throws IOException - { - super.dump(out,indent); - - IncomingFrames websocket = getLastIncoming(); - OutgoingFrames network = getLastOutgoing(); - - out.append(indent).append(" +- Stack").append(System.lineSeparator()); - out.append(indent).append(" +- Network : ").append(network.toString()).append(System.lineSeparator()); - for (Extension ext : extensions) - { - out.append(indent).append(" +- Extension: ").append(ext.toString()).append(System.lineSeparator()); - } - out.append(indent).append(" +- Websocket: ").append(websocket.toString()).append(System.lineSeparator()); + public String dumpSelf() { + return String.format("ExtensionStack%x [size=%d]", hashCode(), extensions.size()); } @ManagedAttribute(name = "Extension List", readonly = true) diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java index eb4efef26ab..0eff7ed1580 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java @@ -30,6 +30,7 @@ import java.util.concurrent.atomic.AtomicLong; import org.eclipse.jetty.io.AbstractConnection; import org.eclipse.jetty.io.ByteBufferPool; +import org.eclipse.jetty.io.ChannelEndPoint; import org.eclipse.jetty.io.Connection; import org.eclipse.jetty.io.EndPoint; import org.eclipse.jetty.util.BufferUtil; @@ -631,15 +632,16 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp } @Override - public String dump() - { - return Dumpable.dump(this); + public String dumpSelf() { + return String.format("%s@%x", this.getClass().getSimpleName(), hashCode()); } - @Override - public void dump(Appendable out, String indent) throws IOException - { - out.append(toString()).append(System.lineSeparator()); + public void dump(Appendable out, String indent) throws IOException { + Object endpRef = toConnectionString(); + EndPoint endp = getEndPoint(); + if(endp instanceof ChannelEndPoint) + endpRef = ((ChannelEndPoint) endp).toEndPointString(); + Dumpable.dumpObjects(out, indent, this, endpRef, ioState, flusher, generator, parser); } @Override From aad5e9733638c7e83c34e62f1f2d4d1e77a17f60 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Tue, 8 Jan 2019 15:48:22 -0600 Subject: [PATCH 238/931] Issue #3242 - Relying on EndPoint.toString() for ProxyEndPoint.toString() Signed-off-by: Joakim Erdfelt --- .../org/eclipse/jetty/server/ProxyConnectionFactory.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ProxyConnectionFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ProxyConnectionFactory.java index 5436006635f..9b3aef0d17b 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ProxyConnectionFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ProxyConnectionFactory.java @@ -620,6 +620,11 @@ public class ProxyConnectionFactory extends AbstractConnectionFactory return _remote; } + @Override + public String toString() { + return _endp.toString(); + } + @Override public boolean isOpen() { From ce3defa2f5cdc588b122fba18e34fede93803da7 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Thu, 10 Jan 2019 09:07:02 +1100 Subject: [PATCH 239/931] fixed debug Signed-off-by: Greg Wilkins --- .../main/java/org/eclipse/jetty/proxy/AbstractProxyServlet.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AbstractProxyServlet.java b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AbstractProxyServlet.java index ad44afff3e7..5322c215657 100644 --- a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AbstractProxyServlet.java +++ b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AbstractProxyServlet.java @@ -549,7 +549,7 @@ public abstract class AbstractProxyServlet extends HttpServlet } builder.append(System.lineSeparator()); - _log.debug("{} proxying to upstream:{}{}{}{}", + _log.debug("{} proxying to upstream:{}{}{}{}{}", getRequestId(clientRequest), System.lineSeparator(), builder, From 69dc0059d18251cacdad1b360baf6ffca3dbf5e4 Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Thu, 10 Jan 2019 22:12:12 +1300 Subject: [PATCH 240/931] use jackson-databind 2.9.8 (#3252) Signed-off-by: olivier lamy --- jetty-maven-plugin/src/it/it-parent-pom/pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/jetty-maven-plugin/src/it/it-parent-pom/pom.xml b/jetty-maven-plugin/src/it/it-parent-pom/pom.xml index 2ad7f139b01..ebae8653539 100644 --- a/jetty-maven-plugin/src/it/it-parent-pom/pom.xml +++ b/jetty-maven-plugin/src/it/it-parent-pom/pom.xml @@ -39,7 +39,7 @@ com.fasterxml.jackson.core jackson-databind - 2.9.7 + 2.9.8 org.slf4j @@ -144,4 +144,4 @@ - \ No newline at end of file + From 478e5ac5938627bb643599640a67ddd2dc19460b Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Fri, 11 Jan 2019 10:16:46 -0600 Subject: [PATCH 241/931] Issue #3242 - Post-review cleanup of WebSocket dump Signed-off-by: Joakim Erdfelt --- .../org/eclipse/jetty/websocket/common/WebSocketSession.java | 2 +- .../jetty/websocket/common/extensions/ExtensionStack.java | 2 +- .../org/eclipse/jetty/websocket/common/io/FrameFlusher.java | 5 ++--- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java index 36ffdf9f65d..928dc0664c1 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java @@ -279,7 +279,7 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem @Override public String dumpSelf() { - return String.format("%s@%x[behavior=%s,batchMode=%s,idleTimeout=%,d,requestURI=%s]", + return String.format("%s@%x[behavior=%s,batchMode=%s,idleTimeout=%d,requestURI=%s]", this.getClass().getSimpleName(), hashCode(), getPolicy().getBehavior(), getBatchMode(), diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStack.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStack.java index 083db32cc6f..324dfbd2c20 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStack.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStack.java @@ -110,7 +110,7 @@ public class ExtensionStack extends ContainerLifeCycle implements IncomingFrames @Override public String dumpSelf() { - return String.format("ExtensionStack%x [size=%d]", hashCode(), extensions.size()); + return String.format("%s@%x[size=%d,queueSize=%d]", getClass().getSimpleName(), hashCode(), extensions.size(), getQueueSize()); } @ManagedAttribute(name = "Extension List", readonly = true) diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FrameFlusher.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FrameFlusher.java index 65cbadf5cdd..8e19d3bb123 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FrameFlusher.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FrameFlusher.java @@ -337,9 +337,8 @@ public class FrameFlusher extends IteratingCallback ByteBuffer agg = aggregate; if (agg != null) aggSize = agg.position(); - return String.format("%s@%x[queueSize=%d,aggregateSize=%d,terminated=%s]", - getClass().getSimpleName(), - hashCode(), + return String.format("%s[queueSize=%d,aggregateSize=%d,terminated=%s]", + super.toString(), getQueueSize(), aggSize, terminated); From e9143725b0d7803ccf12eca9ea2a5ed3661b697c Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Fri, 11 Jan 2019 10:23:51 -0600 Subject: [PATCH 242/931] Issue #3242 - Post-review cleanup of ProxyEndPoint Signed-off-by: Joakim Erdfelt --- .../org/eclipse/jetty/server/ProxyConnectionFactory.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ProxyConnectionFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ProxyConnectionFactory.java index 9b3aef0d17b..49d1b3542b0 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ProxyConnectionFactory.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ProxyConnectionFactory.java @@ -622,7 +622,12 @@ public class ProxyConnectionFactory extends AbstractConnectionFactory @Override public String toString() { - return _endp.toString(); + return String.format("%s@%x[remote=%s,local=%s,endpoint=%s]", + getClass().getSimpleName(), + hashCode(), + _remote, + _local, + _endp); } @Override From 1b7ae00be3fd7db2a5906250718c09300c06ec1b Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Fri, 11 Jan 2019 11:27:10 -0600 Subject: [PATCH 243/931] Issue #3242 - Post-review cleanup of AbstractWebSocketConnection dump of EndPoint Signed-off-by: Joakim Erdfelt --- .../websocket/common/io/AbstractWebSocketConnection.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java index 0eff7ed1580..f9ff4174fa7 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java @@ -29,8 +29,8 @@ import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicLong; import org.eclipse.jetty.io.AbstractConnection; +import org.eclipse.jetty.io.AbstractEndPoint; import org.eclipse.jetty.io.ByteBufferPool; -import org.eclipse.jetty.io.ChannelEndPoint; import org.eclipse.jetty.io.Connection; import org.eclipse.jetty.io.EndPoint; import org.eclipse.jetty.util.BufferUtil; @@ -637,10 +637,10 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp } public void dump(Appendable out, String indent) throws IOException { - Object endpRef = toConnectionString(); EndPoint endp = getEndPoint(); - if(endp instanceof ChannelEndPoint) - endpRef = ((ChannelEndPoint) endp).toEndPointString(); + Object endpRef = endp.toString(); + if(endp instanceof AbstractEndPoint) + endpRef = ((AbstractEndPoint) endp).toEndPointString(); Dumpable.dumpObjects(out, indent, this, endpRef, ioState, flusher, generator, parser); } From 9f3f3b78aec8ea8f9b296d598e79a674e28a0f52 Mon Sep 17 00:00:00 2001 From: Jan Bartel Date: Tue, 15 Jan 2019 14:38:16 +1100 Subject: [PATCH 244/931] Issue #3250 Ease osgi debugging (#3251) Signed-off-by: Jan Bartel --- .../test/TestJettyOSGiBootContextAsService.java | 12 +++--------- .../jetty/osgi/test/TestJettyOSGiBootHTTP2.java | 15 ++++++++++----- .../test/TestJettyOSGiBootHTTP2Conscrypt.java | 7 ++++--- .../osgi/test/TestJettyOSGiBootHTTP2JDK9.java | 5 +++-- .../test/TestJettyOSGiBootWebAppAsService.java | 9 ++++++--- .../test/TestJettyOSGiBootWithAnnotations.java | 8 +++++--- .../test/TestJettyOSGiBootWithJavaxWebSocket.java | 7 +++---- .../jetty/osgi/test/TestJettyOSGiBootWithJsp.java | 6 +++--- .../osgi/test/TestJettyOSGiBootWithWebSocket.java | 9 ++++----- .../org/eclipse/jetty/osgi/test/TestOSGiUtil.java | 5 +++-- 10 files changed, 44 insertions(+), 39 deletions(-) diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootContextAsService.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootContextAsService.java index 09a5ef097d7..79fcf2cf631 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootContextAsService.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootContextAsService.java @@ -32,7 +32,6 @@ import org.eclipse.jetty.client.HttpClient; import org.eclipse.jetty.client.api.ContentResponse; import org.eclipse.jetty.http.HttpStatus; import org.eclipse.jetty.server.handler.ContextHandler; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.ops4j.pax.exam.Configuration; @@ -81,19 +80,14 @@ public class TestJettyOSGiBootContextAsService - - @Ignore - public void assertAllBundlesActiveOrResolved() - { - TestOSGiUtil.assertAllBundlesActiveOrResolved(bundleContext); - } - - /** */ @Test public void testContextHandlerAsOSGiService() throws Exception { + if (Boolean.getBoolean(TestOSGiUtil.BUNDLE_DEBUG)) + TestOSGiUtil.assertAllBundlesActiveOrResolved(bundleContext); + // now test the context HttpClient client = new HttpClient(); try diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2.java index 6a24a8aa9cc..1dc807119bf 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2.java @@ -41,7 +41,6 @@ import org.eclipse.jetty.http2.client.HTTP2Client; import org.eclipse.jetty.http2.client.http.HttpClientTransportOverHTTP2; import org.eclipse.jetty.util.ssl.SslContextFactory; import org.eclipse.jetty.util.thread.QueuedThreadPool; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.ops4j.pax.exam.Configuration; @@ -117,8 +116,7 @@ public class TestJettyOSGiBootHTTP2 return res; } - @Ignore - @Test + public void checkALPNBootOnBootstrapClasspath() throws Exception { Class alpn = Thread.currentThread().getContextClassLoader().loadClass("org.eclipse.jetty.alpn.ALPN"); @@ -126,8 +124,7 @@ public class TestJettyOSGiBootHTTP2 assertNull(alpn.getClassLoader()); } - @Ignore - @Test + public void assertAllBundlesActiveOrResolved() throws Exception { TestOSGiUtil.debugBundles(bundleContext); @@ -145,6 +142,14 @@ public class TestJettyOSGiBootHTTP2 @Test public void testHTTP2() throws Exception { + + if (Boolean.getBoolean(TestOSGiUtil.BUNDLE_DEBUG)) + { + checkALPNBootOnBootstrapClasspath(); + assertAllBundlesActiveOrResolved(); + } + + HttpClient httpClient = null; HTTP2Client http2Client = null; try diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2Conscrypt.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2Conscrypt.java index 6a957b87d3e..02f31dfd7f8 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2Conscrypt.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2Conscrypt.java @@ -40,7 +40,6 @@ import org.eclipse.jetty.http2.client.HTTP2Client; import org.eclipse.jetty.http2.client.http.HttpClientTransportOverHTTP2; import org.eclipse.jetty.util.ssl.SslContextFactory; import org.eclipse.jetty.util.thread.QueuedThreadPool; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.ops4j.pax.exam.Configuration; @@ -117,8 +116,7 @@ public class TestJettyOSGiBootHTTP2Conscrypt } - @Ignore - @Test + public void assertAllBundlesActiveOrResolved() throws Exception { TestOSGiUtil.debugBundles(bundleContext); @@ -134,6 +132,9 @@ public class TestJettyOSGiBootHTTP2Conscrypt @Test public void testHTTP2() throws Exception { + if (Boolean.getBoolean(TestOSGiUtil.BUNDLE_DEBUG)) + assertAllBundlesActiveOrResolved(); + HTTP2Client client = new HTTP2Client(); try { diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2JDK9.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2JDK9.java index f002b962f46..ade2e193404 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2JDK9.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2JDK9.java @@ -39,7 +39,6 @@ import org.eclipse.jetty.http2.client.HTTP2Client; import org.eclipse.jetty.http2.client.http.HttpClientTransportOverHTTP2; import org.eclipse.jetty.util.ssl.SslContextFactory; import org.eclipse.jetty.util.thread.QueuedThreadPool; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.ops4j.pax.exam.Configuration; @@ -108,7 +107,6 @@ public class TestJettyOSGiBootHTTP2JDK9 } - @Ignore public void assertAllBundlesActiveOrResolved() throws Exception { TestOSGiUtil.debugBundles(bundleContext); @@ -126,6 +124,9 @@ public class TestJettyOSGiBootHTTP2JDK9 @Test public void testHTTP2() throws Exception { + if (Boolean.getBoolean(TestOSGiUtil.BUNDLE_DEBUG)) + assertAllBundlesActiveOrResolved(); + HttpClient httpClient = null; HTTP2Client http2Client = null; try diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWebAppAsService.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWebAppAsService.java index 64021341faf..2f965ed130a 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWebAppAsService.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWebAppAsService.java @@ -33,7 +33,6 @@ import org.eclipse.jetty.client.HttpClient; import org.eclipse.jetty.client.api.ContentResponse; import org.eclipse.jetty.http.HttpStatus; import org.eclipse.jetty.webapp.WebAppContext; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.ops4j.pax.exam.Configuration; @@ -97,8 +96,7 @@ public class TestJettyOSGiBootWebAppAsService return res; } - @Ignore - @Test + public void assertAllBundlesActiveOrResolved() { TestOSGiUtil.debugBundles(bundleContext); @@ -110,6 +108,11 @@ public class TestJettyOSGiBootWebAppAsService @Test public void testBundle() throws Exception { + + if (Boolean.getBoolean(TestOSGiUtil.BUNDLE_DEBUG)) + assertAllBundlesActiveOrResolved(); + + // now test getting a static file HttpClient client = new HttpClient(); try diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithAnnotations.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithAnnotations.java index c80370c4b73..498161830a0 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithAnnotations.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithAnnotations.java @@ -33,7 +33,6 @@ import org.eclipse.jetty.client.HttpClient; import org.eclipse.jetty.client.api.ContentResponse; import org.eclipse.jetty.client.api.Request; import org.eclipse.jetty.http.HttpStatus; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.ops4j.pax.exam.Configuration; @@ -95,10 +94,9 @@ public class TestJettyOSGiBootWithAnnotations } - @Ignore - @Test public void assertAllBundlesActiveOrResolved() { + TestOSGiUtil.debugBundles(bundleContext); TestOSGiUtil.assertAllBundlesActiveOrResolved(bundleContext); } @@ -107,6 +105,10 @@ public class TestJettyOSGiBootWithAnnotations @Test public void testIndex() throws Exception { + + if (Boolean.getBoolean(TestOSGiUtil.BUNDLE_DEBUG)) + assertAllBundlesActiveOrResolved(); + HttpClient client = new HttpClient(); try { diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithJavaxWebSocket.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithJavaxWebSocket.java index 601719c570b..a4fa70ef546 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithJavaxWebSocket.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithJavaxWebSocket.java @@ -35,7 +35,6 @@ import javax.websocket.RemoteEndpoint; import javax.websocket.Session; import javax.websocket.WebSocketContainer; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.ops4j.pax.exam.Configuration; @@ -89,8 +88,6 @@ public class TestJettyOSGiBootWithJavaxWebSocket public static List - - org.apache.felix - maven-bundle-plugin - - - true - - org.apache.maven.plugins - maven-jar-plugin + maven-invoker-plugin + + + integration-test + integration-test + + install + integration-test + verify + + + - - ${project.build.outputDirectory}/META-INF/MANIFEST.MF - + ${java.home} + + ${java.home} + + ${it.debug} + src/it + 600 + ${project.build.directory}/it + ${project.build.directory}/local-repo + src/it/settings.xml + ${skipTests} + + ${maven.dependency.plugin.version} + + + clean + @@ -63,6 +81,28 @@ true + + org.apache.felix + maven-bundle-plugin + + + true + + ${project.build.directory}/NON_USED_MANIFEST + + + + org.apache.maven.plugins + maven-jar-plugin + + + src/main/resources/MANIFEST.MF + + org.eclipse.jetty.runner.Runner + + + + diff --git a/jetty-runner/src/it/settings.xml b/jetty-runner/src/it/settings.xml new file mode 100644 index 00000000000..d64bdb89034 --- /dev/null +++ b/jetty-runner/src/it/settings.xml @@ -0,0 +1,36 @@ + + + + + + it-repo + + true + + + + local.central + @localRepositoryUrl@ + + true + + + true + + + + + + local.central + @localRepositoryUrl@ + + true + + + true + + + + + + diff --git a/jetty-runner/src/it/test-jar-manifest/invoker.properties b/jetty-runner/src/it/test-jar-manifest/invoker.properties new file mode 100644 index 00000000000..86f8ef2b751 --- /dev/null +++ b/jetty-runner/src/it/test-jar-manifest/invoker.properties @@ -0,0 +1 @@ +invoker.goals = generate-resources diff --git a/jetty-runner/src/it/test-jar-manifest/pom.xml b/jetty-runner/src/it/test-jar-manifest/pom.xml new file mode 100644 index 00000000000..b5fbdd16132 --- /dev/null +++ b/jetty-runner/src/it/test-jar-manifest/pom.xml @@ -0,0 +1,63 @@ + + + + 4.0.0 + + + + org.eclipse.jetty.its + jetty-runner-it-test + 1.0.0-SNAPSHOT + war + + + + UTF-8 + + + + + + org.eclipse.jetty + jetty-runner + @project.version@ + + + + + + + + org.apache.maven.plugins + maven-dependency-plugin + @maven.dependency.plugin.version@ + + + copy-jetty-runner + generate-resources + + copy + + + + + org.eclipse.jetty + jetty-runner + @project.version@ + jar + false + ${project.build.directory}/ + jetty-runner.jar + + + false + true + + + + + + + + diff --git a/jetty-runner/src/it/test-jar-manifest/postbuild.groovy b/jetty-runner/src/it/test-jar-manifest/postbuild.groovy new file mode 100644 index 00000000000..da1a6d99e3c --- /dev/null +++ b/jetty-runner/src/it/test-jar-manifest/postbuild.groovy @@ -0,0 +1,10 @@ +import java.util.jar.* + +File artifact = new File( basedir, "target/jetty-runner.jar" ) +assert artifact.exists() + +JarFile jar = new JarFile( artifact ); + +Attributes manifest = jar.getManifest().getMainAttributes(); + +assert manifest.getValue( new Attributes.Name( "Main-Class" ) ).equals( "org.eclipse.jetty.runner.Runner" ) diff --git a/jetty-runner/src/main/resources/MANIFEST.MF b/jetty-runner/src/main/resources/MANIFEST.MF new file mode 100644 index 00000000000..fa816753df9 --- /dev/null +++ b/jetty-runner/src/main/resources/MANIFEST.MF @@ -0,0 +1 @@ +Comment: Jetty Runner From 1df8dfcc9149cd67b104646bfc4fc8b1939a7993 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ortwin=20Gl=C3=BCck?= Date: Fri, 18 Jan 2019 14:27:31 +0100 Subject: [PATCH 249/931] make JAASPrincipal thread-safe MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It's immutable anyway, so declare its only instance var final. Signed-off-by: Ortwin Glück --- .../src/main/java/org/eclipse/jetty/jaas/JAASPrincipal.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASPrincipal.java b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASPrincipal.java index 027c239b498..0566764292b 100644 --- a/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASPrincipal.java +++ b/jetty-jaas/src/main/java/org/eclipse/jetty/jaas/JAASPrincipal.java @@ -30,7 +30,7 @@ public class JAASPrincipal implements Principal, Serializable { private static final long serialVersionUID = -5538962177019315479L; - private String _name = null; + private final String _name; public JAASPrincipal(String userName) { From 60158edd2bd57e15e6cdad421f5f2dc74043a9fb Mon Sep 17 00:00:00 2001 From: Jan Bartel Date: Tue, 22 Jan 2019 12:41:28 +1100 Subject: [PATCH 250/931] Issue #3280 Remove unused build.properties from osgi (#3281) Signed-off-by: Jan Bartel --- jetty-osgi/jetty-osgi-boot-jsp/build.properties | 5 ----- jetty-osgi/jetty-osgi-boot-warurl/build.properties | 5 ----- jetty-osgi/jetty-osgi-boot/build.properties | 8 -------- jetty-osgi/jetty-osgi-httpservice/build.properties | 4 ---- 4 files changed, 22 deletions(-) delete mode 100644 jetty-osgi/jetty-osgi-boot-jsp/build.properties delete mode 100644 jetty-osgi/jetty-osgi-boot-warurl/build.properties delete mode 100644 jetty-osgi/jetty-osgi-boot/build.properties delete mode 100644 jetty-osgi/jetty-osgi-httpservice/build.properties diff --git a/jetty-osgi/jetty-osgi-boot-jsp/build.properties b/jetty-osgi/jetty-osgi-boot-jsp/build.properties deleted file mode 100644 index 6d10c98886e..00000000000 --- a/jetty-osgi/jetty-osgi-boot-jsp/build.properties +++ /dev/null @@ -1,5 +0,0 @@ -source.. = src/main/java/ -output.. = target/classes/ -bin.includes = META-INF/,\ - . -src.includes = META-INF/ diff --git a/jetty-osgi/jetty-osgi-boot-warurl/build.properties b/jetty-osgi/jetty-osgi-boot-warurl/build.properties deleted file mode 100644 index 6d10c98886e..00000000000 --- a/jetty-osgi/jetty-osgi-boot-warurl/build.properties +++ /dev/null @@ -1,5 +0,0 @@ -source.. = src/main/java/ -output.. = target/classes/ -bin.includes = META-INF/,\ - . -src.includes = META-INF/ diff --git a/jetty-osgi/jetty-osgi-boot/build.properties b/jetty-osgi/jetty-osgi-boot/build.properties deleted file mode 100644 index ba1366d0903..00000000000 --- a/jetty-osgi/jetty-osgi-boot/build.properties +++ /dev/null @@ -1,8 +0,0 @@ -source.. = src/main/java/ -output.. = target/classes/ -bin.includes = META-INF/,\ - .,\ - jettyhome/ -bin.excludes = jettyhome/logs/*.log,\ - jettyhome/lib/* -src.includes = jettyhome/ diff --git a/jetty-osgi/jetty-osgi-httpservice/build.properties b/jetty-osgi/jetty-osgi-httpservice/build.properties deleted file mode 100644 index 5fc538bc83f..00000000000 --- a/jetty-osgi/jetty-osgi-httpservice/build.properties +++ /dev/null @@ -1,4 +0,0 @@ -source.. = src/main/java/ -output.. = target/classes/ -bin.includes = META-INF/,\ - . From e4d78608a70448fead95bf58057d28590204de47 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Wed, 23 Jan 2019 17:31:41 +0100 Subject: [PATCH 251/931] Issue #3049 - Warn on common SslContextFactory problematic configurations. Made default endpointIdentificationAlgorithm=HTTPS to avoid warnings when SslContextFactory is used on a server. Signed-off-by: Simone Bordet --- jetty-server/src/main/config/etc/jetty-ssl-context.xml | 2 +- .../main/java/org/eclipse/jetty/util/ssl/SslContextFactory.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/jetty-server/src/main/config/etc/jetty-ssl-context.xml b/jetty-server/src/main/config/etc/jetty-ssl-context.xml index 22563921044..ed8ec7db00a 100644 --- a/jetty-server/src/main/config/etc/jetty-ssl-context.xml +++ b/jetty-server/src/main/config/etc/jetty-ssl-context.xml @@ -21,7 +21,7 @@ - + diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslContextFactory.java b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslContextFactory.java index 2eec785ad99..fde565083f1 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslContextFactory.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/ssl/SslContextFactory.java @@ -188,7 +188,7 @@ public class SslContextFactory extends AbstractLifeCycle implements Dumpable private int _sslSessionCacheSize = -1; private int _sslSessionTimeout = -1; private SSLContext _setContext; - private String _endpointIdentificationAlgorithm = null; + private String _endpointIdentificationAlgorithm = "HTTPS"; private boolean _trustAll; private boolean _renegotiationAllowed = true; private int _renegotiationLimit = 5; From 826c27a2b2b88624f289b0bed1cdc98317b7c31b Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Thu, 24 Jan 2019 07:29:49 +1000 Subject: [PATCH 252/931] - move duplicate configuration to parent pom (#3265) - upgrade invoker plugin version Signed-off-by: olivier lamy --- jetty-jspc-maven-plugin/pom.xml | 11 ----------- jetty-maven-plugin/pom.xml | 15 --------------- jetty-runner/pom.xml | 12 ------------ pom.xml | 19 ++++++++++++++++++- 4 files changed, 18 insertions(+), 39 deletions(-) diff --git a/jetty-jspc-maven-plugin/pom.xml b/jetty-jspc-maven-plugin/pom.xml index e95566fddf4..be146fa4af9 100644 --- a/jetty-jspc-maven-plugin/pom.xml +++ b/jetty-jspc-maven-plugin/pom.xml @@ -10,7 +10,6 @@ Jetty :: Jetty JSPC Maven Plugin ${project.groupId}.jspc.plugin - false @@ -56,20 +55,10 @@
- ${it.debug} true - 60 - src/it - ${project.build.directory}/it - - */pom.xml - - ${project.build.directory}/local-repo - src/it/settings.xml ${maven.surefire.version} - ${skipTests} clean diff --git a/jetty-maven-plugin/pom.xml b/jetty-maven-plugin/pom.xml index 9635cf2df76..41b0ac4e32a 100644 --- a/jetty-maven-plugin/pom.xml +++ b/jetty-maven-plugin/pom.xml @@ -11,7 +11,6 @@ Jetty maven plugins ${project.groupId}.maven.plugin - false FREEBEER @@ -62,29 +61,15 @@ - ${java.home} - - ${java.home} - - ${it.debug} true - src/it - 600 - ${project.build.directory}/it - - */pom.xml - it-parent-pom/pom.xml - ${project.build.directory}/local-repo - src/it/settings.xml ${jetty.stopKey} ${jetty.stopPort} ${maven.surefire.version} - ${skipTests} clean diff --git a/jetty-runner/pom.xml b/jetty-runner/pom.xml index f1e76be68dd..1238a0043b7 100644 --- a/jetty-runner/pom.xml +++ b/jetty-runner/pom.xml @@ -11,7 +11,6 @@ target/distribution ${project.groupId}.runner - false @@ -51,17 +50,6 @@ - ${java.home} - - ${java.home} - - ${it.debug} - src/it - 600 - ${project.build.directory}/it - ${project.build.directory}/local-repo - src/it/settings.xml - ${skipTests} ${maven.dependency.plugin.version} diff --git a/pom.xml b/pom.xml index 29e7d0c597d..c26bcf0d602 100644 --- a/pom.xml +++ b/pom.xml @@ -52,6 +52,7 @@ 3.5.2 + false 5.2 2.1.1.RELEASE 1.0 @@ -478,7 +479,23 @@ org.apache.maven.plugins maven-invoker-plugin - 3.1.0 + 3.2.0 + + ${it.debug} + ${java.home} + + ${java.home} + + src/it + 300 + ${project.build.directory}/it + ${project.build.directory}/local-repo + src/it/settings.xml + ${skipTests} + + */pom.xml + + org.apache.maven.plugins From 34b2678e6d2b164088dcec0ef9e66f1148a8a527 Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Thu, 24 Jan 2019 14:34:41 +1000 Subject: [PATCH 253/931] issue #3254 add jsp test need to remove cdi-api and exclude it fron upperBound rule (#3268) Signed-off-by: olivier lamy --- jetty-maven-plugin/pom.xml | 5 - .../it/jetty-run-mojo-jsp/invoker.properties | 1 + .../src/it/jetty-run-mojo-jsp/pom.xml | 105 ++++++++++++++++++ .../it/jetty-run-mojo-jsp/postbuild.groovy | 22 ++++ .../jetty-run-mojo-jsp/src/config/jetty.xml | 40 +++++++ .../src/main/java/com/acme/Counter.java | 41 +++++++ .../src/main/webapp/WEB-INF/web.xml | 7 ++ .../src/main/webapp/jsp/bean1.jsp | 13 +++ .../jetty/maven/plugin/it/TestGetContent.java | 8 +- pom.xml | 6 +- 10 files changed, 241 insertions(+), 7 deletions(-) create mode 100644 jetty-maven-plugin/src/it/jetty-run-mojo-jsp/invoker.properties create mode 100644 jetty-maven-plugin/src/it/jetty-run-mojo-jsp/pom.xml create mode 100644 jetty-maven-plugin/src/it/jetty-run-mojo-jsp/postbuild.groovy create mode 100644 jetty-maven-plugin/src/it/jetty-run-mojo-jsp/src/config/jetty.xml create mode 100644 jetty-maven-plugin/src/it/jetty-run-mojo-jsp/src/main/java/com/acme/Counter.java create mode 100644 jetty-maven-plugin/src/it/jetty-run-mojo-jsp/src/main/webapp/WEB-INF/web.xml create mode 100644 jetty-maven-plugin/src/it/jetty-run-mojo-jsp/src/main/webapp/jsp/bean1.jsp diff --git a/jetty-maven-plugin/pom.xml b/jetty-maven-plugin/pom.xml index 41b0ac4e32a..09c9de5480e 100644 --- a/jetty-maven-plugin/pom.xml +++ b/jetty-maven-plugin/pom.xml @@ -129,11 +129,6 @@ maven-artifact-transfer 0.9.1 - - javax.enterprise - cdi-api - 1.2 - org.eclipse.jetty jetty-util diff --git a/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/invoker.properties b/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/invoker.properties new file mode 100644 index 00000000000..e0222d4d54e --- /dev/null +++ b/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/invoker.properties @@ -0,0 +1 @@ +invoker.goals = test \ No newline at end of file diff --git a/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/pom.xml b/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/pom.xml new file mode 100644 index 00000000000..932bac3b7fb --- /dev/null +++ b/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/pom.xml @@ -0,0 +1,105 @@ + + + 4.0.0 + + + org.eclipse.jetty.its + it-parent-pom + 0.0.1-SNAPSHOT + + + jetty-run-mojo-jsp + war + + Jetty :: Simple :: Webapp + + + ${project.build.directory}/jetty-run-mojo-jsp.txt + + + + + org.slf4j + slf4j-simple + + + + org.eclipse.jetty + jetty-servlet + provided + + + + org.eclipse.jetty + jetty-maven-plugin + tests + test-jar + test + + + + org.junit.jupiter + junit-jupiter-engine + test + + + + + + + + + + org.apache.maven.plugins + maven-war-plugin + + false + + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + + ${jetty.port.file} + Counter accessed 1 times. + /jsp/bean1.jsp + ${project.groupId}:${project.artifactId} + + + org.eclipse.jetty:jetty-maven-plugin + + + + + org.eclipse.jetty + jetty-maven-plugin + + + start-jetty + test-compile + + start + + + + + jetty.port.file + ${jetty.port.file} + + + true + ${basedir}/src/config/jetty.xml + + + + + + + + + diff --git a/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/postbuild.groovy b/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/postbuild.groovy new file mode 100644 index 00000000000..4c4b42e2f2f --- /dev/null +++ b/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/postbuild.groovy @@ -0,0 +1,22 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +File buildLog = new File( basedir, 'build.log' ) +assert buildLog.text.contains( 'Started Jetty Server' ) +assert buildLog.text.contains( 'Running org.eclipse.jetty.maven.plugin.it.TestGetContent') +assert buildLog.text.contains( 'contentCheck') diff --git a/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/src/config/jetty.xml b/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/src/config/jetty.xml new file mode 100644 index 00000000000..4fb92bbea50 --- /dev/null +++ b/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/src/config/jetty.xml @@ -0,0 +1,40 @@ + + + + + + https + + 32768 + 8192 + 8192 + 4096 + + + + + + + + + + + + + + + + + + + + + + + + 0 + 30000 + + + + diff --git a/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/src/main/java/com/acme/Counter.java b/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/src/main/java/com/acme/Counter.java new file mode 100644 index 00000000000..3c87fc55cfa --- /dev/null +++ b/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/src/main/java/com/acme/Counter.java @@ -0,0 +1,41 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package com.acme; + +@SuppressWarnings("serial") +public class Counter implements java.io.Serializable +{ + int counter=0; + String last; + + public int getCount() + { + counter++; + return counter; + } + + public void setLast(String uri) { + last=uri; + } + + public String getLast() { + return last; + } +} + diff --git a/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/src/main/webapp/WEB-INF/web.xml b/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 00000000000..5a6d2867874 --- /dev/null +++ b/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,7 @@ + + + Jetty Simple Webapp run-mojo-jsp + diff --git a/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/src/main/webapp/jsp/bean1.jsp b/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/src/main/webapp/jsp/bean1.jsp new file mode 100644 index 00000000000..02a13d85e56 --- /dev/null +++ b/jetty-maven-plugin/src/it/jetty-run-mojo-jsp/src/main/webapp/jsp/bean1.jsp @@ -0,0 +1,13 @@ + +<%@ page session="true"%> + + + +

JSP1.2 Beans: 1

+ +Counter accessed times.
+Counter last accessed by
+ + + + diff --git a/jetty-maven-plugin/src/test/java/org/eclipse/jetty/maven/plugin/it/TestGetContent.java b/jetty-maven-plugin/src/test/java/org/eclipse/jetty/maven/plugin/it/TestGetContent.java index c3deb8d3bb1..37b2bb1b643 100644 --- a/jetty-maven-plugin/src/test/java/org/eclipse/jetty/maven/plugin/it/TestGetContent.java +++ b/jetty-maven-plugin/src/test/java/org/eclipse/jetty/maven/plugin/it/TestGetContent.java @@ -64,9 +64,15 @@ public class TestGetContent System.out.println( "pingServlet ok" ); } String contentCheck = System.getProperty( "contentCheck" ); + String pathToCheck = System.getProperty( "pathToCheck" ); if(StringUtils.isNotBlank( contentCheck ) ) { - String response = httpClient.GET( "http://localhost:" + port ).getContentAsString(); + String url = "http://localhost:" + port; + if(pathToCheck!=null) + { + url += pathToCheck; + } + String response = httpClient.GET( url ).getContentAsString(); assertTrue(response.contains(contentCheck), "it test " + System.getProperty( "maven.it.name" ) + ", response not contentCheck: " + contentCheck + ", response:" + response); System.out.println( "contentCheck" ); diff --git a/pom.xml b/pom.xml index c26bcf0d602..98577729b01 100644 --- a/pom.xml +++ b/pom.xml @@ -156,7 +156,11 @@ - + + + javax.enterprise:cdi-api + +
From cf406b88541368c78fdd4fc44fef4deea56e4574 Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Fri, 25 Jan 2019 07:40:42 +1000 Subject: [PATCH 254/931] do not parse junit report when building javadoc tests are reported one more time Signed-off-by: olivier lamy --- Jenkinsfile | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 6b4dda7f39c..3630ad61a30 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -44,7 +44,7 @@ pipeline { agent { node { label 'linux' } } options { timeout(time: 120, unit: 'MINUTES') } steps { - mavenBuild("jdk11", "-Pmongodb install", "maven3") + mavenBuild("jdk11", "-Pmongodb install", "maven3", false) junit '**/target/surefire-reports/TEST-*.xml,**/target/failsafe-reports/TEST-*.xml' warnings consoleParsers: [[parserName: 'Maven'], [parserName: 'Java']] maven_invoker reportsFilenamePattern: "**/target/invoker-reports/BUILD*.xml", invokerBuildDir: "**/target/it" @@ -55,7 +55,7 @@ pipeline { agent { node { label 'linux' } } options { timeout(time: 30, unit: 'MINUTES') } steps { - mavenBuild("jdk8", "install javadoc:javadoc -DskipTests", "maven3") + mavenBuild("jdk8", "install javadoc:javadoc -DskipTests", "maven3", true) warnings consoleParsers: [[parserName: 'Maven'], [parserName: 'JavaDoc'], [parserName: 'Java']] } } @@ -64,7 +64,7 @@ pipeline { agent { node { label 'linux' } } options { timeout(time: 120, unit: 'MINUTES') } steps { - mavenBuild("jdk8", "-Pcompact3 install -DskipTests", "maven3") + mavenBuild("jdk8", "-Pcompact3 install -DskipTests", "maven3", false) warnings consoleParsers: [[parserName: 'Maven'], [parserName: 'Java']] } } @@ -82,7 +82,7 @@ pipeline { * @param cmdline the command line in " "`format. * @return the Jenkinsfile step representing a maven build */ -def mavenBuild(jdk, cmdline, mvnName) { +def mavenBuild(jdk, cmdline, mvnName, junitPublishDisabled) { def localRepo = "${env.JENKINS_HOME}/${env.EXECUTOR_NUMBER}" // ".repository" // def settingsName = 'oss-settings.xml' def mavenOpts = '-Xms1g -Xmx4g -Djava.awt.headless=true' @@ -92,7 +92,7 @@ def mavenBuild(jdk, cmdline, mvnName) { jdk: "$jdk", publisherStrategy: 'EXPLICIT', globalMavenSettingsConfig: settingsName, - options: [junitPublisher(disabled: false),mavenLinkerPublisher(disabled: false),pipelineGraphPublisher(disabled: false)], + options: [junitPublisher(disabled: junitPublishDisabled),mavenLinkerPublisher(disabled: false),pipelineGraphPublisher(disabled: false)], mavenOpts: mavenOpts, mavenLocalRepo: localRepo) { // Some common Maven command line + provided command line From 5463b64a7c9b90f0f47ce3f944de663139af5ebe Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Fri, 25 Jan 2019 08:27:00 +1000 Subject: [PATCH 255/931] do not parse junit report when building javadoc tests are reported one more time Signed-off-by: olivier lamy --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index 3630ad61a30..d2e7ded3f52 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -11,7 +11,7 @@ pipeline { agent { node { label 'linux' } } options { timeout(time: 120, unit: 'MINUTES') } steps { - mavenBuild("jdk8", "-Pmongodb install", "maven3") + mavenBuild("jdk8", "-Pmongodb install", "maven3", false) // Collect up the jacoco execution results (only on main build) jacoco inclusionPattern: '**/org/eclipse/jetty/**/*.class', exclusionPattern: '' + From 884afb5ba1106c715a13504861e4797203e2b14c Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Fri, 25 Jan 2019 09:27:42 +1000 Subject: [PATCH 256/931] disable parse junit report when building compact3 profile Signed-off-by: olivier lamy --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index d2e7ded3f52..80fdaf7db8a 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -64,7 +64,7 @@ pipeline { agent { node { label 'linux' } } options { timeout(time: 120, unit: 'MINUTES') } steps { - mavenBuild("jdk8", "-Pcompact3 install -DskipTests", "maven3", false) + mavenBuild("jdk8", "-Pcompact3 install -DskipTests", "maven3", true) warnings consoleParsers: [[parserName: 'Maven'], [parserName: 'Java']] } } From fe5b7be7f648f76e7e23a6f1f4932cc4deb2c62e Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Thu, 24 Jan 2019 14:39:31 +0100 Subject: [PATCH 257/931] Fixes #3293 HttpClientTLSTest.testNoCommonTLSProtocol() fail with jdk 11.0.2. Updated to force TLS 1.3 vs TLS 1.2, rather TLS 1.2 vs TLS 1.1. Signed-off-by: Simone Bordet --- .../jetty/client/HttpClientTLSTest.java | 42 +++++++++---------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTLSTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTLSTest.java index ecb7789efb7..3d86f7ded42 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTLSTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTLSTest.java @@ -18,15 +18,6 @@ package org.eclipse.jetty.client; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.instanceOf; -import static org.junit.jupiter.api.Assertions.assertArrayEquals; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertThrows; -import static org.junit.jupiter.api.Assertions.assertTrue; -import static org.junit.jupiter.api.Assumptions.assumeTrue; - import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.OutputStream; @@ -53,17 +44,22 @@ import org.eclipse.jetty.io.ssl.SslHandshakeListener; import org.eclipse.jetty.server.Handler; import org.eclipse.jetty.server.Server; import org.eclipse.jetty.server.ServerConnector; -import org.eclipse.jetty.util.JavaVersion; import org.eclipse.jetty.util.ssl.SslContextFactory; import org.eclipse.jetty.util.thread.ExecutorThreadPool; import org.eclipse.jetty.util.thread.QueuedThreadPool; -import org.hamcrest.Matchers; import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.Assumptions; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.condition.DisabledOnJre; import org.junit.jupiter.api.condition.JRE; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.instanceOf; +import static org.junit.jupiter.api.Assertions.assertArrayEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.jupiter.api.Assertions.assertTrue; + public class HttpClientTLSTest { private Server server; @@ -114,7 +110,7 @@ public class HttpClientTLSTest public void testNoCommonTLSProtocol() throws Exception { SslContextFactory serverTLSFactory = createSslContextFactory(); - serverTLSFactory.setIncludeProtocols("TLSv1.2"); + serverTLSFactory.setIncludeProtocols("TLSv1.3"); startServer(serverTLSFactory, new EmptyServerHandler()); CountDownLatch serverLatch = new CountDownLatch(1); @@ -128,7 +124,7 @@ public class HttpClientTLSTest }); SslContextFactory clientTLSFactory = createSslContextFactory(); - clientTLSFactory.setIncludeProtocols("TLSv1.1"); + clientTLSFactory.setIncludeProtocols("TLSv1.2"); startClient(clientTLSFactory); CountDownLatch clientLatch = new CountDownLatch(1); @@ -141,7 +137,8 @@ public class HttpClientTLSTest } }); - assertThrows(ExecutionException.class, ()->{ + assertThrows(ExecutionException.class, () -> + { client.newRequest("localhost", connector.getLocalPort()) .scheme(HttpScheme.HTTPS.asString()) .timeout(5, TimeUnit.SECONDS) @@ -183,7 +180,8 @@ public class HttpClientTLSTest } }); - assertThrows(ExecutionException.class, ()->{ + assertThrows(ExecutionException.class, () -> + { client.newRequest("localhost", connector.getLocalPort()) .scheme(HttpScheme.HTTPS.asString()) .timeout(5, TimeUnit.SECONDS) @@ -226,7 +224,8 @@ public class HttpClientTLSTest } }); - assertThrows(ExecutionException.class, ()->{ + assertThrows(ExecutionException.class, () -> + { client.newRequest("localhost", connector.getLocalPort()) .scheme(HttpScheme.HTTPS.asString()) .timeout(5, TimeUnit.SECONDS) @@ -239,7 +238,7 @@ public class HttpClientTLSTest // In JDK 11, a mismatch on the client does not generate any bytes towards // the server, while in TLS 1.2 the client sends to the server the close_notify. - @DisabledOnJre( JRE.JAVA_11 ) + @DisabledOnJre(JRE.JAVA_11) @Test public void testMismatchBetweenTLSProtocolAndTLSCiphersOnClient() throws Exception { @@ -273,7 +272,8 @@ public class HttpClientTLSTest } }); - assertThrows(ExecutionException.class, ()->{ + assertThrows(ExecutionException.class, () -> + { client.newRequest("localhost", connector.getLocalPort()) .scheme(HttpScheme.HTTPS.asString()) .timeout(5, TimeUnit.SECONDS) @@ -321,7 +321,7 @@ public class HttpClientTLSTest } // Excluded because of a bug in JDK 11+27 where session resumption does not work. - @DisabledOnJre( JRE.JAVA_11 ) + @DisabledOnJre(JRE.JAVA_11) @Test public void testHandshakeSucceededWithSessionResumption() throws Exception { @@ -401,7 +401,7 @@ public class HttpClientTLSTest } // Excluded because of a bug in JDK 11+27 where session resumption does not work. - @DisabledOnJre( JRE.JAVA_11 ) + @DisabledOnJre(JRE.JAVA_11) @Test public void testClientRawCloseDoesNotInvalidateSession() throws Exception { From 169d93e790e69b7d23a2e3b9d5a6a35e6d2b55ce Mon Sep 17 00:00:00 2001 From: Jan Bartel Date: Wed, 30 Jan 2019 14:02:35 +1100 Subject: [PATCH 258/931] Jetty 9.4.x 3284 sessions and system clock jitter (#3296) * Issue 3284 System clock jitter can affect session timers. Signed-off-by: Jan Bartel --- .../server/session/AbstractSessionCache.java | 6 - .../eclipse/jetty/server/session/Session.java | 111 +++++++++++------- .../jetty/server/session/SessionHandler.java | 61 ++++++---- 3 files changed, 109 insertions(+), 69 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionCache.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionCache.java index 5520a661bfd..15b47c8699d 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionCache.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/AbstractSessionCache.java @@ -616,12 +616,10 @@ public abstract class AbstractSessionCache extends ContainerLifeCycle implements { //get the session, if its not in memory, this will load it Session session = get(id); - //Always delete it from the backing data store if (_sessionDataStore != null) { - boolean dsdel = _sessionDataStore.delete(id); if (LOG.isDebugEnabled()) LOG.debug("Session {} deleted in session data store {}",id, dsdel); } @@ -635,10 +633,6 @@ public abstract class AbstractSessionCache extends ContainerLifeCycle implements return doDelete(id); } - - - - /** * @see org.eclipse.jetty.server.session.SessionCache#checkExpiration(Set) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/Session.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/Session.java index c7dc82c5d7e..a34bc0f0cdb 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/Session.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/Session.java @@ -116,7 +116,6 @@ public class Session implements SessionHandler.SessionIf public class SessionInactivityTimer { protected final CyclicTimeout _timer; - protected long _msec = -1; public SessionInactivityTimer() { @@ -127,31 +126,45 @@ public class Session implements SessionHandler.SessionIf { if (LOG.isDebugEnabled()) LOG.debug("Timer expired for session {}", getId()); - getSessionHandler().sessionInactivityTimerExpired(Session.this); + long now = System.currentTimeMillis(); + //handle what to do with the session after the timer expired + getSessionHandler().sessionInactivityTimerExpired(Session.this, now); + try (Lock lock = Session.this.lock()) + { + //grab the lock and check what happened to the session: if it didn't get evicted and + //it hasn't expired, we need to reset the timer + if (Session.this.isResident() && Session.this.getRequests() <= 0 && Session.this.isValid() && !Session.this.isExpiredAt(now)) + { + //session wasn't expired or evicted, we need to reset the timer + SessionInactivityTimer.this.schedule(Session.this.calculateInactivityTimeout(now)); + } + } } }; } - /** - * @param ms the timeout to set; -1 means that the timer will not be - * scheduled + * For backward api compatibility only. + * @see #schedule(long) */ - public void setTimeout(long ms) + @Deprecated + public void schedule () { - _msec = ms; - if (LOG.isDebugEnabled()) - LOG.debug("Session {} timer={}ms", getId(), ms); + schedule(calculateInactivityTimeout(System.currentTimeMillis())); } - public void schedule() + /** + * @param time the timeout to set; -1 means that the timer will not be + * scheduled + */ + public void schedule (long time) { - if (_msec > 0) + if (time >= 0) { if (LOG.isDebugEnabled()) - LOG.debug("(Re)starting timer for session {} at {}ms", getId(), _msec); - _timer.schedule(_msec, TimeUnit.MILLISECONDS); + LOG.debug("(Re)starting timer for session {} at {}ms", getId(), time); + _timer.schedule(time, TimeUnit.MILLISECONDS); } else { @@ -279,9 +292,15 @@ public class Session implements SessionHandler.SessionIf if (LOG.isDebugEnabled()) LOG.debug("Session {} complete, active requests={}", getId(), _requests); - // start the inactivity timer + // start the inactivity timer if necessary if (_requests == 0) - _sessionInactivityTimer.schedule(); + { + //update the expiry time to take account of the time all requests spent inside of the + //session. + long now = System.currentTimeMillis(); + _sessionData.calcAndSetExpiry(now); + _sessionInactivityTimer.schedule(calculateInactivityTimeout(now)); + } } } @@ -513,7 +532,7 @@ public class Session implements SessionHandler.SessionIf _sessionData.setMaxInactiveMs((long) secs * 1000L); _sessionData.calcAndSetExpiry(); _sessionData.setDirty(true); - updateInactivityTimer(); + if (LOG.isDebugEnabled()) { if (secs <= 0) @@ -524,14 +543,29 @@ public class Session implements SessionHandler.SessionIf } } - /** - * Set the inactivity timer to the smaller of the session maxInactivity (ie - * session-timeout from web.xml), or the inactive eviction time. - */ - public void updateInactivityTimer() + + @Deprecated + public void updateInactivityTimer() { + //for backward api compatibility only + } + + /** + * Calculate what the session timer setting should be based on: + * the time remaining before the session expires + * and any idle eviction time configured. + * The timer value will be the lesser of the above. + * + * @param now the time at which to calculate remaining expiry + * @return the time remaining before expiry or inactivity timeout + */ + public long calculateInactivityTimeout (long now) + { + long time = 0; + try (Lock lock = _lock.lock()) { + long remaining = _sessionData.getExpiry() - now; long maxInactive = _sessionData.getMaxInactiveMs(); int evictionPolicy = getSessionHandler().getSessionCache().getEvictionPolicy(); @@ -541,7 +575,7 @@ public class Session implements SessionHandler.SessionIf if (evictionPolicy < SessionCache.EVICT_ON_INACTIVITY) { // we do not want to evict inactive sessions - _sessionInactivityTimer.setTimeout(-1); + time = -1; if (LOG.isDebugEnabled()) LOG.debug("Session {} is immortal && no inactivity eviction", getId()); } @@ -549,7 +583,7 @@ public class Session implements SessionHandler.SessionIf { // sessions are immortal but we want to evict after // inactivity - _sessionInactivityTimer.setTimeout(TimeUnit.SECONDS.toMillis(evictionPolicy)); + time = TimeUnit.SECONDS.toMillis(evictionPolicy); if (LOG.isDebugEnabled()) LOG.debug("Session {} is immortal; evict after {} sec inactivity", getId(), evictionPolicy); } @@ -559,31 +593,33 @@ public class Session implements SessionHandler.SessionIf // sessions are not immortal if (evictionPolicy == SessionCache.NEVER_EVICT) { - // timeout is just the maxInactive setting - _sessionInactivityTimer.setTimeout(_sessionData.getMaxInactiveMs()); + // timeout is the time remaining until its expiry + time = (remaining > 0 ? remaining : 0); if (LOG.isDebugEnabled()) LOG.debug("Session {} no eviction", getId()); } else if (evictionPolicy == SessionCache.EVICT_ON_SESSION_EXIT) { // session will not remain in the cache, so no timeout - _sessionInactivityTimer.setTimeout(-1); + time = -1; if (LOG.isDebugEnabled()) LOG.debug("Session {} evict on exit", getId()); } else { // want to evict on idle: timer is lesser of the session's - // maxInactive and eviction timeout - _sessionInactivityTimer.setTimeout(Math.min(maxInactive, TimeUnit.SECONDS.toMillis(evictionPolicy))); + // expiration remaining and the time to evict + time = (remaining > 0 ? (Math.min(maxInactive, TimeUnit.SECONDS.toMillis(evictionPolicy))) : 0); + if (LOG.isDebugEnabled()) LOG.debug("Session {} timer set to lesser of maxInactive={} and inactivityEvict={}", getId(), maxInactive, evictionPolicy); } } } + + return time; } - /** * @see javax.servlet.http.HttpSession#getMaxInactiveInterval() */ @@ -963,16 +999,6 @@ public class Session implements SessionHandler.SessionIf return _lock.lock(); } - /* ------------------------------------------------------------- */ - /** - * Grab the lock on the session if it isn't locked already - * - * @return the lock - */ - public Lock lockIfNotHeld() - { - return _lock.lock(); - } /* ------------------------------------------------------------- */ /** @@ -1132,13 +1158,14 @@ public class Session implements SessionHandler.SessionIf } /* ------------------------------------------------------------- */ + /** + * @param resident + */ public void setResident(boolean resident) { _resident = resident; - if (_resident) - updateInactivityTimer(); - else + if (!_resident) _sessionInactivityTimer.destroy(); } diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java index ef650dc60a6..dcd2037af3a 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java @@ -1372,6 +1372,17 @@ public class SessionHandler extends ScopedHandler } } + /** + * @see #sessionInactivityTimerExpired(Session, long) + */ + @Deprecated + public void sessionInactivityTimerExpired (Session session) + { + //for backwards compilation compatibility only + sessionInactivityTimerExpired(session, System.currentTimeMillis()); + } + + /* ------------------------------------------------------------ */ /** * Each session has a timer that is configured to go off @@ -1379,20 +1390,28 @@ public class SessionHandler extends ScopedHandler * configurable amount of time, or the session itself * has passed its expiry. * + * If it has passed its expiry, then we will mark it for + * scavenging by next run of the HouseKeeper; if it has + * been idle longer than the configured eviction period, + * we evict from the cache. + * + * If none of the above are true, then the System timer + * is inconsistent and the caller of this method will + * need to reset the timer. + * * @param session the session + * @param now the time at which to check for expiry */ - public void sessionInactivityTimerExpired (Session session) + public void sessionInactivityTimerExpired (Session session, long now) { if (session == null) return; - //check if the session is: //1. valid //2. expired //3. idle - boolean expired = false; - try (Lock lock = session.lockIfNotHeld()) + try (Lock lock = session.lock()) { if (session.getRequests() > 0) return; //session can't expire or be idle if there is a request in it @@ -1402,27 +1421,27 @@ public class SessionHandler extends ScopedHandler if (!session.isValid()) return; //do nothing, session is no longer valid - - if (session.isExpiredAt(System.currentTimeMillis()) && session.getRequests() <=0) - expired = true; - } - if (expired) - { - //instead of expiring the session directly here, accumulate a list of - //session ids that need to be expired. This is an efficiency measure: as - //the expiration involves the SessionDataStore doing a delete, it is - //most efficient if it can be done as a bulk operation to eg reduce - //roundtrips to the persistent store. Only do this if the HouseKeeper that - //does the scavenging is configured to actually scavenge - if (_sessionIdManager.getSessionHouseKeeper() != null && _sessionIdManager.getSessionHouseKeeper().getIntervalSec() > 0) + if (session.isExpiredAt(now)) { - _candidateSessionIdsForExpiry.add(session.getId()); - if (LOG.isDebugEnabled())LOG.debug("Session {} is candidate for expiry", session.getId()); + //instead of expiring the session directly here, accumulate a list of + //session ids that need to be expired. This is an efficiency measure: as + //the expiration involves the SessionDataStore doing a delete, it is + //most efficient if it can be done as a bulk operation to eg reduce + //roundtrips to the persistent store. Only do this if the HouseKeeper that + //does the scavenging is configured to actually scavenge + if (_sessionIdManager.getSessionHouseKeeper() != null && _sessionIdManager.getSessionHouseKeeper().getIntervalSec() > 0) + { + _candidateSessionIdsForExpiry.add(session.getId()); + if (LOG.isDebugEnabled())LOG.debug("Session {} is candidate for expiry", session.getId()); + } + } + else + { + //possibly evict the session + _sessionCache.checkInactiveSession(session); } } - else - _sessionCache.checkInactiveSession(session); //if inactivity eviction is enabled the session will be deleted from the cache } From edf74a655473e5dda82c8e67e5c9ffea6ec0d025 Mon Sep 17 00:00:00 2001 From: "alexey.barsov" Date: Wed, 30 Jan 2019 11:10:42 +0100 Subject: [PATCH 259/931] Issue #3302 Supporting host:ip in X-Forwarded-For Signed-off-by: alexey.barsov --- .../server/ForwardedRequestCustomizer.java | 22 ++++++++++++- .../ForwardedRequestCustomizerTest.java | 32 +++++++++++++++++++ 2 files changed, 53 insertions(+), 1 deletion(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ForwardedRequestCustomizer.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ForwardedRequestCustomizer.java index 9c464c763e3..c4761c49efa 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ForwardedRequestCustomizer.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ForwardedRequestCustomizer.java @@ -29,6 +29,7 @@ import org.eclipse.jetty.http.HttpHeader; import org.eclipse.jetty.http.HttpScheme; import org.eclipse.jetty.http.QuotedCSV; import org.eclipse.jetty.server.HttpConfiguration.Customizer; +import org.eclipse.jetty.util.HostPort; import org.eclipse.jetty.util.StringUtil; @@ -333,7 +334,7 @@ public class ForwardedRequestCustomizer implements Customizer forwardedServer = getLeftMost(field.getValue()); if (forwardedFor==null && _forwardedForHeader!=null && _forwardedForHeader.equalsIgnoreCase(name)) - forwardedFor = getLeftMost(field.getValue()); + forwardedFor = getRemoteAddr(field.getValue()); if (forwardedProto==null && _forwardedProtoHeader!=null && _forwardedProtoHeader.equalsIgnoreCase(name)) forwardedProto = getLeftMost(field.getValue()); @@ -430,6 +431,25 @@ public class ForwardedRequestCustomizer implements Customizer // The left-most value is the farthest downstream client return headerValue.substring(0,commaIndex).trim(); } + + protected String getRemoteAddr(String headerValue) + { + String leftMost = getLeftMost(headerValue); + + if (leftMost != null && leftMost.contains(":")) { + try { + HostPort hostPort = new HostPort(leftMost); + if (hostPort.getPort() > 0) { + // address in a format host:port, return host part only. + return hostPort.getHost(); + } + } catch (Exception e) { + // failed to parse in host[:port] format, fallback to the value resolved from header + } + } + + return leftMost; + } @Override public String toString() diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/ForwardedRequestCustomizerTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/ForwardedRequestCustomizerTest.java index 3397e3f77d1..bd8857d89f3 100644 --- a/jetty-server/src/test/java/org/eclipse/jetty/server/ForwardedRequestCustomizerTest.java +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/ForwardedRequestCustomizerTest.java @@ -218,6 +218,38 @@ public class ForwardedRequestCustomizerTest assertEquals("0",_results.poll()); } + @Test + public void testForIpv4WithPort() throws Exception + { + String response=_connector.getResponse( + "GET / HTTP/1.1\n"+ + "Host: myhost\n"+ + "X-Forwarded-For: 10.9.8.7:1111,6.5.4.3:1111\n"+ + "\n"); + assertThat(response, Matchers.containsString("200 OK")); + assertEquals("http",_results.poll()); + assertEquals("myhost",_results.poll()); + assertEquals("80",_results.poll()); + assertEquals("10.9.8.7",_results.poll()); + assertEquals("0",_results.poll()); + } + + @Test + public void testForIpv6WithPort() throws Exception + { + String response=_connector.getResponse( + "GET / HTTP/1.1\n"+ + "Host: myhost\n"+ + "X-Forwarded-For: [2001:db8:cafe::17]:1111,6.5.4.3:1111\n"+ + "\n"); + assertThat(response, Matchers.containsString("200 OK")); + assertEquals("http",_results.poll()); + assertEquals("myhost",_results.poll()); + assertEquals("80",_results.poll()); + assertEquals("[2001:db8:cafe::17]",_results.poll()); + assertEquals("0",_results.poll()); + } + @Test public void testLegacyProto() throws Exception { From d02762140d6e13e1a07351b2d5cb6dc101a95419 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Wed, 30 Jan 2019 19:41:35 +0100 Subject: [PATCH 260/931] Fixes #3305 - Avoid additional selectNow(). Using system property "org.eclipse.jetty.io.forceSelectNow" to force a selectNow() call; if absent, forcing selectNow() only in the Windows OS. Signed-off-by: Simone Bordet --- .../org/eclipse/jetty/io/ManagedSelector.java | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java index 93ba2f3fbe6..1dca5816e75 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ManagedSelector.java @@ -35,6 +35,7 @@ import java.util.Collections; import java.util.Deque; import java.util.Iterator; import java.util.List; +import java.util.Locale; import java.util.Set; import java.util.concurrent.CountDownLatch; import java.util.concurrent.Executor; @@ -60,6 +61,20 @@ import org.eclipse.jetty.util.thread.strategy.EatWhatYouKill; public class ManagedSelector extends ContainerLifeCycle implements Dumpable { private static final Logger LOG = Log.getLogger(ManagedSelector.class); + private static final boolean FORCE_SELECT_NOW; + static + { + String property = System.getProperty("org.eclipse.jetty.io.forceSelectNow"); + if (property != null) + { + FORCE_SELECT_NOW = Boolean.parseBoolean(property); + } + else + { + property = System.getProperty("os.name"); + FORCE_SELECT_NOW = property != null && property.toLowerCase(Locale.ENGLISH).contains("windows"); + } + } private final AtomicBoolean _started = new AtomicBoolean(false); private boolean _selecting = false; @@ -457,7 +472,8 @@ public class ManagedSelector extends ContainerLifeCycle implements Dumpable if (Thread.interrupted() && !isRunning()) throw new ClosedSelectorException(); - selected = selector.selectNow(); + if (FORCE_SELECT_NOW) + selected = selector.selectNow(); } if (LOG.isDebugEnabled()) LOG.debug("Selector {} woken up from select, {}/{}/{} selected", selector, selected, selector.selectedKeys().size(), selector.keys().size()); From 6fee10d5376e5c45e0984738de87f1edd06e980d Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Thu, 31 Jan 2019 09:39:21 +1000 Subject: [PATCH 261/931] use snapshot of maven-invoker-plugin because of NPE https://issues.apache.org/jira/browse/MINVOKER-247 Signed-off-by: olivier lamy --- pom.xml | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 98577729b01..2f8469e9fec 100644 --- a/pom.xml +++ b/pom.xml @@ -483,7 +483,7 @@ org.apache.maven.plugins maven-invoker-plugin - 3.2.0 + 3.2.1-SNAPSHOT ${it.debug} ${java.home} @@ -2021,4 +2021,27 @@ + + + apache.snapshots + https://repository.apache.org/content/repositories/snapshots + + false + + + true + + + + plexus-snapshots + https://oss.sonatype.org/content/repositories/plexus-snapshots + + false + + + true + + + + From ccda1ee5f6a7861cc9e80739b2a611c6de26d657 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Thu, 31 Jan 2019 13:23:58 +0100 Subject: [PATCH 262/931] Fixes #3311 - Ability to serve HTTP and HTTPS from the same port. Introduced PlainOrSslConnectionFactory, to "sniff" the first bytes on a connection and upgrade to SSL (if the bytes are TLS bytes), or upgrade to a specific, configured, protocol. Added also the ability to fail the upgrade in case of a `http` request to a `https` port and write a minimal response to the client. Signed-off-by: Simone Bordet --- .../eclipse/jetty/io/ssl/SslConnection.java | 18 +- .../eclipse/jetty/server/HttpConnection.java | 13 +- .../server/PlainOrSslConnectionFactory.java | 192 ++++++++++++++++++ .../server/PlainOrSslConnectionTest.java | 189 +++++++++++++++++ .../test/resources/jetty-logging.properties | 3 +- 5 files changed, 409 insertions(+), 6 deletions(-) create mode 100644 jetty-server/src/main/java/org/eclipse/jetty/server/PlainOrSslConnectionFactory.java create mode 100644 jetty-server/src/test/java/org/eclipse/jetty/server/PlainOrSslConnectionTest.java diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/SslConnection.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/SslConnection.java index 2d76b105675..1ed5ed23a09 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/SslConnection.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ssl/SslConnection.java @@ -76,7 +76,7 @@ import org.eclipse.jetty.util.thread.Invocable; * be called again and make another best effort attempt to progress the connection. * */ -public class SslConnection extends AbstractConnection +public class SslConnection extends AbstractConnection implements Connection.UpgradeTo { private static final Logger LOG = Log.getLogger(SslConnection.class); private static final String TLS_1_3 = "TLSv1.3"; @@ -260,6 +260,19 @@ public class SslConnection extends AbstractConnection this._allowMissingCloseMessage = allowMissingCloseMessage; } + private void acquireEncryptedInput() + { + if (_encryptedInput == null) + _encryptedInput = _bufferPool.acquire(_sslEngine.getSession().getPacketBufferSize(), _encryptedDirectBuffers); + } + + @Override + public void onUpgradeTo(ByteBuffer buffer) + { + acquireEncryptedInput(); + BufferUtil.append(_encryptedInput, buffer); + } + @Override public void onOpen() { @@ -526,8 +539,7 @@ public class SslConnection extends AbstractConnection throw new IllegalStateException("Unexpected HandshakeStatus " + status); } - if (_encryptedInput == null) - _encryptedInput = _bufferPool.acquire(_sslEngine.getSession().getPacketBufferSize(), _encryptedDirectBuffers); + acquireEncryptedInput(); // can we use the passed buffer if it is big enough ByteBuffer app_in; diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConnection.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConnection.java index 3d124c5d752..d620fd96ff5 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConnection.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpConnection.java @@ -50,7 +50,7 @@ import org.eclipse.jetty.util.log.Logger; /** *

A {@link Connection} that handles the HTTP protocol.

*/ -public class HttpConnection extends AbstractConnection implements Runnable, HttpTransport, Connection.UpgradeFrom, WriteFlusher.Listener +public class HttpConnection extends AbstractConnection implements Runnable, HttpTransport, WriteFlusher.Listener, Connection.UpgradeFrom, Connection.UpgradeTo { private static final Logger LOG = Log.getLogger(HttpConnection.class); public static final HttpField CONNECTION_CLOSE = new PreEncodedHttpField(HttpHeader.CONNECTION,HttpHeaderValue.CLOSE.asString()); @@ -196,6 +196,12 @@ public class HttpConnection extends AbstractConnection implements Runnable, Http return null; } + @Override + public void onUpgradeTo(ByteBuffer buffer) + { + BufferUtil.append(getRequestBuffer(), buffer); + } + @Override public void onFlushed(long bytes) throws IOException { @@ -500,7 +506,10 @@ public class HttpConnection extends AbstractConnection implements Runnable, Http public void onOpen() { super.onOpen(); - fillInterested(); + if (isRequestBufferEmpty()) + fillInterested(); + else + getExecutor().execute(this); } @Override diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/PlainOrSslConnectionFactory.java b/jetty-server/src/main/java/org/eclipse/jetty/server/PlainOrSslConnectionFactory.java new file mode 100644 index 00000000000..e8114b32dd7 --- /dev/null +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/PlainOrSslConnectionFactory.java @@ -0,0 +1,192 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.server; + +import java.io.IOException; +import java.nio.ByteBuffer; + +import org.eclipse.jetty.io.AbstractConnection; +import org.eclipse.jetty.io.Connection; +import org.eclipse.jetty.io.EndPoint; +import org.eclipse.jetty.util.BufferUtil; +import org.eclipse.jetty.util.log.Log; +import org.eclipse.jetty.util.log.Logger; + +/** + *

A ConnectionFactory whose connections detect whether the first bytes are + * TLS bytes and upgrades to either a TLS connection or to a plain connection.

+ */ +public class PlainOrSslConnectionFactory extends AbstractConnectionFactory +{ + private static final Logger LOG = Log.getLogger(PlainOrSslConnection.class); + private static final int TLS_ALERT_FRAME_TYPE = 0x15; + private static final int TLS_HANDSHAKE_FRAME_TYPE = 0x16; + private static final int TLS_MAJOR_VERSION = 3; + + private final SslConnectionFactory sslConnectionFactory; + private final String plainProtocol; + + /** + *

Creates a new plain or TLS ConnectionFactory.

+ *

If {@code plainProtocol} is {@code null}, and the first bytes are not TLS, then + * {@link #unknownProtocol(ByteBuffer, EndPoint)} is called; applications may override its + * behavior (by default it closes the EndPoint) for example by writing a minimal response.

+ * + * @param sslConnectionFactory The SslConnectionFactory to use if the first bytes are TLS + * @param plainProtocol the protocol of the ConnectionFactory to use if the first bytes are not TLS, or null. + */ + public PlainOrSslConnectionFactory(SslConnectionFactory sslConnectionFactory, String plainProtocol) + { + super("plain|ssl"); + this.sslConnectionFactory = sslConnectionFactory; + this.plainProtocol = plainProtocol; + } + + @Override + public Connection newConnection(Connector connector, EndPoint endPoint) + { + return configure(new PlainOrSslConnection(endPoint, connector), connector, endPoint); + } + + /** + * @param buffer The buffer with the first bytes of the connection + * @return whether the bytes seem TLS bytes + */ + protected boolean seemsTLS(ByteBuffer buffer) + { + int tlsFrameType = buffer.get(0) & 0xFF; + int tlsMajorVersion = buffer.get(1) & 0xFF; + return (tlsFrameType == TLS_HANDSHAKE_FRAME_TYPE || tlsFrameType == TLS_ALERT_FRAME_TYPE) && tlsMajorVersion == TLS_MAJOR_VERSION; + } + + /** + *

Callback method invoked when {@code plainProtocol} is {@code null} + * and the first bytes are not TLS.

+ *

This typically happens when a client is trying to connect to a TLS + * port using the {@code http} scheme (and not the {@code https} scheme).

+ *

This method may be overridden to write back a minimal response such as:

+ *
+     * HTTP/1.1 400 Bad Request
+     * Content-Length: 35
+     * Content-Type: text/plain; charset=UTF8
+     * Connection: close
+     *
+     * Plain HTTP request sent to TLS port
+     * 
+ * + * @param buffer The buffer with the first bytes of the connection + * @param endPoint The connection EndPoint object + * @see #seemsTLS(ByteBuffer) + */ + protected void unknownProtocol(ByteBuffer buffer, EndPoint endPoint) + { + endPoint.close(); + } + + private class PlainOrSslConnection extends AbstractConnection implements Connection.UpgradeFrom + { + private final Connector connector; + private final ByteBuffer buffer; + + public PlainOrSslConnection(EndPoint endPoint, Connector connector) + { + super(endPoint, connector.getExecutor()); + this.connector = connector; + this.buffer = BufferUtil.allocateDirect(1536); + } + + @Override + public void onOpen() + { + super.onOpen(); + fillInterested(); + } + + @Override + public void onFillable() + { + try + { + int filled = getEndPoint().fill(buffer); + if (filled > 0) + { + upgrade(buffer); + } + else if (filled == 0) + { + fillInterested(); + } + else + { + close(); + } + } + catch (IOException x) + { + LOG.warn(x); + close(); + } + } + + @Override + public ByteBuffer onUpgradeFrom() + { + return buffer; + } + + private void upgrade(ByteBuffer buffer) + { + if (LOG.isDebugEnabled()) + LOG.debug("Read {}", BufferUtil.toDetailString(buffer)); + + EndPoint endPoint = getEndPoint(); + if (seemsTLS(buffer)) + { + if (LOG.isDebugEnabled()) + LOG.debug("Detected TLS bytes, upgrading to {}", sslConnectionFactory); + endPoint.upgrade(sslConnectionFactory.newConnection(connector, endPoint)); + } + else + { + if (plainProtocol != null) + { + ConnectionFactory connectionFactory = connector.getConnectionFactory(plainProtocol); + if (connectionFactory != null) + { + if (LOG.isDebugEnabled()) + LOG.debug("Detected plain bytes, upgrading to {}", connectionFactory); + Connection next = connectionFactory.newConnection(connector, endPoint); + endPoint.upgrade(next); + } + else + { + LOG.warn("Missing {} {} in {}", plainProtocol, ConnectionFactory.class.getSimpleName(), connector); + close(); + } + } + else + { + if (LOG.isDebugEnabled()) + LOG.debug("Detected plain bytes, but no configured protocol to upgrade to"); + unknownProtocol(buffer, endPoint); + } + } + } + } +} diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/PlainOrSslConnectionTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/PlainOrSslConnectionTest.java new file mode 100644 index 00000000000..6267190d014 --- /dev/null +++ b/jetty-server/src/test/java/org/eclipse/jetty/server/PlainOrSslConnectionTest.java @@ -0,0 +1,189 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.server; + +import java.io.InputStream; +import java.io.OutputStream; +import java.net.InetSocketAddress; +import java.net.Socket; +import java.nio.ByteBuffer; +import java.nio.charset.StandardCharsets; +import java.util.function.Function; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.eclipse.jetty.http.HttpStatus; +import org.eclipse.jetty.http.HttpTester; +import org.eclipse.jetty.io.EndPoint; +import org.eclipse.jetty.server.handler.AbstractHandler; +import org.eclipse.jetty.toolchain.test.MavenTestingUtils; +import org.eclipse.jetty.util.Callback; +import org.eclipse.jetty.util.ssl.SslContextFactory; +import org.eclipse.jetty.util.thread.QueuedThreadPool; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; + +public class PlainOrSslConnectionTest +{ + private Server server; + private ServerConnector connector; + + private void startServer(Function configFn, Handler handler) throws Exception + { + QueuedThreadPool serverThreads = new QueuedThreadPool(); + serverThreads.setName("server"); + server = new Server(serverThreads); + + String keystore = MavenTestingUtils.getTestResourceFile("keystore").getAbsolutePath(); + SslContextFactory sslContextFactory = new SslContextFactory(); + sslContextFactory.setKeyStorePath(keystore); + sslContextFactory.setKeyStorePassword("storepwd"); + sslContextFactory.setKeyManagerPassword("keypwd"); + + HttpConfiguration httpConfig = new HttpConfiguration(); + HttpConnectionFactory http = new HttpConnectionFactory(httpConfig); + SslConnectionFactory ssl = new SslConnectionFactory(sslContextFactory, http.getProtocol()); + PlainOrSslConnectionFactory plainOrSsl = configFn.apply(ssl); + connector = new ServerConnector(server, 1, 1, plainOrSsl, ssl, http); + server.addConnector(connector); + + server.setHandler(handler); + + server.start(); + } + + @AfterEach + public void stopServer() throws Exception + { + if (server != null) + server.stop(); + } + + private PlainOrSslConnectionFactory plainOrSsl(SslConnectionFactory ssl) + { + return new PlainOrSslConnectionFactory(ssl, ssl.getNextProtocol()); + } + + private PlainOrSslConnectionFactory plainToSslWithReport(SslConnectionFactory ssl) + { + return new PlainOrSslConnectionFactory(ssl, null) + { + @Override + protected void unknownProtocol(ByteBuffer buffer, EndPoint endPoint) + { + String response = "" + + "HTTP/1.1 400 Bad Request\r\n" + + "Content-Length: 0\r\n" + + "Connection: close\r\n" + + "\r\n"; + Callback.Completable callback = new Callback.Completable(); + endPoint.write(callback, ByteBuffer.wrap(response.getBytes(StandardCharsets.US_ASCII))); + callback.whenComplete((r, x) -> endPoint.close()); + } + }; + } + + @Test + public void testPlainOrSslConnection() throws Exception + { + startServer(this::plainOrSsl, new EmptyServerHandler()); + + String request = "" + + "GET / HTTP/1.1\r\n" + + "Host: localhost\r\n" + + "\r\n"; + byte[] requestBytes = request.getBytes(StandardCharsets.US_ASCII); + + // Try first a plain text connection. + try (Socket plain = new Socket()) + { + plain.connect(new InetSocketAddress("localhost", connector.getLocalPort()), 1000); + OutputStream plainOutput = plain.getOutputStream(); + plainOutput.write(requestBytes); + plainOutput.flush(); + + plain.setSoTimeout(5000); + InputStream plainInput = plain.getInputStream(); + HttpTester.Response response = HttpTester.parseResponse(plainInput); + assertNotNull(response); + assertEquals(HttpStatus.OK_200, response.getStatus()); + } + + // Then try a SSL connection. + SslContextFactory sslContextFactory = new SslContextFactory(true); + sslContextFactory.start(); + try (Socket ssl = sslContextFactory.newSslSocket()) + { + ssl.connect(new InetSocketAddress("localhost", connector.getLocalPort()), 1000); + OutputStream sslOutput = ssl.getOutputStream(); + sslOutput.write(requestBytes); + sslOutput.flush(); + + ssl.setSoTimeout(5000); + InputStream sslInput = ssl.getInputStream(); + HttpTester.Response response = HttpTester.parseResponse(sslInput); + assertNotNull(response); + assertEquals(HttpStatus.OK_200, response.getStatus()); + } + finally + { + sslContextFactory.stop(); + } + } + + @Test + public void testPlainToSslWithReport() throws Exception + { + startServer(this::plainToSslWithReport, new EmptyServerHandler()); + + String request = "" + + "GET / HTTP/1.1\r\n" + + "Host: localhost\r\n" + + "\r\n"; + byte[] requestBytes = request.getBytes(StandardCharsets.US_ASCII); + + // Send a plain text HTTP request to SSL port: we should get back a minimal HTTP response. + try (Socket plain = new Socket()) + { + plain.connect(new InetSocketAddress("localhost", connector.getLocalPort()), 1000); + OutputStream plainOutput = plain.getOutputStream(); + plainOutput.write(requestBytes); + plainOutput.flush(); + + plain.setSoTimeout(5000); + InputStream plainInput = plain.getInputStream(); + HttpTester.Response response = HttpTester.parseResponse(plainInput); + assertNotNull(response); + assertEquals(HttpStatus.BAD_REQUEST_400, response.getStatus()); + } + } + + private static class EmptyServerHandler extends AbstractHandler.ErrorDispatchHandler + { + @Override + protected void doNonErrorHandle(String target, Request jettyRequest, HttpServletRequest request, HttpServletResponse response) + { + jettyRequest.setHandled(true); + } + } +} diff --git a/jetty-server/src/test/resources/jetty-logging.properties b/jetty-server/src/test/resources/jetty-logging.properties index 3f8368fa054..21db0759fe3 100644 --- a/jetty-server/src/test/resources/jetty-logging.properties +++ b/jetty-server/src/test/resources/jetty-logging.properties @@ -1,4 +1,5 @@ org.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.StdErrLog #org.eclipse.jetty.LEVEL=DEBUG +#org.eclipse.jetty.server.LEVEL=DEBUG #org.eclipse.jetty.server.ConnectionLimit.LEVEL=DEBUG -#org.eclipse.jetty.server.AcceptRateLimit.LEVEL=DEBUG \ No newline at end of file +#org.eclipse.jetty.server.AcceptRateLimit.LEVEL=DEBUG From 88408375ab9feca018299ed8c78807105959e076 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Thu, 31 Jan 2019 15:31:35 +0100 Subject: [PATCH 263/931] Issue #3049 - Warn on common SslContextFactory problematic configurations. Updating SslContextFactory configuration for tests, since the change in the default endPointIdentificationAlgorithm makes the test failing as the certificates are not valid for the local host, which is different depending on where the tests are run (locally, jenkins). Signed-off-by: Simone Bordet --- .../client/http/DirectHTTP2OverTLSTest.java | 9 ++-- .../eclipse/jetty/io/SslConnectionTest.java | 13 +++-- .../jetty/proxy/ForwardProxyServerTest.java | 13 +++-- .../proxy/ForwardProxyTLSServerTest.java | 46 +++++++++-------- .../PerMessageDeflateExtensionTest.java | 10 ++-- .../websocket/server/SimpleServletServer.java | 1 + .../client/HttpChannelAssociationTest.java | 9 ++-- .../jetty/http/client/TransportScenario.java | 22 ++++++--- .../jetty/test/HttpInputIntegrationTest.java | 49 +++++++++---------- 9 files changed, 94 insertions(+), 78 deletions(-) diff --git a/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/DirectHTTP2OverTLSTest.java b/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/DirectHTTP2OverTLSTest.java index fe7e3ed2307..53e0f530f5c 100644 --- a/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/DirectHTTP2OverTLSTest.java +++ b/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/DirectHTTP2OverTLSTest.java @@ -18,8 +18,6 @@ package org.eclipse.jetty.http2.client.http; -import static org.junit.jupiter.api.Assertions.assertEquals; - import java.io.IOException; import java.util.concurrent.TimeUnit; @@ -46,9 +44,10 @@ import org.eclipse.jetty.server.handler.AbstractHandler; import org.eclipse.jetty.util.ssl.SslContextFactory; import org.eclipse.jetty.util.thread.QueuedThreadPool; import org.junit.jupiter.api.AfterEach; - import org.junit.jupiter.api.Test; +import static org.junit.jupiter.api.Assertions.assertEquals; + public class DirectHTTP2OverTLSTest { private Server server; @@ -82,7 +81,9 @@ public class DirectHTTP2OverTLSTest clientThreads.setName("client"); HttpClientTransportOverHTTP2 transport = new HttpClientTransportOverHTTP2(new HTTP2Client()); transport.setUseALPN(false); - client = new HttpClient(transport, newSslContextFactory()); + SslContextFactory sslContextFactory = newSslContextFactory(); + sslContextFactory.setEndpointIdentificationAlgorithm(null); + client = new HttpClient(transport, sslContextFactory); client.setExecutor(clientThreads); client.start(); } diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/SslConnectionTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/SslConnectionTest.java index 113e74527aa..9bc59170b11 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/SslConnectionTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/SslConnectionTest.java @@ -18,11 +18,6 @@ package org.eclipse.jetty.io; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNull; -import static org.junit.jupiter.api.Assertions.assertThrows; -import static org.junit.jupiter.api.Assertions.assertTrue; - import java.io.BufferedReader; import java.io.File; import java.io.IOException; @@ -52,11 +47,14 @@ import org.eclipse.jetty.util.thread.QueuedThreadPool; import org.eclipse.jetty.util.thread.Scheduler; import org.eclipse.jetty.util.thread.TimerScheduler; import org.junit.jupiter.api.AfterEach; - -import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNull; +import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.jupiter.api.Assertions.assertTrue; + public class SslConnectionTest { private static final int TIMEOUT = 1000000; @@ -145,6 +143,7 @@ public class SslConnectionTest _sslCtxFactory.setKeyManagerPassword("keypwd"); _sslCtxFactory.setRenegotiationAllowed(true); _sslCtxFactory.setRenegotiationLimit(-1); + _sslCtxFactory.setEndpointIdentificationAlgorithm(null); startManager(); } diff --git a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ForwardProxyServerTest.java b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ForwardProxyServerTest.java index 53042a1f403..d7ee8fa7dc2 100644 --- a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ForwardProxyServerTest.java +++ b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ForwardProxyServerTest.java @@ -18,10 +18,6 @@ package org.eclipse.jetty.proxy; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; - import java.nio.ByteBuffer; import java.nio.charset.StandardCharsets; import java.util.stream.Stream; @@ -52,6 +48,10 @@ import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.Arguments; import org.junit.jupiter.params.provider.MethodSource; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; + public class ForwardProxyServerTest { @SuppressWarnings("Duplicates") @@ -68,9 +68,7 @@ public class ForwardProxyServerTest scenario2.setKeyManagerPassword("keypwd"); // TODO: add more SslContextFactory configurations/scenarios? - return Stream.of( - scenario1, scenario2 - ).map(Arguments::of); + return Stream.of(scenario1, scenario2).map(Arguments::of); } private SslContextFactory serverSslContextFactory; @@ -209,6 +207,7 @@ public class ForwardProxyServerTest clientSsl.setKeyStorePath(keyStorePath); clientSsl.setKeyStorePassword("storepwd"); clientSsl.setKeyManagerPassword("keypwd"); + clientSsl.setEndpointIdentificationAlgorithm(null); HttpClient httpClient = new HttpClient(clientSsl); httpClient.getProxyConfiguration().getProxies().add(newHttpProxy()); diff --git a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ForwardProxyTLSServerTest.java b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ForwardProxyTLSServerTest.java index d4f8e085f12..dfdbd3f2ca8 100644 --- a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ForwardProxyTLSServerTest.java +++ b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ForwardProxyTLSServerTest.java @@ -18,12 +18,6 @@ package org.eclipse.jetty.proxy; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertThrows; -import static org.junit.jupiter.api.Assertions.assertTrue; -import static org.junit.jupiter.api.Assumptions.assumeTrue; - import java.io.IOException; import java.net.ConnectException; import java.net.Socket; @@ -72,6 +66,12 @@ import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.Arguments; import org.junit.jupiter.params.provider.MethodSource; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.jupiter.api.Assumptions.assumeTrue; + public class ForwardProxyTLSServerTest { @SuppressWarnings("Duplicates") @@ -88,9 +88,7 @@ public class ForwardProxyTLSServerTest scenario2.setKeyManagerPassword("keypwd"); // TODO: add more SslContextFactory configurations/scenarios? - return Stream.of( - scenario1, scenario2 - ).map(Arguments::of); + return Stream.of(scenario1, scenario2).map(Arguments::of); } private SslContextFactory proxySslContextFactory; @@ -109,7 +107,7 @@ public class ForwardProxyTLSServerTest QueuedThreadPool serverThreads = new QueuedThreadPool(); serverThreads.setName("server"); server = new Server(serverThreads); - serverConnector = new ServerConnector(server, newSslContextFactory()); + serverConnector = new ServerConnector(server, newServerSslContextFactory()); server.addConnector(serverConnector); server.setHandler(handler); server.start(); @@ -139,7 +137,7 @@ public class ForwardProxyTLSServerTest return new HttpProxy(new Origin.Address("localhost", proxyConnector.getLocalPort()), proxySslContextFactory != null); } - private static SslContextFactory newSslContextFactory() + private static SslContextFactory newServerSslContextFactory() { SslContextFactory sslContextFactory = new SslContextFactory(); String keyStorePath = MavenTestingUtils.getTestResourceFile("keystore").getAbsolutePath(); @@ -147,6 +145,14 @@ public class ForwardProxyTLSServerTest sslContextFactory.setKeyStorePassword("storepwd"); sslContextFactory.setKeyManagerPassword("keypwd"); return sslContextFactory; + + } + + private static SslContextFactory newClientSslContextFactory() + { + SslContextFactory sslContextFactory = newServerSslContextFactory(); + sslContextFactory.setEndpointIdentificationAlgorithm(null); + return sslContextFactory; } @AfterEach @@ -182,7 +188,7 @@ public class ForwardProxyTLSServerTest startTLSServer(new ServerHandler()); startProxy(); - HttpClient httpClient = new HttpClient(newSslContextFactory()); + HttpClient httpClient = new HttpClient(newClientSslContextFactory()); httpClient.getProxyConfiguration().getProxies().add(newHttpProxy()); httpClient.start(); @@ -218,7 +224,7 @@ public class ForwardProxyTLSServerTest startTLSServer(new ServerHandler()); startProxy(); - HttpClient httpClient = new HttpClient(newSslContextFactory()); + HttpClient httpClient = new HttpClient(newClientSslContextFactory()); httpClient.getProxyConfiguration().getProxies().add(newHttpProxy()); httpClient.start(); @@ -265,7 +271,7 @@ public class ForwardProxyTLSServerTest startTLSServer(new ServerHandler()); startProxy(); - final HttpClient httpClient = new HttpClient(newSslContextFactory()); + final HttpClient httpClient = new HttpClient(newClientSslContextFactory()); httpClient.getProxyConfiguration().getProxies().add(newHttpProxy()); httpClient.start(); @@ -351,7 +357,7 @@ public class ForwardProxyTLSServerTest } }); - HttpClient httpClient = new HttpClient(newSslContextFactory()); + HttpClient httpClient = new HttpClient(newClientSslContextFactory()); httpClient.getProxyConfiguration().getProxies().add(newHttpProxy()); // Short idle timeout for HttpClient. httpClient.setIdleTimeout(idleTimeout); @@ -390,7 +396,7 @@ public class ForwardProxyTLSServerTest int proxyPort = proxyConnector.getLocalPort(); stopProxy(); - HttpClient httpClient = new HttpClient(newSslContextFactory()); + HttpClient httpClient = new HttpClient(newClientSslContextFactory()); httpClient.getProxyConfiguration().getProxies().add(new HttpProxy(new Origin.Address("localhost", proxyPort), proxySslContextFactory != null)); httpClient.start(); @@ -418,7 +424,7 @@ public class ForwardProxyTLSServerTest stopServer(); startProxy(); - HttpClient httpClient = new HttpClient(newSslContextFactory()); + HttpClient httpClient = new HttpClient(newClientSslContextFactory()); httpClient.getProxyConfiguration().getProxies().add(newHttpProxy()); httpClient.start(); @@ -450,7 +456,7 @@ public class ForwardProxyTLSServerTest } }); - HttpClient httpClient = new HttpClient(newSslContextFactory()); + HttpClient httpClient = new HttpClient(newClientSslContextFactory()); httpClient.getProxyConfiguration().getProxies().add(newHttpProxy()); httpClient.start(); @@ -574,7 +580,7 @@ public class ForwardProxyTLSServerTest startTLSServer(new ServerHandler()); startProxy(connectHandler); - HttpClient httpClient = new HttpClient(newSslContextFactory()); + HttpClient httpClient = new HttpClient(newClientSslContextFactory()); HttpProxy httpProxy = newHttpProxy(); if (includeAddress) httpProxy.getIncludedAddresses().add("localhost:" + serverConnector.getLocalPort()); @@ -626,7 +632,7 @@ public class ForwardProxyTLSServerTest SslContextFactory sslContextFactory = new SslContextFactory(); sslContextFactory.start(); - HttpClient httpClient = new HttpClient(newSslContextFactory()); + HttpClient httpClient = new HttpClient(newClientSslContextFactory()); httpClient.getProxyConfiguration().getProxies().add(new HttpProxy(proxyHost, proxyPort)); httpClient.start(); diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/PerMessageDeflateExtensionTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/PerMessageDeflateExtensionTest.java index d0f5f80f11b..92cdf0bf136 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/PerMessageDeflateExtensionTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/PerMessageDeflateExtensionTest.java @@ -18,11 +18,6 @@ package org.eclipse.jetty.websocket.server; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.containsString; -import static org.hamcrest.Matchers.is; -import static org.junit.jupiter.api.Assumptions.assumeTrue; - import java.nio.ByteBuffer; import java.util.ArrayList; import java.util.List; @@ -45,6 +40,11 @@ import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.Arguments; import org.junit.jupiter.params.provider.MethodSource; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.containsString; +import static org.hamcrest.Matchers.is; +import static org.junit.jupiter.api.Assumptions.assumeTrue; + public class PerMessageDeflateExtensionTest { public static Stream modes() diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SimpleServletServer.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SimpleServletServer.java index a6cb3ecd785..02525f823f0 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SimpleServletServer.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SimpleServletServer.java @@ -95,6 +95,7 @@ public class SimpleServletServer sslContextFactory.setExcludeCipherSuites("SSL_RSA_WITH_DES_CBC_SHA","SSL_DHE_RSA_WITH_DES_CBC_SHA","SSL_DHE_DSS_WITH_DES_CBC_SHA", "SSL_RSA_EXPORT_WITH_RC4_40_MD5","SSL_RSA_EXPORT_WITH_DES40_CBC_SHA","SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA", "SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA"); + sslContextFactory.setEndpointIdentificationAlgorithm(null); // SSL HTTP Configuration HttpConfiguration https_config = new HttpConfiguration(http_config); diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpChannelAssociationTest.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpChannelAssociationTest.java index d435454ec45..f90c29f24c5 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpChannelAssociationTest.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/HttpChannelAssociationTest.java @@ -18,8 +18,6 @@ package org.eclipse.jetty.http.client; -import static org.junit.jupiter.api.Assertions.assertTrue; - import java.io.IOException; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; @@ -45,10 +43,13 @@ import org.eclipse.jetty.http2.client.http.HttpConnectionOverHTTP2; import org.eclipse.jetty.io.EndPoint; import org.eclipse.jetty.unixsocket.client.HttpClientTransportOverUnixSockets; import org.eclipse.jetty.util.Promise; +import org.eclipse.jetty.util.ssl.SslContextFactory; import org.eclipse.jetty.util.thread.QueuedThreadPool; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.ArgumentsSource; +import static org.junit.jupiter.api.Assertions.assertTrue; + public class HttpChannelAssociationTest extends AbstractTest { @Override @@ -89,13 +90,15 @@ public class HttpChannelAssociationTest extends AbstractTest scenario.startServer(new EmptyServerHandler()); long idleTimeout = 1000; + SslContextFactory sslContextFactory = scenario.newSslContextFactory(); + sslContextFactory.setEndpointIdentificationAlgorithm(null); scenario.client = new HttpClient(newHttpClientTransport(scenario, exchange -> { // We idle timeout just before the association, // we must be able to send the request successfully. sleep(2 * idleTimeout); return true; - }), scenario.sslContextFactory); + }), sslContextFactory); QueuedThreadPool clientThreads = new QueuedThreadPool(); clientThreads.setName("client"); scenario.client.setExecutor(clientThreads); diff --git a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/TransportScenario.java b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/TransportScenario.java index c392ab3bf7b..8eac0207a24 100644 --- a/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/TransportScenario.java +++ b/tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/TransportScenario.java @@ -298,6 +298,8 @@ public class TransportScenario QueuedThreadPool clientThreads = new QueuedThreadPool(); clientThreads.setName("client"); clientThreads.setDetailedDump(true); + SslContextFactory sslContextFactory = newSslContextFactory(); + sslContextFactory.setEndpointIdentificationAlgorithm(null); client = newHttpClient(provideClientTransport(transport), sslContextFactory); client.setExecutor(clientThreads); client.setSocketAddressResolver(new SocketAddressResolver.Sync()); @@ -322,13 +324,7 @@ public class TransportScenario public void startServer(Handler handler) throws Exception { - sslContextFactory = new SslContextFactory(); - sslContextFactory.setKeyStorePath("src/test/resources/keystore.jks"); - sslContextFactory.setKeyStorePassword("storepwd"); - sslContextFactory.setTrustStorePath("src/test/resources/truststore.jks"); - sslContextFactory.setTrustStorePassword("storepwd"); - sslContextFactory.setUseCipherSuitesOrder(true); - sslContextFactory.setCipherComparator(HTTP2Cipher.COMPARATOR); + sslContextFactory = newSslContextFactory(); QueuedThreadPool serverThreads = new QueuedThreadPool(); serverThreads.setName("server"); serverThreads.setDetailedDump(true); @@ -356,6 +352,18 @@ public class TransportScenario } } + protected SslContextFactory newSslContextFactory() + { + SslContextFactory sslContextFactory = new SslContextFactory(); + sslContextFactory.setKeyStorePath("src/test/resources/keystore.jks"); + sslContextFactory.setKeyStorePassword("storepwd"); + sslContextFactory.setTrustStorePath("src/test/resources/truststore.jks"); + sslContextFactory.setTrustStorePassword("storepwd"); + sslContextFactory.setUseCipherSuitesOrder(true); + sslContextFactory.setCipherComparator(HTTP2Cipher.COMPARATOR); + return sslContextFactory; + } + public void stopClient() throws Exception { if (client != null) diff --git a/tests/test-integration/src/test/java/org/eclipse/jetty/test/HttpInputIntegrationTest.java b/tests/test-integration/src/test/java/org/eclipse/jetty/test/HttpInputIntegrationTest.java index d655157273d..f718cd806bb 100644 --- a/tests/test-integration/src/test/java/org/eclipse/jetty/test/HttpInputIntegrationTest.java +++ b/tests/test-integration/src/test/java/org/eclipse/jetty/test/HttpInputIntegrationTest.java @@ -18,6 +18,29 @@ package org.eclipse.jetty.test; +import java.io.IOException; +import java.io.OutputStream; +import java.net.Inet4Address; +import java.net.InetSocketAddress; +import java.net.Socket; +import java.nio.charset.StandardCharsets; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicInteger; +import java.util.stream.Stream; + +import javax.net.ssl.SSLSocket; +import javax.servlet.AsyncContext; +import javax.servlet.ReadListener; +import javax.servlet.ServletException; +import javax.servlet.ServletInputStream; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + import org.eclipse.jetty.http.HttpVersion; import org.eclipse.jetty.http2.server.HTTP2CServerConnectionFactory; import org.eclipse.jetty.server.Connector; @@ -36,9 +59,7 @@ import org.eclipse.jetty.servlet.ServletContextHandler; import org.eclipse.jetty.servlet.ServletHolder; import org.eclipse.jetty.util.BufferUtil; import org.eclipse.jetty.util.IO; -import org.eclipse.jetty.util.JavaVersion; import org.eclipse.jetty.util.ssl.SslContextFactory; -import org.hamcrest.Matchers; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.condition.DisabledOnJre; @@ -47,32 +68,9 @@ import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.Arguments; import org.junit.jupiter.params.provider.MethodSource; -import javax.net.ssl.SSLSocket; -import javax.servlet.AsyncContext; -import javax.servlet.ReadListener; -import javax.servlet.ServletException; -import javax.servlet.ServletInputStream; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.io.OutputStream; -import java.net.Inet4Address; -import java.net.InetSocketAddress; -import java.net.Socket; -import java.nio.charset.StandardCharsets; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.CountDownLatch; -import java.util.concurrent.TimeUnit; -import java.util.concurrent.atomic.AtomicInteger; -import java.util.stream.Stream; - import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.Assertions.fail; -import static org.junit.jupiter.api.Assumptions.assumeTrue; public class HttpInputIntegrationTest { @@ -107,6 +105,7 @@ public class HttpInputIntegrationTest __sslContextFactory.setKeyStorePath(jetty_distro + "/../../../jetty-server/src/test/config/etc/keystore"); __sslContextFactory.setKeyStorePassword("OBF:1vny1zlo1x8e1vnw1vn61x8g1zlu1vn4"); __sslContextFactory.setKeyManagerPassword("OBF:1u2u1wml1z7s1z7a1wnl1u2g"); + __sslContextFactory.setEndpointIdentificationAlgorithm(null); // HTTPS Configuration __sslConfig = new HttpConfiguration(__config); From 13cee0bc4d47bf3c589f4d22ed82fc16ea0ef8c0 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Thu, 31 Jan 2019 16:51:20 +0100 Subject: [PATCH 264/931] Issue #3049 - Warn on common SslContextFactory problematic configurations. Updating SslContextFactory configuration for tests, take 2. Signed-off-by: Simone Bordet --- .../osgi/test/TestJettyOSGiBootHTTP2.java | 39 +++++++----------- .../test/TestJettyOSGiBootHTTP2Conscrypt.java | 29 +++++--------- .../osgi/test/TestJettyOSGiBootHTTP2JDK9.java | 24 +++++------ .../http/client/HttpClientTimeoutTest.java | 40 +++++++++++-------- 4 files changed, 58 insertions(+), 74 deletions(-) diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2.java index 1dc807119bf..fd392d6b201 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootHTTP2.java @@ -18,13 +18,6 @@ package org.eclipse.jetty.osgi.test; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertNull; -import static org.junit.Assert.assertTrue; -import static org.ops4j.pax.exam.CoreOptions.mavenBundle; -import static org.ops4j.pax.exam.CoreOptions.systemProperty; - import java.io.File; import java.nio.file.Path; import java.nio.file.Paths; @@ -53,23 +46,26 @@ import org.osgi.framework.Bundle; import org.osgi.framework.BundleContext; import org.osgi.framework.ServiceReference; -/** - * HTTP2 setup. - */ +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; +import static org.ops4j.pax.exam.CoreOptions.mavenBundle; +import static org.ops4j.pax.exam.CoreOptions.systemProperty; + @RunWith(PaxExam.class) @ExamReactorStrategy(PerClass.class) public class TestJettyOSGiBootHTTP2 { private static final String LOG_LEVEL = "WARN"; - @Inject private BundleContext bundleContext; @Configuration public Option[] config() { - ArrayList
+ + org.eclipse.jetty + jetty-distribution + ${project.version} + zip + org.slf4j slf4j-simple diff --git a/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java b/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java index 3a29dff86fa..64ea31fac53 100644 --- a/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java +++ b/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java @@ -305,6 +305,14 @@ public class DistributionTester private String jettyVersion; private String mavenLocalRepository = System.getProperty("user.home") + "/.m2/repository"; private Map mavenRemoteRepositories = new HashMap<>(); + + @Override + public String toString() + { + return "Config{" + "jettyBase=" + jettyBase + ", jettyHome=" + jettyHome + ", jettyVersion='" + jettyVersion + + '\'' + ", mavenLocalRepository='" + mavenLocalRepository + '\'' + ", mavenRemoteRepositories=" + + mavenRemoteRepositories + '}'; + } } /** From 2d88b3b9597b3b5ffea80b60a421b0fdf948a128 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 12 Feb 2019 09:04:45 +0100 Subject: [PATCH 298/931] Issue #3343 - Add an API/tools to be able to test Jetty Distribution. Refactored streamers into class Run. Added javadocs. Moved "maven.resolver.version" to main POM for consistency. Signed-off-by: Simone Bordet --- pom.xml | 1 + tests/test-distribution/pom.xml | 7 +- .../distribution/DistributionTester.java | 216 +++++++++++------- .../tests/distribution/DistributionTests.java | 15 +- 4 files changed, 148 insertions(+), 91 deletions(-) diff --git a/pom.xml b/pom.xml index a2f6ebbe413..8a9f39dab55 100644 --- a/pom.xml +++ b/pom.xml @@ -35,6 +35,7 @@ 1.1.5 5.3.1 3.6.0 + 1.3.1 3.1.0 2.4.5.Final 1.0.5 diff --git a/tests/test-distribution/pom.xml b/tests/test-distribution/pom.xml index 81887312760..3a938007a0c 100644 --- a/tests/test-distribution/pom.xml +++ b/tests/test-distribution/pom.xml @@ -12,7 +12,6 @@ ${project.groupId}.tests.distribution - 1.3.1 @@ -43,17 +42,17 @@ org.apache.maven.resolver maven-resolver-connector-basic - ${mavenResolver.version} + ${maven.resolver.version} org.apache.maven.resolver maven-resolver-transport-file - ${mavenResolver.version} + ${maven.resolver.version} org.apache.maven.resolver maven-resolver-transport-http - ${mavenResolver.version} + ${maven.resolver.version} diff --git a/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java b/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java index 64ea31fac53..57571c4d0c0 100644 --- a/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java +++ b/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java @@ -67,14 +67,46 @@ import org.eclipse.jetty.util.log.Logger; /** *

Helper class to test the Jetty Distribution

. *

API can change without any further notice.

+ *

Usage:

+ *
+ * // Create the distribution.
+ * String jettyVersion = "9.4.14.v20181114";
+ * DistributionTester distribution = DistributionTester.Builder.newInstance()
+ *         .jettyVersion(jettyVersion)
+ *         .jettyBase(Paths.get("demo-base"))
+ *         .build();
+ *
+ * // The first run initializes the Jetty Base.
+ * try (DistributionTester.Run run1 = distribution.start("--create-startd", "--add-to-start=http2c,jsp,deploy"))
+ * {
+ *     assertTrue(run1.awaitFor(5, TimeUnit.SECONDS));
+ *     assertEquals(0, run1.getExitValue());
+ *
+ *     // Install a web application.
+ *     File war = distribution.resolveArtifact("org.eclipse.jetty.tests:test-simple-webapp:war:" + jettyVersion);
+ *     distribution.installWarFile(war, "test");
+ *
+ *     // The second run starts the distribution.
+ *     int port = 9090;
+ *     try (DistributionTester.Run run = distribution.start("jetty.http.port=" + port))
+ *     {
+ *         // Wait for Jetty to be fully started.
+ *         assertTrue(run1.awaitConsoleLogsFor("Started @", 20, TimeUnit.SECONDS));
+ *
+ *         // Make a HTTP request to the web application.
+ *         HttpClient client = new HttpClient();
+ *         client.start();
+ *         ContentResponse response = client.GET("http://localhost:" + port + "/test/index.jsp");
+ *         assertEquals(HttpStatus.OK_200, response.getStatus());
+ *     }
+ * }
+ * 
*/ public class DistributionTester { private static final Logger LOGGER = Log.getLogger(DistributionTester.class); private Config config; - private List consoleStreamers = new ArrayList<>(); - private List logs = new ArrayList<>(); private DistributionTester(Config config) { @@ -82,7 +114,7 @@ public class DistributionTester } /** - * Starts the instance with the given arguments + * Starts the distribution with the given arguments * * @param args arguments to use to start the distribution */ @@ -92,16 +124,12 @@ public class DistributionTester } /** - * Start the instance with the arguments + * Start the distribution with the arguments * * @param args arguments to use to start the distribution */ public DistributionTester.Run start(List args) throws Exception { - // do we want to be sure and use "--testing-mode" to not break surefire with a System.exit ??? - - logs.clear(); - List commands = new ArrayList<>(); commands.add(getJavaExecutable()); commands.add("-jar"); @@ -116,13 +144,14 @@ public class DistributionTester pbCmd.directory(workingDir); Process process = pbCmd.start(); - consoleStreamers.add(startPump("STDOUT", process.getInputStream())); - consoleStreamers.add(startPump("STDERR", process.getErrorStream())); - return new Run(process); } - public int randomPort() throws IOException + /** + * @return a free port chosen by the OS that can be used to listen to + * @throws IOException if a free port is not available + */ + public int freePort() throws IOException { try (ServerSocket server = new ServerSocket()) { @@ -132,6 +161,13 @@ public class DistributionTester } } + /** + * Installs in {@code ${jetty.base}/webapps} the given war file under the given context path. + * + * @param warFile the war file to install + * @param context the context path + * @throws IOException if the installation fails + */ public void installWarFile(File warFile, String context) throws IOException { //webapps @@ -142,8 +178,11 @@ public class DistributionTester } /** + * Resolves an artifact given its Maven coordinates. + * * @param coordinates :[:[:]]: * @return the artifact + * @see #installWarFile(File, String) */ public File resolveArtifact(String coordinates) throws ArtifactResolutionException { @@ -191,14 +230,6 @@ public class DistributionTester return "java"; } - private ConsoleStreamer startPump(String mode, InputStream stream) - { - ConsoleStreamer pump = new ConsoleStreamer(stream); - Thread thread = new Thread(pump, "ConsoleStreamer/" + mode); - thread.start(); - return pump; - } - private void unzip(File zipFile, File output) throws IOException { try (InputStream fileInputStream = Files.newInputStream(zipFile.toPath()); @@ -293,11 +324,6 @@ public class DistributionTester return session; } - public Path getJettyHome() - { - return config.jettyHome; - } - private static class Config { private Path jettyBase; @@ -309,51 +335,14 @@ public class DistributionTester @Override public String toString() { - return "Config{" + "jettyBase=" + jettyBase + ", jettyHome=" + jettyHome + ", jettyVersion='" + jettyVersion - + '\'' + ", mavenLocalRepository='" + mavenLocalRepository + '\'' + ", mavenRemoteRepositories=" - + mavenRemoteRepositories + '}'; - } - } - - /** - * Simple streamer for the console output from a Process - */ - private class ConsoleStreamer implements Runnable - { - private final BufferedReader reader; - private volatile boolean stop; - - public ConsoleStreamer(InputStream stream) - { - this.reader = new BufferedReader(new InputStreamReader(stream)); - } - - @Override - public void run() - { - try - { - String line; - while ((line = reader.readLine()) != null && !stop) - { - LOGGER.info("{}", line); - DistributionTester.this.logs.add(line); - } - } - catch (IOException ignore) - { - // ignore - } - finally - { - IO.close(reader); - } - } - - public void stop() - { - stop = true; - IO.close(reader); + return String.format("%s@%x{jettyBase=%s, jettyHome=%s, jettyVersion=%s, mavenLocalRepository=%s, mavenRemoteRepositories=%s}", + getClass().getSimpleName(), + hashCode(), + jettyBase, + jettyHome, + jettyVersion, + mavenLocalRepository, + mavenRemoteRepositories); } } @@ -377,17 +366,32 @@ public class DistributionTester } } - public class Run implements Closeable + /** + * A distribution run wraps the process that started the Jetty distribution. + */ + public static class Run implements Closeable { private final Process process; + private final List consoleStreamers = new ArrayList<>(); + private final List logs = new ArrayList<>(); - public Run(Process process) + private Run(Process process) { this.process = process; + consoleStreamers.add(startPump("STDOUT", process.getInputStream())); + consoleStreamers.add(startPump("STDERR", process.getErrorStream())); + } + + private ConsoleStreamer startPump(String mode, InputStream stream) + { + ConsoleStreamer pump = new ConsoleStreamer(stream); + Thread thread = new Thread(pump, "ConsoleStreamer/" + mode); + thread.start(); + return pump; } /** - * Waits for the given time for the distribution to stop. + * Waits for the given time for the distribution process to stop. * * @param time the time to wait * @param unit the unit of time @@ -402,13 +406,17 @@ public class DistributionTester return result; } - public int getExitValue() + /** + * @return the distribution process exit value + * @throws IllegalThreadStateException if the distribution process is not terminated yet + */ + public int getExitValue() throws IllegalThreadStateException { return process.exitValue(); } /** - * Stops the distribution. + * Stops the distribution process. * * @see #awaitFor(long, TimeUnit) */ @@ -418,6 +426,9 @@ public class DistributionTester stopConsoleStreamers(); } + /** + * Forcibly destroys the distribution process. + */ public void destroy() { process.destroyForcibly(); @@ -430,9 +441,7 @@ public class DistributionTester } /** - * Method to use in finally block of a test and when using @After in a unit test. - * if running, it stops the distribution. - * Cleanup JettyBase and JettyHome directories + * @see #destroy() */ @Override public void close() @@ -440,6 +449,15 @@ public class DistributionTester destroy(); } + /** + * Awaits the console logs to contain the given text, for the given amount of time. + * + * @param txt the text that must be present in the console logs + * @param time the time to wait + * @param unit the unit of time + * @return true if the text was found, false if the timeout elapsed + * @throws InterruptedException if the wait is interrupted + */ public boolean awaitConsoleLogsFor(String txt, long time, TimeUnit unit) throws InterruptedException { long end = System.nanoTime() + unit.toNanos(time); @@ -452,6 +470,48 @@ public class DistributionTester } return false; } + + /** + * Simple streamer for the console output from a Process + */ + private class ConsoleStreamer implements Runnable + { + private final BufferedReader reader; + private volatile boolean stop; + + public ConsoleStreamer(InputStream stream) + { + this.reader = new BufferedReader(new InputStreamReader(stream)); + } + + @Override + public void run() + { + try + { + String line; + while ((line = reader.readLine()) != null && !stop) + { + LOGGER.info("{}", line); + logs.add(line); + } + } + catch (IOException ignore) + { + // ignore + } + finally + { + IO.close(reader); + } + } + + public void stop() + { + stop = true; + IO.close(reader); + } + } } public static class Builder diff --git a/tests/test-distribution/src/test/java/org/eclipse/jetty/tests/distribution/DistributionTests.java b/tests/test-distribution/src/test/java/org/eclipse/jetty/tests/distribution/DistributionTests.java index 131336218ae..11718fed86f 100644 --- a/tests/test-distribution/src/test/java/org/eclipse/jetty/tests/distribution/DistributionTests.java +++ b/tests/test-distribution/src/test/java/org/eclipse/jetty/tests/distribution/DistributionTests.java @@ -53,7 +53,7 @@ public class DistributionTests extends AbstractDistributionTest assertTrue(run1.awaitFor(5, TimeUnit.SECONDS)); assertEquals(0, run1.getExitValue()); - int port = distribution.randomPort(); + int port = distribution.freePort(); try (DistributionTester.Run run2 = distribution.start("jetty.http.port=" + port)) { assertTrue(run2.awaitConsoleLogsFor("Started @", 10, TimeUnit.SECONDS)); @@ -90,7 +90,7 @@ public class DistributionTests extends AbstractDistributionTest File war = distribution.resolveArtifact("org.eclipse.jetty.tests:test-simple-webapp:war:" + jettyVersion); distribution.installWarFile(war, "test"); - int port = distribution.randomPort(); + int port = distribution.freePort(); try (DistributionTester.Run run2 = distribution.start("jetty.http.port=" + port)) { assertTrue(run2.awaitConsoleLogsFor("Started @", 10, TimeUnit.SECONDS)); @@ -127,7 +127,7 @@ public class DistributionTests extends AbstractDistributionTest File war = distribution.resolveArtifact("org.eclipse.jetty.tests:test-simple-webapp:war:" + jettyVersion); distribution.installWarFile(war, "test"); - int port = distribution.randomPort(); + int port = distribution.freePort(); String[] args2 = { "--jpms", "jetty.http.port=" + port @@ -167,7 +167,7 @@ public class DistributionTests extends AbstractDistributionTest File war = distribution.resolveArtifact("org.eclipse.jetty.tests:test-simple-webapp:war:" + jettyVersion); distribution.installWarFile(war, "test"); - int port = distribution.randomPort(); + int port = distribution.freePort(); try (DistributionTester.Run run2 = distribution.start("jetty.http.port=" + port)) { assertTrue(run2.awaitConsoleLogsFor("Started @", 10, TimeUnit.SECONDS)); @@ -192,11 +192,8 @@ public class DistributionTests extends AbstractDistributionTest .mavenLocalRepository(System.getProperty("mavenRepoPath")) .build(); - int port = distribution.randomPort(); - String[] args1 = { - "jetty.http.port=" + port - }; - try (DistributionTester.Run run1 = distribution.start(args1)) + int port = distribution.freePort(); + try (DistributionTester.Run run1 = distribution.start("jetty.http.port=" + port)) { assertTrue(run1.awaitConsoleLogsFor("Started @", 20, TimeUnit.SECONDS)); From 265cc79225faa47bd638961e98e5f7850ac686d2 Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Tue, 12 Feb 2019 18:22:39 +1000 Subject: [PATCH 299/931] jetty-distribution is test scope Signed-off-by: olivier lamy --- tests/test-distribution/pom.xml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/tests/test-distribution/pom.xml b/tests/test-distribution/pom.xml index 3a938007a0c..84002f6b15c 100644 --- a/tests/test-distribution/pom.xml +++ b/tests/test-distribution/pom.xml @@ -15,12 +15,6 @@ - - org.eclipse.jetty - jetty-distribution - ${project.version} - zip - org.slf4j slf4j-simple @@ -55,6 +49,13 @@ ${maven.resolver.version} + + org.eclipse.jetty + jetty-distribution + ${project.version} + zip + test + org.eclipse.jetty jetty-client From 6aa917080fa670b3d3056db42ef8c87ee4a847db Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 12 Feb 2019 16:15:07 +0100 Subject: [PATCH 300/931] Issue #3347 - Fix race condition between onFillable() and resume(). Renamed Suspender -> ReadState. Reworked the implementation. Signed-off-by: Simone Bordet --- .../io/AbstractWebSocketConnection.java | 57 +------ .../jetty/websocket/common/io/ReadState.java | 152 ++++++++++++++++++ .../jetty/websocket/common/io/Suspender.java | 102 ------------ .../websocket/common/io/ReadStateTest.java | 94 +++++++++++ .../websocket/common/io/SuspenderTest.java | 91 ----------- 5 files changed, 253 insertions(+), 243 deletions(-) create mode 100644 jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/ReadState.java delete mode 100644 jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/Suspender.java create mode 100644 jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/ReadStateTest.java delete mode 100644 jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/SuspenderTest.java diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java index 72f696ebc7f..9203894e1f5 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java @@ -124,7 +124,7 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp private final Generator generator; private final Parser parser; private final WebSocketPolicy policy; - private final Suspender suspender; + private final ReadState readState; private final FrameFlusher flusher; private final String id; private WebSocketSession session; @@ -145,7 +145,7 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp this.parser = new Parser(policy,bufferPool); this.scheduler = scheduler; this.extensions = new ArrayList<>(); - this.suspender = new Suspender(); + this.readState = new ReadState(); this.ioState = new IOState(); this.ioState.addListener(this); this.flusher = new Flusher(bufferPool,generator,endp); @@ -300,7 +300,7 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp @Override public boolean isReading() { - return !suspender.isSuspended(); + return readState.isReading(); } /** @@ -397,13 +397,9 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp } if (readMode == ReadMode.EOF) - { - suspender.eof(); - } - else if (!suspender.activateRequestedSuspend()) - { + readState.eof(); + else if (!readState.suspend()) fillInterested(); - } } @Override @@ -582,10 +578,8 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp @Override public void resume() { - if (suspender.requestResume()) - { + if (readState.resume()) fillInterested(); - } } /** @@ -620,7 +614,7 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp @Override public SuspendToken suspend() { - suspender.requestSuspend(); + readState.suspending(); return this; } @@ -645,43 +639,6 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp hashCode(), ioState,flusher,generator,parser); } - - @Override - public int hashCode() - { - final int prime = 31; - int result = 1; - - EndPoint endp = getEndPoint(); - if(endp != null) - { - result = prime * result + endp.getLocalAddress().hashCode(); - result = prime * result + endp.getRemoteAddress().hashCode(); - } - return result; - } - - @Override - public boolean equals(Object obj) - { - if (this == obj) - return true; - if (obj == null) - return false; - if (getClass() != obj.getClass()) - return false; - AbstractWebSocketConnection other = (AbstractWebSocketConnection)obj; - EndPoint endp = getEndPoint(); - EndPoint otherEndp = other.getEndPoint(); - if (endp == null) - { - if (otherEndp != null) - return false; - } - else if (!endp.equals(otherEndp)) - return false; - return true; - } /** * Extra bytes from the initial HTTP upgrade that need to diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/ReadState.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/ReadState.java new file mode 100644 index 00000000000..5a6d1aefb2d --- /dev/null +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/ReadState.java @@ -0,0 +1,152 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.common.io; + +import java.util.concurrent.atomic.AtomicReference; + +class ReadState +{ + private final AtomicReference state = new AtomicReference<>(State.READING); + + boolean isReading() + { + return state.get() == State.READING; + } + + boolean isSuspended() + { + State current = state.get(); + return current == State.SUSPENDED || current == State.EOF; + } + + /** + * Requests that reads from the connection be suspended when {@link #suspend()} is called. + * + * @return whether the suspending was successful + */ + boolean suspending() + { + while (true) + { + State current = state.get(); + switch (current) + { + case READING: + if (state.compareAndSet(current, State.SUSPENDING)) + return true; + break; + case EOF: + return false; + default: + throw new IllegalStateException(toString(current)); + } + } + } + + /** + * Suspends reads from the connection if {@link #suspending()} was called. + * + * @return whether reads from the connection should be suspended + */ + boolean suspend() + { + while (true) + { + State current = state.get(); + switch (current) + { + case READING: + return false; + case SUSPENDING: + if (state.compareAndSet(current, State.SUSPENDED)) + return true; + break; + case EOF: + return true; + default: + throw new IllegalStateException(toString(current)); + } + } + } + + /** + * @return true if reads from the connection were suspended and should now resume. + */ + boolean resume() + { + while (true) + { + State current = state.get(); + switch (current) + { + case SUSPENDING: + if (state.compareAndSet(current, State.READING)) + return false; + break; + case SUSPENDED: + if (state.compareAndSet(current, State.READING)) + return true; + break; + case EOF: + return false; + default: + throw new IllegalStateException(toString(current)); + } + } + } + + void eof() + { + state.set(State.EOF); + } + + private String toString(State state) + { + return String.format("%s@%x[%s]", getClass().getSimpleName(), hashCode(), state); + } + + @Override + public String toString() + { + return toString(state.get()); + } + + private enum State + { + /** + * Reading from the connection. + */ + READING, + + /** + * Suspend has been requested but not yet taken effect. + */ + SUSPENDING, + + /** + * Suspended, won't read from the connection until resumed. + */ + SUSPENDED, + + /** + * Won't read from the connection (terminal state). + */ + EOF, + } +} diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/Suspender.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/Suspender.java deleted file mode 100644 index ffaa57143ed..00000000000 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/Suspender.java +++ /dev/null @@ -1,102 +0,0 @@ -// -// ======================================================================== -// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -// - -package org.eclipse.jetty.websocket.common.io; - -import java.util.concurrent.atomic.AtomicReference; - -class Suspender -{ - private enum State - { - /** Not suspended. */ - NORMAL, - - /** Suspend requested but not yet taken effect. */ - PENDING, - - /** Suspended but resumable. */ - SUSPENDED, - - /** Permanently suspended (terminal state). */ - EOF, - } - - private final AtomicReference ref = new AtomicReference<>(State.NORMAL); - - boolean isSuspended() - { - State state = ref.get(); - return state == State.SUSPENDED || state == State.EOF; - } - - /** - * Requests that activity be suspended the next time {@link #activateRequestedSuspend()} is called. - */ - void requestSuspend() - { - // Transition NORMAL -> PENDING - State state; - do - { - state = ref.get(); - } - while (state == State.NORMAL && !ref.compareAndSet(state, State.PENDING)); - } - - /** - * Returns true if activity is suspended, whether or not it was already suspended. - */ - boolean activateRequestedSuspend() - { - // Transition PENDING -> SUSPENDED - State state; - do - { - state = ref.get(); - } - while (state == State.PENDING && !ref.compareAndSet(state, State.SUSPENDED)); - return state != State.NORMAL; - } - - /** - * Returns true if activity was suspended and should now resume. - */ - boolean requestResume() - { - // Transition PENDING|SUSPENDED -> NORMAL - State state; - do - { - state = ref.get(); - } - while ((state == State.PENDING || state == State.SUSPENDED) && !ref.compareAndSet(state, State.NORMAL)); - return state == State.SUSPENDED; - } - - void eof() - { - ref.set(State.EOF); - } - - @Override - public String toString() - { - return ref.get().toString(); - } -} diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/ReadStateTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/ReadStateTest.java new file mode 100644 index 00000000000..608f6bbe238 --- /dev/null +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/ReadStateTest.java @@ -0,0 +1,94 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.common.io; + +import org.junit.jupiter.api.Test; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; +import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.jupiter.api.Assertions.assertTrue; + +public class ReadStateTest +{ + @Test + public void testReading() + { + ReadState readState = new ReadState(); + assertThat("Initially reading", readState.isReading(), is(true)); + + assertThat("No prior suspending", readState.suspend(), is(false)); + assertThat("No prior suspending", readState.isSuspended(), is(false)); + + assertThrows(IllegalStateException.class, readState::resume, "No suspending to resume"); + assertThat("No suspending to resume", readState.isSuspended(), is(false)); + } + + @Test + public void testSuspendingThenResume() + { + ReadState readState = new ReadState(); + assertThat("Initially reading", readState.isReading(), is(true)); + + assertTrue(readState.suspending()); + assertThat("Suspending doesn't take effect immediately", readState.isSuspended(), is(false)); + + assertThat("Resume from suspending requires no followup", readState.resume(), is(false)); + assertThat("Resume from suspending requires no followup", readState.isSuspended(), is(false)); + + assertThat("Suspending was discarded", readState.suspend(), is(false)); + assertThat("Suspending was discarded", readState.isSuspended(), is(false)); + } + + @Test + public void testSuspendingThenSuspendThenResume() + { + ReadState readState = new ReadState(); + assertThat("Initially reading", readState.isReading(), is(true)); + + assertThat(readState.suspending(), is(true)); + assertThat("Suspending doesn't take effect immediately", readState.isSuspended(), is(false)); + + assertThat("Suspended", readState.suspend(), is(true)); + assertThat("Suspended", readState.isSuspended(), is(true)); + + assertThat("Resumed", readState.resume(), is(true)); + assertThat("Resumed", readState.isSuspended(), is(false)); + } + + @Test + public void testEof() + { + ReadState readState = new ReadState(); + readState.eof(); + + assertThat(readState.isReading(), is(false)); + assertThat(readState.isSuspended(), is(true)); + assertThat(readState.suspend(), is(true)); + + assertThat(readState.suspending(), is(false)); + assertThat(readState.isSuspended(), is(true)); + + assertThat(readState.suspend(), is(true)); + assertThat(readState.isSuspended(), is(true)); + + assertThat(readState.resume(), is(false)); + assertThat(readState.isSuspended(), is(true)); + } +} diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/SuspenderTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/SuspenderTest.java deleted file mode 100644 index 4d648706b8e..00000000000 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/SuspenderTest.java +++ /dev/null @@ -1,91 +0,0 @@ -// -// ======================================================================== -// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -// - -package org.eclipse.jetty.websocket.common.io; - -import static org.hamcrest.Matchers.is; -import static org.hamcrest.MatcherAssert.assertThat; - -import org.junit.jupiter.api.Test; - -public class SuspenderTest { - - @Test - public void testNotSuspended() - { - Suspender suspender = new Suspender(); - assertThat("Initially normal", suspender.isSuspended(), is(false)); - - assertThat("No pending suspend to activate", suspender.activateRequestedSuspend(), is(false)); - assertThat("No pending suspend to activate", suspender.isSuspended(), is(false)); - - assertThat("No pending suspend to resume", suspender.requestResume(), is(false)); - assertThat("No pending suspend to resume", suspender.isSuspended(), is(false)); - } - - @Test - public void testSuspendThenResume() - { - Suspender suspender = new Suspender(); - assertThat("Initially suspended", suspender.isSuspended(), is(false)); - - suspender.requestSuspend(); - assertThat("Requesting suspend doesn't take effect immediately", suspender.isSuspended(), is(false)); - - assertThat("Resume from pending requires no followup", suspender.requestResume(), is(false)); - assertThat("Resume from pending requires no followup", suspender.isSuspended(), is(false)); - - assertThat("Requested suspend was discarded", suspender.activateRequestedSuspend(), is(false)); - assertThat("Requested suspend was discarded", suspender.isSuspended(), is(false)); - } - - @Test - public void testSuspendThenActivateThenResume() - { - Suspender suspender = new Suspender(); - assertThat("Initially suspended", suspender.isSuspended(), is(false)); - - suspender.requestSuspend(); - assertThat("Requesting suspend doesn't take effect immediately", suspender.isSuspended(), is(false)); - - assertThat("Suspend activated", suspender.activateRequestedSuspend(), is(true)); - assertThat("Suspend activated", suspender.isSuspended(), is(true)); - - assertThat("Resumed", suspender.requestResume(), is(true)); - assertThat("Resumed", suspender.isSuspended(), is(false)); - } - - @Test - public void testEof() - { - Suspender suspender = new Suspender(); - suspender.eof(); - assertThat(suspender.isSuspended(), is(true)); - - assertThat(suspender.activateRequestedSuspend(), is(true)); - - suspender.requestSuspend(); - assertThat(suspender.isSuspended(), is(true)); - - assertThat(suspender.activateRequestedSuspend(), is(true)); - assertThat(suspender.isSuspended(), is(true)); - - assertThat(suspender.requestResume(), is(false)); - assertThat(suspender.isSuspended(), is(true)); - } -} From 009a4659a75c81010ccbca58419993c30871e18d Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 12 Feb 2019 19:21:43 +0100 Subject: [PATCH 301/931] Issue #3343 - Add an API/tools to be able to test Jetty Distribution. Made sure web apps are unpacked in a directory within $jetty.base to avoid cluttering /tmp. Signed-off-by: Simone Bordet --- .../jetty/tests/distribution/DistributionTester.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java b/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java index 57571c4d0c0..79a0d206210 100644 --- a/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java +++ b/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java @@ -130,18 +130,21 @@ public class DistributionTester */ public DistributionTester.Run start(List args) throws Exception { + File jettyBaseDir = config.jettyBase.toFile(); + Path workDir = Files.createDirectories(jettyBaseDir.toPath().resolve("work")); + List commands = new ArrayList<>(); commands.add(getJavaExecutable()); + commands.add("-Djava.io.tmpdir=" + workDir.toAbsolutePath().toString()); commands.add("-jar"); commands.add(config.jettyHome.toAbsolutePath() + "/start.jar"); commands.addAll(args); - File workingDir = config.jettyBase.toFile(); LOGGER.info("Executing: {}", commands); - LOGGER.info("Working Dir: {}", workingDir.getAbsolutePath()); + LOGGER.info("Working Dir: {}", jettyBaseDir.getAbsolutePath()); ProcessBuilder pbCmd = new ProcessBuilder(commands); - pbCmd.directory(workingDir); + pbCmd.directory(jettyBaseDir); Process process = pbCmd.start(); return new Run(process); From ec3adb0c11434ebae99a8e876cb30bd418a55329 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Wed, 13 Feb 2019 09:37:05 +0100 Subject: [PATCH 302/931] Issue #3350 - Do not expect to be able to connect to https URLs with the HttpClient created from a parameterless constructor. This is a regression introduced by fixing #2817. Signed-off-by: Simone Bordet --- .../src/main/java/org/eclipse/jetty/client/HttpClient.java | 6 ------ 1 file changed, 6 deletions(-) diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpClient.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpClient.java index b4b71319626..7b9fa122f93 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpClient.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpClient.java @@ -182,12 +182,6 @@ public class HttpClient extends ContainerLifeCycle { this.transport = transport; addBean(transport); - - if (sslContextFactory == null) - { - sslContextFactory = new SslContextFactory(false); - sslContextFactory.setEndpointIdentificationAlgorithm("HTTPS"); - } this.sslContextFactory = sslContextFactory; addBean(sslContextFactory); addBean(handlers); From a6c626a891004a550fcfe5efcaf47ef5734f98e6 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Wed, 13 Feb 2019 17:17:11 -0500 Subject: [PATCH 303/931] Fixing Javadoc --- .../main/java/org/eclipse/jetty/util/component/Dumpable.java | 3 +-- pom.xml | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/component/Dumpable.java b/jetty-util/src/main/java/org/eclipse/jetty/util/component/Dumpable.java index 37efb48a2e9..78229fc30ba 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/component/Dumpable.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/component/Dumpable.java @@ -24,7 +24,6 @@ import java.util.Arrays; import java.util.Collection; import java.util.Iterator; import java.util.Map; -import java.util.stream.Collectors; import java.util.stream.Stream; import org.eclipse.jetty.util.annotation.ManagedObject; @@ -46,7 +45,7 @@ public interface Dumpable * The indent should not be applied to the first object dumped. * @param out The appendable to dump to * @param indent The indent to apply after any new lines. - * @throws IOException + * @throws IOException if unable to write to Appendable */ void dump(Appendable out,String indent) throws IOException; diff --git a/pom.xml b/pom.xml index 8a9f39dab55..7f9868c0f78 100644 --- a/pom.xml +++ b/pom.xml @@ -539,8 +539,7 @@ protected com.acme.*;org.slf4j.*;org.mortbay.* - http://docs.oracle.com/javase/8/docs/api/ - http://docs.oracle.com/javaee/7/api/ + https://docs.oracle.com/javase/8/docs/api/
From 432ed1f5846da2374a6aa39687e9a33fa670ca5c Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Thu, 14 Feb 2019 07:43:17 -0500 Subject: [PATCH 304/931] Issue #3278 - changes from review with simone --- .../util/resource/ResourceCollection.java | 25 ++++++++----------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceCollection.java b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceCollection.java index 7d110be2068..a9464c8b4b9 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceCollection.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceCollection.java @@ -31,8 +31,6 @@ import java.util.List; import java.util.StringTokenizer; import org.eclipse.jetty.util.URIUtil; -import org.eclipse.jetty.util.log.Log; -import org.eclipse.jetty.util.log.Logger; /** * A collection of resources (dirs). @@ -40,13 +38,9 @@ import org.eclipse.jetty.util.log.Logger; * The first resource in the collection is the main resource. * If a resource is not found in the main resource, it looks it up in * the order the resources were constructed. - * - * - * */ public class ResourceCollection extends Resource { - private static final Logger LOG = Log.getLogger(ResourceCollection.class); private Resource[] _resources; /* ------------------------------------------------------------ */ @@ -110,7 +104,7 @@ public class ResourceCollection extends Resource for(String strResource: resources) { if(strResource == null || strResource.length() == 0) - continue; // skip null and empty string only (whitespace only is valid) + throw new IllegalStateException("empty resource path not supported"); Resource resource = Resource.newResource(strResource); assertResourceValid(resource); res.add(resource); @@ -173,11 +167,6 @@ public class ResourceCollection extends Resource List res = new ArrayList<>(); for (Resource resource : resources) { - if (resource == null) - { - continue; - } - assertResourceValid(resource); res.add(resource); } @@ -219,8 +208,9 @@ public class ResourceCollection extends Resource while(tokenizer.hasMoreTokens()) { String token = tokenizer.nextToken().trim(); - // TODO: we should not trim here, as whitespace is valid for paths - if (token == null || token.length() == 0) + // TODO: If we want to support CSV tokens with spaces then we should not trim here + // However, if we decide to to this, then CVS formatting/syntax becomes more strict. + if (token.length() == 0) continue; // skip Resource resource = Resource.newResource(token); assertResourceValid(resource); @@ -542,11 +532,18 @@ public class ResourceCollection extends Resource private void assertResourcesSet() { if (_resources == null || _resources.length == 0) + { throw new IllegalStateException("*resources* not set."); + } } private void assertResourceValid(Resource resource) { + if (resource == null) + { + throw new IllegalStateException("Null resource not supported"); + } + if (!resource.exists() || !resource.isDirectory()) { throw new IllegalArgumentException(resource + " is not an existing directory."); From a105c448567bb0faa43b3a48944e8155c716aa29 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Thu, 14 Feb 2019 07:48:05 -0500 Subject: [PATCH 305/931] Issue #3278 - code reformatting --- .../util/resource/ResourceCollection.java | 268 ++++++++++-------- 1 file changed, 145 insertions(+), 123 deletions(-) diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceCollection.java b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceCollection.java index a9464c8b4b9..bb5f4795915 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceCollection.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceCollection.java @@ -36,25 +36,23 @@ import org.eclipse.jetty.util.URIUtil; * A collection of resources (dirs). * Allows webapps to have multiple (static) sources. * The first resource in the collection is the main resource. - * If a resource is not found in the main resource, it looks it up in + * If a resource is not found in the main resource, it looks it up in * the order the resources were constructed. */ public class ResourceCollection extends Resource { private Resource[] _resources; - /* ------------------------------------------------------------ */ /** * Instantiates an empty resource collection. - * + *

* This constructor is used when configuring jetty-maven-plugin. */ public ResourceCollection() { _resources = new Resource[0]; } - - /* ------------------------------------------------------------ */ + /** * Instantiates a new resource collection. * @@ -65,25 +63,29 @@ public class ResourceCollection extends Resource List list = new ArrayList(); for (Resource r : resources) { - if (r==null) + if (r == null) + { continue; + } if (r instanceof ResourceCollection) { - for (Resource r2 : ((ResourceCollection)r).getResources()) + for (Resource r2 : ((ResourceCollection) r).getResources()) + { list.add(r2); + } } else + { list.add(r); + } } _resources = list.toArray(new Resource[list.size()]); - for(Resource r : _resources) + for (Resource r : _resources) { assertResourceValid(r); } } - - - /* ------------------------------------------------------------ */ + /** * Instantiates a new resource collection. * @@ -91,7 +93,7 @@ public class ResourceCollection extends Resource */ public ResourceCollection(String[] resources) { - if(resources == null || resources.length ==0) + if (resources == null || resources.length == 0) { _resources = null; return; @@ -101,10 +103,12 @@ public class ResourceCollection extends Resource try { - for(String strResource: resources) + for (String strResource : resources) { - if(strResource == null || strResource.length() == 0) + if (strResource == null || strResource.length() == 0) + { throw new IllegalStateException("empty resource path not supported"); + } Resource resource = Resource.newResource(strResource); assertResourceValid(resource); res.add(resource); @@ -118,17 +122,16 @@ public class ResourceCollection extends Resource _resources = res.toArray(new Resource[0]); } - catch(RuntimeException e) + catch (RuntimeException e) { throw e; } - catch(Exception e) + catch (Exception e) { throw new RuntimeException(e); } } - /* ------------------------------------------------------------ */ /** * Instantiates a new resource collection. * @@ -138,19 +141,17 @@ public class ResourceCollection extends Resource { setResourcesAsCSV(csvResources); } - - /* ------------------------------------------------------------ */ + /** * Retrieves the resource collection's resources. - * + * * @return the resource array */ public Resource[] getResources() { return _resources; } - - /* ------------------------------------------------------------ */ + /** * Sets the resource collection's resources. * @@ -180,38 +181,41 @@ public class ResourceCollection extends Resource _resources = res.toArray(new Resource[0]); } - /* ------------------------------------------------------------ */ /** * Sets the resources as string of comma-separated values. * This method should be used when configuring jetty-maven-plugin. * * @param csvResources the comma-separated string containing - * one or more resource strings. + * one or more resource strings. */ public void setResourcesAsCSV(String csvResources) { - if(csvResources == null) + if (csvResources == null) + { throw new IllegalArgumentException("CSV String is null"); + } StringTokenizer tokenizer = new StringTokenizer(csvResources, ",;"); int len = tokenizer.countTokens(); - if(len==0) + if (len == 0) { throw new IllegalArgumentException("ResourceCollection@setResourcesAsCSV(String) " + " argument must be a string containing one or more comma-separated resource strings."); } - + List res = new ArrayList<>(); - + try - { - while(tokenizer.hasMoreTokens()) + { + while (tokenizer.hasMoreTokens()) { String token = tokenizer.nextToken().trim(); // TODO: If we want to support CSV tokens with spaces then we should not trim here // However, if we decide to to this, then CVS formatting/syntax becomes more strict. if (token.length() == 0) + { continue; // skip + } Resource resource = Resource.newResource(token); assertResourceValid(resource); res.add(resource); @@ -235,63 +239,73 @@ public class ResourceCollection extends Resource throw new RuntimeException(e); } } - - /* ------------------------------------------------------------ */ + /** * @param path The path segment to add * @return The contained resource (found first) in the collection of resources */ @Override - public Resource addPath(String path) throws IOException, MalformedURLException + public Resource addPath(String path) throws IOException { assertResourcesSet(); - if(path==null) - throw new MalformedURLException(); - - if(path.length()==0 || URIUtil.SLASH.equals(path)) - return this; - - Resource resource=null; - ArrayList resources = null; - int i=0; - for(; i<_resources.length; i++) + if (path == null) { - resource = _resources[i].addPath(path); + throw new MalformedURLException(); + } + + if (path.length() == 0 || URIUtil.SLASH.equals(path)) + { + return this; + } + + Resource resource = null; + ArrayList resources = null; + int i = 0; + for (; i < _resources.length; i++) + { + resource = _resources[i].addPath(path); if (resource.exists()) { if (resource.isDirectory()) - break; + { + break; + } return resource; } - } + } - for(i++; i<_resources.length; i++) + for (i++; i < _resources.length; i++) { - Resource r = _resources[i].addPath(path); + Resource r = _resources[i].addPath(path); if (r.exists() && r.isDirectory()) { - if (resources==null) + if (resources == null) + { resources = new ArrayList<>(); - - if (resource!=null) + } + + if (resource != null) { resources.add(resource); - resource=null; + resource = null; } - + resources.add(r); } } - if (resource!=null) + if (resource != null) + { return resource; - if (resources!=null) + } + if (resources != null) + { return new ResourceCollection(resources.toArray(new Resource[0])); + } return null; } - /* ------------------------------------------------------------ */ /** * @param path the path to look for * @return the resource(file) if found, returns a list of resource dirs if its a dir, else null. @@ -302,27 +316,29 @@ public class ResourceCollection extends Resource { assertResourcesSet(); - Resource resource=null; + Resource resource = null; ArrayList resources = null; - int i=0; - for(; i<_resources.length; i++) + int i = 0; + for (; i < _resources.length; i++) { - resource = _resources[i].addPath(path); + resource = _resources[i].addPath(path); if (resource.exists()) { if (resource.isDirectory()) + { break; - + } + return resource; } - } + } - for(i++; i<_resources.length; i++) + for (i++; i < _resources.length; i++) { - Resource r = _resources[i].addPath(path); + Resource r = _resources[i].addPath(path); if (r.exists() && r.isDirectory()) { - if (resource!=null) + if (resource != null) { resources = new ArrayList<>(); resources.add(resource); @@ -330,22 +346,24 @@ public class ResourceCollection extends Resource resources.add(r); } } - - if (resource!=null) + + if (resource != null) + { return resource; - if (resources!=null) + } + if (resources != null) + { return resources; + } return null; } - - /* ------------------------------------------------------------ */ + @Override public boolean delete() throws SecurityException { throw new UnsupportedOperationException(); } - - /* ------------------------------------------------------------ */ + @Override public boolean exists() { @@ -353,83 +371,87 @@ public class ResourceCollection extends Resource return true; } - - /* ------------------------------------------------------------ */ + @Override public File getFile() throws IOException { assertResourcesSet(); - for(Resource r : _resources) + for (Resource r : _resources) { File f = r.getFile(); - if(f!=null) + if (f != null) + { return f; + } } return null; } - - /* ------------------------------------------------------------ */ + @Override public InputStream getInputStream() throws IOException { assertResourcesSet(); - for(Resource r : _resources) + for (Resource r : _resources) { InputStream is = r.getInputStream(); - if(is!=null) + if (is != null) + { return is; + } } return null; } - /* ------------------------------------------------------------ */ - @Override + @Override public ReadableByteChannel getReadableByteChannel() throws IOException { assertResourcesSet(); - for(Resource r : _resources) + for (Resource r : _resources) { ReadableByteChannel channel = r.getReadableByteChannel(); - if(channel!=null) + if (channel != null) + { return channel; + } } return null; } - - /* ------------------------------------------------------------ */ + @Override public String getName() { assertResourcesSet(); - for(Resource r : _resources) + for (Resource r : _resources) { String name = r.getName(); - if(name!=null) + if (name != null) + { return name; + } } return null; } - - /* ------------------------------------------------------------ */ + @Override public URL getURL() { assertResourcesSet(); - for(Resource r : _resources) + for (Resource r : _resources) { URL url = r.getURL(); - if(url!=null) + if (url != null) + { return url; + } } return null; } - - /* ------------------------------------------------------------ */ + @Override public boolean isDirectory() { @@ -437,93 +459,95 @@ public class ResourceCollection extends Resource return true; } - - /* ------------------------------------------------------------ */ + @Override public long lastModified() { assertResourcesSet(); - for(Resource r : _resources) + for (Resource r : _resources) { long lm = r.lastModified(); - if (lm!=-1) + if (lm != -1) + { return lm; + } } return -1; } - - /* ------------------------------------------------------------ */ + @Override public long length() { return -1; - } - - /* ------------------------------------------------------------ */ + } + /** * @return The list of resource names(merged) contained in the collection of resources. - */ + */ @Override public String[] list() { assertResourcesSet(); HashSet set = new HashSet<>(); - for(Resource r : _resources) + for (Resource r : _resources) { - for(String s : r.list()) + for (String s : r.list()) + { set.add(s); + } } - String[] result=set.toArray(new String[0]); + String[] result = set.toArray(new String[0]); Arrays.sort(result); return result; } - - /* ------------------------------------------------------------ */ + @Override public void close() { assertResourcesSet(); - for(Resource r : _resources) + for (Resource r : _resources) + { r.close(); + } } - - /* ------------------------------------------------------------ */ + @Override public boolean renameTo(Resource dest) throws SecurityException { throw new UnsupportedOperationException(); } - /* ------------------------------------------------------------ */ @Override public void copyTo(File destination) - throws IOException + throws IOException { assertResourcesSet(); - for (int r=_resources.length;r-->0;) + for (int r = _resources.length; r-- > 0; ) + { _resources[r].copyTo(destination); + } } - - /* ------------------------------------------------------------ */ + /** * @return the list of resources separated by a path separator */ @Override public String toString() { - if(_resources==null || _resources.length==0) + if (_resources == null || _resources.length == 0) + { return "[]"; - + } + return String.valueOf(Arrays.asList(_resources)); } - /* ------------------------------------------------------------ */ @Override - public boolean isContainedIn(Resource r) throws MalformedURLException + public boolean isContainedIn(Resource r) { // TODO could look at implementing the semantic of is this collection a subset of the Resource r? return false; @@ -549,6 +573,4 @@ public class ResourceCollection extends Resource throw new IllegalArgumentException(resource + " is not an existing directory."); } } - - } From 8969c9a18cd86e0eff3dd5651fe6ddb165b2ad58 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Thu, 14 Feb 2019 08:02:24 -0500 Subject: [PATCH 306/931] Issue #3278 - more cleanup based on review of older codebase with simone --- .../util/resource/ResourceCollection.java | 69 ++----------------- .../util/resource/ResourceCollectionTest.java | 45 ++++++------ 2 files changed, 28 insertions(+), 86 deletions(-) diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceCollection.java b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceCollection.java index bb5f4795915..563de253eb0 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceCollection.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/ResourceCollection.java @@ -26,6 +26,7 @@ import java.net.URL; import java.nio.channels.ReadableByteChannel; import java.util.ArrayList; import java.util.Arrays; +import java.util.Collections; import java.util.HashSet; import java.util.List; import java.util.StringTokenizer; @@ -60,7 +61,7 @@ public class ResourceCollection extends Resource */ public ResourceCollection(Resource... resources) { - List list = new ArrayList(); + List list = new ArrayList<>(); for (Resource r : resources) { if (r == null) @@ -69,17 +70,14 @@ public class ResourceCollection extends Resource } if (r instanceof ResourceCollection) { - for (Resource r2 : ((ResourceCollection) r).getResources()) - { - list.add(r2); - } + Collections.addAll(list, ((ResourceCollection) r).getResources()); } else { list.add(r); } } - _resources = list.toArray(new Resource[list.size()]); + _resources = list.toArray(new Resource[0]); for (Resource r : _resources) { assertResourceValid(r); @@ -107,7 +105,7 @@ public class ResourceCollection extends Resource { if (strResource == null || strResource.length() == 0) { - throw new IllegalStateException("empty resource path not supported"); + throw new IllegalArgumentException("empty/null resource path not supported"); } Resource resource = Resource.newResource(strResource); assertResourceValid(resource); @@ -306,58 +304,6 @@ public class ResourceCollection extends Resource return null; } - /** - * @param path the path to look for - * @return the resource(file) if found, returns a list of resource dirs if its a dir, else null. - * @throws IOException if unable to look for path - * @throws MalformedURLException if failed to look for path due to url issue - */ - protected Object findResource(String path) throws IOException, MalformedURLException - { - assertResourcesSet(); - - Resource resource = null; - ArrayList resources = null; - int i = 0; - for (; i < _resources.length; i++) - { - resource = _resources[i].addPath(path); - if (resource.exists()) - { - if (resource.isDirectory()) - { - break; - } - - return resource; - } - } - - for (i++; i < _resources.length; i++) - { - Resource r = _resources[i].addPath(path); - if (r.exists() && r.isDirectory()) - { - if (resource != null) - { - resources = new ArrayList<>(); - resources.add(resource); - } - resources.add(r); - } - } - - if (resource != null) - { - return resource; - } - if (resources != null) - { - return resources; - } - return null; - } - @Override public boolean delete() throws SecurityException { @@ -493,10 +439,7 @@ public class ResourceCollection extends Resource HashSet set = new HashSet<>(); for (Resource r : _resources) { - for (String s : r.list()) - { - set.add(s); - } + Collections.addAll(set, r.list()); } String[] result = set.toArray(new String[0]); Arrays.sort(result); diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceCollectionTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceCollectionTest.java index 9cd2da52d04..f6fa4e80afa 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceCollectionTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceCollectionTest.java @@ -23,6 +23,7 @@ import java.io.File; import java.io.InputStreamReader; import java.nio.file.Path; +import org.eclipse.jetty.toolchain.test.FS; import org.eclipse.jetty.toolchain.test.MavenTestingUtils; import org.eclipse.jetty.toolchain.test.jupiter.WorkDir; import org.eclipse.jetty.toolchain.test.jupiter.WorkDirExtension; @@ -30,6 +31,8 @@ import org.eclipse.jetty.util.IO; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.CoreMatchers.is; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertThrows; import static org.junit.jupiter.api.Assertions.assertTrue; @@ -72,11 +75,10 @@ public class ResourceCollectionTest } @Test - public void testStringArrayWithNull_ThrowsISE() + public void testStringArrayWithNull_ThrowsIAE() { - ResourceCollection coll = new ResourceCollection(new String[]{null}); - - assertThrowIllegalStateException(coll); + assertThrows(IllegalArgumentException.class, + ()-> new ResourceCollection(new String[]{null})); } @Test @@ -143,25 +145,25 @@ public class ResourceCollectionTest ResourceCollection coll = new ResourceCollection(resource); // Reset collection to invalid state - coll.setResources(new Resource[]{null,null,null}); + assertThrows(IllegalStateException.class, ()-> coll.setResources(new Resource[]{null, null, null})); - assertThrowIllegalStateException(coll); + // Ensure not modified. + assertThat(coll.getResources().length, is(1)); } private void assertThrowIllegalStateException(ResourceCollection coll) { assertThrows(IllegalStateException.class, ()->coll.addPath("foo")); - assertThrows(IllegalStateException.class, ()->coll.findResource("bar")); - assertThrows(IllegalStateException.class, ()->coll.exists()); - assertThrows(IllegalStateException.class, ()->coll.getFile()); - assertThrows(IllegalStateException.class, ()->coll.getInputStream()); - assertThrows(IllegalStateException.class, ()->coll.getReadableByteChannel()); - assertThrows(IllegalStateException.class, ()->coll.getURL()); - assertThrows(IllegalStateException.class, ()->coll.getName()); - assertThrows(IllegalStateException.class, ()->coll.isDirectory()); - assertThrows(IllegalStateException.class, ()->coll.lastModified()); - assertThrows(IllegalStateException.class, ()->coll.list()); - assertThrows(IllegalStateException.class, ()->coll.close()); + assertThrows(IllegalStateException.class, coll::exists); + assertThrows(IllegalStateException.class, coll::getFile); + assertThrows(IllegalStateException.class, coll::getInputStream); + assertThrows(IllegalStateException.class, coll::getReadableByteChannel); + assertThrows(IllegalStateException.class, coll::getURL); + assertThrows(IllegalStateException.class, coll::getName); + assertThrows(IllegalStateException.class, coll::isDirectory); + assertThrows(IllegalStateException.class, coll::lastModified); + assertThrows(IllegalStateException.class, coll::list); + assertThrows(IllegalStateException.class, coll::close); assertThrows(IllegalStateException.class, ()-> { Path destPath = workdir.getPathFile("bar"); @@ -219,11 +221,8 @@ public class ResourceCollectionTest "src/test/resources/org/eclipse/jetty/util/resource/three/" }); - File dest = File.createTempFile("copyto",null); - if (dest.exists()) - dest.delete(); - dest.mkdir(); - dest.deleteOnExit(); + File dest = MavenTestingUtils.getTargetTestingDir("copyto"); + FS.ensureDirExists(dest); rc.copyTo(dest); Resource r = Resource.newResource(dest.toURI()); @@ -241,7 +240,7 @@ public class ResourceCollectionTest static String getContent(Resource r, String path) throws Exception { StringBuilder buffer = new StringBuilder(); - String line = null; + String line; try (BufferedReader br = new BufferedReader(new InputStreamReader(r.addPath(path).getURL().openStream()))) { while((line=br.readLine())!=null) From 8dba440317f7f8f2313d7a709946f38b9425d98c Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Tue, 29 Jan 2019 11:45:06 -0600 Subject: [PATCH 307/931] Issue #3279 - WebSocket Close Refactoring + FrameFlusher "close" frames are detected during enqueue and sets the state properly for failing other frames after it + Moving away from Blockhead(Client|Server) to using actual implementations + Moved tests to /jetty-websocket-tests/ to be able to use actual impl for both sides of testcase (client and server) + Corrected FrameFlusher terminate/close to not fail the close frame itself, but only frames that arrive AFTER the close frame. + Moving WebSocketCloseTest to jetty-websocket-tests to avoid using BlockheadClient / BlockheadServer in testing + Cleanup of unnecessary modifiers on interface + Logging error if @OnWebSocketError is undeclared + IOState removed + New ConnectionState tracks connection basics in a simpler method then IOState did. + No tracking of Remote close initiated (not needed) + IncomingFrames.incomingError() removed + Session delegates to Connection for all state changes + Errors can be communicated to application multiple times + Close is only communicated once Signed-off-by: Joakim Erdfelt --- .../websocket/jsr356/AbstractJsrRemote.java | 6 +- .../websocket/jsr356/ClientContainer.java | 24 +- .../jsr356/annotations/JsrCallable.java | 2 +- .../jsr356/server/OnPartialTest.java | 17 +- .../jsr356/server/SessionTrackingTest.java | 13 +- .../samples/echo/ConfiguredEchoSocket.java | 14 +- .../echo/LargeEchoAnnotatedSocket.java | 7 + .../echo/LargeEchoConfiguredSocket.java | 6 + jetty-websocket/jetty-websocket-tests/pom.xml | 70 ++ .../tests/CloseTrackingEndpoint.java | 134 ++++ .../jetty/websocket/tests/EchoSocket.java | 35 + .../tests/client/BadNetworkTest.java | 200 ++++++ .../tests/client/ClientCloseTest.java | 483 +++++++++++++ .../client/ClientOpenSessionTracker.java | 76 ++ .../tests/client/ClientSessionsTest.java | 167 +++++ .../tests}/client/ClientWriteThread.java | 2 +- .../tests/client/SlowClientTest.java | 141 ++++ .../tests/server/AbstractCloseEndpoint.java | 76 ++ .../tests/server/ContainerEndpoint.java | 68 ++ .../tests/server/FastCloseEndpoint.java | 35 + .../tests/server/FastFailEndpoint.java | 36 + .../tests/server/ServerCloseCreator.java | 77 ++ .../tests/server/ServerCloseTest.java | 277 +++++++ .../tests/server/SlowServerEndpoint.java | 76 ++ .../tests/server/SlowServerTest.java | 140 ++++ .../test/resources/jetty-logging.properties | 21 + jetty-websocket/pom.xml | 1 + .../jetty/websocket/api/StatusCode.java | 24 +- .../jetty/websocket/api/WriteCallback.java | 4 +- .../api/extensions/IncomingFrames.java | 4 +- .../websocket/client/WebSocketClient.java | 30 +- .../client/WebSocketUpgradeRequest.java | 12 +- .../websocket/client/BadNetworkTest.java | 130 ---- .../websocket/client/ClientCloseTest.java | 673 ------------------ .../websocket/client/ServerWriteThread.java | 96 --- .../jetty/websocket/client/SessionTest.java | 135 ---- .../websocket/client/SlowClientTest.java | 133 ---- .../websocket/client/SlowServerTest.java | 160 ----- .../test/resources/jetty-logging.properties | 2 +- .../websocket/common/ConnectionState.java | 61 -- .../websocket/common/LogicalConnection.java | 102 ++- .../jetty/websocket/common/Parser.java | 2 + .../common/WebSocketRemoteEndpoint.java | 17 +- .../websocket/common/WebSocketSession.java | 355 +++------ .../common/WebSocketSessionListener.java | 26 + .../common/events/AbstractEventDriver.java | 60 +- .../websocket/common/events/EventDriver.java | 34 +- .../events/JettyAnnotatedEventDriver.java | 7 + .../common/extensions/AbstractExtension.java | 14 - .../common/extensions/ExtensionStack.java | 8 - .../identity/IdentityExtension.java | 7 - .../io/AbstractWebSocketConnection.java | 403 ++++++----- .../websocket/common/io/ConnectionState.java | 224 ++++++ .../common/io/DisconnectCallback.java | 44 ++ .../websocket/common/io/FrameFlusher.java | 76 +- .../jetty/websocket/common/io/FramePipes.java | 6 - .../jetty/websocket/common/io/IOState.java | 631 ---------------- .../scopes/DelegatedContainerScope.java | 21 +- .../common/scopes/SimpleContainerScope.java | 26 +- .../scopes/WebSocketContainerScope.java | 24 +- .../common/ClosePayloadParserTest.java | 8 +- .../common/GeneratorParserRoundtripTest.java | 11 +- .../jetty/websocket/common/ParserTest.java | 16 +- .../common/PingPayloadParserTest.java | 8 +- .../common/RFC6455ExamplesParserTest.java | 14 +- .../common/TextPayloadParserTest.java | 20 +- .../common/WebSocketRemoteEndpointTest.java | 22 +- .../websocket/common/ab/TestABCase1_1.java | 15 +- .../websocket/common/ab/TestABCase1_2.java | 14 +- .../websocket/common/ab/TestABCase2.java | 17 +- .../websocket/common/ab/TestABCase7_3.java | 13 +- .../common/events/EventDriverTest.java | 25 +- .../extensions/DummyIncomingFrames.java | 6 - .../compress/DeflateFrameExtensionTest.java | 18 +- .../common/io/ConnectionStateTest.java | 89 +++ .../websocket/common/io/FrameFlusherTest.java | 81 ++- .../websocket/common/io/IOStateTest.java | 245 ------- .../common/io/LocalWebSocketConnection.java | 170 +++-- .../common/test/BlockheadClient.java | 41 +- .../common/test/BlockheadConnection.java | 7 - .../common/test/DummyConnection.java | 60 +- .../common/test/IncomingFramesCapture.java | 53 +- .../server/WebSocketServerFactory.java | 52 +- .../websocket/server/IdleTimeoutTest.java | 10 +- .../server/ManyConnectionsCleanupTest.java | 376 ---------- .../websocket/server/SimpleServletServer.java | 4 - .../websocket/server/WebSocketCloseTest.java | 412 ----------- .../server/WebSocketProtocolTest.java | 78 +- .../jetty/websocket/server/ab/ABSocket.java | 10 + .../server/examples/echo/BigEchoSocket.java | 10 + .../websocket/server/helper/RFCSocket.java | 7 + .../server/helper/SessionSocket.java | 10 + .../misbehaving/MisbehavingClassTest.java | 28 +- .../test/resources/jetty-logging.properties | 1 + .../test/resources/jetty-logging.properties | 1 + 95 files changed, 3619 insertions(+), 4088 deletions(-) create mode 100644 jetty-websocket/jetty-websocket-tests/pom.xml create mode 100644 jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/CloseTrackingEndpoint.java create mode 100644 jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/EchoSocket.java create mode 100644 jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/BadNetworkTest.java create mode 100644 jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/ClientCloseTest.java create mode 100644 jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/ClientOpenSessionTracker.java create mode 100644 jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/ClientSessionsTest.java rename jetty-websocket/{websocket-client/src/test/java/org/eclipse/jetty/websocket => jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests}/client/ClientWriteThread.java (98%) create mode 100644 jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/SlowClientTest.java create mode 100644 jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/AbstractCloseEndpoint.java create mode 100644 jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/ContainerEndpoint.java create mode 100644 jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/FastCloseEndpoint.java create mode 100644 jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/FastFailEndpoint.java create mode 100644 jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/ServerCloseCreator.java create mode 100644 jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/ServerCloseTest.java create mode 100644 jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/SlowServerEndpoint.java create mode 100644 jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/SlowServerTest.java create mode 100644 jetty-websocket/jetty-websocket-tests/src/test/resources/jetty-logging.properties delete mode 100644 jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/BadNetworkTest.java delete mode 100644 jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ClientCloseTest.java delete mode 100644 jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ServerWriteThread.java delete mode 100644 jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SessionTest.java delete mode 100644 jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SlowClientTest.java delete mode 100644 jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SlowServerTest.java delete mode 100644 jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/ConnectionState.java create mode 100644 jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSessionListener.java create mode 100644 jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/ConnectionState.java create mode 100644 jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/DisconnectCallback.java delete mode 100644 jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/IOState.java create mode 100644 jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/ConnectionStateTest.java delete mode 100644 jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/IOStateTest.java delete mode 100644 jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ManyConnectionsCleanupTest.java delete mode 100644 jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketCloseTest.java diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/AbstractJsrRemote.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/AbstractJsrRemote.java index e24d76b98a2..84f2652318c 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/AbstractJsrRemote.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/AbstractJsrRemote.java @@ -21,7 +21,6 @@ package org.eclipse.jetty.websocket.jsr356; import java.io.IOException; import java.nio.ByteBuffer; import java.util.concurrent.Future; - import javax.websocket.EncodeException; import javax.websocket.Encoder; import javax.websocket.RemoteEndpoint; @@ -52,7 +51,10 @@ public abstract class AbstractJsrRemote implements RemoteEndpoint { StringBuilder err = new StringBuilder(); err.append("Unexpected implementation ["); - err.append(session.getRemote().getClass().getName()); + if(session.getRemote() == null) + err.append(""); + else + err.append(session.getRemote().getClass().getName()); err.append("]. Expected an instanceof ["); err.append(WebSocketRemoteEndpoint.class.getName()); err.append("]"); diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/ClientContainer.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/ClientContainer.java index 7885c22afaf..f9987809f11 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/ClientContainer.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/ClientContainer.java @@ -20,6 +20,7 @@ package org.eclipse.jetty.websocket.jsr356; import java.io.IOException; import java.net.URI; +import java.util.Collection; import java.util.HashSet; import java.util.Map; import java.util.Objects; @@ -55,6 +56,7 @@ import org.eclipse.jetty.websocket.client.ClientUpgradeRequest; import org.eclipse.jetty.websocket.client.WebSocketClient; import org.eclipse.jetty.websocket.client.io.UpgradeListener; import org.eclipse.jetty.websocket.common.WebSocketSession; +import org.eclipse.jetty.websocket.common.WebSocketSessionListener; import org.eclipse.jetty.websocket.common.scopes.DelegatedContainerScope; import org.eclipse.jetty.websocket.common.scopes.SimpleContainerScope; import org.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope; @@ -74,7 +76,7 @@ import org.eclipse.jetty.websocket.jsr356.metadata.EndpointMetadata; * This should be specific to a JVM if run in a standalone mode. or specific to a WebAppContext if running on the Jetty server. */ @ManagedObject("JSR356 Client Container") -public class ClientContainer extends ContainerLifeCycle implements WebSocketContainer, WebSocketContainerScope +public class ClientContainer extends ContainerLifeCycle implements WebSocketContainer, WebSocketContainerScope, WebSocketSessionListener { private static final Logger LOG = Log.getLogger(ClientContainer.class); @@ -138,6 +140,7 @@ public class ClientContainer extends ContainerLifeCycle implements WebSocketCont new JsrEventDriverFactory(scopeDelegate), new JsrSessionFactory(this), httpClient); + this.client.addSessionListener(this); if(jsr356TrustAll != null) { @@ -161,6 +164,7 @@ public class ClientContainer extends ContainerLifeCycle implements WebSocketCont { this.scopeDelegate = client; this.client = client; + this.client.addSessionListener(this); this.internalClient = false; this.endpointClientMetadataCache = new ConcurrentHashMap<>(); @@ -415,6 +419,24 @@ public class ClientContainer extends ContainerLifeCycle implements WebSocketCont return scopeDelegate.getSslContextFactory(); } + @Override + public void addSessionListener(WebSocketSessionListener listener) + { + client.addSessionListener(listener); + } + + @Override + public void removeSessionListener(WebSocketSessionListener listener) + { + client.removeSessionListener(listener); + } + + @Override + public Collection getSessionListeners() + { + return client.getSessionListeners(); + } + private EndpointInstance newClientEndpointInstance(Class endpointClass, ClientEndpointConfig config) { try diff --git a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrCallable.java b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrCallable.java index aac3d322b80..6125f06037b 100644 --- a/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrCallable.java +++ b/jetty-websocket/javax-websocket-client-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/annotations/JsrCallable.java @@ -160,7 +160,7 @@ public abstract class JsrCallable extends CallableMethod } catch (DecodeException e) { - session.notifyError(e); + session.close(e); } } else diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/OnPartialTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/OnPartialTest.java index 14b8e48b5e0..a73ab304b71 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/OnPartialTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/OnPartialTest.java @@ -18,17 +18,13 @@ package org.eclipse.jetty.websocket.jsr356.server; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.is; -import static org.hamcrest.Matchers.notNullValue; - import java.net.URI; import java.util.ArrayList; import java.util.List; - import javax.websocket.server.ServerEndpoint; import javax.websocket.server.ServerEndpointConfig; +import org.eclipse.jetty.io.MappedByteBufferPool; import org.eclipse.jetty.websocket.api.WebSocketPolicy; import org.eclipse.jetty.websocket.common.WebSocketFrame; import org.eclipse.jetty.websocket.common.events.EventDriver; @@ -36,9 +32,9 @@ import org.eclipse.jetty.websocket.common.events.EventDriverFactory; import org.eclipse.jetty.websocket.common.events.EventDriverImpl; import org.eclipse.jetty.websocket.common.frames.ContinuationFrame; import org.eclipse.jetty.websocket.common.frames.TextFrame; +import org.eclipse.jetty.websocket.common.io.LocalWebSocketConnection; import org.eclipse.jetty.websocket.common.scopes.SimpleContainerScope; import org.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope; -import org.eclipse.jetty.websocket.common.test.DummyConnection; import org.eclipse.jetty.websocket.jsr356.ClientContainer; import org.eclipse.jetty.websocket.jsr356.JsrSession; import org.eclipse.jetty.websocket.jsr356.annotations.AnnotatedEndpointScanner; @@ -46,6 +42,10 @@ import org.eclipse.jetty.websocket.jsr356.endpoints.EndpointInstance; import org.eclipse.jetty.websocket.jsr356.server.samples.partial.PartialTrackingSocket; import org.junit.jupiter.api.Test; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; +import static org.hamcrest.Matchers.notNullValue; + public class OnPartialTest { public EventDriver toEventDriver(Object websocket) throws Throwable @@ -78,14 +78,15 @@ public class OnPartialTest // Create Local JsrSession String id = "testSession"; URI requestURI = URI.create("ws://localhost/" + id); - DummyConnection connection = new DummyConnection(); + LocalWebSocketConnection connection = new LocalWebSocketConnection(id, new MappedByteBufferPool()); ClientContainer container = new ClientContainer(); container.start(); @SuppressWarnings("resource") - JsrSession session = new JsrSession(container,id,requestURI,driver,connection); + JsrSession session = new JsrSession(container, id, requestURI, driver, connection); session.start(); session.open(); + driver.openSession(session); return driver; } diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionTrackingTest.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionTrackingTest.java index e4ea2ec89a5..a26ab461389 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionTrackingTest.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/SessionTrackingTest.java @@ -18,13 +18,10 @@ package org.eclipse.jetty.websocket.jsr356.server; -import static org.hamcrest.MatcherAssert.assertThat; - import java.net.URI; import java.util.Set; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; - import javax.websocket.CloseReason; import javax.websocket.Endpoint; import javax.websocket.EndpointConfig; @@ -37,15 +34,17 @@ import org.eclipse.jetty.server.ServerConnector; import org.eclipse.jetty.servlet.ServletContextHandler; import org.eclipse.jetty.util.thread.QueuedThreadPool; import org.eclipse.jetty.websocket.common.WebSocketSession; +import org.eclipse.jetty.websocket.common.WebSocketSessionListener; import org.eclipse.jetty.websocket.jsr356.ClientContainer; import org.eclipse.jetty.websocket.jsr356.server.deploy.WebSocketServerContainerInitializer; import org.eclipse.jetty.websocket.server.WebSocketServerFactory; import org.hamcrest.Matchers; import org.junit.jupiter.api.AfterEach; - import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import static org.hamcrest.MatcherAssert.assertThat; + public class SessionTrackingTest { private Server server; @@ -95,16 +94,16 @@ public class SessionTrackingTest { CountDownLatch openedLatch = new CountDownLatch(2); CountDownLatch closedLatch = new CountDownLatch(2); - wsServerFactory.addSessionListener(new WebSocketSession.Listener() + wsServerFactory.addSessionListener(new WebSocketSessionListener() { @Override - public void onOpened(WebSocketSession session) + public void onSessionOpened(WebSocketSession session) { openedLatch.countDown(); } @Override - public void onClosed(WebSocketSession session) + public void onSessionClosed(WebSocketSession session) { closedLatch.countDown(); } diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/ConfiguredEchoSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/ConfiguredEchoSocket.java index 7ed1eb32a04..36c53e63cc3 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/ConfiguredEchoSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/ConfiguredEchoSocket.java @@ -25,14 +25,16 @@ import java.util.Collections; import java.util.List; import java.util.Locale; import java.util.Objects; - import javax.websocket.EndpointConfig; +import javax.websocket.OnError; import javax.websocket.OnMessage; import javax.websocket.OnOpen; import javax.websocket.Session; import javax.websocket.server.ServerEndpoint; import javax.websocket.server.ServerEndpointConfig; +import org.eclipse.jetty.util.log.Log; +import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.websocket.jsr356.server.samples.beans.DateDecoder; import org.eclipse.jetty.websocket.jsr356.server.samples.beans.TimeEncoder; @@ -47,6 +49,7 @@ import org.eclipse.jetty.websocket.jsr356.server.samples.beans.TimeEncoder; configurator = EchoSocketConfigurator.class) public class ConfiguredEchoSocket { + private static final Logger LOG = Log.getLogger(ConfiguredEchoSocket.class); private Session session; private EndpointConfig config; private ServerEndpointConfig serverConfig; @@ -62,6 +65,15 @@ public class ConfiguredEchoSocket } } + @OnError + public void onError(Throwable cause) + { + if(LOG.isDebugEnabled()) + { + LOG.debug(cause); + } + } + @OnMessage(maxMessageSize = 111222) public String echoText(String msg) { diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoAnnotatedSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoAnnotatedSocket.java index 4511d03c5bb..fd813c1f1f3 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoAnnotatedSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoAnnotatedSocket.java @@ -18,6 +18,7 @@ package org.eclipse.jetty.websocket.jsr356.server.samples.echo; +import javax.websocket.OnError; import javax.websocket.OnMessage; import javax.websocket.OnOpen; import javax.websocket.Session; @@ -43,4 +44,10 @@ public class LargeEchoAnnotatedSocket // reply with echo session.getAsyncRemote().sendText(msg); } + + @SuppressWarnings("unused") + @OnError + public void onError(Throwable cause) + { + } } diff --git a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoConfiguredSocket.java b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoConfiguredSocket.java index 87efe3a9c48..37ee9f203ed 100644 --- a/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoConfiguredSocket.java +++ b/jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/samples/echo/LargeEchoConfiguredSocket.java @@ -18,6 +18,7 @@ package org.eclipse.jetty.websocket.jsr356.server.samples.echo; +import javax.websocket.OnError; import javax.websocket.OnMessage; import javax.websocket.OnOpen; import javax.websocket.Session; @@ -44,4 +45,9 @@ public class LargeEchoConfiguredSocket // reply with echo session.getAsyncRemote().sendText(msg); } + + @OnError + public void onError(Throwable cause) + { + } } diff --git a/jetty-websocket/jetty-websocket-tests/pom.xml b/jetty-websocket/jetty-websocket-tests/pom.xml new file mode 100644 index 00000000000..174caa76e2c --- /dev/null +++ b/jetty-websocket/jetty-websocket-tests/pom.xml @@ -0,0 +1,70 @@ + + + + org.eclipse.jetty.websocket + websocket-parent + 9.4.15-SNAPSHOT + + + 4.0.0 + jetty-websocket-tests + Jetty :: Websocket :: Tests + + + ${project.groupId}.tests + + + + + + org.apache.felix + maven-bundle-plugin + true + + + generate-manifest + + manifest + + + + osgi.extender; filter:="(osgi.extender=osgi.serviceloader.registrar)";resolution:=optional + osgi.serviceloader; osgi.serviceloader=javax.servlet.ServletContainerInitializer + <_nouses>true + + + + + + + + + + + org.eclipse.jetty.websocket + websocket-client + ${project.version} + + + org.eclipse.jetty.websocket + websocket-server + ${project.version} + + + javax.servlet + javax.servlet-api + provided + + + org.eclipse.jetty + jetty-server + ${project.version} + provided + + + org.eclipse.jetty.toolchain + jetty-test-helper + test + + + diff --git a/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/CloseTrackingEndpoint.java b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/CloseTrackingEndpoint.java new file mode 100644 index 00000000000..82771b18f67 --- /dev/null +++ b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/CloseTrackingEndpoint.java @@ -0,0 +1,134 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.tests; + +import java.lang.reflect.Field; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicInteger; +import java.util.concurrent.atomic.AtomicReference; + +import org.eclipse.jetty.io.EndPoint; +import org.eclipse.jetty.util.log.Log; +import org.eclipse.jetty.util.log.Logger; +import org.eclipse.jetty.websocket.api.Session; +import org.eclipse.jetty.websocket.api.WebSocketAdapter; +import org.eclipse.jetty.websocket.common.WebSocketSession; +import org.eclipse.jetty.websocket.common.io.AbstractWebSocketConnection; +import org.hamcrest.Matcher; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.instanceOf; +import static org.hamcrest.Matchers.is; +import static org.hamcrest.Matchers.notNullValue; +import static org.hamcrest.Matchers.nullValue; + +public class CloseTrackingEndpoint extends WebSocketAdapter +{ + private static final Logger LOG = Log.getLogger(CloseTrackingEndpoint.class); + + public int closeCode = -1; + public String closeReason = null; + public CountDownLatch closeLatch = new CountDownLatch(1); + public AtomicInteger closeCount = new AtomicInteger(0); + public CountDownLatch openLatch = new CountDownLatch(1); + public CountDownLatch errorLatch = new CountDownLatch(1); + + public LinkedBlockingQueue messageQueue = new LinkedBlockingQueue<>(); + public AtomicReference error = new AtomicReference<>(); + + public void assertReceivedCloseEvent(int clientTimeoutMs, Matcher statusCodeMatcher) + throws InterruptedException + { + assertReceivedCloseEvent(clientTimeoutMs, statusCodeMatcher, null); + } + + public void assertReceivedCloseEvent(int clientTimeoutMs, Matcher statusCodeMatcher, Matcher reasonMatcher) + throws InterruptedException + { + assertThat("Client Close Event Occurred", closeLatch.await(clientTimeoutMs, TimeUnit.MILLISECONDS), is(true)); + assertThat("Client Close Event Count", closeCount.get(), is(1)); + assertThat("Client Close Event Status Code", closeCode, statusCodeMatcher); + if (reasonMatcher == null) + { + assertThat("Client Close Event Reason", closeReason, nullValue()); + } + else + { + assertThat("Client Close Event Reason", closeReason, reasonMatcher); + } + } + + public void clearQueues() + { + messageQueue.clear(); + } + + @Override + public void onWebSocketClose(int statusCode, String reason) + { + LOG.debug("onWebSocketClose({},{})", statusCode, reason); + super.onWebSocketClose(statusCode, reason); + closeCount.incrementAndGet(); + closeCode = statusCode; + closeReason = reason; + closeLatch.countDown(); + } + + @Override + public void onWebSocketConnect(Session session) + { + LOG.debug("onWebSocketConnect({})", session); + super.onWebSocketConnect(session); + openLatch.countDown(); + } + + @Override + public void onWebSocketError(Throwable cause) + { + LOG.debug("onWebSocketError", cause); + assertThat("Unique Error Event", error.compareAndSet(null, cause), is(true)); + errorLatch.countDown(); + } + + @Override + public void onWebSocketText(String message) + { + LOG.debug("onWebSocketText({})", message); + messageQueue.offer(message); + } + + public EndPoint getEndPoint() throws Exception + { + Session session = getSession(); + assertThat("Session type", session, instanceOf(WebSocketSession.class)); + + WebSocketSession wssession = (WebSocketSession) session; + Field fld = wssession.getClass().getDeclaredField("connection"); + fld.setAccessible(true); + assertThat("Field: connection", fld, notNullValue()); + + Object val = fld.get(wssession); + assertThat("Connection type", val, instanceOf(AbstractWebSocketConnection.class)); + @SuppressWarnings("resource") + AbstractWebSocketConnection wsconn = (AbstractWebSocketConnection) val; + return wsconn.getEndPoint(); + } +} diff --git a/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/EchoSocket.java b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/EchoSocket.java new file mode 100644 index 00000000000..4908c6cb29c --- /dev/null +++ b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/EchoSocket.java @@ -0,0 +1,35 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.tests; + +import java.io.IOException; + +import org.eclipse.jetty.websocket.api.Session; +import org.eclipse.jetty.websocket.api.annotations.OnWebSocketMessage; +import org.eclipse.jetty.websocket.api.annotations.WebSocket; + +@WebSocket +public class EchoSocket +{ + @OnWebSocketMessage + public void onMessage(Session session, String msg) throws IOException + { + session.getRemote().sendString(msg); + } +} diff --git a/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/BadNetworkTest.java b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/BadNetworkTest.java new file mode 100644 index 00000000000..b522323da01 --- /dev/null +++ b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/BadNetworkTest.java @@ -0,0 +1,200 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.tests.client; + +import java.io.IOException; +import java.net.URI; +import java.util.concurrent.Future; +import java.util.concurrent.TimeUnit; + +import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.server.ServerConnector; +import org.eclipse.jetty.server.handler.DefaultHandler; +import org.eclipse.jetty.server.handler.HandlerList; +import org.eclipse.jetty.servlet.ServletContextHandler; +import org.eclipse.jetty.servlet.ServletHolder; +import org.eclipse.jetty.util.log.Log; +import org.eclipse.jetty.util.log.Logger; +import org.eclipse.jetty.websocket.api.Session; +import org.eclipse.jetty.websocket.api.StatusCode; +import org.eclipse.jetty.websocket.api.WebSocketListener; +import org.eclipse.jetty.websocket.api.util.WSURI; +import org.eclipse.jetty.websocket.client.WebSocketClient; +import org.eclipse.jetty.websocket.servlet.WebSocketServlet; +import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; +import org.eclipse.jetty.websocket.tests.CloseTrackingEndpoint; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import static org.hamcrest.Matchers.containsString; +import static org.hamcrest.Matchers.is; + +/** + * Tests for conditions due to bad networking. + */ +public class BadNetworkTest +{ + private Server server; + private WebSocketClient client; + + @BeforeEach + public void startClient() throws Exception + { + client = new WebSocketClient(); + client.getPolicy().setIdleTimeout(500); + client.start(); + } + + @BeforeEach + public void startServer() throws Exception + { + server = new Server(); + + ServerConnector connector = new ServerConnector(server); + connector.setPort(0); + server.addConnector(connector); + + ServletContextHandler context = new ServletContextHandler(); + context.setContextPath("/"); + ServletHolder holder = new ServletHolder(new WebSocketServlet() + { + @Override + public void configure(WebSocketServletFactory factory) + { + factory.getPolicy().setIdleTimeout(10000); + factory.getPolicy().setMaxTextMessageSize(1024 * 1024 * 2); + factory.register(ServerEndpoint.class); + } + }); + context.addServlet(holder, "/ws"); + + HandlerList handlers = new HandlerList(); + handlers.addHandler(context); + handlers.addHandler(new DefaultHandler()); + server.setHandler(handlers); + + server.start(); + } + + @AfterEach + public void stopClient() throws Exception + { + client.stop(); + } + + @AfterEach + public void stopServer() throws Exception + { + server.stop(); + } + + @Test + public void testAbruptClientClose() throws Exception + { + CloseTrackingEndpoint wsocket = new CloseTrackingEndpoint(); + + URI wsUri = WSURI.toWebsocket(server.getURI().resolve("/ws")); + Future future = client.connect(wsocket,wsUri); + + // Validate that we are connected + future.get(30,TimeUnit.SECONDS); + + // Have client disconnect abruptly + Session session = wsocket.getSession(); + session.disconnect(); + + // Client Socket should see a close event, with status NO_CLOSE + // This event is automatically supplied by the underlying WebSocketClientConnection + // in the situation of a bad network connection. + wsocket.assertReceivedCloseEvent(5000, is(StatusCode.NO_CLOSE), containsString("")); + } + + @Test + public void testAbruptServerClose() throws Exception + { + CloseTrackingEndpoint wsocket = new CloseTrackingEndpoint(); + + URI wsUri = WSURI.toWebsocket(server.getURI().resolve("/ws")); + Future future = client.connect(wsocket,wsUri); + + // Validate that we are connected + Session session = future.get(30, TimeUnit.SECONDS); + + // Have server disconnect abruptly + session.getRemote().sendString("abort"); + + // Client Socket should see a close event, with status NO_CLOSE + // This event is automatically supplied by the underlying WebSocketClientConnection + // in the situation of a bad network connection. + wsocket.assertReceivedCloseEvent(5000, is(StatusCode.NO_CLOSE), containsString("")); + } + + public static class ServerEndpoint implements WebSocketListener + { + private static final Logger LOG = Log.getLogger(ClientCloseTest.ServerEndpoint.class); + private Session session; + + @Override + public void onWebSocketBinary(byte[] payload, int offset, int len) + { + } + + @Override + public void onWebSocketText(String message) + { + try + { + if (message.equals("abort")) + { + session.disconnect(); + } + else + { + // simple echo + session.getRemote().sendString(message); + } + } + catch (IOException e) + { + LOG.warn(e); + } + } + + @Override + public void onWebSocketClose(int statusCode, String reason) + { + } + + @Override + public void onWebSocketConnect(Session session) + { + this.session = session; + } + + @Override + public void onWebSocketError(Throwable cause) + { + if (LOG.isDebugEnabled()) + { + LOG.debug(cause); + } + } + } +} diff --git a/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/ClientCloseTest.java b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/ClientCloseTest.java new file mode 100644 index 00000000000..24b582e4277 --- /dev/null +++ b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/ClientCloseTest.java @@ -0,0 +1,483 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.tests.client; + + +import java.io.IOException; +import java.net.URI; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.concurrent.Future; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.TimeoutException; + +import org.eclipse.jetty.io.EndPoint; +import org.eclipse.jetty.io.EofException; +import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.server.ServerConnector; +import org.eclipse.jetty.server.handler.DefaultHandler; +import org.eclipse.jetty.server.handler.HandlerList; +import org.eclipse.jetty.servlet.ServletContextHandler; +import org.eclipse.jetty.servlet.ServletHolder; +import org.eclipse.jetty.util.log.Log; +import org.eclipse.jetty.util.log.Logger; +import org.eclipse.jetty.websocket.api.CloseException; +import org.eclipse.jetty.websocket.api.MessageTooLargeException; +import org.eclipse.jetty.websocket.api.Session; +import org.eclipse.jetty.websocket.api.StatusCode; +import org.eclipse.jetty.websocket.api.WebSocketFrameListener; +import org.eclipse.jetty.websocket.api.WebSocketListener; +import org.eclipse.jetty.websocket.api.extensions.Frame; +import org.eclipse.jetty.websocket.api.util.WSURI; +import org.eclipse.jetty.websocket.client.WebSocketClient; +import org.eclipse.jetty.websocket.common.CloseInfo; +import org.eclipse.jetty.websocket.common.OpCode; +import org.eclipse.jetty.websocket.servlet.WebSocketServlet; +import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; +import org.eclipse.jetty.websocket.tests.CloseTrackingEndpoint; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import static java.nio.charset.StandardCharsets.UTF_8; +import static java.time.Duration.ofSeconds; +import static java.util.concurrent.TimeUnit.SECONDS; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.containsString; +import static org.hamcrest.Matchers.instanceOf; +import static org.hamcrest.Matchers.is; +import static org.hamcrest.Matchers.nullValue; +import static org.junit.jupiter.api.Assertions.assertTimeoutPreemptively; + +public class ClientCloseTest +{ + private Server server; + private WebSocketClient client; + + private Session confirmConnection(CloseTrackingEndpoint clientSocket, Future clientFuture) throws Exception + { + // Wait for client connect on via future + Session session = clientFuture.get(30, SECONDS); + + try + { + // Send message from client to server + final String echoMsg = "echo-test"; + Future testFut = clientSocket.getRemote().sendStringByFuture(echoMsg); + + // Wait for send future + testFut.get(5, SECONDS); + + // Verify received message + String recvMsg = clientSocket.messageQueue.poll(5, SECONDS); + assertThat("Received message", recvMsg, is(echoMsg)); + + // Verify that there are no errors + assertThat("Error events", clientSocket.error.get(), nullValue()); + } + finally + { + clientSocket.clearQueues(); + } + + return session; + } + + @BeforeEach + public void startClient() throws Exception + { + client = new WebSocketClient(); + client.setMaxTextMessageBufferSize(1024); + client.getPolicy().setMaxTextMessageSize(1024); + client.start(); + } + + @BeforeEach + public void startServer() throws Exception + { + server = new Server(); + + ServerConnector connector = new ServerConnector(server); + connector.setPort(0); + server.addConnector(connector); + + ServletContextHandler context = new ServletContextHandler(); + context.setContextPath("/"); + ServletHolder holder = new ServletHolder(new WebSocketServlet() + { + @Override + public void configure(WebSocketServletFactory factory) + { + factory.getPolicy().setIdleTimeout(10000); + factory.getPolicy().setMaxTextMessageSize(1024 * 1024 * 2); + factory.register(ServerEndpoint.class); + } + }); + context.addServlet(holder, "/ws"); + + HandlerList handlers = new HandlerList(); + handlers.addHandler(context); + handlers.addHandler(new DefaultHandler()); + server.setHandler(handlers); + + server.start(); + } + + @AfterEach + public void stopClient() throws Exception + { + client.stop(); + } + + @AfterEach + public void stopServer() throws Exception + { + server.stop(); + } + + @Test + public void testHalfClose() throws Exception + { + // Set client timeout + final int timeout = 5000; + client.setMaxIdleTimeout(timeout); + + ClientOpenSessionTracker clientSessionTracker = new ClientOpenSessionTracker(1); + clientSessionTracker.addTo(client); + + // Client connects + URI wsUri = WSURI.toWebsocket(server.getURI().resolve("/ws")); + CloseTrackingEndpoint clientSocket = new CloseTrackingEndpoint(); + Future clientConnectFuture = client.connect(clientSocket, wsUri); + + try (Session session = confirmConnection(clientSocket, clientConnectFuture)) + { + // client confirms connection via echo + + // client sends close frame (code 1000, normal) + final String origCloseReason = "send-more-frames"; + clientSocket.getSession().close(StatusCode.NORMAL, origCloseReason); + + // Verify received messages + String recvMsg = clientSocket.messageQueue.poll(5, SECONDS); + assertThat("Received message 1", recvMsg, is("Hello")); + recvMsg = clientSocket.messageQueue.poll(5, SECONDS); + assertThat("Received message 2", recvMsg, is("World")); + + // Verify that there are no errors + assertThat("Error events", clientSocket.error.get(), nullValue()); + + // client close event on ws-endpoint + clientSocket.assertReceivedCloseEvent(timeout, is(StatusCode.NORMAL), containsString("")); + } + + clientSessionTracker.assertClosedProperly(client); + } + + @Test + public void testMessageTooLargeException() throws Exception + { + // Set client timeout + final int timeout = 3000; + client.setMaxIdleTimeout(timeout); + + ClientOpenSessionTracker clientSessionTracker = new ClientOpenSessionTracker(1); + clientSessionTracker.addTo(client); + + // Client connects + URI wsUri = WSURI.toWebsocket(server.getURI().resolve("/ws")); + CloseTrackingEndpoint clientSocket = new CloseTrackingEndpoint(); + Future clientConnectFuture = client.connect(clientSocket, wsUri); + + try (Session session = confirmConnection(clientSocket, clientConnectFuture)) + { + // client confirms connection via echo + + session.getRemote().sendString("too-large-message"); + + clientSocket.assertReceivedCloseEvent(timeout, is(StatusCode.MESSAGE_TOO_LARGE), containsString("exceeds maximum size")); + + // client should have noticed the error + assertThat("OnError Latch", clientSocket.errorLatch.await(2, SECONDS), is(true)); + assertThat("OnError", clientSocket.error.get(), instanceOf(MessageTooLargeException.class)); + } + + // client triggers close event on client ws-endpoint + clientSessionTracker.assertClosedProperly(client); + } + + @Test + public void testRemoteDisconnect() throws Exception + { + // Set client timeout + final int clientTimeout = 1000; + client.setMaxIdleTimeout(clientTimeout); + + ClientOpenSessionTracker clientSessionTracker = new ClientOpenSessionTracker(1); + clientSessionTracker.addTo(client); + + // Client connects + URI wsUri = WSURI.toWebsocket(server.getURI().resolve("/ws")); + CloseTrackingEndpoint clientSocket = new CloseTrackingEndpoint(); + Future clientConnectFuture = client.connect(clientSocket, wsUri); + + try (Session ignored = confirmConnection(clientSocket, clientConnectFuture)) + { + // client confirms connection via echo + + // client sends close frame (triggering server connection abort) + final String origCloseReason = "abort"; + clientSocket.getSession().close(StatusCode.NORMAL, origCloseReason); + + // client reads -1 (EOF) + // client triggers close event on client ws-endpoint + clientSocket.assertReceivedCloseEvent(clientTimeout * 2, + is(StatusCode.SHUTDOWN), + containsString("timeout")); + } + + clientSessionTracker.assertClosedProperly(client); + } + + @Test + public void testServerNoCloseHandshake() throws Exception + { + // Set client timeout + final int clientTimeout = 1000; + client.setMaxIdleTimeout(clientTimeout); + + ClientOpenSessionTracker clientSessionTracker = new ClientOpenSessionTracker(1); + clientSessionTracker.addTo(client); + + // Client connects + URI wsUri = WSURI.toWebsocket(server.getURI().resolve("/ws")); + CloseTrackingEndpoint clientSocket = new CloseTrackingEndpoint(); + Future clientConnectFuture = client.connect(clientSocket, wsUri); + + try (Session ignored = confirmConnection(clientSocket, clientConnectFuture)) + { + // client confirms connection via echo + + // client sends close frame + final String origCloseReason = "sleep|5000"; + clientSocket.getSession().close(StatusCode.NORMAL, origCloseReason); + + // client close should occur + clientSocket.assertReceivedCloseEvent(clientTimeout * 2, + is(StatusCode.SHUTDOWN), + containsString("timeout")); + + // client idle timeout triggers close event on client ws-endpoint + assertThat("OnError Latch", clientSocket.errorLatch.await(2, SECONDS), is(true)); + assertThat("OnError", clientSocket.error.get(), instanceOf(CloseException.class)); + assertThat("OnError.cause", clientSocket.error.get().getCause(), instanceOf(TimeoutException.class)); + } + + clientSessionTracker.assertClosedProperly(client); + } + + @Test + public void testStopLifecycle() throws Exception + { + // Set client timeout + final int timeout = 1000; + client.setMaxIdleTimeout(timeout); + + int sessionCount = 3; + ClientOpenSessionTracker clientSessionTracker = new ClientOpenSessionTracker(sessionCount); + clientSessionTracker.addTo(client); + + URI wsUri = WSURI.toWebsocket(server.getURI().resolve("/ws")); + List clientSockets = new ArrayList<>(); + + // Open Multiple Clients + for (int i = 0; i < sessionCount; i++) + { + // Client Request Upgrade + CloseTrackingEndpoint clientSocket = new CloseTrackingEndpoint(); + clientSockets.add(clientSocket); + Future clientConnectFuture = client.connect(clientSocket, wsUri); + + // client confirms connection via echo + confirmConnection(clientSocket, clientConnectFuture); + } + + assertTimeoutPreemptively(ofSeconds(5), () -> { + // client lifecycle stop (the meat of this test) + client.stop(); + }); + + // clients disconnect + for (int i = 0; i < sessionCount; i++) + { + clientSockets.get(i).assertReceivedCloseEvent(timeout, is(StatusCode.ABNORMAL), containsString("Disconnected")); + } + + // ensure all Sessions are gone. connections are gone. etc. (client and server) + // ensure ConnectionListener onClose is called 3 times + clientSessionTracker.assertClosedProperly(client); + } + + @Test + public void testWriteException() throws Exception + { + // Set client timeout + final int timeout = 2000; + client.setMaxIdleTimeout(timeout); + + ClientOpenSessionTracker clientSessionTracker = new ClientOpenSessionTracker(1); + clientSessionTracker.addTo(client); + + // Client connects + URI wsUri = WSURI.toWebsocket(server.getURI().resolve("/ws")); + CloseTrackingEndpoint clientSocket = new CloseTrackingEndpoint(); + Future clientConnectFuture = client.connect(clientSocket, wsUri); + + // client confirms connection via echo + confirmConnection(clientSocket, clientConnectFuture); + + // setup client endpoint for write failure (test only) + EndPoint endp = clientSocket.getEndPoint(); + endp.shutdownOutput(); + + // TODO: race condition. Client CLOSE actions racing SERVER close actions. +// SECONDS.sleep(1); // let server detect EOF and respond + + // client enqueue close frame + // should result in a client write failure + final String origCloseReason = "Normal Close from Client"; + clientSocket.getSession().close(StatusCode.NORMAL, origCloseReason); + + assertThat("OnError Latch", clientSocket.errorLatch.await(2, SECONDS), is(true)); + assertThat("OnError", clientSocket.error.get(), instanceOf(EofException.class)); + + // client triggers close event on client ws-endpoint + // assert - close code==1006 (abnormal) + clientSocket.assertReceivedCloseEvent(timeout, is(StatusCode.ABNORMAL), containsString("Eof")); + + clientSessionTracker.assertClosedProperly(client); + } + + public static class ServerEndpoint implements WebSocketFrameListener, WebSocketListener + { + private static final Logger LOG = Log.getLogger(ServerEndpoint.class); + private Session session; + + @Override + public void onWebSocketBinary(byte[] payload, int offset, int len) + { + } + + @Override + public void onWebSocketText(String message) + { + try + { + if (message.equals("too-large-message")) + { + // send extra large message + byte[] buf = new byte[1024 * 1024]; + Arrays.fill(buf, (byte) 'x'); + String bigmsg = new String(buf, UTF_8); + session.getRemote().sendString(bigmsg); + } + else + { + // simple echo + session.getRemote().sendString(message); + } + } + catch (IOException ignore) + { + LOG.debug(ignore); + } + } + + @Override + public void onWebSocketClose(int statusCode, String reason) + { + } + + @Override + public void onWebSocketConnect(Session session) + { + this.session = session; + } + + @Override + public void onWebSocketError(Throwable cause) + { + if (LOG.isDebugEnabled()) + { + LOG.debug(cause); + } + } + + @Override + public void onWebSocketFrame(Frame frame) + { + if (frame.getOpCode() == OpCode.CLOSE) + { + CloseInfo closeInfo = new CloseInfo(frame); + String reason = closeInfo.getReason(); + + if (reason.equals("send-more-frames")) + { + try + { + session.getRemote().sendString("Hello"); + session.getRemote().sendString("World"); + } + catch (Throwable ignore) + { + LOG.debug("OOPS", ignore); + } + } + else if (reason.equals("abort")) + { + try + { + SECONDS.sleep(1); + LOG.info("Server aborting session abruptly"); + session.disconnect(); + } + catch (Throwable ignore) + { + LOG.ignore(ignore); + } + } + else if (reason.startsWith("sleep|")) + { + int idx = reason.indexOf('|'); + int timeMs = Integer.parseInt(reason.substring(idx + 1)); + try + { + LOG.info("Server Sleeping for {} ms", timeMs); + TimeUnit.MILLISECONDS.sleep(timeMs); + } + catch (InterruptedException ignore) + { + LOG.ignore(ignore); + } + } + } + } + } +} \ No newline at end of file diff --git a/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/ClientOpenSessionTracker.java b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/ClientOpenSessionTracker.java new file mode 100644 index 00000000000..07f03bc248c --- /dev/null +++ b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/ClientOpenSessionTracker.java @@ -0,0 +1,76 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.tests.client; + +import java.util.concurrent.CountDownLatch; + +import org.eclipse.jetty.io.Connection; +import org.eclipse.jetty.websocket.client.WebSocketClient; +import org.eclipse.jetty.websocket.common.WebSocketSession; +import org.eclipse.jetty.websocket.common.WebSocketSessionListener; + +import static java.util.concurrent.TimeUnit.SECONDS; +import static org.junit.jupiter.api.Assertions.assertTrue; + +public class ClientOpenSessionTracker implements Connection.Listener, WebSocketSessionListener +{ + private final CountDownLatch closeSessionLatch; + private final CountDownLatch closeConnectionLatch; + + public ClientOpenSessionTracker(int expectedSessions) + { + this.closeSessionLatch = new CountDownLatch(expectedSessions); + this.closeConnectionLatch = new CountDownLatch(expectedSessions); + } + + public void addTo(WebSocketClient client) + { + client.addSessionListener(this); + client.addBean(this); + } + + public void assertClosedProperly(WebSocketClient client) throws InterruptedException + { + assertTrue(closeConnectionLatch.await(5, SECONDS), "All Jetty Connections should have been closed"); + assertTrue(closeSessionLatch.await(5, SECONDS), "All WebSocket Sessions should have been closed"); + assertTrue(client.getOpenSessions().isEmpty(), "Client OpenSessions MUST be empty"); + } + + @Override + public void onOpened(Connection connection) + { + } + + @Override + public void onClosed(Connection connection) + { + this.closeConnectionLatch.countDown(); + } + + @Override + public void onSessionOpened(WebSocketSession session) + { + } + + @Override + public void onSessionClosed(WebSocketSession session) + { + this.closeSessionLatch.countDown(); + } +} diff --git a/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/ClientSessionsTest.java b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/ClientSessionsTest.java new file mode 100644 index 00000000000..8ce7e34a8da --- /dev/null +++ b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/ClientSessionsTest.java @@ -0,0 +1,167 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.tests.client; + +import java.net.URI; +import java.util.Collection; +import java.util.Set; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.Future; +import java.util.concurrent.TimeUnit; + +import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.server.ServerConnector; +import org.eclipse.jetty.server.handler.DefaultHandler; +import org.eclipse.jetty.server.handler.HandlerList; +import org.eclipse.jetty.servlet.ServletContextHandler; +import org.eclipse.jetty.servlet.ServletHolder; +import org.eclipse.jetty.websocket.api.RemoteEndpoint; +import org.eclipse.jetty.websocket.api.Session; +import org.eclipse.jetty.websocket.api.StatusCode; +import org.eclipse.jetty.websocket.api.util.WSURI; +import org.eclipse.jetty.websocket.client.ClientUpgradeRequest; +import org.eclipse.jetty.websocket.client.WebSocketClient; +import org.eclipse.jetty.websocket.common.WebSocketSession; +import org.eclipse.jetty.websocket.common.WebSocketSessionListener; +import org.eclipse.jetty.websocket.servlet.WebSocketServlet; +import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; +import org.eclipse.jetty.websocket.tests.CloseTrackingEndpoint; +import org.eclipse.jetty.websocket.tests.EchoSocket; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.containsString; +import static org.hamcrest.Matchers.is; +import static org.hamcrest.Matchers.notNullValue; +import static org.junit.jupiter.api.Assertions.assertTrue; + +public class ClientSessionsTest +{ + private Server server; + + @BeforeEach + public void startServer() throws Exception + { + server = new Server(); + + ServerConnector connector = new ServerConnector(server); + connector.setPort(0); + server.addConnector(connector); + + ServletContextHandler context = new ServletContextHandler(); + context.setContextPath("/"); + ServletHolder holder = new ServletHolder(new WebSocketServlet() + { + @Override + public void configure(WebSocketServletFactory factory) + { + factory.getPolicy().setIdleTimeout(10000); + factory.getPolicy().setMaxTextMessageSize(1024 * 1024 * 2); + factory.register(EchoSocket.class); + } + }); + context.addServlet(holder, "/ws"); + + HandlerList handlers = new HandlerList(); + handlers.addHandler(context); + handlers.addHandler(new DefaultHandler()); + server.setHandler(handlers); + + server.start(); + } + + @AfterEach + public void stopServer() throws Exception + { + server.stop(); + } + + @Test + public void testBasicEcho_FromClient() throws Exception + { + WebSocketClient client = new WebSocketClient(); + + CountDownLatch onSessionCloseLatch = new CountDownLatch(1); + + client.addSessionListener(new WebSocketSessionListener() { + @Override + public void onSessionOpened(WebSocketSession session) + { + } + + @Override + public void onSessionClosed(WebSocketSession session) + { + onSessionCloseLatch.countDown(); + } + }); + + client.start(); + try + { + CloseTrackingEndpoint cliSock = new CloseTrackingEndpoint(); + client.getPolicy().setIdleTimeout(10000); + + URI wsUri = WSURI.toWebsocket(server.getURI().resolve("/ws")); + ClientUpgradeRequest request = new ClientUpgradeRequest(); + request.setSubProtocols("echo"); + Future future = client.connect(cliSock,wsUri,request); + Session sess = null; + + try + { + sess = future.get(30000, TimeUnit.MILLISECONDS); + assertThat("Session", sess, notNullValue()); + assertThat("Session.open", sess.isOpen(), is(true)); + assertThat("Session.upgradeRequest", sess.getUpgradeRequest(), notNullValue()); + assertThat("Session.upgradeResponse", sess.getUpgradeResponse(), notNullValue()); + + Collection sessions = client.getBeans(WebSocketSession.class); + assertThat("client.connectionManager.sessions.size", sessions.size(), is(1)); + + RemoteEndpoint remote = sess.getRemote(); + remote.sendString("Hello World!"); + + Set open = client.getOpenSessions(); + assertThat("(Before Close) Open Sessions.size", open.size(), is(1)); + + String received = cliSock.messageQueue.poll(5, TimeUnit.SECONDS); + assertThat("Message", received, containsString("Hello World!")); + } + finally + { + cliSock.getSession().close(); + } + + cliSock.assertReceivedCloseEvent(30000, is(StatusCode.NORMAL)); + + assertTrue(onSessionCloseLatch.await(5, TimeUnit.SECONDS), "Saw onSessionClose events"); + TimeUnit.SECONDS.sleep(1); + + Set open = client.getOpenSessions(); + assertThat("(After Close) Open Sessions.size", open.size(), is(0)); + } + finally + { + client.stop(); + } + } +} diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ClientWriteThread.java b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/ClientWriteThread.java similarity index 98% rename from jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ClientWriteThread.java rename to jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/ClientWriteThread.java index c67dc50f27a..f33bae18c69 100644 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ClientWriteThread.java +++ b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/ClientWriteThread.java @@ -16,7 +16,7 @@ // ======================================================================== // -package org.eclipse.jetty.websocket.client; +package org.eclipse.jetty.websocket.tests.client; import java.util.concurrent.Future; import java.util.concurrent.TimeUnit; diff --git a/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/SlowClientTest.java b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/SlowClientTest.java new file mode 100644 index 00000000000..27045eb17aa --- /dev/null +++ b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/SlowClientTest.java @@ -0,0 +1,141 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.tests.client; + +import java.net.URI; +import java.util.concurrent.Future; + +import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.server.ServerConnector; +import org.eclipse.jetty.server.handler.DefaultHandler; +import org.eclipse.jetty.server.handler.HandlerList; +import org.eclipse.jetty.servlet.ServletContextHandler; +import org.eclipse.jetty.servlet.ServletHolder; +import org.eclipse.jetty.websocket.api.Session; +import org.eclipse.jetty.websocket.api.StatusCode; +import org.eclipse.jetty.websocket.api.util.WSURI; +import org.eclipse.jetty.websocket.client.WebSocketClient; +import org.eclipse.jetty.websocket.servlet.WebSocketServlet; +import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; +import org.eclipse.jetty.websocket.tests.CloseTrackingEndpoint; +import org.eclipse.jetty.websocket.tests.EchoSocket; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import static java.util.concurrent.TimeUnit.SECONDS; +import static org.hamcrest.Matchers.containsString; +import static org.hamcrest.Matchers.is; + +/** + * This Regression Test Exists because of Client side Idle timeout, Read, and Parser bugs. + */ +public class SlowClientTest +{ + private Server server; + private WebSocketClient client; + + @BeforeEach + public void startClient() throws Exception + { + client = new WebSocketClient(); + client.getPolicy().setIdleTimeout(60000); + client.start(); + } + + @BeforeEach + public void startServer() throws Exception + { + server = new Server(); + + ServerConnector connector = new ServerConnector(server); + connector.setPort(0); + server.addConnector(connector); + + ServletContextHandler context = new ServletContextHandler(); + context.setContextPath("/"); + ServletHolder websocket = new ServletHolder(new WebSocketServlet() + { + @Override + public void configure(WebSocketServletFactory factory) + { + factory.register(EchoSocket.class); + } + }); + context.addServlet(websocket, "/ws"); + + HandlerList handlers = new HandlerList(); + handlers.addHandler(context); + handlers.addHandler(new DefaultHandler()); + + server.setHandler(handlers); + + server.start(); + } + + @AfterEach + public void stopClient() throws Exception + { + client.stop(); + } + + @AfterEach + public void stopServer() throws Exception + { + server.stop(); + } + + @Test + public void testClientSlowToSend() throws Exception + { + CloseTrackingEndpoint clientEndpoint = new CloseTrackingEndpoint(); + client.getPolicy().setIdleTimeout(60000); + + URI wsUri = WSURI.toWebsocket(server.getURI().resolve("/ws")); + Future future = client.connect(clientEndpoint, wsUri); + + // Confirm connected + Session session = future.get(5, SECONDS); + + int messageCount = 10; + try + { + // Have client write slowly. + ClientWriteThread writer = new ClientWriteThread(clientEndpoint.getSession()); + writer.setMessageCount(messageCount); + writer.setMessage("Hello"); + writer.setSlowness(10); + writer.start(); + writer.join(); + + // Close + clientEndpoint.getSession().close(StatusCode.NORMAL, "Done"); + + // confirm close received on server + clientEndpoint.assertReceivedCloseEvent(10000, is(StatusCode.NORMAL), containsString("Done")); + } + finally + { + if (session != null) + { + session.close(); + } + } + } +} diff --git a/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/AbstractCloseEndpoint.java b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/AbstractCloseEndpoint.java new file mode 100644 index 00000000000..ccd271410c3 --- /dev/null +++ b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/AbstractCloseEndpoint.java @@ -0,0 +1,76 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.tests.server; + +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; + +import org.eclipse.jetty.util.log.Log; +import org.eclipse.jetty.util.log.Logger; +import org.eclipse.jetty.websocket.api.WebSocketAdapter; +import org.hamcrest.Matcher; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; +import static org.hamcrest.Matchers.nullValue; + +public abstract class AbstractCloseEndpoint extends WebSocketAdapter +{ + public final Logger LOG; + public CountDownLatch closeLatch = new CountDownLatch(1); + public String closeReason = null; + public int closeStatusCode = -1; + public LinkedBlockingQueue errors = new LinkedBlockingQueue<>(); + + public AbstractCloseEndpoint() + { + this.LOG = Log.getLogger(this.getClass().getName()); + } + + @Override + public void onWebSocketClose(int statusCode, String reason) + { + LOG.debug("onWebSocketClose({}, {})",statusCode,reason); + this.closeStatusCode = statusCode; + this.closeReason = reason; + closeLatch.countDown(); + } + + @Override + public void onWebSocketError(Throwable cause) + { + errors.offer(cause); + } + + public void assertReceivedCloseEvent(int clientTimeoutMs, Matcher statusCodeMatcher, Matcher reasonMatcher) + throws InterruptedException + { + assertThat("Client Close Event Occurred", closeLatch.await(clientTimeoutMs, TimeUnit.MILLISECONDS), is(true)); + assertThat("Client Close Event Status Code", closeStatusCode, statusCodeMatcher); + if (reasonMatcher == null) + { + assertThat("Client Close Event Reason", closeReason, nullValue()); + } + else + { + assertThat("Client Close Event Reason", closeReason, reasonMatcher); + } + } +} diff --git a/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/ContainerEndpoint.java b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/ContainerEndpoint.java new file mode 100644 index 00000000000..201d62a9dc1 --- /dev/null +++ b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/ContainerEndpoint.java @@ -0,0 +1,68 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.tests.server; + +import java.util.Collection; + +import org.eclipse.jetty.websocket.api.Session; +import org.eclipse.jetty.websocket.api.StatusCode; +import org.eclipse.jetty.websocket.common.WebSocketSession; +import org.eclipse.jetty.websocket.server.WebSocketServerFactory; + +/** + * On Message, return container information + */ +public class ContainerEndpoint extends AbstractCloseEndpoint +{ + private final WebSocketServerFactory container; + private Session session; + + public ContainerEndpoint(WebSocketServerFactory container) + { + super(); + this.container = container; + } + + @Override + public void onWebSocketText(String message) + { + LOG.debug("onWebSocketText({})",message); + if (message.equalsIgnoreCase("openSessions")) + { + Collection sessions = container.getOpenSessions(); + + StringBuilder ret = new StringBuilder(); + ret.append("openSessions.size=").append(sessions.size()).append('\n'); + int idx = 0; + for (WebSocketSession sess : sessions) + { + ret.append('[').append(idx++).append("] ").append(sess.toString()).append('\n'); + } + session.getRemote().sendStringByFuture(ret.toString()); + } + session.close(StatusCode.NORMAL,"ContainerEndpoint"); + } + + @Override + public void onWebSocketConnect(Session sess) + { + LOG.debug("onWebSocketConnect({})",sess); + this.session = sess; + } +} diff --git a/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/FastCloseEndpoint.java b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/FastCloseEndpoint.java new file mode 100644 index 00000000000..d9d45573502 --- /dev/null +++ b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/FastCloseEndpoint.java @@ -0,0 +1,35 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.tests.server; + +import org.eclipse.jetty.websocket.api.Session; +import org.eclipse.jetty.websocket.api.StatusCode; + +/** + * On Connect, close socket + */ +public class FastCloseEndpoint extends AbstractCloseEndpoint +{ + @Override + public void onWebSocketConnect(Session sess) + { + LOG.debug("onWebSocketConnect({})", sess); + sess.close(StatusCode.NORMAL, "FastCloseServer"); + } +} diff --git a/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/FastFailEndpoint.java b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/FastFailEndpoint.java new file mode 100644 index 00000000000..bf1f9ba670b --- /dev/null +++ b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/FastFailEndpoint.java @@ -0,0 +1,36 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.tests.server; + +import org.eclipse.jetty.websocket.api.Session; + +/** + * On Connect, throw unhandled exception + */ +public class FastFailEndpoint extends AbstractCloseEndpoint +{ + @Override + public void onWebSocketConnect(Session sess) + { + LOG.debug("onWebSocketConnect({})",sess); + // Test failure due to unhandled exception + // this should trigger a fast-fail closure during open/connect + throw new RuntimeException("Intentional FastFail"); + } +} diff --git a/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/ServerCloseCreator.java b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/ServerCloseCreator.java new file mode 100644 index 00000000000..5b69451b9ec --- /dev/null +++ b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/ServerCloseCreator.java @@ -0,0 +1,77 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.tests.server; + +import java.util.concurrent.LinkedBlockingQueue; + +import org.eclipse.jetty.websocket.server.WebSocketServerFactory; +import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest; +import org.eclipse.jetty.websocket.servlet.ServletUpgradeResponse; +import org.eclipse.jetty.websocket.servlet.WebSocketCreator; +import org.eclipse.jetty.websocket.tests.EchoSocket; + +import static java.util.concurrent.TimeUnit.SECONDS; + +public class ServerCloseCreator implements WebSocketCreator +{ + private final WebSocketServerFactory serverFactory; + private LinkedBlockingQueue createdSocketQueue = new LinkedBlockingQueue<>(); + + public ServerCloseCreator(WebSocketServerFactory serverFactory) + { + this.serverFactory = serverFactory; + } + + @Override + public Object createWebSocket(ServletUpgradeRequest req, ServletUpgradeResponse resp) + { + AbstractCloseEndpoint closeSocket = null; + + if (req.hasSubProtocol("fastclose")) + { + closeSocket = new FastCloseEndpoint(); + resp.setAcceptedSubProtocol("fastclose"); + } + else if (req.hasSubProtocol("fastfail")) + { + closeSocket = new FastFailEndpoint(); + resp.setAcceptedSubProtocol("fastfail"); + } + else if (req.hasSubProtocol("container")) + { + closeSocket = new ContainerEndpoint(serverFactory); + resp.setAcceptedSubProtocol("container"); + } + + if (closeSocket != null) + { + createdSocketQueue.offer(closeSocket); + return closeSocket; + } + else + { + return new EchoSocket(); + } + } + + public AbstractCloseEndpoint pollLastCreated() throws InterruptedException + { + return createdSocketQueue.poll(5, SECONDS); + } +} diff --git a/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/ServerCloseTest.java b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/ServerCloseTest.java new file mode 100644 index 00000000000..017482187ce --- /dev/null +++ b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/ServerCloseTest.java @@ -0,0 +1,277 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.tests.server; + +import java.net.URI; +import java.nio.channels.ClosedChannelException; +import java.util.concurrent.Future; + +import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.server.ServerConnector; +import org.eclipse.jetty.server.handler.DefaultHandler; +import org.eclipse.jetty.server.handler.HandlerList; +import org.eclipse.jetty.servlet.ServletContextHandler; +import org.eclipse.jetty.servlet.ServletHolder; +import org.eclipse.jetty.util.log.StacklessLogging; +import org.eclipse.jetty.websocket.api.Session; +import org.eclipse.jetty.websocket.api.StatusCode; +import org.eclipse.jetty.websocket.api.util.WSURI; +import org.eclipse.jetty.websocket.client.ClientUpgradeRequest; +import org.eclipse.jetty.websocket.client.WebSocketClient; +import org.eclipse.jetty.websocket.common.WebSocketSession; +import org.eclipse.jetty.websocket.server.WebSocketServerFactory; +import org.eclipse.jetty.websocket.servlet.WebSocketServlet; +import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; +import org.eclipse.jetty.websocket.tests.CloseTrackingEndpoint; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import static java.util.concurrent.TimeUnit.SECONDS; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.containsString; +import static org.hamcrest.Matchers.greaterThanOrEqualTo; +import static org.hamcrest.Matchers.instanceOf; +import static org.hamcrest.Matchers.is; + +/** + * Tests various close scenarios + */ +public class ServerCloseTest +{ + private WebSocketClient client; + private Server server; + private ServerCloseCreator serverEndpointCreator; + + @BeforeEach + public void startServer() throws Exception + { + server = new Server(); + + ServerConnector connector = new ServerConnector(server); + connector.setPort(0); + server.addConnector(connector); + + ServletContextHandler context = new ServletContextHandler(); + context.setContextPath("/"); + + ServletHolder closeEndpoint = new ServletHolder(new WebSocketServlet() + { + @Override + public void configure(WebSocketServletFactory factory) + { + WebSocketServerFactory serverFactory = (WebSocketServerFactory) factory; + factory.getPolicy().setIdleTimeout(2000); + serverEndpointCreator = new ServerCloseCreator(serverFactory); + factory.setCreator(serverEndpointCreator); + } + }); + context.addServlet(closeEndpoint, "/ws"); + + HandlerList handlers = new HandlerList(); + handlers.addHandler(context); + handlers.addHandler(new DefaultHandler()); + + server.setHandler(handlers); + + server.start(); + } + + @AfterEach + public void stopServer() throws Exception + { + server.stop(); + } + + @BeforeEach + public void startClient() throws Exception + { + client = new WebSocketClient(); + client.setMaxIdleTimeout(SECONDS.toMillis(2)); + client.start(); + } + + @AfterEach + public void stopClient() throws Exception + { + client.stop(); + } + + private void close(Session session) + { + if (session != null) + { + session.close(); + } + } + + /** + * Test fast close (bug #403817) + * + * @throws Exception on test failure + */ + @Test + public void fastClose() throws Exception + { + ClientUpgradeRequest request = new ClientUpgradeRequest(); + request.setSubProtocols("fastclose"); + CloseTrackingEndpoint clientEndpoint = new CloseTrackingEndpoint(); + + URI wsUri = WSURI.toWebsocket(server.getURI().resolve("/ws")); + Future futSession = client.connect(clientEndpoint, wsUri, request); + + Session session = null; + try + { + session = futSession.get(5, SECONDS); + + // Verify that client got close + clientEndpoint.assertReceivedCloseEvent(5000, is(StatusCode.NORMAL), containsString("")); + + // Verify that server socket got close event + AbstractCloseEndpoint serverEndpoint = serverEndpointCreator.pollLastCreated(); + assertThat("Fast Close Latch", serverEndpoint.closeLatch.await(5, SECONDS), is(true)); + assertThat("Fast Close.statusCode", serverEndpoint.closeStatusCode, is(StatusCode.ABNORMAL)); + } + finally + { + close(session); + } + } + + /** + * Test fast fail (bug #410537) + * + * @throws Exception on test failure + */ + @Test + public void fastFail() throws Exception + { + ClientUpgradeRequest request = new ClientUpgradeRequest(); + request.setSubProtocols("fastfail"); + CloseTrackingEndpoint clientEndpoint = new CloseTrackingEndpoint(); + + URI wsUri = WSURI.toWebsocket(server.getURI().resolve("/ws")); + Future futSession = client.connect(clientEndpoint, wsUri, request); + + Session session = null; + try(StacklessLogging ignore = new StacklessLogging(FastFailEndpoint.class, WebSocketSession.class)) + { + session = futSession.get(5, SECONDS); + + // Verify that client got close indicating SERVER_ERROR + clientEndpoint.assertReceivedCloseEvent(5000, is(StatusCode.SERVER_ERROR), containsString("Intentional FastFail")); + + // Verify that server socket got close event + AbstractCloseEndpoint serverEndpoint = serverEndpointCreator.pollLastCreated(); + serverEndpoint.assertReceivedCloseEvent(5000, is(StatusCode.SERVER_ERROR), containsString("Intentional FastFail")); + + // Validate errors (must be "java.lang.RuntimeException: Intentional Exception from onWebSocketConnect") + assertThat("socket.onErrors", serverEndpoint.errors.size(), greaterThanOrEqualTo(1)); + Throwable cause = serverEndpoint.errors.poll(5, SECONDS); + assertThat("Error type", cause, instanceOf(RuntimeException.class)); + // ... with optional ClosedChannelException + cause = serverEndpoint.errors.peek(); + if (cause != null) + { + assertThat("Error type", cause, instanceOf(ClosedChannelException.class)); + } + } + finally + { + close(session); + } + } + + @Test + public void dropConnection() throws Exception + { + ClientUpgradeRequest request = new ClientUpgradeRequest(); + request.setSubProtocols("container"); + CloseTrackingEndpoint clientEndpoint = new CloseTrackingEndpoint(); + + URI wsUri = WSURI.toWebsocket(server.getURI().resolve("/ws")); + Future futSession = client.connect(clientEndpoint, wsUri, request); + + Session session = null; + try(StacklessLogging ignore = new StacklessLogging(WebSocketSession.class)) + { + session = futSession.get(5, SECONDS); + + // Cause a client endpoint failure + clientEndpoint.getEndPoint().close(); + + // Verify that client got close + clientEndpoint.assertReceivedCloseEvent(5000, is(StatusCode.ABNORMAL), containsString("Disconnected")); + + // Verify that server socket got close event + AbstractCloseEndpoint serverEndpoint = serverEndpointCreator.pollLastCreated(); + serverEndpoint.assertReceivedCloseEvent(5000, is(StatusCode.ABNORMAL), containsString("Disconnected")); + } finally + { + close(session); + } + } + + + /** + * Test session open session cleanup (bug #474936) + * + * @throws Exception on test failure + */ + @Test + public void testOpenSessionCleanup() throws Exception + { + fastFail(); + fastClose(); + dropConnection(); + + ClientUpgradeRequest request = new ClientUpgradeRequest(); + request.setSubProtocols("container"); + CloseTrackingEndpoint clientEndpoint = new CloseTrackingEndpoint(); + + URI wsUri = WSURI.toWebsocket(server.getURI().resolve("/ws")); + Future futSession = client.connect(clientEndpoint, wsUri, request); + + Session session = null; + try(StacklessLogging ignore = new StacklessLogging(WebSocketSession.class)) + { + session = futSession.get(5, SECONDS); + + session.getRemote().sendString("openSessions"); + + String msg = clientEndpoint.messageQueue.poll(5, SECONDS); + + assertThat("Should only have 1 open session", msg, containsString("openSessions.size=1\n")); + + // Verify that client got close + clientEndpoint.assertReceivedCloseEvent(5000, is(StatusCode.NORMAL), containsString("ContainerEndpoint")); + + // Verify that server socket got close event + AbstractCloseEndpoint serverEndpoint = serverEndpointCreator.pollLastCreated(); + assertThat("Server Open Sessions Latch", serverEndpoint.closeLatch.await(5, SECONDS), is(true)); + assertThat("Server Open Sessions.statusCode", serverEndpoint.closeStatusCode, is(StatusCode.NORMAL)); + assertThat("Server Open Sessions.errors", serverEndpoint.errors.size(), is(0)); + } + finally + { + close(session); + } + } +} diff --git a/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/SlowServerEndpoint.java b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/SlowServerEndpoint.java new file mode 100644 index 00000000000..ebdce28cfc4 --- /dev/null +++ b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/SlowServerEndpoint.java @@ -0,0 +1,76 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.tests.server; + +import java.io.IOException; +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.ThreadLocalRandom; +import java.util.concurrent.TimeUnit; + +import org.eclipse.jetty.util.log.Log; +import org.eclipse.jetty.util.log.Logger; +import org.eclipse.jetty.websocket.api.Session; +import org.eclipse.jetty.websocket.api.annotations.OnWebSocketMessage; +import org.eclipse.jetty.websocket.api.annotations.WebSocket; + +@WebSocket +public class SlowServerEndpoint +{ + private static final Logger LOG = Log.getLogger(SlowServerEndpoint.class); + + @OnWebSocketMessage + public void onMessage(Session session, String msg) + { + ThreadLocalRandom random = ThreadLocalRandom.current(); + + if (msg.startsWith("send-slow|")) + { + int idx = msg.indexOf('|'); + int msgCount = Integer.parseInt(msg.substring(idx + 1)); + CompletableFuture.runAsync(() -> + { + for (int i = 0; i < msgCount; i++) + { + try + { + session.getRemote().sendString("Hello/" + i + "/"); + // fake some slowness + TimeUnit.MILLISECONDS.sleep(random.nextInt(2000)); + } + catch (Throwable cause) + { + LOG.warn(cause); + } + } + }); + } + else + { + // echo message. + try + { + session.getRemote().sendString(msg); + } + catch (IOException ignore) + { + LOG.ignore(ignore); + } + } + } +} diff --git a/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/SlowServerTest.java b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/SlowServerTest.java new file mode 100644 index 00000000000..19fb2cae723 --- /dev/null +++ b/jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/server/SlowServerTest.java @@ -0,0 +1,140 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.tests.server; + +import java.net.URI; +import java.util.concurrent.Future; +import java.util.concurrent.LinkedBlockingQueue; + +import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.server.ServerConnector; +import org.eclipse.jetty.server.handler.DefaultHandler; +import org.eclipse.jetty.server.handler.HandlerList; +import org.eclipse.jetty.servlet.ServletContextHandler; +import org.eclipse.jetty.servlet.ServletHolder; +import org.eclipse.jetty.websocket.api.Session; +import org.eclipse.jetty.websocket.api.util.WSURI; +import org.eclipse.jetty.websocket.client.WebSocketClient; +import org.eclipse.jetty.websocket.servlet.WebSocketServlet; +import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; +import org.eclipse.jetty.websocket.tests.CloseTrackingEndpoint; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import static java.util.concurrent.TimeUnit.SECONDS; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; + +/** + * This Regression Test Exists because of Server side Idle timeout, Write, and Generator bugs. + */ +public class SlowServerTest +{ + private Server server; + private WebSocketClient client; + + @BeforeEach + public void startClient() throws Exception + { + client = new WebSocketClient(); + client.setMaxIdleTimeout(60000); + client.start(); + } + + @BeforeEach + public void startServer() throws Exception + { + server = new Server(); + + ServerConnector connector = new ServerConnector(server); + connector.setPort(0); + server.addConnector(connector); + + ServletContextHandler context = new ServletContextHandler(); + context.setContextPath("/"); + + ServletHolder websocket = new ServletHolder(new WebSocketServlet() + { + @Override + public void configure(WebSocketServletFactory factory) + { + factory.register(SlowServerEndpoint.class); + } + }); + context.addServlet(websocket, "/ws"); + + HandlerList handlers = new HandlerList(); + handlers.addHandler(context); + handlers.addHandler(new DefaultHandler()); + + server.setHandler(handlers); + + server.start(); + } + + @AfterEach + public void stopClient() throws Exception + { + client.stop(); + } + + @AfterEach + public void stopServer() throws Exception + { + server.stop(); + } + + @Test + public void testServerSlowToSend() throws Exception + { + CloseTrackingEndpoint clientEndpoint = new CloseTrackingEndpoint(); + client.setMaxIdleTimeout(60000); + + URI wsUri = WSURI.toWebsocket(server.getURI().resolve("/ws")); + Future future = client.connect(clientEndpoint, wsUri); + + Session session = null; + try + { + // Confirm connected + session = future.get(5, SECONDS); + + int messageCount = 10; + + session.getRemote().sendString("send-slow|" + messageCount); + + // Verify receive + LinkedBlockingQueue responses = clientEndpoint.messageQueue; + + for (int i = 0; i < messageCount; i++) + { + String response = responses.poll(5, SECONDS); + assertThat("Server Message[" + i + "]", response, is("Hello/" + i + "/")); + } + } + finally + { + if (session != null) + { + session.close(); + } + } + } +} diff --git a/jetty-websocket/jetty-websocket-tests/src/test/resources/jetty-logging.properties b/jetty-websocket/jetty-websocket-tests/src/test/resources/jetty-logging.properties new file mode 100644 index 00000000000..5cd1295117d --- /dev/null +++ b/jetty-websocket/jetty-websocket-tests/src/test/resources/jetty-logging.properties @@ -0,0 +1,21 @@ +org.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.StdErrLog +org.eclipse.jetty.LEVEL=WARN +# org.eclipse.jetty.LEVEL=DEBUG +# org.eclipse.jetty.io.LEVEL=INFO +# org.eclipse.jetty.client.LEVEL=DEBUG +# org.eclipse.jetty.util.LEVEL=INFO +# org.eclipse.jetty.websocket.LEVEL=WARN +# org.eclipse.jetty.websocket.LEVEL=DEBUG +# org.eclipse.jetty.websocket.LEVEL=INFO +# org.eclipse.jetty.websocket.client.LEVEL=DEBUG +# org.eclipse.jetty.websocket.tests.client.ClientCloseTest.LEVEL=DEBUG +# org.eclipse.jetty.websocket.common.io.AbstractWebSocketConnection.LEVEL=DEBUG +# org.eclipse.jetty.websocket.common.io.IOState.LEVEL=DEBUG +# org.eclipse.jetty.websocket.common.test.LEVEL=DEBUG + +# org.eclipse.jetty.websocket.common.Generator.LEVEL=DEBUG +# org.eclipse.jetty.websocket.common.Parser.LEVEL=DEBUG +# org.eclipse.jetty.websocket.client.TrackingSocket.LEVEL=DEBUG + +### Hide the stacktraces during testing +org.eclipse.jetty.websocket.client.internal.io.UpgradeConnection.STACKS=false diff --git a/jetty-websocket/pom.xml b/jetty-websocket/pom.xml index fb6181f5988..8b53adf496e 100644 --- a/jetty-websocket/pom.xml +++ b/jetty-websocket/pom.xml @@ -19,6 +19,7 @@ websocket-client websocket-server websocket-servlet + jetty-websocket-tests javax-websocket-client-impl javax-websocket-server-impl diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/StatusCode.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/StatusCode.java index d10b6471f50..3873c2fd122 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/StatusCode.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/StatusCode.java @@ -152,6 +152,26 @@ public final class StatusCode */ public final static int FAILED_TLS_HANDSHAKE = 1015; + /** + * Test if provided status code is a fatal failure for bad protocol behavior. + * + * @param statusCode the status code to test + * @return true if fatal status code + */ + @SuppressWarnings("Duplicates") + public static boolean isFatal(int statusCode) + { + return (statusCode == ABNORMAL) || + (statusCode == PROTOCOL) || + (statusCode == MESSAGE_TOO_LARGE) || + (statusCode == BAD_DATA) || + (statusCode == BAD_PAYLOAD) || + (statusCode == POLICY_VIOLATION) || + (statusCode == REQUIRED_EXTENSION) || + (statusCode == SERVER_ERROR) || + (statusCode == SERVICE_RESTART); + } + /** * Test if provided status code can be sent/received on a WebSocket close. *

@@ -160,6 +180,7 @@ public final class StatusCode * @param statusCode the statusCode to test * @return true if transmittable */ + @SuppressWarnings("Duplicates") public static boolean isTransmittable(int statusCode) { return (statusCode == NORMAL) || @@ -173,6 +194,7 @@ public final class StatusCode (statusCode == SERVER_ERROR) || (statusCode == SERVICE_RESTART) || (statusCode == TRY_AGAIN_LATER) || - (statusCode == INVALID_UPSTREAM_RESPONSE); + (statusCode == INVALID_UPSTREAM_RESPONSE) || + ((statusCode >= 3000) && (statusCode <= 4999)); } } diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WriteCallback.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WriteCallback.java index 73a05d6fc63..0aad47a2660 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WriteCallback.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/WriteCallback.java @@ -35,7 +35,7 @@ public interface WriteCallback * @param x * the reason for the write failure */ - public void writeFailed(Throwable x); + void writeFailed(Throwable x); /** *

@@ -44,5 +44,5 @@ public interface WriteCallback * * @see #writeFailed(Throwable) */ - public abstract void writeSuccess(); + void writeSuccess(); } diff --git a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/IncomingFrames.java b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/IncomingFrames.java index bb446a5ef6e..ce0a4036a9c 100644 --- a/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/IncomingFrames.java +++ b/jetty-websocket/websocket-api/src/main/java/org/eclipse/jetty/websocket/api/extensions/IncomingFrames.java @@ -23,8 +23,6 @@ package org.eclipse.jetty.websocket.api.extensions; */ public interface IncomingFrames { - public void incomingError(Throwable t); - /** * Process the incoming frame. *

@@ -34,5 +32,5 @@ public interface IncomingFrames * * @param frame the frame to process */ - public void incomingFrame(Frame frame); + void incomingFrame(Frame frame); } diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketClient.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketClient.java index c6fd082f404..57c815b8e16 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketClient.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketClient.java @@ -22,8 +22,11 @@ import java.io.IOException; import java.net.CookieStore; import java.net.SocketAddress; import java.net.URI; +import java.util.ArrayList; +import java.util.Collection; import java.util.Collections; import java.util.HashSet; +import java.util.List; import java.util.Locale; import java.util.Objects; import java.util.Set; @@ -53,6 +56,7 @@ import org.eclipse.jetty.websocket.client.masks.RandomMasker; import org.eclipse.jetty.websocket.common.SessionFactory; import org.eclipse.jetty.websocket.common.WebSocketSession; import org.eclipse.jetty.websocket.common.WebSocketSessionFactory; +import org.eclipse.jetty.websocket.common.WebSocketSessionListener; import org.eclipse.jetty.websocket.common.events.EventDriverFactory; import org.eclipse.jetty.websocket.common.extensions.WebSocketExtensionFactory; import org.eclipse.jetty.websocket.common.scopes.SimpleContainerScope; @@ -61,7 +65,7 @@ import org.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope; /** * WebSocketClient provides a means of establishing connections to remote websocket endpoints. */ -public class WebSocketClient extends ContainerLifeCycle implements WebSocketContainerScope +public class WebSocketClient extends ContainerLifeCycle implements WebSocketContainerScope, WebSocketSessionListener { private static final Logger LOG = Log.getLogger(WebSocketClient.class); @@ -76,6 +80,7 @@ public class WebSocketClient extends ContainerLifeCycle implements WebSocketCont private final WebSocketExtensionFactory extensionRegistry; private final EventDriverFactory eventDriverFactory; private final SessionFactory sessionFactory; + private final List sessionListeners = new ArrayList<>(); // defaults to true for backwards compatibility private boolean stopAtShutdown = true; @@ -268,6 +273,8 @@ public class WebSocketClient extends ContainerLifeCycle implements WebSocketCont this.httpClient = httpClient; } + this.addSessionListener(this); + // Ensure we get a Client version of the policy. this.policy = scope.getPolicy().delegateAs(WebSocketBehavior.CLIENT); // Support Late Binding of Object Factory (for CDI) @@ -560,7 +567,25 @@ public class WebSocketClient extends ContainerLifeCycle implements WebSocketCont return httpClient.getSslContextFactory(); } - private synchronized void init() throws IOException + @Override + public void addSessionListener(WebSocketSessionListener listener) + { + this.sessionListeners.add(listener); + } + + @Override + public void removeSessionListener(WebSocketSessionListener listener) + { + this.sessionListeners.remove(listener); + } + + @Override + public Collection getSessionListeners() + { + return this.sessionListeners; + } + + private synchronized void init() { if (isStopAtShutdown() && !ShutdownThread.isRegistered(this)) { @@ -594,7 +619,6 @@ public class WebSocketClient extends ContainerLifeCycle implements WebSocketCont if (LOG.isDebugEnabled()) LOG.debug("Session Opened: {}",session); addManaged(session); - LOG.debug("post-onSessionOpened() - {}", this); } public void setAsyncWriteTimeout(long ms) diff --git a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketUpgradeRequest.java b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketUpgradeRequest.java index b975f00edb4..e42c776f2a1 100644 --- a/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketUpgradeRequest.java +++ b/jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/WebSocketUpgradeRequest.java @@ -24,6 +24,7 @@ import java.nio.charset.StandardCharsets; import java.security.Principal; import java.util.ArrayList; import java.util.Arrays; +import java.util.Collection; import java.util.List; import java.util.Map; import java.util.TreeMap; @@ -49,6 +50,7 @@ import org.eclipse.jetty.http.HttpHeader; import org.eclipse.jetty.http.HttpMethod; import org.eclipse.jetty.http.HttpStatus; import org.eclipse.jetty.http.HttpVersion; +import org.eclipse.jetty.io.Connection; import org.eclipse.jetty.io.EndPoint; import org.eclipse.jetty.util.B64Code; import org.eclipse.jetty.util.MultiMap; @@ -516,6 +518,7 @@ public class WebSocketUpgradeRequest extends HttpRequest implements CompleteList // wrap in UpgradeException handleException(new UpgradeException(requestURI,responseStatusCode,responseLine,failure)); } + return; } if (responseStatusCode != HttpStatus.SWITCHING_PROTOCOLS_101) @@ -527,7 +530,7 @@ public class WebSocketUpgradeRequest extends HttpRequest implements CompleteList private void handleException(Throwable failure) { - localEndpoint.incomingError(failure); + localEndpoint.onError(failure); fut.completeExceptionally(failure); } @@ -575,6 +578,13 @@ public class WebSocketUpgradeRequest extends HttpRequest implements CompleteList WebSocketClientConnection connection = new WebSocketClientConnection(endp,wsClient.getExecutor(),wsClient.getScheduler(),localEndpoint.getPolicy(), wsClient.getBufferPool()); + Collection connectionListeners = wsClient.getBeans(Connection.Listener.class); + + if (connectionListeners != null) + { + connectionListeners.forEach((listener) -> connection.addListener(listener)); + } + URI requestURI = this.getURI(); WebSocketSession session = getSessionFactory().createSession(requestURI,localEndpoint,connection); diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/BadNetworkTest.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/BadNetworkTest.java deleted file mode 100644 index 34dafc34c3a..00000000000 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/BadNetworkTest.java +++ /dev/null @@ -1,130 +0,0 @@ -// -// ======================================================================== -// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -// - -package org.eclipse.jetty.websocket.client; - -import java.net.URI; -import java.util.concurrent.CompletableFuture; -import java.util.concurrent.Future; -import java.util.concurrent.TimeUnit; - -import org.eclipse.jetty.io.ByteBufferPool; -import org.eclipse.jetty.io.MappedByteBufferPool; -import org.eclipse.jetty.websocket.api.Session; -import org.eclipse.jetty.websocket.api.StatusCode; -import org.eclipse.jetty.websocket.common.test.BlockheadConnection; -import org.eclipse.jetty.websocket.common.test.BlockheadServer; -import org.eclipse.jetty.websocket.common.test.Timeouts; -import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.AfterAll; -import org.junit.jupiter.api.BeforeAll; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; - -/** - * Tests for conditions due to bad networking. - */ -public class BadNetworkTest -{ - public ByteBufferPool bufferPool = new MappedByteBufferPool(); - - private static BlockheadServer server; - private WebSocketClient client; - - @BeforeEach - public void startClient() throws Exception - { - client = new WebSocketClient(bufferPool); - client.getPolicy().setIdleTimeout(250); - client.start(); - } - - @BeforeAll - public static void startServer() throws Exception - { - server = new BlockheadServer(); - server.start(); - } - - @AfterEach - public void stopClient() throws Exception - { - client.stop(); - } - - @AfterAll - public static void stopServer() throws Exception - { - server.stop(); - } - - @Test - public void testAbruptClientClose() throws Exception - { - JettyTrackingSocket wsocket = new JettyTrackingSocket(); - - URI wsUri = server.getWsUri(); - Future future = client.connect(wsocket,wsUri); - - // Validate that we are connected - future.get(30,TimeUnit.SECONDS); - wsocket.waitForConnected(); - - // Have client disconnect abruptly - Session session = wsocket.getSession(); - session.disconnect(); - - // Client Socket should see close - wsocket.waitForClose(10,TimeUnit.SECONDS); - - // Client Socket should see a close event, with status NO_CLOSE - // This event is automatically supplied by the underlying WebSocketClientConnection - // in the situation of a bad network connection. - wsocket.assertCloseCode(StatusCode.NO_CLOSE); - } - - @Test - public void testAbruptServerClose() throws Exception - { - JettyTrackingSocket wsocket = new JettyTrackingSocket(); - - CompletableFuture serverConnFut = new CompletableFuture<>(); - server.addConnectFuture(serverConnFut); - - URI wsUri = server.getWsUri(); - Future future = client.connect(wsocket,wsUri); - - try (BlockheadConnection serverConn = serverConnFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT)) - { - // Validate that we are connected - future.get(30, TimeUnit.SECONDS); - wsocket.waitForConnected(); - - // Have server disconnect abruptly - serverConn.abort(); - - // Wait for close (as response to idle timeout) - wsocket.waitForClose(10, TimeUnit.SECONDS); - - // Client Socket should see a close event, with status NO_CLOSE - // This event is automatically supplied by the underlying WebSocketClientConnection - // in the situation of a bad network connection. - wsocket.assertCloseCode(StatusCode.NO_CLOSE); - } - } -} diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ClientCloseTest.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ClientCloseTest.java deleted file mode 100644 index 9cde4e87994..00000000000 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ClientCloseTest.java +++ /dev/null @@ -1,673 +0,0 @@ -// -// ======================================================================== -// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -// - -package org.eclipse.jetty.websocket.client; - - -import static org.hamcrest.Matchers.allOf; -import static org.hamcrest.Matchers.anyOf; -import static org.hamcrest.Matchers.containsString; -import static org.hamcrest.Matchers.empty; - -import static java.time.Duration.ofSeconds; -import static org.hamcrest.MatcherAssert.assertThat; - -import static org.hamcrest.Matchers.instanceOf; -import static org.hamcrest.Matchers.is; -import static org.hamcrest.Matchers.notNullValue; -import static org.hamcrest.Matchers.nullValue; -import static org.junit.jupiter.api.Assertions.assertTimeoutPreemptively; - - -import java.io.IOException; -import java.lang.reflect.Field; -import java.net.SocketTimeoutException; -import java.nio.ByteBuffer; -import java.nio.channels.SelectableChannel; -import java.nio.channels.SelectionKey; -import java.nio.channels.SocketChannel; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.CompletableFuture; -import java.util.concurrent.CountDownLatch; -import java.util.concurrent.Future; -import java.util.concurrent.LinkedBlockingQueue; -import java.util.concurrent.TimeUnit; -import java.util.concurrent.TimeoutException; -import java.util.concurrent.atomic.AtomicBoolean; -import java.util.concurrent.atomic.AtomicInteger; -import java.util.concurrent.atomic.AtomicReference; - -import org.eclipse.jetty.client.HttpClient; -import org.eclipse.jetty.client.http.HttpClientTransportOverHTTP; -import org.eclipse.jetty.io.EndPoint; -import org.eclipse.jetty.io.EofException; -import org.eclipse.jetty.io.ManagedSelector; -import org.eclipse.jetty.io.SelectorManager; -import org.eclipse.jetty.io.SocketChannelEndPoint; -import org.eclipse.jetty.util.BufferUtil; -import org.eclipse.jetty.util.log.Log; -import org.eclipse.jetty.util.log.Logger; -import org.eclipse.jetty.util.log.StacklessLogging; -import org.eclipse.jetty.util.thread.Scheduler; -import org.eclipse.jetty.websocket.api.ProtocolException; -import org.eclipse.jetty.websocket.api.Session; -import org.eclipse.jetty.websocket.api.StatusCode; -import org.eclipse.jetty.websocket.api.WebSocketAdapter; -import org.eclipse.jetty.websocket.common.CloseInfo; -import org.eclipse.jetty.websocket.common.OpCode; -import org.eclipse.jetty.websocket.common.Parser; -import org.eclipse.jetty.websocket.common.WebSocketFrame; -import org.eclipse.jetty.websocket.common.WebSocketSession; -import org.eclipse.jetty.websocket.common.frames.TextFrame; -import org.eclipse.jetty.websocket.common.io.AbstractWebSocketConnection; -import org.eclipse.jetty.websocket.common.test.BlockheadConnection; -import org.eclipse.jetty.websocket.common.test.BlockheadServer; -import org.eclipse.jetty.websocket.common.test.RawFrameBuilder; -import org.eclipse.jetty.websocket.common.test.Timeouts; -import org.hamcrest.Matcher; - -import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.AfterAll; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.BeforeAll; -import org.junit.jupiter.api.Disabled; -import org.junit.jupiter.api.Test; - - -public class ClientCloseTest -{ - private static final Logger LOG = Log.getLogger(ClientCloseTest.class); - - private static class CloseTrackingSocket extends WebSocketAdapter - { - private static final Logger LOG = ClientCloseTest.LOG.getLogger("CloseTrackingSocket"); - - public int closeCode = -1; - public String closeReason = null; - public CountDownLatch closeLatch = new CountDownLatch(1); - public AtomicInteger closeCount = new AtomicInteger(0); - public CountDownLatch openLatch = new CountDownLatch(1); - public CountDownLatch errorLatch = new CountDownLatch(1); - - public LinkedBlockingQueue messageQueue = new LinkedBlockingQueue<>(); - public AtomicReference error = new AtomicReference<>(); - - public void assertNoCloseEvent() - { - assertThat("Client Close Event",closeLatch.getCount(),is(1L)); - assertThat("Client Close Event Status Code ",closeCode,is(-1)); - } - - public void assertReceivedCloseEvent(int clientTimeoutMs, Matcher statusCodeMatcher, Matcher reasonMatcher) - throws InterruptedException - { - long maxTimeout = clientTimeoutMs * 4; - - assertThat("Client Close Event Occurred",closeLatch.await(maxTimeout,TimeUnit.MILLISECONDS),is(true)); - assertThat("Client Close Event Count",closeCount.get(),is(1)); - assertThat("Client Close Event Status Code",closeCode,statusCodeMatcher); - if (reasonMatcher == null) - { - assertThat("Client Close Event Reason",closeReason,nullValue()); - } - else - { - assertThat("Client Close Event Reason",closeReason,reasonMatcher); - } - } - - public void clearQueues() - { - messageQueue.clear(); - } - - @Override - public void onWebSocketClose(int statusCode, String reason) - { - LOG.debug("onWebSocketClose({},{})",statusCode,reason); - super.onWebSocketClose(statusCode,reason); - closeCount.incrementAndGet(); - closeCode = statusCode; - closeReason = reason; - closeLatch.countDown(); - } - - @Override - public void onWebSocketConnect(Session session) - { - LOG.debug("onWebSocketConnect({})",session); - super.onWebSocketConnect(session); - openLatch.countDown(); - } - - @Override - public void onWebSocketError(Throwable cause) - { - LOG.debug("onWebSocketError",cause); - assertThat("Unique Error Event", error.compareAndSet(null, cause), is(true)); - errorLatch.countDown(); - } - - @Override - public void onWebSocketText(String message) - { - LOG.debug("onWebSocketText({})",message); - messageQueue.offer(message); - } - - public EndPoint getEndPoint() throws Exception - { - Session session = getSession(); - assertThat("Session type",session,instanceOf(WebSocketSession.class)); - - WebSocketSession wssession = (WebSocketSession)session; - Field fld = wssession.getClass().getDeclaredField("connection"); - fld.setAccessible(true); - assertThat("Field: connection",fld,notNullValue()); - - Object val = fld.get(wssession); - assertThat("Connection type",val,instanceOf(AbstractWebSocketConnection.class)); - @SuppressWarnings("resource") - AbstractWebSocketConnection wsconn = (AbstractWebSocketConnection)val; - return wsconn.getEndPoint(); - } - } - - private static BlockheadServer server; - private WebSocketClient client; - - private void confirmConnection(CloseTrackingSocket clientSocket, Future clientFuture, BlockheadConnection serverConns) throws Exception - { - // Wait for client connect on via future - clientFuture.get(30,TimeUnit.SECONDS); - - // Wait for client connect via client websocket - assertThat("Client WebSocket is Open",clientSocket.openLatch.await(30,TimeUnit.SECONDS),is(true)); - - try - { - // Send message from client to server - final String echoMsg = "echo-test"; - Future testFut = clientSocket.getRemote().sendStringByFuture(echoMsg); - - // Wait for send future - testFut.get(Timeouts.SEND, Timeouts.SEND_UNIT); - - // Read Frame on server side - LinkedBlockingQueue serverCapture = serverConns.getFrameQueue(); - WebSocketFrame frame = serverCapture.poll(Timeouts.POLL_EVENT, Timeouts.POLL_EVENT_UNIT); - assertThat("Server received frame",frame.getOpCode(),is(OpCode.TEXT)); - assertThat("Server received frame payload",frame.getPayloadAsUTF8(),is(echoMsg)); - - // Server send echo reply - serverConns.write(new TextFrame().setPayload(echoMsg)); - - // Verify received message - String recvMsg = clientSocket.messageQueue.poll(Timeouts.POLL_EVENT, Timeouts.POLL_EVENT_UNIT); - assertThat("Received message",recvMsg,is(echoMsg)); - - // Verify that there are no errors - assertThat("Error events",clientSocket.error.get(),nullValue()); - } - finally - { - clientSocket.clearQueues(); - } - } - - private void confirmServerReceivedCloseFrame(BlockheadConnection serverConn, int expectedCloseCode, Matcher closeReasonMatcher) throws InterruptedException - { - LinkedBlockingQueue serverCapture = serverConn.getFrameQueue(); - WebSocketFrame frame = serverCapture.poll(Timeouts.POLL_EVENT, Timeouts.POLL_EVENT_UNIT); - assertThat("Server close frame", frame, is(notNullValue())); - assertThat("Server received close frame",frame.getOpCode(),is(OpCode.CLOSE)); - CloseInfo closeInfo = new CloseInfo(frame); - assertThat("Server received close code",closeInfo.getStatusCode(),is(expectedCloseCode)); - if (closeReasonMatcher == null) - { - assertThat("Server received close reason",closeInfo.getReason(),nullValue()); - } - else - { - assertThat("Server received close reason",closeInfo.getReason(),closeReasonMatcher); - } - } - - public static class TestClientTransportOverHTTP extends HttpClientTransportOverHTTP - { - @Override - protected SelectorManager newSelectorManager(HttpClient client) - { - return new ClientSelectorManager(client, 1){ - @Override - protected EndPoint newEndPoint(SelectableChannel channel, ManagedSelector selector, SelectionKey key) - { - TestEndPoint endPoint = new TestEndPoint(channel,selector,key,getScheduler()); - endPoint.setIdleTimeout(client.getIdleTimeout()); - return endPoint; - } - }; - } - } - - public static class TestEndPoint extends SocketChannelEndPoint - { - public AtomicBoolean congestedFlush = new AtomicBoolean(false); - - public TestEndPoint(SelectableChannel channel, ManagedSelector selector, SelectionKey key, Scheduler scheduler) - { - super((SocketChannel)channel,selector,key,scheduler); - } - - @Override - public boolean flush(ByteBuffer... buffers) throws IOException - { - boolean flushed = super.flush(buffers); - congestedFlush.set(!flushed); - return flushed; - } - } - - @BeforeEach - public void startClient() throws Exception - { - HttpClient httpClient = new HttpClient(new TestClientTransportOverHTTP(), null); - client = new WebSocketClient(httpClient); - client.addBean(httpClient); - client.start(); - } - - @BeforeAll - public static void startServer() throws Exception - { - server = new BlockheadServer(); - server.start(); - } - - @AfterEach - public void stopClient() throws Exception - { - client.stop(); - } - - @AfterAll - public static void stopServer() throws Exception - { - server.stop(); - } - - @Test - public void testHalfClose() throws Exception - { - // Set client timeout - final int timeout = 5000; - client.setMaxIdleTimeout(timeout); - - // Hook into server connection creation - CompletableFuture serverConnFut = new CompletableFuture<>(); - server.addConnectFuture(serverConnFut); - - // Client connects - CloseTrackingSocket clientSocket = new CloseTrackingSocket(); - Future clientConnectFuture = client.connect(clientSocket,server.getWsUri()); - - try (BlockheadConnection serverConn = serverConnFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT)) - { - // client confirms connection via echo - confirmConnection(clientSocket, clientConnectFuture, serverConn); - - // client sends close frame (code 1000, normal) - final String origCloseReason = "Normal Close"; - clientSocket.getSession().close(StatusCode.NORMAL, origCloseReason); - - // server receives close frame - confirmServerReceivedCloseFrame(serverConn, StatusCode.NORMAL, is(origCloseReason)); - - // server sends 2 messages - serverConn.write(new TextFrame().setPayload("Hello")); - serverConn.write(new TextFrame().setPayload("World")); - - // server sends close frame (code 1000, no reason) - CloseInfo sclose = new CloseInfo(StatusCode.NORMAL, "From Server"); - serverConn.write(sclose.asFrame()); - - // Verify received messages - String recvMsg = clientSocket.messageQueue.poll(Timeouts.POLL_EVENT, Timeouts.POLL_EVENT_UNIT); - assertThat("Received message 1", recvMsg, is("Hello")); - recvMsg = clientSocket.messageQueue.poll(Timeouts.POLL_EVENT, Timeouts.POLL_EVENT_UNIT); - assertThat("Received message 2", recvMsg, is("World")); - - // Verify that there are no errors - assertThat("Error events", clientSocket.error.get(), nullValue()); - - // client close event on ws-endpoint - clientSocket.assertReceivedCloseEvent(timeout, is(StatusCode.NORMAL), containsString("From Server")); - } - - assertThat("Client Open Sessions", client.getOpenSessions(), empty()); - } - - @Disabled("Need sbordet's help here") - @Test - public void testNetworkCongestion() throws Exception - { - // Set client timeout - final int timeout = 1000; - client.setMaxIdleTimeout(timeout); - - // Hook into server connection creation - CompletableFuture serverConnFut = new CompletableFuture<>(); - server.addConnectFuture(serverConnFut); - - // Client connects - CloseTrackingSocket clientSocket = new CloseTrackingSocket(); - Future clientConnectFuture = client.connect(clientSocket,server.getWsUri()); - - try (BlockheadConnection serverConn = serverConnFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT)) - { - // client confirms connection via echo - confirmConnection(clientSocket, clientConnectFuture, serverConn); - - // client sends BIG frames (until it cannot write anymore) - // server must not read (for test purpose, in order to congest connection) - // when write is congested, client enqueue close frame - // client initiate write, but write never completes - EndPoint endp = clientSocket.getEndPoint(); - assertThat("EndPoint is testable", endp, instanceOf(TestEndPoint.class)); - TestEndPoint testendp = (TestEndPoint) endp; - - char msg[] = new char[10240]; - int writeCount = 0; - long writeSize = 0; - int i = 0; - while (!testendp.congestedFlush.get()) - { - int z = i - ((i / 26) * 26); - char c = (char) ('a' + z); - Arrays.fill(msg, c); - clientSocket.getRemote().sendStringByFuture(String.valueOf(msg)); - writeCount++; - writeSize += msg.length; - } - LOG.info("Wrote {} frames totalling {} bytes of payload before congestion kicked in", writeCount, writeSize); - - // Verify timeout error - assertThat("OnError Latch", clientSocket.errorLatch.await(2, TimeUnit.SECONDS), is(true)); - assertThat("OnError", clientSocket.error.get(), instanceOf(SocketTimeoutException.class)); - } - } - - @Test - public void testProtocolException() throws Exception - { - // Set client timeout - final int timeout = 1000; - client.setMaxIdleTimeout(timeout); - - // Hook into server connection creation - CompletableFuture serverConnFut = new CompletableFuture<>(); - server.addConnectFuture(serverConnFut); - - // Client connects - CloseTrackingSocket clientSocket = new CloseTrackingSocket(); - Future clientConnectFuture = client.connect(clientSocket,server.getWsUri()); - - try (BlockheadConnection serverConn = serverConnFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT)) - { - // client confirms connection via echo - confirmConnection(clientSocket, clientConnectFuture, serverConn); - - // client should not have received close message (yet) - clientSocket.assertNoCloseEvent(); - - // server sends bad close frame (too big of a reason message) - byte msg[] = new byte[400]; - Arrays.fill(msg, (byte) 'x'); - ByteBuffer bad = ByteBuffer.allocate(500); - RawFrameBuilder.putOpFin(bad, OpCode.CLOSE, true); - RawFrameBuilder.putLength(bad, msg.length + 2, false); - bad.putShort((short) StatusCode.NORMAL); - bad.put(msg); - BufferUtil.flipToFlush(bad, 0); - - try (StacklessLogging ignore = new StacklessLogging(Parser.class)) - { - serverConn.writeRaw(bad); - - // client should have noticed the error - assertThat("OnError Latch", clientSocket.errorLatch.await(2, TimeUnit.SECONDS), is(true)); - assertThat("OnError", clientSocket.error.get(), instanceOf(ProtocolException.class)); - assertThat("OnError", clientSocket.error.get().getMessage(), containsString("Invalid control frame")); - - // client parse invalid frame, notifies server of close (protocol error) - confirmServerReceivedCloseFrame(serverConn, StatusCode.PROTOCOL, allOf(containsString("Invalid control frame"), containsString("length"))); - } - } - - // client triggers close event on client ws-endpoint - clientSocket.assertReceivedCloseEvent(timeout,is(StatusCode.PROTOCOL),allOf(containsString("Invalid control frame"),containsString("length"))); - assertThat("Client Open Sessions", client.getOpenSessions(), empty()); - } - - @Test - public void testReadEOF() throws Exception - { - // Set client timeout - final int timeout = 1000; - client.setMaxIdleTimeout(timeout); - - // Hook into server connection creation - CompletableFuture serverConnFut = new CompletableFuture<>(); - server.addConnectFuture(serverConnFut); - - // Client connects - CloseTrackingSocket clientSocket = new CloseTrackingSocket(); - Future clientConnectFuture = client.connect(clientSocket,server.getWsUri()); - - try (BlockheadConnection serverConn = serverConnFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT)) - { - // client confirms connection via echo - confirmConnection(clientSocket, clientConnectFuture, serverConn); - - // client sends close frame - final String origCloseReason = "Normal Close"; - clientSocket.getSession().close(StatusCode.NORMAL, origCloseReason); - - // server receives close frame - confirmServerReceivedCloseFrame(serverConn, StatusCode.NORMAL, is(origCloseReason)); - - // client should not have received close message (yet) - clientSocket.assertNoCloseEvent(); - - // server shuts down connection (no frame reply) - serverConn.abort(); - - // client reads -1 (EOF) - // client triggers close event on client ws-endpoint - clientSocket.assertReceivedCloseEvent(timeout, is(StatusCode.ABNORMAL), - anyOf( - containsString("EOF"), - containsString("Disconnected") - )); - } - assertThat("Client Open Sessions", client.getOpenSessions(), empty()); - } - - @Test - public void testServerNoCloseHandshake() throws Exception - { - // Set client timeout - final int timeout = 1000; - client.setMaxIdleTimeout(timeout); - - // Hook into server connection creation - CompletableFuture serverConnFut = new CompletableFuture<>(); - server.addConnectFuture(serverConnFut); - - // Client connects - CloseTrackingSocket clientSocket = new CloseTrackingSocket(); - Future clientConnectFuture = client.connect(clientSocket,server.getWsUri()); - - try (BlockheadConnection serverConn = serverConnFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT)) - { - // client confirms connection via echo - confirmConnection(clientSocket, clientConnectFuture, serverConn); - - // client sends close frame - final String origCloseReason = "Normal Close"; - clientSocket.getSession().close(StatusCode.NORMAL, origCloseReason); - - // server receives close frame - confirmServerReceivedCloseFrame(serverConn, StatusCode.NORMAL, is(origCloseReason)); - - // client should not have received close message (yet) - clientSocket.assertNoCloseEvent(); - - // server never sends close frame handshake - // server sits idle - - // client idle timeout triggers close event on client ws-endpoint - assertThat("OnError Latch", clientSocket.errorLatch.await(2, TimeUnit.SECONDS), is(true)); - assertThat("OnError", clientSocket.error.get(), instanceOf(TimeoutException.class)); - - // client close should occur - clientSocket.assertReceivedCloseEvent(timeout, is(StatusCode.ABNORMAL), - anyOf( - containsString("Timeout"), - containsString("Disconnected") - )); - } - assertThat("Client Open Sessions", client.getOpenSessions(), empty()); - } - - @Test - public void testStopLifecycle() throws Exception - { - // Set client timeout - final int timeout = 1000; - client.setMaxIdleTimeout(timeout); - - int clientCount = 3; - List clientSockets = new ArrayList<>(); - List> serverConnFuts = new ArrayList<>(); - List serverConns = new ArrayList<>(); - - try - { - assertTimeoutPreemptively(ofSeconds(5), ()-> { - // Open Multiple Clients - for (int i = 0; i < clientCount; i++) - { - // Client Request Upgrade - CloseTrackingSocket clientSocket = new CloseTrackingSocket(); - clientSockets.add(clientSocket); - Future clientConnectFuture = client.connect(clientSocket, server.getWsUri()); - - // Server accepts connection - CompletableFuture serverConnFut = new CompletableFuture<>(); - serverConnFuts.add(serverConnFut); - server.addConnectFuture(serverConnFut); - BlockheadConnection serverConn = serverConnFut.get(); - serverConns.add(serverConn); - - // client confirms connection via echo - confirmConnection(clientSocket, clientConnectFuture, serverConn); - } - - // client lifecycle stop (the meat of this test) - client.stop(); - - // clients send close frames (code 1001, shutdown) - for (int i = 0; i < clientCount; i++) - { - // server receives close frame - confirmServerReceivedCloseFrame(serverConns.get(i), StatusCode.SHUTDOWN, containsString("Shutdown")); - } - - // clients disconnect - for (int i = 0; i < clientCount; i++) - { - clientSockets.get(i).assertReceivedCloseEvent(timeout, is(StatusCode.SHUTDOWN), containsString("Shutdown")); - } - assertThat("Client Open Sessions", client.getOpenSessions(), empty()); - - // clients disconnect - for (int i = 0; i < clientCount; i++) - { - clientSockets.get(i).assertReceivedCloseEvent(timeout, is(StatusCode.SHUTDOWN), containsString("Shutdown")); - } - }); - - } - finally - { - for(BlockheadConnection serverConn: serverConns) - { - try - { - serverConn.close(); - } - catch (Exception ignore) - { - } - } - } - } - - @Test - public void testWriteException() throws Exception - { - // Set client timeout - final int timeout = 1000; - client.setMaxIdleTimeout(timeout); - - // Hook into server connection creation - CompletableFuture serverConnFut = new CompletableFuture<>(); - server.addConnectFuture(serverConnFut); - - // Client connects - CloseTrackingSocket clientSocket = new CloseTrackingSocket(); - Future clientConnectFuture = client.connect(clientSocket,server.getWsUri()); - - try (BlockheadConnection serverConn = serverConnFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT)) - { - // client confirms connection via echo - confirmConnection(clientSocket, clientConnectFuture, serverConn); - - // setup client endpoint for write failure (test only) - EndPoint endp = clientSocket.getEndPoint(); - endp.shutdownOutput(); - - // client enqueue close frame - // client write failure - final String origCloseReason = "Normal Close"; - clientSocket.getSession().close(StatusCode.NORMAL, origCloseReason); - - assertThat("OnError Latch", clientSocket.errorLatch.await(2, TimeUnit.SECONDS), is(true)); - assertThat("OnError", clientSocket.error.get(), instanceOf(EofException.class)); - - // client triggers close event on client ws-endpoint - // assert - close code==1006 (abnormal) - // assert - close reason message contains (write failure) - clientSocket.assertReceivedCloseEvent(timeout, is(StatusCode.ABNORMAL), containsString("EOF")); - } - assertThat("Client Open Sessions", client.getOpenSessions(), empty()); - } -} diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ServerWriteThread.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ServerWriteThread.java deleted file mode 100644 index 3f4a0ba2fb1..00000000000 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/ServerWriteThread.java +++ /dev/null @@ -1,96 +0,0 @@ -// -// ======================================================================== -// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -// - -package org.eclipse.jetty.websocket.client; - -import java.util.concurrent.TimeUnit; -import java.util.concurrent.atomic.AtomicInteger; - -import org.eclipse.jetty.util.log.Log; -import org.eclipse.jetty.util.log.Logger; -import org.eclipse.jetty.websocket.common.frames.TextFrame; -import org.eclipse.jetty.websocket.common.test.BlockheadConnection; - -public class ServerWriteThread extends Thread -{ - private static final Logger LOG = Log.getLogger(ServerWriteThread.class); - private final BlockheadConnection conn; - private int slowness = -1; - private int messageCount = 100; - private String message = "Hello"; - - public ServerWriteThread(BlockheadConnection conn) - { - this.conn = conn; - } - - public String getMessage() - { - return message; - } - - public int getMessageCount() - { - return messageCount; - } - - public int getSlowness() - { - return slowness; - } - - @Override - public void run() - { - final AtomicInteger m = new AtomicInteger(); - - try - { - while (m.get() < messageCount) - { - conn.write(new TextFrame().setPayload(message)); - - m.incrementAndGet(); - - if (slowness > 0) - { - TimeUnit.MILLISECONDS.sleep(slowness); - } - } - } - catch (InterruptedException e) - { - LOG.warn(e); - } - } - - public void setMessage(String message) - { - this.message = message; - } - - public void setMessageCount(int messageCount) - { - this.messageCount = messageCount; - } - - public void setSlowness(int slowness) - { - this.slowness = slowness; - } -} diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SessionTest.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SessionTest.java deleted file mode 100644 index db79faa311e..00000000000 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SessionTest.java +++ /dev/null @@ -1,135 +0,0 @@ -// -// ======================================================================== -// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -// - -package org.eclipse.jetty.websocket.client; - -import static org.hamcrest.Matchers.containsString; -import static org.hamcrest.Matchers.is; -import static org.hamcrest.Matchers.notNullValue; -import static org.hamcrest.MatcherAssert.assertThat; - -import java.net.URI; -import java.util.Collection; -import java.util.Set; -import java.util.concurrent.CompletableFuture; -import java.util.concurrent.Future; -import java.util.concurrent.TimeUnit; - -import org.eclipse.jetty.websocket.api.BatchMode; -import org.eclipse.jetty.websocket.api.RemoteEndpoint; -import org.eclipse.jetty.websocket.api.Session; -import org.eclipse.jetty.websocket.common.WebSocketFrame; -import org.eclipse.jetty.websocket.common.WebSocketSession; -import org.eclipse.jetty.websocket.common.test.BlockheadConnection; -import org.eclipse.jetty.websocket.common.test.BlockheadServer; -import org.eclipse.jetty.websocket.common.test.Timeouts; -import org.junit.jupiter.api.AfterAll; - -import org.junit.jupiter.api.BeforeAll; -import org.junit.jupiter.api.Disabled; -import org.junit.jupiter.api.Test; - -public class SessionTest -{ - private static BlockheadServer server; - - @BeforeAll - public static void startServer() throws Exception - { - server = new BlockheadServer(); - server.start(); - } - - @AfterAll - public static void stopServer() throws Exception - { - server.stop(); - } - - @Test - @Disabled // TODO fix frequent failure - public void testBasicEcho_FromClient() throws Exception - { - WebSocketClient client = new WebSocketClient(); - client.start(); - try - { - JettyTrackingSocket cliSock = new JettyTrackingSocket(); - - // Hook into server connection creation - CompletableFuture serverConnFut = new CompletableFuture<>(); - server.addConnectFuture(serverConnFut); - - client.getPolicy().setIdleTimeout(10000); - - URI wsUri = server.getWsUri(); - ClientUpgradeRequest request = new ClientUpgradeRequest(); - request.setSubProtocols("echo"); - Future future = client.connect(cliSock,wsUri,request); - - try (BlockheadConnection serverConn = serverConnFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT)) - { - // Setup echo of frames on server side - serverConn.setIncomingFrameConsumer((frame)->{ - WebSocketFrame copy = WebSocketFrame.copy(frame); - serverConn.write(copy); - }); - - Session sess = future.get(30000, TimeUnit.MILLISECONDS); - assertThat("Session", sess, notNullValue()); - assertThat("Session.open", sess.isOpen(), is(true)); - assertThat("Session.upgradeRequest", sess.getUpgradeRequest(), notNullValue()); - assertThat("Session.upgradeResponse", sess.getUpgradeResponse(), notNullValue()); - - cliSock.assertWasOpened(); - cliSock.assertNotClosed(); - - Collection sessions = client.getBeans(WebSocketSession.class); - assertThat("client.connectionManager.sessions.size", sessions.size(), is(1)); - - RemoteEndpoint remote = cliSock.getSession().getRemote(); - remote.sendStringByFuture("Hello World!"); - if (remote.getBatchMode() == BatchMode.ON) - { - remote.flush(); - } - - // wait for response from server - cliSock.waitForMessage(30000, TimeUnit.MILLISECONDS); - - Set open = client.getOpenSessions(); - assertThat("(Before Close) Open Sessions.size", open.size(), is(1)); - - String received = cliSock.messageQueue.poll(Timeouts.POLL_EVENT, Timeouts.POLL_EVENT_UNIT); - assertThat("Message", received, containsString("Hello World!")); - - cliSock.close(); - } - - cliSock.waitForClose(30000, TimeUnit.MILLISECONDS); - Set open = client.getOpenSessions(); - - // TODO this sometimes fails! - assertThat("(After Close) Open Sessions.size", open.size(), is(0)); - } - finally - { - client.stop(); - } - } -} diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SlowClientTest.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SlowClientTest.java deleted file mode 100644 index a224f94e97c..00000000000 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SlowClientTest.java +++ /dev/null @@ -1,133 +0,0 @@ -// -// ======================================================================== -// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -// - -package org.eclipse.jetty.websocket.client; - -import static org.hamcrest.Matchers.is; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.junit.jupiter.api.Assertions.assertTrue; - -import java.net.URI; -import java.util.concurrent.CompletableFuture; -import java.util.concurrent.Future; -import java.util.concurrent.LinkedBlockingQueue; -import java.util.concurrent.TimeUnit; - -import org.eclipse.jetty.websocket.api.Session; -import org.eclipse.jetty.websocket.api.StatusCode; -import org.eclipse.jetty.websocket.common.CloseInfo; -import org.eclipse.jetty.websocket.common.OpCode; -import org.eclipse.jetty.websocket.common.WebSocketFrame; -import org.eclipse.jetty.websocket.common.test.BlockheadConnection; -import org.eclipse.jetty.websocket.common.test.BlockheadServer; -import org.eclipse.jetty.websocket.common.test.Timeouts; -import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.AfterAll; - -import org.junit.jupiter.api.BeforeAll; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; - -public class SlowClientTest -{ - private static BlockheadServer server; - private WebSocketClient client; - - @BeforeEach - public void startClient() throws Exception - { - client = new WebSocketClient(); - client.getPolicy().setIdleTimeout(60000); - client.start(); - } - - @BeforeAll - public static void startServer() throws Exception - { - server = new BlockheadServer(); - server.start(); - } - - @AfterEach - public void stopClient() throws Exception - { - client.stop(); - } - - @AfterAll - public static void stopServer() throws Exception - { - server.stop(); - } - - @Test - public void testClientSlowToSend() throws Exception - { - JettyTrackingSocket tsocket = new JettyTrackingSocket(); - client.getPolicy().setIdleTimeout(60000); - - URI wsUri = server.getWsUri(); - Future future = client.connect(tsocket, wsUri); - - CompletableFuture serverConnFut = new CompletableFuture<>(); - server.addConnectFuture(serverConnFut); - - // Confirm connected - future.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT); - tsocket.waitForConnected(); - - int messageCount = 10; - - try (BlockheadConnection serverConn = serverConnFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT)) - { - // Have client write slowly. - ClientWriteThread writer = new ClientWriteThread(tsocket.getSession()); - writer.setMessageCount(messageCount); - writer.setMessage("Hello"); - writer.setSlowness(10); - writer.start(); - writer.join(); - - LinkedBlockingQueue serverFrames = serverConn.getFrameQueue(); - - for (int i = 0; i < messageCount; i++) - { - WebSocketFrame serverFrame = serverFrames.poll(Timeouts.POLL_EVENT, Timeouts.POLL_EVENT_UNIT); - String prefix = "Server frame[" + i + "]"; - assertThat(prefix + ".opcode", serverFrame.getOpCode(), is(OpCode.TEXT)); - assertThat(prefix + ".payload", serverFrame.getPayloadAsUTF8(), is("Hello/" + i + "/")); - } - - // Close - tsocket.getSession().close(StatusCode.NORMAL, "Done"); - - // confirm close received on server - WebSocketFrame serverFrame = serverFrames.poll(Timeouts.POLL_EVENT, Timeouts.POLL_EVENT_UNIT); - assertThat("close frame", serverFrame.getOpCode(), is(OpCode.CLOSE)); - CloseInfo closeInfo = new CloseInfo(serverFrame); - assertThat("close info", closeInfo.getStatusCode(), is(StatusCode.NORMAL)); - WebSocketFrame respClose = WebSocketFrame.copy(serverFrame); - respClose.setMask(null); // remove client mask (if present) - serverConn.write(respClose); - - // Verify server response - assertTrue(tsocket.closeLatch.await(3, TimeUnit.MINUTES), "Client Socket Closed"); - tsocket.assertCloseCode(StatusCode.NORMAL); - } - } -} diff --git a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SlowServerTest.java b/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SlowServerTest.java deleted file mode 100644 index 7973fa724d4..00000000000 --- a/jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/SlowServerTest.java +++ /dev/null @@ -1,160 +0,0 @@ -// -// ======================================================================== -// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -// - -package org.eclipse.jetty.websocket.client; - -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.is; -import static org.hamcrest.Matchers.notNullValue; - -import java.net.URI; -import java.util.concurrent.CompletableFuture; -import java.util.concurrent.Future; -import java.util.concurrent.LinkedBlockingQueue; -import java.util.concurrent.TimeUnit; - -import org.eclipse.jetty.websocket.api.Session; -import org.eclipse.jetty.websocket.client.masks.ZeroMasker; -import org.eclipse.jetty.websocket.common.OpCode; -import org.eclipse.jetty.websocket.common.WebSocketFrame; -import org.eclipse.jetty.websocket.common.test.BlockheadConnection; -import org.eclipse.jetty.websocket.common.test.BlockheadServer; -import org.eclipse.jetty.websocket.common.test.Timeouts; -import org.junit.jupiter.api.AfterEach; - -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; - -public class SlowServerTest -{ - private BlockheadServer server; - private WebSocketClient client; - - @BeforeEach - public void startClient() throws Exception - { - client = new WebSocketClient(); - client.setMaxIdleTimeout(60000); - client.start(); - } - - @BeforeEach - public void startServer() throws Exception - { - server = new BlockheadServer(); - server.start(); - } - - @AfterEach - public void stopClient() throws Exception - { - client.stop(); - } - - @AfterEach - public void stopServer() throws Exception - { - server.stop(); - } - - @Test - public void testServerSlowToRead() throws Exception - { - JettyTrackingSocket tsocket = new JettyTrackingSocket(); - client.setMasker(new ZeroMasker()); - client.setMaxIdleTimeout(60000); - - CompletableFuture serverConnFut = new CompletableFuture<>(); - server.addConnectFuture(serverConnFut); - - URI wsUri = server.getWsUri(); - Future future = client.connect(tsocket,wsUri); - - try (BlockheadConnection serverConn = serverConnFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT)) - { - // slow down reads - serverConn.setIncomingFrameConsumer((frame)-> { - try - { - TimeUnit.MILLISECONDS.sleep(100); - } - catch (InterruptedException ignore) - { - } - }); - - // Confirm connected - future.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT); - tsocket.waitForConnected(); - - int messageCount = 10; - - // Have client write as quickly as it can. - ClientWriteThread writer = new ClientWriteThread(tsocket.getSession()); - writer.setMessageCount(messageCount); - writer.setMessage("Hello"); - writer.setSlowness(-1); // disable slowness - writer.start(); - writer.join(); - - // Verify receive - LinkedBlockingQueue serverFrames = serverConn.getFrameQueue(); - for(int i=0; i< messageCount; i++) - { - WebSocketFrame serverFrame = serverFrames.poll(Timeouts.POLL_EVENT, Timeouts.POLL_EVENT_UNIT); - String prefix = "Server Frame[" + i + "]"; - assertThat(prefix, serverFrame, is(notNullValue())); - assertThat(prefix + ".opCode", serverFrame.getOpCode(), is(OpCode.TEXT)); - assertThat(prefix + ".payload", serverFrame.getPayloadAsUTF8(), is("Hello/" + i + "/")); - } - } - } - - @Test - public void testServerSlowToSend() throws Exception - { - JettyTrackingSocket clientSocket = new JettyTrackingSocket(); - client.setMaxIdleTimeout(60000); - - CompletableFuture serverConnFut = new CompletableFuture<>(); - server.addConnectFuture(serverConnFut); - - URI wsUri = server.getWsUri(); - Future clientConnectFuture = client.connect(clientSocket,wsUri); - - try (BlockheadConnection serverConn = serverConnFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT)) - { - // Confirm connected - clientConnectFuture.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT); - clientSocket.waitForConnected(); - - // Have server write slowly. - int messageCount = 1000; - - ServerWriteThread writer = new ServerWriteThread(serverConn); - writer.setMessageCount(messageCount); - writer.setMessage("Hello"); - writer.setSlowness(10); - writer.start(); - writer.join(); - - // Verify receive - assertThat("Message Receive Count", clientSocket.messageQueue.size(), is(messageCount)); - } - } -} diff --git a/jetty-websocket/websocket-client/src/test/resources/jetty-logging.properties b/jetty-websocket/websocket-client/src/test/resources/jetty-logging.properties index 35d2326510d..3d5a1bb92cb 100644 --- a/jetty-websocket/websocket-client/src/test/resources/jetty-logging.properties +++ b/jetty-websocket/websocket-client/src/test/resources/jetty-logging.properties @@ -7,7 +7,7 @@ org.eclipse.jetty.LEVEL=WARN # org.eclipse.jetty.websocket.LEVEL=WARN # org.eclipse.jetty.websocket.LEVEL=DEBUG # org.eclipse.jetty.websocket.client.LEVEL=DEBUG -# org.eclipse.jetty.websocket.client.ClientCloseTest.LEVEL=DEBUG +# org.eclipse.jetty.websocket.tests.client.ClientCloseTest.LEVEL=DEBUG # org.eclipse.jetty.websocket.common.io.AbstractWebSocketConnection.LEVEL=DEBUG # org.eclipse.jetty.websocket.common.io.IOState.LEVEL=DEBUG # org.eclipse.jetty.websocket.common.test.LEVEL=DEBUG diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/ConnectionState.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/ConnectionState.java deleted file mode 100644 index 2dd8d44dc6c..00000000000 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/ConnectionState.java +++ /dev/null @@ -1,61 +0,0 @@ -// -// ======================================================================== -// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -// - -package org.eclipse.jetty.websocket.common; - -import org.eclipse.jetty.websocket.common.io.IOState; -import org.eclipse.jetty.websocket.common.io.IOState.ConnectionStateListener; - -/** - * Connection states as outlined in RFC6455. - */ -public enum ConnectionState -{ - /** [RFC] Initial state of a connection, the upgrade request / response is in progress */ - CONNECTING, - /** - * [Impl] Intermediate state between CONNECTING and OPEN, used to indicate that a upgrade request/response is successful, but the end-user provided socket's - * onOpen code has yet to run. - *

- * This state is to allow the local socket to initiate messages and frames, but to NOT start reading yet. - */ - CONNECTED, - /** - * [RFC] The websocket connection is established and open. - *

- * This indicates that the Upgrade has succeed, and the end-user provided socket's onOpen code has completed. - *

- * It is now time to start reading from the remote endpoint. - */ - OPEN, - /** - * [RFC] The websocket closing handshake is started. - *

- * This can be considered a half-closed state. - *

- * When receiving this as an event on {@link ConnectionStateListener#onConnectionStateChange(ConnectionState)} a close frame should be sent using - * the {@link CloseInfo} available from {@link IOState#getCloseInfo()} - */ - CLOSING, - /** - * [RFC] The websocket connection is closed. - *

- * Connection should be disconnected and no further reads or writes should occur. - */ - CLOSED; -} diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/LogicalConnection.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/LogicalConnection.java index 0ee24d298dc..681efc6ffc6 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/LogicalConnection.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/LogicalConnection.java @@ -22,19 +22,42 @@ import java.net.InetSocketAddress; import java.util.concurrent.Executor; import org.eclipse.jetty.io.ByteBufferPool; +import org.eclipse.jetty.util.Callback; import org.eclipse.jetty.websocket.api.SuspendToken; import org.eclipse.jetty.websocket.api.WebSocketPolicy; import org.eclipse.jetty.websocket.api.extensions.IncomingFrames; import org.eclipse.jetty.websocket.api.extensions.OutgoingFrames; -import org.eclipse.jetty.websocket.common.io.IOState; public interface LogicalConnection extends OutgoingFrames, SuspendToken { /** - * Called to indicate a close frame was successfully sent to the remote. - * @param close the close details + * Test if Connection State allows for reading of frames. + * + * @return true if able to read, false otherwise. */ - void onLocalClose(CloseInfo close); + boolean canReadWebSocketFrames(); + + /** + * Test if Connection State allows for writing frames. + * + * @return true if able to write, false otherwise. + */ + boolean canWriteWebSocketFrames(); + + /** + * Close the connection based on the cause. + * + * @param cause the cause + */ + void close(Throwable cause); + + /** + * Request a local close. + * + * @param closeInfo + * @param callback + */ + void close(CloseInfo closeInfo, Callback callback); /** * Terminate the connection (no close frame sent) @@ -46,42 +69,52 @@ public interface LogicalConnection extends OutgoingFrames, SuspendToken * @return the buffer pool */ ByteBufferPool getBufferPool(); - + /** * Get the Executor used by this connection. * @return the executor */ Executor getExecutor(); + /** + * Get Unique ID for the Connection + * @return the unique ID for the connection + */ + String getId(); + /** * Get the read/write idle timeout. - * + * * @return the idle timeout in milliseconds */ long getIdleTimeout(); - /** - * Get the IOState of the connection. - * - * @return the IOState of the connection. - */ - IOState getIOState(); - /** * Get the local {@link InetSocketAddress} in use for this connection. *

* Note: Non-physical connections, like during the Mux extensions, or during unit testing can result in a InetSocketAddress on port 0 and/or on localhost. - * + * * @return the local address. */ InetSocketAddress getLocalAddress(); - + /** * Set the maximum number of milliseconds of idleness before the connection is closed/disconnected, (ie no frames are either sent or received) * @return the idle timeout in milliseconds */ long getMaxIdleTimeout(); + /** + * Set the maximum number of milliseconds of idleness before the connection is closed/disconnected, (ie no frames are either sent or received) + *

+ * This idle timeout cannot be garunteed to take immediate effect for any active read/write actions. + * New read/write actions will have this new idle timeout. + * + * @param ms + * the number of milliseconds of idle timeout + */ + void setMaxIdleTimeout(long ms); + /** * The policy that the connection is running under. * @return the policy for the connection @@ -92,35 +125,47 @@ public interface LogicalConnection extends OutgoingFrames, SuspendToken * Get the remote Address in use for this connection. *

* Note: Non-physical connections, like during the Mux extensions, or during unit testing can result in a InetSocketAddress on port 0 and/or on localhost. - * + * * @return the remote address. */ InetSocketAddress getRemoteAddress(); /** * Test if logical connection is still open - * + * * @return true if connection is open */ boolean isOpen(); /** * Tests if the connection is actively reading. - * + * * @return true if connection is actively attempting to read. */ boolean isReading(); /** - * Set the maximum number of milliseconds of idleness before the connection is closed/disconnected, (ie no frames are either sent or received) + * Set the state to opened (the application onOpen() method has been called successfully). *

- * This idle timeout cannot be garunteed to take immediate effect for any active read/write actions. - * New read/write actions will have this new idle timeout. - * - * @param ms - * the number of milliseconds of idle timeout + * Reads from network begin here. + *

+ * + * @return true if state is OPENED, false otherwise */ - void setMaxIdleTimeout(long ms); + boolean opened(); + + /** + * Set the state to upgrade/opening handshake has completed. + * + * @return true if state is OPENING, false otherwise + */ + boolean opening(); + + /** + * Report that the Remote Endpoint CLOSE Frame has been received + * @param close the close frame details + */ + void remoteClose(CloseInfo close); /** * Set where the connection should send the incoming frames to. @@ -146,8 +191,9 @@ public interface LogicalConnection extends OutgoingFrames, SuspendToken SuspendToken suspend(); /** - * Get Unique ID for the Connection - * @return the unique ID for the connection + * Get the Connection State as a String + * + * @return the Connection State string */ - String getId(); + String toStateString(); } diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/Parser.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/Parser.java index 68f695c88ec..5eb6daf8beb 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/Parser.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/Parser.java @@ -212,6 +212,8 @@ public class Parser if (incomingFramesHandler == null) { + if(LOG.isDebugEnabled()) + LOG.debug("No IncomingFrames Handler to notify"); return; } try diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketRemoteEndpoint.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketRemoteEndpoint.java index db79051a105..0a74679d4e5 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketRemoteEndpoint.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketRemoteEndpoint.java @@ -251,7 +251,6 @@ public class WebSocketRemoteEndpoint implements RemoteEndpoint lockMsg(MsgType.BLOCKING); try { - connection.getIOState().assertOutputOpen(); if (LOG.isDebugEnabled()) { LOG.debug("sendBytes with {}", BufferUtil.toDetailString(data)); @@ -302,18 +301,10 @@ public class WebSocketRemoteEndpoint implements RemoteEndpoint public void uncheckedSendFrame(WebSocketFrame frame, WriteCallback callback) { - try - { - BatchMode batchMode = BatchMode.OFF; - if (frame.isDataFrame()) - batchMode = getBatchMode(); - connection.getIOState().assertOutputOpen(); - outgoing.outgoingFrame(frame, callback, batchMode); - } - catch (IOException e) - { - callback.writeFailed(e); - } + BatchMode batchMode = BatchMode.OFF; + if (frame.isDataFrame()) + batchMode = getBatchMode(); + outgoing.outgoingFrame(frame, callback, batchMode); } @Override diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java index 928dc0664c1..248268fa36d 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java @@ -18,7 +18,6 @@ package org.eclipse.jetty.websocket.common; -import java.io.IOException; import java.net.InetSocketAddress; import java.net.URI; import java.util.HashMap; @@ -30,6 +29,7 @@ import java.util.ServiceLoader; import java.util.concurrent.CompletableFuture; import java.util.concurrent.Executor; import java.util.concurrent.atomic.AtomicBoolean; +import java.util.function.Consumer; import org.eclipse.jetty.io.ByteBufferPool; import org.eclipse.jetty.io.Connection; @@ -37,13 +37,10 @@ import org.eclipse.jetty.util.Callback; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.component.ContainerLifeCycle; -import org.eclipse.jetty.util.component.Dumpable; -import org.eclipse.jetty.util.component.DumpableCollection; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.util.thread.ThreadClassLoaderScope; import org.eclipse.jetty.websocket.api.BatchMode; -import org.eclipse.jetty.websocket.api.CloseException; import org.eclipse.jetty.websocket.api.CloseStatus; import org.eclipse.jetty.websocket.api.RemoteEndpoint; import org.eclipse.jetty.websocket.api.Session; @@ -51,88 +48,20 @@ import org.eclipse.jetty.websocket.api.StatusCode; import org.eclipse.jetty.websocket.api.SuspendToken; import org.eclipse.jetty.websocket.api.UpgradeRequest; import org.eclipse.jetty.websocket.api.UpgradeResponse; -import org.eclipse.jetty.websocket.api.WebSocketBehavior; -import org.eclipse.jetty.websocket.api.WebSocketException; import org.eclipse.jetty.websocket.api.WebSocketPolicy; -import org.eclipse.jetty.websocket.api.WriteCallback; import org.eclipse.jetty.websocket.api.extensions.ExtensionFactory; import org.eclipse.jetty.websocket.api.extensions.Frame; import org.eclipse.jetty.websocket.api.extensions.IncomingFrames; import org.eclipse.jetty.websocket.api.extensions.OutgoingFrames; import org.eclipse.jetty.websocket.common.events.EventDriver; -import org.eclipse.jetty.websocket.common.frames.CloseFrame; -import org.eclipse.jetty.websocket.common.io.IOState; -import org.eclipse.jetty.websocket.common.io.IOState.ConnectionStateListener; +import org.eclipse.jetty.websocket.common.io.DisconnectCallback; import org.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope; import org.eclipse.jetty.websocket.common.scopes.WebSocketSessionScope; @ManagedObject("A Jetty WebSocket Session") -public class WebSocketSession extends ContainerLifeCycle implements Session, RemoteEndpointFactory, WebSocketSessionScope, IncomingFrames, Connection.Listener, ConnectionStateListener +public class WebSocketSession extends ContainerLifeCycle implements Session, RemoteEndpointFactory, WebSocketSessionScope, IncomingFrames, Connection.Listener { - public static class OnCloseLocalCallback implements WriteCallback - { - private final Callback callback; - private final LogicalConnection connection; - private final CloseInfo close; - - public OnCloseLocalCallback(Callback callback, LogicalConnection connection, CloseInfo close) - { - this.callback = callback; - this.connection = connection; - this.close = close; - } - - @Override - public void writeSuccess() - { - try - { - if (callback != null) - { - callback.succeeded(); - } - } - finally - { - connection.onLocalClose(close); - } - } - - @Override - public void writeFailed(Throwable x) - { - try - { - if (callback != null) - { - callback.failed(x); - } - } - finally - { - connection.onLocalClose(close); - } - } - } - - public class DisconnectCallback implements Callback - { - @Override - public void failed(Throwable x) - { - disconnect(); - } - - @Override - public void succeeded() - { - disconnect(); - } - } - - private static final Logger LOG = Log.getLogger(WebSocketSession.class); - private static final Logger LOG_OPEN = Log.getLogger(WebSocketSession.class.getName() + "_OPEN"); private final WebSocketContainerScope containerScope; private final URI requestURI; private final LogicalConnection connection; @@ -151,6 +80,7 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem private UpgradeRequest upgradeRequest; private UpgradeResponse upgradeResponse; private CompletableFuture openFuture; + private AtomicBoolean onCloseCalled = new AtomicBoolean(false); public WebSocketSession(WebSocketContainerScope containerScope, URI requestURI, EventDriver websocket, LogicalConnection connection) { @@ -165,7 +95,6 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem this.executor = connection.getExecutor(); this.outgoingHandler = connection; this.incomingHandler = websocket; - this.connection.getIOState().addListener(this); this.policy = websocket.getPolicy(); this.connection.setSession(this); @@ -175,13 +104,13 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem } /** - * Aborts the active session abruptly. - * @param statusCode the status code - * @param reason the raw reason code + * Close the active session based on the throwable + * + * @param cause the cause for closing the connection */ - public void abort(int statusCode, String reason) + public void close(Throwable cause) { - close(new CloseInfo(statusCode, reason), new DisconnectCallback()); + connection.close(cause); } @Override @@ -204,12 +133,7 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem } /** - * CLOSE Primary Entry Point. - * - *
    - *
  • atomically enqueue CLOSE frame + flip flag to reject more frames
  • - *
  • setup CLOSE frame callback: must close flusher
  • - *
+ * Close Primary Entry Point. * * @param closeInfo the close details */ @@ -218,11 +142,7 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem if (LOG.isDebugEnabled()) LOG.debug("close({})", closeInfo); - if (closed.compareAndSet(false, true)) - { - CloseFrame frame = closeInfo.asFrame(); - connection.outgoingFrame(frame, new OnCloseLocalCallback(callback, connection, closeInfo), BatchMode.OFF); - } + connection.close(closeInfo, callback); } /** @@ -232,9 +152,6 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem public void disconnect() { connection.disconnect(); - - // notify of harsh disconnect - notifyClose(StatusCode.NO_CLOSE,"Harsh disconnect"); } public void dispatch(Runnable runnable) @@ -266,14 +183,7 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem { if(LOG.isDebugEnabled()) LOG.debug("stopping - {}",this); - try - { - close(StatusCode.SHUTDOWN,"Shutdown"); - } - catch (Throwable t) - { - LOG.debug("During Connection Shutdown",t); - } + connection.close(new CloseInfo(StatusCode.SHUTDOWN,"Shutdown"), new DisconnectCallback(connection)); super.doStop(); } @@ -287,36 +197,6 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem getRequestURI()); } - @Override - public boolean equals(Object obj) - { - if (this == obj) - { - return true; - } - if (obj == null) - { - return false; - } - if (getClass() != obj.getClass()) - { - return false; - } - WebSocketSession other = (WebSocketSession)obj; - if (connection == null) - { - if (other.connection != null) - { - return false; - } - } - else if (!connection.equals(other.connection)) - { - return false; - } - return true; - } - public ByteBufferPool getBufferPool() { return this.connection.getBufferPool(); @@ -385,16 +265,12 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem @Override public RemoteEndpoint getRemote() { - if(LOG_OPEN.isDebugEnabled()) - LOG_OPEN.debug("[{}] {}.getRemote()",policy.getBehavior(),this.getClass().getSimpleName()); - ConnectionState state = connection.getIOState().getConnectionState(); - - if ((state == ConnectionState.OPEN) || (state == ConnectionState.CONNECTED)) + if (LOG.isDebugEnabled()) { - return remote; + LOG.debug("[{}] {}.getRemote()", policy.getBehavior(), this.getClass().getSimpleName()); } - throw new WebSocketException("RemoteEndpoint unavailable, current state [" + state + "], expecting [OPEN or CONNECTED]"); + return remote; } @Override @@ -427,25 +303,6 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem return this; } - @Override - public int hashCode() - { - final int prime = 31; - int result = 1; - result = (prime * result) + ((connection == null)?0:connection.hashCode()); - return result; - } - - /** - * Incoming Errors - */ - @Override - public void incomingError(Throwable t) - { - // Forward Errors to User WebSocket Object - websocket.incomingError(t); - } - /** * Incoming Raw Frames from Parser */ @@ -456,11 +313,18 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem try { Thread.currentThread().setContextClassLoader(classLoader); - if (connection.getIOState().isInputAvailable()) + if (connection.canReadWebSocketFrames()) { // Forward Frames Through Extension List incomingHandler.incomingFrame(frame); } + else + { + if (LOG.isDebugEnabled()) + { + LOG.debug("Attempt to process frame when in wrong connection state: " + connection.toStateString(), new RuntimeException("TRACE")); + } + } } finally { @@ -491,30 +355,51 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem return "wss".equalsIgnoreCase(requestURI.getScheme()); } - public void notifyClose(int statusCode, String reason) + public void callApplicationOnClose(CloseInfo closeInfo) { if (LOG.isDebugEnabled()) { - LOG.debug("notifyClose({},{})",statusCode,reason); + LOG.debug("callApplicationOnClose({})", closeInfo); + } + if(onCloseCalled.compareAndSet(false,true)) + { + websocket.onClose(closeInfo); } - websocket.onClose(new CloseInfo(statusCode,reason)); } - public void notifyError(Throwable cause) + public void callApplicationOnError(Throwable cause) { + if (LOG.isDebugEnabled()) + { + LOG.debug("callApplicationOnError()", cause); + } if (openFuture != null && !openFuture.isDone()) openFuture.completeExceptionally(cause); - incomingError(cause); + websocket.onError(cause); } /** - * Jetty Connection onClosed event + * Jetty Connection onSessionClosed event * * @param connection the connection that was closed */ @Override public void onClosed(Connection connection) { + if(LOG.isDebugEnabled()) + LOG.debug("[{}] {}.onSessionClosed()",policy.getBehavior(),this.getClass().getSimpleName()); + if(connection == this.connection) + { + this.connection.disconnect(); + try + { + notifySessionListeners(containerScope, (listener) -> listener.onSessionClosed(this)); + } + catch (Throwable cause) + { + LOG.ignore(cause); + } + } } /** @@ -525,49 +410,11 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem @Override public void onOpened(Connection connection) { - if(LOG_OPEN.isDebugEnabled()) - LOG_OPEN.debug("[{}] {}.onOpened()",policy.getBehavior(),this.getClass().getSimpleName()); + if(LOG.isDebugEnabled()) + LOG.debug("[{}] {}.onSessionOpened()",policy.getBehavior(),this.getClass().getSimpleName()); open(); } - @SuppressWarnings("incomplete-switch") - @Override - public void onConnectionStateChange(ConnectionState state) - { - switch (state) - { - case CLOSED: - IOState ioState = this.connection.getIOState(); - CloseInfo close = ioState.getCloseInfo(); - // confirmed close of local endpoint - notifyClose(close.getStatusCode(),close.getReason()); - try - { - if (LOG.isDebugEnabled()) - LOG.debug("{}.onSessionClosed()",containerScope.getClass().getSimpleName()); - containerScope.onSessionClosed(this); - } - catch (Throwable t) - { - LOG.ignore(t); - } - break; - case CONNECTED: - // notify session listeners - try - { - if (LOG.isDebugEnabled()) - LOG.debug("{}.onSessionOpened()",containerScope.getClass().getSimpleName()); - containerScope.onSessionOpened(this); - } - catch (Throwable t) - { - LOG.ignore(t); - } - break; - } - } - @Override public WebSocketRemoteEndpoint newRemoteEndpoint(LogicalConnection connection, OutgoingFrames outgoingFrames, BatchMode batchMode) { @@ -579,8 +426,8 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem */ public void open() { - if(LOG_OPEN.isDebugEnabled()) - LOG_OPEN.debug("[{}] {}.open()",policy.getBehavior(),this.getClass().getSimpleName()); + if(LOG.isDebugEnabled()) + LOG.debug("[{}] {}.open()",policy.getBehavior(),this.getClass().getSimpleName()); if (remote != null) { @@ -591,45 +438,49 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem try(ThreadClassLoaderScope scope = new ThreadClassLoaderScope(classLoader)) { // Upgrade success - connection.getIOState().onConnected(); - - // Connect remote - remote = remoteEndpointFactory.newRemoteEndpoint(connection,outgoingHandler,getBatchMode()); - if(LOG_OPEN.isDebugEnabled()) - LOG_OPEN.debug("[{}] {}.open() remote={}",policy.getBehavior(),this.getClass().getSimpleName(),remote); - - // Open WebSocket - websocket.openSession(this); - - // Open connection - connection.getIOState().onOpened(); - - if (LOG.isDebugEnabled()) + if(connection.opening()) { - LOG.debug("[{}] open -> {}",getPolicy().getBehavior(),dump()); + // Connect remote + remote = remoteEndpointFactory.newRemoteEndpoint(connection, outgoingHandler, getBatchMode()); + if (LOG.isDebugEnabled()) + LOG.debug("[{}] {}.open() remote={}", policy.getBehavior(), this.getClass().getSimpleName(), remote); + + // Open WebSocket - and call Application onOpen + websocket.openSession(this); + + // Open connection + if(connection.opened()) + { + try + { + notifySessionListeners(containerScope, (listener)-> listener.onSessionOpened(this)); + } + catch (Throwable t) + { + LOG.ignore(t); + } + } + else + { + // we had a failure during onOpen() + callApplicationOnClose(new CloseInfo(StatusCode.ABNORMAL, "Failed to open local endpoint")); + disconnect(); + } + + if (LOG.isDebugEnabled()) + { + LOG.debug("[{}] open -> {}", getPolicy().getBehavior(), dump()); + } + + if (openFuture != null) + { + openFuture.complete(this); + } } - - if(openFuture != null) - { - openFuture.complete(this); - } - } - catch (CloseException ce) - { - LOG.warn(ce); - close(ce.getStatusCode(),ce.getMessage()); } catch (Throwable t) { - LOG.warn(t); - // Exception on end-user WS-Endpoint. - // Fast-fail & close connection with reason. - int statusCode = StatusCode.SERVER_ERROR; - if(policy.getBehavior() == WebSocketBehavior.CLIENT) - { - statusCode = StatusCode.POLICY_VIOLATION; - } - close(statusCode,t.getMessage()); + close(t); } } @@ -704,6 +555,21 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem return BatchMode.AUTO; } + private void notifySessionListeners(WebSocketContainerScope scope, Consumer consumer) + { + for (WebSocketSessionListener listener : scope.getSessionListeners()) + { + try + { + consumer.accept(listener); + } + catch (Throwable x) + { + LOG.info("Exception while invoking listener " + listener, x); + } + } + } + @Override public String toString() { @@ -718,11 +584,4 @@ public class WebSocketSession extends ContainerLifeCycle implements Session, Rem builder.append("]"); return builder.toString(); } - - public static interface Listener - { - void onOpened(WebSocketSession session); - - void onClosed(WebSocketSession session); - } } diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSessionListener.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSessionListener.java new file mode 100644 index 00000000000..2c1c0814abc --- /dev/null +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSessionListener.java @@ -0,0 +1,26 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.common; + +public interface WebSocketSessionListener +{ + void onSessionOpened(WebSocketSession session); + + void onSessionClosed(WebSocketSession session); +} diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/AbstractEventDriver.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/AbstractEventDriver.java index a4dccca8cc6..ca188788f2e 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/AbstractEventDriver.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/AbstractEventDriver.java @@ -26,9 +26,8 @@ import org.eclipse.jetty.util.Utf8Appendable.NotUtf8Exception; import org.eclipse.jetty.util.component.AbstractLifeCycle; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; +import org.eclipse.jetty.websocket.api.BadPayloadException; import org.eclipse.jetty.websocket.api.BatchMode; -import org.eclipse.jetty.websocket.api.CloseException; -import org.eclipse.jetty.websocket.api.StatusCode; import org.eclipse.jetty.websocket.api.WebSocketPolicy; import org.eclipse.jetty.websocket.api.extensions.Frame; import org.eclipse.jetty.websocket.api.extensions.IncomingFrames; @@ -85,17 +84,6 @@ public abstract class AbstractEventDriver extends AbstractLifeCycle implements I return session; } - @Override - public final void incomingError(Throwable e) - { - if (LOG.isDebugEnabled()) - { - LOG.debug("incomingError(" + e.getClass().getName() + ")",e); - } - - onError(e); - } - @Override public void incomingFrame(Frame frame) { @@ -118,7 +106,7 @@ public abstract class AbstractEventDriver extends AbstractLifeCycle implements I CloseInfo close = new CloseInfo(closeframe,validate); // process handshake - session.getConnection().getIOState().onCloseRemote(close); + session.getConnection().remoteClose(close); return; } @@ -176,15 +164,11 @@ public abstract class AbstractEventDriver extends AbstractLifeCycle implements I } catch (NotUtf8Exception e) { - terminateConnection(StatusCode.BAD_PAYLOAD,e.getMessage()); - } - catch (CloseException e) - { - terminateConnection(e.getStatusCode(),e.getMessage()); + session.close(new BadPayloadException(e)); } catch (Throwable t) { - unhandled(t); + session.close(t); } } @@ -202,13 +186,11 @@ public abstract class AbstractEventDriver extends AbstractLifeCycle implements I @Override public void onPong(ByteBuffer buffer) { - /* TODO: provide annotation in future */ } @Override public void onPing(ByteBuffer buffer) { - /* TODO: provide annotation in future */ } @Override @@ -230,42 +212,12 @@ public abstract class AbstractEventDriver extends AbstractLifeCycle implements I try { + // Call application onOpen this.onConnect(); } catch (Throwable t) { - this.session.notifyError(t); - throw t; - } - } - - protected void terminateConnection(int statusCode, String rawreason) - { - if (LOG.isDebugEnabled()) - LOG.debug("terminateConnection({},{})",statusCode,rawreason); - session.close(statusCode,CloseFrame.truncate(rawreason)); - } - - private void unhandled(Throwable t) - { - TARGET_LOG.warn("Unhandled Error (closing connection)",t); - onError(t); - - if (t instanceof CloseException) - { - terminateConnection(((CloseException)t).getStatusCode(),t.getClass().getSimpleName()); - return; - } - - // Unhandled Error, close the connection. - switch (policy.getBehavior()) - { - case SERVER: - terminateConnection(StatusCode.SERVER_ERROR,t.getClass().getSimpleName()); - break; - case CLIENT: - terminateConnection(StatusCode.POLICY_VIOLATION,t.getClass().getSimpleName()); - break; + this.session.close(t); } } } diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/EventDriver.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/EventDriver.java index 6666aea1e23..87948812048 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/EventDriver.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/EventDriver.java @@ -32,37 +32,37 @@ import org.eclipse.jetty.websocket.common.WebSocketSession; public interface EventDriver extends IncomingFrames { - public WebSocketPolicy getPolicy(); + WebSocketPolicy getPolicy(); - public WebSocketSession getSession(); + WebSocketSession getSession(); - public BatchMode getBatchMode(); + BatchMode getBatchMode(); - public void onBinaryFrame(ByteBuffer buffer, boolean fin) throws IOException; + void onBinaryFrame(ByteBuffer buffer, boolean fin) throws IOException; - public void onBinaryMessage(byte[] data); + void onBinaryMessage(byte[] data); - public void onClose(CloseInfo close); + void onClose(CloseInfo close); - public void onConnect(); + void onConnect(); - public void onContinuationFrame(ByteBuffer buffer, boolean fin) throws IOException; + void onContinuationFrame(ByteBuffer buffer, boolean fin) throws IOException; - public void onError(Throwable t); + void onError(Throwable t); - public void onFrame(Frame frame); + void onFrame(Frame frame); - public void onInputStream(InputStream stream) throws IOException; + void onInputStream(InputStream stream) throws IOException; - public void onPing(ByteBuffer buffer); + void onPing(ByteBuffer buffer); - public void onPong(ByteBuffer buffer); + void onPong(ByteBuffer buffer); - public void onReader(Reader reader) throws IOException; + void onReader(Reader reader) throws IOException; - public void onTextFrame(ByteBuffer buffer, boolean fin) throws IOException; + void onTextFrame(ByteBuffer buffer, boolean fin) throws IOException; - public void onTextMessage(String message); + void onTextMessage(String message); - public void openSession(WebSocketSession session); + void openSession(WebSocketSession session); } diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedEventDriver.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedEventDriver.java index 99266b082d9..bad2c17e113 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedEventDriver.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/events/JettyAnnotatedEventDriver.java @@ -23,6 +23,8 @@ import java.io.InputStream; import java.io.Reader; import java.nio.ByteBuffer; +import org.eclipse.jetty.util.log.Log; +import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.websocket.api.BatchMode; import org.eclipse.jetty.websocket.api.WebSocketPolicy; import org.eclipse.jetty.websocket.api.annotations.WebSocket; @@ -39,6 +41,7 @@ import org.eclipse.jetty.websocket.common.message.SimpleTextMessage; */ public class JettyAnnotatedEventDriver extends AbstractEventDriver { + private static final Logger LOG = Log.getLogger(JettyAnnotatedEventDriver.class); private final JettyAnnotatedMetadata events; private boolean hasCloseBeenCalled = false; private BatchMode batchMode; @@ -156,6 +159,10 @@ public class JettyAnnotatedEventDriver extends AbstractEventDriver { events.onError.call(websocket,session,cause); } + else + { + LOG.warn("Unable to report throwable to websocket (no @OnWebSocketError handler declared): " + websocket.getClass().getName(), cause); + } } @Override diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtension.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtension.java index 0013ceaaa40..e6a2cb17687 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtension.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/AbstractExtension.java @@ -18,13 +18,10 @@ package org.eclipse.jetty.websocket.common.extensions; -import java.io.IOException; - import org.eclipse.jetty.io.ByteBufferPool; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.component.AbstractLifeCycle; -import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.websocket.api.BatchMode; @@ -105,12 +102,6 @@ public abstract class AbstractExtension extends AbstractLifeCycle implements Ext return policy; } - @Override - public void incomingError(Throwable e) - { - nextIncomingError(e); - } - /** * Used to indicate that the extension makes use of the RSV1 bit of the base websocket framing. *

@@ -150,11 +141,6 @@ public abstract class AbstractExtension extends AbstractLifeCycle implements Ext return false; } - protected void nextIncomingError(Throwable e) - { - this.nextIncoming.incomingError(e); - } - protected void nextIncomingFrame(Frame frame) { log.debug("nextIncomingFrame({})",frame); diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStack.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStack.java index 324dfbd2c20..8bcdd4b3440 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStack.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/ExtensionStack.java @@ -18,7 +18,6 @@ package org.eclipse.jetty.websocket.common.extensions; -import java.io.IOException; import java.util.ArrayDeque; import java.util.ArrayList; import java.util.List; @@ -29,7 +28,6 @@ import org.eclipse.jetty.util.IteratingCallback; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.component.ContainerLifeCycle; -import org.eclipse.jetty.util.component.DumpableCollection; import org.eclipse.jetty.util.component.LifeCycle; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -197,12 +195,6 @@ public class ExtensionStack extends ContainerLifeCycle implements IncomingFrames return (this.extensions != null) && (this.extensions.size() > 0); } - @Override - public void incomingError(Throwable e) - { - nextIncoming.incomingError(e); - } - @Override public void incomingFrame(Frame frame) { diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/identity/IdentityExtension.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/identity/IdentityExtension.java index 132dccb183a..bf6f980473a 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/identity/IdentityExtension.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/extensions/identity/IdentityExtension.java @@ -42,13 +42,6 @@ public class IdentityExtension extends AbstractExtension return "identity"; } - @Override - public void incomingError(Throwable e) - { - // pass through - nextIncomingError(e); - } - @Override public void incomingFrame(Frame frame) { diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java index 9203894e1f5..0c8b54ff7a4 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java @@ -33,6 +33,8 @@ import org.eclipse.jetty.io.ByteBufferPool; import org.eclipse.jetty.io.Connection; import org.eclipse.jetty.io.EndPoint; import org.eclipse.jetty.util.BufferUtil; +import org.eclipse.jetty.util.Callback; +import org.eclipse.jetty.util.StringUtil; import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -46,39 +48,54 @@ import org.eclipse.jetty.websocket.api.WriteCallback; import org.eclipse.jetty.websocket.api.extensions.ExtensionConfig; import org.eclipse.jetty.websocket.api.extensions.Frame; import org.eclipse.jetty.websocket.common.CloseInfo; -import org.eclipse.jetty.websocket.common.ConnectionState; import org.eclipse.jetty.websocket.common.Generator; import org.eclipse.jetty.websocket.common.LogicalConnection; import org.eclipse.jetty.websocket.common.Parser; import org.eclipse.jetty.websocket.common.WebSocketSession; -import org.eclipse.jetty.websocket.common.io.IOState.ConnectionStateListener; +import org.eclipse.jetty.websocket.common.frames.CloseFrame; + +import static org.eclipse.jetty.websocket.api.WebSocketBehavior.SERVER; /** * Provides the implementation of {@link LogicalConnection} within the framework of the new {@link org.eclipse.jetty.io.Connection} framework of {@code jetty-io}. */ -public abstract class AbstractWebSocketConnection extends AbstractConnection implements LogicalConnection, Connection.UpgradeTo, ConnectionStateListener, Dumpable +public abstract class AbstractWebSocketConnection extends AbstractConnection implements LogicalConnection, Connection.UpgradeTo, Dumpable { + + private static class CallbackBridge implements WriteCallback + { + private final Callback callback; + + public CallbackBridge(Callback callback) + { + this.callback = callback != null ? callback : Callback.NOOP; + } + + @Override + public void writeFailed(Throwable x) + { + callback.failed(x); + } + + @Override + public void writeSuccess() + { + callback.succeeded(); + } + } + private class Flusher extends FrameFlusher { private Flusher(ByteBufferPool bufferPool, Generator generator, EndPoint endpoint) { - super(bufferPool,generator,endpoint,getPolicy().getMaxBinaryMessageBufferSize(),8); + super(bufferPool, generator, endpoint, getPolicy().getMaxBinaryMessageBufferSize(), 8); } @Override public void onCompleteFailure(Throwable failure) { super.onCompleteFailure(failure); - notifyError(failure); - if (ioState.wasAbnormalClose()) - { - LOG.ignore(failure); - return; - } - if (LOG.isDebugEnabled()) - LOG.debug("Write flush failure", failure); - ioState.onWriteFailure(failure); - disconnect(); + AbstractWebSocketConnection.this.close(failure); } } @@ -124,31 +141,28 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp private final Generator generator; private final Parser parser; private final WebSocketPolicy policy; - private final ReadState readState; + private final ReadState readState = new ReadState(); + private final ConnectionState connectionState = new ConnectionState(); private final FrameFlusher flusher; private final String id; private WebSocketSession session; - private List extensions; + private List extensions = new ArrayList<>(); private ByteBuffer prefillBuffer; private ReadMode readMode = ReadMode.PARSE; - private IOState ioState; private Stats stats = new Stats(); + private CloseInfo fatalCloseInfo; public AbstractWebSocketConnection(EndPoint endp, Executor executor, Scheduler scheduler, WebSocketPolicy policy, ByteBufferPool bufferPool) { - super(endp,executor); + super(endp, executor); this.id = Long.toString(ID_GEN.incrementAndGet()); this.policy = policy; this.bufferPool = bufferPool; - this.generator = new Generator(policy,bufferPool); - this.parser = new Parser(policy,bufferPool); + this.generator = new Generator(policy, bufferPool); + this.parser = new Parser(policy, bufferPool); this.scheduler = scheduler; - this.extensions = new ArrayList<>(); - this.readState = new ReadState(); - this.ioState = new IOState(); - this.ioState.addListener(this); - this.flusher = new Flusher(bufferPool,generator,endp); + this.flusher = new Flusher(bufferPool, generator, endp); this.setInputBufferSize(policy.getInputBufferSize()); this.setMaxIdleTimeout(policy.getIdleTimeout()); } @@ -159,22 +173,112 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp return super.getExecutor(); } - @Override - public void onLocalClose(CloseInfo close) + public void close(CloseInfo close, final Callback callback) { - if (LOG.isDebugEnabled()) - LOG.debug("Local Close Confirmed {}",close); - - if (close.isAbnormal()) + if (connectionState.closing()) { - ioState.onAbnormalClose(close); + boolean transmit = close.getStatusCode() == StatusCode.NO_CODE || StatusCode.isTransmittable(close.getStatusCode()); + if (transmit) + { + CloseFrame frame = close.asFrame(); + outgoingFrame(frame, new CallbackBridge(callback), BatchMode.OFF); + + if (StatusCode.isFatal(close.getStatusCode())) + { + fatalCloseInfo = close; + } + } + else + { + disconnect(); + } } else { - ioState.onCloseLocal(close); + if (callback != null) + { + callback.failed(new IllegalStateException("Local Close already called")); + } } } + /** + * Close the connection based on the throwable + * + * @param cause the cause + */ + public void close(Throwable cause) + { + session.callApplicationOnError(cause); + + int statusCode = policy.getBehavior() == SERVER ? StatusCode.SERVER_ERROR : StatusCode.ABNORMAL; + + if (cause instanceof CloseException) + { + statusCode = ((CloseException) cause).getStatusCode(); + } + String reason = cause.getMessage(); + if (StringUtil.isBlank(reason)) + { + // an exception without a message. + reason = cause.getClass().getSimpleName(); + } + + CloseInfo closeInfo = new CloseInfo(statusCode, reason); + session.callApplicationOnClose(closeInfo); + close(closeInfo, new DisconnectCallback(this)); + } + + @Override + public boolean canWriteWebSocketFrames() + { + return connectionState.canWriteWebSocketFrames(); + } + + @Override + public boolean canReadWebSocketFrames() + { + return connectionState.canReadWebSocketFrames(); + } + + @Override + public String toStateString() + { + return connectionState.toString(); + } + + @Override + public boolean opening() + { + return connectionState.opening(); + } + + @Override + public boolean opened() + { + if (connectionState.opened()) + { + if (BufferUtil.hasContent(prefillBuffer)) + { + if (LOG.isDebugEnabled()) + { + LOG.debug("Parsing Upgrade prefill buffer ({} remaining)", prefillBuffer.remaining()); + } + parser.parse(prefillBuffer); + } + fillInterested(); + return true; + } + return false; + } + + @Override + public void remoteClose(CloseInfo close) + { + session.callApplicationOnClose(close); + close(close, new DisconnectCallback(this)); + } + @Override public void setSession(WebSocketSession session) { @@ -194,20 +298,35 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp @Override public void close() { - session.close(); + close(new CloseInfo(), Callback.NOOP); } @Override public void disconnect() { - if (LOG.isDebugEnabled()) - LOG.debug("{} disconnect()",policy.getBehavior()); - flusher.terminate(new EOFException("Disconnected"), false); - EndPoint endPoint = getEndPoint(); - // We need to gently close first, to allow - // SSL close alerts to be sent by Jetty - endPoint.shutdownOutput(); - endPoint.close(); + if (connectionState.disconnected()) + { + /* Use prior Fatal Close Info if present, otherwise + * because if could be from a failed close handshake where + * the local initiated, but the remote never responded. + */ + CloseInfo closeInfo = fatalCloseInfo; + if(closeInfo == null) + { + closeInfo = new CloseInfo(StatusCode.ABNORMAL, "Disconnected"); + } + session.callApplicationOnClose(closeInfo); + if (LOG.isDebugEnabled()) + { + LOG.debug("{} disconnect()", policy.getBehavior()); + } + flusher.terminate(new EOFException("Disconnected")); + EndPoint endPoint = getEndPoint(); + // We need to gently close first, to allow + // SSL close alerts to be sent by Jetty + endPoint.shutdownOutput(); + endPoint.close(); + } } @Override @@ -252,12 +371,6 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp return getEndPoint().getIdleTimeout(); } - @Override - public IOState getIOState() - { - return ioState; - } - @Override public long getMaxIdleTimeout() { @@ -303,86 +416,20 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp return readState.isReading(); } - /** - * Physical connection disconnect. - *

- * Not related to WebSocket close handshake. - */ - @Override - public void onClose() - { - if (LOG.isDebugEnabled()) - LOG.debug("{} onClose()",policy.getBehavior()); - super.onClose(); - ioState.onDisconnected(); - } - - @Override - public void onConnectionStateChange(ConnectionState state) - { - if (LOG.isDebugEnabled()) - LOG.debug("{} Connection State Change: {}",policy.getBehavior(),state); - - switch (state) - { - case OPEN: - if (BufferUtil.hasContent(prefillBuffer)) - { - if (LOG.isDebugEnabled()) - { - LOG.debug("Parsing Upgrade prefill buffer ({} remaining)",prefillBuffer.remaining()); - } - parser.parse(prefillBuffer); - } - if (LOG.isDebugEnabled()) - { - LOG.debug("OPEN: normal fillInterested"); - } - // TODO: investigate what happens if a failure occurs during prefill, and an attempt to write close fails, - // should a fill interested occur? or just a quick disconnect? - fillInterested(); - break; - case CLOSED: - if (LOG.isDebugEnabled()) - LOG.debug("CLOSED - wasAbnormalClose: {}", ioState.wasAbnormalClose()); - if (ioState.wasAbnormalClose()) - { - // Fire out a close frame, indicating abnormal shutdown, then disconnect - session.close(StatusCode.SHUTDOWN,"Abnormal Close - " + ioState.getCloseInfo().getReason()); - } - else - { - // Just disconnect - this.disconnect(); - } - break; - case CLOSING: - if (LOG.isDebugEnabled()) - LOG.debug("CLOSING - wasRemoteCloseInitiated: {}", ioState.wasRemoteCloseInitiated()); - - // First occurrence of .onCloseLocal or .onCloseRemote use - if (ioState.wasRemoteCloseInitiated()) - { - CloseInfo close = ioState.getCloseInfo(); - session.close(close.getStatusCode(), close.getReason()); - } - default: - break; - } - } - @Override public void onFillable() { if (LOG.isDebugEnabled()) - LOG.debug("{} onFillable()",policy.getBehavior()); + { + LOG.debug("{} onFillable()", policy.getBehavior()); + } stats.countOnFillableEvents.incrementAndGet(); - ByteBuffer buffer = bufferPool.acquire(getInputBufferSize(),true); + ByteBuffer buffer = bufferPool.acquire(getInputBufferSize(), true); try { - if(readMode == ReadMode.PARSE) + if (readMode == ReadMode.PARSE) { readMode = readParse(buffer); } @@ -397,9 +444,13 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp } if (readMode == ReadMode.EOF) + { readState.eof(); + } else if (!readState.suspend()) + { fillInterested(); + } } @Override @@ -414,63 +465,28 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp * Extra bytes from the initial HTTP upgrade that need to * be processed by the websocket parser before starting * to read bytes from the connection + * * @param prefilled the bytes of prefilled content encountered during upgrade */ protected void setInitialBuffer(ByteBuffer prefilled) { if (LOG.isDebugEnabled()) { - LOG.debug("set Initial Buffer - {}",BufferUtil.toDetailString(prefilled)); + LOG.debug("set Initial Buffer - {}", BufferUtil.toDetailString(prefilled)); } prefillBuffer = prefilled; } - private void notifyError(Throwable t) - { - getParser().getIncomingFramesHandler().incomingError(t); - } - - @Override - public void onOpen() - { - if(LOG.isDebugEnabled()) - LOG.debug("[{}] {}.onOpened()",policy.getBehavior(),this.getClass().getSimpleName()); - super.onOpen(); - this.ioState.onOpened(); - } - /** * Event for no activity on connection (read or write) + * * @return true to signal that the endpoint must be closed, false to keep the endpoint open */ @Override protected boolean onReadTimeout(Throwable timeout) { - IOState state = getIOState(); - ConnectionState cstate = state.getConnectionState(); - if (LOG.isDebugEnabled()) - LOG.debug("{} Read Timeout - {}",policy.getBehavior(),cstate); - - if (cstate == ConnectionState.CLOSED) - { - if (LOG.isDebugEnabled()) - LOG.debug("onReadTimeout - Connection Already CLOSED"); - // close already completed, extra timeouts not relevant - // allow underlying connection and endpoint to disconnect on its own - return true; - } - - try - { - notifyError(timeout); - } - finally - { - // This is an Abnormal Close condition - session.close(StatusCode.SHUTDOWN,"Idle Timeout"); - } - - return false; + close(new CloseException(StatusCode.SHUTDOWN, timeout)); + return false; // let websocket perform close handshake } /** @@ -481,10 +497,13 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp { if (LOG.isDebugEnabled()) { - LOG.debug("outgoingFrame({}, {})",frame,callback); + LOG.debug("outgoingFrame({}, {})", frame, callback); } - flusher.enqueue(frame,callback,batchMode); + if (flusher.enqueue(frame, callback, batchMode)) + { + flusher.iterate(); + } } private ReadMode readDiscard(ByteBuffer buffer) @@ -502,13 +521,17 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp else if (filled < 0) { if (LOG.isDebugEnabled()) - LOG.debug("read - EOF Reached (remote: {})",getRemoteAddress()); + { + LOG.debug("read - EOF Reached (remote: {})", getRemoteAddress()); + } return ReadMode.EOF; } else { if (LOG.isDebugEnabled()) - LOG.debug("Discarded {} bytes - {}",filled,BufferUtil.toDetailString(buffer)); + { + LOG.debug("Discarded {} bytes - {}", filled, BufferUtil.toDetailString(buffer)); + } } } } @@ -530,13 +553,15 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp try { // Process the content from the Endpoint next - while(true) // TODO: should this honor the LogicalConnection.suspend() ? + while (true) // TODO: should this honor the LogicalConnection.suspend() ? { int filled = endPoint.fill(buffer); if (filled < 0) { - LOG.debug("read - EOF Reached (remote: {})",getRemoteAddress()); - ioState.onReadFailure(new EOFException("Remote Read EOF")); + if (LOG.isDebugEnabled()) + { + LOG.debug("read - EOF Reached (remote: {})", getRemoteAddress()); + } return ReadMode.EOF; } else if (filled == 0) @@ -547,30 +572,14 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp if (LOG.isDebugEnabled()) { - LOG.debug("Filled {} bytes - {}",filled,BufferUtil.toDetailString(buffer)); + LOG.debug("Filled {} bytes - {}", filled, BufferUtil.toDetailString(buffer)); } parser.parse(buffer); } } - catch (IOException e) - { - LOG.warn(e); - session.notifyError(e); - session.abort(StatusCode.PROTOCOL,e.getMessage()); - return ReadMode.DISCARD; - } - catch (CloseException e) - { - LOG.debug(e); - session.notifyError(e); - session.close(e.getStatusCode(),e.getMessage()); - return ReadMode.DISCARD; - } catch (Throwable t) { - LOG.warn(t); - session.abort(StatusCode.ABNORMAL,t.getMessage()); - // TODO: should probably only switch to discard if a non-ws-endpoint error + close(t); return ReadMode.DISCARD; } } @@ -579,7 +588,9 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp public void resume() { if (readState.resume()) + { fillInterested(); + } } /** @@ -587,8 +598,7 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp *

* This list is negotiated during the WebSocket Upgrade Request/Response handshake. * - * @param extensions - * the list of negotiated extensions in use. + * @param extensions the list of negotiated extensions in use. */ public void setExtensions(List extensions) { @@ -619,25 +629,30 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp } @Override - public String dumpSelf() { + public String dumpSelf() + { return String.format("%s@%x", this.getClass().getSimpleName(), hashCode()); } - public void dump(Appendable out, String indent) throws IOException { + public void dump(Appendable out, String indent) throws IOException + { EndPoint endp = getEndPoint(); Object endpRef = endp.toString(); - if(endp instanceof AbstractEndPoint) + if (endp instanceof AbstractEndPoint) + { endpRef = ((AbstractEndPoint) endp).toEndPointString(); - Dumpable.dumpObjects(out, indent, this, endpRef, ioState, flusher, generator, parser); + } + Dumpable.dumpObjects(out, indent, this, endpRef, flusher, generator, parser); } @Override public String toConnectionString() { - return String.format("%s@%x[ios=%s,f=%s,g=%s,p=%s]", + return String.format("%s@%x[s=%s,f=%s,g=%s,p=%s]", getClass().getSimpleName(), hashCode(), - ioState,flusher,generator,parser); + connectionState, + flusher, generator, parser); } /** @@ -648,11 +663,11 @@ public abstract class AbstractWebSocketConnection extends AbstractConnection imp @Override public void onUpgradeTo(ByteBuffer prefilled) { - if(LOG.isDebugEnabled()) + if (LOG.isDebugEnabled()) { LOG.debug("onUpgradeTo({})", BufferUtil.toDetailString(prefilled)); } - + setInitialBuffer(prefilled); } } diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/ConnectionState.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/ConnectionState.java new file mode 100644 index 00000000000..5aa086469a2 --- /dev/null +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/ConnectionState.java @@ -0,0 +1,224 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.common.io; + +import java.util.concurrent.atomic.AtomicReference; + +/** + * WebSocket Connection State. + *

+ * {@code State} can only go in one direction from {@code HANDSHAKING} to {@code DISCONNECTED}. + *

+ */ +public class ConnectionState +{ + private final AtomicReference state = new AtomicReference<>(State.HANDSHAKING); + + /** + * Test to see if state allows writing of WebSocket frames + * + * @return true if state allows for writing of websocket frames + */ + public boolean canWriteWebSocketFrames() + { + State current = state.get(); + return current == State.OPENING || current == State.OPENED; + } + + /** + * Tests to see if state allows for reading of WebSocket frames + * + * @return true if state allows for reading of websocket frames + */ + public boolean canReadWebSocketFrames() + { + State current = state.get(); + return current == State.OPENED || current == State.CLOSING; + } + + /** + * Requests that the connection migrate to OPENING state + * + * @return true if OPENING state attained + */ + public boolean opening() + { + while (true) + { + State current = state.get(); + switch (current) + { + case HANDSHAKING: + if (state.compareAndSet(current, State.OPENING)) + { + return true; + } + break; + case DISCONNECTED: + return false; + default: + throw new IllegalStateException(toString(current)); + } + } + } + + /** + * Requests that the connection migrate to OPENED state + * + * @return true if OPENED state attained + */ + public boolean opened() + { + while (true) + { + State current = state.get(); + switch (current) + { + case OPENING: + if (state.compareAndSet(current, State.OPENED)) + { + return true; + } + break; + case CLOSING: // connection went from OPENING to CLOSING (likely to to failure to onOpen) + return false; + case DISCONNECTED: + return false; + default: + throw new IllegalStateException(toString(current)); + } + } + } + + /** + * The Local Endpoint wants to close. + * + * @return true if this is the first local close + */ + public boolean closing() + { + while (true) + { + State current = state.get(); + switch (current) + { + case OPENING: + if (state.compareAndSet(current, State.CLOSING)) + { + return true; + } + break; + case OPENED: + if (state.compareAndSet(current, State.CLOSING)) + { + return true; + } + break; + case CLOSING: // already closing + return false; + case DISCONNECTED: + return false; + default: + throw new IllegalStateException(toString(current)); + } + } + } + + /** + * Final Terminal state indicating the connection is disconnected + * + * @return true if disconnected reached for the first time + */ + public boolean disconnected() + { + while (true) + { + State current = state.get(); + switch (current) + { + case DISCONNECTED: + return false; + default: + if (state.compareAndSet(current, State.DISCONNECTED)) + { + return true; + } + break; + } + } + } + + + private String toString(State state) + { + return String.format("%s@%x[%s]", getClass().getSimpleName(), hashCode(), state); + } + + @Override + public String toString() + { + return toString(state.get()); + } + + private enum State + { + /** + * Initial state of a connection, the upgrade request / response handshake is in progress + */ + HANDSHAKING, + + /** + * Intermediate state between HANDSHAKING and OPENED, used to indicate that a upgrade + * request/response handshake is successful, but the Application provided socket's + * onOpen code has yet completed. + *

+ * This state is to allow the local socket endpoint to initiate the sending of messages and + * frames, but to NOT start reading yet. + */ + OPENING, + + /** + * The websocket connection is established and open. + *

+ * This indicates that the Upgrade has succeed, and the Application provided + * socket's onOpen code has returned. + *

+ * It is now time to start reading from the remote endpoint. + */ + OPENED, + + /** + * The WebSocket is closing + *

+ * There are several conditions that would start this state. + *

+ * - A CLOSE Frame has been received (and parsed) from the remote endpoint + * - A CLOSE Frame has been enqueued by the local endpoint + */ + CLOSING, + + /** + * The WebSocket connection is disconnected. + *

+ * Connection is complete and no longer valid. + */ + DISCONNECTED + } + +} diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/DisconnectCallback.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/DisconnectCallback.java new file mode 100644 index 00000000000..01353b2f525 --- /dev/null +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/DisconnectCallback.java @@ -0,0 +1,44 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.common.io; + +import org.eclipse.jetty.util.Callback; +import org.eclipse.jetty.websocket.common.LogicalConnection; + +public class DisconnectCallback implements Callback +{ + private final LogicalConnection connection; + + public DisconnectCallback(LogicalConnection connection) + { + this.connection = connection; + } + + @Override + public void failed(Throwable x) + { + connection.disconnect(); + } + + @Override + public void succeeded() + { + connection.disconnect(); + } +} diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FrameFlusher.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FrameFlusher.java index 8e19d3bb123..c9c8ac6149b 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FrameFlusher.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FrameFlusher.java @@ -53,6 +53,7 @@ public class FrameFlusher extends IteratingCallback private final List entries; private final List buffers; private boolean closed; + private boolean canEnqueue = true; private Throwable terminated; private ByteBuffer aggregate; private BatchMode batchMode; @@ -68,28 +69,52 @@ public class FrameFlusher extends IteratingCallback this.buffers = new ArrayList<>((maxGather * 2) + 1); } - public void enqueue(Frame frame, WriteCallback callback, BatchMode batchMode) + public boolean enqueue(Frame frame, WriteCallback callback, BatchMode batchMode) { FrameEntry entry = new FrameEntry(frame, callback, batchMode); - Throwable closed; + Throwable dead; + synchronized (this) { - closed = terminated; - if (closed == null) + if (canEnqueue) { - byte opCode = frame.getOpCode(); - if (opCode == OpCode.PING || opCode == OpCode.PONG) - queue.offerFirst(entry); - else - queue.offerLast(entry); + dead = terminated; + if (dead == null) + { + byte opCode = frame.getOpCode(); + if (opCode == OpCode.PING || opCode == OpCode.PONG) + { + queue.offerFirst(entry); + } + else + { + queue.offerLast(entry); + } + + if (opCode == OpCode.CLOSE) + { + this.canEnqueue = false; + } + } + } + else + { + dead = new ClosedChannelException(); } } - if (closed == null) - iterate(); - else - notifyCallbackFailure(callback, closed); + if (dead == null) + { + if (LOG.isDebugEnabled()) + { + LOG.debug("Enqueued {} to {}", entry, this); + } + return true; + } + + notifyCallbackFailure(callback, dead); + return false; } @Override @@ -103,12 +128,16 @@ public class FrameFlusher extends IteratingCallback synchronized (this) { if (closed) + { return Action.SUCCEEDED; + } if (terminated != null) + { throw terminated; + } - while (!queue.isEmpty() && entries.size() <= maxGather) + while (!queue.isEmpty() && entries.size() < maxGather) { FrameEntry entry = queue.poll(); currentBatchMode = BatchMode.max(currentBatchMode, entry.batchMode); @@ -243,7 +272,12 @@ public class FrameFlusher extends IteratingCallback entry.release(); if (entry.frame.getOpCode() == OpCode.CLOSE) { - terminate(new ClosedChannelException(), true); + synchronized (this) + { + // we know that enqueue protects us. + // and the processing will not contain extra frame entries. + closed = true; + } endPoint.shutdownOutput(); } } @@ -255,12 +289,13 @@ public class FrameFlusher extends IteratingCallback { releaseAggregate(); - Throwable closed; synchronized (this) { - closed = terminated; - if (closed == null) + if (terminated == null) { terminated = failure; + if (LOG.isDebugEnabled()) + LOG.debug("Write flush failure", failure); + } entries.addAll(queue); queue.clear(); } @@ -282,19 +317,18 @@ public class FrameFlusher extends IteratingCallback } } - void terminate(Throwable cause, boolean close) + void terminate(Throwable cause) { Throwable reason; synchronized (this) { - closed = close; reason = terminated; if (reason == null) terminated = cause; } if (LOG.isDebugEnabled()) LOG.debug("{} {}", reason == null ? "Terminating" : "Terminated", this); - if (reason == null && !close) + if (reason == null) iterate(); } diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FramePipes.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FramePipes.java index e3e21c62978..ff0557ef4cd 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FramePipes.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/FramePipes.java @@ -35,12 +35,6 @@ public class FramePipes this.outgoing = outgoing; } - @Override - public void incomingError(Throwable t) - { - /* cannot send exception on */ - } - @Override public void incomingFrame(Frame frame) { diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/IOState.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/IOState.java deleted file mode 100644 index 34535342fa7..00000000000 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/IOState.java +++ /dev/null @@ -1,631 +0,0 @@ -// -// ======================================================================== -// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -// - -package org.eclipse.jetty.websocket.common.io; - -import java.io.EOFException; -import java.io.IOException; -import java.util.List; -import java.util.concurrent.CopyOnWriteArrayList; -import java.util.concurrent.atomic.AtomicReference; - -import org.eclipse.jetty.util.StringUtil; -import org.eclipse.jetty.util.log.Log; -import org.eclipse.jetty.util.log.Logger; -import org.eclipse.jetty.websocket.api.StatusCode; -import org.eclipse.jetty.websocket.common.CloseInfo; -import org.eclipse.jetty.websocket.common.ConnectionState; - -/** - * Simple state tracker for Input / Output and {@link ConnectionState}. - *

- * Use the various known .on*() methods to trigger a state change. - *

    - *
  • {@link #onOpened()} - connection has been opened
  • - *
- */ -public class IOState -{ - /** - * The source of a close handshake. (ie: who initiated it). - */ - private enum CloseHandshakeSource - { - /** No close handshake initiated (yet) */ - NONE, - /** Local side initiated the close handshake */ - LOCAL, - /** Remote side initiated the close handshake */ - REMOTE, - /** An abnormal close situation (disconnect, timeout, etc...) */ - ABNORMAL - } - - public static interface ConnectionStateListener - { - public void onConnectionStateChange(ConnectionState state); - } - - private static final Logger LOG = Log.getLogger(IOState.class); - private ConnectionState state; - private final List listeners = new CopyOnWriteArrayList<>(); - - /** - * Is input on websocket available (for reading frames). - * Used to determine close handshake completion, and track half-close states - */ - private boolean inputAvailable; - /** - * Is output on websocket available (for writing frames). - * Used to determine close handshake completion, and track half-closed states. - */ - private boolean outputAvailable; - /** - * Initiator of the close handshake. - * Used to determine who initiated a close handshake for reply reasons. - */ - private CloseHandshakeSource closeHandshakeSource; - /** - * The close info for the initiator of the close handshake. - * It is possible in abnormal close scenarios to have a different - * final close info that is used to notify the WS-Endpoint's onClose() - * events with. - */ - private CloseInfo closeInfo; - /** - * Atomic reference to the final close info. - * This can only be set once, and is used for the WS-Endpoint's onClose() - * event. - */ - private AtomicReference finalClose = new AtomicReference<>(); - /** - * Tracker for if the close handshake was completed successfully by - * both sides. False if close was sudden or abnormal. - */ - private boolean cleanClose; - - /** - * Create a new IOState, initialized to {@link ConnectionState#CONNECTING} - */ - public IOState() - { - this.state = ConnectionState.CONNECTING; - this.inputAvailable = false; - this.outputAvailable = false; - this.closeHandshakeSource = CloseHandshakeSource.NONE; - this.closeInfo = null; - this.cleanClose = false; - } - - public void addListener(ConnectionStateListener listener) - { - listeners.add(listener); - } - - public void assertInputOpen() throws IOException - { - if (!isInputAvailable()) - { - throw new IOException("Connection input is closed"); - } - } - - public void assertOutputOpen() throws IOException - { - if (!isOutputAvailable()) - { - throw new IOException("Connection output is closed"); - } - } - - public CloseInfo getCloseInfo() - { - CloseInfo ci = finalClose.get(); - if (ci != null) - { - return ci; - } - return closeInfo; - } - - public ConnectionState getConnectionState() - { - return state; - } - - public boolean isClosed() - { - synchronized (this) - { - return (state == ConnectionState.CLOSED); - } - } - - public boolean isInputAvailable() - { - return inputAvailable; - } - - public boolean isOpen() - { - return !isClosed(); - } - - public boolean isOutputAvailable() - { - return outputAvailable; - } - - private void notifyStateListeners(ConnectionState state) - { - if (LOG.isDebugEnabled()) - LOG.debug("Notify State Listeners: {}",state); - for (ConnectionStateListener listener : listeners) - { - if (LOG.isDebugEnabled()) - { - LOG.debug("{}.onConnectionStateChange({})",listener.getClass().getSimpleName(),state.name()); - } - listener.onConnectionStateChange(state); - } - } - - /** - * A websocket connection has been disconnected for abnormal close reasons. - *

- * This is the low level disconnect of the socket. It could be the result of a normal close operation, from an IO error, or even from a timeout. - * @param close the close information - */ - public void onAbnormalClose(CloseInfo close) - { - if (LOG.isDebugEnabled()) - LOG.debug("onAbnormalClose({})",close); - ConnectionState event = null; - synchronized (this) - { - if (this.state == ConnectionState.CLOSED) - { - // already closed - return; - } - - if (this.state == ConnectionState.OPEN) - { - this.cleanClose = false; - } - - this.state = ConnectionState.CLOSED; - finalClose.compareAndSet(null,close); - this.inputAvailable = false; - this.outputAvailable = false; - this.closeHandshakeSource = CloseHandshakeSource.ABNORMAL; - event = this.state; - } - notifyStateListeners(event); - } - - /** - * A close handshake has been issued from the local endpoint - * @param closeInfo the close information - */ - public void onCloseLocal(CloseInfo closeInfo) - { - boolean open = false; - synchronized (this) - { - ConnectionState initialState = this.state; - if (LOG.isDebugEnabled()) - LOG.debug("onCloseLocal({}) : {}", closeInfo, initialState); - if (initialState == ConnectionState.CLOSED) - { - // already closed - if (LOG.isDebugEnabled()) - LOG.debug("already closed"); - return; - } - - if (initialState == ConnectionState.CONNECTED) - { - // fast close. a local close request from end-user onConnect/onOpen method - if (LOG.isDebugEnabled()) - LOG.debug("FastClose in CONNECTED detected"); - open = true; - } - } - - if (open) - openAndCloseLocal(closeInfo); - else - closeLocal(closeInfo); - } - - private void openAndCloseLocal(CloseInfo closeInfo) - { - // Force the state open (to allow read/write to endpoint) - onOpened(); - if (LOG.isDebugEnabled()) - LOG.debug("FastClose continuing with Closure"); - closeLocal(closeInfo); - } - - private void closeLocal(CloseInfo closeInfo) - { - ConnectionState event = null; - ConnectionState abnormalEvent = null; - synchronized (this) - { - if (LOG.isDebugEnabled()) - LOG.debug("onCloseLocal(), input={}, output={}", inputAvailable, outputAvailable); - - this.closeInfo = closeInfo; - - // Turn off further output. - outputAvailable = false; - - if (closeHandshakeSource == CloseHandshakeSource.NONE) - { - closeHandshakeSource = CloseHandshakeSource.LOCAL; - } - - if (!inputAvailable) - { - if (LOG.isDebugEnabled()) - LOG.debug("Close Handshake satisfied, disconnecting"); - cleanClose = true; - this.state = ConnectionState.CLOSED; - finalClose.compareAndSet(null,closeInfo); - event = this.state; - } - else if (this.state == ConnectionState.OPEN) - { - // We are now entering CLOSING (or half-closed). - this.state = ConnectionState.CLOSING; - event = this.state; - - // If abnormal, we don't expect an answer. - if (closeInfo.isAbnormal()) - { - abnormalEvent = ConnectionState.CLOSED; - finalClose.compareAndSet(null,closeInfo); - cleanClose = false; - outputAvailable = false; - inputAvailable = false; - closeHandshakeSource = CloseHandshakeSource.ABNORMAL; - } - } - } - - // Only notify on state change events - if (event != null) - { - notifyStateListeners(event); - if (abnormalEvent != null) - { - notifyStateListeners(abnormalEvent); - } - } - } - - /** - * A close handshake has been received from the remote endpoint - * @param closeInfo the close information - */ - public void onCloseRemote(CloseInfo closeInfo) - { - if (LOG.isDebugEnabled()) - LOG.debug("onCloseRemote({})", closeInfo); - ConnectionState event = null; - synchronized (this) - { - if (this.state == ConnectionState.CLOSED) - { - // already closed - return; - } - - if (LOG.isDebugEnabled()) - LOG.debug("onCloseRemote(), input={}, output={}", inputAvailable, outputAvailable); - - this.closeInfo = closeInfo; - - // turn off further input - inputAvailable = false; - - if (closeHandshakeSource == CloseHandshakeSource.NONE) - { - closeHandshakeSource = CloseHandshakeSource.REMOTE; - } - - if (!outputAvailable) - { - LOG.debug("Close Handshake satisfied, disconnecting"); - cleanClose = true; - state = ConnectionState.CLOSED; - finalClose.compareAndSet(null,closeInfo); - event = this.state; - } - else if (this.state == ConnectionState.OPEN) - { - // We are now entering CLOSING (or half-closed) - this.state = ConnectionState.CLOSING; - event = this.state; - } - } - - // Only notify on state change events - if (event != null) - { - notifyStateListeners(event); - } - } - - /** - * WebSocket has successfully upgraded, but the end-user onOpen call hasn't run yet. - *

- * This is an intermediate state between the RFC's {@link ConnectionState#CONNECTING} and {@link ConnectionState#OPEN} - */ - public void onConnected() - { - ConnectionState event = null; - synchronized (this) - { - if (this.state != ConnectionState.CONNECTING) - { - LOG.debug("Unable to set to connected, not in CONNECTING state: {}",this.state); - return; - } - - this.state = ConnectionState.CONNECTED; - inputAvailable = false; // cannot read (yet) - outputAvailable = true; // write allowed - event = this.state; - } - notifyStateListeners(event); - } - - /** - * A websocket connection has failed its upgrade handshake, and is now closed. - */ - public void onFailedUpgrade() - { - assert (this.state == ConnectionState.CONNECTING); - ConnectionState event = null; - synchronized (this) - { - this.state = ConnectionState.CLOSED; - cleanClose = false; - inputAvailable = false; - outputAvailable = false; - event = this.state; - } - notifyStateListeners(event); - } - - /** - * A websocket connection has finished its upgrade handshake, and is now open. - */ - public void onOpened() - { - if(LOG.isDebugEnabled()) - LOG.debug("onOpened()"); - - ConnectionState event = null; - synchronized (this) - { - if (this.state == ConnectionState.OPEN) - { - // already opened - return; - } - - if (this.state != ConnectionState.CONNECTED) - { - LOG.debug("Unable to open, not in CONNECTED state: {}",this.state); - return; - } - - this.state = ConnectionState.OPEN; - this.inputAvailable = true; - this.outputAvailable = true; - event = this.state; - } - notifyStateListeners(event); - } - - /** - * The local endpoint has reached a read failure. - *

- * This could be a normal result after a proper close handshake, or even a premature close due to a connection disconnect. - * @param t the read failure - */ - public void onReadFailure(Throwable t) - { - ConnectionState event = null; - synchronized (this) - { - if (this.state == ConnectionState.CLOSED) - { - // already closed - return; - } - - // Build out Close Reason - String reason = "WebSocket Read Failure"; - if (t instanceof EOFException) - { - reason = "WebSocket Read EOF"; - Throwable cause = t.getCause(); - if ((cause != null) && (StringUtil.isNotBlank(cause.getMessage()))) - { - reason = "EOF: " + cause.getMessage(); - } - } - else - { - if (StringUtil.isNotBlank(t.getMessage())) - { - reason = t.getMessage(); - } - } - - CloseInfo close = new CloseInfo(StatusCode.ABNORMAL,reason); - - finalClose.compareAndSet(null,close); - - this.cleanClose = false; - this.state = ConnectionState.CLOSED; - this.closeInfo = close; - this.inputAvailable = false; - this.outputAvailable = false; - this.closeHandshakeSource = CloseHandshakeSource.ABNORMAL; - event = this.state; - } - notifyStateListeners(event); - } - - /** - * The local endpoint has reached a write failure. - *

- * A low level I/O failure, or even a jetty side EndPoint close (from idle timeout) are a few scenarios - * @param t the throwable that caused the write failure - */ - public void onWriteFailure(Throwable t) - { - ConnectionState event = null; - synchronized (this) - { - if (this.state == ConnectionState.CLOSED) - { - // already closed - return; - } - - // Build out Close Reason - String reason = "WebSocket Write Failure"; - if (t instanceof EOFException) - { - reason = "WebSocket Write EOF"; - Throwable cause = t.getCause(); - if ((cause != null) && (StringUtil.isNotBlank(cause.getMessage()))) - { - reason = "EOF: " + cause.getMessage(); - } - } - else - { - if (StringUtil.isNotBlank(t.getMessage())) - { - reason = t.getMessage(); - } - } - - CloseInfo close = new CloseInfo(StatusCode.ABNORMAL,reason); - - finalClose.compareAndSet(null,close); - - this.cleanClose = false; - this.state = ConnectionState.CLOSED; - this.inputAvailable = false; - this.outputAvailable = false; - this.closeHandshakeSource = CloseHandshakeSource.ABNORMAL; - event = this.state; - } - notifyStateListeners(event); - } - - public void onDisconnected() - { - ConnectionState event = null; - synchronized (this) - { - if (this.state == ConnectionState.CLOSED) - { - // already closed - return; - } - - CloseInfo close = new CloseInfo(StatusCode.ABNORMAL,"Disconnected"); - - this.cleanClose = false; - this.state = ConnectionState.CLOSED; - this.closeInfo = close; - this.inputAvailable = false; - this.outputAvailable = false; - this.closeHandshakeSource = CloseHandshakeSource.ABNORMAL; - event = this.state; - } - notifyStateListeners(event); - } - - @Override - public String toString() - { - StringBuilder str = new StringBuilder(); - str.append(this.getClass().getSimpleName()); - str.append("@").append(Integer.toHexString(hashCode())); - str.append("[").append(state); - str.append(','); - if (!inputAvailable) - { - str.append('!'); - } - str.append("in,"); - if (!outputAvailable) - { - str.append('!'); - } - str.append("out"); - if ((state == ConnectionState.CLOSED) || (state == ConnectionState.CLOSING)) - { - CloseInfo ci = finalClose.get(); - if (ci != null) - { - str.append(",finalClose=").append(ci); - } - else - { - str.append(",close=").append(closeInfo); - } - str.append(",clean=").append(cleanClose); - str.append(",closeSource=").append(closeHandshakeSource); - } - str.append(']'); - return str.toString(); - } - - public boolean wasAbnormalClose() - { - return closeHandshakeSource == CloseHandshakeSource.ABNORMAL; - } - - public boolean wasCleanClose() - { - return cleanClose; - } - - public boolean wasLocalCloseInitiated() - { - return closeHandshakeSource == CloseHandshakeSource.LOCAL; - } - - public boolean wasRemoteCloseInitiated() - { - return closeHandshakeSource == CloseHandshakeSource.REMOTE; - } - -} diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/DelegatedContainerScope.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/DelegatedContainerScope.java index 42de4868e40..19317edbe81 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/DelegatedContainerScope.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/DelegatedContainerScope.java @@ -18,13 +18,14 @@ package org.eclipse.jetty.websocket.common.scopes; +import java.util.Collection; import java.util.concurrent.Executor; import org.eclipse.jetty.io.ByteBufferPool; import org.eclipse.jetty.util.DecoratedObjectFactory; import org.eclipse.jetty.util.ssl.SslContextFactory; import org.eclipse.jetty.websocket.api.WebSocketPolicy; -import org.eclipse.jetty.websocket.common.WebSocketSession; +import org.eclipse.jetty.websocket.common.WebSocketSessionListener; public class DelegatedContainerScope implements WebSocketContainerScope { @@ -72,16 +73,22 @@ public class DelegatedContainerScope implements WebSocketContainerScope { return this.delegate.isRunning(); } - + @Override - public void onSessionOpened(WebSocketSession session) + public void addSessionListener(WebSocketSessionListener listener) { - this.delegate.onSessionOpened(session); + this.delegate.addSessionListener(listener); } - + @Override - public void onSessionClosed(WebSocketSession session) + public void removeSessionListener(WebSocketSessionListener listener) { - this.delegate.onSessionClosed(session); + this.delegate.removeSessionListener(listener); + } + + @Override + public Collection getSessionListeners() + { + return this.delegate.getSessionListeners(); } } diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/SimpleContainerScope.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/SimpleContainerScope.java index 2e31b969713..e7d06adcdcf 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/SimpleContainerScope.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/SimpleContainerScope.java @@ -18,6 +18,9 @@ package org.eclipse.jetty.websocket.common.scopes; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; import java.util.concurrent.Executor; import org.eclipse.jetty.io.ByteBufferPool; @@ -25,11 +28,13 @@ import org.eclipse.jetty.io.MappedByteBufferPool; import org.eclipse.jetty.util.DecoratedObjectFactory; import org.eclipse.jetty.util.DeprecationWarning; import org.eclipse.jetty.util.component.ContainerLifeCycle; +import org.eclipse.jetty.util.log.Log; +import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.util.ssl.SslContextFactory; import org.eclipse.jetty.util.thread.QueuedThreadPool; import org.eclipse.jetty.websocket.api.WebSocketBehavior; import org.eclipse.jetty.websocket.api.WebSocketPolicy; -import org.eclipse.jetty.websocket.common.WebSocketSession; +import org.eclipse.jetty.websocket.common.WebSocketSessionListener; public class SimpleContainerScope extends ContainerLifeCycle implements WebSocketContainerScope { @@ -37,7 +42,9 @@ public class SimpleContainerScope extends ContainerLifeCycle implements WebSocke private final DecoratedObjectFactory objectFactory; private final WebSocketPolicy policy; private final Executor executor; + private final Logger logger; private SslContextFactory sslContextFactory; + private List sessionListeners = new ArrayList<>(); public SimpleContainerScope(WebSocketPolicy policy) { @@ -62,6 +69,7 @@ public class SimpleContainerScope extends ContainerLifeCycle implements WebSocke public SimpleContainerScope(WebSocketPolicy policy, ByteBufferPool bufferPool, Executor executor, SslContextFactory ssl, DecoratedObjectFactory objectFactory) { + this.logger = Log.getLogger(this.getClass()); this.policy = policy; this.bufferPool = bufferPool; @@ -141,16 +149,22 @@ public class SimpleContainerScope extends ContainerLifeCycle implements WebSocke { this.sslContextFactory = sslContextFactory; } - + @Override - public void onSessionOpened(WebSocketSession session) + public void addSessionListener(WebSocketSessionListener listener) { - /* do nothing */ + this.sessionListeners.add(listener); } @Override - public void onSessionClosed(WebSocketSession session) + public void removeSessionListener(WebSocketSessionListener listener) { - /* do nothing */ + this.sessionListeners.remove(listener); + } + + @Override + public Collection getSessionListeners() + { + return sessionListeners; } } diff --git a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/WebSocketContainerScope.java b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/WebSocketContainerScope.java index 114e770879d..e0516c24cb4 100644 --- a/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/WebSocketContainerScope.java +++ b/jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/scopes/WebSocketContainerScope.java @@ -18,13 +18,14 @@ package org.eclipse.jetty.websocket.common.scopes; +import java.util.Collection; import java.util.concurrent.Executor; import org.eclipse.jetty.io.ByteBufferPool; import org.eclipse.jetty.util.DecoratedObjectFactory; import org.eclipse.jetty.util.ssl.SslContextFactory; import org.eclipse.jetty.websocket.api.WebSocketPolicy; -import org.eclipse.jetty.websocket.common.WebSocketSession; +import org.eclipse.jetty.websocket.common.WebSocketSessionListener; /** * Defined Scope for a WebSocketContainer. @@ -59,6 +60,7 @@ public interface WebSocketContainerScope */ WebSocketPolicy getPolicy(); + /** * The SslContextFactory in use by the container. * @@ -72,18 +74,10 @@ public interface WebSocketContainerScope * @return true if container is started and running */ boolean isRunning(); - - /** - * A Session has been opened - * - * @param session the session that was opened - */ - void onSessionOpened(WebSocketSession session); - - /** - * A Session has been closed - * - * @param session the session that was closed - */ - void onSessionClosed(WebSocketSession session); + + void addSessionListener(WebSocketSessionListener listener); + + void removeSessionListener(WebSocketSessionListener listener); + + Collection getSessionListeners(); } diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ClosePayloadParserTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ClosePayloadParserTest.java index 36dcfb4f629..7edcf10b11b 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ClosePayloadParserTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ClosePayloadParserTest.java @@ -18,9 +18,6 @@ package org.eclipse.jetty.websocket.common; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.is; - import java.nio.ByteBuffer; import java.nio.charset.StandardCharsets; @@ -30,9 +27,11 @@ import org.eclipse.jetty.websocket.api.WebSocketPolicy; import org.eclipse.jetty.websocket.common.test.IncomingFramesCapture; import org.eclipse.jetty.websocket.common.test.UnitParser; import org.eclipse.jetty.websocket.common.util.MaskedByteBuffer; - import org.junit.jupiter.api.Test; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; + public class ClosePayloadParserTest { @Test @@ -59,7 +58,6 @@ public class ClosePayloadParserTest parser.setIncomingFramesHandler(capture); parser.parse(buf); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.CLOSE,1); CloseInfo close = new CloseInfo(capture.getFrames().poll()); assertThat("CloseFrame.statusCode",close.getStatusCode(),is(StatusCode.NORMAL)); diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/GeneratorParserRoundtripTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/GeneratorParserRoundtripTest.java index 2cea2e745e0..c2c65d4fb7e 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/GeneratorParserRoundtripTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/GeneratorParserRoundtripTest.java @@ -18,10 +18,6 @@ package org.eclipse.jetty.websocket.common; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.is; -import static org.junit.jupiter.api.Assertions.assertTrue; - import java.nio.ByteBuffer; import java.util.Arrays; @@ -31,9 +27,12 @@ import org.eclipse.jetty.util.BufferUtil; import org.eclipse.jetty.websocket.api.WebSocketPolicy; import org.eclipse.jetty.websocket.common.frames.TextFrame; import org.eclipse.jetty.websocket.common.test.IncomingFramesCapture; - import org.junit.jupiter.api.Test; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; +import static org.junit.jupiter.api.Assertions.assertTrue; + public class GeneratorParserRoundtripTest { public ByteBufferPool bufferPool = new MappedByteBufferPool(); @@ -70,7 +69,6 @@ public class GeneratorParserRoundtripTest } // Validate - capture.assertNoErrors(); capture.assertHasFrame(OpCode.TEXT,1); TextFrame txt = (TextFrame)capture.getFrames().poll(); @@ -115,7 +113,6 @@ public class GeneratorParserRoundtripTest } // Validate - capture.assertNoErrors(); capture.assertHasFrame(OpCode.TEXT,1); TextFrame txt = (TextFrame)capture.getFrames().poll(); diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ParserTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ParserTest.java index 2cbae6495ce..7bb92b2e317 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ParserTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ParserTest.java @@ -18,11 +18,6 @@ package org.eclipse.jetty.websocket.common; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.containsString; -import static org.hamcrest.Matchers.is; -import static org.junit.jupiter.api.Assertions.assertThrows; - import java.nio.ByteBuffer; import java.util.ArrayList; import java.util.Arrays; @@ -42,9 +37,13 @@ import org.eclipse.jetty.websocket.common.test.IncomingFramesCapture; import org.eclipse.jetty.websocket.common.test.UnitGenerator; import org.eclipse.jetty.websocket.common.test.UnitParser; import org.eclipse.jetty.websocket.common.util.Hex; - import org.junit.jupiter.api.Test; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.containsString; +import static org.hamcrest.Matchers.is; +import static org.junit.jupiter.api.Assertions.assertThrows; + public class ParserTest { /** @@ -111,7 +110,6 @@ public class ParserTest parser.setIncomingFramesHandler(capture); parser.parseQuietly(completeBuf); - capture.assertErrorCount(0); capture.assertHasFrame(OpCode.TEXT,1); capture.assertHasFrame(OpCode.CONTINUATION,4); capture.assertHasFrame(OpCode.CLOSE,1); @@ -135,7 +133,6 @@ public class ParserTest parser.setIncomingFramesHandler(capture); parser.parse(completeBuf); - capture.assertErrorCount(0); capture.assertHasFrame(OpCode.TEXT,1); capture.assertHasFrame(OpCode.CLOSE,1); capture.assertHasFrame(OpCode.PONG,1); @@ -185,7 +182,6 @@ public class ParserTest parser.setIncomingFramesHandler(capture); parser.parse(completeBuf); - capture.assertErrorCount(0); capture.assertHasFrame(OpCode.TEXT,textCount); capture.assertHasFrame(OpCode.CONTINUATION,continuationCount); capture.assertHasFrame(OpCode.CLOSE,1); @@ -204,7 +200,6 @@ public class ParserTest parser.setIncomingFramesHandler(capture); parser.parse(buf); - capture.assertNoErrors(); assertThat("Frame Count",capture.getFrames().size(),is(0)); } @@ -240,7 +235,6 @@ public class ParserTest networkBytes.position(networkBytes.position() + windowSize); } - capture.assertNoErrors(); assertThat("Frame Count",capture.getFrames().size(),is(2)); WebSocketFrame frame = capture.getFrames().poll(); assertThat("Frame[0].opcode",frame.getOpCode(),is(OpCode.TEXT)); diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/PingPayloadParserTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/PingPayloadParserTest.java index 9b2260a0446..bf31874057f 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/PingPayloadParserTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/PingPayloadParserTest.java @@ -18,9 +18,6 @@ package org.eclipse.jetty.websocket.common; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.is; - import java.nio.ByteBuffer; import org.eclipse.jetty.util.BufferUtil; @@ -29,9 +26,11 @@ import org.eclipse.jetty.websocket.api.WebSocketPolicy; import org.eclipse.jetty.websocket.common.frames.PingFrame; import org.eclipse.jetty.websocket.common.test.IncomingFramesCapture; import org.eclipse.jetty.websocket.common.test.UnitParser; - import org.junit.jupiter.api.Test; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; + public class PingPayloadParserTest { @Test @@ -49,7 +48,6 @@ public class PingPayloadParserTest parser.setIncomingFramesHandler(capture); parser.parse(buf); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.PING,1); PingFrame ping = (PingFrame)capture.getFrames().poll(); diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/RFC6455ExamplesParserTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/RFC6455ExamplesParserTest.java index 7026a94e7c9..f77b13a794e 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/RFC6455ExamplesParserTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/RFC6455ExamplesParserTest.java @@ -18,9 +18,6 @@ package org.eclipse.jetty.websocket.common; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.is; - import java.nio.ByteBuffer; import org.eclipse.jetty.util.BufferUtil; @@ -29,9 +26,11 @@ import org.eclipse.jetty.websocket.api.WebSocketPolicy; import org.eclipse.jetty.websocket.api.extensions.Frame; import org.eclipse.jetty.websocket.common.test.IncomingFramesCapture; import org.eclipse.jetty.websocket.common.test.UnitParser; - import org.junit.jupiter.api.Test; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; + /** * Collection of Example packets as found in RFC 6455 Examples section */ @@ -66,7 +65,6 @@ public class RFC6455ExamplesParserTest BufferUtil.flipToFlush(buf,0); parser.parse(buf); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.TEXT,1); capture.assertHasFrame(OpCode.CONTINUATION,1); @@ -94,7 +92,6 @@ public class RFC6455ExamplesParserTest parser.setIncomingFramesHandler(capture); parser.parse(buf); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.PONG,1); WebSocketFrame pong = capture.getFrames().poll(); @@ -118,7 +115,6 @@ public class RFC6455ExamplesParserTest parser.setIncomingFramesHandler(capture); parser.parse(buf); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.TEXT,1); WebSocketFrame txt = capture.getFrames().poll(); @@ -149,7 +145,6 @@ public class RFC6455ExamplesParserTest parser.setIncomingFramesHandler(capture); parser.parse(buf); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.BINARY,1); Frame bin = capture.getFrames().poll(); @@ -188,7 +183,6 @@ public class RFC6455ExamplesParserTest parser.setIncomingFramesHandler(capture); parser.parse(buf); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.BINARY,1); Frame bin = capture.getFrames().poll(); @@ -219,7 +213,6 @@ public class RFC6455ExamplesParserTest parser.setIncomingFramesHandler(capture); parser.parse(buf); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.PING,1); WebSocketFrame ping = capture.getFrames().poll(); @@ -243,7 +236,6 @@ public class RFC6455ExamplesParserTest parser.setIncomingFramesHandler(capture); parser.parse(buf); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.TEXT,1); WebSocketFrame txt = capture.getFrames().poll(); diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/TextPayloadParserTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/TextPayloadParserTest.java index f2535d2993f..8000efa5e5f 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/TextPayloadParserTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/TextPayloadParserTest.java @@ -18,13 +18,6 @@ package org.eclipse.jetty.websocket.common; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.allOf; -import static org.hamcrest.Matchers.greaterThan; -import static org.hamcrest.Matchers.is; -import static org.hamcrest.Matchers.lessThan; -import static org.junit.jupiter.api.Assertions.assertThrows; - import java.nio.ByteBuffer; import java.nio.charset.StandardCharsets; import java.util.Arrays; @@ -35,9 +28,15 @@ import org.eclipse.jetty.websocket.api.WebSocketPolicy; import org.eclipse.jetty.websocket.common.test.IncomingFramesCapture; import org.eclipse.jetty.websocket.common.test.UnitParser; import org.eclipse.jetty.websocket.common.util.MaskedByteBuffer; - import org.junit.jupiter.api.Test; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.allOf; +import static org.hamcrest.Matchers.greaterThan; +import static org.hamcrest.Matchers.is; +import static org.hamcrest.Matchers.lessThan; +import static org.junit.jupiter.api.Assertions.assertThrows; + public class TextPayloadParserTest { @Test @@ -98,7 +97,6 @@ public class TextPayloadParserTest parser.setIncomingFramesHandler(capture); parser.parse(buf); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.TEXT,1); WebSocketFrame txt = capture.getFrames().poll(); assertThat("TextFrame.data",txt.getPayloadAsUTF8(),is(expectedText)); @@ -133,7 +131,6 @@ public class TextPayloadParserTest parser.setIncomingFramesHandler(capture); parser.parse(buf); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.TEXT,1); WebSocketFrame txt = capture.getFrames().poll(); assertThat("TextFrame.data",txt.getPayloadAsUTF8(),is(expectedText)); @@ -170,7 +167,6 @@ public class TextPayloadParserTest parser.setIncomingFramesHandler(capture); parser.parse(buf); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.TEXT,1); capture.assertHasFrame(OpCode.CONTINUATION,1); WebSocketFrame txt = capture.getFrames().poll(); @@ -198,7 +194,6 @@ public class TextPayloadParserTest parser.setIncomingFramesHandler(capture); parser.parse(buf); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.TEXT,1); WebSocketFrame txt = capture.getFrames().poll(); assertThat("TextFrame.data",txt.getPayloadAsUTF8(),is(expectedText)); @@ -224,7 +219,6 @@ public class TextPayloadParserTest parser.setIncomingFramesHandler(capture); parser.parse(buf); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.TEXT,1); WebSocketFrame txt = capture.getFrames().poll(); assertThat("TextFrame.data",txt.getPayloadAsUTF8(),is(expectedText)); diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/WebSocketRemoteEndpointTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/WebSocketRemoteEndpointTest.java index c6b72a30adc..43ccc061bcf 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/WebSocketRemoteEndpointTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/WebSocketRemoteEndpointTest.java @@ -18,11 +18,6 @@ package org.eclipse.jetty.websocket.common; -import static java.nio.charset.StandardCharsets.UTF_8; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.containsString; -import static org.junit.jupiter.api.Assertions.assertThrows; - import java.io.IOException; import java.nio.ByteBuffer; import java.util.Arrays; @@ -37,6 +32,11 @@ import org.eclipse.jetty.websocket.common.test.OutgoingFramesCapture; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.TestInfo; +import static java.nio.charset.StandardCharsets.UTF_8; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.containsString; +import static org.junit.jupiter.api.Assertions.assertThrows; + public class WebSocketRemoteEndpointTest { public ByteBufferPool bufferPool = new MappedByteBufferPool(); @@ -48,8 +48,8 @@ public class WebSocketRemoteEndpointTest LocalWebSocketConnection conn = new LocalWebSocketConnection(id,bufferPool); OutgoingFramesCapture outgoing = new OutgoingFramesCapture(); WebSocketRemoteEndpoint remote = new WebSocketRemoteEndpoint(conn,outgoing); - conn.connect(); - conn.open(); + conn.opening(); + conn.opened(); // Start text message remote.sendPartialString("Hello ",false); @@ -73,8 +73,8 @@ public class WebSocketRemoteEndpointTest LocalWebSocketConnection conn = new LocalWebSocketConnection(id,bufferPool); OutgoingFramesCapture outgoing = new OutgoingFramesCapture(); WebSocketRemoteEndpoint remote = new WebSocketRemoteEndpoint(conn,outgoing); - conn.connect(); - conn.open(); + conn.opening(); + conn.opened(); // Start text message remote.sendPartialString("Hello ",false); @@ -98,8 +98,8 @@ public class WebSocketRemoteEndpointTest LocalWebSocketConnection conn = new LocalWebSocketConnection(testInfo.getDisplayName(), bufferPool); OutgoingFrames orderingAssert = new SaneFrameOrderingAssertion(); WebSocketRemoteEndpoint remote = new WebSocketRemoteEndpoint(conn, orderingAssert); - conn.connect(); - conn.open(); + conn.opening(); + conn.opened(); int largeMessageSize = 60000; byte buf[] = new byte[largeMessageSize]; diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase1_1.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase1_1.java index c7a94143066..4eaf98ebb91 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase1_1.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase1_1.java @@ -18,9 +18,6 @@ package org.eclipse.jetty.websocket.common.ab; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.is; - import java.nio.ByteBuffer; import java.nio.charset.StandardCharsets; import java.util.Arrays; @@ -37,9 +34,11 @@ import org.eclipse.jetty.websocket.common.test.ByteBufferAssert; import org.eclipse.jetty.websocket.common.test.IncomingFramesCapture; import org.eclipse.jetty.websocket.common.test.UnitGenerator; import org.eclipse.jetty.websocket.common.test.UnitParser; - import org.junit.jupiter.api.Test; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; + /** * Text Message Spec testing the {@link Generator} and {@link Parser} */ @@ -311,7 +310,6 @@ public class TestABCase1_1 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.TEXT,1); Frame pActual = capture.getFrames().poll(); @@ -345,7 +343,6 @@ public class TestABCase1_1 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.TEXT,1); Frame pActual = capture.getFrames().poll(); @@ -379,7 +376,6 @@ public class TestABCase1_1 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.TEXT,1); Frame pActual = capture.getFrames().poll(); @@ -413,7 +409,6 @@ public class TestABCase1_1 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.TEXT,1); Frame pActual = capture.getFrames().poll(); @@ -449,7 +444,6 @@ public class TestABCase1_1 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.TEXT,1); Frame pActual = capture.getFrames().poll(); @@ -486,7 +480,6 @@ public class TestABCase1_1 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.TEXT,1); Frame pActual = capture.getFrames().poll(); @@ -497,7 +490,6 @@ public class TestABCase1_1 @Test public void testParseEmptyTextCase1_1_1() { - ByteBuffer expected = ByteBuffer.allocate(5); expected.put(new byte[] @@ -510,7 +502,6 @@ public class TestABCase1_1 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.TEXT,1); Frame pActual = capture.getFrames().poll(); diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase1_2.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase1_2.java index 82575204076..33f25475ce8 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase1_2.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase1_2.java @@ -18,9 +18,6 @@ package org.eclipse.jetty.websocket.common.ab; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.is; - import java.nio.ByteBuffer; import org.eclipse.jetty.util.BufferUtil; @@ -36,9 +33,11 @@ import org.eclipse.jetty.websocket.common.test.ByteBufferAssert; import org.eclipse.jetty.websocket.common.test.IncomingFramesCapture; import org.eclipse.jetty.websocket.common.test.UnitGenerator; import org.eclipse.jetty.websocket.common.test.UnitParser; - import org.junit.jupiter.api.Test; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; + /** * Binary Message Spec testing the {@link Generator} and {@link Parser} */ @@ -330,7 +329,6 @@ public class TestABCase1_2 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.BINARY,1); Frame pActual = capture.getFrames().poll(); @@ -364,7 +362,6 @@ public class TestABCase1_2 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.BINARY,1); Frame pActual = capture.getFrames().poll(); @@ -398,7 +395,6 @@ public class TestABCase1_2 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.BINARY,1); Frame pActual = capture.getFrames().poll(); @@ -432,7 +428,6 @@ public class TestABCase1_2 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.BINARY,1); Frame pActual = capture.getFrames().poll(); @@ -467,7 +462,6 @@ public class TestABCase1_2 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.BINARY,1); Frame pActual = capture.getFrames().poll(); @@ -504,7 +498,6 @@ public class TestABCase1_2 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.BINARY,1); Frame pActual = capture.getFrames().poll(); @@ -528,7 +521,6 @@ public class TestABCase1_2 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.BINARY,1); Frame pActual = capture.getFrames().poll(); diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase2.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase2.java index 17ec7266662..f46229d5414 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase2.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase2.java @@ -18,12 +18,6 @@ package org.eclipse.jetty.websocket.common.ab; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.containsString; -import static org.hamcrest.Matchers.is; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertThrows; - import java.nio.ByteBuffer; import java.util.Arrays; @@ -42,9 +36,14 @@ import org.eclipse.jetty.websocket.common.test.ByteBufferAssert; import org.eclipse.jetty.websocket.common.test.IncomingFramesCapture; import org.eclipse.jetty.websocket.common.test.UnitGenerator; import org.eclipse.jetty.websocket.common.test.UnitParser; - import org.junit.jupiter.api.Test; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.containsString; +import static org.hamcrest.Matchers.is; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertThrows; + public class TestABCase2 { private WebSocketPolicy policy = new WebSocketPolicy(WebSocketBehavior.CLIENT); @@ -192,7 +191,6 @@ public class TestABCase2 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.PING,1); Frame pActual = capture.getFrames().poll(); @@ -222,7 +220,6 @@ public class TestABCase2 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.PING,1); Frame pActual = capture.getFrames().poll(); @@ -245,7 +242,6 @@ public class TestABCase2 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.PING,1); Frame pActual = capture.getFrames().poll(); @@ -276,7 +272,6 @@ public class TestABCase2 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.PING,1); Frame pActual = capture.getFrames().poll(); diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase7_3.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase7_3.java index 7676b320353..18951aeedd0 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase7_3.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/ab/TestABCase7_3.java @@ -18,10 +18,6 @@ package org.eclipse.jetty.websocket.common.ab; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.is; -import static org.junit.jupiter.api.Assertions.assertThrows; - import java.nio.ByteBuffer; import java.nio.charset.StandardCharsets; import java.util.Arrays; @@ -40,9 +36,12 @@ import org.eclipse.jetty.websocket.common.test.IncomingFramesCapture; import org.eclipse.jetty.websocket.common.test.UnitGenerator; import org.eclipse.jetty.websocket.common.test.UnitParser; import org.eclipse.jetty.websocket.common.util.Hex; - import org.junit.jupiter.api.Test; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; +import static org.junit.jupiter.api.Assertions.assertThrows; + public class TestABCase7_3 { private WebSocketPolicy policy = new WebSocketPolicy(WebSocketBehavior.CLIENT); @@ -79,7 +78,6 @@ public class TestABCase7_3 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.CLOSE,1); Frame pActual = capture.getFrames().poll(); @@ -139,7 +137,6 @@ public class TestABCase7_3 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.CLOSE,1); Frame pActual = capture.getFrames().poll(); @@ -196,7 +193,6 @@ public class TestABCase7_3 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.CLOSE,1); Frame pActual = capture.getFrames().poll(); @@ -265,7 +261,6 @@ public class TestABCase7_3 parser.setIncomingFramesHandler(capture); parser.parse(expected); - capture.assertNoErrors(); capture.assertHasFrame(OpCode.CLOSE,1); Frame pActual = capture.getFrames().poll(); diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/EventDriverTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/EventDriverTest.java index 5209bc4bd08..688f692df4b 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/EventDriverTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/events/EventDriverTest.java @@ -18,11 +18,13 @@ package org.eclipse.jetty.websocket.common.events; -import static org.eclipse.jetty.websocket.common.test.MoreMatchers.regex; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.containsString; -import static org.hamcrest.Matchers.startsWith; - +import examples.AdapterConnectCloseSocket; +import examples.AnnotatedBinaryArraySocket; +import examples.AnnotatedBinaryStreamSocket; +import examples.AnnotatedFramesSocket; +import examples.AnnotatedTextSocket; +import examples.ListenerBasicSocket; +import examples.ListenerPingPongSocket; import org.eclipse.jetty.io.ByteBufferPool; import org.eclipse.jetty.io.MappedByteBufferPool; import org.eclipse.jetty.websocket.api.StatusCode; @@ -42,13 +44,10 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.TestInfo; -import examples.AdapterConnectCloseSocket; -import examples.AnnotatedBinaryArraySocket; -import examples.AnnotatedBinaryStreamSocket; -import examples.AnnotatedFramesSocket; -import examples.AnnotatedTextSocket; -import examples.ListenerBasicSocket; -import examples.ListenerPingPongSocket; +import static org.eclipse.jetty.websocket.common.test.MoreMatchers.regex; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.containsString; +import static org.hamcrest.Matchers.startsWith; public class EventDriverTest { @@ -110,7 +109,7 @@ public class EventDriverTest try (LocalWebSocketSession conn = new CloseableLocalWebSocketSession(container,testInfo.getDisplayName(),driver)) { conn.open(); - driver.incomingError(new WebSocketException("oof")); + driver.onError(new WebSocketException("oof")); driver.incomingFrame(new CloseInfo(StatusCode.NORMAL).asFrame()); assertThat(socket.capture.safePoll(), startsWith("onConnect")); diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/DummyIncomingFrames.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/DummyIncomingFrames.java index 5eca0a2858c..fa565ff21f2 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/DummyIncomingFrames.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/DummyIncomingFrames.java @@ -36,12 +36,6 @@ public class DummyIncomingFrames implements IncomingFrames this.id = id; } - @Override - public void incomingError(Throwable e) - { - LOG.debug("incomingError()",e); - } - @Override public void incomingFrame(Frame frame) { diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/DeflateFrameExtensionTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/DeflateFrameExtensionTest.java index 5f5efdc5510..a20e3a096b0 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/DeflateFrameExtensionTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/DeflateFrameExtensionTest.java @@ -18,12 +18,6 @@ package org.eclipse.jetty.websocket.common.extensions.compress; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.contains; -import static org.hamcrest.Matchers.greaterThan; -import static org.hamcrest.Matchers.is; -import static org.junit.jupiter.api.Assertions.assertArrayEquals; - import java.io.ByteArrayOutputStream; import java.io.IOException; import java.nio.ByteBuffer; @@ -61,9 +55,14 @@ import org.eclipse.jetty.websocket.common.test.ByteBufferAssert; import org.eclipse.jetty.websocket.common.test.IncomingFramesCapture; import org.eclipse.jetty.websocket.common.test.OutgoingNetworkBytesCapture; import org.eclipse.jetty.websocket.common.test.UnitParser; - import org.junit.jupiter.api.Test; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.contains; +import static org.hamcrest.Matchers.greaterThan; +import static org.hamcrest.Matchers.is; +import static org.junit.jupiter.api.Assertions.assertArrayEquals; + public class DeflateFrameExtensionTest extends AbstractExtensionTest { private static final Logger LOG = Log.getLogger(DeflateFrameExtensionTest.class); @@ -436,11 +435,6 @@ public class DeflateFrameExtensionTest extends AbstractExtensionTest throw new RuntimeIOException(x); } } - - @Override - public void incomingError(Throwable t) - { - } }); BinaryFrame frame = new BinaryFrame(); diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/ConnectionStateTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/ConnectionStateTest.java new file mode 100644 index 00000000000..8b98555b6d4 --- /dev/null +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/ConnectionStateTest.java @@ -0,0 +1,89 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.common.io; + +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; + +public class ConnectionStateTest +{ + @Test + public void testHandshakeToOpened() + { + ConnectionState state = new ConnectionState(); + + assertFalse(state.canWriteWebSocketFrames(), "Handshaking canWriteWebSocketFrames"); + assertFalse(state.canReadWebSocketFrames(), "Handshaking canReadWebSocketFrames"); + + assertTrue(state.opening(), "Opening"); + + assertTrue(state.canWriteWebSocketFrames(), "Opening canWriteWebSocketFrames"); + assertFalse(state.canReadWebSocketFrames(), "Opening canReadWebSocketFrames"); + + assertTrue(state.opened(), "Opened"); + + assertTrue(state.canWriteWebSocketFrames(), "Opened canWriteWebSocketFrames"); + assertTrue(state.canReadWebSocketFrames(), "Opened canReadWebSocketFrames"); + } + + @Test + public void testOpened_Closing() + { + ConnectionState state = new ConnectionState(); + assertTrue(state.opening(), "Opening"); + assertTrue(state.opened(), "Opened"); + + assertTrue(state.closing(), "Closing (initial)"); + + // A closing state allows for read, but not write + assertFalse(state.canWriteWebSocketFrames(), "Closing canWriteWebSocketFrames"); + assertTrue(state.canReadWebSocketFrames(), "Closing canReadWebSocketFrames"); + + // Closing again shouldn't allow for another close frame to be sent + assertFalse(state.closing(), "Closing (extra)"); + } + + @Test + public void testOpened_Closing_Disconnected() + { + ConnectionState state = new ConnectionState(); + assertTrue(state.opening(), "Opening"); + assertTrue(state.opened(), "Opened"); + assertTrue(state.closing(), "Closing"); + + assertTrue(state.disconnected(), "Disconnected"); + assertFalse(state.canWriteWebSocketFrames(), "Disconnected canWriteWebSocketFrames"); + assertFalse(state.canReadWebSocketFrames(), "Disconnected canReadWebSocketFrames"); + } + + @Test + public void testOpened_Harsh_Disconnected() + { + ConnectionState state = new ConnectionState(); + assertTrue(state.opening(), "Opening"); + assertTrue(state.opened(), "Opened"); + // INTENTIONALLY HAD NO CLOSING - assertTrue(state.closing(), "Closing"); + + assertTrue(state.disconnected(), "Disconnected"); + assertFalse(state.canWriteWebSocketFrames(), "Disconnected canWriteWebSocketFrames"); + assertFalse(state.canReadWebSocketFrames(), "Disconnected canReadWebSocketFrames"); + } +} diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/FrameFlusherTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/FrameFlusherTest.java index 7cd4c4407bf..54044117806 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/FrameFlusherTest.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/FrameFlusherTest.java @@ -18,31 +18,75 @@ package org.eclipse.jetty.websocket.common.io; -import static java.nio.charset.StandardCharsets.UTF_8; - import java.nio.ByteBuffer; +import java.nio.channels.ClosedChannelException; import java.nio.channels.WritePendingException; import java.util.Arrays; +import java.util.Objects; import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutionException; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.TimeoutException; import org.eclipse.jetty.io.ByteBufferPool; import org.eclipse.jetty.io.MappedByteBufferPool; import org.eclipse.jetty.util.Callback; import org.eclipse.jetty.websocket.api.BatchMode; +import org.eclipse.jetty.websocket.api.StatusCode; import org.eclipse.jetty.websocket.api.WebSocketPolicy; import org.eclipse.jetty.websocket.api.extensions.Frame; import org.eclipse.jetty.websocket.api.extensions.IncomingFrames; +import org.eclipse.jetty.websocket.common.CloseInfo; import org.eclipse.jetty.websocket.common.Generator; import org.eclipse.jetty.websocket.common.Parser; import org.eclipse.jetty.websocket.common.WebSocketFrame; import org.eclipse.jetty.websocket.common.frames.TextFrame; import org.junit.jupiter.api.Test; +import static java.nio.charset.StandardCharsets.UTF_8; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.instanceOf; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.jupiter.api.Assertions.assertTrue; + public class FrameFlusherTest { public ByteBufferPool bufferPool = new MappedByteBufferPool(); + /** + * Ensure post-close frames have their associated callbacks properly notified. + */ + @Test + public void testPostCloseFrameCallbacks() throws ExecutionException, InterruptedException, TimeoutException + { + WebSocketPolicy policy = WebSocketPolicy.newServerPolicy(); + Generator generator = new Generator(policy, bufferPool); + CapturingEndPoint endPoint = new CapturingEndPoint(WebSocketPolicy.newClientPolicy(), bufferPool); + int bufferSize = policy.getMaxBinaryMessageBufferSize(); + int maxGather = 1; + FrameFlusher frameFlusher = new FrameFlusher(bufferPool, generator, endPoint, bufferSize, maxGather); + + BatchMode batchMode = BatchMode.OFF; + + Frame closeFrame = new CloseInfo(StatusCode.MESSAGE_TOO_LARGE, "Message be to big").asFrame(); + Frame textFrame = new TextFrame().setPayload("Hello").setFin(true); + + FutureWriteCallback closeCallback = new FutureWriteCallback(); + FutureWriteCallback textFrameCallback = new FutureWriteCallback(); + + assertTrue(frameFlusher.enqueue(closeFrame, closeCallback, batchMode)); + assertFalse(frameFlusher.enqueue(textFrame, textFrameCallback, batchMode)); + frameFlusher.iterate(); + + closeCallback.get(5, TimeUnit.SECONDS); + // If this throws a TimeoutException then the callback wasn't called. + ExecutionException x = assertThrows(ExecutionException.class, + ()-> textFrameCallback.get(5, TimeUnit.SECONDS)); + assertThat(x.getCause(), instanceOf(ClosedChannelException.class)); + } + /** * Ensure that FrameFlusher honors the correct order of websocket frames. * @@ -53,13 +97,13 @@ public class FrameFlusherTest { WebSocketPolicy policy = WebSocketPolicy.newServerPolicy(); Generator generator = new Generator(policy, bufferPool); - SaneFrameOrderingEndPoint endPoint = new SaneFrameOrderingEndPoint(WebSocketPolicy.newClientPolicy(), bufferPool); + CapturingEndPoint endPoint = new CapturingEndPoint(WebSocketPolicy.newClientPolicy(), bufferPool); int bufferSize = policy.getMaxBinaryMessageBufferSize(); int maxGather = 8; FrameFlusher frameFlusher = new FrameFlusher(bufferPool, generator, endPoint, bufferSize, maxGather); int largeMessageSize = 60000; - byte buf[] = new byte[largeMessageSize]; + byte[] buf = new byte[largeMessageSize]; Arrays.fill(buf, (byte) 'x'); String largeMessage = new String(buf, UTF_8); @@ -78,10 +122,15 @@ public class FrameFlusherTest WebSocketFrame frame; if (i % 2 == 0) + { frame = new TextFrame().setPayload(largeMessage); + } else + { frame = new TextFrame().setPayload("Short Message: " + i); + } frameFlusher.enqueue(frame, callback, batchMode); + frameFlusher.iterate(); callback.get(); } } @@ -93,31 +142,24 @@ public class FrameFlusherTest }); serverTask.get(); - System.out.printf("Received: %,d frames / %,d errors%n", endPoint.incomingFrames, endPoint.incomingErrors); + System.out.printf("Received: %,d frames%n", endPoint.incomingFrames.size()); } - public static class SaneFrameOrderingEndPoint extends MockEndPoint implements IncomingFrames + public static class CapturingEndPoint extends MockEndPoint implements IncomingFrames { public Parser parser; - public int incomingFrames; - public int incomingErrors; + public LinkedBlockingQueue incomingFrames = new LinkedBlockingQueue<>(); - public SaneFrameOrderingEndPoint(WebSocketPolicy policy, ByteBufferPool bufferPool) + public CapturingEndPoint(WebSocketPolicy policy, ByteBufferPool bufferPool) { parser = new Parser(policy, bufferPool); parser.setIncomingFramesHandler(this); } - @Override - public void incomingError(Throwable t) - { - incomingErrors++; - } - @Override public void incomingFrame(Frame frame) { - incomingFrames++; + incomingFrames.offer(frame); } @Override @@ -129,14 +171,14 @@ public class FrameFlusherTest @Override public void write(Callback callback, ByteBuffer... buffers) throws WritePendingException { + Objects.requireNonNull(callback); try { for (ByteBuffer buffer : buffers) { parser.parse(buffer); } - if (callback != null) - callback.succeeded(); + callback.succeeded(); } catch (WritePendingException e) { @@ -144,8 +186,7 @@ public class FrameFlusherTest } catch (Throwable t) { - if (callback != null) - callback.failed(t); + callback.failed(t); } } } diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/IOStateTest.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/IOStateTest.java deleted file mode 100644 index 7a10958219d..00000000000 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/IOStateTest.java +++ /dev/null @@ -1,245 +0,0 @@ -// -// ======================================================================== -// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -// - -package org.eclipse.jetty.websocket.common.io; - -import static org.hamcrest.Matchers.is; -import static org.hamcrest.MatcherAssert.assertThat; - -import java.util.LinkedList; - -import org.eclipse.jetty.websocket.api.StatusCode; -import org.eclipse.jetty.websocket.common.CloseInfo; -import org.eclipse.jetty.websocket.common.ConnectionState; -import org.junit.jupiter.api.Test; - -public class IOStateTest -{ - public static class StateTracker implements IOState.ConnectionStateListener - { - private LinkedList transitions = new LinkedList<>(); - - public void assertTransitions(ConnectionState ...states) - { - assertThat("Transitions.count",transitions.size(),is(states.length)); - if (states.length > 0) - { - int len = states.length; - for (int i = 0; i < len; i++) - { - assertThat("Transitions[" + i + "]",transitions.get(i),is(states[i])); - } - } - } - - public LinkedList getTransitions() - { - return transitions; - } - - @Override - public void onConnectionStateChange(ConnectionState state) - { - transitions.add(state); - } - } - - private void assertCleanClose(IOState state, boolean expected) - { - assertThat("State.cleanClose",state.wasCleanClose(),is(expected)); - } - - private void assertInputAvailable(IOState state, boolean available) - { - assertThat("State.inputAvailable",state.isInputAvailable(),is(available)); - } - - private void assertLocalInitiated(IOState state, boolean expected) - { - assertThat("State.localCloseInitiated",state.wasLocalCloseInitiated(),is(expected)); - } - - private void assertOutputAvailable(IOState state, boolean available) - { - assertThat("State.outputAvailable",state.isOutputAvailable(),is(available)); - } - - private void assertRemoteInitiated(IOState state, boolean expected) - { - assertThat("State.remoteCloseInitiated",state.wasRemoteCloseInitiated(),is(expected)); - } - - private void assertState(IOState state, ConnectionState expectedState) - { - assertThat("State",state.getConnectionState(),is(expectedState)); - } - - @Test - public void testConnectAbnormalClose() - { - IOState state = new IOState(); - StateTracker tracker = new StateTracker(); - state.addListener(tracker); - assertState(state,ConnectionState.CONNECTING); - - // connect - state.onConnected(); - assertInputAvailable(state,false); - assertOutputAvailable(state,true); - - // open - state.onOpened(); - assertInputAvailable(state,true); - assertOutputAvailable(state,true); - - // disconnect - state.onAbnormalClose(new CloseInfo(StatusCode.NO_CLOSE,"Oops")); - - assertInputAvailable(state,false); - assertOutputAvailable(state,false); - tracker.assertTransitions(ConnectionState.CONNECTED,ConnectionState.OPEN,ConnectionState.CLOSED); - assertState(state,ConnectionState.CLOSED); - - // not clean - assertCleanClose(state,false); - assertLocalInitiated(state,false); - assertRemoteInitiated(state,false); - } - - @Test - public void testConnectCloseLocalInitiated() - { - IOState state = new IOState(); - StateTracker tracker = new StateTracker(); - state.addListener(tracker); - assertState(state,ConnectionState.CONNECTING); - - // connect - state.onConnected(); - assertInputAvailable(state,false); - assertOutputAvailable(state,true); - - // open - state.onOpened(); - assertInputAvailable(state,true); - assertOutputAvailable(state,true); - - // close (local initiated) - state.onCloseLocal(new CloseInfo(StatusCode.NORMAL,"Hi")); - assertInputAvailable(state,true); - assertOutputAvailable(state,false); - assertState(state,ConnectionState.CLOSING); - - // close (remote response) - state.onCloseRemote(new CloseInfo(StatusCode.NORMAL,"Hi")); - - assertInputAvailable(state,false); - assertOutputAvailable(state,false); - tracker.assertTransitions(ConnectionState.CONNECTED,ConnectionState.OPEN,ConnectionState.CLOSING,ConnectionState.CLOSED); - assertState(state,ConnectionState.CLOSED); - - // not clean - assertCleanClose(state,true); - assertLocalInitiated(state,true); - assertRemoteInitiated(state,false); - } - - @Test - public void testConnectCloseRemoteInitiated() - { - IOState state = new IOState(); - StateTracker tracker = new StateTracker(); - state.addListener(tracker); - assertState(state,ConnectionState.CONNECTING); - - // connect - state.onConnected(); - assertInputAvailable(state,false); - assertOutputAvailable(state,true); - - // open - state.onOpened(); - assertInputAvailable(state,true); - assertOutputAvailable(state,true); - - // close (remote initiated) - state.onCloseRemote(new CloseInfo(StatusCode.NORMAL,"Hi")); - assertInputAvailable(state,false); - assertOutputAvailable(state,true); - assertState(state,ConnectionState.CLOSING); - - // close (local response) - state.onCloseLocal(new CloseInfo(StatusCode.NORMAL,"Hi")); - - assertInputAvailable(state,false); - assertOutputAvailable(state,false); - tracker.assertTransitions(ConnectionState.CONNECTED,ConnectionState.OPEN,ConnectionState.CLOSING,ConnectionState.CLOSED); - assertState(state,ConnectionState.CLOSED); - - // not clean - assertCleanClose(state,true); - assertLocalInitiated(state,false); - assertRemoteInitiated(state,true); - } - - @Test - public void testConnectFailure() - { - IOState state = new IOState(); - StateTracker tracker = new StateTracker(); - state.addListener(tracker); - assertState(state,ConnectionState.CONNECTING); - - // fail upgrade - state.onFailedUpgrade(); - - tracker.assertTransitions(ConnectionState.CLOSED); - assertState(state,ConnectionState.CLOSED); - - assertInputAvailable(state,false); - assertOutputAvailable(state,false); - - // not clean - assertCleanClose(state,false); - assertLocalInitiated(state,false); - assertRemoteInitiated(state,false); - } - - @Test - public void testInit() - { - IOState state = new IOState(); - StateTracker tracker = new StateTracker(); - state.addListener(tracker); - assertState(state,ConnectionState.CONNECTING); - - // do nothing - - tracker.assertTransitions(); - assertState(state,ConnectionState.CONNECTING); - - // not connected yet - assertInputAvailable(state,false); - assertOutputAvailable(state,false); - - // no close yet - assertCleanClose(state,false); - assertLocalInitiated(state,false); - assertRemoteInitiated(state,false); - } -} diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/LocalWebSocketConnection.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/LocalWebSocketConnection.java index 917b0d3a050..2ad893cb66d 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/LocalWebSocketConnection.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/io/LocalWebSocketConnection.java @@ -22,34 +22,36 @@ import java.net.InetSocketAddress; import java.util.concurrent.Executor; import org.eclipse.jetty.io.ByteBufferPool; +import org.eclipse.jetty.util.Callback; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.util.thread.ExecutorThreadPool; import org.eclipse.jetty.websocket.api.BatchMode; +import org.eclipse.jetty.websocket.api.CloseException; +import org.eclipse.jetty.websocket.api.StatusCode; import org.eclipse.jetty.websocket.api.SuspendToken; import org.eclipse.jetty.websocket.api.WebSocketPolicy; import org.eclipse.jetty.websocket.api.WriteCallback; import org.eclipse.jetty.websocket.api.extensions.Frame; import org.eclipse.jetty.websocket.api.extensions.IncomingFrames; import org.eclipse.jetty.websocket.common.CloseInfo; -import org.eclipse.jetty.websocket.common.ConnectionState; import org.eclipse.jetty.websocket.common.LogicalConnection; import org.eclipse.jetty.websocket.common.WebSocketSession; -import org.eclipse.jetty.websocket.common.io.IOState.ConnectionStateListener; -public class LocalWebSocketConnection implements LogicalConnection, IncomingFrames, ConnectionStateListener +public class LocalWebSocketConnection implements LogicalConnection, IncomingFrames { private static final Logger LOG = Log.getLogger(LocalWebSocketConnection.class); private final String id; private final ByteBufferPool bufferPool; private final Executor executor; + private final ConnectionState connectionState = new ConnectionState(); + private WebSocketSession session; private WebSocketPolicy policy = WebSocketPolicy.newServerPolicy(); private IncomingFrames incoming; - private IOState ioState = new IOState(); public LocalWebSocketConnection(ByteBufferPool bufferPool) { - this("anon",bufferPool); + this("anon", bufferPool); } public LocalWebSocketConnection(String id, ByteBufferPool bufferPool) @@ -57,38 +59,53 @@ public class LocalWebSocketConnection implements LogicalConnection, IncomingFram this.id = id; this.bufferPool = bufferPool; this.executor = new ExecutorThreadPool(); - this.ioState.addListener(this); } @Override - public Executor getExecutor() + public boolean canReadWebSocketFrames() { - return executor; + return connectionState.canReadWebSocketFrames(); } @Override - public void setSession(WebSocketSession session) + public boolean canWriteWebSocketFrames() { + return connectionState.canWriteWebSocketFrames(); } @Override - public void onLocalClose(CloseInfo closeInfo) + public void close(Throwable cause) { - ioState.onCloseLocal(closeInfo); + Callback callback = Callback.NOOP; + if (cause instanceof CloseException) + { + callback = new DisconnectCallback(); + } + close(cause, callback); } - public void connect() + @Override + public void close(CloseInfo close, Callback callback) { - if (LOG.isDebugEnabled()) - LOG.debug("connect()"); - ioState.onConnected(); + if (connectionState.closing()) + { + // pretend we sent the close frame and the remote responded + session.callApplicationOnClose(close); + disconnect(); + } + else + { + if (callback != null) + { + callback.failed(new IllegalStateException("Local Close already called")); + } + } } @Override public void disconnect() { - if (LOG.isDebugEnabled()) - LOG.debug("disconnect()"); + connectionState.disconnected(); } @Override @@ -97,6 +114,12 @@ public class LocalWebSocketConnection implements LogicalConnection, IncomingFram return this.bufferPool; } + @Override + public Executor getExecutor() + { + return executor; + } + @Override public String getId() { @@ -114,12 +137,6 @@ public class LocalWebSocketConnection implements LogicalConnection, IncomingFram return incoming; } - @Override - public IOState getIOState() - { - return ioState; - } - @Override public InetSocketAddress getLocalAddress() { @@ -132,24 +149,28 @@ public class LocalWebSocketConnection implements LogicalConnection, IncomingFram return 0; } + @Override + public void setMaxIdleTimeout(long ms) + { + } + @Override public WebSocketPolicy getPolicy() { return policy; } + public void setPolicy(WebSocketPolicy policy) + { + this.policy = policy; + } + @Override public InetSocketAddress getRemoteAddress() { return null; } - @Override - public void incomingError(Throwable e) - { - incoming.incomingError(e); - } - @Override public void incomingFrame(Frame frame) { @@ -159,7 +180,7 @@ public class LocalWebSocketConnection implements LogicalConnection, IncomingFram @Override public boolean isOpen() { - return getIOState().isOpen(); + return true; } @Override @@ -169,33 +190,15 @@ public class LocalWebSocketConnection implements LogicalConnection, IncomingFram } @Override - public void onConnectionStateChange(ConnectionState state) + public boolean opened() { - if (LOG.isDebugEnabled()) - LOG.debug("Connection State Change: {}",state); - switch (state) - { - case CLOSED: - this.disconnect(); - break; - case CLOSING: - if (ioState.wasRemoteCloseInitiated()) - { - // send response close frame - CloseInfo close = ioState.getCloseInfo(); - LOG.debug("write close frame: {}",close); - ioState.onCloseLocal(close); - } - default: - break; - } + return connectionState.opened(); } - public void open() + @Override + public boolean opening() { - if (LOG.isDebugEnabled()) - LOG.debug("open()"); - ioState.onOpened(); + return connectionState.opening(); } @Override @@ -204,12 +207,13 @@ public class LocalWebSocketConnection implements LogicalConnection, IncomingFram } @Override - public void resume() + public void remoteClose(CloseInfo close) { + close(close, Callback.NOOP); } @Override - public void setMaxIdleTimeout(long ms) + public void resume() { } @@ -219,9 +223,10 @@ public class LocalWebSocketConnection implements LogicalConnection, IncomingFram this.incoming = incoming; } - public void setPolicy(WebSocketPolicy policy) + @Override + public void setSession(WebSocketSession session) { - this.policy = policy; + this.session = session; } @Override @@ -230,9 +235,58 @@ public class LocalWebSocketConnection implements LogicalConnection, IncomingFram return null; } + @Override + public String toStateString() + { + return connectionState.toString(); + } + @Override public String toString() { - return String.format("%s[%s]",LocalWebSocketConnection.class.getSimpleName(),id); + return String.format("%s[%s]", LocalWebSocketConnection.class.getSimpleName(), id); + } + + private void close(Throwable cause, Callback callback) + { + session.callApplicationOnError(cause); + close(new CloseInfo(StatusCode.SERVER_ERROR, cause.getMessage()), callback); + } + + private class DisconnectCallback implements Callback + { + @Override + public void failed(Throwable x) + { + disconnect(); + } + + @Override + public void succeeded() + { + disconnect(); + } + } + + private class CallbackBridge implements WriteCallback + { + final Callback callback; + + public CallbackBridge(Callback callback) + { + this.callback = callback; + } + + @Override + public void writeFailed(Throwable x) + { + callback.failed(x); + } + + @Override + public void writeSuccess() + { + callback.succeeded(); + } } } diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadClient.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadClient.java index 16e59f5e4a8..f048c633412 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadClient.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadClient.java @@ -19,6 +19,9 @@ package org.eclipse.jetty.websocket.common.test; import java.net.URI; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; import org.eclipse.jetty.client.HttpClient; import org.eclipse.jetty.io.ByteBufferPool; @@ -27,25 +30,23 @@ import org.eclipse.jetty.util.DecoratedObjectFactory; import org.eclipse.jetty.websocket.api.WebSocketBehavior; import org.eclipse.jetty.websocket.api.WebSocketPolicy; import org.eclipse.jetty.websocket.api.extensions.ExtensionFactory; -import org.eclipse.jetty.websocket.common.WebSocketSession; +import org.eclipse.jetty.websocket.common.WebSocketSessionListener; import org.eclipse.jetty.websocket.common.extensions.WebSocketExtensionFactory; import org.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope; public class BlockheadClient extends HttpClient implements WebSocketContainerScope { - private WebSocketPolicy policy; - private ByteBufferPool bufferPool; + private WebSocketPolicy policy = new WebSocketPolicy(WebSocketBehavior.CLIENT); + private ByteBufferPool bufferPool = new MappedByteBufferPool(); private ExtensionFactory extensionFactory; - private DecoratedObjectFactory objectFactory; + private DecoratedObjectFactory objectFactory = new DecoratedObjectFactory(); + private List listeners = new ArrayList<>(); public BlockheadClient() { super(null); setName("Blockhead-CLIENT"); - this.policy = new WebSocketPolicy(WebSocketBehavior.CLIENT); - this.bufferPool = new MappedByteBufferPool(); this.extensionFactory = new WebSocketExtensionFactory(this); - this.objectFactory = new DecoratedObjectFactory(); } public ByteBufferPool getBufferPool() @@ -69,16 +70,26 @@ public class BlockheadClient extends HttpClient implements WebSocketContainerSco return policy; } + @Override + public void addSessionListener(WebSocketSessionListener listener) + { + listeners.add(listener); + } + + @Override + public void removeSessionListener(WebSocketSessionListener listener) + { + listeners.remove(listener); + } + + @Override + public Collection getSessionListeners() + { + return listeners; + } + public BlockheadClientRequest newWsRequest(URI destURI) { return new BlockheadClientRequest(this, destURI); } - - @Override - public void onSessionOpened(WebSocketSession session) - { /* ignored */ } - - @Override - public void onSessionClosed(WebSocketSession session) - { /* ignored */ } } diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadConnection.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadConnection.java index b8fef4a52cd..cb056fc44b2 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadConnection.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/BlockheadConnection.java @@ -347,15 +347,8 @@ public class BlockheadConnection extends AbstractConnection implements Connectio public class IncomingCapture implements IncomingFrames { public final LinkedBlockingQueue incomingFrames = new LinkedBlockingQueue<>(); - public final LinkedBlockingQueue incomingErrors = new LinkedBlockingQueue<>(); public Consumer frameConsumer; - @Override - public void incomingError(Throwable cause) - { - incomingErrors.offer(cause); - } - @Override public void incomingFrame(Frame frame) { diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/DummyConnection.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/DummyConnection.java index 010182734c3..34c5cb3f361 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/DummyConnection.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/DummyConnection.java @@ -22,6 +22,7 @@ import java.net.InetSocketAddress; import java.util.concurrent.Executor; import org.eclipse.jetty.io.ByteBufferPool; +import org.eclipse.jetty.util.Callback; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.websocket.api.BatchMode; @@ -33,25 +34,35 @@ import org.eclipse.jetty.websocket.api.extensions.IncomingFrames; import org.eclipse.jetty.websocket.common.CloseInfo; import org.eclipse.jetty.websocket.common.LogicalConnection; import org.eclipse.jetty.websocket.common.WebSocketSession; -import org.eclipse.jetty.websocket.common.io.IOState; public class DummyConnection implements LogicalConnection { private static final Logger LOG = Log.getLogger(DummyConnection.class); - private IOState iostate; public DummyConnection() { - this.iostate = new IOState(); } @Override - public void setSession(WebSocketSession session) + public boolean canReadWebSocketFrames() { + return true; } @Override - public void onLocalClose(CloseInfo close) + public boolean canWriteWebSocketFrames() + { + return true; + } + + @Override + public void close(Throwable cause) + { + LOG.warn(cause); + } + + @Override + public void close(CloseInfo closeInfo, Callback callback) { } @@ -84,12 +95,6 @@ public class DummyConnection implements LogicalConnection return 0; } - @Override - public IOState getIOState() - { - return this.iostate; - } - @Override public InetSocketAddress getLocalAddress() { @@ -102,6 +107,11 @@ public class DummyConnection implements LogicalConnection return 0; } + @Override + public void setMaxIdleTimeout(long ms) + { + } + @Override public WebSocketPolicy getPolicy() { @@ -126,6 +136,18 @@ public class DummyConnection implements LogicalConnection return false; } + @Override + public boolean opened() + { + return false; + } + + @Override + public boolean opening() + { + return false; + } + @Override public void outgoingFrame(Frame frame, WriteCallback callback, BatchMode batchMode) { @@ -133,12 +155,13 @@ public class DummyConnection implements LogicalConnection } @Override - public void resume() + public void remoteClose(CloseInfo close) { + } @Override - public void setMaxIdleTimeout(long ms) + public void resume() { } @@ -149,9 +172,20 @@ public class DummyConnection implements LogicalConnection LOG.debug("setNextIncomingFrames({})",incoming); } + @Override + public void setSession(WebSocketSession session) + { + } + @Override public SuspendToken suspend() { return null; } + + @Override + public String toStateString() + { + return "no-state-in-dummy"; + } } diff --git a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/IncomingFramesCapture.java b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/IncomingFramesCapture.java index 6dd881c10f0..e82cd471467 100644 --- a/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/IncomingFramesCapture.java +++ b/jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/test/IncomingFramesCapture.java @@ -18,33 +18,23 @@ package org.eclipse.jetty.websocket.common.test; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.greaterThanOrEqualTo; -import static org.hamcrest.Matchers.is; - import java.util.Queue; import java.util.concurrent.LinkedBlockingQueue; import org.eclipse.jetty.util.BufferUtil; -import org.eclipse.jetty.util.log.Log; -import org.eclipse.jetty.util.log.Logger; -import org.eclipse.jetty.websocket.api.WebSocketException; import org.eclipse.jetty.websocket.api.extensions.Frame; import org.eclipse.jetty.websocket.api.extensions.IncomingFrames; import org.eclipse.jetty.websocket.common.OpCode; import org.eclipse.jetty.websocket.common.WebSocketFrame; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.greaterThanOrEqualTo; +import static org.hamcrest.Matchers.is; + public class IncomingFramesCapture implements IncomingFrames { - private static final Logger LOG = Log.getLogger(IncomingFramesCapture.class); private LinkedBlockingQueue frames = new LinkedBlockingQueue<>(); - private LinkedBlockingQueue errors = new LinkedBlockingQueue<>(); - - public void assertErrorCount(int expectedCount) - { - assertThat("Captured error count",errors.size(),is(expectedCount)); - } public void assertFrameCount(int expectedCount) { @@ -64,11 +54,6 @@ public class IncomingFramesCapture implements IncomingFrames assertThat("Captured frame count",frames.size(),is(expectedCount)); } - public void assertHasErrors(Class errorType, int expectedCount) - { - assertThat(errorType.getSimpleName(),getErrorCount(errorType),is(expectedCount)); - } - public void assertHasFrame(byte op) { assertThat(OpCode.name(op),getFrameCount(op),greaterThanOrEqualTo(1)); @@ -85,11 +70,6 @@ public class IncomingFramesCapture implements IncomingFrames assertThat("Frame count",frames.size(),is(0)); } - public void assertNoErrors() - { - assertThat("Error count",errors.size(),is(0)); - } - public void clear() { frames.clear(); @@ -106,24 +86,6 @@ public class IncomingFramesCapture implements IncomingFrames } } - public int getErrorCount(Class errorType) - { - int count = 0; - for (Throwable error : errors) - { - if (errorType.isInstance(error)) - { - count++; - } - } - return count; - } - - public Queue getErrors() - { - return errors; - } - public int getFrameCount(byte op) { int count = 0; @@ -142,13 +104,6 @@ public class IncomingFramesCapture implements IncomingFrames return frames; } - @Override - public void incomingError(Throwable e) - { - LOG.debug(e); - errors.add(e); - } - @Override public void incomingFrame(Frame frame) { diff --git a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketServerFactory.java b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketServerFactory.java index 918d3e12b44..b0bfec349db 100644 --- a/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketServerFactory.java +++ b/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketServerFactory.java @@ -29,10 +29,7 @@ import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Objects; -import java.util.concurrent.CopyOnWriteArrayList; import java.util.concurrent.Executor; -import java.util.function.Consumer; - import javax.servlet.ServletContext; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -67,6 +64,7 @@ import org.eclipse.jetty.websocket.common.LogicalConnection; import org.eclipse.jetty.websocket.common.SessionFactory; import org.eclipse.jetty.websocket.common.WebSocketSession; import org.eclipse.jetty.websocket.common.WebSocketSessionFactory; +import org.eclipse.jetty.websocket.common.WebSocketSessionListener; import org.eclipse.jetty.websocket.common.events.EventDriver; import org.eclipse.jetty.websocket.common.events.EventDriverFactory; import org.eclipse.jetty.websocket.common.extensions.ExtensionStack; @@ -81,7 +79,7 @@ import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; /** * Factory to create WebSocket connections */ -public class WebSocketServerFactory extends ContainerLifeCycle implements WebSocketCreator, WebSocketContainerScope, WebSocketServletFactory +public class WebSocketServerFactory extends ContainerLifeCycle implements WebSocketCreator, WebSocketContainerScope, WebSocketServletFactory, WebSocketSessionListener { private static final Logger LOG = Log.getLogger(WebSocketServerFactory.class); @@ -89,7 +87,7 @@ public class WebSocketServerFactory extends ContainerLifeCycle implements WebSoc private final Map handshakes = new HashMap<>(); // TODO: obtain shared (per server scheduler, somehow) private final Scheduler scheduler = new ScheduledExecutorScheduler(); - private final List listeners = new CopyOnWriteArrayList<>(); + private final List listeners = new ArrayList<>(); private final String supportedVersions; private final WebSocketPolicy defaultPolicy; private final EventDriverFactory eventDriverFactory; @@ -184,18 +182,27 @@ public class WebSocketServerFactory extends ContainerLifeCycle implements WebSoc addBean(scheduler); addBean(bufferPool); + listeners.add(this); } - - public void addSessionListener(WebSocketSession.Listener listener) + + @Override + public void addSessionListener(WebSocketSessionListener listener) { - listeners.add(listener); + this.listeners.add(listener); } - - public void removeSessionListener(WebSocketSession.Listener listener) + + @Override + public void removeSessionListener(WebSocketSessionListener listener) { - listeners.remove(listener); + this.listeners.remove(listener); } - + + @Override + public Collection getSessionListeners() + { + return this.listeners; + } + @Override public boolean acceptWebSocket(HttpServletRequest request, HttpServletResponse response) throws IOException { @@ -516,31 +523,14 @@ public class WebSocketServerFactory extends ContainerLifeCycle implements WebSoc public void onSessionOpened(WebSocketSession session) { addManaged(session); - notifySessionListeners(listener -> listener.onOpened(session)); } - + @Override public void onSessionClosed(WebSocketSession session) { removeBean(session); - notifySessionListeners(listener -> listener.onClosed(session)); } - - private void notifySessionListeners(Consumer consumer) - { - for (WebSocketSession.Listener listener : listeners) - { - try - { - consumer.accept(listener); - } - catch (Throwable x) - { - LOG.info("Exception while invoking listener " + listener, x); - } - } - } - + @Override public void register(Class websocketPojo) { diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/IdleTimeoutTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/IdleTimeoutTest.java index 5fba484fa8f..54055e829b8 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/IdleTimeoutTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/IdleTimeoutTest.java @@ -18,10 +18,6 @@ package org.eclipse.jetty.websocket.server; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.containsString; -import static org.hamcrest.Matchers.is; - import java.util.concurrent.Future; import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.TimeUnit; @@ -43,6 +39,10 @@ import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.containsString; +import static org.hamcrest.Matchers.is; + public class IdleTimeoutTest { @@ -123,7 +123,7 @@ public class IdleTimeoutTest assertThat("frame opcode",frame.getOpCode(),is(OpCode.CLOSE)); CloseInfo close = new CloseInfo(frame); assertThat("close code",close.getStatusCode(),is(StatusCode.SHUTDOWN)); - assertThat("close reason",close.getReason(),containsString("Timeout")); + assertThat("close reason",close.getReason(),containsString("timeout")); } } } diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ManyConnectionsCleanupTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ManyConnectionsCleanupTest.java deleted file mode 100644 index d682fc0831a..00000000000 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ManyConnectionsCleanupTest.java +++ /dev/null @@ -1,376 +0,0 @@ -// -// ======================================================================== -// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -// - -package org.eclipse.jetty.websocket.server; - -import static org.hamcrest.Matchers.containsString; -import static org.hamcrest.Matchers.is; -import static org.hamcrest.MatcherAssert.assertThat; - -import java.util.ArrayList; -import java.util.Collection; -import java.util.List; -import java.util.concurrent.CountDownLatch; -import java.util.concurrent.Future; -import java.util.concurrent.LinkedBlockingQueue; -import java.util.concurrent.TimeUnit; -import java.util.concurrent.atomic.AtomicInteger; - -import org.eclipse.jetty.http.HttpHeader; -import org.eclipse.jetty.util.log.Log; -import org.eclipse.jetty.util.log.Logger; -import org.eclipse.jetty.util.log.StacklessLogging; -import org.eclipse.jetty.websocket.api.Session; -import org.eclipse.jetty.websocket.api.StatusCode; -import org.eclipse.jetty.websocket.api.WebSocketAdapter; -import org.eclipse.jetty.websocket.common.CloseInfo; -import org.eclipse.jetty.websocket.common.OpCode; -import org.eclipse.jetty.websocket.common.WebSocketFrame; -import org.eclipse.jetty.websocket.common.WebSocketSession; -import org.eclipse.jetty.websocket.common.frames.TextFrame; -import org.eclipse.jetty.websocket.common.test.BlockheadClient; -import org.eclipse.jetty.websocket.common.test.BlockheadClientRequest; -import org.eclipse.jetty.websocket.common.test.BlockheadConnection; -import org.eclipse.jetty.websocket.common.test.Timeouts; -import org.eclipse.jetty.websocket.server.helper.RFCSocket; -import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest; -import org.eclipse.jetty.websocket.servlet.ServletUpgradeResponse; -import org.eclipse.jetty.websocket.servlet.WebSocketCreator; -import org.eclipse.jetty.websocket.servlet.WebSocketServlet; -import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; -import org.junit.jupiter.api.AfterAll; -import org.junit.jupiter.api.BeforeAll; -import org.junit.jupiter.api.Test; - -/** - * Tests various close scenarios that should result in Open Session cleanup - */ -public class ManyConnectionsCleanupTest -{ - static class AbstractCloseSocket extends WebSocketAdapter - { - public CountDownLatch closeLatch = new CountDownLatch(1); - public String closeReason = null; - public int closeStatusCode = -1; - public List errors = new ArrayList<>(); - - @Override - public void onWebSocketClose(int statusCode, String reason) - { - LOG.debug("onWebSocketClose({}, {})",statusCode,reason); - this.closeStatusCode = statusCode; - this.closeReason = reason; - closeLatch.countDown(); - } - - @Override - public void onWebSocketError(Throwable cause) - { - errors.add(cause); - } - } - - @SuppressWarnings("serial") - public static class CloseServlet extends WebSocketServlet implements WebSocketCreator - { - private WebSocketServerFactory serverFactory; - private AtomicInteger calls = new AtomicInteger(0); - - @Override - public void configure(WebSocketServletFactory factory) - { - factory.setCreator(this); - if (factory instanceof WebSocketServerFactory) - { - this.serverFactory = (WebSocketServerFactory)factory; - } - } - - @Override - public Object createWebSocket(ServletUpgradeRequest req, ServletUpgradeResponse resp) - { - if (req.hasSubProtocol("fastclose")) - { - closeSocket = new FastCloseSocket(calls); - return closeSocket; - } - - if (req.hasSubProtocol("fastfail")) - { - closeSocket = new FastFailSocket(calls); - return closeSocket; - } - - if (req.hasSubProtocol("container")) - { - closeSocket = new ContainerSocket(serverFactory,calls); - return closeSocket; - } - return new RFCSocket(); - } - } - - /** - * On Message, return container information - */ - public static class ContainerSocket extends AbstractCloseSocket - { - private static final Logger LOG = Log.getLogger(ManyConnectionsCleanupTest.ContainerSocket.class); - private final WebSocketServerFactory container; - private final AtomicInteger calls; - private Session session; - - public ContainerSocket(WebSocketServerFactory container, AtomicInteger calls) - { - this.container = container; - this.calls = calls; - } - - @Override - public void onWebSocketText(String message) - { - LOG.debug("onWebSocketText({})",message); - calls.incrementAndGet(); - if (message.equalsIgnoreCase("openSessions")) - { - Collection sessions = container.getOpenSessions(); - - StringBuilder ret = new StringBuilder(); - ret.append("openSessions.size=").append(sessions.size()).append('\n'); - int idx = 0; - for (WebSocketSession sess : sessions) - { - ret.append('[').append(idx++).append("] ").append(sess.toString()).append('\n'); - } - session.getRemote().sendStringByFuture(ret.toString()); - session.close(StatusCode.NORMAL,"ContainerSocket"); - } else if(message.equalsIgnoreCase("calls")) - { - session.getRemote().sendStringByFuture(String.format("calls=%,d",calls.get())); - } - } - - @Override - public void onWebSocketConnect(Session sess) - { - LOG.debug("onWebSocketConnect({})",sess); - this.session = sess; - } - } - - /** - * On Connect, close socket - */ - public static class FastCloseSocket extends AbstractCloseSocket - { - private static final Logger LOG = Log.getLogger(ManyConnectionsCleanupTest.FastCloseSocket.class); - private final AtomicInteger calls; - - public FastCloseSocket(AtomicInteger calls) - { - this.calls = calls; - } - - @Override - public void onWebSocketConnect(Session sess) - { - LOG.debug("onWebSocketConnect({})",sess); - calls.incrementAndGet(); - sess.close(StatusCode.NORMAL,"FastCloseServer"); - } - } - - /** - * On Connect, throw unhandled exception - */ - public static class FastFailSocket extends AbstractCloseSocket - { - private static final Logger LOG = Log.getLogger(ManyConnectionsCleanupTest.FastFailSocket.class); - private final AtomicInteger calls; - - public FastFailSocket(AtomicInteger calls) - { - this.calls = calls; - } - - @Override - public void onWebSocketConnect(Session sess) - { - LOG.debug("onWebSocketConnect({})",sess); - calls.incrementAndGet(); - // Test failure due to unhandled exception - // this should trigger a fast-fail closure during open/connect - throw new RuntimeException("Intentional FastFail"); - } - } - - private static final Logger LOG = Log.getLogger(ManyConnectionsCleanupTest.class); - - private static BlockheadClient client; - private static SimpleServletServer server; - private static AbstractCloseSocket closeSocket; - - @BeforeAll - public static void startServer() throws Exception - { - server = new SimpleServletServer(new CloseServlet()); - server.start(); - } - - @AfterAll - public static void stopServer() - { - server.stop(); - } - - @BeforeAll - public static void startClient() throws Exception - { - client = new BlockheadClient(); - client.setIdleTimeout(TimeUnit.SECONDS.toMillis(2)); - client.start(); - } - - @AfterAll - public static void stopClient() throws Exception - { - client.stop(); - } - - /** - * Test session open session cleanup (bug #474936) - * - * @throws Exception - * on test failure - */ - @Test - public void testOpenSessionCleanup() throws Exception - { - int iterationCount = 20; - - // TODO: consider a SilentLogging alternative class - try(StacklessLogging ignore = new StacklessLogging(FastFailSocket.class, WebSocketSession.class)) - { - for (int requests = 0; requests < iterationCount; requests++) - { - fastFail(); - fastClose(); - dropConnection(); - } - } - - BlockheadClientRequest request = client.newWsRequest(server.getServerUri()); - request.header(HttpHeader.SEC_WEBSOCKET_SUBPROTOCOL, "container"); - request.idleTimeout(1, TimeUnit.SECONDS); - - Future connFut = request.sendAsync(); - - try (BlockheadConnection clientConn = connFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT)) - { - clientConn.write(new TextFrame().setPayload("calls")); - clientConn.write(new TextFrame().setPayload("openSessions")); - - LinkedBlockingQueue frames = clientConn.getFrameQueue(); - WebSocketFrame frame; - String resp; - - frame = frames.poll(Timeouts.POLL_EVENT, Timeouts.POLL_EVENT_UNIT); - assertThat("frames[0].opcode",frame.getOpCode(),is(OpCode.TEXT)); - resp = frame.getPayloadAsUTF8(); - assertThat("Should only have 1 open session",resp,containsString("calls=" + ((iterationCount * 2) + 1))); - - frame = frames.poll(Timeouts.POLL_EVENT, Timeouts.POLL_EVENT_UNIT); - assertThat("frames[1].opcode",frame.getOpCode(),is(OpCode.TEXT)); - resp = frame.getPayloadAsUTF8(); - assertThat("Should only have 1 open session",resp,containsString("openSessions.size=1\n")); - - frame = frames.poll(Timeouts.POLL_EVENT, Timeouts.POLL_EVENT_UNIT); - assertThat("frames[2].opcode",frame.getOpCode(),is(OpCode.CLOSE)); - CloseInfo close = new CloseInfo(frame); - assertThat("Close Status Code",close.getStatusCode(),is(StatusCode.NORMAL)); - clientConn.write(close.asFrame()); // respond with close - - // ensure server socket got close event - assertThat("Open Sessions Latch",closeSocket.closeLatch.await(1,TimeUnit.SECONDS),is(true)); - assertThat("Open Sessions.statusCode",closeSocket.closeStatusCode,is(StatusCode.NORMAL)); - assertThat("Open Sessions.errors",closeSocket.errors.size(),is(0)); - } - } - - private void fastClose() throws Exception - { - BlockheadClientRequest request = client.newWsRequest(server.getServerUri()); - request.header(HttpHeader.SEC_WEBSOCKET_SUBPROTOCOL, "fastclose"); - request.idleTimeout(1, TimeUnit.SECONDS); - - Future connFut = request.sendAsync(); - - try (BlockheadConnection clientConn = connFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT); - StacklessLogging ignore = new StacklessLogging(WebSocketSession.class)) - { - LinkedBlockingQueue frames = clientConn.getFrameQueue(); - frames.poll(Timeouts.POLL_EVENT, Timeouts.POLL_EVENT_UNIT); - - CloseInfo close = new CloseInfo(StatusCode.NORMAL,"Normal"); - assertThat("Close Status Code",close.getStatusCode(),is(StatusCode.NORMAL)); - - // Notify server of close handshake - clientConn.write(close.asFrame()); // respond with close - - // ensure server socket got close event - assertThat("Fast Close Latch",closeSocket.closeLatch.await(1,TimeUnit.SECONDS),is(true)); - assertThat("Fast Close.statusCode",closeSocket.closeStatusCode,is(StatusCode.NORMAL)); - } - } - - private void fastFail() throws Exception - { - BlockheadClientRequest request = client.newWsRequest(server.getServerUri()); - request.header(HttpHeader.SEC_WEBSOCKET_SUBPROTOCOL, "fastfail"); - request.idleTimeout(1, TimeUnit.SECONDS); - - Future connFut = request.sendAsync(); - - try (BlockheadConnection clientConn = connFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT); - StacklessLogging ignore = new StacklessLogging(WebSocketSession.class)) - { - CloseInfo close = new CloseInfo(StatusCode.NORMAL,"Normal"); - clientConn.write(close.asFrame()); // respond with close - - // ensure server socket got close event - assertThat("Fast Fail Latch",closeSocket.closeLatch.await(1,TimeUnit.SECONDS),is(true)); - assertThat("Fast Fail.statusCode",closeSocket.closeStatusCode,is(StatusCode.SERVER_ERROR)); - assertThat("Fast Fail.errors",closeSocket.errors.size(),is(1)); - } - } - - private void dropConnection() throws Exception - { - BlockheadClientRequest request = client.newWsRequest(server.getServerUri()); - request.header(HttpHeader.SEC_WEBSOCKET_SUBPROTOCOL, "container"); - request.idleTimeout(1, TimeUnit.SECONDS); - - Future connFut = request.sendAsync(); - - try (BlockheadConnection clientConn = connFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT); - StacklessLogging ignore = new StacklessLogging(WebSocketSession.class)) - { - clientConn.abort(); - } - } -} diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SimpleServletServer.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SimpleServletServer.java index 02525f823f0..bff61ac7491 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SimpleServletServer.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/SimpleServletServer.java @@ -19,7 +19,6 @@ package org.eclipse.jetty.websocket.server; import java.net.URI; - import javax.servlet.http.HttpServlet; import org.eclipse.jetty.http.HttpVersion; @@ -92,9 +91,6 @@ public class SimpleServletServer sslContextFactory.setKeyStorePath(MavenTestingUtils.getTestResourceFile("keystore").getAbsolutePath()); sslContextFactory.setKeyStorePassword("storepwd"); sslContextFactory.setKeyManagerPassword("keypwd"); - sslContextFactory.setExcludeCipherSuites("SSL_RSA_WITH_DES_CBC_SHA","SSL_DHE_RSA_WITH_DES_CBC_SHA","SSL_DHE_DSS_WITH_DES_CBC_SHA", - "SSL_RSA_EXPORT_WITH_RC4_40_MD5","SSL_RSA_EXPORT_WITH_DES40_CBC_SHA","SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA", - "SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA"); sslContextFactory.setEndpointIdentificationAlgorithm(null); // SSL HTTP Configuration diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketCloseTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketCloseTest.java deleted file mode 100644 index 756b752fd06..00000000000 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketCloseTest.java +++ /dev/null @@ -1,412 +0,0 @@ -// -// ======================================================================== -// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -// - -package org.eclipse.jetty.websocket.server; - -import static org.hamcrest.Matchers.containsString; -import static org.hamcrest.Matchers.is; -import static org.hamcrest.MatcherAssert.assertThat; - -import java.util.ArrayList; -import java.util.Collection; -import java.util.List; -import java.util.concurrent.CountDownLatch; -import java.util.concurrent.Future; -import java.util.concurrent.LinkedBlockingQueue; -import java.util.concurrent.TimeUnit; - -import org.eclipse.jetty.http.HttpHeader; -import org.eclipse.jetty.util.log.Log; -import org.eclipse.jetty.util.log.Logger; -import org.eclipse.jetty.util.log.StacklessLogging; -import org.eclipse.jetty.websocket.api.Session; -import org.eclipse.jetty.websocket.api.StatusCode; -import org.eclipse.jetty.websocket.api.WebSocketAdapter; -import org.eclipse.jetty.websocket.common.CloseInfo; -import org.eclipse.jetty.websocket.common.OpCode; -import org.eclipse.jetty.websocket.common.WebSocketFrame; -import org.eclipse.jetty.websocket.common.WebSocketSession; -import org.eclipse.jetty.websocket.common.frames.TextFrame; -import org.eclipse.jetty.websocket.common.test.BlockheadClient; -import org.eclipse.jetty.websocket.common.test.BlockheadClientRequest; -import org.eclipse.jetty.websocket.common.test.BlockheadConnection; -import org.eclipse.jetty.websocket.common.test.Timeouts; -import org.eclipse.jetty.websocket.server.helper.RFCSocket; -import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest; -import org.eclipse.jetty.websocket.servlet.ServletUpgradeResponse; -import org.eclipse.jetty.websocket.servlet.WebSocketCreator; -import org.eclipse.jetty.websocket.servlet.WebSocketServlet; -import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; -import org.junit.jupiter.api.AfterAll; -import org.junit.jupiter.api.BeforeAll; -import org.junit.jupiter.api.Disabled; -import org.junit.jupiter.api.Test; - -/** - * Tests various close scenarios - */ -public class WebSocketCloseTest -{ - static class AbstractCloseSocket extends WebSocketAdapter - { - public CountDownLatch closeLatch = new CountDownLatch(1); - public String closeReason = null; - public int closeStatusCode = -1; - public List errors = new ArrayList<>(); - - @Override - public void onWebSocketClose(int statusCode, String reason) - { - LOG.debug("onWebSocketClose({}, {})",statusCode,reason); - this.closeStatusCode = statusCode; - this.closeReason = reason; - closeLatch.countDown(); - } - - @Override - public void onWebSocketError(Throwable cause) - { - errors.add(cause); - } - } - - @SuppressWarnings("serial") - public static class CloseServlet extends WebSocketServlet implements WebSocketCreator - { - private WebSocketServerFactory serverFactory; - - @Override - public void configure(WebSocketServletFactory factory) - { - factory.setCreator(this); - if (factory instanceof WebSocketServerFactory) - { - this.serverFactory = (WebSocketServerFactory)factory; - } - } - - @Override - public Object createWebSocket(ServletUpgradeRequest req, ServletUpgradeResponse resp) - { - if (req.hasSubProtocol("fastclose")) - { - closeSocket = new FastCloseSocket(); - return closeSocket; - } - - if (req.hasSubProtocol("fastfail")) - { - closeSocket = new FastFailSocket(); - return closeSocket; - } - - if (req.hasSubProtocol("container")) - { - closeSocket = new ContainerSocket(serverFactory); - return closeSocket; - } - return new RFCSocket(); - } - } - - /** - * On Message, return container information - */ - public static class ContainerSocket extends AbstractCloseSocket - { - private static final Logger LOG = Log.getLogger(WebSocketCloseTest.ContainerSocket.class); - private final WebSocketServerFactory container; - private Session session; - - public ContainerSocket(WebSocketServerFactory container) - { - this.container = container; - } - - @Override - public void onWebSocketText(String message) - { - LOG.debug("onWebSocketText({})",message); - if (message.equalsIgnoreCase("openSessions")) - { - Collection sessions = container.getOpenSessions(); - - StringBuilder ret = new StringBuilder(); - ret.append("openSessions.size=").append(sessions.size()).append('\n'); - int idx = 0; - for (WebSocketSession sess : sessions) - { - ret.append('[').append(idx++).append("] ").append(sess.toString()).append('\n'); - } - session.getRemote().sendStringByFuture(ret.toString()); - } - session.close(StatusCode.NORMAL,"ContainerSocket"); - } - - @Override - public void onWebSocketConnect(Session sess) - { - LOG.debug("onWebSocketConnect({})",sess); - this.session = sess; - } - } - - /** - * On Connect, close socket - */ - public static class FastCloseSocket extends AbstractCloseSocket - { - private static final Logger LOG = Log.getLogger(WebSocketCloseTest.FastCloseSocket.class); - - @Override - public void onWebSocketConnect(Session sess) - { - LOG.debug("onWebSocketConnect({})",sess); - sess.close(StatusCode.NORMAL,"FastCloseServer"); - } - } - - /** - * On Connect, throw unhandled exception - */ - public static class FastFailSocket extends AbstractCloseSocket - { - private static final Logger LOG = Log.getLogger(WebSocketCloseTest.FastFailSocket.class); - - @Override - public void onWebSocketConnect(Session sess) - { - LOG.debug("onWebSocketConnect({})",sess); - // Test failure due to unhandled exception - // this should trigger a fast-fail closure during open/connect - throw new RuntimeException("Intentional FastFail"); - } - } - - private static final Logger LOG = Log.getLogger(WebSocketCloseTest.class); - - private static BlockheadClient client; - private static SimpleServletServer server; - private static AbstractCloseSocket closeSocket; - - @BeforeAll - public static void startServer() throws Exception - { - server = new SimpleServletServer(new CloseServlet()); - server.start(); - } - - @AfterAll - public static void stopServer() - { - server.stop(); - } - - @BeforeAll - public static void startClient() throws Exception - { - client = new BlockheadClient(); - client.setIdleTimeout(TimeUnit.SECONDS.toMillis(2)); - client.start(); - } - - @AfterAll - public static void stopClient() throws Exception - { - client.stop(); - } - - /** - * Test fast close (bug #403817) - * - * @throws Exception - * on test failure - */ - @Test - public void testFastClose() throws Exception - { - BlockheadClientRequest request = client.newWsRequest(server.getServerUri()); - request.header(HttpHeader.SEC_WEBSOCKET_SUBPROTOCOL, "fastclose"); - request.idleTimeout(5,TimeUnit.SECONDS); - - Future connFut = request.sendAsync(); - - try (BlockheadConnection clientConn = connFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT)) - { - // Verify that client got close frame - LinkedBlockingQueue frames = clientConn.getFrameQueue(); - WebSocketFrame frame = frames.poll(Timeouts.POLL_EVENT, Timeouts.POLL_EVENT_UNIT); - assertThat("frames[0].opcode",frame.getOpCode(),is(OpCode.CLOSE)); - CloseInfo close = new CloseInfo(frame); - assertThat("Close Status Code",close.getStatusCode(),is(StatusCode.NORMAL)); - - // Notify server of close handshake - clientConn.write(close.asFrame()); // respond with close - - // ensure server socket got close event - assertThat("Fast Close Latch",closeSocket.closeLatch.await(5,TimeUnit.SECONDS),is(true)); - assertThat("Fast Close.statusCode",closeSocket.closeStatusCode,is(StatusCode.NORMAL)); - } - } - - /** - * Test fast fail (bug #410537) - * - * @throws Exception - * on test failure - */ - @Test - public void testFastFail() throws Exception - { - BlockheadClientRequest request = client.newWsRequest(server.getServerUri()); - request.header(HttpHeader.SEC_WEBSOCKET_SUBPROTOCOL, "fastfail"); - request.idleTimeout(5,TimeUnit.SECONDS); - - Future connFut = request.sendAsync(); - - try (StacklessLogging ignore = new StacklessLogging(FastFailSocket.class, WebSocketSession.class); - BlockheadConnection clientConn = connFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT)) - { - LinkedBlockingQueue frames = clientConn.getFrameQueue(); - WebSocketFrame frame = frames.poll(Timeouts.POLL_EVENT, Timeouts.POLL_EVENT_UNIT); - assertThat("frames[0].opcode",frame.getOpCode(),is(OpCode.CLOSE)); - CloseInfo close = new CloseInfo(frame); - assertThat("Close Status Code",close.getStatusCode(),is(StatusCode.SERVER_ERROR)); - - clientConn.write(close.asFrame()); // respond with close - - // ensure server socket got close event - assertThat("Fast Fail Latch",closeSocket.closeLatch.await(5,TimeUnit.SECONDS),is(true)); - assertThat("Fast Fail.statusCode",closeSocket.closeStatusCode,is(StatusCode.SERVER_ERROR)); - assertThat("Fast Fail.errors",closeSocket.errors.size(),is(1)); - } - } - - /** - * Test session open session cleanup (bug #474936) - * - * @throws Exception - * on test failure - */ - @Test - @Disabled("Flappy test, needs work") - public void testOpenSessionCleanup() throws Exception - { - fastFail(); - fastClose(); - dropConnection(); - - BlockheadClientRequest request = client.newWsRequest(server.getServerUri()); - request.header(HttpHeader.SEC_WEBSOCKET_SUBPROTOCOL, "container"); - request.idleTimeout(1,TimeUnit.SECONDS); - - Future connFut = request.sendAsync(); - - try (BlockheadConnection clientConn = connFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT)) - { - TextFrame text = new TextFrame(); - text.setPayload("openSessions"); - clientConn.write(text); - - LinkedBlockingQueue frames = clientConn.getFrameQueue(); - WebSocketFrame frame = frames.poll(Timeouts.POLL_EVENT, Timeouts.POLL_EVENT_UNIT); - assertThat("frames[0].opcode",frame.getOpCode(),is(OpCode.TEXT)); - - String resp = frame.getPayloadAsUTF8(); - assertThat("Should only have 1 open session",resp,containsString("openSessions.size=1\n")); - - frame = frames.poll(Timeouts.POLL_EVENT, Timeouts.POLL_EVENT_UNIT); - assertThat("frames[1].opcode",frame.getOpCode(),is(OpCode.CLOSE)); - CloseInfo close = new CloseInfo(frame); - assertThat("Close Status Code",close.getStatusCode(),is(StatusCode.NORMAL)); - clientConn.write(close.asFrame()); // respond with close - - // ensure server socket got close event - assertThat("Open Sessions Latch",closeSocket.closeLatch.await(1,TimeUnit.SECONDS),is(true)); - assertThat("Open Sessions.statusCode",closeSocket.closeStatusCode,is(StatusCode.NORMAL)); - assertThat("Open Sessions.errors",closeSocket.errors.size(),is(0)); - } - } - - @SuppressWarnings("Duplicates") - private void fastClose() throws Exception - { - BlockheadClientRequest request = client.newWsRequest(server.getServerUri()); - request.header(HttpHeader.SEC_WEBSOCKET_SUBPROTOCOL, "fastclose"); - request.idleTimeout(1,TimeUnit.SECONDS); - - Future connFut = request.sendAsync(); - - try (StacklessLogging ignore = new StacklessLogging(WebSocketSession.class); - BlockheadConnection clientConn = connFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT)) - { - LinkedBlockingQueue frames = clientConn.getFrameQueue(); - WebSocketFrame received = frames.poll(Timeouts.POLL_EVENT, Timeouts.POLL_EVENT_UNIT); - - CloseInfo close = new CloseInfo(StatusCode.NORMAL,"Normal"); - assertThat("Close Status Code",close.getStatusCode(),is(StatusCode.NORMAL)); - - // Notify server of close handshake - clientConn.write(close.asFrame()); // respond with close - - // ensure server socket got close event - assertThat("Fast Close Latch",closeSocket.closeLatch.await(1,TimeUnit.SECONDS),is(true)); - assertThat("Fast Close.statusCode",closeSocket.closeStatusCode,is(StatusCode.NORMAL)); - } - } - - private void fastFail() throws Exception - { - BlockheadClientRequest request = client.newWsRequest(server.getServerUri()); - request.header(HttpHeader.SEC_WEBSOCKET_SUBPROTOCOL, "fastfail"); - request.idleTimeout(1,TimeUnit.SECONDS); - - Future connFut = request.sendAsync(); - - try (StacklessLogging ignore = new StacklessLogging(WebSocketSession.class); - BlockheadConnection clientConn = connFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT)) - { - LinkedBlockingQueue frames = clientConn.getFrameQueue(); - WebSocketFrame received = frames.poll(Timeouts.POLL_EVENT, Timeouts.POLL_EVENT_UNIT); - - CloseInfo close = new CloseInfo(StatusCode.NORMAL,"Normal"); - clientConn.write(close.asFrame()); // respond with close - - // ensure server socket got close event - assertThat("Fast Fail Latch",closeSocket.closeLatch.await(1,TimeUnit.SECONDS),is(true)); - assertThat("Fast Fail.statusCode",closeSocket.closeStatusCode,is(StatusCode.SERVER_ERROR)); - assertThat("Fast Fail.errors",closeSocket.errors.size(),is(1)); - } - } - - @SuppressWarnings("Duplicates") - private void dropConnection() throws Exception - { - BlockheadClientRequest request = client.newWsRequest(server.getServerUri()); - request.header(HttpHeader.SEC_WEBSOCKET_SUBPROTOCOL, "container"); - request.idleTimeout(1,TimeUnit.SECONDS); - - Future connFut = request.sendAsync(); - - try (StacklessLogging ignore = new StacklessLogging(WebSocketSession.class); - BlockheadConnection clientConn = connFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT)) - { - clientConn.abort(); - } - } -} diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketProtocolTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketProtocolTest.java index a887e662274..749a135bc7d 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketProtocolTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketProtocolTest.java @@ -18,33 +18,71 @@ package org.eclipse.jetty.websocket.server; +import java.io.BufferedReader; +import java.io.InputStreamReader; +import java.io.OutputStream; +import java.net.Socket; +import java.net.URI; +import java.nio.charset.StandardCharsets; + +import org.eclipse.jetty.http.HttpFields; +import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.server.ServerConnector; +import org.eclipse.jetty.server.handler.DefaultHandler; +import org.eclipse.jetty.server.handler.HandlerList; +import org.eclipse.jetty.servlet.ServletContextHandler; +import org.eclipse.jetty.servlet.ServletHolder; +import org.eclipse.jetty.util.B64Code; +import org.eclipse.jetty.websocket.server.helper.EchoSocket; +import org.eclipse.jetty.websocket.servlet.WebSocketServlet; +import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.containsString; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; -import java.io.BufferedReader; -import java.io.InputStreamReader; -import java.io.OutputStream; -import java.net.Socket; -import java.nio.charset.StandardCharsets; - -import org.eclipse.jetty.http.HttpFields; -import org.eclipse.jetty.util.B64Code; -import org.eclipse.jetty.websocket.server.browser.BrowserDebugTool; -import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; - public class WebSocketProtocolTest { - private BrowserDebugTool server; + private Server server; @BeforeEach public void startServer() throws Exception { - server = new BrowserDebugTool(); - server.prepare(0); + server = new Server(); + + ServerConnector connector = new ServerConnector(server); + connector.setPort(0); + server.addConnector(connector); + + ServletContextHandler context = new ServletContextHandler(); + context.setContextPath("/"); + ServletHolder holder = new ServletHolder(new WebSocketServlet() + { + @Override + public void configure(WebSocketServletFactory factory) + { + factory.getPolicy().setIdleTimeout(10000); + factory.getPolicy().setMaxTextMessageSize(1024 * 1024 * 2); + factory.setCreator((req, resp) -> { + if(req.hasSubProtocol("echo")) + { + resp.setAcceptedSubProtocol("echo"); + } + return new EchoSocket(); + }); + } + }); + context.addServlet(holder, "/ws"); + + HandlerList handlers = new HandlerList(); + handlers.addHandler(context); + handlers.addHandler(new DefaultHandler()); + server.setHandler(handlers); + server.start(); } @@ -57,11 +95,15 @@ public class WebSocketProtocolTest @Test public void testWebSocketProtocolResponse() throws Exception { - try (Socket client = new Socket("localhost", server.getPort())) + URI uri = server.getURI(); + String host = uri.getHost(); + int port = uri.getPort(); + + try (Socket client = new Socket(host, port)) { byte[] key = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15}; StringBuilder request = new StringBuilder(); - request.append("GET / HTTP/1.1\r\n") + request.append("GET /ws HTTP/1.1\r\n") .append("Host: localhost\r\n") .append("Connection: Upgrade\r\n") .append("Upgrade: websocket\r\n") diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/ABSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/ABSocket.java index 00879eed628..c06b60e9108 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/ABSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/ab/ABSocket.java @@ -25,6 +25,7 @@ import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.websocket.api.Session; import org.eclipse.jetty.websocket.api.WebSocketException; import org.eclipse.jetty.websocket.api.annotations.OnWebSocketConnect; +import org.eclipse.jetty.websocket.api.annotations.OnWebSocketError; import org.eclipse.jetty.websocket.api.annotations.OnWebSocketMessage; import org.eclipse.jetty.websocket.api.annotations.WebSocket; import org.eclipse.jetty.websocket.common.util.TextUtil; @@ -80,4 +81,13 @@ public class ABSocket LOG.warn("Unable to echo TEXT message",e); } } + + @OnWebSocketError + public void onError(Throwable cause) + { + if (LOG.isDebugEnabled()) + { + LOG.debug("onError", cause); + } + } } diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/BigEchoSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/BigEchoSocket.java index 471d8627295..803306087c1 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/BigEchoSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/examples/echo/BigEchoSocket.java @@ -26,6 +26,7 @@ import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.websocket.api.BatchMode; import org.eclipse.jetty.websocket.api.RemoteEndpoint; import org.eclipse.jetty.websocket.api.Session; +import org.eclipse.jetty.websocket.api.annotations.OnWebSocketError; import org.eclipse.jetty.websocket.api.annotations.OnWebSocketMessage; import org.eclipse.jetty.websocket.api.annotations.WebSocket; @@ -64,4 +65,13 @@ public class BigEchoSocket if (remote.getBatchMode() == BatchMode.ON) remote.flush(); } + + @OnWebSocketError + public void onError(Throwable cause) + { + if(LOG.isDebugEnabled()) + { + LOG.debug("onError()", cause); + } + } } diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/RFCSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/RFCSocket.java index bb42c47c106..8b797479de9 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/RFCSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/RFCSocket.java @@ -27,6 +27,7 @@ import org.eclipse.jetty.websocket.api.BatchMode; import org.eclipse.jetty.websocket.api.RemoteEndpoint; import org.eclipse.jetty.websocket.api.Session; import org.eclipse.jetty.websocket.api.annotations.OnWebSocketConnect; +import org.eclipse.jetty.websocket.api.annotations.OnWebSocketError; import org.eclipse.jetty.websocket.api.annotations.OnWebSocketMessage; import org.eclipse.jetty.websocket.api.annotations.WebSocket; @@ -73,4 +74,10 @@ public class RFCSocket if (remote.getBatchMode() == BatchMode.ON) remote.flush(); } + + @OnWebSocketError + public void onError(Throwable cause) + { + LOG.warn(cause); + } } diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/SessionSocket.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/SessionSocket.java index e0438387639..dad2bd3e49a 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/SessionSocket.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/helper/SessionSocket.java @@ -28,6 +28,7 @@ import org.eclipse.jetty.websocket.api.BatchMode; import org.eclipse.jetty.websocket.api.RemoteEndpoint; import org.eclipse.jetty.websocket.api.Session; import org.eclipse.jetty.websocket.api.annotations.OnWebSocketConnect; +import org.eclipse.jetty.websocket.api.annotations.OnWebSocketError; import org.eclipse.jetty.websocket.api.annotations.OnWebSocketMessage; import org.eclipse.jetty.websocket.api.annotations.WebSocket; @@ -115,6 +116,15 @@ public class SessionSocket } } + @OnWebSocketError + public void onError(Throwable cause) + { + if(LOG.isDebugEnabled()) + { + LOG.debug("onError()", cause); + } + } + protected void sendString(String text) throws IOException { RemoteEndpoint remote = session.getRemote(); diff --git a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/MisbehavingClassTest.java b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/MisbehavingClassTest.java index 28299838f99..f9218f3f9ac 100644 --- a/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/MisbehavingClassTest.java +++ b/jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/misbehaving/MisbehavingClassTest.java @@ -18,10 +18,7 @@ package org.eclipse.jetty.websocket.server.misbehaving; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.instanceOf; -import static org.hamcrest.Matchers.is; - +import java.nio.channels.ClosedChannelException; import java.util.concurrent.Future; import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.TimeUnit; @@ -42,6 +39,11 @@ import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.greaterThanOrEqualTo; +import static org.hamcrest.Matchers.instanceOf; +import static org.hamcrest.Matchers.is; + /** * Testing badly behaving Socket class implementations to get the best * error messages and state out of the websocket implementation. @@ -107,10 +109,14 @@ public class MisbehavingClassTest assertThat("Close Latch",socket.closeLatch.await(1,TimeUnit.SECONDS),is(true)); assertThat("closeStatusCode",socket.closeStatusCode,is(StatusCode.SERVER_ERROR)); - // Validate errors - assertThat("socket.onErrors",socket.errors.size(),is(1)); + // Validate errors (must be "java.lang.RuntimeException: Intentional Exception from onWebSocketConnect") + assertThat("socket.onErrors",socket.errors.size(),greaterThanOrEqualTo(1)); Throwable cause = socket.errors.pop(); assertThat("Error type",cause,instanceOf(RuntimeException.class)); + // ... with optional ClosedChannelException + cause = socket.errors.peek(); + if(cause != null) + assertThat("Error type",cause,instanceOf(ClosedChannelException.class)); } } @@ -126,7 +132,7 @@ public class MisbehavingClassTest Future connFut = request.sendAsync(); - try (StacklessLogging ignore = new StacklessLogging(AnnotatedRuntimeOnConnectSocket.class, WebSocketSession.class); + try (StacklessLogging ignore = new StacklessLogging(AnnotatedRuntimeOnConnectSocket.class /*, WebSocketSession.class*/); BlockheadConnection clientConn = connFut.get(Timeouts.CONNECT, Timeouts.CONNECT_UNIT)) { LinkedBlockingQueue frames = clientConn.getFrameQueue(); @@ -141,10 +147,14 @@ public class MisbehavingClassTest assertThat("Close Latch",socket.closeLatch.await(1,TimeUnit.SECONDS),is(true)); assertThat("closeStatusCode",socket.closeStatusCode,is(StatusCode.SERVER_ERROR)); - // Validate errors - assertThat("socket.onErrors",socket.errors.size(),is(1)); + // Validate errors (must be "java.lang.RuntimeException: Intentional Exception from onWebSocketConnect") + assertThat("socket.onErrors",socket.errors.size(),greaterThanOrEqualTo(1)); Throwable cause = socket.errors.pop(); assertThat("Error type",cause,instanceOf(RuntimeException.class)); + // ... with optional ClosedChannelException + cause = socket.errors.peek(); + if(cause != null) + assertThat("Error type",cause,instanceOf(ClosedChannelException.class)); } } } diff --git a/jetty-websocket/websocket-server/src/test/resources/jetty-logging.properties b/jetty-websocket/websocket-server/src/test/resources/jetty-logging.properties index 924d0006cbb..cd02b8ec412 100644 --- a/jetty-websocket/websocket-server/src/test/resources/jetty-logging.properties +++ b/jetty-websocket/websocket-server/src/test/resources/jetty-logging.properties @@ -4,6 +4,7 @@ org.eclipse.jetty.LEVEL=WARN # org.eclipse.jetty.io.WriteFlusher.LEVEL=DEBUG # org.eclipse.jetty.websocket.LEVEL=DEBUG # org.eclipse.jetty.websocket.LEVEL=INFO +# org.eclipse.jetty.websocket.common.message.LEVEL=DEBUG # org.eclipse.jetty.websocket.common.io.LEVEL=DEBUG # org.eclipse.jetty.websocket.server.ab.LEVEL=DEBUG # org.eclipse.jetty.websocket.common.Parser.LEVEL=DEBUG diff --git a/tests/test-integration/src/test/resources/jetty-logging.properties b/tests/test-integration/src/test/resources/jetty-logging.properties index d96a696f82e..1531468c2c1 100644 --- a/tests/test-integration/src/test/resources/jetty-logging.properties +++ b/tests/test-integration/src/test/resources/jetty-logging.properties @@ -1,2 +1,3 @@ org.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.StdErrLog #org.eclipse.jetty.LEVEL=DEBUG +#org.eclipse.jetty.websocket.LEVEL=DEBUG From eb70b240169fcf1abbd86af36482d1c49826fa0b Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Fri, 15 Feb 2019 11:53:00 -0500 Subject: [PATCH 308/931] Updating to version 9.4.15.v20190215 --- VERSION.txt | 43 +++++- aggregates/jetty-all-compact3/pom.xml | 2 +- aggregates/jetty-all/pom.xml | 2 +- apache-jsp/pom.xml | 2 +- apache-jstl/pom.xml | 2 +- examples/async-rest/async-rest-jar/pom.xml | 2 +- examples/async-rest/async-rest-webapp/pom.xml | 2 +- examples/async-rest/pom.xml | 2 +- examples/embedded/pom.xml | 2 +- examples/pom.xml | 2 +- jetty-alpn/jetty-alpn-client/pom.xml | 2 +- .../jetty-alpn-conscrypt-client/pom.xml | 2 +- .../jetty-alpn-conscrypt-server/pom.xml | 2 +- jetty-alpn/jetty-alpn-java-client/pom.xml | 2 +- jetty-alpn/jetty-alpn-java-server/pom.xml | 2 +- jetty-alpn/jetty-alpn-openjdk8-client/pom.xml | 2 +- jetty-alpn/jetty-alpn-openjdk8-server/pom.xml | 2 +- jetty-alpn/jetty-alpn-server/pom.xml | 2 +- jetty-alpn/pom.xml | 2 +- jetty-annotations/pom.xml | 2 +- jetty-ant/pom.xml | 2 +- jetty-bom/pom.xml | 132 +++++++++--------- jetty-cdi/cdi-2/pom.xml | 2 +- jetty-cdi/cdi-core/pom.xml | 2 +- jetty-cdi/cdi-full-servlet/pom.xml | 2 +- jetty-cdi/cdi-servlet/pom.xml | 2 +- jetty-cdi/cdi-websocket/pom.xml | 2 +- jetty-cdi/pom.xml | 2 +- jetty-cdi/test-cdi-webapp/pom.xml | 2 +- jetty-client/pom.xml | 2 +- jetty-continuation/pom.xml | 2 +- jetty-deploy/pom.xml | 2 +- jetty-distribution/pom.xml | 2 +- jetty-documentation/pom.xml | 2 +- jetty-fcgi/fcgi-client/pom.xml | 2 +- jetty-fcgi/fcgi-server/pom.xml | 2 +- jetty-fcgi/pom.xml | 2 +- .../jetty-gcloud-session-manager/pom.xml | 2 +- jetty-gcloud/pom.xml | 2 +- jetty-hazelcast/pom.xml | 2 +- jetty-home/pom.xml | 2 +- jetty-http-spi/pom.xml | 2 +- jetty-http/pom.xml | 2 +- jetty-http2/http2-alpn-tests/pom.xml | 2 +- jetty-http2/http2-client/pom.xml | 2 +- jetty-http2/http2-common/pom.xml | 2 +- jetty-http2/http2-hpack/pom.xml | 2 +- .../http2-http-client-transport/pom.xml | 2 +- jetty-http2/http2-server/pom.xml | 2 +- jetty-http2/pom.xml | 2 +- jetty-infinispan/pom.xml | 2 +- jetty-io/pom.xml | 2 +- jetty-jaas/pom.xml | 2 +- jetty-jaspi/pom.xml | 2 +- jetty-jmh/pom.xml | 2 +- jetty-jmx/pom.xml | 2 +- jetty-jndi/pom.xml | 2 +- jetty-jspc-maven-plugin/pom.xml | 2 +- jetty-maven-plugin/pom.xml | 2 +- .../jetty-memcached-sessions/pom.xml | 2 +- jetty-memcached/pom.xml | 2 +- jetty-nosql/pom.xml | 2 +- jetty-osgi/jetty-osgi-alpn/pom.xml | 2 +- jetty-osgi/jetty-osgi-boot-jsp/pom.xml | 2 +- jetty-osgi/jetty-osgi-boot-warurl/pom.xml | 2 +- jetty-osgi/jetty-osgi-boot/pom.xml | 2 +- jetty-osgi/jetty-osgi-httpservice/pom.xml | 2 +- jetty-osgi/pom.xml | 2 +- jetty-osgi/test-jetty-osgi-context/pom.xml | 2 +- jetty-osgi/test-jetty-osgi-fragment/pom.xml | 2 +- jetty-osgi/test-jetty-osgi-server/pom.xml | 2 +- jetty-osgi/test-jetty-osgi-webapp/pom.xml | 2 +- jetty-osgi/test-jetty-osgi/pom.xml | 2 +- jetty-plus/pom.xml | 2 +- jetty-proxy/pom.xml | 2 +- jetty-quickstart/pom.xml | 2 +- jetty-rewrite/pom.xml | 2 +- jetty-runner/pom.xml | 2 +- jetty-security/pom.xml | 2 +- jetty-server/pom.xml | 2 +- jetty-servlet/pom.xml | 2 +- jetty-servlets/pom.xml | 2 +- jetty-spring/pom.xml | 2 +- jetty-start/pom.xml | 2 +- jetty-unixsocket/pom.xml | 2 +- jetty-util-ajax/pom.xml | 2 +- jetty-util/pom.xml | 2 +- jetty-webapp/pom.xml | 2 +- .../javax-websocket-client-impl/pom.xml | 2 +- .../javax-websocket-server-impl/pom.xml | 2 +- jetty-websocket/jetty-websocket-tests/pom.xml | 2 +- jetty-websocket/pom.xml | 2 +- jetty-websocket/websocket-api/pom.xml | 2 +- jetty-websocket/websocket-client/pom.xml | 2 +- jetty-websocket/websocket-common/pom.xml | 2 +- jetty-websocket/websocket-server/pom.xml | 2 +- jetty-websocket/websocket-servlet/pom.xml | 2 +- jetty-xml/pom.xml | 2 +- pom.xml | 2 +- tests/pom.xml | 2 +- tests/test-continuation/pom.xml | 2 +- tests/test-distribution/pom.xml | 2 +- tests/test-http-client-transport/pom.xml | 2 +- tests/test-integration/pom.xml | 2 +- tests/test-jmx/jmx-webapp-it/pom.xml | 2 +- tests/test-jmx/jmx-webapp/pom.xml | 2 +- tests/test-jmx/pom.xml | 2 +- tests/test-loginservice/pom.xml | 2 +- tests/test-quickstart/pom.xml | 2 +- tests/test-sessions/pom.xml | 2 +- .../test-sessions/test-file-sessions/pom.xml | 2 +- .../test-gcloud-sessions/pom.xml | 2 +- .../test-hazelcast-sessions/pom.xml | 2 +- .../test-infinispan-sessions/pom.xml | 2 +- .../test-sessions/test-jdbc-sessions/pom.xml | 2 +- .../test-memcached-sessions/pom.xml | 2 +- .../test-mongodb-sessions/pom.xml | 2 +- .../test-sessions-common/pom.xml | 2 +- tests/test-webapps/pom.xml | 2 +- tests/test-webapps/test-http2-webapp/pom.xml | 2 +- tests/test-webapps/test-jaas-webapp/pom.xml | 2 +- tests/test-webapps/test-jetty-webapp/pom.xml | 2 +- tests/test-webapps/test-jndi-webapp/pom.xml | 2 +- .../test-webapps/test-mock-resources/pom.xml | 2 +- tests/test-webapps/test-proxy-webapp/pom.xml | 2 +- tests/test-webapps/test-servlet-spec/pom.xml | 2 +- .../test-container-initializer/pom.xml | 2 +- .../test-spec-webapp/pom.xml | 2 +- .../test-web-fragment/pom.xml | 2 +- tests/test-webapps/test-simple-webapp/pom.xml | 2 +- .../test-webapps/test-webapp-rfc2616/pom.xml | 2 +- 131 files changed, 237 insertions(+), 196 deletions(-) diff --git a/VERSION.txt b/VERSION.txt index d8c7b720657..493d57b88a1 100644 --- a/VERSION.txt +++ b/VERSION.txt @@ -1,4 +1,45 @@ -jetty-9.4.15-SNAPSHOT +jetty-9.4.15.v20190215 - 15 February 2019 + + 113 Add support for NCSA Extended Log File Format + + 150 extraClasspath() method on WebAppContext dont support dir path + + 2646 Better handle concurrent calls to change session id and invalidate + within a context + + 2718 NPE using more than one Endpoint.publish + + 2817 Change HttpClient and WebSocketClient default to always have SSL + support enabled + + 3030 Enforce Content-Encoding check only on parameter extraction + + 3038 SSL Connection Leak + + 3049 Warn on common SslContextFactory problematic configurations + + 3133 Logging of `key.readyOps()` can throw unchecked `CancelledKeyException` + + 3139 NPE on + WebSocketServerContainerInitializer.configureContext(ServletContextHandler) + + 3146 ServletContainerInitializer from war WEB-INF/classes not executing + + 3154 Add support for javax.net.ssl.HostnameVerifier to HttpClient + + 3161 Update to Apache JSP 8.5.35 + + 3178 BufferingResponseListener does not clear buffer in onHeaders + + 3186 Jetty maven plugin - javax.annotation.jar picked up from jetty plugin + rather than from applications classpath + + 3202 jetty-maven plugin in multi-module project not using files from /target + folders of sister projects + + 3207 Async ServletOutputStream print methods + + 3210 Threadpool module creates unmanged threadpool + + 3212 Client and server need to to treat an incoming HTTP/2 RST_STREAM frame + differently + + 3234 AuthenticationProtocolHandler should not cache the failed results + + 3240 ALPN support for Java 13 + + 3241 Missing main manifest attribute in jetty-runner.jar + + 3242 Fix WebSocket components dump() + + 3278 NullPointerException if base resource is an empty ResourceCollection + + 3279 WebSocket write may hang forever + + 3302 Support host:port in X-Forwarded-For header in + ForwardedRequestCustomizer + + 3305 Avoid additional selectNow() on non-Windows runtimes + + 3307 WebAppClassLoader loadClass can throw NullPointerException for missing + class + + 3311 Ability to serve HTTP and HTTPS from the same port + + 3317 Improve uncaught exception handler double logging + + 3329 Hazelcast delete expired session fails in deserialize + + 3350 Do not expect to be able to connect to https URLs with the HttpClient + created from a parameterless constructor jetty-9.4.14.v20181114 - 14 November 2018 + 3097 Duplicated programmatic Servlet Listeners causing duplicate calls diff --git a/aggregates/jetty-all-compact3/pom.xml b/aggregates/jetty-all-compact3/pom.xml index 82a272343c5..311df459ed0 100644 --- a/aggregates/jetty-all-compact3/pom.xml +++ b/aggregates/jetty-all-compact3/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 ../../pom.xml 4.0.0 diff --git a/aggregates/jetty-all/pom.xml b/aggregates/jetty-all/pom.xml index 254bb7f9322..b5b096f041f 100644 --- a/aggregates/jetty-all/pom.xml +++ b/aggregates/jetty-all/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 ../../pom.xml 4.0.0 diff --git a/apache-jsp/pom.xml b/apache-jsp/pom.xml index fd968d6f9dc..19081e4d63e 100644 --- a/apache-jsp/pom.xml +++ b/apache-jsp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 apache-jsp diff --git a/apache-jstl/pom.xml b/apache-jstl/pom.xml index 15f587436d4..0d102f1f599 100644 --- a/apache-jstl/pom.xml +++ b/apache-jstl/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 apache-jstl diff --git a/examples/async-rest/async-rest-jar/pom.xml b/examples/async-rest/async-rest-jar/pom.xml index a9e2fe65e75..96145bfab8a 100644 --- a/examples/async-rest/async-rest-jar/pom.xml +++ b/examples/async-rest/async-rest-jar/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty example-async-rest - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/examples/async-rest/async-rest-webapp/pom.xml b/examples/async-rest/async-rest-webapp/pom.xml index 6a39081f894..e5a74596b08 100644 --- a/examples/async-rest/async-rest-webapp/pom.xml +++ b/examples/async-rest/async-rest-webapp/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty example-async-rest - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/examples/async-rest/pom.xml b/examples/async-rest/pom.xml index 77d38c38884..474fc9fb435 100644 --- a/examples/async-rest/pom.xml +++ b/examples/async-rest/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.examples examples-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/examples/embedded/pom.xml b/examples/embedded/pom.xml index cfa9a531d26..aa493f9feb6 100644 --- a/examples/embedded/pom.xml +++ b/examples/embedded/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.examples examples-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 ../pom.xml 4.0.0 diff --git a/examples/pom.xml b/examples/pom.xml index 7089e0ccdff..7c23dbfd137 100644 --- a/examples/pom.xml +++ b/examples/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-alpn/jetty-alpn-client/pom.xml b/jetty-alpn/jetty-alpn-client/pom.xml index 7b3ddccc24b..bff659ab269 100644 --- a/jetty-alpn/jetty-alpn-client/pom.xml +++ b/jetty-alpn/jetty-alpn-client/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-alpn-client diff --git a/jetty-alpn/jetty-alpn-conscrypt-client/pom.xml b/jetty-alpn/jetty-alpn-conscrypt-client/pom.xml index 5fdf11ceca5..8cbcb9e3ebc 100644 --- a/jetty-alpn/jetty-alpn-conscrypt-client/pom.xml +++ b/jetty-alpn/jetty-alpn-conscrypt-client/pom.xml @@ -6,7 +6,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-alpn/jetty-alpn-conscrypt-server/pom.xml b/jetty-alpn/jetty-alpn-conscrypt-server/pom.xml index 95f4bfb188f..6a6c62f2880 100644 --- a/jetty-alpn/jetty-alpn-conscrypt-server/pom.xml +++ b/jetty-alpn/jetty-alpn-conscrypt-server/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-alpn/jetty-alpn-java-client/pom.xml b/jetty-alpn/jetty-alpn-java-client/pom.xml index d43aa9cab22..dfa6f48cdf5 100644 --- a/jetty-alpn/jetty-alpn-java-client/pom.xml +++ b/jetty-alpn/jetty-alpn-java-client/pom.xml @@ -6,7 +6,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-alpn/jetty-alpn-java-server/pom.xml b/jetty-alpn/jetty-alpn-java-server/pom.xml index 765b7d87a8f..5e2a7a5dc9d 100644 --- a/jetty-alpn/jetty-alpn-java-server/pom.xml +++ b/jetty-alpn/jetty-alpn-java-server/pom.xml @@ -5,7 +5,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-alpn/jetty-alpn-openjdk8-client/pom.xml b/jetty-alpn/jetty-alpn-openjdk8-client/pom.xml index 4046041e7ce..efc9dac07cb 100644 --- a/jetty-alpn/jetty-alpn-openjdk8-client/pom.xml +++ b/jetty-alpn/jetty-alpn-openjdk8-client/pom.xml @@ -6,7 +6,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-alpn/jetty-alpn-openjdk8-server/pom.xml b/jetty-alpn/jetty-alpn-openjdk8-server/pom.xml index 8f92a6af9ef..cc83d6019d5 100644 --- a/jetty-alpn/jetty-alpn-openjdk8-server/pom.xml +++ b/jetty-alpn/jetty-alpn-openjdk8-server/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-alpn/jetty-alpn-server/pom.xml b/jetty-alpn/jetty-alpn-server/pom.xml index e9a0d224179..6afd57bc18e 100644 --- a/jetty-alpn/jetty-alpn-server/pom.xml +++ b/jetty-alpn/jetty-alpn-server/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-alpn-server diff --git a/jetty-alpn/pom.xml b/jetty-alpn/pom.xml index 011da0b181c..046acd909a8 100644 --- a/jetty-alpn/pom.xml +++ b/jetty-alpn/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-alpn-parent diff --git a/jetty-annotations/pom.xml b/jetty-annotations/pom.xml index 7034caba534..4b2b997306b 100644 --- a/jetty-annotations/pom.xml +++ b/jetty-annotations/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-annotations diff --git a/jetty-ant/pom.xml b/jetty-ant/pom.xml index 33884f485c3..6dfcc419a36 100644 --- a/jetty-ant/pom.xml +++ b/jetty-ant/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-ant diff --git a/jetty-bom/pom.xml b/jetty-bom/pom.xml index f95fff12893..14ea126cd38 100644 --- a/jetty-bom/pom.xml +++ b/jetty-bom/pom.xml @@ -9,7 +9,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 @@ -53,331 +53,331 @@ org.eclipse.jetty apache-jsp - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty apache-jstl - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-alpn-client - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-alpn-java-client - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-alpn-java-server - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-alpn-openjdk8-client - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-alpn-openjdk8-server - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-alpn-conscrypt-client - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-alpn-conscrypt-server - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-alpn-server - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-annotations - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-ant - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.cdi cdi-core - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.cdi cdi-servlet - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-client - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-continuation - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-deploy - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-distribution - 9.4.15-SNAPSHOT + 9.4.15.v20190215 zip org.eclipse.jetty jetty-distribution - 9.4.15-SNAPSHOT + 9.4.15.v20190215 tar.gz org.eclipse.jetty.fcgi fcgi-client - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.fcgi fcgi-server - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.gcloud jetty-gcloud-session-manager - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-home - 9.4.15-SNAPSHOT + 9.4.15.v20190215 zip org.eclipse.jetty jetty-home - 9.4.15-SNAPSHOT + 9.4.15.v20190215 tar.gz org.eclipse.jetty jetty-http - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.http2 http2-client - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.http2 http2-common - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.http2 http2-hpack - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.http2 http2-http-client-transport - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.http2 http2-server - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-http-spi - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-infinispan - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-hazelcast - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-io - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-jaas - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-jaspi - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-jmx - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-jndi - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.memcached jetty-memcached-sessions - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-nosql - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.osgi jetty-osgi-boot - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.osgi jetty-osgi-boot-jsp - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.osgi jetty-osgi-boot-warurl - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.osgi jetty-httpservice - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-plus - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-proxy - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-quickstart - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-rewrite - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-security - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-server - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-servlet - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-servlets - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-spring - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-unixsocket - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-util - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-util-ajax - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-webapp - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.websocket javax-websocket-client-impl - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.websocket javax-websocket-server-impl - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.websocket websocket-api - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.websocket websocket-client - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.websocket websocket-common - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.websocket websocket-server - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty.websocket websocket-servlet - 9.4.15-SNAPSHOT + 9.4.15.v20190215 org.eclipse.jetty jetty-xml - 9.4.15-SNAPSHOT + 9.4.15.v20190215 diff --git a/jetty-cdi/cdi-2/pom.xml b/jetty-cdi/cdi-2/pom.xml index c2e739a0010..ba836d554ca 100644 --- a/jetty-cdi/cdi-2/pom.xml +++ b/jetty-cdi/cdi-2/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.cdi jetty-cdi-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 cdi-2 diff --git a/jetty-cdi/cdi-core/pom.xml b/jetty-cdi/cdi-core/pom.xml index 38762671060..cdfc45c43cd 100644 --- a/jetty-cdi/cdi-core/pom.xml +++ b/jetty-cdi/cdi-core/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.cdi jetty-cdi-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 cdi-core diff --git a/jetty-cdi/cdi-full-servlet/pom.xml b/jetty-cdi/cdi-full-servlet/pom.xml index fdb44bf4328..1d5bbdb2ca7 100644 --- a/jetty-cdi/cdi-full-servlet/pom.xml +++ b/jetty-cdi/cdi-full-servlet/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.cdi jetty-cdi-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 cdi-full-servlet diff --git a/jetty-cdi/cdi-servlet/pom.xml b/jetty-cdi/cdi-servlet/pom.xml index 631f9ba8cbc..ff67ee7e612 100644 --- a/jetty-cdi/cdi-servlet/pom.xml +++ b/jetty-cdi/cdi-servlet/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.cdi jetty-cdi-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 cdi-servlet diff --git a/jetty-cdi/cdi-websocket/pom.xml b/jetty-cdi/cdi-websocket/pom.xml index c3d849ced04..4f0ae60e2bf 100644 --- a/jetty-cdi/cdi-websocket/pom.xml +++ b/jetty-cdi/cdi-websocket/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.cdi jetty-cdi-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 cdi-websocket diff --git a/jetty-cdi/pom.xml b/jetty-cdi/pom.xml index 2d31db60071..12193659659 100644 --- a/jetty-cdi/pom.xml +++ b/jetty-cdi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 org.eclipse.jetty.cdi diff --git a/jetty-cdi/test-cdi-webapp/pom.xml b/jetty-cdi/test-cdi-webapp/pom.xml index 5469aa34969..b3feabe2c2f 100644 --- a/jetty-cdi/test-cdi-webapp/pom.xml +++ b/jetty-cdi/test-cdi-webapp/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.cdi jetty-cdi-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 test-cdi-webapp diff --git a/jetty-client/pom.xml b/jetty-client/pom.xml index c77a98e703e..b961e852407 100644 --- a/jetty-client/pom.xml +++ b/jetty-client/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-continuation/pom.xml b/jetty-continuation/pom.xml index c3b362e2e15..660334b1e38 100644 --- a/jetty-continuation/pom.xml +++ b/jetty-continuation/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-continuation diff --git a/jetty-deploy/pom.xml b/jetty-deploy/pom.xml index c2098f806b3..fa6198698a0 100644 --- a/jetty-deploy/pom.xml +++ b/jetty-deploy/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-deploy diff --git a/jetty-distribution/pom.xml b/jetty-distribution/pom.xml index e83ad110f1f..a1e638d5f1a 100644 --- a/jetty-distribution/pom.xml +++ b/jetty-distribution/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-distribution diff --git a/jetty-documentation/pom.xml b/jetty-documentation/pom.xml index 1831363afcc..c700e2414f2 100644 --- a/jetty-documentation/pom.xml +++ b/jetty-documentation/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 jetty-documentation Jetty :: Documentation diff --git a/jetty-fcgi/fcgi-client/pom.xml b/jetty-fcgi/fcgi-client/pom.xml index f19dbc4c00d..abd3642fc02 100644 --- a/jetty-fcgi/fcgi-client/pom.xml +++ b/jetty-fcgi/fcgi-client/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.fcgi fcgi-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-fcgi/fcgi-server/pom.xml b/jetty-fcgi/fcgi-server/pom.xml index cb4821b9393..999d07b76f7 100644 --- a/jetty-fcgi/fcgi-server/pom.xml +++ b/jetty-fcgi/fcgi-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.fcgi fcgi-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-fcgi/pom.xml b/jetty-fcgi/pom.xml index 5518b95be0e..ce80545c79a 100644 --- a/jetty-fcgi/pom.xml +++ b/jetty-fcgi/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-gcloud/jetty-gcloud-session-manager/pom.xml b/jetty-gcloud/jetty-gcloud-session-manager/pom.xml index e69d5e769ee..4c640235939 100644 --- a/jetty-gcloud/jetty-gcloud-session-manager/pom.xml +++ b/jetty-gcloud/jetty-gcloud-session-manager/pom.xml @@ -5,7 +5,7 @@ org.eclipse.jetty.gcloud gcloud-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-gcloud/pom.xml b/jetty-gcloud/pom.xml index 36d6e349e86..ed1b1ccad09 100644 --- a/jetty-gcloud/pom.xml +++ b/jetty-gcloud/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-hazelcast/pom.xml b/jetty-hazelcast/pom.xml index 27b42703875..be8cbad91f0 100644 --- a/jetty-hazelcast/pom.xml +++ b/jetty-hazelcast/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-home/pom.xml b/jetty-home/pom.xml index 2baec3ce6c6..21593220585 100644 --- a/jetty-home/pom.xml +++ b/jetty-home/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-home diff --git a/jetty-http-spi/pom.xml b/jetty-http-spi/pom.xml index ebbdedb7366..702bd44e1ad 100644 --- a/jetty-http-spi/pom.xml +++ b/jetty-http-spi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-http-spi diff --git a/jetty-http/pom.xml b/jetty-http/pom.xml index 2858016c396..f5a8cc73462 100644 --- a/jetty-http/pom.xml +++ b/jetty-http/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-http diff --git a/jetty-http2/http2-alpn-tests/pom.xml b/jetty-http2/http2-alpn-tests/pom.xml index b32ac4a9461..f76433a5d8e 100644 --- a/jetty-http2/http2-alpn-tests/pom.xml +++ b/jetty-http2/http2-alpn-tests/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.http2 http2-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-http2/http2-client/pom.xml b/jetty-http2/http2-client/pom.xml index ec563b87475..86bf8e6e47f 100644 --- a/jetty-http2/http2-client/pom.xml +++ b/jetty-http2/http2-client/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.http2 http2-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-http2/http2-common/pom.xml b/jetty-http2/http2-common/pom.xml index 7724411ccb1..0608896cf88 100644 --- a/jetty-http2/http2-common/pom.xml +++ b/jetty-http2/http2-common/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.http2 http2-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-http2/http2-hpack/pom.xml b/jetty-http2/http2-hpack/pom.xml index fd576cb3e57..723e406e118 100644 --- a/jetty-http2/http2-hpack/pom.xml +++ b/jetty-http2/http2-hpack/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.http2 http2-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-http2/http2-http-client-transport/pom.xml b/jetty-http2/http2-http-client-transport/pom.xml index f1bab72140d..c0f0135358d 100644 --- a/jetty-http2/http2-http-client-transport/pom.xml +++ b/jetty-http2/http2-http-client-transport/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.http2 http2-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-http2/http2-server/pom.xml b/jetty-http2/http2-server/pom.xml index 9694022d5cd..ad32bb18e83 100644 --- a/jetty-http2/http2-server/pom.xml +++ b/jetty-http2/http2-server/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.http2 http2-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-http2/pom.xml b/jetty-http2/pom.xml index 7ddf66e6ce8..a7e6757f90b 100644 --- a/jetty-http2/pom.xml +++ b/jetty-http2/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-infinispan/pom.xml b/jetty-infinispan/pom.xml index f16371074a1..52d7ec86b87 100644 --- a/jetty-infinispan/pom.xml +++ b/jetty-infinispan/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-infinispan diff --git a/jetty-io/pom.xml b/jetty-io/pom.xml index 5b67f9e3dbc..ae009147afc 100644 --- a/jetty-io/pom.xml +++ b/jetty-io/pom.xml @@ -2,7 +2,7 @@ jetty-project org.eclipse.jetty - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-io diff --git a/jetty-jaas/pom.xml b/jetty-jaas/pom.xml index 30a9da16a34..afaf4c60c77 100644 --- a/jetty-jaas/pom.xml +++ b/jetty-jaas/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-jaas diff --git a/jetty-jaspi/pom.xml b/jetty-jaspi/pom.xml index b6616053a9d..fb444348217 100644 --- a/jetty-jaspi/pom.xml +++ b/jetty-jaspi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-jmh/pom.xml b/jetty-jmh/pom.xml index 4c9c083d63e..34a56479cb0 100644 --- a/jetty-jmh/pom.xml +++ b/jetty-jmh/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-jmx/pom.xml b/jetty-jmx/pom.xml index d3314526957..3e9f2868156 100644 --- a/jetty-jmx/pom.xml +++ b/jetty-jmx/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-jmx diff --git a/jetty-jndi/pom.xml b/jetty-jndi/pom.xml index 8a62a86eee5..aafed48cd49 100644 --- a/jetty-jndi/pom.xml +++ b/jetty-jndi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-jndi diff --git a/jetty-jspc-maven-plugin/pom.xml b/jetty-jspc-maven-plugin/pom.xml index be146fa4af9..9ce5f657cb2 100644 --- a/jetty-jspc-maven-plugin/pom.xml +++ b/jetty-jspc-maven-plugin/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-jspc-maven-plugin diff --git a/jetty-maven-plugin/pom.xml b/jetty-maven-plugin/pom.xml index 09c9de5480e..c8f527441a6 100644 --- a/jetty-maven-plugin/pom.xml +++ b/jetty-maven-plugin/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-maven-plugin diff --git a/jetty-memcached/jetty-memcached-sessions/pom.xml b/jetty-memcached/jetty-memcached-sessions/pom.xml index 5f63eb6b90d..7d60ff94a09 100644 --- a/jetty-memcached/jetty-memcached-sessions/pom.xml +++ b/jetty-memcached/jetty-memcached-sessions/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.memcached memcached-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-memcached/pom.xml b/jetty-memcached/pom.xml index 55a9f5ec50b..7454054730b 100644 --- a/jetty-memcached/pom.xml +++ b/jetty-memcached/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-nosql/pom.xml b/jetty-nosql/pom.xml index 1a476959c56..5f03165c7a7 100644 --- a/jetty-nosql/pom.xml +++ b/jetty-nosql/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-nosql diff --git a/jetty-osgi/jetty-osgi-alpn/pom.xml b/jetty-osgi/jetty-osgi-alpn/pom.xml index b68963a1111..94d80feae9b 100644 --- a/jetty-osgi/jetty-osgi-alpn/pom.xml +++ b/jetty-osgi/jetty-osgi-alpn/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-osgi-alpn diff --git a/jetty-osgi/jetty-osgi-boot-jsp/pom.xml b/jetty-osgi/jetty-osgi-boot-jsp/pom.xml index 80f0defe600..d2dca448a33 100644 --- a/jetty-osgi/jetty-osgi-boot-jsp/pom.xml +++ b/jetty-osgi/jetty-osgi-boot-jsp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-osgi-boot-jsp diff --git a/jetty-osgi/jetty-osgi-boot-warurl/pom.xml b/jetty-osgi/jetty-osgi-boot-warurl/pom.xml index 9e632b6d736..dbc8970259e 100644 --- a/jetty-osgi/jetty-osgi-boot-warurl/pom.xml +++ b/jetty-osgi/jetty-osgi-boot-warurl/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 ../pom.xml 4.0.0 diff --git a/jetty-osgi/jetty-osgi-boot/pom.xml b/jetty-osgi/jetty-osgi-boot/pom.xml index 0628aca8cab..94b331f2e20 100644 --- a/jetty-osgi/jetty-osgi-boot/pom.xml +++ b/jetty-osgi/jetty-osgi-boot/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-osgi-boot diff --git a/jetty-osgi/jetty-osgi-httpservice/pom.xml b/jetty-osgi/jetty-osgi-httpservice/pom.xml index 269d83bde45..9f142ea97d1 100644 --- a/jetty-osgi/jetty-osgi-httpservice/pom.xml +++ b/jetty-osgi/jetty-osgi-httpservice/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-httpservice diff --git a/jetty-osgi/pom.xml b/jetty-osgi/pom.xml index 517b5ac01cf..3886cdce4e4 100644 --- a/jetty-osgi/pom.xml +++ b/jetty-osgi/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-osgi/test-jetty-osgi-context/pom.xml b/jetty-osgi/test-jetty-osgi-context/pom.xml index e6cfcb2abb5..66ca396ae9a 100644 --- a/jetty-osgi/test-jetty-osgi-context/pom.xml +++ b/jetty-osgi/test-jetty-osgi-context/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 test-jetty-osgi-context diff --git a/jetty-osgi/test-jetty-osgi-fragment/pom.xml b/jetty-osgi/test-jetty-osgi-fragment/pom.xml index bd9574bf85e..3a9a85c8e6e 100644 --- a/jetty-osgi/test-jetty-osgi-fragment/pom.xml +++ b/jetty-osgi/test-jetty-osgi-fragment/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 ../pom.xml 4.0.0 diff --git a/jetty-osgi/test-jetty-osgi-server/pom.xml b/jetty-osgi/test-jetty-osgi-server/pom.xml index 53c0a524388..4fa0f27d84f 100644 --- a/jetty-osgi/test-jetty-osgi-server/pom.xml +++ b/jetty-osgi/test-jetty-osgi-server/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 test-jetty-osgi-server diff --git a/jetty-osgi/test-jetty-osgi-webapp/pom.xml b/jetty-osgi/test-jetty-osgi-webapp/pom.xml index fa18b7c52de..6e8df2327f7 100644 --- a/jetty-osgi/test-jetty-osgi-webapp/pom.xml +++ b/jetty-osgi/test-jetty-osgi-webapp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 ../pom.xml 4.0.0 diff --git a/jetty-osgi/test-jetty-osgi/pom.xml b/jetty-osgi/test-jetty-osgi/pom.xml index f599bfc5945..207e0187bee 100644 --- a/jetty-osgi/test-jetty-osgi/pom.xml +++ b/jetty-osgi/test-jetty-osgi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 ../pom.xml 4.0.0 diff --git a/jetty-plus/pom.xml b/jetty-plus/pom.xml index 3dda7b86298..b69cc13e5d9 100644 --- a/jetty-plus/pom.xml +++ b/jetty-plus/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-plus diff --git a/jetty-proxy/pom.xml b/jetty-proxy/pom.xml index 7c5dfe9ab30..02c5eb1916d 100644 --- a/jetty-proxy/pom.xml +++ b/jetty-proxy/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-proxy diff --git a/jetty-quickstart/pom.xml b/jetty-quickstart/pom.xml index cf5b2bc42b3..482518e605e 100644 --- a/jetty-quickstart/pom.xml +++ b/jetty-quickstart/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 org.eclipse.jetty diff --git a/jetty-rewrite/pom.xml b/jetty-rewrite/pom.xml index 12985a4a45c..87184d7823f 100644 --- a/jetty-rewrite/pom.xml +++ b/jetty-rewrite/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-rewrite diff --git a/jetty-runner/pom.xml b/jetty-runner/pom.xml index 1238a0043b7..690ee51cf1e 100644 --- a/jetty-runner/pom.xml +++ b/jetty-runner/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-runner diff --git a/jetty-security/pom.xml b/jetty-security/pom.xml index 7642e751f38..c1105f96f64 100644 --- a/jetty-security/pom.xml +++ b/jetty-security/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-security diff --git a/jetty-server/pom.xml b/jetty-server/pom.xml index 7ce3b1cae13..f66d6c64c3e 100644 --- a/jetty-server/pom.xml +++ b/jetty-server/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-server diff --git a/jetty-servlet/pom.xml b/jetty-servlet/pom.xml index 90b20903779..a642933e260 100644 --- a/jetty-servlet/pom.xml +++ b/jetty-servlet/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-servlet diff --git a/jetty-servlets/pom.xml b/jetty-servlets/pom.xml index 5898c44f260..9a22e863d8d 100644 --- a/jetty-servlets/pom.xml +++ b/jetty-servlets/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-servlets diff --git a/jetty-spring/pom.xml b/jetty-spring/pom.xml index 6b5cb30aaf1..2dc6a5cb59b 100644 --- a/jetty-spring/pom.xml +++ b/jetty-spring/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-spring diff --git a/jetty-start/pom.xml b/jetty-start/pom.xml index f58e58deea2..10ffae8abf2 100644 --- a/jetty-start/pom.xml +++ b/jetty-start/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-start diff --git a/jetty-unixsocket/pom.xml b/jetty-unixsocket/pom.xml index ed2dbd51a7e..d93d60fe66e 100644 --- a/jetty-unixsocket/pom.xml +++ b/jetty-unixsocket/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-unixsocket diff --git a/jetty-util-ajax/pom.xml b/jetty-util-ajax/pom.xml index a5c20410304..be9a2ae1384 100644 --- a/jetty-util-ajax/pom.xml +++ b/jetty-util-ajax/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-util-ajax diff --git a/jetty-util/pom.xml b/jetty-util/pom.xml index b777fe549e7..8ab212cae46 100644 --- a/jetty-util/pom.xml +++ b/jetty-util/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-util diff --git a/jetty-webapp/pom.xml b/jetty-webapp/pom.xml index ccdc76de42f..dbfac4fce0f 100644 --- a/jetty-webapp/pom.xml +++ b/jetty-webapp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-webapp diff --git a/jetty-websocket/javax-websocket-client-impl/pom.xml b/jetty-websocket/javax-websocket-client-impl/pom.xml index b52ed7451c9..185e35d4fee 100644 --- a/jetty-websocket/javax-websocket-client-impl/pom.xml +++ b/jetty-websocket/javax-websocket-client-impl/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-websocket/javax-websocket-server-impl/pom.xml b/jetty-websocket/javax-websocket-server-impl/pom.xml index a6dc97a324a..60dd9786f8a 100644 --- a/jetty-websocket/javax-websocket-server-impl/pom.xml +++ b/jetty-websocket/javax-websocket-server-impl/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-websocket/jetty-websocket-tests/pom.xml b/jetty-websocket/jetty-websocket-tests/pom.xml index 174caa76e2c..306fadc6274 100644 --- a/jetty-websocket/jetty-websocket-tests/pom.xml +++ b/jetty-websocket/jetty-websocket-tests/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-websocket/pom.xml b/jetty-websocket/pom.xml index 8b53adf496e..a3d4f118ac2 100644 --- a/jetty-websocket/pom.xml +++ b/jetty-websocket/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-websocket/websocket-api/pom.xml b/jetty-websocket/websocket-api/pom.xml index 0188b065c81..7b9c3e95ae5 100644 --- a/jetty-websocket/websocket-api/pom.xml +++ b/jetty-websocket/websocket-api/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-websocket/websocket-client/pom.xml b/jetty-websocket/websocket-client/pom.xml index 9a504bb6c8a..3fda0488f8c 100644 --- a/jetty-websocket/websocket-client/pom.xml +++ b/jetty-websocket/websocket-client/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-websocket/websocket-common/pom.xml b/jetty-websocket/websocket-common/pom.xml index 5a432ed0a92..48ad85a8c6f 100644 --- a/jetty-websocket/websocket-common/pom.xml +++ b/jetty-websocket/websocket-common/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-websocket/websocket-server/pom.xml b/jetty-websocket/websocket-server/pom.xml index 01287a49aa9..ab4e01d1701 100644 --- a/jetty-websocket/websocket-server/pom.xml +++ b/jetty-websocket/websocket-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-websocket/websocket-servlet/pom.xml b/jetty-websocket/websocket-servlet/pom.xml index 9e09f063a70..4e445aaf529 100644 --- a/jetty-websocket/websocket-servlet/pom.xml +++ b/jetty-websocket/websocket-servlet/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/jetty-xml/pom.xml b/jetty-xml/pom.xml index f808e813154..de317dfe8a7 100644 --- a/jetty-xml/pom.xml +++ b/jetty-xml/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jetty-xml diff --git a/pom.xml b/pom.xml index 7f9868c0f78..539d5737564 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ 4.0.0 org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 Jetty :: Project The Eclipse Jetty Project pom diff --git a/tests/pom.xml b/tests/pom.xml index 4078a8dce7d..fd9cf1d1594 100644 --- a/tests/pom.xml +++ b/tests/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty jetty-project - 9.4.15-SNAPSHOT + 9.4.15.v20190215 ../pom.xml org.eclipse.jetty.tests diff --git a/tests/test-continuation/pom.xml b/tests/test-continuation/pom.xml index 7df37420618..24d69b47510 100644 --- a/tests/test-continuation/pom.xml +++ b/tests/test-continuation/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests tests-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 ../pom.xml 4.0.0 diff --git a/tests/test-distribution/pom.xml b/tests/test-distribution/pom.xml index 84002f6b15c..6f72c7ed29d 100644 --- a/tests/test-distribution/pom.xml +++ b/tests/test-distribution/pom.xml @@ -3,7 +3,7 @@ tests-parent org.eclipse.jetty.tests - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/tests/test-http-client-transport/pom.xml b/tests/test-http-client-transport/pom.xml index 2be055de497..1989174c3a9 100644 --- a/tests/test-http-client-transport/pom.xml +++ b/tests/test-http-client-transport/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests tests-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/tests/test-integration/pom.xml b/tests/test-integration/pom.xml index 3de80a1162b..afb84c81271 100644 --- a/tests/test-integration/pom.xml +++ b/tests/test-integration/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests tests-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 test-integration diff --git a/tests/test-jmx/jmx-webapp-it/pom.xml b/tests/test-jmx/jmx-webapp-it/pom.xml index 6b9438a6bda..83cc5e441a2 100644 --- a/tests/test-jmx/jmx-webapp-it/pom.xml +++ b/tests/test-jmx/jmx-webapp-it/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-jmx-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 jmx-webapp-it diff --git a/tests/test-jmx/jmx-webapp/pom.xml b/tests/test-jmx/jmx-webapp/pom.xml index c9fb1005361..70f351e26fc 100644 --- a/tests/test-jmx/jmx-webapp/pom.xml +++ b/tests/test-jmx/jmx-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-jmx-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 jmx-webapp war diff --git a/tests/test-jmx/pom.xml b/tests/test-jmx/pom.xml index 652e0c01e73..c25c46e37f4 100644 --- a/tests/test-jmx/pom.xml +++ b/tests/test-jmx/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests tests-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 test-jmx-parent diff --git a/tests/test-loginservice/pom.xml b/tests/test-loginservice/pom.xml index df1804aed67..11c18bc73d0 100644 --- a/tests/test-loginservice/pom.xml +++ b/tests/test-loginservice/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests tests-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 test-loginservice Jetty Tests :: Login Service diff --git a/tests/test-quickstart/pom.xml b/tests/test-quickstart/pom.xml index f9d3a797ad6..f37dcdac178 100644 --- a/tests/test-quickstart/pom.xml +++ b/tests/test-quickstart/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests tests-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 ../pom.xml 4.0.0 diff --git a/tests/test-sessions/pom.xml b/tests/test-sessions/pom.xml index 83dd2267ea5..bf5a4e408b1 100644 --- a/tests/test-sessions/pom.xml +++ b/tests/test-sessions/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests tests-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 test-sessions-parent Jetty Tests :: Sessions :: Parent diff --git a/tests/test-sessions/test-file-sessions/pom.xml b/tests/test-sessions/test-file-sessions/pom.xml index 0d768b754f0..729c93f1f98 100644 --- a/tests/test-sessions/test-file-sessions/pom.xml +++ b/tests/test-sessions/test-file-sessions/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 test-file-sessions Jetty Tests :: Sessions :: File diff --git a/tests/test-sessions/test-gcloud-sessions/pom.xml b/tests/test-sessions/test-gcloud-sessions/pom.xml index 23e264c39b3..314d52eab21 100644 --- a/tests/test-sessions/test-gcloud-sessions/pom.xml +++ b/tests/test-sessions/test-gcloud-sessions/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 test-gcloud-sessions Jetty Tests :: Sessions :: GCloud diff --git a/tests/test-sessions/test-hazelcast-sessions/pom.xml b/tests/test-sessions/test-hazelcast-sessions/pom.xml index 880b0e25abf..8ce57ed6b05 100644 --- a/tests/test-sessions/test-hazelcast-sessions/pom.xml +++ b/tests/test-sessions/test-hazelcast-sessions/pom.xml @@ -5,7 +5,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 test-hazelcast-sessions Jetty Tests :: Sessions :: Hazelcast diff --git a/tests/test-sessions/test-infinispan-sessions/pom.xml b/tests/test-sessions/test-infinispan-sessions/pom.xml index 53c4cd7988b..023bc11124c 100644 --- a/tests/test-sessions/test-infinispan-sessions/pom.xml +++ b/tests/test-sessions/test-infinispan-sessions/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 test-infinispan-sessions Jetty Tests :: Sessions :: Infinispan diff --git a/tests/test-sessions/test-jdbc-sessions/pom.xml b/tests/test-sessions/test-jdbc-sessions/pom.xml index fd4b4835fa7..4611f1cc256 100644 --- a/tests/test-sessions/test-jdbc-sessions/pom.xml +++ b/tests/test-sessions/test-jdbc-sessions/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 test-jdbc-sessions Jetty Tests :: Sessions :: JDBC diff --git a/tests/test-sessions/test-memcached-sessions/pom.xml b/tests/test-sessions/test-memcached-sessions/pom.xml index 8b427c28d28..90fe175725f 100644 --- a/tests/test-sessions/test-memcached-sessions/pom.xml +++ b/tests/test-sessions/test-memcached-sessions/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 test-memcached-sessions Jetty Tests :: Sessions :: Memcached diff --git a/tests/test-sessions/test-mongodb-sessions/pom.xml b/tests/test-sessions/test-mongodb-sessions/pom.xml index 8f037110d4a..a173e664b1e 100644 --- a/tests/test-sessions/test-mongodb-sessions/pom.xml +++ b/tests/test-sessions/test-mongodb-sessions/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 test-mongodb-sessions Jetty Tests :: Sessions :: Mongo diff --git a/tests/test-sessions/test-sessions-common/pom.xml b/tests/test-sessions/test-sessions-common/pom.xml index 2cfe9547ba6..9889db5b307 100644 --- a/tests/test-sessions/test-sessions-common/pom.xml +++ b/tests/test-sessions/test-sessions-common/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 test-sessions-common Jetty Tests :: Sessions :: Common diff --git a/tests/test-webapps/pom.xml b/tests/test-webapps/pom.xml index e4d1e2219d3..5ba193203f7 100644 --- a/tests/test-webapps/pom.xml +++ b/tests/test-webapps/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests tests-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 ../pom.xml test-webapps-parent diff --git a/tests/test-webapps/test-http2-webapp/pom.xml b/tests/test-webapps/test-http2-webapp/pom.xml index a9b14074339..84629043f3b 100644 --- a/tests/test-webapps/test-http2-webapp/pom.xml +++ b/tests/test-webapps/test-http2-webapp/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 4.0.0 diff --git a/tests/test-webapps/test-jaas-webapp/pom.xml b/tests/test-webapps/test-jaas-webapp/pom.xml index 330108c0a2a..e564ea6d666 100644 --- a/tests/test-webapps/test-jaas-webapp/pom.xml +++ b/tests/test-webapps/test-jaas-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 test-jaas-webapp Jetty Tests :: WebApp :: JAAS diff --git a/tests/test-webapps/test-jetty-webapp/pom.xml b/tests/test-webapps/test-jetty-webapp/pom.xml index 8f53723c57d..9658ce49784 100644 --- a/tests/test-webapps/test-jetty-webapp/pom.xml +++ b/tests/test-webapps/test-jetty-webapp/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 ../pom.xml 4.0.0 diff --git a/tests/test-webapps/test-jndi-webapp/pom.xml b/tests/test-webapps/test-jndi-webapp/pom.xml index 1a814db95da..784cd89e9ef 100644 --- a/tests/test-webapps/test-jndi-webapp/pom.xml +++ b/tests/test-webapps/test-jndi-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 test-jndi-webapp Jetty Tests :: WebApp :: JNDI diff --git a/tests/test-webapps/test-mock-resources/pom.xml b/tests/test-webapps/test-mock-resources/pom.xml index c325260a6d1..da51f655eb0 100644 --- a/tests/test-webapps/test-mock-resources/pom.xml +++ b/tests/test-webapps/test-mock-resources/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 Jetty Tests :: WebApp :: Mock Resources test-mock-resources diff --git a/tests/test-webapps/test-proxy-webapp/pom.xml b/tests/test-webapps/test-proxy-webapp/pom.xml index 7e2a82b5eb7..ae1478583f3 100644 --- a/tests/test-webapps/test-proxy-webapp/pom.xml +++ b/tests/test-webapps/test-proxy-webapp/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 ../pom.xml 4.0.0 diff --git a/tests/test-webapps/test-servlet-spec/pom.xml b/tests/test-webapps/test-servlet-spec/pom.xml index 3b85e84956e..ba7911677a6 100644 --- a/tests/test-webapps/test-servlet-spec/pom.xml +++ b/tests/test-webapps/test-servlet-spec/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 test-servlet-spec-parent Jetty Tests :: Spec Test WebApp :: Parent diff --git a/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml b/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml index 8facfb7bb43..ed8d1eb5997 100644 --- a/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml +++ b/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-servlet-spec-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 test-container-initializer jar diff --git a/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml b/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml index 54220c9d6c1..2a0362dc2af 100644 --- a/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml +++ b/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-servlet-spec-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 Jetty Tests :: Webapps :: Spec Webapp test-spec-webapp diff --git a/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml b/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml index 025e63641fd..857005a4946 100644 --- a/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml +++ b/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-servlet-spec-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 Jetty Tests :: WebApp :: Servlet Spec :: Fragment Jar diff --git a/tests/test-webapps/test-simple-webapp/pom.xml b/tests/test-webapps/test-simple-webapp/pom.xml index 846a05cf2d0..5f6a2eff3cf 100644 --- a/tests/test-webapps/test-simple-webapp/pom.xml +++ b/tests/test-webapps/test-simple-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 test-simple-webapp diff --git a/tests/test-webapps/test-webapp-rfc2616/pom.xml b/tests/test-webapps/test-webapp-rfc2616/pom.xml index 90756ce9c20..5e827c8751c 100644 --- a/tests/test-webapps/test-webapp-rfc2616/pom.xml +++ b/tests/test-webapps/test-webapp-rfc2616/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.4.15-SNAPSHOT + 9.4.15.v20190215 test-webapp-rfc2616 Jetty Tests :: WebApp :: RFC2616 From 2e67a26dd88091536695a4bc6797d32764fa533b Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Fri, 15 Feb 2019 17:33:29 +0100 Subject: [PATCH 309/931] Issue #3343 - Add an API/tools to be able to test Jetty Distribution. Fixed concurrency issue while reading the console logs. Signed-off-by: Simone Bordet --- .../eclipse/jetty/tests/distribution/DistributionTester.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java b/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java index 79a0d206210..0661ca6f7db 100644 --- a/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java +++ b/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java @@ -35,6 +35,8 @@ import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Queue; +import java.util.concurrent.ConcurrentLinkedQueue; import java.util.concurrent.TimeUnit; import java.util.zip.ZipEntry; import java.util.zip.ZipInputStream; @@ -376,7 +378,7 @@ public class DistributionTester { private final Process process; private final List consoleStreamers = new ArrayList<>(); - private final List logs = new ArrayList<>(); + private final Queue logs = new ConcurrentLinkedQueue<>(); private Run(Process process) { From 9cdb59d4d79888844db93b9b5f28c38efc8842f6 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Fri, 15 Feb 2019 13:35:15 -0500 Subject: [PATCH 310/931] Updating to version 9.4.16-SNAPSHOT --- VERSION.txt | 2 + aggregates/jetty-all-compact3/pom.xml | 2 +- aggregates/jetty-all/pom.xml | 2 +- apache-jsp/pom.xml | 2 +- apache-jstl/pom.xml | 2 +- examples/async-rest/async-rest-jar/pom.xml | 2 +- examples/async-rest/async-rest-webapp/pom.xml | 2 +- examples/async-rest/pom.xml | 2 +- examples/embedded/pom.xml | 2 +- examples/pom.xml | 2 +- jetty-alpn/jetty-alpn-client/pom.xml | 2 +- .../jetty-alpn-conscrypt-client/pom.xml | 2 +- .../jetty-alpn-conscrypt-server/pom.xml | 2 +- jetty-alpn/jetty-alpn-java-client/pom.xml | 2 +- jetty-alpn/jetty-alpn-java-server/pom.xml | 2 +- jetty-alpn/jetty-alpn-openjdk8-client/pom.xml | 2 +- jetty-alpn/jetty-alpn-openjdk8-server/pom.xml | 2 +- jetty-alpn/jetty-alpn-server/pom.xml | 2 +- jetty-alpn/pom.xml | 2 +- jetty-annotations/pom.xml | 2 +- jetty-ant/pom.xml | 2 +- jetty-bom/pom.xml | 132 +++++++++--------- jetty-cdi/cdi-2/pom.xml | 2 +- jetty-cdi/cdi-core/pom.xml | 2 +- jetty-cdi/cdi-full-servlet/pom.xml | 2 +- jetty-cdi/cdi-servlet/pom.xml | 2 +- jetty-cdi/cdi-websocket/pom.xml | 2 +- jetty-cdi/pom.xml | 2 +- jetty-cdi/test-cdi-webapp/pom.xml | 2 +- jetty-client/pom.xml | 2 +- jetty-continuation/pom.xml | 2 +- jetty-deploy/pom.xml | 2 +- jetty-distribution/pom.xml | 2 +- jetty-documentation/pom.xml | 2 +- jetty-fcgi/fcgi-client/pom.xml | 2 +- jetty-fcgi/fcgi-server/pom.xml | 2 +- jetty-fcgi/pom.xml | 2 +- .../jetty-gcloud-session-manager/pom.xml | 2 +- jetty-gcloud/pom.xml | 2 +- jetty-hazelcast/pom.xml | 2 +- jetty-home/pom.xml | 2 +- jetty-http-spi/pom.xml | 2 +- jetty-http/pom.xml | 2 +- jetty-http2/http2-alpn-tests/pom.xml | 2 +- jetty-http2/http2-client/pom.xml | 2 +- jetty-http2/http2-common/pom.xml | 2 +- jetty-http2/http2-hpack/pom.xml | 2 +- .../http2-http-client-transport/pom.xml | 2 +- jetty-http2/http2-server/pom.xml | 2 +- jetty-http2/pom.xml | 2 +- jetty-infinispan/pom.xml | 2 +- jetty-io/pom.xml | 2 +- jetty-jaas/pom.xml | 2 +- jetty-jaspi/pom.xml | 2 +- jetty-jmh/pom.xml | 2 +- jetty-jmx/pom.xml | 2 +- jetty-jndi/pom.xml | 2 +- jetty-jspc-maven-plugin/pom.xml | 2 +- jetty-maven-plugin/pom.xml | 2 +- .../jetty-memcached-sessions/pom.xml | 2 +- jetty-memcached/pom.xml | 2 +- jetty-nosql/pom.xml | 2 +- jetty-osgi/jetty-osgi-alpn/pom.xml | 2 +- jetty-osgi/jetty-osgi-boot-jsp/pom.xml | 2 +- jetty-osgi/jetty-osgi-boot-warurl/pom.xml | 2 +- jetty-osgi/jetty-osgi-boot/pom.xml | 2 +- jetty-osgi/jetty-osgi-httpservice/pom.xml | 2 +- jetty-osgi/pom.xml | 2 +- jetty-osgi/test-jetty-osgi-context/pom.xml | 2 +- jetty-osgi/test-jetty-osgi-fragment/pom.xml | 2 +- jetty-osgi/test-jetty-osgi-server/pom.xml | 2 +- jetty-osgi/test-jetty-osgi-webapp/pom.xml | 2 +- jetty-osgi/test-jetty-osgi/pom.xml | 2 +- jetty-plus/pom.xml | 2 +- jetty-proxy/pom.xml | 2 +- jetty-quickstart/pom.xml | 2 +- jetty-rewrite/pom.xml | 2 +- jetty-runner/pom.xml | 2 +- jetty-security/pom.xml | 2 +- jetty-server/pom.xml | 2 +- jetty-servlet/pom.xml | 2 +- jetty-servlets/pom.xml | 2 +- jetty-spring/pom.xml | 2 +- jetty-start/pom.xml | 2 +- jetty-unixsocket/pom.xml | 2 +- jetty-util-ajax/pom.xml | 2 +- jetty-util/pom.xml | 2 +- jetty-webapp/pom.xml | 2 +- .../javax-websocket-client-impl/pom.xml | 2 +- .../javax-websocket-server-impl/pom.xml | 2 +- jetty-websocket/jetty-websocket-tests/pom.xml | 2 +- jetty-websocket/pom.xml | 2 +- jetty-websocket/websocket-api/pom.xml | 2 +- jetty-websocket/websocket-client/pom.xml | 2 +- jetty-websocket/websocket-common/pom.xml | 2 +- jetty-websocket/websocket-server/pom.xml | 2 +- jetty-websocket/websocket-servlet/pom.xml | 2 +- jetty-xml/pom.xml | 2 +- pom.xml | 2 +- tests/pom.xml | 2 +- tests/test-continuation/pom.xml | 2 +- tests/test-distribution/pom.xml | 2 +- tests/test-http-client-transport/pom.xml | 2 +- tests/test-integration/pom.xml | 2 +- tests/test-jmx/jmx-webapp-it/pom.xml | 2 +- tests/test-jmx/jmx-webapp/pom.xml | 2 +- tests/test-jmx/pom.xml | 2 +- tests/test-loginservice/pom.xml | 2 +- tests/test-quickstart/pom.xml | 2 +- tests/test-sessions/pom.xml | 2 +- .../test-sessions/test-file-sessions/pom.xml | 2 +- .../test-gcloud-sessions/pom.xml | 2 +- .../test-hazelcast-sessions/pom.xml | 2 +- .../test-infinispan-sessions/pom.xml | 2 +- .../test-sessions/test-jdbc-sessions/pom.xml | 2 +- .../test-memcached-sessions/pom.xml | 2 +- .../test-mongodb-sessions/pom.xml | 2 +- .../test-sessions-common/pom.xml | 2 +- tests/test-webapps/pom.xml | 2 +- tests/test-webapps/test-http2-webapp/pom.xml | 2 +- tests/test-webapps/test-jaas-webapp/pom.xml | 2 +- tests/test-webapps/test-jetty-webapp/pom.xml | 2 +- tests/test-webapps/test-jndi-webapp/pom.xml | 2 +- .../test-webapps/test-mock-resources/pom.xml | 2 +- tests/test-webapps/test-proxy-webapp/pom.xml | 2 +- tests/test-webapps/test-servlet-spec/pom.xml | 2 +- .../test-container-initializer/pom.xml | 2 +- .../test-spec-webapp/pom.xml | 2 +- .../test-web-fragment/pom.xml | 2 +- tests/test-webapps/test-simple-webapp/pom.xml | 2 +- .../test-webapps/test-webapp-rfc2616/pom.xml | 2 +- 131 files changed, 197 insertions(+), 195 deletions(-) diff --git a/VERSION.txt b/VERSION.txt index 493d57b88a1..56fcd697087 100644 --- a/VERSION.txt +++ b/VERSION.txt @@ -1,3 +1,5 @@ +jetty-9.4.16-SNAPSHOT + jetty-9.4.15.v20190215 - 15 February 2019 + 113 Add support for NCSA Extended Log File Format + 150 extraClasspath() method on WebAppContext dont support dir path diff --git a/aggregates/jetty-all-compact3/pom.xml b/aggregates/jetty-all-compact3/pom.xml index 311df459ed0..8747711cc74 100644 --- a/aggregates/jetty-all-compact3/pom.xml +++ b/aggregates/jetty-all-compact3/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT ../../pom.xml 4.0.0 diff --git a/aggregates/jetty-all/pom.xml b/aggregates/jetty-all/pom.xml index b5b096f041f..680d6668595 100644 --- a/aggregates/jetty-all/pom.xml +++ b/aggregates/jetty-all/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT ../../pom.xml 4.0.0 diff --git a/apache-jsp/pom.xml b/apache-jsp/pom.xml index 19081e4d63e..5f39a28552d 100644 --- a/apache-jsp/pom.xml +++ b/apache-jsp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 apache-jsp diff --git a/apache-jstl/pom.xml b/apache-jstl/pom.xml index 0d102f1f599..401c254fa75 100644 --- a/apache-jstl/pom.xml +++ b/apache-jstl/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 apache-jstl diff --git a/examples/async-rest/async-rest-jar/pom.xml b/examples/async-rest/async-rest-jar/pom.xml index 96145bfab8a..999512575b0 100644 --- a/examples/async-rest/async-rest-jar/pom.xml +++ b/examples/async-rest/async-rest-jar/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty example-async-rest - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/examples/async-rest/async-rest-webapp/pom.xml b/examples/async-rest/async-rest-webapp/pom.xml index e5a74596b08..b72340dd3bf 100644 --- a/examples/async-rest/async-rest-webapp/pom.xml +++ b/examples/async-rest/async-rest-webapp/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty example-async-rest - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/examples/async-rest/pom.xml b/examples/async-rest/pom.xml index 474fc9fb435..6fadef2f473 100644 --- a/examples/async-rest/pom.xml +++ b/examples/async-rest/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.examples examples-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/examples/embedded/pom.xml b/examples/embedded/pom.xml index aa493f9feb6..800195a46c8 100644 --- a/examples/embedded/pom.xml +++ b/examples/embedded/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.examples examples-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT ../pom.xml 4.0.0 diff --git a/examples/pom.xml b/examples/pom.xml index 7c23dbfd137..1f62151ae03 100644 --- a/examples/pom.xml +++ b/examples/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-alpn/jetty-alpn-client/pom.xml b/jetty-alpn/jetty-alpn-client/pom.xml index bff659ab269..cf859815dba 100644 --- a/jetty-alpn/jetty-alpn-client/pom.xml +++ b/jetty-alpn/jetty-alpn-client/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-alpn-client diff --git a/jetty-alpn/jetty-alpn-conscrypt-client/pom.xml b/jetty-alpn/jetty-alpn-conscrypt-client/pom.xml index 8cbcb9e3ebc..bdfa82c42f6 100644 --- a/jetty-alpn/jetty-alpn-conscrypt-client/pom.xml +++ b/jetty-alpn/jetty-alpn-conscrypt-client/pom.xml @@ -6,7 +6,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-alpn/jetty-alpn-conscrypt-server/pom.xml b/jetty-alpn/jetty-alpn-conscrypt-server/pom.xml index 6a6c62f2880..a584b4d5b95 100644 --- a/jetty-alpn/jetty-alpn-conscrypt-server/pom.xml +++ b/jetty-alpn/jetty-alpn-conscrypt-server/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-alpn/jetty-alpn-java-client/pom.xml b/jetty-alpn/jetty-alpn-java-client/pom.xml index dfa6f48cdf5..ba575fea420 100644 --- a/jetty-alpn/jetty-alpn-java-client/pom.xml +++ b/jetty-alpn/jetty-alpn-java-client/pom.xml @@ -6,7 +6,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-alpn/jetty-alpn-java-server/pom.xml b/jetty-alpn/jetty-alpn-java-server/pom.xml index 5e2a7a5dc9d..629e4cc2b80 100644 --- a/jetty-alpn/jetty-alpn-java-server/pom.xml +++ b/jetty-alpn/jetty-alpn-java-server/pom.xml @@ -5,7 +5,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-alpn/jetty-alpn-openjdk8-client/pom.xml b/jetty-alpn/jetty-alpn-openjdk8-client/pom.xml index efc9dac07cb..92d963bfffb 100644 --- a/jetty-alpn/jetty-alpn-openjdk8-client/pom.xml +++ b/jetty-alpn/jetty-alpn-openjdk8-client/pom.xml @@ -6,7 +6,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-alpn/jetty-alpn-openjdk8-server/pom.xml b/jetty-alpn/jetty-alpn-openjdk8-server/pom.xml index cc83d6019d5..42041be442c 100644 --- a/jetty-alpn/jetty-alpn-openjdk8-server/pom.xml +++ b/jetty-alpn/jetty-alpn-openjdk8-server/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-alpn/jetty-alpn-server/pom.xml b/jetty-alpn/jetty-alpn-server/pom.xml index 6afd57bc18e..848d04a2f7a 100644 --- a/jetty-alpn/jetty-alpn-server/pom.xml +++ b/jetty-alpn/jetty-alpn-server/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-alpn-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-alpn-server diff --git a/jetty-alpn/pom.xml b/jetty-alpn/pom.xml index 046acd909a8..7521d9d9796 100644 --- a/jetty-alpn/pom.xml +++ b/jetty-alpn/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-alpn-parent diff --git a/jetty-annotations/pom.xml b/jetty-annotations/pom.xml index 4b2b997306b..2e3745e51cf 100644 --- a/jetty-annotations/pom.xml +++ b/jetty-annotations/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-annotations diff --git a/jetty-ant/pom.xml b/jetty-ant/pom.xml index 6dfcc419a36..febd5cf16f7 100644 --- a/jetty-ant/pom.xml +++ b/jetty-ant/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-ant diff --git a/jetty-bom/pom.xml b/jetty-bom/pom.xml index 14ea126cd38..dd0a24f352b 100644 --- a/jetty-bom/pom.xml +++ b/jetty-bom/pom.xml @@ -9,7 +9,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT @@ -53,331 +53,331 @@ org.eclipse.jetty apache-jsp - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty apache-jstl - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-alpn-client - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-alpn-java-client - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-alpn-java-server - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-alpn-openjdk8-client - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-alpn-openjdk8-server - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-alpn-conscrypt-client - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-alpn-conscrypt-server - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-alpn-server - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-annotations - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-ant - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.cdi cdi-core - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.cdi cdi-servlet - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-client - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-continuation - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-deploy - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-distribution - 9.4.15.v20190215 + 9.4.16-SNAPSHOT zip org.eclipse.jetty jetty-distribution - 9.4.15.v20190215 + 9.4.16-SNAPSHOT tar.gz org.eclipse.jetty.fcgi fcgi-client - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.fcgi fcgi-server - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.gcloud jetty-gcloud-session-manager - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-home - 9.4.15.v20190215 + 9.4.16-SNAPSHOT zip org.eclipse.jetty jetty-home - 9.4.15.v20190215 + 9.4.16-SNAPSHOT tar.gz org.eclipse.jetty jetty-http - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.http2 http2-client - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.http2 http2-common - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.http2 http2-hpack - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.http2 http2-http-client-transport - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.http2 http2-server - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-http-spi - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-infinispan - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-hazelcast - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-io - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-jaas - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-jaspi - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-jmx - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-jndi - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.memcached jetty-memcached-sessions - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-nosql - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.osgi jetty-osgi-boot - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.osgi jetty-osgi-boot-jsp - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.osgi jetty-osgi-boot-warurl - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.osgi jetty-httpservice - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-plus - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-proxy - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-quickstart - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-rewrite - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-security - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-server - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-servlet - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-servlets - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-spring - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-unixsocket - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-util - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-util-ajax - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-webapp - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.websocket javax-websocket-client-impl - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.websocket javax-websocket-server-impl - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.websocket websocket-api - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.websocket websocket-client - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.websocket websocket-common - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.websocket websocket-server - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty.websocket websocket-servlet - 9.4.15.v20190215 + 9.4.16-SNAPSHOT org.eclipse.jetty jetty-xml - 9.4.15.v20190215 + 9.4.16-SNAPSHOT diff --git a/jetty-cdi/cdi-2/pom.xml b/jetty-cdi/cdi-2/pom.xml index ba836d554ca..5e98583e691 100644 --- a/jetty-cdi/cdi-2/pom.xml +++ b/jetty-cdi/cdi-2/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.cdi jetty-cdi-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 cdi-2 diff --git a/jetty-cdi/cdi-core/pom.xml b/jetty-cdi/cdi-core/pom.xml index cdfc45c43cd..3dd769882bc 100644 --- a/jetty-cdi/cdi-core/pom.xml +++ b/jetty-cdi/cdi-core/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.cdi jetty-cdi-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 cdi-core diff --git a/jetty-cdi/cdi-full-servlet/pom.xml b/jetty-cdi/cdi-full-servlet/pom.xml index 1d5bbdb2ca7..b78770ea727 100644 --- a/jetty-cdi/cdi-full-servlet/pom.xml +++ b/jetty-cdi/cdi-full-servlet/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.cdi jetty-cdi-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 cdi-full-servlet diff --git a/jetty-cdi/cdi-servlet/pom.xml b/jetty-cdi/cdi-servlet/pom.xml index ff67ee7e612..7919caee981 100644 --- a/jetty-cdi/cdi-servlet/pom.xml +++ b/jetty-cdi/cdi-servlet/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.cdi jetty-cdi-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 cdi-servlet diff --git a/jetty-cdi/cdi-websocket/pom.xml b/jetty-cdi/cdi-websocket/pom.xml index 4f0ae60e2bf..cfb36dfe562 100644 --- a/jetty-cdi/cdi-websocket/pom.xml +++ b/jetty-cdi/cdi-websocket/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.cdi jetty-cdi-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 cdi-websocket diff --git a/jetty-cdi/pom.xml b/jetty-cdi/pom.xml index 12193659659..f13c5bc8441 100644 --- a/jetty-cdi/pom.xml +++ b/jetty-cdi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 org.eclipse.jetty.cdi diff --git a/jetty-cdi/test-cdi-webapp/pom.xml b/jetty-cdi/test-cdi-webapp/pom.xml index b3feabe2c2f..601871ec80b 100644 --- a/jetty-cdi/test-cdi-webapp/pom.xml +++ b/jetty-cdi/test-cdi-webapp/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.cdi jetty-cdi-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 test-cdi-webapp diff --git a/jetty-client/pom.xml b/jetty-client/pom.xml index b961e852407..f9823a09d4f 100644 --- a/jetty-client/pom.xml +++ b/jetty-client/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-continuation/pom.xml b/jetty-continuation/pom.xml index 660334b1e38..b8732e7307e 100644 --- a/jetty-continuation/pom.xml +++ b/jetty-continuation/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-continuation diff --git a/jetty-deploy/pom.xml b/jetty-deploy/pom.xml index fa6198698a0..c544261e0ae 100644 --- a/jetty-deploy/pom.xml +++ b/jetty-deploy/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-deploy diff --git a/jetty-distribution/pom.xml b/jetty-distribution/pom.xml index a1e638d5f1a..ff58881b9f5 100644 --- a/jetty-distribution/pom.xml +++ b/jetty-distribution/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-distribution diff --git a/jetty-documentation/pom.xml b/jetty-documentation/pom.xml index c700e2414f2..9889f094c5d 100644 --- a/jetty-documentation/pom.xml +++ b/jetty-documentation/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT jetty-documentation Jetty :: Documentation diff --git a/jetty-fcgi/fcgi-client/pom.xml b/jetty-fcgi/fcgi-client/pom.xml index abd3642fc02..fc4409bb253 100644 --- a/jetty-fcgi/fcgi-client/pom.xml +++ b/jetty-fcgi/fcgi-client/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.fcgi fcgi-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-fcgi/fcgi-server/pom.xml b/jetty-fcgi/fcgi-server/pom.xml index 999d07b76f7..0e10c26d027 100644 --- a/jetty-fcgi/fcgi-server/pom.xml +++ b/jetty-fcgi/fcgi-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.fcgi fcgi-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-fcgi/pom.xml b/jetty-fcgi/pom.xml index ce80545c79a..5947a8bb239 100644 --- a/jetty-fcgi/pom.xml +++ b/jetty-fcgi/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-gcloud/jetty-gcloud-session-manager/pom.xml b/jetty-gcloud/jetty-gcloud-session-manager/pom.xml index 4c640235939..0d42a0a1ff1 100644 --- a/jetty-gcloud/jetty-gcloud-session-manager/pom.xml +++ b/jetty-gcloud/jetty-gcloud-session-manager/pom.xml @@ -5,7 +5,7 @@ org.eclipse.jetty.gcloud gcloud-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-gcloud/pom.xml b/jetty-gcloud/pom.xml index ed1b1ccad09..17d01eaa50c 100644 --- a/jetty-gcloud/pom.xml +++ b/jetty-gcloud/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-hazelcast/pom.xml b/jetty-hazelcast/pom.xml index be8cbad91f0..48e211e3d04 100644 --- a/jetty-hazelcast/pom.xml +++ b/jetty-hazelcast/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-home/pom.xml b/jetty-home/pom.xml index 21593220585..6b80f2a91af 100644 --- a/jetty-home/pom.xml +++ b/jetty-home/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-home diff --git a/jetty-http-spi/pom.xml b/jetty-http-spi/pom.xml index 702bd44e1ad..10210962dc1 100644 --- a/jetty-http-spi/pom.xml +++ b/jetty-http-spi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-http-spi diff --git a/jetty-http/pom.xml b/jetty-http/pom.xml index f5a8cc73462..f80e021b77b 100644 --- a/jetty-http/pom.xml +++ b/jetty-http/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-http diff --git a/jetty-http2/http2-alpn-tests/pom.xml b/jetty-http2/http2-alpn-tests/pom.xml index f76433a5d8e..3cb96c0d5c5 100644 --- a/jetty-http2/http2-alpn-tests/pom.xml +++ b/jetty-http2/http2-alpn-tests/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.http2 http2-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-http2/http2-client/pom.xml b/jetty-http2/http2-client/pom.xml index 86bf8e6e47f..7d4a7981d72 100644 --- a/jetty-http2/http2-client/pom.xml +++ b/jetty-http2/http2-client/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.http2 http2-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-http2/http2-common/pom.xml b/jetty-http2/http2-common/pom.xml index 0608896cf88..78ae3d5f97a 100644 --- a/jetty-http2/http2-common/pom.xml +++ b/jetty-http2/http2-common/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.http2 http2-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-http2/http2-hpack/pom.xml b/jetty-http2/http2-hpack/pom.xml index 723e406e118..a20ae1e15fa 100644 --- a/jetty-http2/http2-hpack/pom.xml +++ b/jetty-http2/http2-hpack/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.http2 http2-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-http2/http2-http-client-transport/pom.xml b/jetty-http2/http2-http-client-transport/pom.xml index c0f0135358d..1143ea59718 100644 --- a/jetty-http2/http2-http-client-transport/pom.xml +++ b/jetty-http2/http2-http-client-transport/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.http2 http2-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-http2/http2-server/pom.xml b/jetty-http2/http2-server/pom.xml index ad32bb18e83..c85376ffad8 100644 --- a/jetty-http2/http2-server/pom.xml +++ b/jetty-http2/http2-server/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.http2 http2-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-http2/pom.xml b/jetty-http2/pom.xml index a7e6757f90b..f69f0395f3b 100644 --- a/jetty-http2/pom.xml +++ b/jetty-http2/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-infinispan/pom.xml b/jetty-infinispan/pom.xml index 52d7ec86b87..34b54138414 100644 --- a/jetty-infinispan/pom.xml +++ b/jetty-infinispan/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-infinispan diff --git a/jetty-io/pom.xml b/jetty-io/pom.xml index ae009147afc..f9a524ea151 100644 --- a/jetty-io/pom.xml +++ b/jetty-io/pom.xml @@ -2,7 +2,7 @@ jetty-project org.eclipse.jetty - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-io diff --git a/jetty-jaas/pom.xml b/jetty-jaas/pom.xml index afaf4c60c77..c09e45224f7 100644 --- a/jetty-jaas/pom.xml +++ b/jetty-jaas/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-jaas diff --git a/jetty-jaspi/pom.xml b/jetty-jaspi/pom.xml index fb444348217..2adaf477c98 100644 --- a/jetty-jaspi/pom.xml +++ b/jetty-jaspi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-jmh/pom.xml b/jetty-jmh/pom.xml index 34a56479cb0..6e882632b61 100644 --- a/jetty-jmh/pom.xml +++ b/jetty-jmh/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-jmx/pom.xml b/jetty-jmx/pom.xml index 3e9f2868156..52388ffb1ea 100644 --- a/jetty-jmx/pom.xml +++ b/jetty-jmx/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-jmx diff --git a/jetty-jndi/pom.xml b/jetty-jndi/pom.xml index aafed48cd49..d34a5d7349d 100644 --- a/jetty-jndi/pom.xml +++ b/jetty-jndi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-jndi diff --git a/jetty-jspc-maven-plugin/pom.xml b/jetty-jspc-maven-plugin/pom.xml index 9ce5f657cb2..e9e504361a1 100644 --- a/jetty-jspc-maven-plugin/pom.xml +++ b/jetty-jspc-maven-plugin/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-jspc-maven-plugin diff --git a/jetty-maven-plugin/pom.xml b/jetty-maven-plugin/pom.xml index c8f527441a6..9968cb59b6d 100644 --- a/jetty-maven-plugin/pom.xml +++ b/jetty-maven-plugin/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-maven-plugin diff --git a/jetty-memcached/jetty-memcached-sessions/pom.xml b/jetty-memcached/jetty-memcached-sessions/pom.xml index 7d60ff94a09..5172a0ae573 100644 --- a/jetty-memcached/jetty-memcached-sessions/pom.xml +++ b/jetty-memcached/jetty-memcached-sessions/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.memcached memcached-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-memcached/pom.xml b/jetty-memcached/pom.xml index 7454054730b..4fd32b2c24c 100644 --- a/jetty-memcached/pom.xml +++ b/jetty-memcached/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-nosql/pom.xml b/jetty-nosql/pom.xml index 5f03165c7a7..4a1e7bfaa84 100644 --- a/jetty-nosql/pom.xml +++ b/jetty-nosql/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-nosql diff --git a/jetty-osgi/jetty-osgi-alpn/pom.xml b/jetty-osgi/jetty-osgi-alpn/pom.xml index 94d80feae9b..18d994fbb77 100644 --- a/jetty-osgi/jetty-osgi-alpn/pom.xml +++ b/jetty-osgi/jetty-osgi-alpn/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-osgi-alpn diff --git a/jetty-osgi/jetty-osgi-boot-jsp/pom.xml b/jetty-osgi/jetty-osgi-boot-jsp/pom.xml index d2dca448a33..40440483242 100644 --- a/jetty-osgi/jetty-osgi-boot-jsp/pom.xml +++ b/jetty-osgi/jetty-osgi-boot-jsp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-osgi-boot-jsp diff --git a/jetty-osgi/jetty-osgi-boot-warurl/pom.xml b/jetty-osgi/jetty-osgi-boot-warurl/pom.xml index dbc8970259e..5fbc88d510b 100644 --- a/jetty-osgi/jetty-osgi-boot-warurl/pom.xml +++ b/jetty-osgi/jetty-osgi-boot-warurl/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT ../pom.xml 4.0.0 diff --git a/jetty-osgi/jetty-osgi-boot/pom.xml b/jetty-osgi/jetty-osgi-boot/pom.xml index 94b331f2e20..cbe7a612f4a 100644 --- a/jetty-osgi/jetty-osgi-boot/pom.xml +++ b/jetty-osgi/jetty-osgi-boot/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-osgi-boot diff --git a/jetty-osgi/jetty-osgi-httpservice/pom.xml b/jetty-osgi/jetty-osgi-httpservice/pom.xml index 9f142ea97d1..42e5935924a 100644 --- a/jetty-osgi/jetty-osgi-httpservice/pom.xml +++ b/jetty-osgi/jetty-osgi-httpservice/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-httpservice diff --git a/jetty-osgi/pom.xml b/jetty-osgi/pom.xml index 3886cdce4e4..e2368fd2b50 100644 --- a/jetty-osgi/pom.xml +++ b/jetty-osgi/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-osgi/test-jetty-osgi-context/pom.xml b/jetty-osgi/test-jetty-osgi-context/pom.xml index 66ca396ae9a..3c2ef4a26b3 100644 --- a/jetty-osgi/test-jetty-osgi-context/pom.xml +++ b/jetty-osgi/test-jetty-osgi-context/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 test-jetty-osgi-context diff --git a/jetty-osgi/test-jetty-osgi-fragment/pom.xml b/jetty-osgi/test-jetty-osgi-fragment/pom.xml index 3a9a85c8e6e..3265a3f83ab 100644 --- a/jetty-osgi/test-jetty-osgi-fragment/pom.xml +++ b/jetty-osgi/test-jetty-osgi-fragment/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT ../pom.xml 4.0.0 diff --git a/jetty-osgi/test-jetty-osgi-server/pom.xml b/jetty-osgi/test-jetty-osgi-server/pom.xml index 4fa0f27d84f..0d78f4e34ac 100644 --- a/jetty-osgi/test-jetty-osgi-server/pom.xml +++ b/jetty-osgi/test-jetty-osgi-server/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 test-jetty-osgi-server diff --git a/jetty-osgi/test-jetty-osgi-webapp/pom.xml b/jetty-osgi/test-jetty-osgi-webapp/pom.xml index 6e8df2327f7..07ab3eb9ab8 100644 --- a/jetty-osgi/test-jetty-osgi-webapp/pom.xml +++ b/jetty-osgi/test-jetty-osgi-webapp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT ../pom.xml 4.0.0 diff --git a/jetty-osgi/test-jetty-osgi/pom.xml b/jetty-osgi/test-jetty-osgi/pom.xml index 207e0187bee..81207cf4b7d 100644 --- a/jetty-osgi/test-jetty-osgi/pom.xml +++ b/jetty-osgi/test-jetty-osgi/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty.osgi jetty-osgi-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT ../pom.xml 4.0.0 diff --git a/jetty-plus/pom.xml b/jetty-plus/pom.xml index b69cc13e5d9..8ee65192448 100644 --- a/jetty-plus/pom.xml +++ b/jetty-plus/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-plus diff --git a/jetty-proxy/pom.xml b/jetty-proxy/pom.xml index 02c5eb1916d..955aa12ef39 100644 --- a/jetty-proxy/pom.xml +++ b/jetty-proxy/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-proxy diff --git a/jetty-quickstart/pom.xml b/jetty-quickstart/pom.xml index 482518e605e..14221247f62 100644 --- a/jetty-quickstart/pom.xml +++ b/jetty-quickstart/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 org.eclipse.jetty diff --git a/jetty-rewrite/pom.xml b/jetty-rewrite/pom.xml index 87184d7823f..26383d96c67 100644 --- a/jetty-rewrite/pom.xml +++ b/jetty-rewrite/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-rewrite diff --git a/jetty-runner/pom.xml b/jetty-runner/pom.xml index 690ee51cf1e..3dd915c8dd1 100644 --- a/jetty-runner/pom.xml +++ b/jetty-runner/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-runner diff --git a/jetty-security/pom.xml b/jetty-security/pom.xml index c1105f96f64..5c685fa106b 100644 --- a/jetty-security/pom.xml +++ b/jetty-security/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-security diff --git a/jetty-server/pom.xml b/jetty-server/pom.xml index f66d6c64c3e..319fc328b2a 100644 --- a/jetty-server/pom.xml +++ b/jetty-server/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-server diff --git a/jetty-servlet/pom.xml b/jetty-servlet/pom.xml index a642933e260..b6ddff3e543 100644 --- a/jetty-servlet/pom.xml +++ b/jetty-servlet/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-servlet diff --git a/jetty-servlets/pom.xml b/jetty-servlets/pom.xml index 9a22e863d8d..cfe2accf1ec 100644 --- a/jetty-servlets/pom.xml +++ b/jetty-servlets/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-servlets diff --git a/jetty-spring/pom.xml b/jetty-spring/pom.xml index 2dc6a5cb59b..d1c8a7a721a 100644 --- a/jetty-spring/pom.xml +++ b/jetty-spring/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-spring diff --git a/jetty-start/pom.xml b/jetty-start/pom.xml index 10ffae8abf2..cd4859e70a6 100644 --- a/jetty-start/pom.xml +++ b/jetty-start/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-start diff --git a/jetty-unixsocket/pom.xml b/jetty-unixsocket/pom.xml index d93d60fe66e..1405d5310d8 100644 --- a/jetty-unixsocket/pom.xml +++ b/jetty-unixsocket/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-unixsocket diff --git a/jetty-util-ajax/pom.xml b/jetty-util-ajax/pom.xml index be9a2ae1384..21b3e9a876a 100644 --- a/jetty-util-ajax/pom.xml +++ b/jetty-util-ajax/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-util-ajax diff --git a/jetty-util/pom.xml b/jetty-util/pom.xml index 8ab212cae46..d3fe35cd21a 100644 --- a/jetty-util/pom.xml +++ b/jetty-util/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-util diff --git a/jetty-webapp/pom.xml b/jetty-webapp/pom.xml index dbfac4fce0f..bcb7f29d10a 100644 --- a/jetty-webapp/pom.xml +++ b/jetty-webapp/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-webapp diff --git a/jetty-websocket/javax-websocket-client-impl/pom.xml b/jetty-websocket/javax-websocket-client-impl/pom.xml index 185e35d4fee..ef49b6744f3 100644 --- a/jetty-websocket/javax-websocket-client-impl/pom.xml +++ b/jetty-websocket/javax-websocket-client-impl/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/javax-websocket-server-impl/pom.xml b/jetty-websocket/javax-websocket-server-impl/pom.xml index 60dd9786f8a..12bafeee8ed 100644 --- a/jetty-websocket/javax-websocket-server-impl/pom.xml +++ b/jetty-websocket/javax-websocket-server-impl/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/jetty-websocket-tests/pom.xml b/jetty-websocket/jetty-websocket-tests/pom.xml index 306fadc6274..6e79c39cdd2 100644 --- a/jetty-websocket/jetty-websocket-tests/pom.xml +++ b/jetty-websocket/jetty-websocket-tests/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/pom.xml b/jetty-websocket/pom.xml index a3d4f118ac2..e121d92396f 100644 --- a/jetty-websocket/pom.xml +++ b/jetty-websocket/pom.xml @@ -3,7 +3,7 @@ jetty-project org.eclipse.jetty - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/websocket-api/pom.xml b/jetty-websocket/websocket-api/pom.xml index 7b9c3e95ae5..786342f8d36 100644 --- a/jetty-websocket/websocket-api/pom.xml +++ b/jetty-websocket/websocket-api/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/websocket-client/pom.xml b/jetty-websocket/websocket-client/pom.xml index 3fda0488f8c..0560d064cac 100644 --- a/jetty-websocket/websocket-client/pom.xml +++ b/jetty-websocket/websocket-client/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/websocket-common/pom.xml b/jetty-websocket/websocket-common/pom.xml index 48ad85a8c6f..81119aaf8dc 100644 --- a/jetty-websocket/websocket-common/pom.xml +++ b/jetty-websocket/websocket-common/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/websocket-server/pom.xml b/jetty-websocket/websocket-server/pom.xml index ab4e01d1701..9016a8de790 100644 --- a/jetty-websocket/websocket-server/pom.xml +++ b/jetty-websocket/websocket-server/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-websocket/websocket-servlet/pom.xml b/jetty-websocket/websocket-servlet/pom.xml index 4e445aaf529..003d6019b3c 100644 --- a/jetty-websocket/websocket-servlet/pom.xml +++ b/jetty-websocket/websocket-servlet/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.websocket websocket-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/jetty-xml/pom.xml b/jetty-xml/pom.xml index de317dfe8a7..854eb8ee18c 100644 --- a/jetty-xml/pom.xml +++ b/jetty-xml/pom.xml @@ -2,7 +2,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jetty-xml diff --git a/pom.xml b/pom.xml index 539d5737564..a4ec07b2c5d 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ 4.0.0 org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT Jetty :: Project The Eclipse Jetty Project pom diff --git a/tests/pom.xml b/tests/pom.xml index fd9cf1d1594..f66293dfb0c 100644 --- a/tests/pom.xml +++ b/tests/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty jetty-project - 9.4.15.v20190215 + 9.4.16-SNAPSHOT ../pom.xml org.eclipse.jetty.tests diff --git a/tests/test-continuation/pom.xml b/tests/test-continuation/pom.xml index 24d69b47510..b320a3976ee 100644 --- a/tests/test-continuation/pom.xml +++ b/tests/test-continuation/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests tests-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT ../pom.xml 4.0.0 diff --git a/tests/test-distribution/pom.xml b/tests/test-distribution/pom.xml index 6f72c7ed29d..b366b52fcaf 100644 --- a/tests/test-distribution/pom.xml +++ b/tests/test-distribution/pom.xml @@ -3,7 +3,7 @@ tests-parent org.eclipse.jetty.tests - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/tests/test-http-client-transport/pom.xml b/tests/test-http-client-transport/pom.xml index 1989174c3a9..fb991807e2c 100644 --- a/tests/test-http-client-transport/pom.xml +++ b/tests/test-http-client-transport/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests tests-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/tests/test-integration/pom.xml b/tests/test-integration/pom.xml index afb84c81271..55b1a0cf8ce 100644 --- a/tests/test-integration/pom.xml +++ b/tests/test-integration/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests tests-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 test-integration diff --git a/tests/test-jmx/jmx-webapp-it/pom.xml b/tests/test-jmx/jmx-webapp-it/pom.xml index 83cc5e441a2..5840bb76dce 100644 --- a/tests/test-jmx/jmx-webapp-it/pom.xml +++ b/tests/test-jmx/jmx-webapp-it/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-jmx-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 jmx-webapp-it diff --git a/tests/test-jmx/jmx-webapp/pom.xml b/tests/test-jmx/jmx-webapp/pom.xml index 70f351e26fc..cdadd088541 100644 --- a/tests/test-jmx/jmx-webapp/pom.xml +++ b/tests/test-jmx/jmx-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-jmx-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT jmx-webapp war diff --git a/tests/test-jmx/pom.xml b/tests/test-jmx/pom.xml index c25c46e37f4..61b0b349e68 100644 --- a/tests/test-jmx/pom.xml +++ b/tests/test-jmx/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests tests-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 test-jmx-parent diff --git a/tests/test-loginservice/pom.xml b/tests/test-loginservice/pom.xml index 11c18bc73d0..7af7a8b2152 100644 --- a/tests/test-loginservice/pom.xml +++ b/tests/test-loginservice/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests tests-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT test-loginservice Jetty Tests :: Login Service diff --git a/tests/test-quickstart/pom.xml b/tests/test-quickstart/pom.xml index f37dcdac178..40847100075 100644 --- a/tests/test-quickstart/pom.xml +++ b/tests/test-quickstart/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests tests-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT ../pom.xml 4.0.0 diff --git a/tests/test-sessions/pom.xml b/tests/test-sessions/pom.xml index bf5a4e408b1..3b87af05c1e 100644 --- a/tests/test-sessions/pom.xml +++ b/tests/test-sessions/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests tests-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT test-sessions-parent Jetty Tests :: Sessions :: Parent diff --git a/tests/test-sessions/test-file-sessions/pom.xml b/tests/test-sessions/test-file-sessions/pom.xml index 729c93f1f98..c07ab63afaa 100644 --- a/tests/test-sessions/test-file-sessions/pom.xml +++ b/tests/test-sessions/test-file-sessions/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT test-file-sessions Jetty Tests :: Sessions :: File diff --git a/tests/test-sessions/test-gcloud-sessions/pom.xml b/tests/test-sessions/test-gcloud-sessions/pom.xml index 314d52eab21..fe1a5eaab42 100644 --- a/tests/test-sessions/test-gcloud-sessions/pom.xml +++ b/tests/test-sessions/test-gcloud-sessions/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT test-gcloud-sessions Jetty Tests :: Sessions :: GCloud diff --git a/tests/test-sessions/test-hazelcast-sessions/pom.xml b/tests/test-sessions/test-hazelcast-sessions/pom.xml index 8ce57ed6b05..fa01d58fe70 100644 --- a/tests/test-sessions/test-hazelcast-sessions/pom.xml +++ b/tests/test-sessions/test-hazelcast-sessions/pom.xml @@ -5,7 +5,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT test-hazelcast-sessions Jetty Tests :: Sessions :: Hazelcast diff --git a/tests/test-sessions/test-infinispan-sessions/pom.xml b/tests/test-sessions/test-infinispan-sessions/pom.xml index 023bc11124c..e82cf97f7d1 100644 --- a/tests/test-sessions/test-infinispan-sessions/pom.xml +++ b/tests/test-sessions/test-infinispan-sessions/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT test-infinispan-sessions Jetty Tests :: Sessions :: Infinispan diff --git a/tests/test-sessions/test-jdbc-sessions/pom.xml b/tests/test-sessions/test-jdbc-sessions/pom.xml index 4611f1cc256..746ba5a80ed 100644 --- a/tests/test-sessions/test-jdbc-sessions/pom.xml +++ b/tests/test-sessions/test-jdbc-sessions/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT test-jdbc-sessions Jetty Tests :: Sessions :: JDBC diff --git a/tests/test-sessions/test-memcached-sessions/pom.xml b/tests/test-sessions/test-memcached-sessions/pom.xml index 90fe175725f..0f12d7d1891 100644 --- a/tests/test-sessions/test-memcached-sessions/pom.xml +++ b/tests/test-sessions/test-memcached-sessions/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT test-memcached-sessions Jetty Tests :: Sessions :: Memcached diff --git a/tests/test-sessions/test-mongodb-sessions/pom.xml b/tests/test-sessions/test-mongodb-sessions/pom.xml index a173e664b1e..16e4100c44f 100644 --- a/tests/test-sessions/test-mongodb-sessions/pom.xml +++ b/tests/test-sessions/test-mongodb-sessions/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT test-mongodb-sessions Jetty Tests :: Sessions :: Mongo diff --git a/tests/test-sessions/test-sessions-common/pom.xml b/tests/test-sessions/test-sessions-common/pom.xml index 9889db5b307..9c63613b927 100644 --- a/tests/test-sessions/test-sessions-common/pom.xml +++ b/tests/test-sessions/test-sessions-common/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-sessions-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT test-sessions-common Jetty Tests :: Sessions :: Common diff --git a/tests/test-webapps/pom.xml b/tests/test-webapps/pom.xml index 5ba193203f7..535904cb01f 100644 --- a/tests/test-webapps/pom.xml +++ b/tests/test-webapps/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests tests-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT ../pom.xml test-webapps-parent diff --git a/tests/test-webapps/test-http2-webapp/pom.xml b/tests/test-webapps/test-http2-webapp/pom.xml index 84629043f3b..7b188b60712 100644 --- a/tests/test-webapps/test-http2-webapp/pom.xml +++ b/tests/test-webapps/test-http2-webapp/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT 4.0.0 diff --git a/tests/test-webapps/test-jaas-webapp/pom.xml b/tests/test-webapps/test-jaas-webapp/pom.xml index e564ea6d666..5ee5326c44d 100644 --- a/tests/test-webapps/test-jaas-webapp/pom.xml +++ b/tests/test-webapps/test-jaas-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT test-jaas-webapp Jetty Tests :: WebApp :: JAAS diff --git a/tests/test-webapps/test-jetty-webapp/pom.xml b/tests/test-webapps/test-jetty-webapp/pom.xml index 9658ce49784..98a75260ada 100644 --- a/tests/test-webapps/test-jetty-webapp/pom.xml +++ b/tests/test-webapps/test-jetty-webapp/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT ../pom.xml 4.0.0 diff --git a/tests/test-webapps/test-jndi-webapp/pom.xml b/tests/test-webapps/test-jndi-webapp/pom.xml index 784cd89e9ef..e50080be2fc 100644 --- a/tests/test-webapps/test-jndi-webapp/pom.xml +++ b/tests/test-webapps/test-jndi-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT test-jndi-webapp Jetty Tests :: WebApp :: JNDI diff --git a/tests/test-webapps/test-mock-resources/pom.xml b/tests/test-webapps/test-mock-resources/pom.xml index da51f655eb0..90bb776936b 100644 --- a/tests/test-webapps/test-mock-resources/pom.xml +++ b/tests/test-webapps/test-mock-resources/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT Jetty Tests :: WebApp :: Mock Resources test-mock-resources diff --git a/tests/test-webapps/test-proxy-webapp/pom.xml b/tests/test-webapps/test-proxy-webapp/pom.xml index ae1478583f3..5996c6011cf 100644 --- a/tests/test-webapps/test-proxy-webapp/pom.xml +++ b/tests/test-webapps/test-proxy-webapp/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT ../pom.xml 4.0.0 diff --git a/tests/test-webapps/test-servlet-spec/pom.xml b/tests/test-webapps/test-servlet-spec/pom.xml index ba7911677a6..d32d04c94dc 100644 --- a/tests/test-webapps/test-servlet-spec/pom.xml +++ b/tests/test-webapps/test-servlet-spec/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT test-servlet-spec-parent Jetty Tests :: Spec Test WebApp :: Parent diff --git a/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml b/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml index ed8d1eb5997..26d91c7dfde 100644 --- a/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml +++ b/tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-servlet-spec-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT test-container-initializer jar diff --git a/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml b/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml index 2a0362dc2af..60dd5689163 100644 --- a/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml +++ b/tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-servlet-spec-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT Jetty Tests :: Webapps :: Spec Webapp test-spec-webapp diff --git a/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml b/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml index 857005a4946..9b29555fafc 100644 --- a/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml +++ b/tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml @@ -3,7 +3,7 @@ org.eclipse.jetty.tests test-servlet-spec-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT Jetty Tests :: WebApp :: Servlet Spec :: Fragment Jar diff --git a/tests/test-webapps/test-simple-webapp/pom.xml b/tests/test-webapps/test-simple-webapp/pom.xml index 5f6a2eff3cf..3ace07d7fbc 100644 --- a/tests/test-webapps/test-simple-webapp/pom.xml +++ b/tests/test-webapps/test-simple-webapp/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT test-simple-webapp diff --git a/tests/test-webapps/test-webapp-rfc2616/pom.xml b/tests/test-webapps/test-webapp-rfc2616/pom.xml index 5e827c8751c..5fa1004fe39 100644 --- a/tests/test-webapps/test-webapp-rfc2616/pom.xml +++ b/tests/test-webapps/test-webapp-rfc2616/pom.xml @@ -4,7 +4,7 @@ org.eclipse.jetty.tests test-webapps-parent - 9.4.15.v20190215 + 9.4.16-SNAPSHOT test-webapp-rfc2616 Jetty Tests :: WebApp :: RFC2616 From 8973f01dc4935339743715898ab9dc9e894da5b5 Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Mon, 18 Feb 2019 17:28:23 +1000 Subject: [PATCH 311/931] ensure we use a random for this integration test Signed-off-by: olivier lamy --- .../src/it/javax-annotation-api/pom.xml | 1 + .../javax-annotation-api/src/config/jetty.xml | 40 +++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 jetty-maven-plugin/src/it/javax-annotation-api/src/config/jetty.xml diff --git a/jetty-maven-plugin/src/it/javax-annotation-api/pom.xml b/jetty-maven-plugin/src/it/javax-annotation-api/pom.xml index 6b7888878ca..cce36f8e5ee 100644 --- a/jetty-maven-plugin/src/it/javax-annotation-api/pom.xml +++ b/jetty-maven-plugin/src/it/javax-annotation-api/pom.xml @@ -81,6 +81,7 @@ true + ${basedir}/src/config/jetty.xml diff --git a/jetty-maven-plugin/src/it/javax-annotation-api/src/config/jetty.xml b/jetty-maven-plugin/src/it/javax-annotation-api/src/config/jetty.xml new file mode 100644 index 00000000000..4fb92bbea50 --- /dev/null +++ b/jetty-maven-plugin/src/it/javax-annotation-api/src/config/jetty.xml @@ -0,0 +1,40 @@ + + + + + + https + + 32768 + 8192 + 8192 + 4096 + + + + + + + + + + + + + + + + + + + + + + + + 0 + 30000 + + + + From aec2ebd27d8d6227c68a5589797997eaf8c9fc0d Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Mon, 4 Feb 2019 12:25:46 +1000 Subject: [PATCH 312/931] issue #2878 add an aggregated javadoc jar excluding some tests packages + force attach and use default phase bind (package) + fixing some dependencies to build aggregate javadoc jar + configure release plugin to build aggregated javadoc jar + test javadoc build with jdk11 including aggregated javadoc + Fixing bad javadoc + Excluding tests from aggregate-javadoc + Cannot aggregate-javadoc on CI (requires clean build of snapshot to work) + standardizing javadoc config Signed-off-by: Joakim Erdfelt --- Jenkinsfile | 2 +- jetty-jmh/pom.xml | 6 - .../jetty/http/jmh/MultiPartBenchmark.java | 205 +++++++++++++++++- pom.xml | 43 +--- .../distribution/DistributionTester.java | 2 +- 5 files changed, 211 insertions(+), 47 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 595cb39b2eb..2c342706781 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -54,7 +54,7 @@ pipeline { agent { node { label 'linux' } } options { timeout(time: 30, unit: 'MINUTES') } steps { - mavenBuild("jdk8", "install javadoc:javadoc -DskipTests", "maven3", true) + mavenBuild("jdk11", "install javadoc:javadoc -DskipTests", "maven3", true) warnings consoleParsers: [[parserName: 'Maven'], [parserName: 'JavaDoc'], [parserName: 'Java']] } } diff --git a/jetty-jmh/pom.xml b/jetty-jmh/pom.xml index 6e882632b61..3ee37a274e2 100644 --- a/jetty-jmh/pom.xml +++ b/jetty-jmh/pom.xml @@ -94,12 +94,6 @@ jetty-http ${project.version} - - org.eclipse.jetty - jetty-http - ${project.version} - tests - javax.servlet javax.servlet-api diff --git a/jetty-jmh/src/main/java/org/eclipse/jetty/http/jmh/MultiPartBenchmark.java b/jetty-jmh/src/main/java/org/eclipse/jetty/http/jmh/MultiPartBenchmark.java index 2867de517d9..754d3cc6801 100644 --- a/jetty-jmh/src/main/java/org/eclipse/jetty/http/jmh/MultiPartBenchmark.java +++ b/jetty-jmh/src/main/java/org/eclipse/jetty/http/jmh/MultiPartBenchmark.java @@ -18,9 +18,18 @@ package org.eclipse.jetty.http.jmh; -import org.eclipse.jetty.http.MultiPartCaptureTest.MultipartExpectations; +import static java.nio.charset.StandardCharsets.UTF_8; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.containsString; +import static org.hamcrest.Matchers.is; +import static org.hamcrest.Matchers.notNullValue; + import org.eclipse.jetty.http.MultiPartFormInputStream; +import org.eclipse.jetty.toolchain.test.Hex; import org.eclipse.jetty.toolchain.test.IO; +import org.eclipse.jetty.util.QuotedStringTokenizer; +import org.eclipse.jetty.util.StringUtil; +import org.hamcrest.Matchers; import org.openjdk.jmh.annotations.Benchmark; import org.openjdk.jmh.annotations.BenchmarkMode; import org.openjdk.jmh.annotations.Level; @@ -40,16 +49,25 @@ import org.openjdk.jmh.runner.options.OptionsBuilder; import javax.servlet.MultipartConfigElement; import javax.servlet.http.Part; + +import java.io.BufferedReader; import java.io.File; +import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.StandardOpenOption; +import java.security.DigestOutputStream; +import java.security.MessageDigest; import java.util.ArrayList; +import java.util.Collection; import java.util.List; +import java.util.Locale; +import java.util.Objects; import java.util.Random; import java.util.concurrent.TimeUnit; +import java.util.function.Function; @State(Scope.Benchmark) @Threads(4) @@ -277,6 +295,191 @@ public class MultiPartBenchmark new Runner(opt).run(); } + + + public static class MultipartExpectations + { + public final String contentType; + public final int partCount; + public final List partFilenames = new ArrayList<>(); + public final List partSha1sums = new ArrayList<>(); + public final List partContainsContents = new ArrayList<>(); + + public MultipartExpectations(Path expectationsPath) throws IOException + { + String parsedContentType = null; + String parsedPartCount = "-1"; + + try (BufferedReader reader = Files.newBufferedReader(expectationsPath)) + { + String line; + while ((line = reader.readLine()) != null) + { + line = line.trim(); + if (StringUtil.isBlank(line) || line.startsWith("#")) + { + // skip blanks and comments + continue; + } + + String split[] = line.split("\\|"); + switch (split[0]) + { + case "Request-Header": + if(split[1].equalsIgnoreCase("Content-Type")) + { + parsedContentType = split[2]; + } + break; + case "Content-Type": + parsedContentType = split[1]; + break; + case "Parts-Count": + parsedPartCount = split[1]; + break; + case "Part-ContainsContents": + { + NameValue pair = new NameValue(); + pair.name = split[1]; + pair.value = split[2]; + partContainsContents.add(pair); + break; + } + case "Part-Filename": + { + NameValue pair = new NameValue(); + pair.name = split[1]; + pair.value = split[2]; + partFilenames.add(pair); + break; + } + case "Part-Sha1sum": + { + NameValue pair = new NameValue(); + pair.name = split[1]; + pair.value = split[2]; + partSha1sums.add(pair); + break; + } + default: + throw new IOException("Bad Line in " + expectationsPath + ": " + line); + } + } + } + + Objects.requireNonNull(parsedContentType, "Missing required 'Content-Type' declaration: " + expectationsPath); + this.contentType = parsedContentType; + this.partCount = Integer.parseInt(parsedPartCount); + } + + private void checkParts(Collection parts, Function getPart) throws Exception + { + // Evaluate Count + if (partCount >= 0) + { + assertThat("Mulitpart.parts.size", parts.size(), is(partCount)); + } + + String defaultCharset = UTF_8.toString(); + Part charSetPart = getPart.apply("_charset_"); + if(charSetPart != null) + { + defaultCharset = org.eclipse.jetty.util.IO.toString(charSetPart.getInputStream()); + } + + + // Evaluate expected Contents + for (NameValue expected : partContainsContents) + { + Part part = getPart.apply(expected.name); + assertThat("Part[" + expected.name + "]", part, is(notNullValue())); + try (InputStream partInputStream = part.getInputStream()) + { + String charset = getCharsetFromContentType(part.getContentType(), defaultCharset); + String contents = org.eclipse.jetty.util.IO.toString(partInputStream, charset); + assertThat("Part[" + expected.name + "].contents", contents, containsString(expected.value)); + } + } + + // Evaluate expected filenames + for (NameValue expected : partFilenames) + { + Part part = getPart.apply(expected.name); + assertThat("Part[" + expected.name + "]", part, is(notNullValue())); + assertThat("Part[" + expected.name + "]", part.getSubmittedFileName(), is(expected.value)); + } + + // Evaluate expected contents checksums + for (NameValue expected : partSha1sums) + { + Part part = getPart.apply(expected.name); + assertThat("Part[" + expected.name + "]", part, is(notNullValue())); + MessageDigest digest = MessageDigest.getInstance("SHA1"); + try (InputStream partInputStream = part.getInputStream(); + NoOpOutputStream noop = new NoOpOutputStream(); + DigestOutputStream digester = new DigestOutputStream(noop, digest)) + { + org.eclipse.jetty.util.IO.copy(partInputStream, digester); + String actualSha1sum = Hex.asHex(digest.digest()).toLowerCase(Locale.US); + assertThat("Part[" + expected.name + "].sha1sum", actualSha1sum, Matchers.equalToIgnoringCase(expected.value)); + } + } + } + + private String getCharsetFromContentType(String contentType, String defaultCharset) + { + if(StringUtil.isBlank(contentType)) + { + return defaultCharset; + } + + QuotedStringTokenizer tok = new QuotedStringTokenizer(contentType, ";", false, false); + while(tok.hasMoreTokens()) + { + String str = tok.nextToken().trim(); + if(str.startsWith("charset=")) + { + return str.substring("charset=".length()); + } + } + + return defaultCharset; + } + } + + static class NoOpOutputStream extends OutputStream + { + @Override + public void write(byte[] b) throws IOException + { + } + + @Override + public void write(byte[] b, int off, int len) throws IOException + { + } + + @Override + public void flush() throws IOException + { + } + + @Override + public void close() throws IOException + { + } + + @Override + public void write(int b) throws IOException + { + } + } + + public static class NameValue + { + public String name; + public String value; + } } diff --git a/pom.xml b/pom.xml index a4ec07b2c5d..14ca21dda91 100644 --- a/pom.xml +++ b/pom.xml @@ -280,8 +280,8 @@ true false - deploy - -Peclipse-release + javadoc:aggregate-jar deploy + -Peclipse-release -Paggregate-javadoc-jar clean install forked-path @@ -537,10 +537,8 @@ false false protected - com.acme.*;org.slf4j.*;org.mortbay.* - - https://docs.oracle.com/javase/8/docs/api/ - + true + com.acme,org.slf4j*,org.mortbay*,*.jmh*,org.eclipse.jetty.embedded*,org.eclipse.jetty.example.asyncrest*,org.eclipse.jetty.test* @@ -1222,6 +1220,7 @@ org.apache.maven.plugins maven-gpg-plugin + 1.6 sign-artifacts @@ -1282,38 +1281,6 @@ - - - aggregate-site - - - - org.apache.maven.plugins - maven-javadoc-plugin - - com.acme,*.jmh - - http://docs.oracle.com/javase/8/docs/api/ - http://docs.oracle.com/javaee/7/api - http://junit.sourceforge.net/javadoc/ - - - - org.apache.xbean.XBean - X - - - - - - - - compact3 diff --git a/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java b/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java index 0661ca6f7db..44a2a9edda9 100644 --- a/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java +++ b/tests/test-distribution/src/main/java/org/eclipse/jetty/tests/distribution/DistributionTester.java @@ -185,7 +185,7 @@ public class DistributionTester /** * Resolves an artifact given its Maven coordinates. * - * @param coordinates :[:[:]]: + * @param coordinates <groupId>:<artifactId>[:<extension>[:<classifier>]]:<version> * @return the artifact * @see #installWarFile(File, String) */ From b478332793b16bba98285290341ad165614253b6 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Wed, 20 Feb 2019 14:15:51 +1100 Subject: [PATCH 313/931] Issue #3361 thread set setHandlers protect handler mutation with synchronized. Correctly use copy-on-write semantics for accessing volatile Signed-off-by: Greg Wilkins --- .../handler/ContextHandlerCollection.java | 29 +++---- .../server/handler/HandlerCollection.java | 78 +++++++++++-------- 2 files changed, 62 insertions(+), 45 deletions(-) diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandlerCollection.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandlerCollection.java index 3beaa60f56c..f0b020808f0 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandlerCollection.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandlerCollection.java @@ -155,9 +155,12 @@ public class ContextHandlerCollection extends HandlerCollection @Override public void setHandlers(Handler[] handlers) { - super.setHandlers(handlers); - if (isStarted()) - mapContexts(); + synchronized (this) + { + super.setHandlers(handlers); + if (isStarted()) + mapContexts(); + } } /* ------------------------------------------------------------ */ @@ -176,10 +179,6 @@ public class ContextHandlerCollection extends HandlerCollection @Override public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { - Handler[] handlers = getHandlers(); - if (handlers==null || handlers.length==0) - return; - HttpChannelState async = baseRequest.getHttpChannelState(); if (async.isAsync()) { @@ -196,19 +195,19 @@ public class ContextHandlerCollection extends HandlerCollection } } - // data structure which maps a request to a context; first-best match wins - // { context path => [ context ] } - // } if (target.startsWith("/")) { + Trie> pathBranches = _pathBranches; + if (pathBranches==null) + return; + int limit = target.length()-1; while (limit>=0) { // Get best match - Map.Entry branches = _pathBranches.getBest(target,1,limit); - - + Map.Entry branches = pathBranches.getBest(target,1,limit); + if (branches==null) break; @@ -228,7 +227,9 @@ public class ContextHandlerCollection extends HandlerCollection } else { - // This may not work in all circumstances... but then I think it should never be called + Handler[] handlers = getHandlers(); + if (handlers==null) + return; for (int i=0;i0 ) - setHandlers(ArrayUtil.removeFromArray(handlers, handler)); + if (handlers!=null && handlers.length>0 ) + setHandlers(ArrayUtil.removeFromArray(handlers, handler)); + } } /* ------------------------------------------------------------ */ @@ -196,8 +208,12 @@ public class HandlerCollection extends AbstractHandlerContainer { if (!isStopped()) throw new IllegalStateException("!STOPPED"); - Handler[] children=getChildHandlers(); - setHandlers(null); + Handler[] children; + synchronized (this) + { + children = getChildHandlers(); + setHandlers(null); + } for (Handler child: children) child.destroy(); super.destroy(); From 259e31856ad533050610c167de4aeee29c4d6efd Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Thu, 21 Feb 2019 11:18:43 +1000 Subject: [PATCH 314/931] use ${infinispan.version} rather than hardcoded version --- jetty-infinispan/pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/jetty-infinispan/pom.xml b/jetty-infinispan/pom.xml index 34b54138414..797371516bf 100644 --- a/jetty-infinispan/pom.xml +++ b/jetty-infinispan/pom.xml @@ -53,13 +53,13 @@ org.infinispan infinispan-client-hotrod - 9.1.0.Final + ${infinispan.version} provided org.infinispan infinispan-remote-query-client - 9.1.0.Final + ${infinispan.version} provided From f2d15f12d5ebcbd6a2e1e8b34ed74dba679ed178 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Mon, 25 Feb 2019 16:14:41 +0100 Subject: [PATCH 315/931] Issue #1861 - Limit total bytes pooled by ByteBufferPools. Code cleanups + javadocs. Signed-off-by: Simone Bordet --- .../eclipse/jetty/io/ArrayByteBufferPool.java | 112 +++++++++------ .../org/eclipse/jetty/io/ByteBufferPool.java | 13 +- .../jetty/io/MappedByteBufferPool.java | 56 +++++--- .../jetty/io/ArrayByteBufferPoolTest.java | 128 +++++++++--------- .../jetty/io/MappedByteBufferPoolTest.java | 44 +++--- 5 files changed, 200 insertions(+), 153 deletions(-) diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java index f2fc9cf6b7e..5c742839abd 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java @@ -20,93 +20,115 @@ package org.eclipse.jetty.io; import java.nio.ByteBuffer; +import org.eclipse.jetty.util.annotation.ManagedObject; +import org.eclipse.jetty.util.annotation.ManagedOperation; + +/** + *

A ByteBuffer pool where ByteBuffers are held in queues that are held in array elements.

+ *

Given a capacity {@code factor} of 1024, the first array element holds a queue of ByteBuffers + * each of capacity 1024, the second array element holds a queue of ByteBuffers each of capacity + * 2048, and so on.

+ */ +@ManagedObject public class ArrayByteBufferPool implements ByteBufferPool { - private final int _min; - private final int _maxQueue; + private final int _minCapacity; private final ByteBufferPool.Bucket[] _direct; private final ByteBufferPool.Bucket[] _indirect; - private final int _inc; + private final int _factor; + /** + * Creates a new ArrayByteBufferPool with a default configuration. + */ public ArrayByteBufferPool() { - this(-1,-1,-1,-1); + this(-1, -1, -1, -1); } - public ArrayByteBufferPool(int minSize, int increment, int maxSize) + /** + * Creates a new ArrayByteBufferPool with the given configuration. + * + * @param minCapacity the minimum ByteBuffer capacity + * @param factor the capacity factor + * @param maxCapacity the maximum ByteBuffer capacity + */ + public ArrayByteBufferPool(int minCapacity, int factor, int maxCapacity) { - this(minSize,increment,maxSize,-1); + this(minCapacity, factor, maxCapacity, -1); } - - public ArrayByteBufferPool(int minSize, int increment, int maxSize, int maxQueue) + + /** + * Creates a new ArrayByteBufferPool with the given configuration. + * + * @param minCapacity the minimum ByteBuffer capacity + * @param factor the capacity factor + * @param maxCapacity the maximum ByteBuffer capacity + * @param maxQueueLength the maximum ByteBuffer queue length + */ + public ArrayByteBufferPool(int minCapacity, int factor, int maxCapacity, int maxQueueLength) { - if (minSize<=0) - minSize=0; - if (increment<=0) - increment=1024; - if (maxSize<=0) - maxSize=64*1024; - if (minSize>=increment) - throw new IllegalArgumentException("minSize >= increment"); - if ((maxSize%increment)!=0 || increment>=maxSize) - throw new IllegalArgumentException("increment must be a divisor of maxSize"); - _min=minSize; - _inc=increment; + if (minCapacity <= 0) + minCapacity = 0; + if (factor <= 0) + factor = 1024; + if (maxCapacity <= 0) + maxCapacity = 64 * 1024; + if ((maxCapacity % factor) != 0 || factor >= maxCapacity) + throw new IllegalArgumentException("The capacity factor must be a divisor of maxCapacity"); + _minCapacity = minCapacity; + _factor = factor; - _direct=new ByteBufferPool.Bucket[maxSize/increment]; - _indirect=new ByteBufferPool.Bucket[maxSize/increment]; - _maxQueue=maxQueue; + int length = maxCapacity / factor; + _direct = new ByteBufferPool.Bucket[length]; + _indirect = new ByteBufferPool.Bucket[length]; - int size=0; - for (int i=0;i<_direct.length;i++) + int capacity = 0; + for (int i = 0; i < _direct.length; ++i) { - size+=_inc; - _direct[i]=new ByteBufferPool.Bucket(this,size,_maxQueue); - _indirect[i]=new ByteBufferPool.Bucket(this,size,_maxQueue); + capacity += _factor; + _direct[i] = new ByteBufferPool.Bucket(this, capacity, maxQueueLength); + _indirect[i] = new ByteBufferPool.Bucket(this, capacity, maxQueueLength); } } @Override public ByteBuffer acquire(int size, boolean direct) { - ByteBufferPool.Bucket bucket = bucketFor(size,direct); - if (bucket==null) - return newByteBuffer(size,direct); - + ByteBufferPool.Bucket bucket = bucketFor(size, direct); + if (bucket == null) + return newByteBuffer(size, direct); return bucket.acquire(direct); - } @Override public void release(ByteBuffer buffer) { - if (buffer!=null) - { - ByteBufferPool.Bucket bucket = bucketFor(buffer.capacity(),buffer.isDirect()); - if (bucket!=null) + if (buffer != null) + { + ByteBufferPool.Bucket bucket = bucketFor(buffer.capacity(), buffer.isDirect()); + if (bucket != null) bucket.release(buffer); } } + @ManagedOperation(value = "Clears this ByteBufferPool", impact = "ACTION") public void clear() { - for (int i=0;i<_direct.length;i++) + for (int i = 0; i < _direct.length; ++i) { _direct[i].clear(); _indirect[i].clear(); } } - private ByteBufferPool.Bucket bucketFor(int size,boolean direct) + private ByteBufferPool.Bucket bucketFor(int capacity, boolean direct) { - if (size<=_min) + if (capacity <= _minCapacity) return null; - int b=(size-1)/_inc; - if (b>=_direct.length) + int b = (capacity - 1) / _factor; + if (b >= _direct.length) return null; - ByteBufferPool.Bucket bucket = direct?_direct[b]:_indirect[b]; - - return bucket; + return bucketsFor(direct)[b]; } // Package local for testing diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java index 541953edb31..138affb9327 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java @@ -56,6 +56,13 @@ public interface ByteBufferPool */ public void release(ByteBuffer buffer); + /** + *

Creates a new ByteBuffer of the given capacity and the given directness.

+ * + * @param capacity the ByteBuffer capacity + * @param direct the ByteBuffer directness + * @return a newly allocated ByteBuffer + */ default ByteBuffer newByteBuffer(int capacity, boolean direct) { return direct ? BufferUtil.allocateDirect(capacity) : BufferUtil.allocate(capacity); @@ -131,10 +138,10 @@ public interface ByteBufferPool private final int _capacity; private final AtomicInteger _space; - public Bucket(ByteBufferPool pool, int bufferSize, int maxSize) + public Bucket(ByteBufferPool pool, int capacity, int maxSize) { _pool = pool; - _capacity = bufferSize; + _capacity = capacity; _space = maxSize > 0 ? new AtomicInteger(maxSize) : null; } @@ -204,7 +211,7 @@ public interface ByteBufferPool @Override public String toString() { - return String.format("Bucket@%x{%d/%d}", hashCode(), size(), _capacity); + return String.format("%s@%x{%d/%d}", getClass().getSimpleName(), hashCode(), size(), _capacity); } } } diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java index a4b40322715..07f1d57d7cb 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java @@ -22,36 +22,58 @@ import java.nio.ByteBuffer; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; import java.util.concurrent.atomic.AtomicInteger; -import java.util.function.Function; import org.eclipse.jetty.util.BufferUtil; +import org.eclipse.jetty.util.annotation.ManagedObject; +import org.eclipse.jetty.util.annotation.ManagedOperation; +/** + *

A ByteBuffer pool where ByteBuffers are held in queues that are held in a Map.

+ *

Given a capacity {@code factor} of 1024, the Map entry with key {@code 1} holds a + * queue of ByteBuffers each of capacity 1024, the Map entry with key {@code 2} holds a + * queue of ByteBuffers each of capacity 2048, and so on.

+ */ +@ManagedObject public class MappedByteBufferPool implements ByteBufferPool { private final ConcurrentMap directBuffers = new ConcurrentHashMap<>(); private final ConcurrentMap heapBuffers = new ConcurrentHashMap<>(); private final int _factor; - private final Function _newBucket; + private final int _maxQueueLength; + /** + * Creates a new MappedByteBufferPool with a default configuration. + */ public MappedByteBufferPool() { this(-1); } + /** + * Creates a new MappedByteBufferPool with the given capacity factor. + * + * @param factor the capacity factor + */ public MappedByteBufferPool(int factor) { - this(factor,-1,null); + this(factor, -1); } - - public MappedByteBufferPool(int factor,int maxQueue) + + /** + * Creates a new MappedByteBufferPool with the given capacity factor and max queue length. + * + * @param factor the capacity factor + * @param maxQueueLength the maximum ByteBuffer queue length + */ + public MappedByteBufferPool(int factor, int maxQueueLength) { - this(factor,maxQueue,null); + _factor = factor <= 0 ? 1024 : factor; + _maxQueueLength = maxQueueLength; } - - public MappedByteBufferPool(int factor,int maxQueue,Function newBucket) + + private Bucket newBucket(int key) { - _factor = factor<=0?1024:factor; - _newBucket = newBucket!=null?newBucket:i->new Bucket(this,i*_factor,maxQueue); + return new Bucket(this, key * _factor, _maxQueueLength); } @Override @@ -59,10 +81,9 @@ public class MappedByteBufferPool implements ByteBufferPool { int b = bucketFor(size); ConcurrentMap buffers = bucketsFor(direct); - Bucket bucket = buffers.get(b); - if (bucket==null) - return newByteBuffer(b*_factor, direct); + if (bucket == null) + return newByteBuffer(b * _factor, direct); return bucket.acquire(direct); } @@ -71,17 +92,18 @@ public class MappedByteBufferPool implements ByteBufferPool { if (buffer == null) return; // nothing to do - + // validate that this buffer is from this pool - assert((buffer.capacity() % _factor) == 0); - + assert ((buffer.capacity() % _factor) == 0); + int b = bucketFor(buffer.capacity()); ConcurrentMap buckets = bucketsFor(buffer.isDirect()); - Bucket bucket = buckets.computeIfAbsent(b,_newBucket); + Bucket bucket = buckets.computeIfAbsent(b, this::newBucket); bucket.release(buffer); } + @ManagedOperation(value = "Clears this ByteBufferPool", impact = "ACTION") public void clear() { directBuffers.values().forEach(Bucket::clear); diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/ArrayByteBufferPoolTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/ArrayByteBufferPoolTest.java index 97f988b1018..f6f912759db 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/ArrayByteBufferPoolTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/ArrayByteBufferPoolTest.java @@ -18,32 +18,33 @@ package org.eclipse.jetty.io; -import static org.hamcrest.Matchers.greaterThanOrEqualTo; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.junit.jupiter.api.Assertions.assertTrue; - import java.nio.ByteBuffer; import java.util.Arrays; import org.eclipse.jetty.io.ByteBufferPool.Bucket; import org.junit.jupiter.api.Test; -@SuppressWarnings("ReferenceEquality") +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.greaterThanOrEqualTo; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotSame; +import static org.junit.jupiter.api.Assertions.assertSame; +import static org.junit.jupiter.api.Assertions.assertTrue; + public class ArrayByteBufferPoolTest { @Test - public void testMinimumRelease() throws Exception + public void testMinimumRelease() { - ArrayByteBufferPool bufferPool = new ArrayByteBufferPool(10,100,1000); + ArrayByteBufferPool bufferPool = new ArrayByteBufferPool(10, 100, 1000); ByteBufferPool.Bucket[] buckets = bufferPool.bucketsFor(true); - for (int size=1;size<=9;size++) + for (int size = 1; size <= 9; size++) { ByteBuffer buffer = bufferPool.acquire(size, true); assertTrue(buffer.isDirect()); - assertEquals(size,buffer.capacity()); + assertEquals(size, buffer.capacity()); for (ByteBufferPool.Bucket bucket : buckets) assertTrue(bucket.isEmpty()); @@ -55,39 +56,12 @@ public class ArrayByteBufferPoolTest } @Test - public void testMaxRelease() throws Exception + public void testMaxRelease() { - ArrayByteBufferPool bufferPool = new ArrayByteBufferPool(10,100,1000); + ArrayByteBufferPool bufferPool = new ArrayByteBufferPool(10, 100, 1000); ByteBufferPool.Bucket[] buckets = bufferPool.bucketsFor(true); - for (int size=999;size<=1001;size++) - { - bufferPool.clear(); - ByteBuffer buffer = bufferPool.acquire(size, true); - - assertTrue(buffer.isDirect()); - assertThat(buffer.capacity(),greaterThanOrEqualTo(size)); - for (ByteBufferPool.Bucket bucket : buckets) - assertTrue(bucket.isEmpty()); - - bufferPool.release(buffer); - - int pooled=0; - for (ByteBufferPool.Bucket bucket : buckets) - { - pooled+=bucket.size(); - } - assertEquals(size<=1000,1==pooled); - } - } - - @Test - public void testAcquireRelease() throws Exception - { - ArrayByteBufferPool bufferPool = new ArrayByteBufferPool(10,100,1000); - ByteBufferPool.Bucket[] buckets = bufferPool.bucketsFor(true); - - for (int size=390;size<=510;size++) + for (int size = 999; size <= 1001; size++) { bufferPool.clear(); ByteBuffer buffer = bufferPool.acquire(size, true); @@ -99,28 +73,54 @@ public class ArrayByteBufferPoolTest bufferPool.release(buffer); - int pooled=0; + int pooled = 0; for (ByteBufferPool.Bucket bucket : buckets) { - if (!bucket.isEmpty()) - { - pooled+=bucket.size(); - // TODO assertThat(bucket._bufferSize,greaterThanOrEqualTo(size)); - // TODO assertThat(bucket._bufferSize,Matchers.lessThan(size+100)); - } + pooled += bucket.size(); } - assertEquals(1,pooled); + assertEquals(size <= 1000, 1 == pooled); } } @Test - @SuppressWarnings("ReferenceEquality") - public void testAcquireReleaseAcquire() throws Exception + public void testAcquireRelease() { - ArrayByteBufferPool bufferPool = new ArrayByteBufferPool(10,100,1000); + ArrayByteBufferPool bufferPool = new ArrayByteBufferPool(10, 100, 1000); ByteBufferPool.Bucket[] buckets = bufferPool.bucketsFor(true); - for (int size=390;size<=510;size++) + for (int size = 390; size <= 510; size++) + { + bufferPool.clear(); + ByteBuffer buffer = bufferPool.acquire(size, true); + + assertTrue(buffer.isDirect()); + assertThat(buffer.capacity(), greaterThanOrEqualTo(size)); + for (ByteBufferPool.Bucket bucket : buckets) + assertTrue(bucket.isEmpty()); + + bufferPool.release(buffer); + + int pooled = 0; + for (ByteBufferPool.Bucket bucket : buckets) + { + if (!bucket.isEmpty()) + { + pooled += bucket.size(); + // TODO assertThat(bucket._bufferSize,greaterThanOrEqualTo(size)); + // TODO assertThat(bucket._bufferSize,Matchers.lessThan(size+100)); + } + } + assertEquals(1, pooled); + } + } + + @Test + public void testAcquireReleaseAcquire() + { + ArrayByteBufferPool bufferPool = new ArrayByteBufferPool(10, 100, 1000); + ByteBufferPool.Bucket[] buckets = bufferPool.bucketsFor(true); + + for (int size = 390; size <= 510; size++) { bufferPool.clear(); ByteBuffer buffer1 = bufferPool.acquire(size, true); @@ -130,45 +130,43 @@ public class ArrayByteBufferPoolTest ByteBuffer buffer3 = bufferPool.acquire(size, false); bufferPool.release(buffer3); - int pooled=0; + int pooled = 0; for (ByteBufferPool.Bucket bucket : buckets) { if (!bucket.isEmpty()) { - pooled+=bucket.size(); + pooled += bucket.size(); // TODO assertThat(bucket._bufferSize,greaterThanOrEqualTo(size)); // TODO assertThat(bucket._bufferSize,Matchers.lessThan(size+100)); } } - assertEquals(1,pooled); + assertEquals(1, pooled); - assertTrue(buffer1==buffer2); - assertTrue(buffer1!=buffer3); + assertSame(buffer1, buffer2); + assertNotSame(buffer1, buffer3); } } - @Test - public void testMaxQueue() throws Exception + public void testMaxQueue() { - ArrayByteBufferPool bufferPool = new ArrayByteBufferPool(-1,-1,-1,2); + ArrayByteBufferPool bufferPool = new ArrayByteBufferPool(-1, -1, -1, 2); ByteBuffer buffer1 = bufferPool.acquire(512, false); ByteBuffer buffer2 = bufferPool.acquire(512, false); ByteBuffer buffer3 = bufferPool.acquire(512, false); Bucket[] buckets = bufferPool.bucketsFor(false); - Arrays.asList(buckets).forEach(b->assertEquals(0,b.size())); - + Arrays.asList(buckets).forEach(b -> assertEquals(0, b.size())); + bufferPool.release(buffer1); - Bucket bucket=Arrays.asList(buckets).stream().filter(b->b.size()>0).findFirst().get(); + Bucket bucket = Arrays.stream(buckets).filter(b -> b.size() > 0).findFirst().get(); assertEquals(1, bucket.size()); bufferPool.release(buffer2); assertEquals(2, bucket.size()); - + bufferPool.release(buffer3); assertEquals(2, bucket.size()); } - } diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/MappedByteBufferPoolTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/MappedByteBufferPoolTest.java index ee9589e0d96..c6281767690 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/MappedByteBufferPoolTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/MappedByteBufferPoolTest.java @@ -26,21 +26,21 @@ import org.eclipse.jetty.util.BufferUtil; import org.eclipse.jetty.util.StringUtil; import org.junit.jupiter.api.Test; +import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.containsString; import static org.hamcrest.Matchers.greaterThanOrEqualTo; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertSame; -import static org.hamcrest.MatcherAssert.assertThat; import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.Assertions.fail; public class MappedByteBufferPoolTest { @Test - public void testAcquireRelease() throws Exception + public void testAcquireRelease() { MappedByteBufferPool bufferPool = new MappedByteBufferPool(); - ConcurrentMap buckets = bufferPool.bucketsFor(true); + ConcurrentMap buckets = bufferPool.bucketsFor(true); int size = 512; ByteBuffer buffer = bufferPool.acquire(size, true); @@ -56,10 +56,10 @@ public class MappedByteBufferPoolTest } @Test - public void testAcquireReleaseAcquire() throws Exception + public void testAcquireReleaseAcquire() { MappedByteBufferPool bufferPool = new MappedByteBufferPool(); - ConcurrentMap buckets = bufferPool.bucketsFor(false); + ConcurrentMap buckets = bufferPool.bucketsFor(false); ByteBuffer buffer1 = bufferPool.acquire(512, false); bufferPool.release(buffer1); @@ -76,10 +76,10 @@ public class MappedByteBufferPoolTest } @Test - public void testAcquireReleaseClear() throws Exception + public void testAcquireReleaseClear() { MappedByteBufferPool bufferPool = new MappedByteBufferPool(); - ConcurrentMap buckets = bufferPool.bucketsFor(true); + ConcurrentMap buckets = bufferPool.bucketsFor(true); ByteBuffer buffer = bufferPool.acquire(512, true); bufferPool.release(buffer); @@ -91,16 +91,14 @@ public class MappedByteBufferPoolTest assertTrue(buckets.isEmpty()); } - + /** * In a scenario where MappedByteBufferPool is being used improperly, * such as releasing a buffer that wasn't created/acquired by the * MappedByteBufferPool, an assertion is tested for. - * - * @throws Exception test failure */ @Test - public void testReleaseAssertion() throws Exception + public void testReleaseAssertion() { int factor = 1024; MappedByteBufferPool bufferPool = new MappedByteBufferPool(factor); @@ -110,8 +108,8 @@ public class MappedByteBufferPoolTest // Release a few small non-pool buffers bufferPool.release(ByteBuffer.wrap(StringUtil.getUtf8Bytes("Hello"))); - /* NOTES: - * + /* NOTES: + * * 1) This test will pass on command line maven build, as its surefire setup uses "-ea" already. * 2) In Eclipse, goto the "Run Configuration" for this test case. * Select the "Arguments" tab, and make sure "-ea" is present in the text box titled "VM arguments" @@ -123,24 +121,24 @@ public class MappedByteBufferPoolTest // Expected path. } } - + @Test public void testTagged() { MappedByteBufferPool pool = new MappedByteBufferPool.Tagged(); - ByteBuffer buffer = pool.acquire(1024,false); + ByteBuffer buffer = pool.acquire(1024, false); - assertThat(BufferUtil.toDetailString(buffer),containsString("@T00000001")); - buffer = pool.acquire(1024,false); - assertThat(BufferUtil.toDetailString(buffer),containsString("@T00000002")); + assertThat(BufferUtil.toDetailString(buffer), containsString("@T00000001")); + buffer = pool.acquire(1024, false); + assertThat(BufferUtil.toDetailString(buffer), containsString("@T00000002")); } @Test - public void testMaxQueue() throws Exception + public void testMaxQueue() { - MappedByteBufferPool bufferPool = new MappedByteBufferPool(-1,2); - ConcurrentMap buckets = bufferPool.bucketsFor(false); + MappedByteBufferPool bufferPool = new MappedByteBufferPool(-1, 2); + ConcurrentMap buckets = bufferPool.bucketsFor(false); ByteBuffer buffer1 = bufferPool.acquire(512, false); ByteBuffer buffer2 = bufferPool.acquire(512, false); @@ -149,12 +147,12 @@ public class MappedByteBufferPoolTest bufferPool.release(buffer1); assertEquals(1, buckets.size()); - Bucket bucket=buckets.values().iterator().next(); + Bucket bucket = buckets.values().iterator().next(); assertEquals(1, bucket.size()); bufferPool.release(buffer2); assertEquals(2, bucket.size()); - + bufferPool.release(buffer3); assertEquals(2, bucket.size()); } From 7323b19f6ffd80c6f1dda180432a8b9cfb74e124 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 26 Feb 2019 10:56:30 +0100 Subject: [PATCH 316/931] Issue #1861 - Limit total bytes pooled by ByteBufferPools. Implemented a limit for the total memory retained by the ByteBufferPool for both direct and heap buffers. Signed-off-by: Simone Bordet --- .../jetty/io/AbstractByteBufferPool.java | 93 +++++++++++++++ .../eclipse/jetty/io/ArrayByteBufferPool.java | 95 ++++++++++----- .../org/eclipse/jetty/io/ByteBufferPool.java | 2 +- .../jetty/io/MappedByteBufferPool.java | 81 +++++++++---- .../jetty/io/ArrayByteBufferPoolTest.java | 109 +++++++++++++----- .../jetty/io/MappedByteBufferPoolTest.java | 35 ++++++ 6 files changed, 326 insertions(+), 89 deletions(-) create mode 100644 jetty-io/src/main/java/org/eclipse/jetty/io/AbstractByteBufferPool.java diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractByteBufferPool.java new file mode 100644 index 00000000000..442924306ee --- /dev/null +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractByteBufferPool.java @@ -0,0 +1,93 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.io; + +import java.nio.ByteBuffer; +import java.util.concurrent.atomic.AtomicLong; + +import org.eclipse.jetty.util.annotation.ManagedObject; +import org.eclipse.jetty.util.annotation.ManagedOperation; + +@ManagedObject +abstract class AbstractByteBufferPool implements ByteBufferPool +{ + private final int _factor; + private final int _maxQueueLength; + private final long _maxHeapMemory; + private final AtomicLong _heapMemory = new AtomicLong(); + private final long _maxDirectMemory; + private final AtomicLong _directMemory = new AtomicLong(); + + protected AbstractByteBufferPool(int factor, int maxQueueLength, long maxHeapMemory, long maxDirectMemory) + { + _factor = factor <= 0 ? 1024 : factor; + _maxQueueLength = maxQueueLength; + _maxHeapMemory = maxHeapMemory; + _maxDirectMemory = maxDirectMemory; + } + + protected int getCapacityFactor() + { + return _factor; + } + + protected int getMaxQueueLength() + { + return _maxQueueLength; + } + + protected void decrementMemory(ByteBuffer buffer) + { + AtomicLong memory = buffer.isDirect() ? _directMemory : _heapMemory; + memory.addAndGet(-buffer.capacity()); + } + + protected boolean incrementMemory(ByteBuffer buffer) + { + boolean direct = buffer.isDirect(); + int capacity = buffer.capacity(); + long maxMemory = direct ? _maxDirectMemory : _maxHeapMemory; + AtomicLong memory = direct ? _directMemory : _heapMemory; + if (maxMemory <= 0) + return true; + while (true) + { + long current = memory.get(); + long value = current + capacity; + if (value > maxMemory) + return false; + if (memory.compareAndSet(current, value)) + return true; + } + } + + @ManagedOperation(value = "Returns the memory occupied by this ByteBufferPool in bytes", impact = "INFO") + public long getMemory(boolean direct) + { + AtomicLong memory = direct ? _directMemory : _heapMemory; + return memory.get(); + } + + @ManagedOperation(value = "Clears this ByteBufferPool", impact = "ACTION") + public void clear() + { + _heapMemory.set(0); + _directMemory.set(0); + } +} diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java index 5c742839abd..b1911b9b2c1 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java @@ -19,9 +19,9 @@ package org.eclipse.jetty.io; import java.nio.ByteBuffer; +import java.util.function.IntFunction; import org.eclipse.jetty.util.annotation.ManagedObject; -import org.eclipse.jetty.util.annotation.ManagedOperation; /** *

A ByteBuffer pool where ByteBuffers are held in queues that are held in array elements.

@@ -30,19 +30,18 @@ import org.eclipse.jetty.util.annotation.ManagedOperation; * 2048, and so on.

*/ @ManagedObject -public class ArrayByteBufferPool implements ByteBufferPool +public class ArrayByteBufferPool extends AbstractByteBufferPool { private final int _minCapacity; private final ByteBufferPool.Bucket[] _direct; private final ByteBufferPool.Bucket[] _indirect; - private final int _factor; /** * Creates a new ArrayByteBufferPool with a default configuration. */ public ArrayByteBufferPool() { - this(-1, -1, -1, -1); + this(-1, -1, -1); } /** @@ -54,7 +53,7 @@ public class ArrayByteBufferPool implements ByteBufferPool */ public ArrayByteBufferPool(int minCapacity, int factor, int maxCapacity) { - this(minCapacity, factor, maxCapacity, -1); + this(minCapacity, factor, maxCapacity, -1, -1, -1); } /** @@ -67,68 +66,100 @@ public class ArrayByteBufferPool implements ByteBufferPool */ public ArrayByteBufferPool(int minCapacity, int factor, int maxCapacity, int maxQueueLength) { + this(minCapacity, factor, maxCapacity, maxQueueLength, -1, -1); + } + + /** + * Creates a new ArrayByteBufferPool with the given configuration. + * + * @param minCapacity the minimum ByteBuffer capacity + * @param factor the capacity factor + * @param maxCapacity the maximum ByteBuffer capacity + * @param maxQueueLength the maximum ByteBuffer queue length + * @param maxHeapMemory the max heap memory in bytes + * @param maxDirectMemory the max direct memory in bytes + */ + public ArrayByteBufferPool(int minCapacity, int factor, int maxCapacity, int maxQueueLength, long maxHeapMemory, long maxDirectMemory) + { + super(factor, maxQueueLength, maxHeapMemory, maxDirectMemory); + + factor = getCapacityFactor(); if (minCapacity <= 0) minCapacity = 0; - if (factor <= 0) - factor = 1024; if (maxCapacity <= 0) maxCapacity = 64 * 1024; if ((maxCapacity % factor) != 0 || factor >= maxCapacity) throw new IllegalArgumentException("The capacity factor must be a divisor of maxCapacity"); _minCapacity = minCapacity; - _factor = factor; int length = maxCapacity / factor; _direct = new ByteBufferPool.Bucket[length]; _indirect = new ByteBufferPool.Bucket[length]; - - int capacity = 0; - for (int i = 0; i < _direct.length; ++i) - { - capacity += _factor; - _direct[i] = new ByteBufferPool.Bucket(this, capacity, maxQueueLength); - _indirect[i] = new ByteBufferPool.Bucket(this, capacity, maxQueueLength); - } } @Override public ByteBuffer acquire(int size, boolean direct) { - ByteBufferPool.Bucket bucket = bucketFor(size, direct); + ByteBufferPool.Bucket bucket = bucketFor(size, direct, null); if (bucket == null) - return newByteBuffer(size, direct); - return bucket.acquire(direct); + { + int capacity = size < _minCapacity ? size : (bucketFor(size) + 1) * getCapacityFactor(); + return newByteBuffer(capacity, direct); + } + ByteBuffer buffer = bucket.acquire(direct); + decrementMemory(buffer); + return buffer; } @Override public void release(ByteBuffer buffer) { - if (buffer != null) - { - ByteBufferPool.Bucket bucket = bucketFor(buffer.capacity(), buffer.isDirect()); - if (bucket != null) - bucket.release(buffer); - } + if (buffer == null) + return; + ByteBufferPool.Bucket bucket = bucketFor(buffer.capacity(), buffer.isDirect(), this::newBucket); + if (bucket != null && incrementMemory(buffer)) + bucket.release(buffer); } - @ManagedOperation(value = "Clears this ByteBufferPool", impact = "ACTION") + private Bucket newBucket(int key) + { + return new Bucket(this, key * getCapacityFactor(), getMaxQueueLength()); + } + + @Override public void clear() { + super.clear(); for (int i = 0; i < _direct.length; ++i) { - _direct[i].clear(); - _indirect[i].clear(); + Bucket bucket = _direct[i]; + if (bucket != null) + bucket.clear(); + _direct[i] = null; + bucket = _indirect[i]; + if (bucket != null) + bucket.clear(); + _indirect[i] = null; } } - private ByteBufferPool.Bucket bucketFor(int capacity, boolean direct) + private int bucketFor(int capacity) { - if (capacity <= _minCapacity) + return (capacity - 1) / getCapacityFactor(); + } + + private ByteBufferPool.Bucket bucketFor(int capacity, boolean direct, IntFunction newBucket) + { + if (capacity < _minCapacity) return null; - int b = (capacity - 1) / _factor; + int b = bucketFor(capacity); if (b >= _direct.length) return null; - return bucketsFor(direct)[b]; + Bucket[] buckets = bucketsFor(direct); + Bucket bucket = buckets[b]; + if (bucket == null && newBucket != null) + buckets[b] = bucket = newBucket.apply(b + 1); + return bucket; } // Package local for testing diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java index 138affb9327..1c58efdf444 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java @@ -131,7 +131,7 @@ public interface ByteBufferPool } } - class Bucket + public static class Bucket { private final Deque _queue = new ConcurrentLinkedDeque<>(); private final ByteBufferPool _pool; diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java index 07f1d57d7cb..0ddc2ed6300 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java @@ -22,10 +22,10 @@ import java.nio.ByteBuffer; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; import java.util.concurrent.atomic.AtomicInteger; +import java.util.function.Function; import org.eclipse.jetty.util.BufferUtil; import org.eclipse.jetty.util.annotation.ManagedObject; -import org.eclipse.jetty.util.annotation.ManagedOperation; /** *

A ByteBuffer pool where ByteBuffers are held in queues that are held in a Map.

@@ -34,12 +34,11 @@ import org.eclipse.jetty.util.annotation.ManagedOperation; * queue of ByteBuffers each of capacity 2048, and so on.

*/ @ManagedObject -public class MappedByteBufferPool implements ByteBufferPool +public class MappedByteBufferPool extends AbstractByteBufferPool { - private final ConcurrentMap directBuffers = new ConcurrentHashMap<>(); - private final ConcurrentMap heapBuffers = new ConcurrentHashMap<>(); - private final int _factor; - private final int _maxQueueLength; + private final ConcurrentMap _directBuffers = new ConcurrentHashMap<>(); + private final ConcurrentMap _heapBuffers = new ConcurrentHashMap<>(); + private final Function _newBucket; /** * Creates a new MappedByteBufferPool with a default configuration. @@ -60,20 +59,46 @@ public class MappedByteBufferPool implements ByteBufferPool } /** - * Creates a new MappedByteBufferPool with the given capacity factor and max queue length. + * Creates a new MappedByteBufferPool with the given configuration. * * @param factor the capacity factor * @param maxQueueLength the maximum ByteBuffer queue length */ public MappedByteBufferPool(int factor, int maxQueueLength) { - _factor = factor <= 0 ? 1024 : factor; - _maxQueueLength = maxQueueLength; + this(factor, maxQueueLength, null); + } + + /** + * Creates a new MappedByteBufferPool with the given configuration. + * + * @param factor the capacity factor + * @param maxQueueLength the maximum ByteBuffer queue length + * @param newBucket the function that creates a Bucket + */ + public MappedByteBufferPool(int factor, int maxQueueLength, Function newBucket) + { + this(factor, maxQueueLength, newBucket, -1, -1); + } + + /** + * Creates a new MappedByteBufferPool with the given configuration. + * + * @param factor the capacity factor + * @param maxQueueLength the maximum ByteBuffer queue length + * @param newBucket the function that creates a Bucket + * @param maxHeapMemory the max heap memory in bytes + * @param maxDirectMemory the max direct memory in bytes + */ + public MappedByteBufferPool(int factor, int maxQueueLength, Function newBucket, long maxHeapMemory, long maxDirectMemory) + { + super(factor, maxQueueLength, maxHeapMemory, maxDirectMemory); + _newBucket = newBucket != null ? newBucket : this::newBucket; } private Bucket newBucket(int key) { - return new Bucket(this, key * _factor, _maxQueueLength); + return new Bucket(this, key * getCapacityFactor(), getMaxQueueLength()); } @Override @@ -83,8 +108,10 @@ public class MappedByteBufferPool implements ByteBufferPool ConcurrentMap buffers = bucketsFor(direct); Bucket bucket = buffers.get(b); if (bucket == null) - return newByteBuffer(b * _factor, direct); - return bucket.acquire(direct); + return newByteBuffer(b * getCapacityFactor(), direct); + ByteBuffer buffer = bucket.acquire(direct); + decrementMemory(buffer); + return buffer; } @Override @@ -93,29 +120,33 @@ public class MappedByteBufferPool implements ByteBufferPool if (buffer == null) return; // nothing to do - // validate that this buffer is from this pool - assert ((buffer.capacity() % _factor) == 0); + int capacity = buffer.capacity(); + // Validate that this buffer is from this pool. + assert ((capacity % getCapacityFactor()) == 0); - int b = bucketFor(buffer.capacity()); + int b = bucketFor(capacity); ConcurrentMap buckets = bucketsFor(buffer.isDirect()); + Bucket bucket = buckets.computeIfAbsent(b, _newBucket); - Bucket bucket = buckets.computeIfAbsent(b, this::newBucket); - bucket.release(buffer); + if (incrementMemory(buffer)) + bucket.release(buffer); } - @ManagedOperation(value = "Clears this ByteBufferPool", impact = "ACTION") + @Override public void clear() { - directBuffers.values().forEach(Bucket::clear); - directBuffers.clear(); - heapBuffers.values().forEach(Bucket::clear); - heapBuffers.clear(); + super.clear(); + _directBuffers.values().forEach(Bucket::clear); + _directBuffers.clear(); + _heapBuffers.values().forEach(Bucket::clear); + _heapBuffers.clear(); } private int bucketFor(int size) { - int bucket = size / _factor; - if (size % _factor > 0) + int factor = getCapacityFactor(); + int bucket = size / factor; + if (bucket * factor != size) ++bucket; return bucket; } @@ -123,7 +154,7 @@ public class MappedByteBufferPool implements ByteBufferPool // Package local for testing ConcurrentMap bucketsFor(boolean direct) { - return direct ? directBuffers : heapBuffers; + return direct ? _directBuffers : _heapBuffers; } public static class Tagged extends MappedByteBufferPool diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/ArrayByteBufferPoolTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/ArrayByteBufferPoolTest.java index f6f912759db..99b2fb00fa9 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/ArrayByteBufferPoolTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/ArrayByteBufferPoolTest.java @@ -20,12 +20,17 @@ package org.eclipse.jetty.io; import java.nio.ByteBuffer; import java.util.Arrays; +import java.util.List; +import java.util.Objects; +import java.util.stream.Collectors; import org.eclipse.jetty.io.ByteBufferPool.Bucket; import org.junit.jupiter.api.Test; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.greaterThanOrEqualTo; +import static org.hamcrest.Matchers.lessThan; +import static org.hamcrest.Matchers.lessThanOrEqualTo; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotSame; import static org.junit.jupiter.api.Assertions.assertSame; @@ -46,12 +51,18 @@ public class ArrayByteBufferPoolTest assertTrue(buffer.isDirect()); assertEquals(size, buffer.capacity()); for (ByteBufferPool.Bucket bucket : buckets) - assertTrue(bucket.isEmpty()); + { + if (bucket != null) + assertTrue(bucket.isEmpty()); + } bufferPool.release(buffer); for (ByteBufferPool.Bucket bucket : buckets) - assertTrue(bucket.isEmpty()); + { + if (bucket != null) + assertTrue(bucket.isEmpty()); + } } } @@ -69,15 +80,17 @@ public class ArrayByteBufferPoolTest assertTrue(buffer.isDirect()); assertThat(buffer.capacity(), greaterThanOrEqualTo(size)); for (ByteBufferPool.Bucket bucket : buckets) - assertTrue(bucket.isEmpty()); + { + if (bucket != null) + assertTrue(bucket.isEmpty()); + } bufferPool.release(buffer); - int pooled = 0; - for (ByteBufferPool.Bucket bucket : buckets) - { - pooled += bucket.size(); - } + int pooled = Arrays.stream(buckets) + .filter(Objects::nonNull) + .mapToInt(Bucket::size) + .sum(); assertEquals(size <= 1000, 1 == pooled); } } @@ -96,20 +109,17 @@ public class ArrayByteBufferPoolTest assertTrue(buffer.isDirect()); assertThat(buffer.capacity(), greaterThanOrEqualTo(size)); for (ByteBufferPool.Bucket bucket : buckets) - assertTrue(bucket.isEmpty()); + { + if (bucket != null) + assertTrue(bucket.isEmpty()); + } bufferPool.release(buffer); - int pooled = 0; - for (ByteBufferPool.Bucket bucket : buckets) - { - if (!bucket.isEmpty()) - { - pooled += bucket.size(); - // TODO assertThat(bucket._bufferSize,greaterThanOrEqualTo(size)); - // TODO assertThat(bucket._bufferSize,Matchers.lessThan(size+100)); - } - } + int pooled = Arrays.stream(buckets) + .filter(Objects::nonNull) + .mapToInt(Bucket::size) + .sum(); assertEquals(1, pooled); } } @@ -130,16 +140,10 @@ public class ArrayByteBufferPoolTest ByteBuffer buffer3 = bufferPool.acquire(size, false); bufferPool.release(buffer3); - int pooled = 0; - for (ByteBufferPool.Bucket bucket : buckets) - { - if (!bucket.isEmpty()) - { - pooled += bucket.size(); - // TODO assertThat(bucket._bufferSize,greaterThanOrEqualTo(size)); - // TODO assertThat(bucket._bufferSize,Matchers.lessThan(size+100)); - } - } + int pooled = Arrays.stream(buckets) + .filter(Objects::nonNull) + .mapToInt(Bucket::size) + .sum(); assertEquals(1, pooled); assertSame(buffer1, buffer2); @@ -157,10 +161,16 @@ public class ArrayByteBufferPoolTest ByteBuffer buffer3 = bufferPool.acquire(512, false); Bucket[] buckets = bufferPool.bucketsFor(false); - Arrays.asList(buckets).forEach(b -> assertEquals(0, b.size())); + Arrays.stream(buckets) + .filter(Objects::nonNull) + .forEach(b -> assertEquals(0, b.size())); bufferPool.release(buffer1); - Bucket bucket = Arrays.stream(buckets).filter(b -> b.size() > 0).findFirst().get(); + Bucket bucket = Arrays.stream(buckets) + .filter(Objects::nonNull) + .filter(b -> b.size() > 0) + .findFirst() + .orElseThrow(AssertionError::new); assertEquals(1, bucket.size()); bufferPool.release(buffer2); @@ -169,4 +179,41 @@ public class ArrayByteBufferPoolTest bufferPool.release(buffer3); assertEquals(2, bucket.size()); } + + @Test + public void testMaxMemory() + { + int factor = 1024; + int maxMemory = 10 * 1024; + ArrayByteBufferPool bufferPool = new ArrayByteBufferPool(-1, factor, -1, -1, -1, maxMemory); + + int capacity = 3 * 1024; + ByteBuffer[] buffers = new ByteBuffer[maxMemory / capacity + 1]; + for (int i = 0; i < buffers.length; ++i) + buffers[i] = bufferPool.acquire(capacity, true); + + // Return all the buffers, but only some is retained by the pool. + for (ByteBuffer buffer : buffers) + bufferPool.release(buffer); + + List directBuckets = Arrays.stream(bufferPool.bucketsFor(true)) + .filter(Objects::nonNull) + .filter(b -> !b.isEmpty()) + .collect(Collectors.toList()); + assertEquals(1, directBuckets.size()); + + Bucket bucket = directBuckets.get(0); + assertEquals(buffers.length - 1, bucket.size()); + + long memory1 = bufferPool.getMemory(true); + assertThat(memory1, lessThanOrEqualTo((long)maxMemory)); + + ByteBuffer buffer = bufferPool.acquire(capacity, true); + long memory2 = bufferPool.getMemory(true); + assertThat(memory2, lessThan(memory1)); + + bufferPool.release(buffer); + long memory3 = bufferPool.getMemory(true); + assertEquals(memory1, memory3); + } } diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/MappedByteBufferPoolTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/MappedByteBufferPoolTest.java index c6281767690..5a7e7a0d5e8 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/MappedByteBufferPoolTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/MappedByteBufferPoolTest.java @@ -29,6 +29,8 @@ import org.junit.jupiter.api.Test; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.containsString; import static org.hamcrest.Matchers.greaterThanOrEqualTo; +import static org.hamcrest.Matchers.lessThan; +import static org.hamcrest.Matchers.lessThanOrEqualTo; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertSame; import static org.junit.jupiter.api.Assertions.assertTrue; @@ -156,4 +158,37 @@ public class MappedByteBufferPoolTest bufferPool.release(buffer3); assertEquals(2, bucket.size()); } + + @Test + public void testMaxMemory() + { + int factor = 1024; + int maxMemory = 10 * 1024; + MappedByteBufferPool bufferPool = new MappedByteBufferPool(factor, -1, null, -1, maxMemory); + + int capacity = 3 * 1024; + ByteBuffer[] buffers = new ByteBuffer[maxMemory / capacity + 1]; + for (int i = 0; i < buffers.length; ++i) + buffers[i] = bufferPool.acquire(capacity, true); + + // Return all the buffers, but only some is retained by the pool. + for (ByteBuffer buffer : buffers) + bufferPool.release(buffer); + + ConcurrentMap directMap = bufferPool.bucketsFor(true); + assertEquals(1, directMap.size()); + Bucket bucket = directMap.values().iterator().next(); + assertEquals(buffers.length - 1, bucket.size()); + + long memory1 = bufferPool.getMemory(true); + assertThat(memory1, lessThanOrEqualTo((long)maxMemory)); + + ByteBuffer buffer = bufferPool.acquire(capacity, true); + long memory2 = bufferPool.getMemory(true); + assertThat(memory2, lessThan(memory1)); + + bufferPool.release(buffer); + long memory3 = bufferPool.getMemory(true); + assertEquals(memory1, memory3); + } } From ced0361cab985d3a36e8d73a0199c300aa6a7f85 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 26 Feb 2019 11:50:11 +0100 Subject: [PATCH 317/931] Issue #1861 - Limit total bytes pooled by ByteBufferPools. Fixed the implementation to correctly track the memory retained. Signed-off-by: Simone Bordet --- .../eclipse/jetty/io/AbstractByteBufferPool.java | 4 +--- .../eclipse/jetty/io/ArrayByteBufferPool.java | 8 ++++---- .../org/eclipse/jetty/io/ByteBufferPool.java | 16 ++++++++++++++++ .../eclipse/jetty/io/MappedByteBufferPool.java | 7 +++++-- 4 files changed, 26 insertions(+), 9 deletions(-) diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractByteBufferPool.java index 442924306ee..c3f31a7f835 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractByteBufferPool.java @@ -64,13 +64,11 @@ abstract class AbstractByteBufferPool implements ByteBufferPool int capacity = buffer.capacity(); long maxMemory = direct ? _maxDirectMemory : _maxHeapMemory; AtomicLong memory = direct ? _directMemory : _heapMemory; - if (maxMemory <= 0) - return true; while (true) { long current = memory.get(); long value = current + capacity; - if (value > maxMemory) + if (maxMemory > 0 && value > maxMemory) return false; if (memory.compareAndSet(current, value)) return true; diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java index b1911b9b2c1..76abb023674 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java @@ -100,13 +100,13 @@ public class ArrayByteBufferPool extends AbstractByteBufferPool @Override public ByteBuffer acquire(int size, boolean direct) { + int capacity = size < _minCapacity ? size : (bucketFor(size) + 1) * getCapacityFactor(); ByteBufferPool.Bucket bucket = bucketFor(size, direct, null); if (bucket == null) - { - int capacity = size < _minCapacity ? size : (bucketFor(size) + 1) * getCapacityFactor(); return newByteBuffer(capacity, direct); - } - ByteBuffer buffer = bucket.acquire(direct); + ByteBuffer buffer = bucket.acquire(); + if (buffer == null) + return newByteBuffer(capacity, direct); decrementMemory(buffer); return buffer; } diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java index 1c58efdf444..352a1f18117 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java @@ -145,6 +145,22 @@ public interface ByteBufferPool _space = maxSize > 0 ? new AtomicInteger(maxSize) : null; } + public ByteBuffer acquire() + { + ByteBuffer buffer = queuePoll(); + if (buffer == null) + return null; + if (_space != null) + _space.incrementAndGet(); + return buffer; + } + + /** + * @param direct whether to create a direct buffer when none is available + * @return a ByteBuffer + * @deprecated use {@link #acquire()} instead + */ + @Deprecated public ByteBuffer acquire(boolean direct) { ByteBuffer buffer = queuePoll(); diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java index 0ddc2ed6300..e4448ab84ae 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java @@ -105,11 +105,14 @@ public class MappedByteBufferPool extends AbstractByteBufferPool public ByteBuffer acquire(int size, boolean direct) { int b = bucketFor(size); + int capacity = b * getCapacityFactor(); ConcurrentMap buffers = bucketsFor(direct); Bucket bucket = buffers.get(b); if (bucket == null) - return newByteBuffer(b * getCapacityFactor(), direct); - ByteBuffer buffer = bucket.acquire(direct); + return newByteBuffer(capacity, direct); + ByteBuffer buffer = bucket.acquire(); + if (buffer == null) + return newByteBuffer(capacity, direct); decrementMemory(buffer); return buffer; } From ea3339d3950e5f9bf8d051aae82ea232a89499e9 Mon Sep 17 00:00:00 2001 From: WalkerWatch Date: Tue, 26 Feb 2019 10:59:32 -0500 Subject: [PATCH 318/931] Updating documentation for #3388 Signed-off-by: WalkerWatch --- .../startup/startup-base-vs-home.adoc | 1 + .../contexts/setting-form-size.adoc | 29 +++++++++++++++++-- 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/jetty-documentation/src/main/asciidoc/administration/startup/startup-base-vs-home.adoc b/jetty-documentation/src/main/asciidoc/administration/startup/startup-base-vs-home.adoc index 41ecada6ffc..6e3f8b6a959 100644 --- a/jetty-documentation/src/main/asciidoc/administration/startup/startup-base-vs-home.adoc +++ b/jetty-documentation/src/main/asciidoc/administration/startup/startup-base-vs-home.adoc @@ -20,6 +20,7 @@ === Managing Jetty Base and Jetty Home Instead of managing multiple Jetty implementations out of several different distribution locations, it is possible to maintain a separation between the binary installation of the standalone Jetty (known as `${jetty.home}`), and the customizations for your specific environment(s) (known as `${jetty.base}`). +In addition to easy management of multiple server instances, is allows for quick, drop-in upgrades of Jetty. There should always only be *one* Jetty Home (per version of Jetty), but there can be multiple Jetty Base directories that reference it. Jetty Base:: diff --git a/jetty-documentation/src/main/asciidoc/configuring/contexts/setting-form-size.adoc b/jetty-documentation/src/main/asciidoc/configuring/contexts/setting-form-size.adoc index 7a0ee0c1910..9ffc5f8ce3f 100644 --- a/jetty-documentation/src/main/asciidoc/configuring/contexts/setting-form-size.adoc +++ b/jetty-documentation/src/main/asciidoc/configuring/contexts/setting-form-size.adoc @@ -44,7 +44,7 @@ In either case the syntax of the XML file is the same: ==== For All Apps on a Server -Set an attribute on the Server instance for which you want to modify the maximum form content size: +Set an attribute in `jetty.xml` on the Server instance for which you want to modify the maximum form content size: [source, xml, subs="{sub-order}"] ---- @@ -56,7 +56,32 @@ Set an attribute on the Server instance for which you want to modify the maximum ---- +____ +[IMPORTANT] +It is important to remember that you should *not* modify the XML files in your `$JETTY_HOME`. +If you do for some reason feel you want to change the way an XML file operates, it is best to make a copy of it in your `$JETTY_BASE` in an `/etc` directory. +Jetty will always look first to the `$JETTY_BASE` for configuration. +____ + ==== For All Apps in the JVM Use the system property `org.eclipse.jetty.server.Request.maxFormContentSize`. -This can be set on the command line or in the `start.ini` or `start.d\server.ini` file. +This can be set on the command line or in the `$JETTY_BASE\start.ini` or any `$JETTY_BASE\start.d\*.ini` link:#startup-modules[module ini file.] +Using `$JETTY_BASE\start.d\server.ini` as an example: + +[source, console, subs="{sub-order}"] +---- +# --------------------------------------- +# Module: server +# Enables the core Jetty server on the classpath. +# --------------------------------------- +--module=server + +### Common HTTP configuration +## Scheme to use to build URIs for secure redirects +# jetty.httpConfig.secureScheme=https + +... + +-Dorg.eclipse.jetty.server.Request.maxFormContentSize=200000 +---- From c3719b2babd11e0dfc10c15b3810169005a5a470 Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Wed, 27 Feb 2019 12:37:21 +1000 Subject: [PATCH 319/931] Add jdk12 build in Jenkinsfile (#3376) * add jdk12 build stage * test last release of infinispan for jdk12 build * fix upperBound dependency for jboss logging * upgrade juniper to 5.4.0 and disable infinispan test if JRE.JAVA_12 * Fixed annotations to exclude any JDK > 11 for 3 tests. Signed-off-by: olivier lamy Signed-off-by: Simone Bordet --- Jenkinsfile | 10 ++++ .../jetty/client/HttpClientTLSTest.java | 59 ++++++++----------- jetty-home/pom.xml | 1 - jetty-infinispan/pom.xml | 24 ++++---- .../org/eclipse/jetty/util/LazyListTest.java | 10 ++-- pom.xml | 7 ++- .../ClusteredSessionScavengingTest.java | 3 + 7 files changed, 64 insertions(+), 50 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 2c342706781..9bde00c2d88 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -50,6 +50,16 @@ pipeline { } } + stage("Build / Test - JDK12") { + agent { node { label 'linux' } } + options { timeout(time: 120, unit: 'MINUTES') } + steps { + mavenBuild("jdk12", "-Pmongodb install", "maven3", false) + warnings consoleParsers: [[parserName: 'Maven'], [parserName: 'Java']] + maven_invoker reportsFilenamePattern: "**/target/invoker-reports/BUILD*.xml", invokerBuildDir: "**/target/it" + } + } + stage("Build Javadoc") { agent { node { label 'linux' } } options { timeout(time: 30, unit: 'MINUTES') } diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTLSTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTLSTest.java index f683ec3268c..12edd273bfd 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTLSTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTLSTest.java @@ -50,7 +50,7 @@ import org.eclipse.jetty.util.thread.ExecutorThreadPool; import org.eclipse.jetty.util.thread.QueuedThreadPool; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Test; -import org.junit.jupiter.api.condition.DisabledOnJre; +import org.junit.jupiter.api.condition.EnabledOnJre; import org.junit.jupiter.api.condition.JRE; import static org.hamcrest.MatcherAssert.assertThat; @@ -139,12 +139,10 @@ public class HttpClientTLSTest }); assertThrows(ExecutionException.class, () -> - { - client.newRequest("localhost", connector.getLocalPort()) - .scheme(HttpScheme.HTTPS.asString()) - .timeout(5, TimeUnit.SECONDS) - .send(); - }); + client.newRequest("localhost", connector.getLocalPort()) + .scheme(HttpScheme.HTTPS.asString()) + .timeout(5, TimeUnit.SECONDS) + .send()); assertTrue(serverLatch.await(1, TimeUnit.SECONDS)); assertTrue(clientLatch.await(1, TimeUnit.SECONDS)); @@ -182,12 +180,10 @@ public class HttpClientTLSTest }); assertThrows(ExecutionException.class, () -> - { - client.newRequest("localhost", connector.getLocalPort()) - .scheme(HttpScheme.HTTPS.asString()) - .timeout(5, TimeUnit.SECONDS) - .send(); - }); + client.newRequest("localhost", connector.getLocalPort()) + .scheme(HttpScheme.HTTPS.asString()) + .timeout(5, TimeUnit.SECONDS) + .send()); assertTrue(serverLatch.await(1, TimeUnit.SECONDS)); assertTrue(clientLatch.await(1, TimeUnit.SECONDS)); @@ -226,24 +222,21 @@ public class HttpClientTLSTest }); assertThrows(ExecutionException.class, () -> - { - client.newRequest("localhost", connector.getLocalPort()) - .scheme(HttpScheme.HTTPS.asString()) - .timeout(5, TimeUnit.SECONDS) - .send(); - }); + client.newRequest("localhost", connector.getLocalPort()) + .scheme(HttpScheme.HTTPS.asString()) + .timeout(5, TimeUnit.SECONDS) + .send()); assertTrue(serverLatch.await(1, TimeUnit.SECONDS)); assertTrue(clientLatch.await(1, TimeUnit.SECONDS)); } - // In JDK 11, a mismatch on the client does not generate any bytes towards - // the server, while in TLS 1.2 the client sends to the server the close_notify. - @DisabledOnJre(JRE.JAVA_11) + // In JDK 11+, a mismatch on the client does not generate any bytes towards + // the server, while in previous JDKs the client sends to the server the close_notify. + @EnabledOnJre({JRE.JAVA_8, JRE.JAVA_9, JRE.JAVA_10}) @Test public void testMismatchBetweenTLSProtocolAndTLSCiphersOnClient() throws Exception { - SslContextFactory serverTLSFactory = createSslContextFactory(); startServer(serverTLSFactory, new EmptyServerHandler()); @@ -274,12 +267,10 @@ public class HttpClientTLSTest }); assertThrows(ExecutionException.class, () -> - { - client.newRequest("localhost", connector.getLocalPort()) - .scheme(HttpScheme.HTTPS.asString()) - .timeout(5, TimeUnit.SECONDS) - .send(); - }); + client.newRequest("localhost", connector.getLocalPort()) + .scheme(HttpScheme.HTTPS.asString()) + .timeout(5, TimeUnit.SECONDS) + .send()); assertTrue(serverLatch.await(1, TimeUnit.SECONDS)); assertTrue(clientLatch.await(1, TimeUnit.SECONDS)); @@ -321,8 +312,9 @@ public class HttpClientTLSTest assertTrue(clientLatch.await(1, TimeUnit.SECONDS)); } - // Excluded because of a bug in JDK 11+27 where session resumption does not work. - @DisabledOnJre(JRE.JAVA_11) + // Excluded in JDK 11+ because resumed sessions cannot be compared + // using their session IDs even though they are resumed correctly. + @EnabledOnJre({JRE.JAVA_8, JRE.JAVA_9, JRE.JAVA_10}) @Test public void testHandshakeSucceededWithSessionResumption() throws Exception { @@ -400,8 +392,9 @@ public class HttpClientTLSTest assertTrue(clientLatch.await(1, TimeUnit.SECONDS)); } - // Excluded because of a bug in JDK 11+27 where session resumption does not work. - @DisabledOnJre(JRE.JAVA_11) + // Excluded in JDK 11+ because resumed sessions cannot be compared + // using their session IDs even though they are resumed correctly. + @EnabledOnJre({JRE.JAVA_8, JRE.JAVA_9, JRE.JAVA_10}) @Test public void testClientRawCloseDoesNotInvalidateSession() throws Exception { diff --git a/jetty-home/pom.xml b/jetty-home/pom.xml index 6b80f2a91af..70e3d3deea9 100644 --- a/jetty-home/pom.xml +++ b/jetty-home/pom.xml @@ -651,7 +651,6 @@ org.jboss.logging jboss-logging - 3.3.0.Final org.eclipse.jetty.cdi diff --git a/jetty-infinispan/pom.xml b/jetty-infinispan/pom.xml index 797371516bf..0bde3a8b27d 100644 --- a/jetty-infinispan/pom.xml +++ b/jetty-infinispan/pom.xml @@ -10,7 +10,7 @@ http://www.eclipse.org/jetty ${project.groupId}.infinispan - 9.1.0.Final + 9.4.8.Final install @@ -36,19 +36,23 @@ - org.infinispan - infinispan-core - ${infinispan.version} + org.infinispan + infinispan-core + ${infinispan.version} - org.infinispan.protostream - protostream - 4.1.0.Final + org.infinispan.protostream + protostream + 4.2.2.Final - org.eclipse.jetty - jetty-server - ${project.version} + org.eclipse.jetty + jetty-server + ${project.version} + + + org.jboss.logging + jboss-logging org.infinispan diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/LazyListTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/LazyListTest.java index 28a49387955..0fac1551b25 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/LazyListTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/LazyListTest.java @@ -152,19 +152,19 @@ public class LazyListTest Object list=null; list=LazyList.add(list, null); assertEquals(1,LazyList.size(list)); - assertEquals(null,LazyList.get(list,0)); + assertNull(LazyList.get(list,0)); list="a"; list=LazyList.add(list, null); assertEquals(2,LazyList.size(list)); assertEquals(LazyList.get(list, 0), "a"); - assertEquals(null,LazyList.get(list,1)); + assertNull(LazyList.get(list,1)); list=LazyList.add(list, null); assertEquals(3,LazyList.size(list)); assertEquals(LazyList.get(list, 0), "a"); - assertEquals(null,LazyList.get(list,1)); - assertEquals(null,LazyList.get(list,2)); + assertNull(LazyList.get(list,1)); + assertNull(LazyList.get(list,2)); } /** @@ -254,7 +254,7 @@ public class LazyListTest Object list = LazyList.add(input, 0, null); assertNotNull(list); assertEquals(2,LazyList.size(list)); - assertEquals(null, LazyList.get(list,0)); + assertNull( LazyList.get(list,0)); assertEquals(LazyList.get(list, 1), "a"); } diff --git a/pom.xml b/pom.xml index 14ca21dda91..64cecb9d972 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ benchmarks 1.2.0 1.1.5 - 5.3.1 + 5.4.0 3.6.0 1.3.1 3.1.0 @@ -1042,6 +1042,11 @@ slf4j-simple ${slf4j.version} + + org.jboss.logging + jboss-logging + 3.3.2.Final + com.github.jnr jnr-unixsocket diff --git a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionScavengingTest.java b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionScavengingTest.java index a620ef73229..2a6d1b49436 100644 --- a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionScavengingTest.java +++ b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionScavengingTest.java @@ -22,6 +22,8 @@ package org.eclipse.jetty.server.session; import org.eclipse.jetty.session.infinispan.InfinispanSessionDataStoreFactory; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.condition.DisabledOnJre; +import org.junit.jupiter.api.condition.JRE; /** * ClusteredSessionScavengingTest @@ -52,6 +54,7 @@ public class ClusteredSessionScavengingTest extends AbstractClusteredSessionScav * @see org.eclipse.jetty.server.session.AbstractTestBase#createSessionDataStoreFactory() */ @Override + @DisabledOnJre( JRE.JAVA_12 ) public SessionDataStoreFactory createSessionDataStoreFactory() { InfinispanSessionDataStoreFactory factory = new InfinispanSessionDataStoreFactory(); From 16933f8df27d5f0b37632de794e685aa5b73cb77 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Wed, 27 Feb 2019 12:54:06 +0100 Subject: [PATCH 320/931] Issue #1861 - Limit total bytes pooled by ByteBufferPools. Updated the implementation to track the oldest bucket and release its buffers when the retained memory is exceeded. Signed-off-by: Simone Bordet --- .../jetty/io/AbstractByteBufferPool.java | 29 +++++---- .../eclipse/jetty/io/ArrayByteBufferPool.java | 38 +++++++++++- .../org/eclipse/jetty/io/ByteBufferPool.java | 61 +++++++++++-------- .../jetty/io/MappedByteBufferPool.java | 36 +++++++++-- .../jetty/io/ArrayByteBufferPoolTest.java | 55 ++++++++--------- .../jetty/io/MappedByteBufferPoolTest.java | 49 ++++++++------- 6 files changed, 175 insertions(+), 93 deletions(-) diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractByteBufferPool.java index c3f31a7f835..8a89c1dbd28 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractByteBufferPool.java @@ -20,6 +20,7 @@ package org.eclipse.jetty.io; import java.nio.ByteBuffer; import java.util.concurrent.atomic.AtomicLong; +import java.util.function.Consumer; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.annotation.ManagedOperation; @@ -54,24 +55,28 @@ abstract class AbstractByteBufferPool implements ByteBufferPool protected void decrementMemory(ByteBuffer buffer) { - AtomicLong memory = buffer.isDirect() ? _directMemory : _heapMemory; - memory.addAndGet(-buffer.capacity()); + updateMemory(buffer, false); } - protected boolean incrementMemory(ByteBuffer buffer) + protected void incrementMemory(ByteBuffer buffer) { - boolean direct = buffer.isDirect(); + updateMemory(buffer, true); + } + + private void updateMemory(ByteBuffer buffer, boolean addOrSub) + { + AtomicLong memory = buffer.isDirect() ? _directMemory : _heapMemory; int capacity = buffer.capacity(); + memory.addAndGet(addOrSub ? capacity : -capacity); + } + + protected void releaseExcessMemory(boolean direct, Consumer clearFn) + { long maxMemory = direct ? _maxDirectMemory : _maxHeapMemory; - AtomicLong memory = direct ? _directMemory : _heapMemory; - while (true) + if (maxMemory > 0) { - long current = memory.get(); - long value = current + capacity; - if (maxMemory > 0 && value > maxMemory) - return false; - if (memory.compareAndSet(current, value)) - return true; + while (getMemory(direct) > maxMemory) + clearFn.accept(direct); } } diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java index 76abb023674..971f8bb5332 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java @@ -116,9 +116,14 @@ public class ArrayByteBufferPool extends AbstractByteBufferPool { if (buffer == null) return; - ByteBufferPool.Bucket bucket = bucketFor(buffer.capacity(), buffer.isDirect(), this::newBucket); - if (bucket != null && incrementMemory(buffer)) + boolean direct = buffer.isDirect(); + ByteBufferPool.Bucket bucket = bucketFor(buffer.capacity(), direct, this::newBucket); + if (bucket != null) + { bucket.release(buffer); + incrementMemory(buffer); + releaseExcessMemory(direct, this::clearOldestBucket); + } } private Bucket newBucket(int key) @@ -143,6 +148,35 @@ public class ArrayByteBufferPool extends AbstractByteBufferPool } } + private void clearOldestBucket(boolean direct) + { + long oldest = 0; + int index = -1; + Bucket[] buckets = bucketsFor(direct); + long now = System.nanoTime(); + for (int i = 0; i < buckets.length; ++i) + { + Bucket bucket = buckets[i]; + if (bucket == null) + continue; + long age = now - bucket.getLastUpdate(); + if (age > oldest) + { + oldest = age; + index = i; + } + } + if (index >= 0) + { + Bucket bucket = buckets[index]; + buckets[index] = null; + // The same bucket may be concurrently + // removed, so we need this null guard. + if (bucket != null) + bucket.clear(this::decrementMemory); + } + } + private int bucketFor(int capacity) { return (capacity - 1) / getCapacityFactor(); diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java index 352a1f18117..4d8a6837a04 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java @@ -24,6 +24,7 @@ import java.util.Deque; import java.util.List; import java.util.concurrent.ConcurrentLinkedDeque; import java.util.concurrent.atomic.AtomicInteger; +import java.util.function.Consumer; import org.eclipse.jetty.util.BufferUtil; @@ -60,7 +61,7 @@ public interface ByteBufferPool *

Creates a new ByteBuffer of the given capacity and the given directness.

* * @param capacity the ByteBuffer capacity - * @param direct the ByteBuffer directness + * @param direct the ByteBuffer directness * @return a newly allocated ByteBuffer */ default ByteBuffer newByteBuffer(int capacity, boolean direct) @@ -136,13 +137,16 @@ public interface ByteBufferPool private final Deque _queue = new ConcurrentLinkedDeque<>(); private final ByteBufferPool _pool; private final int _capacity; - private final AtomicInteger _space; + private final int _maxSize; + private final AtomicInteger _size; + private long _lastUpdate; public Bucket(ByteBufferPool pool, int capacity, int maxSize) { _pool = pool; _capacity = capacity; - _space = maxSize > 0 ? new AtomicInteger(maxSize) : null; + _maxSize = maxSize; + _size = maxSize > 0 ? new AtomicInteger() : null; } public ByteBuffer acquire() @@ -150,8 +154,8 @@ public interface ByteBufferPool ByteBuffer buffer = queuePoll(); if (buffer == null) return null; - if (_space != null) - _space.incrementAndGet(); + if (_size != null) + _size.decrementAndGet(); return buffer; } @@ -166,35 +170,42 @@ public interface ByteBufferPool ByteBuffer buffer = queuePoll(); if (buffer == null) return _pool.newByteBuffer(_capacity, direct); - if (_space != null) - _space.incrementAndGet(); + if (_size != null) + _size.decrementAndGet(); return buffer; } public void release(ByteBuffer buffer) { + _lastUpdate = System.nanoTime(); BufferUtil.clear(buffer); - if (_space == null) + if (_size == null) queueOffer(buffer); - else if (_space.decrementAndGet() >= 0) + else if (_size.incrementAndGet() <= _maxSize) queueOffer(buffer); else - _space.incrementAndGet(); + _size.decrementAndGet(); } public void clear() { - if (_space == null) + clear(null); + } + + void clear(Consumer memoryFn) + { + int size = _size == null ? 0 : _size.get() - 1; + while (size >= 0) { - queueClear(); - } - else - { - int s = _space.getAndSet(0); - while (s-- > 0) + ByteBuffer buffer = queuePoll(); + if (buffer == null) + break; + if (memoryFn != null) + memoryFn.accept(buffer); + if (_size != null) { - if (queuePoll() == null) - _space.incrementAndGet(); + _size.decrementAndGet(); + --size; } } } @@ -209,11 +220,6 @@ public interface ByteBufferPool return _queue.poll(); } - private void queueClear() - { - _queue.clear(); - } - boolean isEmpty() { return _queue.isEmpty(); @@ -224,10 +230,15 @@ public interface ByteBufferPool return _queue.size(); } + long getLastUpdate() + { + return _lastUpdate; + } + @Override public String toString() { - return String.format("%s@%x{%d/%d}", getClass().getSimpleName(), hashCode(), size(), _capacity); + return String.format("%s@%x{%d/%d@%d}", getClass().getSimpleName(), hashCode(), size(), _maxSize, _capacity); } } } diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java index e4448ab84ae..98772e1a765 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java @@ -19,6 +19,7 @@ package org.eclipse.jetty.io; import java.nio.ByteBuffer; +import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; import java.util.concurrent.atomic.AtomicInteger; @@ -128,11 +129,12 @@ public class MappedByteBufferPool extends AbstractByteBufferPool assert ((capacity % getCapacityFactor()) == 0); int b = bucketFor(capacity); - ConcurrentMap buckets = bucketsFor(buffer.isDirect()); + boolean direct = buffer.isDirect(); + ConcurrentMap buckets = bucketsFor(direct); Bucket bucket = buckets.computeIfAbsent(b, _newBucket); - - if (incrementMemory(buffer)) - bucket.release(buffer); + bucket.release(buffer); + incrementMemory(buffer); + releaseExcessMemory(direct, this::clearOldestBucket); } @Override @@ -145,6 +147,32 @@ public class MappedByteBufferPool extends AbstractByteBufferPool _heapBuffers.clear(); } + private void clearOldestBucket(boolean direct) + { + long oldest = 0; + int index = -1; + ConcurrentMap buckets = bucketsFor(direct); + long now = System.nanoTime(); + for (Map.Entry entry : buckets.entrySet()) + { + Bucket bucket = entry.getValue(); + long age = now - bucket.getLastUpdate(); + if (age > oldest) + { + oldest = age; + index = entry.getKey(); + } + } + if (index >= 0) + { + Bucket bucket = buckets.remove(index); + // The same bucket may be concurrently + // removed, so we need this null guard. + if (bucket != null) + bucket.clear(this::decrementMemory); + } + } + private int bucketFor(int size) { int factor = getCapacityFactor(); diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/ArrayByteBufferPoolTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/ArrayByteBufferPoolTest.java index 99b2fb00fa9..eabdfe6f7bc 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/ArrayByteBufferPoolTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/ArrayByteBufferPoolTest.java @@ -20,9 +20,7 @@ package org.eclipse.jetty.io; import java.nio.ByteBuffer; import java.util.Arrays; -import java.util.List; import java.util.Objects; -import java.util.stream.Collectors; import org.eclipse.jetty.io.ByteBufferPool.Bucket; import org.junit.jupiter.api.Test; @@ -33,6 +31,7 @@ import static org.hamcrest.Matchers.lessThan; import static org.hamcrest.Matchers.lessThanOrEqualTo; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotSame; +import static org.junit.jupiter.api.Assertions.assertNull; import static org.junit.jupiter.api.Assertions.assertSame; import static org.junit.jupiter.api.Assertions.assertTrue; @@ -184,36 +183,36 @@ public class ArrayByteBufferPoolTest public void testMaxMemory() { int factor = 1024; - int maxMemory = 10 * 1024; + int maxMemory = 11 * 1024; ArrayByteBufferPool bufferPool = new ArrayByteBufferPool(-1, factor, -1, -1, -1, maxMemory); + Bucket[] buckets = bufferPool.bucketsFor(true); - int capacity = 3 * 1024; - ByteBuffer[] buffers = new ByteBuffer[maxMemory / capacity + 1]; - for (int i = 0; i < buffers.length; ++i) - buffers[i] = bufferPool.acquire(capacity, true); - - // Return all the buffers, but only some is retained by the pool. - for (ByteBuffer buffer : buffers) + // Create the buckets - the oldest is the larger. + // 1+2+3+4=10 / maxMemory=11. + for (int i = 4; i >= 1; --i) + { + int capacity = factor * i; + ByteBuffer buffer = bufferPool.acquire(capacity, true); bufferPool.release(buffer); + } - List directBuckets = Arrays.stream(bufferPool.bucketsFor(true)) - .filter(Objects::nonNull) - .filter(b -> !b.isEmpty()) - .collect(Collectors.toList()); - assertEquals(1, directBuckets.size()); - - Bucket bucket = directBuckets.get(0); - assertEquals(buffers.length - 1, bucket.size()); - - long memory1 = bufferPool.getMemory(true); - assertThat(memory1, lessThanOrEqualTo((long)maxMemory)); - - ByteBuffer buffer = bufferPool.acquire(capacity, true); - long memory2 = bufferPool.getMemory(true); - assertThat(memory2, lessThan(memory1)); - + // Create and release a buffer to exceed the max memory. + ByteBuffer buffer = bufferPool.newByteBuffer(2 * factor, true); bufferPool.release(buffer); - long memory3 = bufferPool.getMemory(true); - assertEquals(memory1, memory3); + + // Now the oldest buffer should be gone and we have: 1+2x2+3=8 + long memory = bufferPool.getMemory(true); + assertThat(memory, lessThan((long)maxMemory)); + assertNull(buckets[3]); + + // Create and release a large buffer. + // Max memory is exceeded and buckets 3 and 1 are cleared. + // We will have 2x2+7=11. + buffer = bufferPool.newByteBuffer(7 * factor, true); + bufferPool.release(buffer); + memory = bufferPool.getMemory(true); + assertThat(memory, lessThanOrEqualTo((long)maxMemory)); + assertNull(buckets[0]); + assertNull(buckets[2]); } } diff --git a/jetty-io/src/test/java/org/eclipse/jetty/io/MappedByteBufferPoolTest.java b/jetty-io/src/test/java/org/eclipse/jetty/io/MappedByteBufferPoolTest.java index 5a7e7a0d5e8..5bd536b48cf 100644 --- a/jetty-io/src/test/java/org/eclipse/jetty/io/MappedByteBufferPoolTest.java +++ b/jetty-io/src/test/java/org/eclipse/jetty/io/MappedByteBufferPoolTest.java @@ -32,6 +32,7 @@ import static org.hamcrest.Matchers.greaterThanOrEqualTo; import static org.hamcrest.Matchers.lessThan; import static org.hamcrest.Matchers.lessThanOrEqualTo; import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNull; import static org.junit.jupiter.api.Assertions.assertSame; import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.Assertions.fail; @@ -163,32 +164,36 @@ public class MappedByteBufferPoolTest public void testMaxMemory() { int factor = 1024; - int maxMemory = 10 * 1024; + int maxMemory = 11 * 1024; MappedByteBufferPool bufferPool = new MappedByteBufferPool(factor, -1, null, -1, maxMemory); + ConcurrentMap buckets = bufferPool.bucketsFor(true); - int capacity = 3 * 1024; - ByteBuffer[] buffers = new ByteBuffer[maxMemory / capacity + 1]; - for (int i = 0; i < buffers.length; ++i) - buffers[i] = bufferPool.acquire(capacity, true); - - // Return all the buffers, but only some is retained by the pool. - for (ByteBuffer buffer : buffers) + // Create the buckets - the oldest is the larger. + // 1+2+3+4=10 / maxMemory=11. + for (int i = 4; i >= 1; --i) + { + int capacity = factor * i; + ByteBuffer buffer = bufferPool.acquire(capacity, true); bufferPool.release(buffer); + } - ConcurrentMap directMap = bufferPool.bucketsFor(true); - assertEquals(1, directMap.size()); - Bucket bucket = directMap.values().iterator().next(); - assertEquals(buffers.length - 1, bucket.size()); - - long memory1 = bufferPool.getMemory(true); - assertThat(memory1, lessThanOrEqualTo((long)maxMemory)); - - ByteBuffer buffer = bufferPool.acquire(capacity, true); - long memory2 = bufferPool.getMemory(true); - assertThat(memory2, lessThan(memory1)); - + // Create and release a buffer to exceed the max memory. + ByteBuffer buffer = bufferPool.newByteBuffer(2 * factor, true); bufferPool.release(buffer); - long memory3 = bufferPool.getMemory(true); - assertEquals(memory1, memory3); + + // Now the oldest buffer should be gone and we have: 1+2x2+3=8 + long memory = bufferPool.getMemory(true); + assertThat(memory, lessThan((long)maxMemory)); + assertNull(buckets.get(4)); + + // Create and release a large buffer. + // Max memory is exceeded and buckets 3 and 1 are cleared. + // We will have 2x2+7=11. + buffer = bufferPool.newByteBuffer(7 * factor, true); + bufferPool.release(buffer); + memory = bufferPool.getMemory(true); + assertThat(memory, lessThanOrEqualTo((long)maxMemory)); + assertNull(buckets.get(1)); + assertNull(buckets.get(3)); } } From 676b7ecaba79950db28541173cdb8399f4d03fca Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Wed, 27 Feb 2019 17:16:09 +0100 Subject: [PATCH 321/931] Issue #1861 - Limit total bytes pooled by ByteBufferPools. Added a bytebufferpool module to be able to configure the ByteBufferPool used by ServerConnectors. Added JMX methods to the ByteBufferPool implementations. Signed-off-by: Simone Bordet --- .../jetty/io/AbstractByteBufferPool.java | 14 +++++++++- .../eclipse/jetty/io/ArrayByteBufferPool.java | 23 ++++++++++++++++ .../jetty/io/MappedByteBufferPool.java | 20 ++++++++++++++ .../main/config/etc/jetty-bytebufferpool.xml | 12 +++++++++ jetty-server/src/main/config/etc/jetty.xml | 4 +++ .../main/config/modules/bytebufferpool.mod | 27 +++++++++++++++++++ .../src/main/config/modules/server.mod | 1 + 7 files changed, 100 insertions(+), 1 deletion(-) create mode 100644 jetty-server/src/main/config/etc/jetty-bytebufferpool.xml create mode 100644 jetty-server/src/main/config/modules/bytebufferpool.mod diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractByteBufferPool.java index 8a89c1dbd28..0b599e47596 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractByteBufferPool.java @@ -22,6 +22,7 @@ import java.nio.ByteBuffer; import java.util.concurrent.atomic.AtomicLong; import java.util.function.Consumer; +import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.annotation.ManagedOperation; @@ -80,7 +81,18 @@ abstract class AbstractByteBufferPool implements ByteBufferPool } } - @ManagedOperation(value = "Returns the memory occupied by this ByteBufferPool in bytes", impact = "INFO") + @ManagedAttribute("The bytes retained by direct ByteBuffers") + public long getDirectMemory() + { + return getMemory(true); + } + + @ManagedAttribute("The bytes retained by heap ByteBuffers") + public long getHeapMemory() + { + return getMemory(false); + } + public long getMemory(boolean direct) { AtomicLong memory = direct ? _directMemory : _heapMemory; diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java index 971f8bb5332..274f15885ad 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java @@ -19,8 +19,11 @@ package org.eclipse.jetty.io; import java.nio.ByteBuffer; +import java.util.Arrays; +import java.util.Objects; import java.util.function.IntFunction; +import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; /** @@ -196,6 +199,26 @@ public class ArrayByteBufferPool extends AbstractByteBufferPool return bucket; } + @ManagedAttribute("The number of pooled direct ByteBuffers") + public long getDirectByteBufferCount() + { + return getByteBufferCount(true); + } + + @ManagedAttribute("The number of pooled heap ByteBuffers") + public long getHeapByteBufferCount() + { + return getByteBufferCount(false); + } + + private long getByteBufferCount(boolean direct) + { + return Arrays.stream(bucketsFor(direct)) + .filter(Objects::nonNull) + .mapToLong(Bucket::size) + .sum(); + } + // Package local for testing ByteBufferPool.Bucket[] bucketsFor(boolean direct) { diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java index 98772e1a765..41646203542 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java @@ -26,6 +26,7 @@ import java.util.concurrent.atomic.AtomicInteger; import java.util.function.Function; import org.eclipse.jetty.util.BufferUtil; +import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; /** @@ -182,6 +183,25 @@ public class MappedByteBufferPool extends AbstractByteBufferPool return bucket; } + @ManagedAttribute("The number of pooled direct ByteBuffers") + public long getDirectByteBufferCount() + { + return getByteBufferCount(true); + } + + @ManagedAttribute("The number of pooled heap ByteBuffers") + public long getHeapByteBufferCount() + { + return getByteBufferCount(false); + } + + private long getByteBufferCount(boolean direct) + { + return bucketsFor(direct).values().stream() + .mapToLong(Bucket::size) + .sum(); + } + // Package local for testing ConcurrentMap bucketsFor(boolean direct) { diff --git a/jetty-server/src/main/config/etc/jetty-bytebufferpool.xml b/jetty-server/src/main/config/etc/jetty-bytebufferpool.xml new file mode 100644 index 00000000000..6da3421a938 --- /dev/null +++ b/jetty-server/src/main/config/etc/jetty-bytebufferpool.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/jetty-server/src/main/config/etc/jetty.xml b/jetty-server/src/main/config/etc/jetty.xml index 961f95435e5..0fae969d287 100644 --- a/jetty-server/src/main/config/etc/jetty.xml +++ b/jetty-server/src/main/config/etc/jetty.xml @@ -26,6 +26,10 @@ + + + + diff --git a/jetty-server/src/main/config/modules/bytebufferpool.mod b/jetty-server/src/main/config/modules/bytebufferpool.mod new file mode 100644 index 00000000000..7a813148b6e --- /dev/null +++ b/jetty-server/src/main/config/modules/bytebufferpool.mod @@ -0,0 +1,27 @@ +DO NOT EDIT - See: https://www.eclipse.org/jetty/documentation/current/startup-modules.html + +[description] +Configures the ByteBufferPool used by ServerConnectors. + +[xml] +etc/jetty-bytebufferpool.xml + +[ini-template] +### Server ByteBufferPool Configuration +## Minimum capacity to pool ByteBuffers +#jetty.byteBufferPool.minCapacity=0 + +## Maximum capacity to pool ByteBuffers +#jetty.byteBufferPool.maxCapacity=65536 + +## Capacity factor +#jetty.byteBufferPool.factor=1024 + +## Maximum queue length for each bucket (-1 for unbounded) +#jetty.byteBufferPool.maxQueueLength=-1 + +## Maximum heap memory retainable by the pool (-1 for unlimited) +#jetty.byteBufferPool.maxHeapMemory=-1 + +## Maximum direct memory retainable by the pool (-1 for unlimited) +#jetty.byteBufferPool.maxDirectMemory=-1 diff --git a/jetty-server/src/main/config/modules/server.mod b/jetty-server/src/main/config/modules/server.mod index 038f1836b65..dd039a01fb1 100644 --- a/jetty-server/src/main/config/modules/server.mod +++ b/jetty-server/src/main/config/modules/server.mod @@ -11,6 +11,7 @@ logging [depend] threadpool +bytebufferpool [lib] lib/servlet-api-3.1.jar From 0f442e019a9dfbf6f567c74bc1f3a79d9b860b30 Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Thu, 28 Feb 2019 07:24:55 +1000 Subject: [PATCH 322/931] disable infinispan test for jdk12 Signed-off-by: olivier lamy --- .../session/ClusteredSessionScavengingTest.java | 11 +++++++++-- .../AbstractClusteredSessionScavengingTest.java | 1 - 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionScavengingTest.java b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionScavengingTest.java index 2a6d1b49436..61bd73c6b95 100644 --- a/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionScavengingTest.java +++ b/tests/test-sessions/test-infinispan-sessions/src/test/java/org/eclipse/jetty/server/session/ClusteredSessionScavengingTest.java @@ -50,11 +50,18 @@ public class ClusteredSessionScavengingTest extends AbstractClusteredSessionScav } - /** + @Override + @DisabledOnJre( JRE.JAVA_12 ) + public void testClusteredScavenge() + throws Exception + { + super.testClusteredScavenge(); + } + + /** * @see org.eclipse.jetty.server.session.AbstractTestBase#createSessionDataStoreFactory() */ @Override - @DisabledOnJre( JRE.JAVA_12 ) public SessionDataStoreFactory createSessionDataStoreFactory() { InfinispanSessionDataStoreFactory factory = new InfinispanSessionDataStoreFactory(); diff --git a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractClusteredSessionScavengingTest.java b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractClusteredSessionScavengingTest.java index 7dfbc2236eb..9e9b72d2364 100644 --- a/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractClusteredSessionScavengingTest.java +++ b/tests/test-sessions/test-sessions-common/src/main/java/org/eclipse/jetty/server/session/AbstractClusteredSessionScavengingTest.java @@ -61,7 +61,6 @@ public abstract class AbstractClusteredSessionScavengingTest extends AbstractTes - @Test public void testClusteredScavenge() throws Exception From 8011c48685e78850a88e7cc06650f678a375037d Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Thu, 28 Feb 2019 18:37:02 +1100 Subject: [PATCH 323/931] Issue #3404 Updated QCSV Double usage Signed-off-by: Greg Wilkins --- .../eclipse/jetty/http/QuotedQualityCSV.java | 58 ++++++++++--------- 1 file changed, 30 insertions(+), 28 deletions(-) diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/QuotedQualityCSV.java b/jetty-http/src/main/java/org/eclipse/jetty/http/QuotedQualityCSV.java index 61cee88bfd5..c7047c57a4b 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/QuotedQualityCSV.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/QuotedQualityCSV.java @@ -25,6 +25,8 @@ import java.util.Iterator; import java.util.List; import java.util.function.Function; +import org.eclipse.jetty.util.log.Log; + /* ------------------------------------------------------------ */ /** * Implements a quoted comma separated list of quality values @@ -37,21 +39,16 @@ import java.util.function.Function; */ public class QuotedQualityCSV extends QuotedCSV implements Iterable { - private final static Double ZERO=new Double(0.0); - private final static Double ONE=new Double(1.0); - + private final static Double ZERO = 0.0D; + private final static Double ONE = 1.0D; /** - * Function to apply a most specific MIME encoding secondary ordering + * Lambda to apply a most specific MIME encoding secondary ordering */ - public static Function MOST_SPECIFIC = new Function() + public static Function MOST_SPECIFIC = s -> { - @Override - public Integer apply(String s) - { - String[] elements = s.split("/"); - return 1000000*elements.length+1000*elements[0].length()+elements[elements.length-1].length(); - } + String[] elements = s.split("/"); + return 1000000*elements.length+1000*elements[0].length()+elements[elements.length-1].length(); }; private final List _quality = new ArrayList<>(); @@ -74,7 +71,8 @@ public class QuotedQualityCSV extends QuotedCSV implements Iterable */ public QuotedQualityCSV(String[] preferredOrder) { - this((s) -> { + this((s) -> + { for (int i=0;i protected void parsedValue(StringBuffer buffer) { super.parsedValue(buffer); + + // Assume a quality of ONE _quality.add(ONE); } @@ -108,30 +108,32 @@ public class QuotedQualityCSV extends QuotedCSV implements Iterable @Override protected void parsedParam(StringBuffer buffer, int valueLength, int paramName, int paramValue) { - if (paramName<0) + if (paramName < 0) { - if (buffer.charAt(buffer.length()-1)==';') - buffer.setLength(buffer.length()-1); + if (buffer.charAt(buffer.length() - 1) == ';') + buffer.setLength(buffer.length() - 1); } - else if (paramValue>=0 && - buffer.charAt(paramName)=='q' && paramValue>paramName && - buffer.length()>=paramName && buffer.charAt(paramName+1)=='=') + else if (paramValue >= 0 && + buffer.charAt(paramName) == 'q' && paramValue > paramName && + buffer.length() >= paramName && buffer.charAt(paramName + 1) == '=') { Double q; try { - q=(_keepQuotes && buffer.charAt(paramValue)=='"') - ?new Double(buffer.substring(paramValue+1,buffer.length()-1)) - :new Double(buffer.substring(paramValue)); + q = (_keepQuotes && buffer.charAt(paramValue) == '"') + ? Double.valueOf(buffer.substring(paramValue + 1, buffer.length() - 1)) + : Double.valueOf(buffer.substring(paramValue)); } - catch(Exception e) + catch (Exception e) { - q=ZERO; - } - buffer.setLength(Math.max(0,paramName-1)); - - if (!ONE.equals(q)) - _quality.set(_quality.size()-1,q); + Log.getLogger(QuotedQualityCSV.class).ignore(e); + q = ZERO; + } + buffer.setLength(Math.max(0, paramName - 1)); + + if (!ONE.equals(q)) + // replace assumed quality + _quality.set(_quality.size() - 1, q); } } From de0c8e35311eafc12d06cf5a6d6308d33893152a Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Thu, 28 Feb 2019 12:41:11 +0100 Subject: [PATCH 324/931] Issue #1861 - Limit total bytes pooled by ByteBufferPools. Small improvement after review. Signed-off-by: Simone Bordet --- .../java/org/eclipse/jetty/io/ArrayByteBufferPool.java | 9 ++++----- .../main/java/org/eclipse/jetty/io/ByteBufferPool.java | 2 +- .../java/org/eclipse/jetty/io/MappedByteBufferPool.java | 9 ++++----- 3 files changed, 9 insertions(+), 11 deletions(-) diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java index 274f15885ad..aec162a9ff3 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayByteBufferPool.java @@ -153,19 +153,18 @@ public class ArrayByteBufferPool extends AbstractByteBufferPool private void clearOldestBucket(boolean direct) { - long oldest = 0; + long oldest = Long.MAX_VALUE; int index = -1; Bucket[] buckets = bucketsFor(direct); - long now = System.nanoTime(); for (int i = 0; i < buckets.length; ++i) { Bucket bucket = buckets[i]; if (bucket == null) continue; - long age = now - bucket.getLastUpdate(); - if (age > oldest) + long lastUpdate = bucket.getLastUpdate(); + if (lastUpdate < oldest) { - oldest = age; + oldest = lastUpdate; index = i; } } diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java index 4d8a6837a04..604b8188692 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java @@ -139,7 +139,7 @@ public interface ByteBufferPool private final int _capacity; private final int _maxSize; private final AtomicInteger _size; - private long _lastUpdate; + private long _lastUpdate = System.nanoTime(); public Bucket(ByteBufferPool pool, int capacity, int maxSize) { diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java index 41646203542..a07a65a9e91 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/MappedByteBufferPool.java @@ -150,17 +150,16 @@ public class MappedByteBufferPool extends AbstractByteBufferPool private void clearOldestBucket(boolean direct) { - long oldest = 0; + long oldest = Long.MAX_VALUE; int index = -1; ConcurrentMap buckets = bucketsFor(direct); - long now = System.nanoTime(); for (Map.Entry entry : buckets.entrySet()) { Bucket bucket = entry.getValue(); - long age = now - bucket.getLastUpdate(); - if (age > oldest) + long lastUpdate = bucket.getLastUpdate(); + if (lastUpdate < oldest) { - oldest = age; + oldest = lastUpdate; index = entry.getKey(); } } From 057575f1cb8fd2c0c35e8eeeb26b726c1d4cea99 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Tue, 26 Feb 2019 16:32:37 +0100 Subject: [PATCH 325/931] Issue #3373 - OutOfMemoryError: Java heap space in GZIPContentDecoder. Modified jetty-client content decoding to be fully non-blocking; this allows for a better backpressure and less usage of the buffer pool. Modified GZIPContentDecoder to aggregate decoded ByteBuffers in a smarter way that avoids too many data copies and pollution of the buffer pool with intermediate size buffers. Removed duplicate test GZIPContentDecoderTest. Improved javadocs and improved AsyncMiddleManServlet to release buffers used by the GZIPContentDecoder. Signed-off-by: Simone Bordet --- .../eclipse/jetty/client/ContentDecoder.java | 9 + .../jetty/client/GZIPContentDecoder.java | 11 +- .../eclipse/jetty/client/HttpReceiver.java | 76 +++-- .../jetty/client/GZIPContentDecoderTest.java | 288 ------------------ .../jetty/client/HttpClientGZIPTest.java | 84 +++-- .../jetty/http/GZIPContentDecoder.java | 178 ++++++----- .../jetty/http/GZIPContentDecoderTest.java | 79 +++-- .../jetty/proxy/AsyncMiddleManServlet.java | 37 ++- .../proxy/AsyncMiddleManServletTest.java | 178 +++++------ 9 files changed, 371 insertions(+), 569 deletions(-) delete mode 100644 jetty-client/src/test/java/org/eclipse/jetty/client/GZIPContentDecoderTest.java diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/ContentDecoder.java b/jetty-client/src/main/java/org/eclipse/jetty/client/ContentDecoder.java index 471823f3d7f..c4449b703f8 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/ContentDecoder.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/ContentDecoder.java @@ -35,6 +35,15 @@ public interface ContentDecoder */ public abstract ByteBuffer decode(ByteBuffer buffer); + /** + *

Releases the ByteBuffer returned by {@link #decode(ByteBuffer)}.

+ * + * @param decoded the ByteBuffer returned by {@link #decode(ByteBuffer)} + */ + public default void release(ByteBuffer decoded) + { + } + /** * Factory for {@link ContentDecoder}s; subclasses must implement {@link #newContentDecoder()}. *

diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/GZIPContentDecoder.java b/jetty-client/src/main/java/org/eclipse/jetty/client/GZIPContentDecoder.java index 857d634f044..7a02c1b4f04 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/GZIPContentDecoder.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/GZIPContentDecoder.java @@ -18,6 +18,8 @@ package org.eclipse.jetty.client; +import java.nio.ByteBuffer; + import org.eclipse.jetty.io.ByteBufferPool; /** @@ -25,7 +27,7 @@ import org.eclipse.jetty.io.ByteBufferPool; */ public class GZIPContentDecoder extends org.eclipse.jetty.http.GZIPContentDecoder implements ContentDecoder { - private static final int DEFAULT_BUFFER_SIZE = 2048; + public static final int DEFAULT_BUFFER_SIZE = 8192; public GZIPContentDecoder() { @@ -42,6 +44,13 @@ public class GZIPContentDecoder extends org.eclipse.jetty.http.GZIPContentDecode super(byteBufferPool, bufferSize); } + @Override + protected boolean decodedChunk(ByteBuffer chunk) + { + super.decodedChunk(chunk); + return true; + } + /** * Specialized {@link ContentDecoder.Factory} for the "gzip" encoding. */ diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpReceiver.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpReceiver.java index 7690791347b..63fe07ef5d2 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpReceiver.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpReceiver.java @@ -21,7 +21,6 @@ package org.eclipse.jetty.client; import java.io.IOException; import java.net.URI; import java.nio.ByteBuffer; -import java.util.ArrayList; import java.util.Collections; import java.util.Enumeration; import java.util.HashMap; @@ -37,7 +36,7 @@ import org.eclipse.jetty.http.HttpHeader; import org.eclipse.jetty.http.HttpStatus; import org.eclipse.jetty.util.BufferUtil; import org.eclipse.jetty.util.Callback; -import org.eclipse.jetty.util.CountingCallback; +import org.eclipse.jetty.util.IteratingNestedCallback; import org.eclipse.jetty.util.component.Destroyable; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -339,35 +338,7 @@ public abstract class HttpReceiver } else { - try - { - List decodeds = new ArrayList<>(2); - while (buffer.hasRemaining()) - { - ByteBuffer decoded = decoder.decode(buffer); - if (!decoded.hasRemaining()) - continue; - decodeds.add(decoded); - if (LOG.isDebugEnabled()) - LOG.debug("Response content decoded ({}) {}{}{}", decoder, response, System.lineSeparator(), BufferUtil.toDetailString(decoded)); - } - - if (decodeds.isEmpty()) - { - callback.succeeded(); - } - else - { - int size = decodeds.size(); - CountingCallback counter = new CountingCallback(callback, size); - for (ByteBuffer decoded : decodeds) - notifier.notifyContent(response, decoded, counter, contentListeners); - } - } - catch (Throwable x) - { - callback.failed(x); - } + new Decoder(notifier, response, decoder, buffer, callback).iterate(); } if (updateResponseState(ResponseState.TRANSIENT, ResponseState.CONTENT)) @@ -615,4 +586,47 @@ public abstract class HttpReceiver */ FAILURE } + + private class Decoder extends IteratingNestedCallback + { + private final ResponseNotifier notifier; + private final HttpResponse response; + private final ContentDecoder decoder; + private final ByteBuffer buffer; + private ByteBuffer decoded; + + public Decoder(ResponseNotifier notifier, HttpResponse response, ContentDecoder decoder, ByteBuffer buffer, Callback callback) + { + super(callback); + this.notifier = notifier; + this.response = response; + this.decoder = decoder; + this.buffer = buffer; + } + + @Override + protected Action process() throws Throwable + { + while (true) + { + decoded = decoder.decode(buffer); + if (decoded.hasRemaining()) + break; + if (!buffer.hasRemaining()) + return Action.SUCCEEDED; + } + if (LOG.isDebugEnabled()) + LOG.debug("Response content decoded ({}) {}{}{}", decoder, response, System.lineSeparator(), BufferUtil.toDetailString(decoded)); + + notifier.notifyContent(response, decoded, this, contentListeners); + return Action.SCHEDULED; + } + + @Override + public void succeeded() + { + decoder.release(decoded); + super.succeeded(); + } + } } diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/GZIPContentDecoderTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/GZIPContentDecoderTest.java deleted file mode 100644 index c627ba84547..00000000000 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/GZIPContentDecoderTest.java +++ /dev/null @@ -1,288 +0,0 @@ -// -// ======================================================================== -// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -// - -package org.eclipse.jetty.client; - -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertTrue; - -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.nio.ByteBuffer; -import java.nio.charset.StandardCharsets; -import java.util.zip.GZIPInputStream; -import java.util.zip.GZIPOutputStream; - -import org.junit.jupiter.api.Test; - -@Deprecated -public class GZIPContentDecoderTest -{ - @Test - public void testStreamNoBlocks() throws Exception - { - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - GZIPOutputStream output = new GZIPOutputStream(baos); - output.close(); - byte[] bytes = baos.toByteArray(); - - GZIPInputStream input = new GZIPInputStream(new ByteArrayInputStream(bytes), 1); - int read = input.read(); - assertEquals(-1, read); - } - - @Test - public void testStreamBigBlockOneByteAtATime() throws Exception - { - String data = "0123456789ABCDEF"; - for (int i = 0; i < 10; ++i) - data += data; - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - GZIPOutputStream output = new GZIPOutputStream(baos); - output.write(data.getBytes(StandardCharsets.UTF_8)); - output.close(); - byte[] bytes = baos.toByteArray(); - - baos = new ByteArrayOutputStream(); - GZIPInputStream input = new GZIPInputStream(new ByteArrayInputStream(bytes), 1); - int read; - while ((read = input.read()) >= 0) - baos.write(read); - assertEquals(data, new String(baos.toByteArray(), StandardCharsets.UTF_8)); - } - - @Test - public void testNoBlocks() throws Exception - { - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - GZIPOutputStream output = new GZIPOutputStream(baos); - output.close(); - byte[] bytes = baos.toByteArray(); - - GZIPContentDecoder decoder = new GZIPContentDecoder(); - ByteBuffer decoded = decoder.decode(ByteBuffer.wrap(bytes)); - assertEquals(0, decoded.remaining()); - } - - @Test - public void testSmallBlock() throws Exception - { - String data = "0"; - - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - GZIPOutputStream output = new GZIPOutputStream(baos); - output.write(data.getBytes(StandardCharsets.UTF_8)); - output.close(); - byte[] bytes = baos.toByteArray(); - - GZIPContentDecoder decoder = new GZIPContentDecoder(); - ByteBuffer decoded = decoder.decode(ByteBuffer.wrap(bytes)); - assertEquals(data, StandardCharsets.UTF_8.decode(decoded).toString()); - } - - @Test - public void testSmallBlockWithGZIPChunkedAtBegin() throws Exception - { - String data = "0"; - - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - GZIPOutputStream output = new GZIPOutputStream(baos); - output.write(data.getBytes(StandardCharsets.UTF_8)); - output.close(); - byte[] bytes = baos.toByteArray(); - - // The header is 10 bytes, chunk at 11 bytes - byte[] bytes1 = new byte[11]; - System.arraycopy(bytes, 0, bytes1, 0, bytes1.length); - byte[] bytes2 = new byte[bytes.length - bytes1.length]; - System.arraycopy(bytes, bytes1.length, bytes2, 0, bytes2.length); - - GZIPContentDecoder decoder = new GZIPContentDecoder(); - ByteBuffer decoded = decoder.decode(ByteBuffer.wrap(bytes1)); - assertEquals(0, decoded.capacity()); - decoded = decoder.decode(ByteBuffer.wrap(bytes2)); - assertEquals(data, StandardCharsets.UTF_8.decode(decoded).toString()); - } - - @Test - public void testSmallBlockWithGZIPChunkedAtEnd() throws Exception - { - String data = "0"; - - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - GZIPOutputStream output = new GZIPOutputStream(baos); - output.write(data.getBytes(StandardCharsets.UTF_8)); - output.close(); - byte[] bytes = baos.toByteArray(); - - // The trailer is 8 bytes, chunk the last 9 bytes - byte[] bytes1 = new byte[bytes.length - 9]; - System.arraycopy(bytes, 0, bytes1, 0, bytes1.length); - byte[] bytes2 = new byte[bytes.length - bytes1.length]; - System.arraycopy(bytes, bytes1.length, bytes2, 0, bytes2.length); - - GZIPContentDecoder decoder = new GZIPContentDecoder(); - ByteBuffer decoded = decoder.decode(ByteBuffer.wrap(bytes1)); - assertEquals(data, StandardCharsets.UTF_8.decode(decoded).toString()); - assertFalse(decoder.isFinished()); - decoded = decoder.decode(ByteBuffer.wrap(bytes2)); - assertEquals(0, decoded.remaining()); - assertTrue(decoder.isFinished()); - } - - @Test - public void testSmallBlockWithGZIPTrailerChunked() throws Exception - { - String data = "0"; - - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - GZIPOutputStream output = new GZIPOutputStream(baos); - output.write(data.getBytes(StandardCharsets.UTF_8)); - output.close(); - byte[] bytes = baos.toByteArray(); - - // The trailer is 4+4 bytes, chunk the last 3 bytes - byte[] bytes1 = new byte[bytes.length - 3]; - System.arraycopy(bytes, 0, bytes1, 0, bytes1.length); - byte[] bytes2 = new byte[bytes.length - bytes1.length]; - System.arraycopy(bytes, bytes1.length, bytes2, 0, bytes2.length); - - GZIPContentDecoder decoder = new GZIPContentDecoder(); - ByteBuffer decoded = decoder.decode(ByteBuffer.wrap(bytes1)); - assertEquals(0, decoded.capacity()); - decoded = decoder.decode(ByteBuffer.wrap(bytes2)); - assertEquals(data, StandardCharsets.UTF_8.decode(decoded).toString()); - } - - @Test - public void testTwoSmallBlocks() throws Exception - { - String data1 = "0"; - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - GZIPOutputStream output = new GZIPOutputStream(baos); - output.write(data1.getBytes(StandardCharsets.UTF_8)); - output.close(); - byte[] bytes1 = baos.toByteArray(); - - String data2 = "1"; - baos = new ByteArrayOutputStream(); - output = new GZIPOutputStream(baos); - output.write(data2.getBytes(StandardCharsets.UTF_8)); - output.close(); - byte[] bytes2 = baos.toByteArray(); - - byte[] bytes = new byte[bytes1.length + bytes2.length]; - System.arraycopy(bytes1, 0, bytes, 0, bytes1.length); - System.arraycopy(bytes2, 0, bytes, bytes1.length, bytes2.length); - - GZIPContentDecoder decoder = new GZIPContentDecoder(); - ByteBuffer buffer = ByteBuffer.wrap(bytes); - ByteBuffer decoded = decoder.decode(buffer); - assertEquals(data1, StandardCharsets.UTF_8.decode(decoded).toString()); - assertTrue(decoder.isFinished()); - assertTrue(buffer.hasRemaining()); - decoded = decoder.decode(buffer); - assertEquals(data2, StandardCharsets.UTF_8.decode(decoded).toString()); - assertTrue(decoder.isFinished()); - assertFalse(buffer.hasRemaining()); - } - - @Test - public void testBigBlock() throws Exception - { - String data = "0123456789ABCDEF"; - for (int i = 0; i < 10; ++i) - data += data; - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - GZIPOutputStream output = new GZIPOutputStream(baos); - output.write(data.getBytes(StandardCharsets.UTF_8)); - output.close(); - byte[] bytes = baos.toByteArray(); - - String result = ""; - GZIPContentDecoder decoder = new GZIPContentDecoder(); - ByteBuffer buffer = ByteBuffer.wrap(bytes); - while (buffer.hasRemaining()) - { - ByteBuffer decoded = decoder.decode(buffer); - result += StandardCharsets.UTF_8.decode(decoded).toString(); - } - assertEquals(data, result); - } - - @Test - public void testBigBlockOneByteAtATime() throws Exception - { - String data = "0123456789ABCDEF"; - for (int i = 0; i < 10; ++i) - data += data; - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - GZIPOutputStream output = new GZIPOutputStream(baos); - output.write(data.getBytes(StandardCharsets.UTF_8)); - output.close(); - byte[] bytes = baos.toByteArray(); - - String result = ""; - GZIPContentDecoder decoder = new GZIPContentDecoder(64); - ByteBuffer buffer = ByteBuffer.wrap(bytes); - while (buffer.hasRemaining()) - { - ByteBuffer decoded = decoder.decode(ByteBuffer.wrap(new byte[]{buffer.get()})); - if (decoded.hasRemaining()) - result += StandardCharsets.UTF_8.decode(decoded).toString(); - } - assertEquals(data, result); - assertTrue(decoder.isFinished()); - } - - @Test - public void testBigBlockWithExtraBytes() throws Exception - { - String data1 = "0123456789ABCDEF"; - for (int i = 0; i < 10; ++i) - data1 += data1; - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - GZIPOutputStream output = new GZIPOutputStream(baos); - output.write(data1.getBytes(StandardCharsets.UTF_8)); - output.close(); - byte[] bytes1 = baos.toByteArray(); - - String data2 = "HELLO"; - byte[] bytes2 = data2.getBytes(StandardCharsets.UTF_8); - - byte[] bytes = new byte[bytes1.length + bytes2.length]; - System.arraycopy(bytes1, 0, bytes, 0, bytes1.length); - System.arraycopy(bytes2, 0, bytes, bytes1.length, bytes2.length); - - String result = ""; - GZIPContentDecoder decoder = new GZIPContentDecoder(64); - ByteBuffer buffer = ByteBuffer.wrap(bytes); - while (buffer.hasRemaining()) - { - ByteBuffer decoded = decoder.decode(buffer); - if (decoded.hasRemaining()) - result += StandardCharsets.UTF_8.decode(decoded).toString(); - if (decoder.isFinished()) - break; - } - assertEquals(data1, result); - assertTrue(buffer.hasRemaining()); - assertEquals(data2, StandardCharsets.UTF_8.decode(buffer).toString()); - } -} diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientGZIPTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientGZIPTest.java index 0e47e96617b..acd6232cec0 100644 --- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientGZIPTest.java +++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientGZIPTest.java @@ -18,29 +18,36 @@ package org.eclipse.jetty.client; -import static org.junit.jupiter.api.Assertions.assertArrayEquals; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertTrue; - import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InterruptedIOException; +import java.nio.charset.StandardCharsets; import java.util.Arrays; +import java.util.Random; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; import java.util.zip.GZIPOutputStream; -import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.eclipse.jetty.client.api.ContentResponse; +import org.eclipse.jetty.http.HttpHeader; +import org.eclipse.jetty.http.HttpStatus; +import org.eclipse.jetty.io.ByteBufferPool; +import org.eclipse.jetty.io.MappedByteBufferPool; import org.eclipse.jetty.server.Request; -import org.eclipse.jetty.server.handler.AbstractHandler; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.ArgumentsSource; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.lessThan; +import static org.junit.jupiter.api.Assertions.assertArrayEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.jupiter.api.Assumptions.assumeTrue; + public class HttpClientGZIPTest extends AbstractHttpClientServerTest { @ParameterizedTest @@ -48,12 +55,11 @@ public class HttpClientGZIPTest extends AbstractHttpClientServerTest public void testGZIPContentEncoding(Scenario scenario) throws Exception { final byte[] data = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; - start(scenario, new AbstractHandler() + start(scenario, new EmptyServerHandler() { @Override - public void handle(String target, org.eclipse.jetty.server.Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException + protected void service(String target, Request jettyRequest, HttpServletRequest request, HttpServletResponse response) throws IOException { - baseRequest.setHandled(true); response.setHeader("Content-Encoding", "gzip"); GZIPOutputStream gzipOutput = new GZIPOutputStream(response.getOutputStream()); gzipOutput.write(data); @@ -75,12 +81,11 @@ public class HttpClientGZIPTest extends AbstractHttpClientServerTest public void testGZIPContentOneByteAtATime(Scenario scenario) throws Exception { final byte[] data = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; - start(scenario, new AbstractHandler() + start(scenario, new EmptyServerHandler() { @Override - public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException + protected void service(String target, Request jettyRequest, HttpServletRequest request, HttpServletResponse response) throws IOException { - baseRequest.setHandled(true); response.setHeader("Content-Encoding", "gzip"); ByteArrayOutputStream gzipData = new ByteArrayOutputStream(); @@ -112,12 +117,11 @@ public class HttpClientGZIPTest extends AbstractHttpClientServerTest public void testGZIPContentSentTwiceInOneWrite(Scenario scenario) throws Exception { final byte[] data = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; - start(scenario, new AbstractHandler() + start(scenario, new EmptyServerHandler() { @Override - public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException + protected void service(String target, Request jettyRequest, HttpServletRequest request, HttpServletResponse response) throws IOException { - baseRequest.setHandled(true); response.setHeader("Content-Encoding", "gzip"); ByteArrayOutputStream gzipData = new ByteArrayOutputStream(); @@ -164,12 +168,11 @@ public class HttpClientGZIPTest extends AbstractHttpClientServerTest private void testGZIPContentFragmented(Scenario scenario, final int fragment) throws Exception { final byte[] data = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; - start(scenario, new AbstractHandler() + start(scenario, new EmptyServerHandler() { @Override - public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException + protected void service(String target, Request jettyRequest, HttpServletRequest request, HttpServletResponse response) throws IOException { - baseRequest.setHandled(true); response.setHeader("Content-Encoding", "gzip"); ByteArrayOutputStream gzipData = new ByteArrayOutputStream(); @@ -204,12 +207,11 @@ public class HttpClientGZIPTest extends AbstractHttpClientServerTest @ArgumentsSource(ScenarioProvider.class) public void testGZIPContentCorrupted(Scenario scenario) throws Exception { - start(scenario, new AbstractHandler() + start(scenario, new EmptyServerHandler() { @Override - public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException + protected void service(String target, Request jettyRequest, HttpServletRequest request, HttpServletResponse response) throws IOException { - baseRequest.setHandled(true); response.setHeader("Content-Encoding", "gzip"); // Not gzipped, will cause the client to blow up. response.getOutputStream().print("0123456789"); @@ -228,6 +230,46 @@ public class HttpClientGZIPTest extends AbstractHttpClientServerTest assertTrue(latch.await(5, TimeUnit.SECONDS)); } + @ParameterizedTest + @ArgumentsSource(ScenarioProvider.class) + public void testLargeGZIPContentDoesNotPolluteByteBufferPool(Scenario scenario) throws Exception + { + String digits = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; + Random random = new Random(); + byte[] content = new byte[1024 * 1024]; + for (int i = 0; i < content.length; ++i) + content[i] = (byte)digits.charAt(random.nextInt(digits.length())); + start(scenario, new EmptyServerHandler() + { + @Override + protected void service(String target, Request jettyRequest, HttpServletRequest request, HttpServletResponse response) throws IOException + { + response.setContentType("text/plain;charset=" + StandardCharsets.US_ASCII.name()); + response.setHeader(HttpHeader.CONTENT_ENCODING.asString(), "gzip"); + GZIPOutputStream gzip = new GZIPOutputStream(response.getOutputStream()); + gzip.write(content); + gzip.finish(); + } + }); + + ByteBufferPool pool = client.getByteBufferPool(); + assumeTrue(pool instanceof MappedByteBufferPool); + MappedByteBufferPool bufferPool = (MappedByteBufferPool)pool; + + ContentResponse response = client.newRequest("localhost", connector.getLocalPort()) + .scheme(scenario.getScheme()) + .timeout(5, TimeUnit.SECONDS) + .send(); + + assertEquals(HttpStatus.OK_200, response.getStatus()); + assertArrayEquals(content, response.getContent()); + + long directMemory = bufferPool.getMemory(true); + assertThat(directMemory, lessThan((long)content.length)); + long heapMemory = bufferPool.getMemory(false); + assertThat(heapMemory, lessThan((long)content.length)); + } + private static void sleep(long ms) throws IOException { try diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/GZIPContentDecoder.java b/jetty-http/src/main/java/org/eclipse/jetty/http/GZIPContentDecoder.java index e56bab22639..6ca334aba29 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/GZIPContentDecoder.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/GZIPContentDecoder.java @@ -18,7 +18,10 @@ package org.eclipse.jetty.http; +import java.nio.Buffer; import java.nio.ByteBuffer; +import java.util.ArrayList; +import java.util.List; import java.util.zip.DataFormatException; import java.util.zip.Inflater; import java.util.zip.ZipException; @@ -28,13 +31,13 @@ import org.eclipse.jetty.util.BufferUtil; import org.eclipse.jetty.util.component.Destroyable; /** - * Decoder for the "gzip" encoding. - *

- * A decoder that inflates gzip compressed data that has been - * optimized for async usage with minimal data copies. + *

Decoder for the "gzip" content encoding.

+ *

This decoder inflates gzip compressed data, and has + * been optimized for async usage with minimal data copies.

*/ public class GZIPContentDecoder implements Destroyable { + private final List _inflateds = new ArrayList<>(); private final Inflater _inflater = new Inflater(true); private final ByteBufferPool _pool; private final int _bufferSize; @@ -46,14 +49,14 @@ public class GZIPContentDecoder implements Destroyable public GZIPContentDecoder() { - this(null,2048); + this(null, 2048); } public GZIPContentDecoder(int bufferSize) { - this(null,bufferSize); + this(null, bufferSize); } - + public GZIPContentDecoder(ByteBufferPool pool, int bufferSize) { _bufferSize = bufferSize; @@ -61,68 +64,95 @@ public class GZIPContentDecoder implements Destroyable reset(); } - /** Inflate compressed data from a buffer. - * - * @param compressed Buffer containing compressed data. - * @return Buffer containing inflated data. + /** + *

Inflates compressed data from a buffer.

+ *

The buffers returned by this method should be released + * via {@link #release(ByteBuffer)}.

+ *

This method may fully consume the input buffer, but return + * only a chunk of the inflated bytes, to allow applications to + * consume the inflated chunk before performing further inflation, + * applying backpressure. In this case, this method should be + * invoked again with the same input buffer (even if + * it's already fully consumed) and that will produce another + * chunk of inflated bytes. Termination happens when the input + * buffer is fully consumed, and the returned buffer is empty.

+ *

See {@link #decodedChunk(ByteBuffer)} to perform inflating + * in a non-blocking way that allows to apply backpressure.

+ * + * @param compressed the buffer containing compressed data. + * @return a buffer containing inflated data. */ public ByteBuffer decode(ByteBuffer compressed) { decodeChunks(compressed); - if (BufferUtil.isEmpty(_inflated) || _state==State.CRC || _state==State.ISIZE ) - return BufferUtil.EMPTY_BUFFER; - - ByteBuffer result = _inflated; - _inflated = null; - return result; - } - /** Called when a chunk of data is inflated. - *

The default implementation aggregates all the chunks - * into a single buffer returned from {@link #decode(ByteBuffer)}. - * Derived implementations may choose to consume chunks individually - * and return false to prevent further inflation until a subsequent - * call to {@link #decode(ByteBuffer)} or {@link #decodeChunks(ByteBuffer)}. - * - * @param chunk The inflated chunk of data - * @return False if inflating should continue, or True if the call - * to {@link #decodeChunks(ByteBuffer)} or {@link #decode(ByteBuffer)} - * should return, allowing back pressure of compressed data. - */ - protected boolean decodedChunk(ByteBuffer chunk) - { - if (_inflated==null) + if (_inflateds.isEmpty()) { - _inflated=chunk; + if (BufferUtil.isEmpty(_inflated) || _state == State.CRC || _state == State.ISIZE) + return BufferUtil.EMPTY_BUFFER; + ByteBuffer result = _inflated; + _inflated = null; + return result; } else { - int size = _inflated.remaining() + chunk.remaining(); - if (size<=_inflated.capacity()) + _inflateds.add(_inflated); + _inflated = null; + int length = _inflateds.stream().mapToInt(Buffer::remaining).sum(); + ByteBuffer result = acquire(length); + for (ByteBuffer buffer : _inflateds) { - BufferUtil.append(_inflated,chunk); + BufferUtil.append(result, buffer); + release(buffer); + } + _inflateds.clear(); + return result; + } + } + + /** + *

Called when a chunk of data is inflated.

+ *

The default implementation aggregates all the chunks + * into a single buffer returned from {@link #decode(ByteBuffer)}.

+ *

Derived implementations may choose to consume inflated chunks + * individually and return {@code true} from this method to prevent + * further inflation until a subsequent call to {@link #decode(ByteBuffer)} + * or {@link #decodeChunks(ByteBuffer)} is made. + * + * @param chunk the inflated chunk of data + * @return false if inflating should continue, or true if the call + * to {@link #decodeChunks(ByteBuffer)} or {@link #decode(ByteBuffer)} + * should return, allowing to consume the inflated chunk and apply + * backpressure + */ + protected boolean decodedChunk(ByteBuffer chunk) + { + if (_inflated == null) + { + _inflated = chunk; + } + else + { + if (BufferUtil.space(_inflated) >= chunk.remaining()) + { + BufferUtil.append(_inflated, chunk); release(chunk); } else { - ByteBuffer bigger=acquire(size); - int pos=BufferUtil.flipToFill(bigger); - BufferUtil.put(_inflated,bigger); - BufferUtil.put(chunk,bigger); - BufferUtil.flipToFlush(bigger,pos); - release(_inflated); - release(chunk); - _inflated = bigger; + _inflateds.add(_inflated); + _inflated = chunk; } } return false; } /** - * Inflate compressed data. - *

Inflation continues until the compressed block end is reached, there is no - * more compressed data or a call to {@link #decodedChunk(ByteBuffer)} returns true. - * @param compressed Buffer of compressed data to inflate + *

Inflates compressed data.

+ *

Inflation continues until the compressed block end is reached, there is no + * more compressed data or a call to {@link #decodedChunk(ByteBuffer)} returns true.

+ * + * @param compressed the buffer of compressed data to inflate */ protected void decodeChunks(ByteBuffer compressed) { @@ -164,24 +194,24 @@ public class GZIPContentDecoder implements Destroyable } break; } - + case DATA: { while (true) { - if (buffer==null) + if (buffer == null) buffer = acquire(_bufferSize); - + try { - int length = _inflater.inflate(buffer.array(),buffer.arrayOffset(),buffer.capacity()); + int length = _inflater.inflate(buffer.array(), buffer.arrayOffset(), buffer.capacity()); buffer.limit(length); } catch (DataFormatException x) { throw new ZipException(x.getMessage()); } - + if (buffer.hasRemaining()) { ByteBuffer chunk = buffer; @@ -195,7 +225,7 @@ public class GZIPContentDecoder implements Destroyable return; if (compressed.hasArray()) { - _inflater.setInput(compressed.array(),compressed.arrayOffset()+compressed.position(),compressed.remaining()); + _inflater.setInput(compressed.array(), compressed.arrayOffset() + compressed.position(), compressed.remaining()); compressed.position(compressed.limit()); } else @@ -204,7 +234,7 @@ public class GZIPContentDecoder implements Destroyable byte[] input = new byte[compressed.remaining()]; compressed.get(input); _inflater.setInput(input); - } + } } else if (_inflater.finished()) { @@ -218,14 +248,14 @@ public class GZIPContentDecoder implements Destroyable } continue; } - + default: break; } - + if (!compressed.hasRemaining()) break; - + byte currByte = compressed.get(); switch (_state) { @@ -354,7 +384,7 @@ public class GZIPContentDecoder implements Destroyable // TODO ByteBuffer result = output == null ? BufferUtil.EMPTY_BUFFER : ByteBuffer.wrap(output); reset(); - return ; + return; } break; } @@ -369,7 +399,7 @@ public class GZIPContentDecoder implements Destroyable } finally { - if (buffer!=null) + if (buffer != null) release(buffer); } } @@ -398,28 +428,28 @@ public class GZIPContentDecoder implements Destroyable { INITIAL, ID, CM, FLG, MTIME, XFL, OS, FLAGS, EXTRA_LENGTH, EXTRA, NAME, COMMENT, HCRC, DATA, CRC, ISIZE } - + /** - * @param capacity capacity capacity of the allocated ByteBuffer - * @return An indirect buffer of the configured buffersize either from the pool or freshly allocated. + * @param capacity capacity of the ByteBuffer to acquire + * @return a heap buffer of the configured capacity either from the pool or freshly allocated. */ public ByteBuffer acquire(int capacity) { - return _pool==null?BufferUtil.allocate(capacity):_pool.acquire(capacity,false); + return _pool == null ? BufferUtil.allocate(capacity) : _pool.acquire(capacity, false); } - + /** - * Release an allocated buffer. - *

This method will called {@link ByteBufferPool#release(ByteBuffer)} if a buffer pool has - * been configured. This method should be called once for all buffers returned from {@link #decode(ByteBuffer)} - * or passed to {@link #decodedChunk(ByteBuffer)}. - * @param buffer The buffer to release. + *

Releases an allocated buffer.

+ *

This method calls {@link ByteBufferPool#release(ByteBuffer)} if a buffer pool has + * been configured.

+ *

This method should be called once for all buffers returned from {@link #decode(ByteBuffer)} + * or passed to {@link #decodedChunk(ByteBuffer)}.

+ * + * @param buffer the buffer to release. */ public void release(ByteBuffer buffer) { - @SuppressWarnings("ReferenceEquality") - boolean isTheEmptyBuffer = (buffer==BufferUtil.EMPTY_BUFFER); - if (_pool!=null && !isTheEmptyBuffer) + if (_pool != null && !BufferUtil.isTheEmptyBuffer(buffer)) _pool.release(buffer); } } diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/GZIPContentDecoderTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/GZIPContentDecoderTest.java index b5dea752126..46b22aa36b3 100644 --- a/jetty-http/src/test/java/org/eclipse/jetty/http/GZIPContentDecoderTest.java +++ b/jetty-http/src/test/java/org/eclipse/jetty/http/GZIPContentDecoderTest.java @@ -18,10 +18,6 @@ package org.eclipse.jetty.http; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertTrue; - import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.nio.ByteBuffer; @@ -35,52 +31,55 @@ import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; public class GZIPContentDecoderTest { - ArrayByteBufferPool pool; - AtomicInteger buffers = new AtomicInteger(0); - + private ArrayByteBufferPool pool; + private AtomicInteger buffers = new AtomicInteger(0); + @BeforeEach - public void beforeClass() throws Exception + public void before() { buffers.set(0); pool = new ArrayByteBufferPool() + { + + @Override + public ByteBuffer acquire(int size, boolean direct) { + buffers.incrementAndGet(); + return super.acquire(size, direct); + } - @Override - public ByteBuffer acquire(int size, boolean direct) - { - buffers.incrementAndGet(); - return super.acquire(size,direct); - } + @Override + public void release(ByteBuffer buffer) + { + buffers.decrementAndGet(); + super.release(buffer); + } - @Override - public void release(ByteBuffer buffer) - { - buffers.decrementAndGet(); - super.release(buffer); - } - - }; + }; } - + @AfterEach - public void afterClass() throws Exception + public void after() { - assertEquals(0,buffers.get()); + assertEquals(0, buffers.get()); } - + @Test - public void testCompresedContentFormat() throws Exception + public void testCompressedContentFormat() { - assertTrue(CompressedContentFormat.tagEquals("tag","tag")); - assertTrue(CompressedContentFormat.tagEquals("\"tag\"","\"tag\"")); - assertTrue(CompressedContentFormat.tagEquals("\"tag\"","\"tag--gzip\"")); - assertFalse(CompressedContentFormat.tagEquals("Zag","Xag--gzip")); - assertFalse(CompressedContentFormat.tagEquals("xtag","tag")); + assertTrue(CompressedContentFormat.tagEquals("tag", "tag")); + assertTrue(CompressedContentFormat.tagEquals("\"tag\"", "\"tag\"")); + assertTrue(CompressedContentFormat.tagEquals("\"tag\"", "\"tag--gzip\"")); + assertFalse(CompressedContentFormat.tagEquals("Zag", "Xag--gzip")); + assertFalse(CompressedContentFormat.tagEquals("xtag", "tag")); } - + @Test public void testStreamNoBlocks() throws Exception { @@ -122,7 +121,7 @@ public class GZIPContentDecoderTest output.close(); byte[] bytes = baos.toByteArray(); - GZIPContentDecoder decoder = new GZIPContentDecoder(pool,2048); + GZIPContentDecoder decoder = new GZIPContentDecoder(pool, 2048); ByteBuffer decoded = decoder.decode(ByteBuffer.wrap(bytes)); assertEquals(0, decoded.remaining()); } @@ -138,7 +137,7 @@ public class GZIPContentDecoderTest output.close(); byte[] bytes = baos.toByteArray(); - GZIPContentDecoder decoder = new GZIPContentDecoder(pool,2048); + GZIPContentDecoder decoder = new GZIPContentDecoder(pool, 2048); ByteBuffer decoded = decoder.decode(ByteBuffer.wrap(bytes)); assertEquals(data, StandardCharsets.UTF_8.decode(decoded).toString()); decoder.release(decoded); @@ -161,7 +160,7 @@ public class GZIPContentDecoderTest byte[] bytes2 = new byte[bytes.length - bytes1.length]; System.arraycopy(bytes, bytes1.length, bytes2, 0, bytes2.length); - GZIPContentDecoder decoder = new GZIPContentDecoder(pool,2048); + GZIPContentDecoder decoder = new GZIPContentDecoder(pool, 2048); ByteBuffer decoded = decoder.decode(ByteBuffer.wrap(bytes1)); assertEquals(0, decoded.capacity()); decoded = decoder.decode(ByteBuffer.wrap(bytes2)); @@ -186,7 +185,7 @@ public class GZIPContentDecoderTest byte[] bytes2 = new byte[bytes.length - bytes1.length]; System.arraycopy(bytes, bytes1.length, bytes2, 0, bytes2.length); - GZIPContentDecoder decoder = new GZIPContentDecoder(pool,2048); + GZIPContentDecoder decoder = new GZIPContentDecoder(pool, 2048); ByteBuffer decoded = decoder.decode(ByteBuffer.wrap(bytes1)); assertEquals(data, StandardCharsets.UTF_8.decode(decoded).toString()); assertFalse(decoder.isFinished()); @@ -214,7 +213,7 @@ public class GZIPContentDecoderTest byte[] bytes2 = new byte[bytes.length - bytes1.length]; System.arraycopy(bytes, bytes1.length, bytes2, 0, bytes2.length); - GZIPContentDecoder decoder = new GZIPContentDecoder(pool,2048); + GZIPContentDecoder decoder = new GZIPContentDecoder(pool, 2048); ByteBuffer decoded = decoder.decode(ByteBuffer.wrap(bytes1)); assertEquals(0, decoded.capacity()); decoder.release(decoded); @@ -244,7 +243,7 @@ public class GZIPContentDecoderTest System.arraycopy(bytes1, 0, bytes, 0, bytes1.length); System.arraycopy(bytes2, 0, bytes, bytes1.length, bytes2.length); - GZIPContentDecoder decoder = new GZIPContentDecoder(pool,2048); + GZIPContentDecoder decoder = new GZIPContentDecoder(pool, 2048); ByteBuffer buffer = ByteBuffer.wrap(bytes); ByteBuffer decoded = decoder.decode(buffer); assertEquals(data1, StandardCharsets.UTF_8.decode(decoded).toString()); @@ -271,7 +270,7 @@ public class GZIPContentDecoderTest byte[] bytes = baos.toByteArray(); String result = ""; - GZIPContentDecoder decoder = new GZIPContentDecoder(pool,2048); + GZIPContentDecoder decoder = new GZIPContentDecoder(pool, 2048); ByteBuffer buffer = ByteBuffer.wrap(bytes); while (buffer.hasRemaining()) { diff --git a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AsyncMiddleManServlet.java b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AsyncMiddleManServlet.java index f1e29d97568..da71e6c32fe 100644 --- a/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AsyncMiddleManServlet.java +++ b/jetty-proxy/src/main/java/org/eclipse/jetty/proxy/AsyncMiddleManServlet.java @@ -24,6 +24,7 @@ import java.io.OutputStream; import java.nio.ByteBuffer; import java.util.ArrayDeque; import java.util.ArrayList; +import java.util.Collections; import java.util.List; import java.util.Queue; import java.util.concurrent.TimeUnit; @@ -41,12 +42,14 @@ import javax.servlet.http.HttpServletResponse; import org.eclipse.jetty.client.ContentDecoder; import org.eclipse.jetty.client.GZIPContentDecoder; +import org.eclipse.jetty.client.HttpClient; import org.eclipse.jetty.client.api.Request; import org.eclipse.jetty.client.api.Response; import org.eclipse.jetty.client.api.Result; import org.eclipse.jetty.client.util.DeferredContentProvider; import org.eclipse.jetty.http.HttpHeader; import org.eclipse.jetty.http.HttpVersion; +import org.eclipse.jetty.io.ByteBufferPool; import org.eclipse.jetty.io.RuntimeIOException; import org.eclipse.jetty.util.BufferUtil; import org.eclipse.jetty.util.Callback; @@ -275,7 +278,7 @@ public class AsyncMiddleManServlet extends AbstractProxyServlet } @Override - public void onDataAvailable() throws IOException + public void onDataAvailable() { iterate(); } @@ -370,9 +373,8 @@ public class AsyncMiddleManServlet extends AbstractProxyServlet if (size > 0) { CountingCallback counter = new CountingCallback(callback, size); - for (int i = 0; i < size; ++i) + for (ByteBuffer buffer : buffers) { - ByteBuffer buffer = buffers.get(i); newContentBytes += buffer.remaining(); provider.offer(buffer, counter); } @@ -476,9 +478,8 @@ public class AsyncMiddleManServlet extends AbstractProxyServlet if (size > 0) { Callback counter = size == 1 ? callback : new CountingCallback(callback, size); - for (int i = 0; i < size; ++i) + for (ByteBuffer buffer : buffers) { - ByteBuffer buffer = buffers.get(i); newContentBytes += buffer.remaining(); proxyWriter.offer(buffer, counter); } @@ -540,9 +541,8 @@ public class AsyncMiddleManServlet extends AbstractProxyServlet if (size > 0) { Callback callback = size == 1 ? complete : new CountingCallback(complete, size); - for (int i = 0; i < size; ++i) + for (ByteBuffer buffer : buffers) { - ByteBuffer buffer = buffers.get(i); newContentBytes += buffer.remaining(); proxyWriter.offer(buffer, callback); } @@ -686,7 +686,7 @@ public class AsyncMiddleManServlet extends AbstractProxyServlet /** *

Allows applications to transform upstream and downstream content.

*

Typical use cases of transformations are URL rewriting of HTML anchors - * (where the value of the href attribute of <a> elements + * (where the value of the {@code href} attribute of <a> elements * is modified by the proxy), field renaming of JSON documents, etc.

*

Applications should override {@link #newClientRequestContentTransformer(HttpServletRequest, Request)} * and/or {@link #newServerResponseContentTransformer(HttpServletRequest, HttpServletResponse, Response)} @@ -762,16 +762,23 @@ public class AsyncMiddleManServlet extends AbstractProxyServlet private static final Logger logger = Log.getLogger(GZIPContentTransformer.class); private final List buffers = new ArrayList<>(2); - private final ContentDecoder decoder = new GZIPContentDecoder(); private final ContentTransformer transformer; + private final ContentDecoder decoder; private final ByteArrayOutputStream out; private final GZIPOutputStream gzipOut; public GZIPContentTransformer(ContentTransformer transformer) + { + this(null, transformer); + } + + public GZIPContentTransformer(HttpClient httpClient, ContentTransformer transformer) { try { this.transformer = transformer; + ByteBufferPool byteBufferPool = httpClient == null ? null : httpClient.getByteBufferPool(); + this.decoder = new GZIPContentDecoder(byteBufferPool, GZIPContentDecoder.DEFAULT_BUFFER_SIZE); this.out = new ByteArrayOutputStream(); this.gzipOut = new GZIPOutputStream(out); } @@ -787,6 +794,7 @@ public class AsyncMiddleManServlet extends AbstractProxyServlet if (logger.isDebugEnabled()) logger.debug("Ungzipping {} bytes, finished={}", input.remaining(), finished); + List decodeds = Collections.emptyList(); if (!input.hasRemaining()) { if (finished) @@ -794,14 +802,19 @@ public class AsyncMiddleManServlet extends AbstractProxyServlet } else { - while (input.hasRemaining()) + decodeds = new ArrayList<>(); + while (true) { ByteBuffer decoded = decoder.decode(input); - boolean complete = finished && !input.hasRemaining(); + decodeds.add(decoded); + boolean decodeComplete = !input.hasRemaining() && !decoded.hasRemaining(); + boolean complete = finished && decodeComplete; if (logger.isDebugEnabled()) logger.debug("Ungzipped {} bytes, complete={}", decoded.remaining(), complete); if (decoded.hasRemaining() || complete) transformer.transform(decoded, complete, buffers); + if (decodeComplete) + break; } } @@ -811,6 +824,8 @@ public class AsyncMiddleManServlet extends AbstractProxyServlet buffers.clear(); output.add(result); } + + decodeds.forEach(decoder::release); } private ByteBuffer gzip(List buffers, boolean finished) throws IOException diff --git a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/AsyncMiddleManServletTest.java b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/AsyncMiddleManServletTest.java index f273fc262f1..2efd189a993 100644 --- a/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/AsyncMiddleManServletTest.java +++ b/jetty-proxy/src/test/java/org/eclipse/jetty/proxy/AsyncMiddleManServletTest.java @@ -18,13 +18,6 @@ package org.eclipse.jetty.proxy; -import static org.junit.jupiter.api.Assertions.assertArrayEquals; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertNull; -import static org.junit.jupiter.api.Assertions.assertTrue; - import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; @@ -62,7 +55,6 @@ import org.eclipse.jetty.client.api.ContentProvider; import org.eclipse.jetty.client.api.ContentResponse; import org.eclipse.jetty.client.api.Request; import org.eclipse.jetty.client.api.Response; -import org.eclipse.jetty.client.api.Result; import org.eclipse.jetty.client.util.BytesContentProvider; import org.eclipse.jetty.client.util.DeferredContentProvider; import org.eclipse.jetty.client.util.FutureResponseListener; @@ -87,10 +79,16 @@ import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.util.log.StacklessLogging; import org.eclipse.jetty.util.thread.QueuedThreadPool; import org.junit.jupiter.api.AfterEach; - import org.junit.jupiter.api.Test; import org.junit.jupiter.api.condition.OS; +import static org.junit.jupiter.api.Assertions.assertArrayEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertNull; +import static org.junit.jupiter.api.Assertions.assertTrue; + public class AsyncMiddleManServletTest { private static final Logger LOG = Log.getLogger(AsyncMiddleManServletTest.class); @@ -120,7 +118,7 @@ public class AsyncMiddleManServletTest private void startProxy(AsyncMiddleManServlet proxyServlet) throws Exception { - startProxy(proxyServlet, new HashMap()); + startProxy(proxyServlet, new HashMap<>()); } private void startProxy(AsyncMiddleManServlet proxyServlet, Map initParams) throws Exception @@ -144,8 +142,8 @@ public class AsyncMiddleManServletTest proxyContext.addServlet(proxyServletHolder, "/*"); proxy.start(); - - stackless=new StacklessLogging(proxyServlet._log); + + stackless = new StacklessLogging(proxyServlet._log); } private void startClient() throws Exception @@ -219,7 +217,7 @@ public class AsyncMiddleManServletTest @Override protected ContentTransformer newClientRequestContentTransformer(HttpServletRequest clientRequest, Request proxyRequest) { - return new GZIPContentTransformer(ContentTransformer.IDENTITY); + return new GZIPContentTransformer(getHttpClient(), ContentTransformer.IDENTITY); } }); startClient(); @@ -247,7 +245,7 @@ public class AsyncMiddleManServletTest startServer(new HttpServlet() { @Override - protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + protected void service(HttpServletRequest request, HttpServletResponse response) throws IOException { response.setHeader(HttpHeader.CONTENT_ENCODING.asString(), "gzip"); response.getOutputStream().write(gzipBytes); @@ -318,7 +316,7 @@ public class AsyncMiddleManServletTest startServer(new HttpServlet() { @Override - protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + protected void service(HttpServletRequest request, HttpServletResponse response) throws IOException { response.setHeader(HttpHeader.CONTENT_ENCODING.asString(), "gzip"); @@ -412,7 +410,7 @@ public class AsyncMiddleManServletTest startServer(new HttpServlet() { @Override - protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + protected void service(HttpServletRequest request, HttpServletResponse response) throws IOException { response.setHeader(HttpHeader.CONTENT_ENCODING.asString(), "gzip"); @@ -454,7 +452,7 @@ public class AsyncMiddleManServletTest startServer(new HttpServlet() { @Override - protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + protected void service(HttpServletRequest request, HttpServletResponse response) throws IOException { // decode input stream thru gzip ByteArrayOutputStream bos = new ByteArrayOutputStream(); @@ -500,13 +498,9 @@ public class AsyncMiddleManServletTest @Override protected ContentTransformer newClientRequestContentTransformer(HttpServletRequest clientRequest, Request proxyRequest) { - return new ContentTransformer() + return (input, finished, output) -> { - @Override - public void transform(ByteBuffer input, boolean finished, List output) throws IOException - { - throw new NullPointerException("explicitly_thrown_by_test"); - } + throw new NullPointerException("explicitly_thrown_by_test"); }; } }); @@ -537,7 +531,7 @@ public class AsyncMiddleManServletTest private int count; @Override - public void transform(ByteBuffer input, boolean finished, List output) throws IOException + public void transform(ByteBuffer input, boolean finished, List output) { if (++count < 2) output.add(input); @@ -552,16 +546,12 @@ public class AsyncMiddleManServletTest final CountDownLatch latch = new CountDownLatch(1); DeferredContentProvider content = new DeferredContentProvider(); client.newRequest("localhost", serverConnector.getLocalPort()) - .content(content) - .send(new Response.CompleteListener() - { - @Override - public void onComplete(Result result) - { - if (result.isSucceeded() && result.getResponse().getStatus() == 502) - latch.countDown(); - } - }); + .content(content) + .send(result -> + { + if (result.isSucceeded() && result.getResponse().getStatus() == 502) + latch.countDown(); + }); content.offer(ByteBuffer.allocate(512)); sleep(1000); @@ -578,7 +568,7 @@ public class AsyncMiddleManServletTest testDownstreamTransformationThrows(new HttpServlet() { @Override - protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + protected void service(HttpServletRequest request, HttpServletResponse response) throws IOException { // To trigger the test failure we need that onContent() // is called twice, so the second time the test throws. @@ -597,7 +587,7 @@ public class AsyncMiddleManServletTest testDownstreamTransformationThrows(new HttpServlet() { @Override - protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + protected void service(HttpServletRequest request, HttpServletResponse response) throws IOException { // To trigger the test failure we need that onContent() // is called only once, so the the test throws from onSuccess(). @@ -621,7 +611,7 @@ public class AsyncMiddleManServletTest private int count; @Override - public void transform(ByteBuffer input, boolean finished, List output) throws IOException + public void transform(ByteBuffer input, boolean finished, List output) { if (++count < 2) output.add(input); @@ -660,7 +650,7 @@ public class AsyncMiddleManServletTest startServer(new HttpServlet() { @Override - protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + protected void service(HttpServletRequest request, HttpServletResponse response) throws IOException { OutputStream output = response.getOutputStream(); if (gzipped) @@ -694,25 +684,17 @@ public class AsyncMiddleManServletTest final CountDownLatch latch = new CountDownLatch(1); client.newRequest("localhost", serverConnector.getLocalPort()) - .onResponseContent(new Response.ContentListener() + .onResponseContent((response, content) -> { - @Override - public void onContent(Response response, ByteBuffer content) - { - // Slow down the reader so that the - // write from the proxy gets congested. - sleep(1); - } + // Slow down the reader so that the + // write from the proxy gets congested. + sleep(1); }) - .send(new Response.CompleteListener() + .send(result -> { - @Override - public void onComplete(Result result) - { - assertTrue(result.isSucceeded()); - assertEquals(200, result.getResponse().getStatus()); - latch.countDown(); - } + assertTrue(result.isSucceeded()); + assertEquals(200, result.getResponse().getStatus()); + latch.countDown(); }); assertTrue(latch.await(15, TimeUnit.SECONDS)); @@ -724,7 +706,7 @@ public class AsyncMiddleManServletTest startServer(new HttpServlet() { @Override - protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + protected void service(HttpServletRequest request, HttpServletResponse response) throws IOException { byte[] chunk = new byte[1024]; int contentLength = 2 * chunk.length; @@ -741,14 +723,10 @@ public class AsyncMiddleManServletTest @Override protected ContentTransformer newServerResponseContentTransformer(HttpServletRequest clientRequest, HttpServletResponse proxyResponse, Response serverResponse) { - return new ContentTransformer() + return (input, finished, output) -> { - @Override - public void transform(ByteBuffer input, boolean finished, List output) throws IOException - { - if (!finished) - output.add(input); - } + if (!finished) + output.add(input); }; } }); @@ -779,15 +757,11 @@ public class AsyncMiddleManServletTest DeferredContentProvider content = new DeferredContentProvider(); client.newRequest("localhost", serverConnector.getLocalPort()) .content(content) - .send(new Response.CompleteListener() + .send(result -> { - @Override - public void onComplete(Result result) - { - System.err.println(result); - if (result.getResponse().getStatus() == 500) - latch.countDown(); - } + System.err.println(result); + if (result.getResponse().getStatus() == 500) + latch.countDown(); }); content.offer(ByteBuffer.allocate(512)); sleep(1000); @@ -821,16 +795,12 @@ public class AsyncMiddleManServletTest final CountDownLatch latch = new CountDownLatch(1); DeferredContentProvider content = new DeferredContentProvider(); client.newRequest("localhost", serverConnector.getLocalPort()) - .content(content) - .send(new Response.CompleteListener() - { - @Override - public void onComplete(Result result) - { - if (result.getResponse().getStatus() == 502) - latch.countDown(); - } - }); + .content(content) + .send(result -> + { + if (result.getResponse().getStatus() == 502) + latch.countDown(); + }); content.offer(ByteBuffer.allocate(512)); sleep(1000); content.offer(ByteBuffer.allocate(512)); @@ -857,7 +827,7 @@ public class AsyncMiddleManServletTest startServer(new HttpServlet() { @Override - protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + protected void service(HttpServletRequest request, HttpServletResponse response) throws IOException { ServletOutputStream output = response.getOutputStream(); output.write(new byte[512]); @@ -898,7 +868,7 @@ public class AsyncMiddleManServletTest startServer(new HttpServlet() { @Override - protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + protected void service(HttpServletRequest request, HttpServletResponse response) throws IOException { response.getOutputStream().write(json.getBytes(StandardCharsets.UTF_8)); } @@ -916,7 +886,7 @@ public class AsyncMiddleManServletTest { InputStream input = source.getInputStream(); @SuppressWarnings("unchecked") - Map obj = (Map)JSON.parse(new InputStreamReader(input, "UTF-8")); + Map obj = (Map)JSON.parse(new InputStreamReader(input, StandardCharsets.UTF_8)); // Transform the object. obj.put(key2, obj.remove(key1)); try (OutputStream output = sink.getOutputStream()) @@ -961,7 +931,7 @@ public class AsyncMiddleManServletTest startServer(new HttpServlet() { @Override - protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + protected void service(HttpServletRequest request, HttpServletResponse response) throws IOException { // Write the content in two chunks. int chunk = data.length / 2; @@ -1021,7 +991,7 @@ public class AsyncMiddleManServletTest startServer(new HttpServlet() { @Override - protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + protected void service(HttpServletRequest request, HttpServletResponse response) throws IOException { response.getOutputStream().write(json.getBytes(StandardCharsets.UTF_8)); } @@ -1041,7 +1011,7 @@ public class AsyncMiddleManServletTest { InputStream input = source.getInputStream(); @SuppressWarnings("unchecked") - Map obj = (Map)JSON.parse(new InputStreamReader(input, "UTF-8")); + Map obj = (Map)JSON.parse(new InputStreamReader(input, StandardCharsets.UTF_8)); // Transform the object. obj.put(key2, obj.remove(key1)); try (OutputStream output = sink.getOutputStream()) @@ -1080,7 +1050,7 @@ public class AsyncMiddleManServletTest } // File deletion is delayed on windows, testing for deletion is not going to work - if(!OS.WINDOWS.isCurrentOs()) + if (!OS.WINDOWS.isCurrentOs()) { try (DirectoryStream paths = Files.newDirectoryStream(targetTestsDir, outputPrefix + "*.*")) { @@ -1097,7 +1067,7 @@ public class AsyncMiddleManServletTest startServer(new HttpServlet() { @Override - protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + protected void service(HttpServletRequest request, HttpServletResponse response) throws IOException { IO.copy(request.getInputStream(), IO.getNullStream()); } @@ -1163,7 +1133,7 @@ public class AsyncMiddleManServletTest startServer(new HttpServlet() { @Override - protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + protected void service(HttpServletRequest request, HttpServletResponse response) throws IOException { response.setHeader(HttpHeader.CONNECTION.asString(), HttpHeaderValue.CLOSE.asString()); response.setContentLength(2); @@ -1237,7 +1207,7 @@ public class AsyncMiddleManServletTest startServer(new HttpServlet() { @Override - protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + protected void service(HttpServletRequest request, HttpServletResponse response) throws IOException { response.getOutputStream().write(json.getBytes(StandardCharsets.UTF_8)); } @@ -1260,7 +1230,7 @@ public class AsyncMiddleManServletTest if (readSource) { InputStream input = source.getInputStream(); - JSON.parse(new InputStreamReader(input, "UTF-8")); + JSON.parse(new InputStreamReader(input, StandardCharsets.UTF_8)); } // No transformation. return false; @@ -1289,7 +1259,7 @@ public class AsyncMiddleManServletTest startServer(new HttpServlet() { @Override - protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException + protected void service(HttpServletRequest request, HttpServletResponse response) { response.setStatus(HttpStatus.UNAUTHORIZED_401); response.setHeader(HttpHeader.WWW_AUTHENTICATE.asString(), "Basic realm=\"test\""); @@ -1304,7 +1274,7 @@ public class AsyncMiddleManServletTest return new AfterContentTransformer() { @Override - public boolean transform(Source source, Sink sink) throws IOException + public boolean transform(Source source, Sink sink) { transformed.set(true); return false; @@ -1433,7 +1403,7 @@ public class AsyncMiddleManServletTest private ByteBuffer buffer; @Override - public void transform(ByteBuffer input, boolean finished, List output) throws IOException + public void transform(ByteBuffer input, boolean finished, List output) { // Buffer only the first chunk. if (buffer == null) @@ -1495,7 +1465,7 @@ public class AsyncMiddleManServletTest startServer(new HttpServlet() { @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException + protected void doGet(HttpServletRequest req, HttpServletResponse resp) { if (req.getHeader("Via") != null) resp.addHeader(PROXIED_HEADER, "true"); @@ -1503,9 +1473,11 @@ public class AsyncMiddleManServletTest } }); final String proxyTo = "http://localhost:" + serverConnector.getLocalPort(); - AsyncMiddleManServlet proxyServlet = new AsyncMiddleManServlet.Transparent() { + AsyncMiddleManServlet proxyServlet = new AsyncMiddleManServlet.Transparent() + { @Override - protected ContentTransformer newServerResponseContentTransformer(HttpServletRequest clientRequest, HttpServletResponse proxyResponse, Response serverResponse) { + protected ContentTransformer newServerResponseContentTransformer(HttpServletRequest clientRequest, HttpServletResponse proxyResponse, Response serverResponse) + { return ContentTransformer.IDENTITY; } }; @@ -1689,7 +1661,7 @@ public class AsyncMiddleManServletTest private final List buffers = new ArrayList<>(); @Override - public void transform(ByteBuffer input, boolean finished, List output) throws IOException + public void transform(ByteBuffer input, boolean finished, List output) { if (input.hasRemaining()) { @@ -1715,7 +1687,7 @@ public class AsyncMiddleManServletTest private StringBuilder head = new StringBuilder(); @Override - public void transform(ByteBuffer input, boolean finished, List output) throws IOException + public void transform(ByteBuffer input, boolean finished, List output) { if (input.hasRemaining() && head != null) { @@ -1723,12 +1695,12 @@ public class AsyncMiddleManServletTest if (lnPos == -1) { // no linefeed found, copy it all - copyHeadBytes(input,input.limit()); + copyHeadBytes(input, input.limit()); } else { // found linefeed - copyHeadBytes(input,lnPos); + copyHeadBytes(input, lnPos); output.addAll(getHeadBytes()); // mark head as sent head = null; @@ -1764,7 +1736,7 @@ public class AsyncMiddleManServletTest private List getHeadBytes() { - ByteBuffer buf = BufferUtil.toBuffer(head.toString(),StandardCharsets.UTF_8); + ByteBuffer buf = BufferUtil.toBuffer(head.toString(), StandardCharsets.UTF_8); return Collections.singletonList(buf); } } @@ -1772,7 +1744,7 @@ public class AsyncMiddleManServletTest private static class DiscardContentTransformer implements AsyncMiddleManServlet.ContentTransformer { @Override - public void transform(ByteBuffer input, boolean finished, List output) throws IOException + public void transform(ByteBuffer input, boolean finished, List output) { } } From f5b3ddc1a56c348b5896056422dedac7d2ddc353 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Thu, 28 Feb 2019 16:10:46 -0500 Subject: [PATCH 326/931] Adding optionalRemoteDebug feature to test-jetty-osgi --- .../TestJettyOSGiBootWithAnnotations.java | 14 +++++------ .../eclipse/jetty/osgi/test/TestOSGiUtil.java | 24 +++++++++++-------- 2 files changed, 21 insertions(+), 17 deletions(-) diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithAnnotations.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithAnnotations.java index 498161830a0..70a4cb0abdc 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithAnnotations.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootWithAnnotations.java @@ -18,15 +18,8 @@ package org.eclipse.jetty.osgi.test; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; -import static org.ops4j.pax.exam.CoreOptions.mavenBundle; -import static org.ops4j.pax.exam.CoreOptions.systemProperty; - import java.util.ArrayList; import java.util.List; - import javax.inject.Inject; import org.eclipse.jetty.client.HttpClient; @@ -41,6 +34,12 @@ import org.ops4j.pax.exam.Option; import org.ops4j.pax.exam.junit.PaxExam; import org.osgi.framework.BundleContext; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; +import static org.ops4j.pax.exam.CoreOptions.mavenBundle; +import static org.ops4j.pax.exam.CoreOptions.systemProperty; + /** * Pax-Exam to make sure the jetty-osgi-boot can be started along with the * httpservice web-bundle. Then make sure we can deploy an OSGi service on the @@ -59,6 +58,7 @@ public class TestJettyOSGiBootWithAnnotations public static Option[] configure() { ArrayList