diff --git a/CHANGELOG.md b/CHANGELOG.md index 48cd080..8e41e91 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,17 @@ # Change log +## 5.1.0 (September 5, 2023) + +### Improvements + +* Add support for Apache HTTP Client version 5. + +### Fixes + +* Fixes for various CVE vulnerabilities by upgrading netty, dependency-check and guava libraries. +* Fixes some build errors by upgrading Jacoco library. +* Resolve various Javadoc warnings in different modules. + ## 5.0.0 (January 19, 2023) ### BREAKING CHANGES diff --git a/edgegrid-signer-apache-http-client/README.md b/edgegrid-signer-apache-http-client/README.md index 6aed718..ea855eb 100644 --- a/edgegrid-signer-apache-http-client/README.md +++ b/edgegrid-signer-apache-http-client/README.md @@ -5,7 +5,7 @@ This library implements [Akamai EdgeGrid Authentication](https://techdocs.akamai.com/developer/docs/authenticate-with-edgegrid) for Java. This particular module is a binding for the [Apache HTTP Client library](https://hc.apache.org/) versions before 5.0.0. -For Apache HTTP Client >= 5.0.0 support, use `edgegrid-signer-apache-http-client5` module. +For Apache HTTP Client >= 5.0.0, use `edgegrid-signer-apache-http-client5` module. This project contains installation and usage instructions in the [README.md](../README.md). ## Use Apache HTTP Client diff --git a/edgegrid-signer-apache-http-client/pom.xml b/edgegrid-signer-apache-http-client/pom.xml index 8a8d3f7..5ce142c 100644 --- a/edgegrid-signer-apache-http-client/pom.xml +++ b/edgegrid-signer-apache-http-client/pom.xml @@ -6,7 +6,7 @@ edgegrid-signer-parent com.akamai.edgegrid - 5.0.0 + 5.1.0 4.0.0 diff --git a/edgegrid-signer-apache-http-client/src/main/java/com/akamai/edgegrid/signer/apachehttpclient/ApacheHttpClientEdgeGridRequestSigner.java b/edgegrid-signer-apache-http-client/src/main/java/com/akamai/edgegrid/signer/apachehttpclient/ApacheHttpClientEdgeGridRequestSigner.java index 761a10a..705ad61 100644 --- a/edgegrid-signer-apache-http-client/src/main/java/com/akamai/edgegrid/signer/apachehttpclient/ApacheHttpClientEdgeGridRequestSigner.java +++ b/edgegrid-signer-apache-http-client/src/main/java/com/akamai/edgegrid/signer/apachehttpclient/ApacheHttpClientEdgeGridRequestSigner.java @@ -41,10 +41,20 @@ */ public class ApacheHttpClientEdgeGridRequestSigner extends AbstractEdgeGridRequestSigner { + /** + * Creates an EdgeGrid signer using {@link ClientCredential}. + * + * @param clientCredential a {@link ClientCredential} + */ public ApacheHttpClientEdgeGridRequestSigner(ClientCredential clientCredential) { super(clientCredential); } + /** + * Creates an EdgeGrid signer using {@link ClientCredentialProvider}. + * + * @param clientCredentialProvider a {@link ClientCredentialProvider} + */ public ApacheHttpClientEdgeGridRequestSigner(ClientCredentialProvider clientCredentialProvider) { super(clientCredentialProvider); } diff --git a/edgegrid-signer-apache-http-client/src/main/java/com/akamai/edgegrid/signer/apachehttpclient/ApacheHttpClientEdgeGridRoutePlanner.java b/edgegrid-signer-apache-http-client/src/main/java/com/akamai/edgegrid/signer/apachehttpclient/ApacheHttpClientEdgeGridRoutePlanner.java index ac95c6c..28f93a7 100644 --- a/edgegrid-signer-apache-http-client/src/main/java/com/akamai/edgegrid/signer/apachehttpclient/ApacheHttpClientEdgeGridRoutePlanner.java +++ b/edgegrid-signer-apache-http-client/src/main/java/com/akamai/edgegrid/signer/apachehttpclient/ApacheHttpClientEdgeGridRoutePlanner.java @@ -28,16 +28,30 @@ import org.apache.http.conn.routing.HttpRoute; import org.apache.http.impl.conn.SystemDefaultRoutePlanner; import org.apache.http.protocol.HttpContext; - +/** + * Apache HTTP Client binding for EdgeGrid route planner for computing {@link HttpRoute}. + * + * @author mgawinec@akamai.com + */ public class ApacheHttpClientEdgeGridRoutePlanner extends SystemDefaultRoutePlanner { private final ApacheHttpClientEdgeGridRequestSigner binding; + /** + * Creates an EdgeGrid route planner using {@link ClientCredential}. + * + * @param clientCredential a {@link ClientCredential} + */ public ApacheHttpClientEdgeGridRoutePlanner(ClientCredential clientCredential) { super(ProxySelector.getDefault()); this.binding = new ApacheHttpClientEdgeGridRequestSigner(clientCredential); } + /** + * Creates an EdgeGrid route planner using {@link ClientCredentialProvider}. + * + * @param clientCredentialProvider a {@link ClientCredentialProvider} + */ public ApacheHttpClientEdgeGridRoutePlanner(ClientCredentialProvider clientCredentialProvider) { super(ProxySelector.getDefault()); this.binding = new ApacheHttpClientEdgeGridRequestSigner(clientCredentialProvider); diff --git a/edgegrid-signer-apache-http-client5/README.md b/edgegrid-signer-apache-http-client5/README.md index bf7da9f..a049097 100644 --- a/edgegrid-signer-apache-http-client5/README.md +++ b/edgegrid-signer-apache-http-client5/README.md @@ -3,9 +3,7 @@ -[![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.akamai.edgegrid/edgegrid-signer-apache-http-client5/badge.svg)](https://maven-badges.herokuapp.com/maven-central/com.akamai.edgegrid/edgegrid-signer-apache-http-client5) -[![Javadoc](http://www.javadoc.io/badge/com.akamai.edgegrid/edgegrid-signer-apache-http-client5.svg)](http://www.javadoc.io/doc/com.akamai.edgegrid/edgegrid-signer-apache-http-client5) -This library -implements [Akamai EdgeGrid Authentication](https://techdocs.akamai.com/developer/docs/authenticate-with-edgegrid) for -Java. +This library implements [Akamai EdgeGrid Authentication](https://techdocs.akamai.com/developer/docs/authenticate-with-edgegrid) for Java. This particular module is a binding for the [Apache HTTP Client library version 5.x](https://hc.apache.org/). This project contains installation and usage instructions in the [README.md](../README.md). diff --git a/edgegrid-signer-apache-http-client5/pom.xml b/edgegrid-signer-apache-http-client5/pom.xml index c574c22..c13f25c 100644 --- a/edgegrid-signer-apache-http-client5/pom.xml +++ b/edgegrid-signer-apache-http-client5/pom.xml @@ -6,7 +6,7 @@ edgegrid-signer-parent com.akamai.edgegrid - 5.0.0 + 5.1.0 4.0.0 diff --git a/edgegrid-signer-apache-http-client5/src/main/java/com/akamai/edgegrid/signer/apachehttpclient5/ApacheHttpClient5EdgeGridRequestSigner.java b/edgegrid-signer-apache-http-client5/src/main/java/com/akamai/edgegrid/signer/apachehttpclient5/ApacheHttpClient5EdgeGridRequestSigner.java index 1759991..b31a572 100644 --- a/edgegrid-signer-apache-http-client5/src/main/java/com/akamai/edgegrid/signer/apachehttpclient5/ApacheHttpClient5EdgeGridRequestSigner.java +++ b/edgegrid-signer-apache-http-client5/src/main/java/com/akamai/edgegrid/signer/apachehttpclient5/ApacheHttpClient5EdgeGridRequestSigner.java @@ -19,10 +19,20 @@ */ public class ApacheHttpClient5EdgeGridRequestSigner extends AbstractEdgeGridRequestSigner { + /** + * Creates an EdgeGrid signer using {@link ClientCredential}. + * + * @param clientCredential a {@link ClientCredential} + */ public ApacheHttpClient5EdgeGridRequestSigner(ClientCredential clientCredential) { super(clientCredential); } + /** + * Creates an EdgeGrid signer using {@link ClientCredentialProvider}. + * + * @param clientCredentialProvider a {@link ClientCredentialProvider} + */ public ApacheHttpClient5EdgeGridRequestSigner(ClientCredentialProvider clientCredentialProvider) { super(clientCredentialProvider); } diff --git a/edgegrid-signer-apache-http-client5/src/main/java/com/akamai/edgegrid/signer/apachehttpclient5/ApacheHttpClient5EdgeGridRoutePlanner.java b/edgegrid-signer-apache-http-client5/src/main/java/com/akamai/edgegrid/signer/apachehttpclient5/ApacheHttpClient5EdgeGridRoutePlanner.java index 2724125..de22d14 100644 --- a/edgegrid-signer-apache-http-client5/src/main/java/com/akamai/edgegrid/signer/apachehttpclient5/ApacheHttpClient5EdgeGridRoutePlanner.java +++ b/edgegrid-signer-apache-http-client5/src/main/java/com/akamai/edgegrid/signer/apachehttpclient5/ApacheHttpClient5EdgeGridRoutePlanner.java @@ -1,34 +1,51 @@ package com.akamai.edgegrid.signer.apachehttpclient5; import com.akamai.edgegrid.signer.ClientCredential; -import org.apache.hc.client5.http.impl.routing.SystemDefaultRoutePlanner; +import org.apache.hc.client5.http.HttpRoute; +import org.apache.hc.client5.http.routing.HttpRoutePlanner; +import org.apache.hc.core5.annotation.Contract; +import org.apache.hc.core5.annotation.ThreadingBehavior; +import org.apache.hc.core5.http.HttpException; import org.apache.hc.core5.http.HttpHost; import org.apache.hc.core5.http.protocol.HttpContext; -import java.net.ProxySelector; - -public class ApacheHttpClient5EdgeGridRoutePlanner extends SystemDefaultRoutePlanner { +/** + * Apache HTTP Client binding for EdgeGrid route planner for computing {@link HttpRoute}. + * + */ +@Contract(threading = ThreadingBehavior.STATELESS) +public class ApacheHttpClient5EdgeGridRoutePlanner implements HttpRoutePlanner { private final ClientCredential clientCredential; + /** + * Creates an EdgeGrid route planner using {@link ClientCredential}. + * + * @param clientCredential a {@link ClientCredential} + */ public ApacheHttpClient5EdgeGridRoutePlanner(ClientCredential clientCredential) { - super(ProxySelector.getDefault()); this.clientCredential = clientCredential; } @Override - protected HttpHost determineProxy(HttpHost target, HttpContext context) { + public HttpRoute determineRoute(HttpHost target, HttpContext context) throws HttpException { var hostname = clientCredential.getHost(); - int port = -1; + int port = 443; final int pos = hostname.lastIndexOf(":"); if (pos > 0) { try { port = Integer.parseInt(hostname.substring(pos + 1)); + if (port <= 0 || port > 65535) { + throw new NumberFormatException(); + } } catch (NumberFormatException ex) { throw new IllegalArgumentException("Host contains invalid port number: " + hostname); } hostname = hostname.substring(0, pos); } - return new HttpHost("https", hostname, port); + HttpHost host = new HttpHost("https", hostname, port); + return new HttpRoute(host, null, true); } } + + diff --git a/edgegrid-signer-apache-http-client5/src/test/java/com/akamai/edgegrid/signer/apachehttpclient5/ApacheHttpClient5EdgeGridRequestSignerTest.java b/edgegrid-signer-apache-http-client5/src/test/java/com/akamai/edgegrid/signer/apachehttpclient5/ApacheHttpClient5EdgeGridRequestSignerTest.java index 2e69e48..f840b91 100644 --- a/edgegrid-signer-apache-http-client5/src/test/java/com/akamai/edgegrid/signer/apachehttpclient5/ApacheHttpClient5EdgeGridRequestSignerTest.java +++ b/edgegrid-signer-apache-http-client5/src/test/java/com/akamai/edgegrid/signer/apachehttpclient5/ApacheHttpClient5EdgeGridRequestSignerTest.java @@ -8,7 +8,10 @@ import java.net.URISyntaxException; import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.*; +import static org.hamcrest.Matchers.equalTo; +import static org.hamcrest.Matchers.isEmptyOrNullString; +import static org.hamcrest.Matchers.not; +import static org.hamcrest.Matchers.notNullValue; /** * Example of use of EdgeGrid signer with Apache HTTP Client5. diff --git a/edgegrid-signer-async-http-client/pom.xml b/edgegrid-signer-async-http-client/pom.xml index da54074..2b13431 100644 --- a/edgegrid-signer-async-http-client/pom.xml +++ b/edgegrid-signer-async-http-client/pom.xml @@ -5,7 +5,7 @@ edgegrid-signer-parent com.akamai.edgegrid - 5.0.0 + 5.1.0 4.0.0 diff --git a/edgegrid-signer-async-http-client/src/main/java/com/akamai/edgegrid/signer/ahc/AsyncHttpClientEdgeGridRequestSigner.java b/edgegrid-signer-async-http-client/src/main/java/com/akamai/edgegrid/signer/ahc/AsyncHttpClientEdgeGridRequestSigner.java index c54aff7..01a7e6c 100644 --- a/edgegrid-signer-async-http-client/src/main/java/com/akamai/edgegrid/signer/ahc/AsyncHttpClientEdgeGridRequestSigner.java +++ b/edgegrid-signer-async-http-client/src/main/java/com/akamai/edgegrid/signer/ahc/AsyncHttpClientEdgeGridRequestSigner.java @@ -37,12 +37,27 @@ import static org.asynchttpclient.util.MiscUtils.isNonEmpty; +/** + * Async HTTP Client binding for EdgeGrid signer for signing {@link Request}. + * + * @author mgawinec@akamai.com + */ public class AsyncHttpClientEdgeGridRequestSigner extends AbstractEdgeGridRequestSigner { + /** + * Creates an EdgeGrid signer using {@link ClientCredential}. + * + * @param credential a {@link ClientCredential} + */ public AsyncHttpClientEdgeGridRequestSigner(ClientCredential credential) { super(credential); } + /** + * Creates an EdgeGrid signer using {@link ClientCredentialProvider}. + * + * @param credentialProvider a {@link ClientCredentialProvider} + */ public AsyncHttpClientEdgeGridRequestSigner(ClientCredentialProvider credentialProvider) { super(credentialProvider); } diff --git a/edgegrid-signer-async-http-client/src/main/java/com/akamai/edgegrid/signer/ahc/AsyncHttpClientEdgeGridSignatureCalculator.java b/edgegrid-signer-async-http-client/src/main/java/com/akamai/edgegrid/signer/ahc/AsyncHttpClientEdgeGridSignatureCalculator.java index cb54e99..590130f 100644 --- a/edgegrid-signer-async-http-client/src/main/java/com/akamai/edgegrid/signer/ahc/AsyncHttpClientEdgeGridSignatureCalculator.java +++ b/edgegrid-signer-async-http-client/src/main/java/com/akamai/edgegrid/signer/ahc/AsyncHttpClientEdgeGridSignatureCalculator.java @@ -24,14 +24,29 @@ import org.asynchttpclient.RequestBuilderBase; import org.asynchttpclient.SignatureCalculator; +/** + * Async HTTP Client binding for EdgeGrid signature calculator {@link SignatureCalculator}. + * + * @author mgawinec@akamai.com + */ public class AsyncHttpClientEdgeGridSignatureCalculator implements SignatureCalculator { private final AsyncHttpClientEdgeGridRequestSigner binding; + /** + * Creates an EdgeGrid signature calculator using {@link ClientCredential}. + * + * @param credential a {@link ClientCredential} + */ public AsyncHttpClientEdgeGridSignatureCalculator(ClientCredential credential) { this.binding = new AsyncHttpClientEdgeGridRequestSigner(credential); } + /** + * Creates an EdgeGrid signature calculator using {@link ClientCredentialProvider}. + * + * @param credentialProvider a {@link ClientCredentialProvider} + */ public AsyncHttpClientEdgeGridSignatureCalculator(ClientCredentialProvider credentialProvider) { this.binding = new AsyncHttpClientEdgeGridRequestSigner(credentialProvider); } diff --git a/edgegrid-signer-core/pom.xml b/edgegrid-signer-core/pom.xml index 8196d73..6cedf0f 100644 --- a/edgegrid-signer-core/pom.xml +++ b/edgegrid-signer-core/pom.xml @@ -6,7 +6,7 @@ edgegrid-signer-parent com.akamai.edgegrid - 5.0.0 + 5.1.0 edgegrid-signer-core diff --git a/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/AbstractEdgeGridRequestSigner.java b/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/AbstractEdgeGridRequestSigner.java index 05ae238..2cfb512 100644 --- a/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/AbstractEdgeGridRequestSigner.java +++ b/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/AbstractEdgeGridRequestSigner.java @@ -32,6 +32,7 @@ * offers a more configurable way to retrieve credentials any way the user wants.

* * @param a type of HTTP client specific request. + * @param a type of HTTP client request to update. * @author mgawinec@akamai.com * @author mmeyer@akamai.com */ @@ -64,7 +65,12 @@ public AbstractEdgeGridRequestSigner(ClientCredentialProvider clientCredentialPr this.edgeGridSigner = new EdgeGridV1Signer(); } - + /** + * Retrieves {@link ClientCredentialProvider}. + * + * @return {@link ClientCredentialProvider} + * + */ public final ClientCredentialProvider getClientCredentialProvider() { return clientCredentialProvider; } @@ -100,6 +106,9 @@ public void sign(RequestT request, MutableRequestT requestToUpdate) throws Reque /** * Returns Request-URI of an original request. + * + * @param request an HTTP client-specific request + * @return a {@link URI} of {@code request} */ protected abstract URI requestUri(RequestT request); diff --git a/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/ClientCredential.java b/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/ClientCredential.java index 259a117..054ad7b 100644 --- a/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/ClientCredential.java +++ b/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/ClientCredential.java @@ -96,26 +96,62 @@ public boolean equals(Object o) { return compareTo(that) == 0; } + /** + * Retrieves access token. + * + * @return accessToken + * + */ public String getAccessToken() { return accessToken; } + /** + * Retrieves client secret. + * + * @return clientSecret + * + */ public String getClientSecret() { return clientSecret; } + /** + * Retrieves client token. + * + * @return clientToken + * + */ public String getClientToken() { return clientToken; } + /** + * Retrieves set of headers for signing. + * + * @return headersToSign + * + */ public Set getHeadersToSign() { return headersToSign; } + /** + * Retrieves host. + * + * @return host + * + */ public String getHost() { return host; } + /** + * Defines maximum body size defined in bytes. + * + * @return maxBodySize + * + */ public int getMaxBodySize() { if (maxBodySize == null) { return DEFAULT_MAX_BODY_SIZE_IN_BYTES; @@ -141,6 +177,10 @@ public String toString() { .toString(); } + /** + * Defines {@link ClientCredentialBuilder} which is used to build instance of {@link ClientCredential}. + * + */ public static class ClientCredentialBuilder { private String accessToken; private String clientSecret; diff --git a/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/DefaultClientCredentialProvider.java b/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/DefaultClientCredentialProvider.java index f2c4f9f..a6cb026 100644 --- a/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/DefaultClientCredentialProvider.java +++ b/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/DefaultClientCredentialProvider.java @@ -28,6 +28,11 @@ public class DefaultClientCredentialProvider implements ClientCredentialProvider private ClientCredential clientCredential; + /** + * Creates a {@link DefaultClientCredentialProvider} using {@link ClientCredential}. + * + * @param clientCredential a {@link ClientCredential} + */ public DefaultClientCredentialProvider(ClientCredential clientCredential) { this.clientCredential = Objects.requireNonNull(clientCredential, "clientCredential cannot be null"); } diff --git a/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/Request.java b/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/Request.java index 6f3989e..7a01025 100644 --- a/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/Request.java +++ b/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/Request.java @@ -16,6 +16,8 @@ package com.akamai.edgegrid.signer; +import com.akamai.edgegrid.signer.exceptions.RequestSigningException; + import java.net.URI; import java.net.URISyntaxException; import java.util.Arrays; @@ -47,6 +49,11 @@ public class Request implements Comparable { private final URI uri; private final Map headers; + /** + * Creates a new instance of {@link Request} using provided request builder. + * + * @param b {@link RequestBuilder} + */ private Request(RequestBuilder b) { this.body = b.body; this.method = b.method; @@ -143,7 +150,7 @@ URI getUri() { } /** - * Creates a new builder. The returned builder is equivalent to the builder + * Creates an instance of {@link Request#builder()}. The returned builder is equivalent to the builder * generated by {@link Request#builder()}. */ public static class RequestBuilder { @@ -281,6 +288,8 @@ public RequestBuilder uri(URI uri) { /** * Returns a newly-created immutable HTTP request. + * + * @return new HTTP request {@link Request} */ public Request build() { Objects.requireNonNull(body, "body cannot be empty"); diff --git a/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/exceptions/NoMatchingCredentialException.java b/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/exceptions/NoMatchingCredentialException.java index 8049842..fe6a1e2 100644 --- a/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/exceptions/NoMatchingCredentialException.java +++ b/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/exceptions/NoMatchingCredentialException.java @@ -29,10 +29,19 @@ public class NoMatchingCredentialException extends RequestSigningException { private static final long serialVersionUID = -6663545494847315492L; + /** + * Creates a {@link NoMatchingCredentialException} with default message. + * + */ public NoMatchingCredentialException() { super(MESSAGE); } + /** + * Creates a {@link NoMatchingCredentialException} using {@link Exception}. + * + * @param e a {@link Exception} + */ public NoMatchingCredentialException(Exception e) { super(MESSAGE, e); } diff --git a/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/exceptions/RequestSigningException.java b/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/exceptions/RequestSigningException.java index b4f585b..9932599 100644 --- a/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/exceptions/RequestSigningException.java +++ b/edgegrid-signer-core/src/main/java/com/akamai/edgegrid/signer/exceptions/RequestSigningException.java @@ -25,18 +25,38 @@ public class RequestSigningException extends Exception { private static final long serialVersionUID = -4716437270940718895L; + /** + * Creates a default {@link RequestSigningException} . + * + */ public RequestSigningException() { super(); } + /** + * Creates a {@link RequestSigningException} using message. + * + * @param message exception message + */ public RequestSigningException(String message) { super(message); } + /** + * Creates a {@link RequestSigningException} using {@link Throwable}. + * + * @param t a {@link Throwable} + */ public RequestSigningException(Throwable t) { super(t); } + /** + * Creates a {@link RequestSigningException} using {@link Throwable} and message. + * + * @param message exception message + * @param t a {@link Throwable} + */ public RequestSigningException(String message, Throwable t) { super(message, t); } diff --git a/edgegrid-signer-google-http-client/pom.xml b/edgegrid-signer-google-http-client/pom.xml index b915906..24a6455 100644 --- a/edgegrid-signer-google-http-client/pom.xml +++ b/edgegrid-signer-google-http-client/pom.xml @@ -6,7 +6,7 @@ edgegrid-signer-parent com.akamai.edgegrid - 5.0.0 + 5.1.0 edgegrid-signer-google-http-client @@ -31,6 +31,10 @@ com.github.tomakehurst wiremock + + io.grpc + grpc-context + org.hamcrest hamcrest-all diff --git a/edgegrid-signer-google-http-client/src/main/java/com/akamai/edgegrid/signer/googlehttpclient/GoogleHttpClientEdgeGridRequestSigner.java b/edgegrid-signer-google-http-client/src/main/java/com/akamai/edgegrid/signer/googlehttpclient/GoogleHttpClientEdgeGridRequestSigner.java index 37abd0f..267c36a 100644 --- a/edgegrid-signer-google-http-client/src/main/java/com/akamai/edgegrid/signer/googlehttpclient/GoogleHttpClientEdgeGridRequestSigner.java +++ b/edgegrid-signer-google-http-client/src/main/java/com/akamai/edgegrid/signer/googlehttpclient/GoogleHttpClientEdgeGridRequestSigner.java @@ -84,6 +84,13 @@ protected Request map(HttpRequest request) { return builder.build(); } + /** + * Google HTTP Client Library sign method binding of EdgeGrid signer which signs {@link HttpRequest} with appropriate credentials using EdgeGrid signer algorithm and + * replaces {@link HttpRequest}'s host name with the one specified by the credential. + * + * @param request a {@link HttpRequest} + * @throws RequestSigningException if failed to sign a request + */ public void sign(HttpRequest request) throws RequestSigningException { sign(request, request); } diff --git a/edgegrid-signer-rest-assured/pom.xml b/edgegrid-signer-rest-assured/pom.xml index 4d6e2a6..506a592 100644 --- a/edgegrid-signer-rest-assured/pom.xml +++ b/edgegrid-signer-rest-assured/pom.xml @@ -6,7 +6,7 @@ edgegrid-signer-parent com.akamai.edgegrid - 5.0.0 + 5.1.0 edgegrid-signer-rest-assured diff --git a/edgegrid-signer-rest-assured/src/main/java/com/akamai/edgegrid/signer/restassured/RestAssuredEdgeGridRequestSigner.java b/edgegrid-signer-rest-assured/src/main/java/com/akamai/edgegrid/signer/restassured/RestAssuredEdgeGridRequestSigner.java index 4ae76d2..e0cde0a 100644 --- a/edgegrid-signer-rest-assured/src/main/java/com/akamai/edgegrid/signer/restassured/RestAssuredEdgeGridRequestSigner.java +++ b/edgegrid-signer-rest-assured/src/main/java/com/akamai/edgegrid/signer/restassured/RestAssuredEdgeGridRequestSigner.java @@ -78,6 +78,12 @@ private static byte[] serialize(Object requestBody) { } } + /** + * REST-assured sign method binding of EdgeGrid signer using {@link FilterableRequestSpecification} + * + * @param requestSpecification a {@link FilterableRequestSpecification} + * @throws RequestSigningException if failed to sign a request + */ public void sign(FilterableRequestSpecification requestSpecification) throws RequestSigningException { sign(requestSpecification, requestSpecification); } diff --git a/edgerc-reader/pom.xml b/edgerc-reader/pom.xml index 584ad0b..b92fdf6 100644 --- a/edgerc-reader/pom.xml +++ b/edgerc-reader/pom.xml @@ -5,7 +5,7 @@ edgegrid-signer-parent com.akamai.edgegrid - 5.0.0 + 5.1.0 4.0.0 diff --git a/pom.xml b/pom.xml index 8066aca..611687a 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.akamai.edgegrid edgegrid-signer-parent - 5.0.0 + 5.1.0 edgegrid-signer-apache-http-client @@ -80,9 +80,9 @@ 11 11 1.7.36 - 4.1.78.Final + 4.1.97.Final 1.2.11 - 7.1.1 + 8.4.0 @@ -109,12 +109,12 @@ com.google.guava guava - 32.0.0-jre + 32.1.2-jre com.google.http-client google-http-client - 1.42.1 + 1.43.3 io.rest-assured @@ -186,6 +186,11 @@ 7.7.0 test + + io.grpc + grpc-context + 1.57.2 + @@ -195,7 +200,7 @@ org.jacoco jacoco-maven-plugin - 0.8.8 + 0.8.10 prepare-agent