Skip to content

Commit cb1d9ea

Browse files
committed
fix cmab interfaces
1 parent 762c44b commit cb1d9ea

File tree

2 files changed

+24
-19
lines changed

2 files changed

+24
-19
lines changed

android-sdk/src/main/java/com/optimizely/ab/android/sdk/OptimizelyUserContextAndroid.java

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919
import com.optimizely.ab.OptimizelyUserContext;
2020
import com.optimizely.ab.optimizelydecision.OptimizelyDecideOption;
2121
import com.optimizely.ab.optimizelydecision.OptimizelyDecision;
22+
import com.optimizely.ab.optimizelydecision.OptimizelyDecisionCallback;;
23+
import com.optimizely.ab.optimizelydecision.OptimizelyDecisionsCallback;
2224

2325
import java.util.Collections;
2426
import java.util.List;
@@ -70,7 +72,7 @@ public OptimizelyUserContextAndroid(@NonNull Optimizely optimizely,
7072
@Override
7173
public OptimizelyDecision decide(@NonNull String key,
7274
@NonNull List<OptimizelyDecideOption> options) {
73-
return optimizely.decideSync(copy(), key, options);
75+
return getOptimizely().decideSync(copy(), key, options);
7476
}
7577

7678
/**
@@ -105,7 +107,7 @@ public OptimizelyDecision decide(@NonNull String key) {
105107
@Override
106108
public Map<String, OptimizelyDecision> decideForKeys(@NonNull List<String> keys,
107109
@NonNull List<OptimizelyDecideOption> options) {
108-
return optimizely.decideForKeysSync(copy(), keys, options);
110+
return getOptimizely().decideForKeysSync(copy(), keys, options);
109111
}
110112

111113
/**
@@ -135,7 +137,7 @@ public Map<String, OptimizelyDecision> decideForKeys(@NonNull List<String> keys)
135137
*/
136138
@Override
137139
public Map<String, OptimizelyDecision> decideAll(@NonNull List<OptimizelyDecideOption> options) {
138-
return optimizely.decideAllSync(copy(), options);
140+
return getOptimizely().decideAllSync(copy(), options);
139141
}
140142

141143
/**
@@ -159,10 +161,10 @@ public Map<String, OptimizelyDecision> decideAll() {
159161
* @param callback A callback to invoke when the decision is available.
160162
* @param options A list of options for decision-making.
161163
*/
162-
public void decideAsync(@Nonnull String key,
163-
@Nonnull OptimizelyDecisionCallback callback,
164-
@Nonnull List<OptimizelyDecideOption> options) {
165-
optimizely.decideAsync(copy(), key, callback, options);
164+
public void decideAsync(@NonNull String key,
165+
@NonNull OptimizelyDecisionCallback callback,
166+
@NonNull List<OptimizelyDecideOption> options) {
167+
getOptimizely().decideAsync(copy(), key, callback, options);
166168
}
167169

168170
/**
@@ -171,7 +173,7 @@ public void decideAsync(@Nonnull String key,
171173
* @param key A flag key for which a decision will be made.
172174
* @param callback A callback to invoke when the decision is available.
173175
*/
174-
public void decideAsync(@Nonnull String key, @Nonnull OptimizelyDecisionCallback callback) {
176+
public void decideAsync(@NonNull String key, @NonNull OptimizelyDecisionCallback callback) {
175177
decideAsync(key, callback, Collections.emptyList());
176178
}
177179

@@ -182,10 +184,10 @@ public void decideAsync(@Nonnull String key, @Nonnull OptimizelyDecisionCallback
182184
* @param callback A callback to invoke when decisions are available.
183185
* @param options A list of options for decision-making.
184186
*/
185-
public void decideForKeysAsync(@Nonnull List<String> keys,
186-
@Nonnull OptimizelyDecisionsCallback callback,
187-
@Nonnull List<OptimizelyDecideOption> options) {
188-
optimizely.decideForKeysAsync(copy(), keys, callback, options);
187+
public void decideForKeysAsync(@NonNull List<String> keys,
188+
@NonNull OptimizelyDecisionsCallback callback,
189+
@NonNull List<OptimizelyDecideOption> options) {
190+
getOptimizely().decideForKeysAsync(copy(), keys, callback, options);
189191
}
190192

191193
/**
@@ -194,7 +196,7 @@ public void decideForKeysAsync(@Nonnull List<String> keys,
194196
* @param keys A list of flag keys for which decisions will be made.
195197
* @param callback A callback to invoke when decisions are available.
196198
*/
197-
public void decideForKeysAsync(@Nonnull List<String> keys, @Nonnull OptimizelyDecisionsCallback callback) {
199+
public void decideForKeysAsync(@NonNull List<String> keys, @NonNull OptimizelyDecisionsCallback callback) {
198200
decideForKeysAsync(keys, callback, Collections.emptyList());
199201
}
200202

@@ -204,17 +206,17 @@ public void decideForKeysAsync(@Nonnull List<String> keys, @Nonnull OptimizelyDe
204206
* @param callback A callback to invoke when decisions are available.
205207
* @param options A list of options for decision-making.
206208
*/
207-
public void decideAllAsync(@Nonnull OptimizelyDecisionsCallback callback,
208-
@Nonnull List<OptimizelyDecideOption> options) {
209-
optimizely.decideAllAsync(copy(), callback, options);
209+
public void decideAllAsync(@NonNull OptimizelyDecisionsCallback callback,
210+
@NonNull List<OptimizelyDecideOption> options) {
211+
getOptimizely().decideAllAsync(copy(), callback, options);
210212
}
211213

212214
/**
213215
* Returns decision results asynchronously for all active flag keys.
214216
*
215217
* @param callback A callback to invoke when decisions are available.
216218
*/
217-
public void decideAllAsync(@Nonnull OptimizelyDecisionsCallback callback) {
219+
public void decideAllAsync(@NonNull OptimizelyDecisionsCallback callback) {
218220
decideAllAsync(callback, Collections.emptyList());
219221
}
220222

android-sdk/src/main/java/com/optimizely/ab/android/sdk/cmab/DefaultCmabClient.kt

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ open class DefaultCmabClient(private val client: Client) : CmabClient {
3434
constructor(context: Context) : this(Client(OptlyStorage(context), LoggerFactory.getLogger(OptlyStorage::class.java)))
3535

3636
@VisibleForTesting(otherwise = VisibleForTesting.PROTECTED)
37-
open fun fetchDecision(
37+
override fun fetchDecision(
3838
ruleId: String?,
3939
userId: String?,
4040
attributes: Map<String?, Any?>?,
@@ -43,7 +43,10 @@ open class DefaultCmabClient(private val client: Client) : CmabClient {
4343
val request: Client.Request<String?> = Client.Request {
4444
var urlConnection: HttpURLConnection? = null
4545
try {
46-
val apiEndpoint = String.format(CmabClientHelper.CMAB_PREDICTION_ENDPOINT, ruleId)
46+
// [TESTING]
47+
// val apiEndpoint = String.format(CmabClientHelper.CMAB_PREDICTION_ENDPOINT, ruleId)
48+
val apiEndpoint = String.format("https://prediction.cmab.optimizely.com/predict/%s", ruleId)
49+
4750
val requestBody: String =
4851
CmabClientHelper.buildRequestJson(userId, ruleId, attributes, cmabUuid)
4952

0 commit comments

Comments
 (0)