Skip to content

Commit a9ae805

Browse files
update: add backward compatibility support for Android sync and async decisions in OptimizelyUserContext
1 parent a80c0d3 commit a9ae805

File tree

1 file changed

+6
-64
lines changed

1 file changed

+6
-64
lines changed

core-api/src/main/java/com/optimizely/ab/OptimizelyUserContext.java

Lines changed: 6 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -208,6 +208,7 @@ public Map<String, OptimizelyDecision> decideAll() {
208208
/**
209209
* Returns a decision result ({@link OptimizelyDecision}) for a given flag key and a user context,
210210
* which contains all data required to deliver the flag. This method skips CMAB logic.
211+
* backward compatibility support for android sync decisions
211212
* @param key A flag key for which a decision will be made.
212213
* @param options A list of options for decision-making.
213214
* @return A decision result.
@@ -217,20 +218,10 @@ public OptimizelyDecision decideSync(@Nonnull String key,
217218
return optimizely.decideSync(copy(), key, options);
218219
}
219220

220-
/**
221-
* Returns a decision result ({@link OptimizelyDecision}) for a given flag key and a user context,
222-
* which contains all data required to deliver the flag. This method skips CMAB logic.
223-
*
224-
* @param key A flag key for which a decision will be made.
225-
* @return A decision result.
226-
*/
227-
public OptimizelyDecision decideSync(@Nonnull String key) {
228-
return decideSync(key, Collections.emptyList());
229-
}
230-
231221
/**
232222
* Returns a key-map of decision results ({@link OptimizelyDecision}) for multiple flag keys and a user context.
233223
* This method skips CMAB logic.
224+
* backward compatibility support for android sync decisions
234225
* @param keys A list of flag keys for which decisions will be made.
235226
* @param options A list of options for decision-making.
236227
* @return All decision results mapped by flag keys.
@@ -240,41 +231,20 @@ public Map<String, OptimizelyDecision> decideForKeysSync(@Nonnull List<String> k
240231
return optimizely.decideForKeysSync(copy(), keys, options);
241232
}
242233

243-
/**
244-
* Returns a key-map of decision results for multiple flag keys and a user context.
245-
* This method skips CMAB logic.
246-
*
247-
* @param keys A list of flag keys for which decisions will be made.
248-
* @return All decision results mapped by flag keys.
249-
*/
250-
public Map<String, OptimizelyDecision> decideForKeysSync(@Nonnull List<String> keys) {
251-
return decideForKeysSync(keys, Collections.emptyList());
252-
}
253-
254234
/**
255235
* Returns a key-map of decision results ({@link OptimizelyDecision}) for all active flag keys.
256236
* This method skips CMAB logic.
257-
*
237+
* backward compatibility support for android sync decisions
258238
* @param options A list of options for decision-making.
259239
* @return All decision results mapped by flag keys.
260240
*/
261241
public Map<String, OptimizelyDecision> decideAllSync(@Nonnull List<OptimizelyDecideOption> options) {
262242
return optimizely.decideAllSync(copy(), options);
263243
}
264244

265-
/**
266-
* Returns a key-map of decision results ({@link OptimizelyDecision}) for all active flag keys.
267-
* This method skips CMAB logic.
268-
*
269-
* @return A dictionary of all decision results, mapped by flag keys.
270-
*/
271-
public Map<String, OptimizelyDecision> decideAllSync() {
272-
return decideAllSync(Collections.emptyList());
273-
}
274-
275245
/**
276246
* Returns a decision result asynchronously for a given flag key and a user context.
277-
*
247+
* support for android async decisions
278248
* @param key A flag key for which a decision will be made.
279249
* @param callback A callback to invoke when the decision is available.
280250
* @param options A list of options for decision-making.
@@ -286,19 +256,10 @@ public void decideAsync(@Nonnull String key,
286256
fetcher.start();
287257
}
288258

289-
/**
290-
* Returns a decision result asynchronously for a given flag key and a user context.
291-
*
292-
* @param key A flag key for which a decision will be made.
293-
* @param callback A callback to invoke when the decision is available.
294-
*/
295-
public void decideAsync(@Nonnull String key, @Nonnull OptimizelyDecisionCallback callback) {
296-
decideAsync(key, callback, Collections.emptyList());
297-
}
298259

299260
/**
300261
* Returns decision results asynchronously for multiple flag keys.
301-
*
262+
* support for android async decisions
302263
* @param keys A list of flag keys for which decisions will be made.
303264
* @param callback A callback to invoke when decisions are available.
304265
* @param options A list of options for decision-making.
@@ -310,19 +271,9 @@ public void decideForKeysAsync(@Nonnull List<String> keys,
310271
fetcher.start();
311272
}
312273

313-
/**
314-
* Returns decision results asynchronously for multiple flag keys.
315-
*
316-
* @param keys A list of flag keys for which decisions will be made.
317-
* @param callback A callback to invoke when decisions are available.
318-
*/
319-
public void decideForKeysAsync(@Nonnull List<String> keys, @Nonnull OptimizelyDecisionsCallback callback) {
320-
decideForKeysAsync(keys, callback, Collections.emptyList());
321-
}
322-
323274
/**
324275
* Returns decision results asynchronously for all active flag keys.
325-
*
276+
* support for android async decisions
326277
* @param callback A callback to invoke when decisions are available.
327278
* @param options A list of options for decision-making.
328279
*/
@@ -332,15 +283,6 @@ public void decideAllAsync(@Nonnull OptimizelyDecisionsCallback callback,
332283
fetcher.start();
333284
}
334285

335-
/**
336-
* Returns decision results asynchronously for all active flag keys.
337-
*
338-
* @param callback A callback to invoke when decisions are available.
339-
*/
340-
public void decideAllAsync(@Nonnull OptimizelyDecisionsCallback callback) {
341-
decideAllAsync(callback, Collections.emptyList());
342-
}
343-
344286
/**
345287
* Track an event.
346288
*

0 commit comments

Comments
 (0)