Skip to content

Commit 7100710

Browse files
committed
Added option of setting host and suffix of datafile URL in android sdk
1 parent b4114b8 commit 7100710

File tree

3 files changed

+19
-0
lines changed

3 files changed

+19
-0
lines changed

android/src/main/java/com/optimizely/optimizely_flutter_sdk/OptimizelyFlutterClient.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535

3636
import com.fasterxml.jackson.databind.ObjectMapper;
3737
import com.optimizely.ab.android.sdk.OptimizelyManager;
38+
import com.optimizely.ab.android.shared.DatafileConfig;
3839
import com.optimizely.ab.error.RaiseExceptionErrorHandler;
3940
import com.optimizely.ab.event.BatchEventProcessor;
4041
import com.optimizely.ab.event.EventProcessor;
@@ -105,6 +106,14 @@ protected void initializeOptimizely(@NonNull ArgumentsParser argumentsParser, @N
105106
if (argumentsParser.getDatafilePeriodicDownloadInterval() != null) {
106107
datafilePeriodicDownloadInterval = argumentsParser.getDatafilePeriodicDownloadInterval();
107108
}
109+
110+
// String default datafile host
111+
String defaultDatafileHost = "https://cdn.optimizely.com";
112+
String environmentUrlSuffix = "/datafiles/%s.json";
113+
114+
DatafileConfig.defaultHost = argumentsParser.getDatafileHostPrefix() != null ? argumentsParser.getDatafileHostPrefix() : defaultDatafileHost;
115+
DatafileConfig.environmentUrlSuffix = argumentsParser.getDatafileHostSuffix() != null ? argumentsParser.getDatafileHostSuffix() : environmentUrlSuffix;
116+
108117
// Delete old user context
109118
userContextsTracker.remove(sdkKey);
110119
if (getOptimizelyClient(sdkKey) != null) {

android/src/main/java/com/optimizely/optimizely_flutter_sdk/helper_classes/ArgumentsParser.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,4 +90,12 @@ public Integer getEventMaxQueueSize() {
9090
public Integer getDatafilePeriodicDownloadInterval() {
9191
return (Integer) arguments.get(Constants.RequestParameterKey.DATAFILE_PERIODIC_DOWNLOAD_INTERVAL);
9292
}
93+
94+
public String getDatafileHostSuffix() {
95+
return (String) arguments.get(Constants.RequestParameterKey.DATAFILE_HOST_SUFFIX);
96+
}
97+
98+
public String getDatafileHostPrefix() {
99+
return (String) arguments.get(Constants.RequestParameterKey.DATAFILE_HOST_PREFIX);
100+
}
93101
}

android/src/main/java/com/optimizely/optimizely_flutter_sdk/helper_classes/Constants.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,8 @@ public static class RequestParameterKey {
5757
public static final String FLAG_KEY = "flagKey";
5858
public static final String RULE_KEY = "ruleKey";
5959
public static final String VARIATION_KEY = "variationKey";
60+
public static final String DATAFILE_HOST_PREFIX = "datafileHostPrefix";
61+
public static final String DATAFILE_HOST_SUFFIX = "datafileHostSuffix";
6062
}
6163

6264
public static class ErrorMessage {

0 commit comments

Comments
 (0)