From e415a8381761d7b211125d9ba87904f2a42f1ea9 Mon Sep 17 00:00:00 2001 From: Julien Lengrand-Lambert Date: Tue, 24 May 2022 10:52:20 +0200 Subject: [PATCH 1/2] Set redirectUrl using hostname #16 Closes #16 --- src/main/java/checkout/CheckoutService.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/checkout/CheckoutService.java b/src/main/java/checkout/CheckoutService.java index 9895bbc..b73b957 100644 --- a/src/main/java/checkout/CheckoutService.java +++ b/src/main/java/checkout/CheckoutService.java @@ -10,6 +10,7 @@ import com.adyen.model.checkout.CreateCheckoutSessionRequest; import com.adyen.model.checkout.CreateCheckoutSessionResponse; import com.adyen.service.Checkout; import com.adyen.service.exception.ApiException; +import spark.Request; public class CheckoutService { @@ -21,7 +22,7 @@ public class CheckoutService { checkout = new Checkout(new Client(prop.getProperty("apiKey"), Environment.TEST)); } - public CreateCheckoutSessionResponse checkoutsessions() throws IOException, ApiException { + public CreateCheckoutSessionResponse checkoutsessions(Request req) throws IOException, ApiException { String orderRef = UUID.randomUUID().toString(); Amount amount = new Amount() .currency("EUR") @@ -30,7 +31,7 @@ public class CheckoutService { checkoutSession.merchantAccount(merchantAccount); checkoutSession.setChannel(CreateCheckoutSessionRequest.ChannelEnum.WEB); checkoutSession.setReference(orderRef); // Typically generated by customer CMS - checkoutSession.setReturnUrl("http://localhost:8080/redirect?orderRef=" + orderRef); + checkoutSession.setReturnUrl(req.scheme() + "://" + req.host() + "/redirect?orderRef=" + orderRef); checkoutSession.setAmount(amount); return checkout.sessions(checkoutSession); } From 174abde82cf21b3c6f017d006bef59f39c87c14c Mon Sep 17 00:00:00 2001 From: Julien Lengrand-Lambert Date: Tue, 24 May 2022 11:02:01 +0200 Subject: [PATCH 2/2] Upgrading dependencies --- build.gradle | 8 ++++---- src/main/java/checkout/Application.java | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/build.gradle b/build.gradle index acac69b..72eb9ba 100644 --- a/build.gradle +++ b/build.gradle @@ -22,11 +22,11 @@ repositories { } dependencies { - implementation 'com.sparkjava:spark-core:2.9.1' - implementation 'org.slf4j:slf4j-simple:1.7.25' + implementation 'com.sparkjava:spark-core:2.9.3' + implementation 'org.slf4j:slf4j-simple:1.7.36' implementation 'com.sparkjava:spark-template-jinjava:2.7.1' - implementation 'org.apache.httpcomponents:httpclient:4.5.11' - implementation 'com.adyen:adyen-java-api-library:17.2.0' + implementation 'org.apache.httpcomponents:httpclient:4.5.13' + implementation 'com.adyen:adyen-java-api-library:17.4.0' } jar { diff --git a/src/main/java/checkout/Application.java b/src/main/java/checkout/Application.java index 60058fb..32afcb2 100644 --- a/src/main/java/checkout/Application.java +++ b/src/main/java/checkout/Application.java @@ -87,7 +87,7 @@ public class Application { }); post("/api/sessions", (req, res) -> { - CreateCheckoutSessionResponse response = checkoutService.checkoutsessions(); + CreateCheckoutSessionResponse response = checkoutService.checkoutsessions(req); return gson.toJson(response); });