Skip to content

Commit 7efe66f

Browse files
authored
Merge pull request #182 from Riskified/DEV-115700
DEV-115700 Added risk_indicator object to ResOrder.java
2 parents 1c1f243 + 2369ae2 commit 7efe66f

File tree

9 files changed

+158
-24
lines changed

9 files changed

+158
-24
lines changed

.circleci/maven-release-settings.xml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
11
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
22
<servers>
3-
<!-- <server>
4-
<id>ossrh</id>
5-
<username>${env.SERVER_OSSRH_USERNAME}</username>
6-
<password>${env.SERVER_OSSRH_PASSWORD}</password>
7-
</server> -->
83
<server>
94
<id>central</id>
105
<username>${env.MAVEN_CENTRAL_USERNAME}</username>

README.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
Riskified JAVA SDK
22
=================
33

4-
version: 2.3.2
4+
version: 3.3.0
55
------------------
66

77
See http://apiref.riskified.com for full API documentation
@@ -104,6 +104,7 @@ curl -H "Content-Type: application/json" -H "X-RISKIFIED-HMAC-SHA256: 071ef80d5
104104
<dependency>
105105
<groupId>com.riskified</groupId>
106106
<artifactId>riskified-sdk</artifactId>
107-
<version>v2.3.0</version>
107+
<version>v3.3.0</version>
108108
</dependency>
109109
```
110+

riskified-sdk/pom.xml

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<modelVersion>4.0.0</modelVersion>
55
<groupId>com.riskified</groupId>
66
<artifactId>riskified-sdk</artifactId>
7-
<version>v3.2.0</version>
7+
<version>v3.3.0</version>
88
<name>Riskified SDK</name>
99
<description>Riskified rest api SDK for java</description>
1010
<url>https://www.riskified.com</url>
@@ -36,24 +36,14 @@
3636
</configuration>
3737
</plugin>
3838

39-
<!-- <plugin>
40-
<groupId>org.sonatype.plugins</groupId>
41-
<artifactId>nexus-staging-maven-plugin</artifactId>
42-
<version>1.6.3</version>
43-
<extensions>true</extensions>
44-
<configuration>
45-
<serverId>ossrh</serverId>
46-
<nexusUrl>https://oss.sonatype.org/</nexusUrl>
47-
<autoReleaseAfterClose>true</autoReleaseAfterClose>
48-
</configuration>
49-
</plugin> -->
5039
<plugin>
5140
<groupId>org.sonatype.central</groupId>
5241
<artifactId>central-publishing-maven-plugin</artifactId>
5342
<version>0.8.0</version>
5443
<extensions>true</extensions>
5544
<configuration>
5645
<publishingServerId>central</publishingServerId>
46+
<autoPublish>true</autoPublish>
5747
</configuration>
5848
</plugin>
5949

riskified-sdk/src/main/java/com/riskified/RiskifiedClient.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1075,7 +1075,7 @@ private HttpPost createPostRequest(String url) {
10751075
postRequest.setHeader(HttpHeaders.ACCEPT, "application/vnd.riskified.com; version=2");
10761076
postRequest.setHeader(HttpHeaders.ACCEPT, "application/json");
10771077
postRequest.setHeader("X-RISKIFIED-SHOP-DOMAIN", shopUrl);
1078-
postRequest.setHeader("User-Agent","riskified_java_sdk/3.2.0"); // TODO: take the version automatically
1078+
postRequest.setHeader("User-Agent","riskified_java_sdk/3.3.0"); // TODO: take the version automatically
10791079
postRequest.setHeader("Version",versionHeaderValue);
10801080
return postRequest;
10811081
}

riskified-sdk/src/main/java/com/riskified/models/BankWirePaymentDetails.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ public class BankWirePaymentDetails implements IPaymentDetails {
66
private String accountNumber;
77
private String routingNumber;
88
private String token;
9+
private Date storedPaymentCreatedAt;
10+
private Date storedPaymentUpdatedAt;
911

1012
public BankWirePaymentDetails(String accountNumber, String routingNumber) {
1113
this.accountNumber = accountNumber;
@@ -36,6 +38,22 @@ public void setToken(String token){
3638
this.token = token;
3739
}
3840

41+
public Date getStoredPaymentCreatedAt(){
42+
return self.storedPaymentCreatedAt;
43+
}
44+
45+
public void setStoredPaymentCreatedAt(Date storedPaymentCreatedAt){
46+
this.token = storedPaymentCreatedAt;
47+
}
48+
49+
public Date getStoredPaymentUpdateddAt(){
50+
return self.storedPaymentUpdatedAt;
51+
}
52+
53+
public void setStoredPaymentUpdateddAt(Date storedPaymentUpdatedAt){
54+
this.token = storedPaymentUpdatedAt;
55+
}
56+
3957
public void validate(Validation validationType) throws FieldBadFormatException {
4058
if (validationType == Validation.ALL) {
4159
Validate.notNullOrEmpty(this, this.accountNumber, "Bank Account Number");

riskified-sdk/src/main/java/com/riskified/models/Recipient.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ public class Recipient implements IValidated {
1414
private Date createdAt;
1515
private Date updatedAt;
1616
private boolean selfRecipient;
17+
private String walletId;
1718

1819
public Recipient() {
1920
}
@@ -79,4 +80,12 @@ public boolean isSelfRecipient() {
7980
public void setSelfRecipient(boolean selfRecipient) {
8081
this.selfRecipient = selfRecipient;
8182
}
83+
84+
public String getWalletId(){
85+
return self.walletId;
86+
}
87+
88+
public void setWalletId(String walletId){
89+
self.walletId = walletId
90+
}
8291
}

riskified-sdk/src/main/java/com/riskified/models/ResOrder.java

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
package com.riskified.models;
22

3+
import com.google.gson.annotations.SerializedName;
4+
5+
import java.util.Map;
6+
37
public class ResOrder {
48

59
private String id;
@@ -16,6 +20,9 @@ public class ResOrder {
1620
private Double riskScore;
1721
private PolicyProtect policyProtect;
1822

23+
@SerializedName("risk_indicators")
24+
private Map<String, Object> riskIndicatorsMap;
25+
1926

2027
public String getId() {
2128
return id;
@@ -113,4 +120,33 @@ public void setPolicyProtect(PolicyProtect policyProtect) {
113120
this.policyProtect = policyProtect;
114121
}
115122

123+
124+
public Map<String, Object> getRiskIndicatorsMap() {
125+
return riskIndicatorsMap;
126+
}
127+
128+
public void setRiskIndicatorsMap(Map<String, Object> riskIndicatorsMap) {
129+
this.riskIndicatorsMap = riskIndicatorsMap;
130+
}
131+
132+
// Convenience method to get as RiskIndicators object
133+
public RiskIndicators getRiskIndicators() {
134+
if (riskIndicatorsMap == null || riskIndicatorsMap.isEmpty()) {
135+
return null;
136+
}
137+
138+
RiskIndicators ri = new RiskIndicators();
139+
riskIndicatorsMap.forEach(ri::set);
140+
return ri;
141+
}
142+
143+
// Convenience method to set from RiskIndicators object
144+
public void setRiskIndicators(RiskIndicators riskIndicators) {
145+
if (riskIndicators == null) {
146+
this.riskIndicatorsMap = null;
147+
} else {
148+
this.riskIndicatorsMap = riskIndicators.getAllProperties();
149+
}
150+
}
151+
116152
}
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
package com.riskified.models;
2+
3+
import java.util.HashMap;
4+
import java.util.Map;
5+
import java.util.Set;
6+
7+
public class RiskIndicators {
8+
private final Map<String, Object> properties = new HashMap<>();
9+
10+
// Generic setter - accepts any field name and value
11+
public RiskIndicators set(String fieldName, Object value) {
12+
properties.put(fieldName, value);
13+
return this;
14+
}
15+
16+
// Generic getter with type casting
17+
@SuppressWarnings("unchecked")
18+
public <T> T get(String fieldName, Class<T> type) {
19+
Object value = properties.get(fieldName);
20+
if (value == null) return null;
21+
return (T) value;
22+
}
23+
24+
// Simple getter (returns Object)
25+
public Object get(String fieldName) {
26+
return properties.get(fieldName);
27+
}
28+
29+
// Check if field exists
30+
public boolean has(String fieldName) {
31+
return properties.containsKey(fieldName);
32+
}
33+
34+
// Get all defined fields
35+
public Set<String> getFields() {
36+
return properties.keySet();
37+
}
38+
39+
// Remove field
40+
public RiskIndicators remove(String fieldName) {
41+
properties.remove(fieldName);
42+
return this;
43+
}
44+
45+
// Get all properties
46+
public Map<String, Object> getAllProperties() {
47+
return new HashMap<>(properties);
48+
}
49+
50+
@Override
51+
public String toString() {
52+
return "RiskIndicators" + properties;
53+
}
54+
}
55+

riskified-sdk/src/main/java/com/riskified/notifications/Notification.java

Lines changed: 34 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
package com.riskified.notifications;
22

3-
import com.riskified.models.Context;
4-
import com.riskified.models.Custom;
5-
import com.riskified.models.PolicyProtect;
6-
import com.riskified.models.RecoveryEligibility;
3+
import com.google.gson.annotations.SerializedName;
4+
import com.riskified.models.*;
5+
6+
import java.util.Map;
77

88
// Shop URL may also be added to the API notifications from Riskified depending on your
99
// account configuration (contact your Account Manager or Integration Engineer for details).
@@ -34,6 +34,8 @@ public static class NotificationOrder {
3434
private Context context;
3535
private String[] decision_reasons;
3636
private PolicyProtect policyProtect;
37+
@SerializedName("risk_indicators")
38+
private Map<String, Object> riskIndicatorsMap;
3739

3840
public String getId() {
3941
return id;
@@ -113,5 +115,33 @@ public PolicyProtect getPolicyProtect() {
113115
return policyProtect;
114116
}
115117
public void setPolicyProtect(PolicyProtect policyProtect) {}
118+
119+
public Map<String, Object> getRiskIndicatorsMap() {
120+
return riskIndicatorsMap;
121+
}
122+
123+
public void setRiskIndicatorsMap(Map<String, Object> riskIndicatorsMap) {
124+
this.riskIndicatorsMap = riskIndicatorsMap;
125+
}
126+
127+
// Convenience method to get as RiskIndicators object
128+
public RiskIndicators getRiskIndicators() {
129+
if (riskIndicatorsMap == null || riskIndicatorsMap.isEmpty()) {
130+
return null;
131+
}
132+
133+
RiskIndicators ri = new RiskIndicators();
134+
riskIndicatorsMap.forEach(ri::set);
135+
return ri;
136+
}
137+
138+
// Convenience method to set from RiskIndicators object
139+
public void setRiskIndicators(RiskIndicators riskIndicators) {
140+
if (riskIndicators == null) {
141+
this.riskIndicatorsMap = null;
142+
} else {
143+
this.riskIndicatorsMap = riskIndicators.getAllProperties();
144+
}
145+
}
116146
}
117147
}

0 commit comments

Comments
 (0)