From 8d618c9654e8d90ff419894493ccf70cfce0db99 Mon Sep 17 00:00:00 2001 From: chandresh-pancholi Date: Thu, 22 Dec 2022 03:34:20 +0530 Subject: [PATCH] updating custom and phoneNumber strategy --- .../medici/strategy/CustomParameterWithIdStrategy.java | 10 ++++++---- .../com/navi/medici/strategy/PhoneNumberStrategy.java | 8 ++++---- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/litmus-client/src/main/java/com/navi/medici/strategy/CustomParameterWithIdStrategy.java b/litmus-client/src/main/java/com/navi/medici/strategy/CustomParameterWithIdStrategy.java index 43ba49c..4f2bf06 100644 --- a/litmus-client/src/main/java/com/navi/medici/strategy/CustomParameterWithIdStrategy.java +++ b/litmus-client/src/main/java/com/navi/medici/strategy/CustomParameterWithIdStrategy.java @@ -16,6 +16,8 @@ public class CustomParameterWithIdStrategy implements Strategy { private static final String SEGMENT = "segment"; + private static final String CUSTOM_PARAMETER_NAME = "customParameter"; + private final HttpExperimentFetcher experimentFetcher; public CustomParameterWithIdStrategy(HttpExperimentFetcher experimentFetcher) { @@ -43,19 +45,19 @@ public class CustomParameterWithIdStrategy implements Strategy { } private boolean customWithIdSegmentCheck(Map parameters, LitmusContext litmusContext) { - var deviceId = litmusContext.getDeviceId().orElse(null); + var customParameterId = litmusContext.getProperties().get(CUSTOM_PARAMETER_NAME); var segmentName = parameters.get(SEGMENT); - var result = experimentFetcher.segmentIdExists(segmentName, deviceId); + var result = experimentFetcher.segmentIdExists(segmentName, customParameterId); return result.getData() != null && (Boolean) result.getData(); } private boolean segmentCheckWithRollout(Map parameters, LitmusContext litmusContext) { - var deviceId = litmusContext.getDeviceId().orElse(null); + var customParameterId = litmusContext.getProperties().get(CUSTOM_PARAMETER_NAME); var percentage = StrategyUtils.getPercentage(parameters.get(PERCENTAGE)); var groupId = parameters.getOrDefault(GROUP_ID, ""); - var norm = StrategyUtils.getNormalizedNumber(deviceId, groupId); + var norm = StrategyUtils.getNormalizedNumber(customParameterId, groupId); return Optional.of(customWithIdSegmentCheck(parameters, litmusContext)) .map(r -> r && percentage > 0 && norm <= percentage) diff --git a/litmus-client/src/main/java/com/navi/medici/strategy/PhoneNumberStrategy.java b/litmus-client/src/main/java/com/navi/medici/strategy/PhoneNumberStrategy.java index 1754471..3444c6d 100644 --- a/litmus-client/src/main/java/com/navi/medici/strategy/PhoneNumberStrategy.java +++ b/litmus-client/src/main/java/com/navi/medici/strategy/PhoneNumberStrategy.java @@ -41,19 +41,19 @@ public class PhoneNumberStrategy implements Strategy { } private boolean phoneNumberSegmentCheck(Map parameters, LitmusContext litmusContext) { - var userId = litmusContext.getUserId().orElse(null); + var phoneNumber = litmusContext.getPhoneNumber().orElse(null); var segmentName = parameters.get(SEGMENT); - var result = experimentFetcher.segmentIdExists(segmentName, userId); + var result = experimentFetcher.segmentIdExists(segmentName, phoneNumber); return result.getData() != null && (Boolean) result.getData(); } private boolean segmentCheckWithRollout(Map parameters, LitmusContext litmusContext) { - var userId = litmusContext.getUserId().orElse(null); + var phoneNumber = litmusContext.getPhoneNumber().orElse(null); var percentage = StrategyUtils.getPercentage(parameters.get(PERCENTAGE)); var groupId = parameters.getOrDefault(GROUP_ID, ""); - var norm = StrategyUtils.getNormalizedNumber(userId, groupId); + var norm = StrategyUtils.getNormalizedNumber(phoneNumber, groupId); return Optional.of(phoneNumberSegmentCheck(parameters, litmusContext)) .map(r -> r && percentage > 0 && norm <= percentage)