From 29c775e5fb68724817c7c33fbf2035da92eb97cd Mon Sep 17 00:00:00 2001 From: mooseriskified Date: Tue, 1 Jun 2021 15:00:02 -0400 Subject: [PATCH 1/3] testing changes --- riskified-sdk/src/main/java/com/riskified/Utils.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/riskified-sdk/src/main/java/com/riskified/Utils.java b/riskified-sdk/src/main/java/com/riskified/Utils.java index ecf26914..412d91b9 100644 --- a/riskified-sdk/src/main/java/com/riskified/Utils.java +++ b/riskified-sdk/src/main/java/com/riskified/Utils.java @@ -12,6 +12,9 @@ public class Utils { public static final String ACCOUNT_PRODUCTION_ENVIRONMENT = "https://api.riskified.com"; public static final String SCREEN_SANDBOX_ENVIRONMENT = "https://screen-sandbox.riskified.com"; + /* + * Testing comments + */ public static String getBaseUrlFromEnvironment(Environment environmentType) { return getUrlString(environmentType, SANDBOX_ENVIRONMENT, PRODUCTION_ENVIRONMENT); } From 3175385d5b362c5f9ab0f818581e075896aa9f8a Mon Sep 17 00:00:00 2001 From: mooseriskified Date: Tue, 1 Jun 2021 23:41:39 -0400 Subject: [PATCH 2/3] China URL + Log Listener --- riskified-sdk/pom.xml | 2 +- .../main/java/com/riskified/Environment.java | 3 ++- .../java/com/riskified/RiskifiedClient.java | 16 ++++++++++--- .../com/riskified/RiskifiedLogListener.java | 7 ++++++ .../java/com/riskified/RiskifiedLogger.java | 10 ++++++++ .../src/main/java/com/riskified/Utils.java | 23 ++++++++++++------- 6 files changed, 48 insertions(+), 13 deletions(-) create mode 100644 riskified-sdk/src/main/java/com/riskified/RiskifiedLogListener.java create mode 100644 riskified-sdk/src/main/java/com/riskified/RiskifiedLogger.java diff --git a/riskified-sdk/pom.xml b/riskified-sdk/pom.xml index c55e6811..13241bc1 100644 --- a/riskified-sdk/pom.xml +++ b/riskified-sdk/pom.xml @@ -4,7 +4,7 @@ 4.0.0 com.riskified riskified-sdk - v1.3.16 + v1.3.18 Riskified SDK Riskified rest api SDK for java https://www.riskified.com diff --git a/riskified-sdk/src/main/java/com/riskified/Environment.java b/riskified-sdk/src/main/java/com/riskified/Environment.java index 7ae63e77..c40ff628 100644 --- a/riskified-sdk/src/main/java/com/riskified/Environment.java +++ b/riskified-sdk/src/main/java/com/riskified/Environment.java @@ -3,5 +3,6 @@ public enum Environment { DEBUG, SANDBOX, - PRODUCTION + PRODUCTION, + CHINA_PRODUCTION } diff --git a/riskified-sdk/src/main/java/com/riskified/RiskifiedClient.java b/riskified-sdk/src/main/java/com/riskified/RiskifiedClient.java index 581c703c..0d56de0d 100644 --- a/riskified-sdk/src/main/java/com/riskified/RiskifiedClient.java +++ b/riskified-sdk/src/main/java/com/riskified/RiskifiedClient.java @@ -33,7 +33,7 @@ import java.io.IOException; import java.io.UnsupportedEncodingException; -import java.util.Properties; +import java.util.*; /** @@ -60,6 +60,7 @@ public class RiskifiedClient { private String proxyUsername; private String proxyPassword; private HttpClientContext context; + private List logListeners = new ArrayList(); /** * Riskified API client @@ -100,6 +101,8 @@ public RiskifiedClient() throws RiskifiedError { environment = Environment.PRODUCTION; } else if (environmentType.equals("SANDBOX")) { environment = Environment.SANDBOX; + } else if (environmentType.equals("CHINA_PRODUCTION")) { + environment = Environment.CHINA_PRODUCTION; } init(shopUrl, authKey, Utils.getBaseUrlFromEnvironment(environment), Utils.getBaseUrlSyncAnalyzeFromEnvironment(environment), Utils.getDecoBaseFromEnvironment(environment), Utils.getAccountBaseFromEnvironment(environment), Utils.getScreenBaseFromEnvironment(environment),validation); @@ -941,7 +944,6 @@ private Response postOrder(Object data, String url) throws IOException { response = executeClient(client, request); String postBody = EntityUtils.toString(response.getEntity()); int status = response.getStatusLine().getStatusCode(); - Response responseObject = getResponseObject(postBody); switch (status) { case 200: @@ -971,17 +973,25 @@ private CheckoutResponse getCheckoutResponseObject(String postBody) throws IOExc res.setOrder(res.getCheckout()); return res; } + + public void addListener(RiskifiedLogListener riskifiedListener) { + logListeners.add(riskifiedListener); + } private void addDataToRequest(Object data, HttpPost postRequest) throws IllegalStateException, UnsupportedEncodingException { String jsonData = JSONFormater.toJson(data); + for (RiskifiedLogListener riskifiedLogListener : logListeners) + riskifiedLogListener.getRequestLogs(jsonData); byte[] body = jsonData.getBytes("UTF-8"); String hmac = sha256Handler.createSHA256(body); postRequest.setHeader("X-RISKIFIED-HMAC-SHA256", hmac); - ByteArrayEntity input; input = new ByteArrayEntity(body, ContentType.APPLICATION_JSON); postRequest.setEntity(input); } + + + private HttpPost createPostRequest(String url) { HttpPost postRequest = new HttpPost(url); diff --git a/riskified-sdk/src/main/java/com/riskified/RiskifiedLogListener.java b/riskified-sdk/src/main/java/com/riskified/RiskifiedLogListener.java new file mode 100644 index 00000000..d209197b --- /dev/null +++ b/riskified-sdk/src/main/java/com/riskified/RiskifiedLogListener.java @@ -0,0 +1,7 @@ +package com.riskified; + +public interface RiskifiedLogListener { + + public void getRequestLogs(String jsonLogs); + +} diff --git a/riskified-sdk/src/main/java/com/riskified/RiskifiedLogger.java b/riskified-sdk/src/main/java/com/riskified/RiskifiedLogger.java new file mode 100644 index 00000000..1f95d8d5 --- /dev/null +++ b/riskified-sdk/src/main/java/com/riskified/RiskifiedLogger.java @@ -0,0 +1,10 @@ +package com.riskified; + +public class RiskifiedLogger implements RiskifiedLogListener { + + public void getRequestLogs(String jsonLog) { + System.out.println(" Riskified's request payload = " + jsonLog); + } + +} + diff --git a/riskified-sdk/src/main/java/com/riskified/Utils.java b/riskified-sdk/src/main/java/com/riskified/Utils.java index 412d91b9..6de78e74 100644 --- a/riskified-sdk/src/main/java/com/riskified/Utils.java +++ b/riskified-sdk/src/main/java/com/riskified/Utils.java @@ -11,31 +11,35 @@ public class Utils { public static final String ACCOUNT_SANDBOX_ENVIRONMENT = "https://api-sandbox.riskified.com"; public static final String ACCOUNT_PRODUCTION_ENVIRONMENT = "https://api.riskified.com"; public static final String SCREEN_SANDBOX_ENVIRONMENT = "https://screen-sandbox.riskified.com"; + public static final String CHINA_ACCOUNT_PRODUCTION_ENVIRONMENT = "https://apicdn.riskified.com"; /* - * Testing comments - */ + * Riskified offers suite of services as well as different env, the getUrlString is used to fetch the appropriate service url & env + * For example, We added a new production env called China_Production only for ATO product, therefore we added a new parameter to incorporate it into getUrlString method + * while maintaining backward compatibility with Riskified Client + * + */ public static String getBaseUrlFromEnvironment(Environment environmentType) { - return getUrlString(environmentType, SANDBOX_ENVIRONMENT, PRODUCTION_ENVIRONMENT); + return getUrlString(environmentType, SANDBOX_ENVIRONMENT, PRODUCTION_ENVIRONMENT, PRODUCTION_ENVIRONMENT); } public static String getBaseUrlSyncAnalyzeFromEnvironment(Environment environmentType) { - return getUrlString(environmentType, SANDBOX_ENVIRONMENT, PRODUCTION_SYNC_ANALYZE_ENVIRONMENT); + return getUrlString(environmentType, SANDBOX_ENVIRONMENT, PRODUCTION_SYNC_ANALYZE_ENVIRONMENT,PRODUCTION_SYNC_ANALYZE_ENVIRONMENT); } public static String getDecoBaseFromEnvironment(Environment environmentType) { - return getUrlString(environmentType, DECO_SANDBOX_ENVIRONMENT, DECO_PRODUCTION_ENVIRONMENT); + return getUrlString(environmentType, DECO_SANDBOX_ENVIRONMENT, DECO_PRODUCTION_ENVIRONMENT,DECO_PRODUCTION_ENVIRONMENT); } public static String getAccountBaseFromEnvironment(Environment environmentType) { - return getUrlString(environmentType, ACCOUNT_SANDBOX_ENVIRONMENT, ACCOUNT_PRODUCTION_ENVIRONMENT); + return getUrlString(environmentType, ACCOUNT_SANDBOX_ENVIRONMENT, ACCOUNT_PRODUCTION_ENVIRONMENT,CHINA_ACCOUNT_PRODUCTION_ENVIRONMENT); } public static String getScreenBaseFromEnvironment(Environment environmentType) { - return getUrlString(environmentType, SCREEN_SANDBOX_ENVIRONMENT, PRODUCTION_ENVIRONMENT); + return getUrlString(environmentType, SCREEN_SANDBOX_ENVIRONMENT, PRODUCTION_ENVIRONMENT,PRODUCTION_ENVIRONMENT); } - private static String getUrlString(Environment environmentType, String sandboxEnvironment, String productionEnvironment) { + private static String getUrlString(Environment environmentType, String sandboxEnvironment, String productionEnvironment, String chinaEnvironment) { String url = null; if (environmentType != null) { switch (environmentType) { @@ -48,6 +52,9 @@ private static String getUrlString(Environment environmentType, String sandboxEn case PRODUCTION: url = productionEnvironment; break; + case CHINA_PRODUCTION: + url = chinaEnvironment; + break; } } return url; From b51fec0d15186166cf7d2c7f09f98a72ed189adc Mon Sep 17 00:00:00 2001 From: mooseriskified Date: Wed, 2 Jun 2021 12:21:09 -0400 Subject: [PATCH 3/3] Update the httpclient library update http client library from 4.3.6 to 4.5.13 --- riskified-sdk/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/riskified-sdk/pom.xml b/riskified-sdk/pom.xml index 13241bc1..04e9867b 100644 --- a/riskified-sdk/pom.xml +++ b/riskified-sdk/pom.xml @@ -102,7 +102,7 @@ org.apache.httpcomponents httpclient - 4.3.6 + 4.5.13