From ed65fc20a4a48b0ff200563e7a90c0824bcd8d63 Mon Sep 17 00:00:00 2001 From: skyflow-bharti Date: Mon, 1 Sep 2025 11:30:48 +0530 Subject: [PATCH 1/2] SK-2274 add retry tokens fn --- .../skyflow/utils/validations/Validations.java | 4 ++-- .../skyflow/vault/controller/VaultController.java | 2 +- .../com/skyflow/vault/data/DetokenizeRequest.java | 13 +++++++------ .../skyflow/vault/data/DetokenizeResponse.java | 15 +++++++++++++-- 4 files changed, 23 insertions(+), 11 deletions(-) diff --git a/v3/src/main/java/com/skyflow/utils/validations/Validations.java b/v3/src/main/java/com/skyflow/utils/validations/Validations.java index 23b3c252..b7ea4bbd 100644 --- a/v3/src/main/java/com/skyflow/utils/validations/Validations.java +++ b/v3/src/main/java/com/skyflow/utils/validations/Validations.java @@ -81,7 +81,7 @@ public static void validateDetokenizeRequest(DetokenizeRequest request) throws S )); throw new SkyflowException(ErrorCode.INVALID_INPUT.getCode(), ErrorMessage.DetokenizeRequestNull.getMessage()); } - ArrayList tokens = request.getTokens(); + List tokens = request.getTokens(); if (tokens == null || tokens.isEmpty()) { LogUtil.printErrorLog(Utils.parameterizedString( ErrorLogs.EMPTY_DETOKENIZE_DATA.getLog(), InterfaceName.DETOKENIZE.getName() @@ -96,7 +96,7 @@ public static void validateDetokenizeRequest(DetokenizeRequest request) throws S throw new SkyflowException(ErrorCode.INVALID_INPUT.getCode(), ErrorMessage.EmptyTokenInDetokenizeData.getMessage()); } } - ArrayList groupRedactions = request.getTokenGroupRedactions(); + List groupRedactions = request.getTokenGroupRedactions(); if (groupRedactions != null && !groupRedactions.isEmpty()) { for (TokenGroupRedactions group : groupRedactions) { if (group == null) { diff --git a/v3/src/main/java/com/skyflow/vault/controller/VaultController.java b/v3/src/main/java/com/skyflow/vault/controller/VaultController.java index 1c4ed195..270bf98e 100644 --- a/v3/src/main/java/com/skyflow/vault/controller/VaultController.java +++ b/v3/src/main/java/com/skyflow/vault/controller/VaultController.java @@ -196,7 +196,7 @@ private com.skyflow.vault.data.InsertResponse processSync( private DetokenizeResponse processDetokenizeSync( com.skyflow.generated.rest.resources.recordservice.requests.DetokenizeRequest detokenizeRequest, - ArrayList originalTokens + List originalTokens ) throws ExecutionException, InterruptedException, SkyflowException { LogUtil.printInfoLog(InfoLogs.PROCESSING_BATCHES.getLog()); List errorTokens = Collections.synchronizedList(new ArrayList<>()); diff --git a/v3/src/main/java/com/skyflow/vault/data/DetokenizeRequest.java b/v3/src/main/java/com/skyflow/vault/data/DetokenizeRequest.java index a1e7ca76..93ba8b9b 100644 --- a/v3/src/main/java/com/skyflow/vault/data/DetokenizeRequest.java +++ b/v3/src/main/java/com/skyflow/vault/data/DetokenizeRequest.java @@ -1,6 +1,7 @@ package com.skyflow.vault.data; import java.util.ArrayList; +import java.util.List; public class DetokenizeRequest { private final DetokenizeRequestBuilder builder; @@ -11,23 +12,23 @@ private DetokenizeRequest(DetokenizeRequestBuilder builder){ public static DetokenizeRequestBuilder builder(){ return new DetokenizeRequestBuilder(); } - public ArrayList getTokens(){ + public List getTokens(){ return this.builder.tokens; } - public ArrayList getTokenGroupRedactions(){ + public List getTokenGroupRedactions(){ return this.builder.tokenGroupRedactions; } public static final class DetokenizeRequestBuilder{ - private ArrayList tokens; + private List tokens; - private ArrayList tokenGroupRedactions; + private List tokenGroupRedactions; - public DetokenizeRequestBuilder tokens(ArrayList tokens){ + public DetokenizeRequestBuilder tokens(List tokens){ this.tokens = tokens; return this; } - public DetokenizeRequestBuilder tokenGroupRedactions(ArrayList tokenGroupRedactions){ + public DetokenizeRequestBuilder tokenGroupRedactions(List tokenGroupRedactions){ this.tokenGroupRedactions = tokenGroupRedactions; return this; } diff --git a/v3/src/main/java/com/skyflow/vault/data/DetokenizeResponse.java b/v3/src/main/java/com/skyflow/vault/data/DetokenizeResponse.java index cdc25e58..a0c0e37b 100644 --- a/v3/src/main/java/com/skyflow/vault/data/DetokenizeResponse.java +++ b/v3/src/main/java/com/skyflow/vault/data/DetokenizeResponse.java @@ -7,6 +7,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; +import java.util.stream.Collectors; public class DetokenizeResponse { @Expose(serialize = true) @@ -18,8 +19,7 @@ public class DetokenizeResponse { private List errors; private List originalPayload; - private ArrayList> recordsToRetry; - + private List recordsToRetry; public DetokenizeResponse(List success, List errors) { this.success = success; @@ -34,6 +34,17 @@ public DetokenizeResponse(List success, List getTokensToRetry() { + if (recordsToRetry == null) { + recordsToRetry = new ArrayList<>(); + recordsToRetry = errors.stream() + .filter(error -> (error.getCode() >= 500 && error.getCode() <= 599) && error.getCode() != 529) + .map(errorRecord -> originalPayload.get(errorRecord.getIndex())) + .collect(Collectors.toCollection(ArrayList::new)); + } + return recordsToRetry; + } + public List getSuccess() { return success; } From 97cf1f75c9cade9b89ab50aa2aca74a30c0cc1b0 Mon Sep 17 00:00:00 2001 From: skyflow-bharti Date: Mon, 1 Sep 2025 11:52:54 +0530 Subject: [PATCH 2/2] SK-2274 return List in RETRUN tokens --- v3/src/main/java/com/skyflow/vault/data/DetokenizeResponse.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/v3/src/main/java/com/skyflow/vault/data/DetokenizeResponse.java b/v3/src/main/java/com/skyflow/vault/data/DetokenizeResponse.java index a0c0e37b..4116c8f5 100644 --- a/v3/src/main/java/com/skyflow/vault/data/DetokenizeResponse.java +++ b/v3/src/main/java/com/skyflow/vault/data/DetokenizeResponse.java @@ -40,7 +40,7 @@ public List getTokensToRetry() { recordsToRetry = errors.stream() .filter(error -> (error.getCode() >= 500 && error.getCode() <= 599) && error.getCode() != 529) .map(errorRecord -> originalPayload.get(errorRecord.getIndex())) - .collect(Collectors.toCollection(ArrayList::new)); + .collect(Collectors.toList()); } return recordsToRetry; }