From 821529cc3af16e8c71e4599e1cf65a55e84c3453 Mon Sep 17 00:00:00 2001 From: Shaikat Haque Date: Wed, 14 May 2025 10:44:42 +0600 Subject: [PATCH 1/3] feat: retrieve headers from get and post responses and set to api response object --- .gitignore | 1 + pom.xml | 20 ++++++++-------- .../jaxrs/AuthorizationRequestHandler.java | 12 ++++++++++ .../jaxrs/api/AuthleteApiJaxrsImpl.java | 23 +++++++++++++++++-- 4 files changed, 44 insertions(+), 12 deletions(-) diff --git a/.gitignore b/.gitignore index 5499ca02..893910ea 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,5 @@ target/ .settings .project .classpath +.idea/ diff --git a/pom.xml b/pom.xml index 7c15f4d6..fb63e0f1 100644 --- a/pom.xml +++ b/pom.xml @@ -28,7 +28,7 @@ UTF-8 - 4.20 + 4.21-SNAPSHOT 2.10.1 9.31 2.1 @@ -151,15 +151,15 @@ org.apache.maven.plugins maven-site-plugin - - - org.apache.maven.plugins - maven-javadoc-plugin - - -Xdoclint:-html - - - + + + + + + + + + diff --git a/src/main/java/com/authlete/jaxrs/AuthorizationRequestHandler.java b/src/main/java/com/authlete/jaxrs/AuthorizationRequestHandler.java index d55684e8..317f596b 100644 --- a/src/main/java/com/authlete/jaxrs/AuthorizationRequestHandler.java +++ b/src/main/java/com/authlete/jaxrs/AuthorizationRequestHandler.java @@ -17,6 +17,8 @@ package com.authlete.jaxrs; +import java.util.LinkedHashMap; +import java.util.List; import java.util.Map; import javax.ws.rs.WebApplicationException; import javax.ws.rs.core.MultivaluedMap; @@ -151,6 +153,9 @@ private Response process( // Call Authlete's /api/auth/authorization API. AuthorizationResponse response = getApiCaller().callAuthorization(parameters, authzOptions); + System.out.println("jaxrs - authorization request - process" + response.getResponseHeaders()); + System.out.println(157); + // 'action' in the response denotes the next action which // this service implementation should take. AuthorizationResponse.Action action = response.getAction(); @@ -163,32 +168,39 @@ private Response process( switch (action) { case INTERNAL_SERVER_ERROR: + System.out.println(171); // 500 Internal Server Error return ResponseUtil.internalServerError(content); case BAD_REQUEST: + System.out.println(176); // 400 Bad Request return ResponseUtil.badRequest(content); case LOCATION: + System.out.println(181); // 302 Found return ResponseUtil.location(content); case FORM: // 200 OK + System.out.println(187); return ResponseUtil.form(content); case INTERACTION: + System.out.println(191); // Process the authorization request with user interaction. return handleInteraction(response); case NO_INTERACTION: + System.out.println(196); // Process the authorization request without user interaction. // The flow reaches here only when the authorization request // contained prompt=none. return handleNoInteraction(response, authzIssueOptions, authzFailOptions); default: + System.out.println(202); // This never happens. throw getApiCaller().unknownAction("/api/auth/authorization", action); } diff --git a/src/main/java/com/authlete/jaxrs/api/AuthleteApiJaxrsImpl.java b/src/main/java/com/authlete/jaxrs/api/AuthleteApiJaxrsImpl.java index 37b5b6ca..8dc4b729 100644 --- a/src/main/java/com/authlete/jaxrs/api/AuthleteApiJaxrsImpl.java +++ b/src/main/java/com/authlete/jaxrs/api/AuthleteApiJaxrsImpl.java @@ -42,6 +42,7 @@ import com.authlete.common.api.Options; import com.authlete.common.api.Settings; import com.authlete.common.conf.AuthleteConfiguration; +import com.authlete.common.dto.ApiResponse; import com.nimbusds.jose.JOSEException; import com.nimbusds.jose.JOSEObjectType; import com.nimbusds.jose.JWSAlgorithm; @@ -413,6 +414,7 @@ private String extractResponseBody(Response response) protected TResponse callGetApi( String auth, String path, Class responseClass, Map params, Options options) { + System.out.println("*** authlete-java-jaxrs - callGetAPI ***"); WebTarget webTarget = getTarget().path(path); if (params != null) @@ -428,7 +430,15 @@ protected TResponse callGetApi( setCustomRequestHeaders(builder, options); - return builder.get(responseClass); + Response response = builder.get(); + TResponse result = response.readEntity(responseClass); + + if (result instanceof ApiResponse) { + System.out.println("Get response headers:" + response.getHeaders()); + ((ApiResponse) result).setResponseHeaders(response.getStringHeaders()); + } + + return result; } @@ -450,6 +460,7 @@ protected Void callDeleteApi(String auth, String path, Options options) protected TResponse callPostApi( String auth, String path, Object request, Class responseClass, Options options) { + System.out.println("*** authlete-java-jaxrs - callPostAPI ***"); Builder builder = wrapWithDpop(getTarget() .path(path) .request(APPLICATION_JSON_TYPE), path, "POST") @@ -457,7 +468,15 @@ protected TResponse callPostApi( setCustomRequestHeaders(builder, options); - return builder.post(Entity.entity(request, JSON_UTF8_TYPE), responseClass); + Response response = builder.post(Entity.entity(request, JSON_UTF8_TYPE)); + + TResponse result = response.readEntity(responseClass); + + if (result instanceof ApiResponse) { + System.out.println("Post response headers:" + response.getHeaders()); + ((ApiResponse) result).setResponseHeaders(response.getStringHeaders()); + } + return result; } From c113e71331c18740422ae33beca04a559fd84dd7 Mon Sep 17 00:00:00 2001 From: Shaikat Haque Date: Wed, 14 May 2025 14:11:37 +0600 Subject: [PATCH 2/3] chore: cleanup, remove print statements, rename variables --- .../jaxrs/AuthorizationRequestHandler.java | 12 ---------- .../jaxrs/api/AuthleteApiJaxrsImpl.java | 24 ++++++++----------- 2 files changed, 10 insertions(+), 26 deletions(-) diff --git a/src/main/java/com/authlete/jaxrs/AuthorizationRequestHandler.java b/src/main/java/com/authlete/jaxrs/AuthorizationRequestHandler.java index 317f596b..d55684e8 100644 --- a/src/main/java/com/authlete/jaxrs/AuthorizationRequestHandler.java +++ b/src/main/java/com/authlete/jaxrs/AuthorizationRequestHandler.java @@ -17,8 +17,6 @@ package com.authlete.jaxrs; -import java.util.LinkedHashMap; -import java.util.List; import java.util.Map; import javax.ws.rs.WebApplicationException; import javax.ws.rs.core.MultivaluedMap; @@ -153,9 +151,6 @@ private Response process( // Call Authlete's /api/auth/authorization API. AuthorizationResponse response = getApiCaller().callAuthorization(parameters, authzOptions); - System.out.println("jaxrs - authorization request - process" + response.getResponseHeaders()); - System.out.println(157); - // 'action' in the response denotes the next action which // this service implementation should take. AuthorizationResponse.Action action = response.getAction(); @@ -168,39 +163,32 @@ private Response process( switch (action) { case INTERNAL_SERVER_ERROR: - System.out.println(171); // 500 Internal Server Error return ResponseUtil.internalServerError(content); case BAD_REQUEST: - System.out.println(176); // 400 Bad Request return ResponseUtil.badRequest(content); case LOCATION: - System.out.println(181); // 302 Found return ResponseUtil.location(content); case FORM: // 200 OK - System.out.println(187); return ResponseUtil.form(content); case INTERACTION: - System.out.println(191); // Process the authorization request with user interaction. return handleInteraction(response); case NO_INTERACTION: - System.out.println(196); // Process the authorization request without user interaction. // The flow reaches here only when the authorization request // contained prompt=none. return handleNoInteraction(response, authzIssueOptions, authzFailOptions); default: - System.out.println(202); // This never happens. throw getApiCaller().unknownAction("/api/auth/authorization", action); } diff --git a/src/main/java/com/authlete/jaxrs/api/AuthleteApiJaxrsImpl.java b/src/main/java/com/authlete/jaxrs/api/AuthleteApiJaxrsImpl.java index 8dc4b729..09a492e4 100644 --- a/src/main/java/com/authlete/jaxrs/api/AuthleteApiJaxrsImpl.java +++ b/src/main/java/com/authlete/jaxrs/api/AuthleteApiJaxrsImpl.java @@ -414,7 +414,6 @@ private String extractResponseBody(Response response) protected TResponse callGetApi( String auth, String path, Class responseClass, Map params, Options options) { - System.out.println("*** authlete-java-jaxrs - callGetAPI ***"); WebTarget webTarget = getTarget().path(path); if (params != null) @@ -430,15 +429,14 @@ protected TResponse callGetApi( setCustomRequestHeaders(builder, options); - Response response = builder.get(); - TResponse result = response.readEntity(responseClass); + Response httpResponse = builder.get(); + TResponse apiResponseObject = httpResponse.readEntity(responseClass); - if (result instanceof ApiResponse) { - System.out.println("Get response headers:" + response.getHeaders()); - ((ApiResponse) result).setResponseHeaders(response.getStringHeaders()); + if (apiResponseObject instanceof ApiResponse) { + ((ApiResponse) apiResponseObject).setResponseHeaders(httpResponse.getStringHeaders()); } - return result; + return apiResponseObject; } @@ -460,7 +458,6 @@ protected Void callDeleteApi(String auth, String path, Options options) protected TResponse callPostApi( String auth, String path, Object request, Class responseClass, Options options) { - System.out.println("*** authlete-java-jaxrs - callPostAPI ***"); Builder builder = wrapWithDpop(getTarget() .path(path) .request(APPLICATION_JSON_TYPE), path, "POST") @@ -468,15 +465,14 @@ protected TResponse callPostApi( setCustomRequestHeaders(builder, options); - Response response = builder.post(Entity.entity(request, JSON_UTF8_TYPE)); + Response httpResponse = builder.post(Entity.entity(request, JSON_UTF8_TYPE)); - TResponse result = response.readEntity(responseClass); + TResponse apiResponseObject = httpResponse.readEntity(responseClass); - if (result instanceof ApiResponse) { - System.out.println("Post response headers:" + response.getHeaders()); - ((ApiResponse) result).setResponseHeaders(response.getStringHeaders()); + if (apiResponseObject instanceof ApiResponse) { + ((ApiResponse) apiResponseObject).setResponseHeaders(httpResponse.getStringHeaders()); } - return result; + return apiResponseObject; } From 9cba3d1e962863c997cd249b0b15d09038eb0d97 Mon Sep 17 00:00:00 2001 From: meysam Date: Fri, 3 Oct 2025 14:42:10 +0400 Subject: [PATCH 3/3] chore: update authlete-java-common version to 4.23 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index fb63e0f1..e1524d20 100644 --- a/pom.xml +++ b/pom.xml @@ -28,7 +28,7 @@ UTF-8 - 4.21-SNAPSHOT + 4.23 2.10.1 9.31 2.1