Skip to content

Commit 753a7d5

Browse files
committed
PR feedback.
1 parent 82fb9dd commit 753a7d5

3 files changed

Lines changed: 18 additions & 10 deletions

File tree

lib/sdk/server/src/main/java/com/launchdarkly/sdk/server/integrations/FileDataSourceBase.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -81,16 +81,17 @@ protected FDv2SourceResult loadData() {
8181
}
8282

8383
FullDataSet<ItemDescriptor> fullData = builder.build();
84-
ChangeSet<ItemDescriptor> changeSet = buildChangeSet(fullData, version);
84+
ChangeSet<ItemDescriptor> changeSet = buildChangeSet(fullData);
8585
return FDv2SourceResult.changeSet(changeSet, false);
8686
}
8787

8888
/**
8989
* Builds a ChangeSet from a FullDataSet.
9090
*/
91-
private ChangeSet<ItemDescriptor> buildChangeSet(FullDataSet<ItemDescriptor> fullData, int version) {
91+
private ChangeSet<ItemDescriptor> buildChangeSet(FullDataSet<ItemDescriptor> fullData) {
9292
return new ChangeSet<>(
9393
ChangeSetType.Full,
94+
// File data is currently selector-less.
9495
Selector.EMPTY,
9596
fullData.getData(),
9697
null, // no environment ID for file data
@@ -138,10 +139,6 @@ public DataLoader(List<SourceInfo> sources) {
138139
this.lastVersion = new AtomicInteger(0);
139140
}
140141

141-
public Iterable<SourceInfo> getSources() {
142-
return sources;
143-
}
144-
145142
/**
146143
* Loads data from all sources into the builder.
147144
*

lib/sdk/server/src/main/java/com/launchdarkly/sdk/server/integrations/FileDataSourceBuilder.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,14 @@ public FileDataSourceBuilder duplicateKeysHandling(FileData.DuplicateKeysHandlin
126126
@Override
127127
public DataSource build(ClientContext context) {
128128
LDLogger logger = context.getBaseLogger().subLogger("DataSource");
129-
return new FileDataSourceImpl(context.getDataSourceUpdateSink(), sources, autoUpdate, duplicateKeysHandling, logger);
129+
return new FileDataSourceImpl(
130+
context.getDataSourceUpdateSink(),
131+
sources,
132+
autoUpdate,
133+
duplicateKeysHandling,
134+
logger,
135+
shouldPersist
136+
);
130137
}
131138

132139
/**

lib/sdk/server/src/main/java/com/launchdarkly/sdk/server/integrations/FileDataSourceImpl.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,12 @@ final class FileDataSourceImpl implements DataSource {
3838
List<SourceInfo> sources,
3939
boolean autoUpdate,
4040
FileData.DuplicateKeysHandling duplicateKeysHandling,
41-
LDLogger logger
41+
LDLogger logger,
42+
boolean persist
4243
) {
4344
this.dataSourceUpdates = dataSourceUpdates;
4445
this.logger = logger;
45-
this.synchronizer = new FileSynchronizer(sources, autoUpdate, duplicateKeysHandling, logger, true);
46+
this.synchronizer = new FileSynchronizer(sources, autoUpdate, duplicateKeysHandling, logger, persist);
4647
}
4748

4849
@Override
@@ -93,7 +94,10 @@ private void runUpdateLoop() {
9394
private void processResult(FDv2SourceResult result) {
9495
if (result.getResultType() == FDv2SourceResult.ResultType.CHANGE_SET) {
9596
// Convert ChangeSet to FullDataSet for legacy init()
96-
FullDataSet<ItemDescriptor> fullData = new FullDataSet<>(result.getChangeSet().getData());
97+
FullDataSet<ItemDescriptor> fullData = new FullDataSet<>(
98+
result.getChangeSet().getData(),
99+
result.getChangeSet().shouldPersist()
100+
);
97101
dataSourceUpdates.init(fullData);
98102
dataSourceUpdates.updateStatus(State.VALID, null);
99103
inited.set(true);

0 commit comments

Comments
 (0)