44import co .featbit .server .exterior .DataStorageTypes ;
55import com .google .common .annotations .VisibleForTesting ;
66import com .google .common .collect .ImmutableMap ;
7- import com .google .gson .annotations .Expose ;
87import com .google .gson .annotations .JsonAdapter ;
98import com .google .gson .reflect .TypeToken ;
109import org .apache .commons .lang3 .StringUtils ;
@@ -168,9 +167,7 @@ Map<DataStorageTypes.Category, Map<String, DataStorageTypes.Item>> toStorageType
168167 static class Segment implements DataStorageTypes .Item , JsonHelper .AfterJsonParseDeserializable {
169168 private final String id ;
170169 private final Boolean isArchived ;
171- @ Expose (serialize = false )
172170 final Date updatedAt ;
173- @ Expose (deserialize = false )
174171 private Long timestamp ;
175172 private final List <String > included ;
176173 private final List <String > excluded ;
@@ -247,9 +244,7 @@ public int compareTo(@NotNull DataStorageTypes.Item o) {
247244 @ JsonAdapter (JsonHelper .AfterJsonParseDeserializableTypeAdapterFactory .class )
248245 static class FeatureFlag implements DataStorageTypes .Item , JsonHelper .AfterJsonParseDeserializable {
249246 final String id ;
250- @ Expose (serialize = false )
251247 final Date updatedAt ;
252- @ Expose (deserialize = false )
253248 private Long timestamp ;
254249 private final boolean isArchived ;
255250 private final boolean exptIncludeAllTargets ;
@@ -262,8 +257,7 @@ static class FeatureFlag implements DataStorageTypes.Item, JsonHelper.AfterJsonP
262257 private final List <TargetRule > rules ;
263258 private final Fallthrough fallthrough ;
264259 private final String disabledVariationId ;
265- @ Expose (serialize = false , deserialize = false )
266- private Map <String , Variation > variationMap ;
260+ private transient Map <String , Variation > variationMap ;
267261
268262 FeatureFlag (String id , Date updatedAt , boolean isArchived , boolean exptIncludeAllTargets , boolean isEnabled , String name , String key , String variationType , List <Variation > variations , List <TargetUser > targetUsers , List <TargetRule > rules , Fallthrough fallthrough , String disabledVariationId ) {
269263 this .id = id ;
@@ -536,5 +530,22 @@ public String getDispatchKey() {
536530 }
537531 }
538532
533+ static class DataExposer {
534+ private final List <FeatureFlag > featureFlags ;
535+ private final List <Segment > segments ;
536+
537+ public DataExposer (List <FeatureFlag > featureFlags , List <Segment > segments ) {
538+ this .featureFlags = featureFlags ;
539+ this .segments = segments ;
540+ }
541+
542+ public List <FeatureFlag > getFeatureFlags () {
543+ return featureFlags ;
544+ }
545+
546+ public List <Segment > getSegments () {
547+ return segments ;
548+ }
549+ }
539550
540551}
0 commit comments