reduce usage of Guava (#5038) Signed-off-by: Maxim Nesen <maxim.nesen@oracle.com>
diff --git a/connectors/apache-connector/pom.xml b/connectors/apache-connector/pom.xml index dd13cbc..12e882b 100644 --- a/connectors/apache-connector/pom.xml +++ b/connectors/apache-connector/pom.xml
@@ -1,7 +1,7 @@ <?xml version="1.0"?> <!-- - Copyright (c) 2011, 2021 Oracle and/or its affiliates. All rights reserved. + Copyright (c) 2011, 2022 Oracle and/or its affiliates. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v. 2.0, which is available at @@ -55,11 +55,6 @@ <version>${project.version}</version> <scope>test</scope> </dependency> - <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - <scope>test</scope> - </dependency> </dependencies> <build>
diff --git a/connectors/apache5-connector/pom.xml b/connectors/apache5-connector/pom.xml index 669ac11..f790ec1 100644 --- a/connectors/apache5-connector/pom.xml +++ b/connectors/apache5-connector/pom.xml
@@ -55,11 +55,6 @@ <version>${project.version}</version> <scope>test</scope> </dependency> - <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - <scope>test</scope> - </dependency> </dependencies> <build>
diff --git a/connectors/jetty-connector/pom.xml b/connectors/jetty-connector/pom.xml index 4619c0c..4e33c50 100644 --- a/connectors/jetty-connector/pom.xml +++ b/connectors/jetty-connector/pom.xml
@@ -1,7 +1,7 @@ <?xml version="1.0"?> <!-- - Copyright (c) 2011, 2021 Oracle and/or its affiliates. All rights reserved. + Copyright (c) 2011, 2022 Oracle and/or its affiliates. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v. 2.0, which is available at @@ -66,11 +66,6 @@ <version>${project.version}</version> <scope>test</scope> </dependency> - <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - <scope>test</scope> - </dependency> </dependencies> <build>
diff --git a/connectors/netty-connector/pom.xml b/connectors/netty-connector/pom.xml index 877d377..7c1e3f3 100644 --- a/connectors/netty-connector/pom.xml +++ b/connectors/netty-connector/pom.xml
@@ -1,7 +1,7 @@ <?xml version="1.0"?> <!-- - Copyright (c) 2016, 2021 Oracle and/or its affiliates. All rights reserved. + Copyright (c) 2016, 2022 Oracle and/or its affiliates. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v. 2.0, which is available at @@ -49,11 +49,6 @@ <version>${project.version}</version> <scope>test</scope> </dependency> - <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - <scope>test</scope> - </dependency> </dependencies> <build>
diff --git a/containers/jdk-http/pom.xml b/containers/jdk-http/pom.xml index 111748a..5b95935 100644 --- a/containers/jdk-http/pom.xml +++ b/containers/jdk-http/pom.xml
@@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- - Copyright (c) 2010, 2021 Oracle and/or its affiliates. All rights reserved. + Copyright (c) 2010, 2022 Oracle and/or its affiliates. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v. 2.0, which is available at @@ -34,9 +34,10 @@ <dependencies> <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> <scope>test</scope> + <version>${commons.io.version}</version> </dependency> </dependencies>
diff --git a/containers/jdk-http/src/test/java/org/glassfish/jersey/jdkhttp/JdkHttpsServerTest.java b/containers/jdk-http/src/test/java/org/glassfish/jersey/jdkhttp/JdkHttpsServerTest.java index 042a383..e814720 100644 --- a/containers/jdk-http/src/test/java/org/glassfish/jersey/jdkhttp/JdkHttpsServerTest.java +++ b/containers/jdk-http/src/test/java/org/glassfish/jersey/jdkhttp/JdkHttpsServerTest.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2019 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2022 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0, which is available at @@ -30,6 +30,7 @@ import javax.net.ssl.SSLContext; import javax.net.ssl.SSLHandshakeException; +import org.apache.commons.io.IOUtils; import org.glassfish.jersey.SslConfigurator; import org.glassfish.jersey.internal.util.JdkVersion; import org.glassfish.jersey.server.ResourceConfig; @@ -37,8 +38,6 @@ import org.junit.After; import org.junit.Test; -import com.google.common.io.ByteStreams; - import com.sun.net.httpserver.HttpServer; import com.sun.net.httpserver.HttpsConfigurator; import com.sun.net.httpserver.HttpsServer; @@ -188,9 +187,9 @@ final SslConfigurator sslConfigClient = SslConfigurator.newInstance() - .trustStoreBytes(ByteStreams.toByteArray(trustStore)) + .trustStoreBytes(IOUtils.toByteArray(trustStore)) .trustStorePassword(TRUSTSTORE_CLIENT_PWD) - .keyStoreBytes(ByteStreams.toByteArray(keyStore)) + .keyStoreBytes(IOUtils.toByteArray(keyStore)) .keyPassword(KEYSTORE_CLIENT_PWD); return sslConfigClient.createSSLContext(); @@ -201,9 +200,9 @@ final InputStream keyStore = JdkHttpsServerTest.class.getResourceAsStream(KEYSTORE_SERVER_FILE); final SslConfigurator sslConfigServer = SslConfigurator.newInstance() - .keyStoreBytes(ByteStreams.toByteArray(keyStore)) + .keyStoreBytes(IOUtils.toByteArray(keyStore)) .keyPassword(KEYSTORE_SERVER_PWD) - .trustStoreBytes(ByteStreams.toByteArray(trustStore)) + .trustStoreBytes(IOUtils.toByteArray(trustStore)) .trustStorePassword(TRUSTSTORE_SERVER_PWD); return sslConfigServer.createSSLContext();
diff --git a/examples/rx-client-webapp/src/main/java/org/glassfish/jersey/examples/rx/agent/ListenableFutureAgentResource.java b/examples/rx-client-webapp/src/main/java/org/glassfish/jersey/examples/rx/agent/ListenableFutureAgentResource.java index 5cfbc45..df68d25 100644 --- a/examples/rx-client-webapp/src/main/java/org/glassfish/jersey/examples/rx/agent/ListenableFutureAgentResource.java +++ b/examples/rx-client-webapp/src/main/java/org/glassfish/jersey/examples/rx/agent/ListenableFutureAgentResource.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2014, 2019 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2014, 2022 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Distribution License v. 1.0, which is available at @@ -12,6 +12,8 @@ import java.util.Arrays; import java.util.List; +import java.util.concurrent.Executors; +import java.util.stream.Collectors; import javax.ws.rs.GET; import javax.ws.rs.Path; @@ -31,8 +33,6 @@ import org.glassfish.jersey.server.ManagedAsync; import org.glassfish.jersey.server.Uri; -import com.google.common.collect.Lists; -import com.google.common.util.concurrent.AsyncFunction; import com.google.common.util.concurrent.FutureCallback; import com.google.common.util.concurrent.Futures; import com.google.common.util.concurrent.ListenableFuture; @@ -80,7 +80,7 @@ public void onFailure(final Throwable t) { async.resume(t); } - }); + }, Executors.newSingleThreadExecutor()); } private ListenableFuture<AgentResponse> visited(final AgentResponse response) { @@ -97,11 +97,11 @@ }); // ... and set them to the final response. - return Futures.transform(visited, (AsyncFunction<List<Destination>, AgentResponse>) destinations -> { + return Futures.transform(visited, destinations -> { response.setVisited(destinations); - return Futures.immediateFuture(response); - }); + return response; + }, Executors.newSingleThreadExecutor()); } private ListenableFuture<AgentResponse> recommended(final AgentResponse response) { @@ -120,15 +120,14 @@ // ... transform them to Recommendation instances ... final ListenableFuture<List<Recommendation>> recommendations = Futures.transform( - destinations, - (AsyncFunction<List<Destination>, List<Recommendation>>) destinationList -> { + destinations, destinationList -> { // Create new array list to avoid multiple remote calls. - final List<Recommendation> recommendationList = Lists.newArrayList(Lists.transform( - destinationList, - destination -> new Recommendation(destination.getDestination(), null, 0))); + final List<Recommendation> recommendationList = destinationList.stream().map( + destination -> new Recommendation(destination.getDestination(), null, 0)) + .collect(Collectors.toList()); - return Futures.immediateFuture(recommendationList); - }); + return recommendationList; + }, Executors.newSingleThreadExecutor()); // ... add forecasts and calculations ... final ListenableFuture<List<List<Recommendation>>> filledRecommendations = Futures @@ -140,47 +139,51 @@ // ... and transform the list into agent response with filled recommendations. return Futures - .transform(filledRecommendations, (AsyncFunction<List<List<Recommendation>>, AgentResponse>) input -> { + .transform(filledRecommendations, input -> { response.setRecommended(input.get(0)); - return Futures.immediateFuture(response); - }); + return response; + }, Executors.newSingleThreadExecutor()); } private ListenableFuture<List<Recommendation>> forecasts(final ListenableFuture<List<Recommendation>> recommendations) { forecast.register(RxListenableFutureInvokerProvider.class); // Fill the list with weather forecast. - return Futures.transform(recommendations, (AsyncFunction<List<Recommendation>, List<Recommendation>>) list -> + return Futures.transform(recommendations, list -> // For each recommendation ... - Futures.successfulAsList(Lists.transform(list, recommendation -> Futures.transform( + (List<Recommendation>) Futures.successfulAsList(list.stream().map(recommendation -> Futures.transform( // ... get the weather forecast ... forecast.resolveTemplate("destination", recommendation.getDestination()).request() .rx(RxListenableFutureInvoker.class) .get(Forecast.class), // ... and set it to the recommendation. - (AsyncFunction<Forecast, Recommendation>) forecast -> { + forecast -> { recommendation.setForecast(forecast.getForecast()); - return Futures.immediateFuture(recommendation); - })))); + return recommendation; + }, + Executors.newSingleThreadExecutor())).collect(Collectors.toList())), + Executors.newSingleThreadExecutor()); } private ListenableFuture<List<Recommendation>> calculations(final ListenableFuture<List<Recommendation>> recommendations) { calculation.register(RxListenableFutureInvokerProvider.class); // Fill the list with price calculations. - return Futures.transform(recommendations, (AsyncFunction<List<Recommendation>, List<Recommendation>>) list -> + return Futures.transform(recommendations, list -> // For each recommendation ... - Futures.successfulAsList(Lists.transform(list, recommendation -> Futures.transform( + (List<Recommendation>) Futures.successfulAsList(list.stream().map(recommendation -> Futures.transform( // ... get the price calculation ... calculation.resolveTemplate("from", "Moon") .resolveTemplate("to", recommendation.getDestination()) .request().rx(RxListenableFutureInvoker.class).get(Calculation.class), // ... and set it to the recommendation. - (AsyncFunction<Calculation, Recommendation>) calculation -> { + calculation -> { recommendation.setPrice(calculation.getPrice()); - return Futures.immediateFuture(recommendation); - }))) + return recommendation; + }, + Executors.newSingleThreadExecutor())).collect(Collectors.toList())), + Executors.newSingleThreadExecutor() ); } }
diff --git a/ext/rx/rx-client-guava/pom.xml b/ext/rx/rx-client-guava/pom.xml index 48035da..bbd3f34 100644 --- a/ext/rx/rx-client-guava/pom.xml +++ b/ext/rx/rx-client-guava/pom.xml
@@ -1,7 +1,7 @@ <?xml version="1.0"?> <!-- - Copyright (c) 2014, 2021 Oracle and/or its affiliates. All rights reserved. + Copyright (c) 2014, 2022 Oracle and/or its affiliates. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v. 2.0, which is available at @@ -41,6 +41,7 @@ <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> + <version>${guava.version}</version> </dependency> </dependencies> </project>
diff --git a/pom.xml b/pom.xml index b03e3b2..dacd060 100644 --- a/pom.xml +++ b/pom.xml
@@ -1528,11 +1528,11 @@ <version>${jta.api.version}</version> </dependency> - <dependency> + <!--<dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>${guava.version}</version> - </dependency> + </dependency>--> <!-- The latest repackaged guava version is 18.0 --> <dependency> <groupId>org.glassfish.hk2</groupId> @@ -2108,6 +2108,7 @@ <bnd.plugin.version>2.3.6</bnd.plugin.version> <cdi.api.version>1.1</cdi.api.version> <cdi2.api.version>2.0.2</cdi2.api.version> + <commons.io.version>2.11.0</commons.io.version> <commons-lang3.version>3.3.2</commons-lang3.version> <microprofile.config.version>2.0</microprofile.config.version> <checkstyle.mvn.plugin.version>3.1.0</checkstyle.mvn.plugin.version> @@ -2121,7 +2122,7 @@ <gae.version>1.9.59</gae.version> <grizzly.client.version>1.16</grizzly.client.version> <grizzly2.version>2.4.4</grizzly2.version> - <guava.version>18.0</guava.version> + <guava.version>31.1-jre</guava.version> <hamcrest.version>1.3</hamcrest.version> <helidon.version>1.0.3</helidon.version> <xmlunit.version>1.6</xmlunit.version>
diff --git a/test-framework/maven/container-runner-maven-plugin/pom.xml b/test-framework/maven/container-runner-maven-plugin/pom.xml index 132a5df..5ec2c34 100644 --- a/test-framework/maven/container-runner-maven-plugin/pom.xml +++ b/test-framework/maven/container-runner-maven-plugin/pom.xml
@@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- - Copyright (c) 2015, 2021 Oracle and/or its affiliates. All rights reserved. + Copyright (c) 2015, 2022 Oracle and/or its affiliates. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v. 2.0, which is available at @@ -119,12 +119,6 @@ <version>${project.version}</version> </dependency> - <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - <version>27.0.1-jre</version> - </dependency> - </dependencies> <build>
diff --git a/test-framework/maven/custom-enforcer-rules/pom.xml b/test-framework/maven/custom-enforcer-rules/pom.xml index 1c3294a..f490ab0 100644 --- a/test-framework/maven/custom-enforcer-rules/pom.xml +++ b/test-framework/maven/custom-enforcer-rules/pom.xml
@@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- - Copyright (c) 2015, 2021 Oracle and/or its affiliates. All rights reserved. + Copyright (c) 2015, 2022 Oracle and/or its affiliates. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v. 2.0, which is available at @@ -46,12 +46,7 @@ <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> - <version>2.7</version> - </dependency> - - <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> + <version>${commons.io.version}</version> </dependency> <dependency>
diff --git a/test-framework/maven/custom-enforcer-rules/src/main/java/org/glassfish/jersey/test/maven/rule/PatternNotMatchedInFileRule.java b/test-framework/maven/custom-enforcer-rules/src/main/java/org/glassfish/jersey/test/maven/rule/PatternNotMatchedInFileRule.java index 8872e15..5906b3e 100644 --- a/test-framework/maven/custom-enforcer-rules/src/main/java/org/glassfish/jersey/test/maven/rule/PatternNotMatchedInFileRule.java +++ b/test-framework/maven/custom-enforcer-rules/src/main/java/org/glassfish/jersey/test/maven/rule/PatternNotMatchedInFileRule.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2019 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2022 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0, which is available at @@ -19,18 +19,16 @@ import java.io.File; import java.io.IOException; import java.nio.charset.Charset; +import java.nio.file.Files; import java.util.Arrays; -import java.util.LinkedList; import java.util.List; import java.util.regex.Pattern; +import java.util.stream.Collectors; import org.apache.maven.enforcer.rule.api.EnforcerRuleException; import org.apache.maven.enforcer.rule.api.EnforcerRuleHelper; import org.apache.maven.plugins.enforcer.AbstractNonCacheableEnforcerRule; -import com.google.common.io.Files; -import com.google.common.io.LineProcessor; - /** * Maven enforcer rule to enforce that given file does not contain line matching given pattern. When matched, exception is * raised. @@ -67,25 +65,8 @@ final Pattern patternCompiled = Pattern.compile(pattern); try { - final List<String> lines = Files.readLines(file, Charset.defaultCharset(), new LineProcessor<List<String>>() { - private List<String> matchedLines = new LinkedList<>(); - - @Override - public boolean processLine(final String line) throws IOException { - if (patternCompiled.matcher(line).matches()) { - matchedLines.add(line); - if (maxMatchedLines != 0 && maxMatchedLines <= matchedLines.size()) { - return false; - } - } - return true; - } - - @Override - public List<String> getResult() { - return matchedLines; - } - }); + final List<String> lines = Files.lines(file.toPath(), Charset.defaultCharset()) + .filter(line -> patternCompiled.matcher(line).matches()).collect(Collectors.toList()); if (lines.size() > 0) { throw new EnforcerRuleException(
diff --git a/test-framework/memleak-test-common/pom.xml b/test-framework/memleak-test-common/pom.xml index c08d129..67598bb 100644 --- a/test-framework/memleak-test-common/pom.xml +++ b/test-framework/memleak-test-common/pom.xml
@@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- - Copyright (c) 2015, 2021 Oracle and/or its affiliates. All rights reserved. + Copyright (c) 2015, 2022 Oracle and/or its affiliates. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v. 2.0, which is available at @@ -41,10 +41,6 @@ <artifactId>junit</artifactId> <scope>compile</scope> </dependency> - <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - </dependency> </dependencies> </project>
diff --git a/test-framework/memleak-test-common/src/main/java/org/glassfish/jersey/test/memleak/common/MemoryLeakUtils.java b/test-framework/memleak-test-common/src/main/java/org/glassfish/jersey/test/memleak/common/MemoryLeakUtils.java index e19b2c9..d519d3f 100644 --- a/test-framework/memleak-test-common/src/main/java/org/glassfish/jersey/test/memleak/common/MemoryLeakUtils.java +++ b/test-framework/memleak-test-common/src/main/java/org/glassfish/jersey/test/memleak/common/MemoryLeakUtils.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2019 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2022 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0, which is available at @@ -22,17 +22,15 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.nio.charset.Charset; +import java.nio.file.Files; import java.nio.file.Paths; import java.util.Arrays; -import java.util.LinkedList; import java.util.List; import java.util.regex.Pattern; +import java.util.stream.Collectors; import javax.management.MBeanServer; -import com.google.common.io.Files; -import com.google.common.io.LineProcessor; - /** * Utility class for memory leak test infrastructure. * @@ -87,22 +85,8 @@ return; } - final List<String> lines = Files.readLines(logFile, Charset.defaultCharset(), new LineProcessor<List<String>>() { - private List<String> matchedLines = new LinkedList<>(); - - @Override - public boolean processLine(final String line) throws IOException { - if (PATTERN.matcher(line).matches()) { - matchedLines.add(line); - } - return true; - } - - @Override - public List<String> getResult() { - return matchedLines; - } - }); + final List<String> lines = Files.lines(logFile.toPath(), Charset.defaultCharset()) + .filter(line -> PATTERN.matcher(line).matches()).collect(Collectors.toList()); if (lines.size() > 0) { throw new IllegalStateException(
diff --git a/tests/e2e-client/pom.xml b/tests/e2e-client/pom.xml index a9b0a41..8cf45b0 100644 --- a/tests/e2e-client/pom.xml +++ b/tests/e2e-client/pom.xml
@@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- - Copyright (c) 2017, 2021 Oracle and/or its affiliates. All rights reserved. + Copyright (c) 2017, 2022 Oracle and/or its affiliates. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v. 2.0, which is available at @@ -174,13 +174,6 @@ </dependency> <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - <version>${guava.version}</version> - <scope>test</scope> - </dependency> - - <dependency> <groupId>org.glassfish.jersey.test-framework</groupId> <artifactId>jersey-test-framework-util</artifactId> <scope>test</scope>
diff --git a/tests/e2e-entity/pom.xml b/tests/e2e-entity/pom.xml index 09ce274..5d913de 100644 --- a/tests/e2e-entity/pom.xml +++ b/tests/e2e-entity/pom.xml
@@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- - Copyright (c) 2017, 2021 Oracle and/or its affiliates. All rights reserved. + Copyright (c) 2017, 2022 Oracle and/or its affiliates. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v. 2.0, which is available at @@ -171,13 +171,6 @@ </dependency> <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - <version>${guava.version}</version> - <scope>test</scope> - </dependency> - - <dependency> <groupId>org.glassfish.jersey.test-framework</groupId> <artifactId>jersey-test-framework-util</artifactId> <scope>test</scope>
diff --git a/tests/e2e-server/pom.xml b/tests/e2e-server/pom.xml index df25460..a334bd5 100644 --- a/tests/e2e-server/pom.xml +++ b/tests/e2e-server/pom.xml
@@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- - Copyright (c) 2017, 2021 Oracle and/or its affiliates. All rights reserved. + Copyright (c) 2017, 2022 Oracle and/or its affiliates. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v. 2.0, which is available at @@ -166,13 +166,6 @@ </dependency> <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - <version>${guava.version}</version> - <scope>test</scope> - </dependency> - - <dependency> <groupId>org.glassfish.jersey.test-framework</groupId> <artifactId>jersey-test-framework-util</artifactId> <scope>test</scope>
diff --git a/tests/e2e/pom.xml b/tests/e2e/pom.xml index 0c31034..e9136a5 100644 --- a/tests/e2e/pom.xml +++ b/tests/e2e/pom.xml
@@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- - Copyright (c) 2011, 2021 Oracle and/or its affiliates. All rights reserved. + Copyright (c) 2011, 2022 Oracle and/or its affiliates. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v. 2.0, which is available at @@ -171,13 +171,6 @@ </dependency> <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - <version>${guava.version}</version> - <scope>test</scope> - </dependency> - - <dependency> <groupId>org.glassfish.jersey.test-framework</groupId> <artifactId>jersey-test-framework-util</artifactId> <scope>test</scope>
diff --git a/tests/integration/jersey-2612/pom.xml b/tests/integration/jersey-2612/pom.xml index 6f13ea5..f8c557b 100644 --- a/tests/integration/jersey-2612/pom.xml +++ b/tests/integration/jersey-2612/pom.xml
@@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- - Copyright (c) 2013, 2021 Oracle and/or its affiliates. All rights reserved. + Copyright (c) 2013, 2022 Oracle and/or its affiliates. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v. 2.0, which is available at @@ -39,11 +39,6 @@ </dependency> <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - </dependency> - - <dependency> <groupId>org.glassfish.jersey.test-framework.providers</groupId> <artifactId>jersey-test-framework-provider-external</artifactId> <scope>test</scope>
diff --git a/tests/integration/jersey-2612/src/main/java/org/glassfish/jersey/tests/integration/jersey2612/OptionalParamConverterProvider.java b/tests/integration/jersey-2612/src/main/java/org/glassfish/jersey/tests/integration/jersey2612/OptionalParamConverterProvider.java index 25b6edf..92849cf 100644 --- a/tests/integration/jersey-2612/src/main/java/org/glassfish/jersey/tests/integration/jersey2612/OptionalParamConverterProvider.java +++ b/tests/integration/jersey-2612/src/main/java/org/glassfish/jersey/tests/integration/jersey2612/OptionalParamConverterProvider.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2014, 2018 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2014, 2022 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0, which is available at @@ -19,6 +19,7 @@ import java.lang.annotation.Annotation; import java.lang.reflect.Type; import java.util.List; +import java.util.Optional; import java.util.Set; import javax.ws.rs.ext.ParamConverter; @@ -32,9 +33,6 @@ import org.glassfish.jersey.internal.util.ReflectionHelper; import org.glassfish.jersey.internal.util.collection.ClassTypePair; -import com.google.common.base.Function; -import com.google.common.base.Optional; - @Singleton public class OptionalParamConverterProvider implements ParamConverterProvider { @@ -53,7 +51,7 @@ return new ParamConverter<T>() { @Override public T fromString(final String value) { - return rawType.cast(Optional.fromNullable(value)); + return rawType.cast(Optional.ofNullable(value)); } @Override @@ -71,8 +69,7 @@ return new ParamConverter<T>() { @Override public T fromString(final String value) { - return rawType.cast(Optional.fromNullable(value) - .transform((Function<String, Object>) s -> converter.fromString(value))); + return rawType.cast(Optional.ofNullable(value).map(o -> converter.fromString(value))); } @Override
diff --git a/tests/integration/jersey-2612/src/main/java/org/glassfish/jersey/tests/integration/jersey2612/Resource.java b/tests/integration/jersey-2612/src/main/java/org/glassfish/jersey/tests/integration/jersey2612/Resource.java index ad1be27..bc8cd89 100644 --- a/tests/integration/jersey-2612/src/main/java/org/glassfish/jersey/tests/integration/jersey2612/Resource.java +++ b/tests/integration/jersey-2612/src/main/java/org/glassfish/jersey/tests/integration/jersey2612/Resource.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2014, 2018 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2014, 2022 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0, which is available at @@ -20,9 +20,8 @@ import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.QueryParam; - -import com.google.common.base.Function; -import com.google.common.base.Optional; +import java.util.Optional; +import java.util.function.Function; /** * Test resource. @@ -34,19 +33,15 @@ @GET @Produces("text/plain") public String hello(@QueryParam("name") final Optional<String> name) { - return "Hello " + name.or("World") + "!"; + return "Hello " + name.orElse("World") + "!"; } @Path("square") @GET @Produces("text/plain") public int echo(@QueryParam("value") final Optional<Integer> value) { - return value.transform(new Function<Integer, Integer>() { - @Override - public Integer apply(final Integer integer) { - return integer * integer; - } - }).or(0); + + return value.map(integer -> integer * integer).orElse(0); } }
diff --git a/tests/integration/jersey-4321/pom.xml b/tests/integration/jersey-4321/pom.xml index 77df827..002d569 100644 --- a/tests/integration/jersey-4321/pom.xml +++ b/tests/integration/jersey-4321/pom.xml
@@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- - Copyright (c) 2019, 2021 Oracle and/or its affiliates. All rights reserved. + Copyright (c) 2019, 2022 Oracle and/or its affiliates. All rights reserved. Copyright (c) 2019 Christian Kaltepoth. All rights reserved. This program and the accompanying materials are made available under the @@ -44,11 +44,6 @@ <scope>test</scope> </dependency> <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - <scope>test</scope> - </dependency> - <dependency> <groupId>org.glassfish.jersey.connectors</groupId> <artifactId>jersey-apache-connector</artifactId> <exclusions>
diff --git a/tests/integration/property-check/pom.xml b/tests/integration/property-check/pom.xml index 399c27c..9ac0bab 100644 --- a/tests/integration/property-check/pom.xml +++ b/tests/integration/property-check/pom.xml
@@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- - Copyright (c) 2014, 2021 Oracle and/or its affiliates. All rights reserved. + Copyright (c) 2014, 2022 Oracle and/or its affiliates. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v. 2.0, which is available at @@ -93,6 +93,7 @@ <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <scope>test</scope> + <version>${guava.version}</version> </dependency> </dependencies>
diff --git a/tests/mem-leaks/redeployment/redeployment-leaking-test-app/pom.xml b/tests/mem-leaks/redeployment/redeployment-leaking-test-app/pom.xml index cf9fab5..5ce4a95 100644 --- a/tests/mem-leaks/redeployment/redeployment-leaking-test-app/pom.xml +++ b/tests/mem-leaks/redeployment/redeployment-leaking-test-app/pom.xml
@@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- - Copyright (c) 2015, 2021 Oracle and/or its affiliates. All rights reserved. + Copyright (c) 2015, 2022 Oracle and/or its affiliates. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v. 2.0, which is available at @@ -101,11 +101,6 @@ <scope>test</scope> </dependency> - <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - </dependency> - </dependencies> <profiles>
diff --git a/tests/mem-leaks/redeployment/redeployment-leaking-test-app/src/main/java/org/glassfish/jersey/tests/memleaks/testleak/DaemonThreadMemoryLeakingResource.java b/tests/mem-leaks/redeployment/redeployment-leaking-test-app/src/main/java/org/glassfish/jersey/tests/memleaks/testleak/DaemonThreadMemoryLeakingResource.java index 369f581..24dcd3a 100644 --- a/tests/mem-leaks/redeployment/redeployment-leaking-test-app/src/main/java/org/glassfish/jersey/tests/memleaks/testleak/DaemonThreadMemoryLeakingResource.java +++ b/tests/mem-leaks/redeployment/redeployment-leaking-test-app/src/main/java/org/glassfish/jersey/tests/memleaks/testleak/DaemonThreadMemoryLeakingResource.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2019 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2022 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0, which is available at @@ -16,6 +16,8 @@ package org.glassfish.jersey.tests.memleaks.testleak; +import org.glassfish.jersey.internal.guava.ThreadFactoryBuilder; + import java.util.concurrent.Executors; import java.util.concurrent.Future; @@ -28,7 +30,6 @@ import javax.inject.Singleton; -import com.google.common.util.concurrent.ThreadFactoryBuilder; /** * Resource that causes {@link OutOfMemoryError} exception upon repetitive call of {@link #invoke(int)} of an application that is
diff --git a/tests/mem-leaks/test-cases/leaking-test-app/pom.xml b/tests/mem-leaks/test-cases/leaking-test-app/pom.xml index 53da399..dfa8c24 100644 --- a/tests/mem-leaks/test-cases/leaking-test-app/pom.xml +++ b/tests/mem-leaks/test-cases/leaking-test-app/pom.xml
@@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- - Copyright (c) 2015, 2021 Oracle and/or its affiliates. All rights reserved. + Copyright (c) 2015, 2022 Oracle and/or its affiliates. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v. 2.0, which is available at @@ -67,11 +67,6 @@ <scope>test</scope> </dependency> - <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - </dependency> - </dependencies> <profiles>
diff --git a/tests/mem-leaks/test-cases/leaking-test-app/src/main/java/org/glassfish/jersey/tests/memleaks/testleak/MemoryLeakingResource.java b/tests/mem-leaks/test-cases/leaking-test-app/src/main/java/org/glassfish/jersey/tests/memleaks/testleak/MemoryLeakingResource.java index f3cccf2..eb61f0b 100644 --- a/tests/mem-leaks/test-cases/leaking-test-app/src/main/java/org/glassfish/jersey/tests/memleaks/testleak/MemoryLeakingResource.java +++ b/tests/mem-leaks/test-cases/leaking-test-app/src/main/java/org/glassfish/jersey/tests/memleaks/testleak/MemoryLeakingResource.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2019 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2022 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0, which is available at @@ -25,9 +25,6 @@ import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.QueryParam; -import javax.ws.rs.client.Client; -import javax.ws.rs.client.ClientBuilder; -import javax.ws.rs.client.WebTarget; import javax.inject.Singleton;
diff --git a/tools/jersey-release-notes-maven-plugin/pom.xml b/tools/jersey-release-notes-maven-plugin/pom.xml index e7f2e0c..a9c74ec 100644 --- a/tools/jersey-release-notes-maven-plugin/pom.xml +++ b/tools/jersey-release-notes-maven-plugin/pom.xml
@@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- - Copyright (c) 2019, 2021 Oracle and/or its affiliates. All rights reserved. + Copyright (c) 2019, 2022 Oracle and/or its affiliates. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v. 2.0, which is available at @@ -74,7 +74,7 @@ <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> - <version>2.6</version> + <version>2.11.0</version> </dependency> <dependency> <groupId>org.apache.maven</groupId>