[java-shib-shared] branch main updated: Null cleanup.

Scott Cantor cantor.2 at osu.edu
Wed Feb 22 16:36:16 UTC 2023


This is an automated email from the git hooks/post-receive script.

scantor pushed a commit to branch main
in repository java-shib-shared.

View the commit online:
http://git.shibboleth.net/view/?p=java-shib-shared.git;a=commit;h=1882dc581f5f6e1625dfcf8639f0c42b8ca67903

The following commit(s) were added to refs/heads/main by this push:
     new 1882dc58 Null cleanup.
1882dc58 is described below

commit 1882dc581f5f6e1625dfcf8639f0c42b8ca67903
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Wed Feb 22 11:36:13 2023 -0500

    Null cleanup.
---
 .../shared/httpclient/AbstractHttpClient.java      | 53 +++++++++-------------
 .../httpclient/ContextHandlingHttpClient.java      | 17 ++++---
 .../httpclient/FileCachingHttpClientBuilder.java   |  8 ++--
 .../shared/httpclient/HttpClientBuilder.java       |  4 +-
 .../httpclient/ContextHandlingHttpClientTest.java  |  7 ++-
 5 files changed, 40 insertions(+), 49 deletions(-)

diff --git a/shib-networking/src/main/java/net/shibboleth/shared/httpclient/AbstractHttpClient.java b/shib-networking/src/main/java/net/shibboleth/shared/httpclient/AbstractHttpClient.java
index 31a54cc6..0a61e59d 100644
--- a/shib-networking/src/main/java/net/shibboleth/shared/httpclient/AbstractHttpClient.java
+++ b/shib-networking/src/main/java/net/shibboleth/shared/httpclient/AbstractHttpClient.java
@@ -79,57 +79,47 @@ public abstract class AbstractHttpClient implements HttpClient, ModalCloseable {
     }
 
     /** {@inheritDoc} */
-    @Override
     public ClassicHttpResponse execute(
             @Nullable final HttpHost target,
-            @Nonnull final ClassicHttpRequest request,
+            @Nullable final ClassicHttpRequest request,
             @Nullable final HttpContext context) throws IOException {
-        Constraint.isNotNull(request, "HTTP request");
-        return doExecute(target, request, context);
+        return doExecute(target, Constraint.isNotNull(request, "HTTP request"), context);
     }
 
     /** {@inheritDoc} */
-    @Override
     public ClassicHttpResponse execute(
-            @Nonnull ClassicHttpRequest request,
+            @Nullable final ClassicHttpRequest request,
             @Nullable final HttpContext context) throws IOException {
-        Constraint.isNotNull(request, "HTTP request");
-        return doExecute(determineTarget(request), request, context);
+        return doExecute(determineTarget(request), Constraint.isNotNull(request, "HTTP request"), context);
     }
 
     /** {@inheritDoc} */
-    @Override
     public ClassicHttpResponse execute(
-            @Nonnull final ClassicHttpRequest request) throws IOException {
-        Constraint.isNotNull(request, "HTTP request");
-        return doExecute(determineTarget(request), request, null);
+            @Nullable final ClassicHttpRequest request) throws IOException {
+        return doExecute(determineTarget(request), Constraint.isNotNull(request, "HTTP request"), null);
     }
 
     /** {@inheritDoc} */
-    @Override
     public ClassicHttpResponse execute(
             @Nullable final HttpHost target,
-            @Nonnull final ClassicHttpRequest request) throws IOException {
-        Constraint.isNotNull(request, "HTTP request");
-        return doExecute(target, request, null);
+            @Nullable final ClassicHttpRequest request) throws IOException {
+        return doExecute(target, Constraint.isNotNull(request, "HTTP request"), null);
     }
 
     /** {@inheritDoc} */
-    @Override
     public <T> T execute(
-            @Nonnull final ClassicHttpRequest request,
-            @Nonnull final HttpClientResponseHandler<? extends T> responseHandler) throws IOException {
+            @Nullable final ClassicHttpRequest request,
+            @Nullable final HttpClientResponseHandler<? extends T> responseHandler) throws IOException {
         Constraint.isNotNull(request, "HTTP request");
         Constraint.isNotNull(responseHandler, "HTTP response handler");
         return execute(request, null, responseHandler);
     }
 
     /** {@inheritDoc} */
-    @Override
     public <T> T execute(
-            @Nonnull final ClassicHttpRequest request,
+            @Nullable final ClassicHttpRequest request,
             @Nullable final HttpContext context,
-            @Nonnull final HttpClientResponseHandler<? extends T> responseHandler) throws IOException {
+            @Nullable final HttpClientResponseHandler<? extends T> responseHandler) throws IOException {
         Constraint.isNotNull(request, "HTTP request");
         Constraint.isNotNull(responseHandler, "HTTP response handler");
         final HttpHost target = determineTarget(request);
@@ -137,29 +127,28 @@ public abstract class AbstractHttpClient implements HttpClient, ModalCloseable {
     }
 
     /** {@inheritDoc} */
-    @Override
     public <T> T execute(
             @Nullable final HttpHost target,
-            @Nonnull ClassicHttpRequest request,
-            @Nonnull final HttpClientResponseHandler<? extends T> responseHandler) throws IOException {
+            @Nullable final ClassicHttpRequest request,
+            @Nullable final HttpClientResponseHandler<? extends T> responseHandler) throws IOException {
         Constraint.isNotNull(request, "HTTP request");
         Constraint.isNotNull(responseHandler, "HTTP response handler");
         return execute(target, request, null, responseHandler);
     }
 
     /** {@inheritDoc} */
-    @Override
     public <T> T execute(
             @Nullable final HttpHost target,
-            @Nonnull final ClassicHttpRequest request,
+            @Nullable final ClassicHttpRequest request,
             @Nullable final HttpContext context,
-            @Nonnull final HttpClientResponseHandler<? extends T> responseHandler) throws IOException {
-        Constraint.isNotNull(request, "HTTP request");
-        Constraint.isNotNull(responseHandler, "HTTP response handler");
+            @Nullable final HttpClientResponseHandler<? extends T> responseHandler) throws IOException {
+        final HttpClientResponseHandler<? extends T> checkedHandler =
+                Constraint.isNotNull(responseHandler, "HTTP response handler");
 
-        try (final ClassicHttpResponse response = doExecute(target, request, context)) {
+        try (final ClassicHttpResponse response =
+                doExecute(target, Constraint.isNotNull(request, "HTTP request"), context)) {
             try {
-                final T result = responseHandler.handleResponse(response);
+                final T result = checkedHandler.handleResponse(response);
                 final HttpEntity entity = response.getEntity();
                 EntityUtils.consume(entity);
                 return result;
diff --git a/shib-networking/src/main/java/net/shibboleth/shared/httpclient/ContextHandlingHttpClient.java b/shib-networking/src/main/java/net/shibboleth/shared/httpclient/ContextHandlingHttpClient.java
index f0eea8f5..aa4354c5 100644
--- a/shib-networking/src/main/java/net/shibboleth/shared/httpclient/ContextHandlingHttpClient.java
+++ b/shib-networking/src/main/java/net/shibboleth/shared/httpclient/ContextHandlingHttpClient.java
@@ -25,7 +25,6 @@ import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
 
 import org.apache.hc.client5.http.classic.HttpClient;
-import org.apache.hc.client5.http.classic.methods.HttpUriRequest;
 import org.apache.hc.client5.http.protocol.HttpClientContext;
 import org.apache.hc.core5.http.ClassicHttpRequest;
 import org.apache.hc.core5.http.ClassicHttpResponse;
@@ -116,7 +115,7 @@ class ContextHandlingHttpClient extends AbstractHttpClient {
 
     /** {@inheritDoc} */
     @Override
-    protected ClassicHttpResponse doExecute(@Nullable final HttpHost target, @Nonnull ClassicHttpRequest request, 
+    protected ClassicHttpResponse doExecute(@Nullable final HttpHost target, @Nonnull final ClassicHttpRequest request,
             @Nullable final HttpContext context) throws IOException {
         
         Throwable error = null;
@@ -140,7 +139,7 @@ class ContextHandlingHttpClient extends AbstractHttpClient {
     }
 
     /**
-     * Invoke {@link HttpClientContextHandler#invokeBefore(HttpClientContext, HttpUriRequest)}
+     * Invoke {@link HttpClientContextHandler#invokeBefore(HttpClientContext, ClassicHttpRequest)}
      * for supplied handlers.
      * 
      * @param request the HTTP request
@@ -186,12 +185,12 @@ class ContextHandlingHttpClient extends AbstractHttpClient {
     }
 
     /**
-     * Invoke {@link HttpClientContextHandler#invokeAfter(HttpClientContext, HttpUriRequest)}
+     * Invoke {@link HttpClientContextHandler#invokeAfter(HttpClientContext, ClassicHttpRequest)}
      * for all supplied handlers.
      * 
      * @param request the HTTP request
      * @param context the HTTP context
-     * @param priorError an error thrown by by either {@link #invokeBefore(HttpUriRequest, HttpClientContext)}
+     * @param priorError an error thrown by by either {@link #invokeBefore(ClassicHttpRequest, HttpClientContext)}
      *          or by HttpClient execute(...).
      * 
      * @throws IOException if any handler throws an error, or if priorError is an IOException. If priorError
@@ -235,8 +234,8 @@ class ContextHandlingHttpClient extends AbstractHttpClient {
     }
     
     /**
-     * Process the error(s) seen during {@link #invokeBefore(HttpUriRequest, HttpClientContext)} 
-     * or {@link #invokeAfter(HttpUriRequest, HttpClientContext, Throwable)}
+     * Process the error(s) seen during {@link #invokeBefore(ClassicHttpRequest, HttpClientContext)} 
+     * or {@link #invokeAfter(ClassicHttpRequest, HttpClientContext, Throwable)}
      * into a single {@link IOException} that will be propagated out of that method.
      * 
      * @param stage the name of the stage, for reporting purposes
@@ -269,10 +268,10 @@ class ContextHandlingHttpClient extends AbstractHttpClient {
     
     /**
      * Process errors for
-     * {@link #invokeAfter(HttpUriRequest, HttpClientContext, Throwable)}.
+     * {@link #invokeAfter(ClassicHttpRequest, HttpClientContext, Throwable)}.
      * 
      * @param invokeAfterException the exception thrown by invokeAfter handlers, if any
-     * @param priorError an error thrown by by either {@link #invokeBefore(HttpUriRequest, HttpClientContext)}
+     * @param priorError an error thrown by by either {@link #invokeBefore(ClassicHttpRequest, HttpClientContext)}
      *          or by HttpClient execute(...), if any.
      * 
      * @throws IOException if invokeAfterException is non-null, or if priorError is an IOException. If priorError
diff --git a/shib-networking/src/main/java/net/shibboleth/shared/httpclient/FileCachingHttpClientBuilder.java b/shib-networking/src/main/java/net/shibboleth/shared/httpclient/FileCachingHttpClientBuilder.java
index fcb25783..bf1ca821 100644
--- a/shib-networking/src/main/java/net/shibboleth/shared/httpclient/FileCachingHttpClientBuilder.java
+++ b/shib-networking/src/main/java/net/shibboleth/shared/httpclient/FileCachingHttpClientBuilder.java
@@ -25,6 +25,7 @@ import java.util.Timer;
 import java.util.TimerTask;
 
 import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
 
 import org.apache.hc.client5.http.classic.HttpClient;
 import org.apache.hc.client5.http.impl.cache.CacheConfig;
@@ -322,9 +323,8 @@ public class FileCachingHttpClientBuilder extends HttpClientBuilder {
 
 
         /** {@inheritDoc} */
-        protected ClassicHttpResponse doExecute(final HttpHost target, final ClassicHttpRequest request,
-                final HttpContext context)
-                throws IOException {
+        protected ClassicHttpResponse doExecute(@Nullable final HttpHost target,
+                @Nonnull final ClassicHttpRequest request, @Nullable final HttpContext context) throws IOException {
             throwComponentStateExceptions();
             return httpClient.executeOpen(target, request, context);
         }
@@ -340,7 +340,7 @@ public class FileCachingHttpClientBuilder extends HttpClientBuilder {
 
         /** {@inheritDoc} */
         @Override
-        public void close(CloseMode closeMode) {
+        public void close(final CloseMode closeMode) {
             throwComponentStateExceptions();
             if (ModalCloseable.class.isInstance(httpClient)) {
                 ModalCloseable.class.cast(httpClient).close(closeMode);
diff --git a/shib-networking/src/main/java/net/shibboleth/shared/httpclient/HttpClientBuilder.java b/shib-networking/src/main/java/net/shibboleth/shared/httpclient/HttpClientBuilder.java
index bc5d827d..ea1a3fea 100644
--- a/shib-networking/src/main/java/net/shibboleth/shared/httpclient/HttpClientBuilder.java
+++ b/shib-networking/src/main/java/net/shibboleth/shared/httpclient/HttpClientBuilder.java
@@ -1178,10 +1178,10 @@ public class HttpClientBuilder {
     @Nullable protected CredentialsProvider buildDefaultCredentialsProvider() {
         if (connectionProxyHost != null && connectionProxyUsername != null && connectionProxyPassword != null) {
             // Note proxy HttpHost is set separately
+            final char[] proxyPassBytes = connectionProxyPassword.toCharArray();
             return CredentialsProviderBuilder.create()
                     .add(new AuthScope(connectionProxyHost, connectionProxyPort),
-                            new UsernamePasswordCredentials(connectionProxyUsername,
-                                    connectionProxyPassword.toCharArray()))
+                            new UsernamePasswordCredentials(connectionProxyUsername, proxyPassBytes))
                     .build();
         }
         
diff --git a/shib-networking/src/test/java/net/shibboleth/shared/httpclient/ContextHandlingHttpClientTest.java b/shib-networking/src/test/java/net/shibboleth/shared/httpclient/ContextHandlingHttpClientTest.java
index 33fbc43f..71cbef3e 100644
--- a/shib-networking/src/test/java/net/shibboleth/shared/httpclient/ContextHandlingHttpClientTest.java
+++ b/shib-networking/src/test/java/net/shibboleth/shared/httpclient/ContextHandlingHttpClientTest.java
@@ -22,6 +22,9 @@ import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
+
 import org.apache.hc.client5.http.classic.methods.HttpGet;
 import org.apache.hc.client5.http.protocol.HttpClientContext;
 import org.apache.hc.core5.http.ClassicHttpRequest;
@@ -1867,8 +1870,8 @@ public class ContextHandlingHttpClientTest {
         }
         
         /** {@inheritDoc} */
-        protected ClassicHttpResponse doExecute(HttpHost target, ClassicHttpRequest request, HttpContext context)
-                throws IOException {
+        protected ClassicHttpResponse doExecute(@Nullable final HttpHost target, @Nonnull final ClassicHttpRequest request,
+                @Nullable final HttpContext context) throws IOException {
             ThrowableHelper.checkAndThrowError(error);
             return STATIC_RESPONSE_HTTP;
         }

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list