@@ -172,10 +172,12 @@ protected void createUserContext(ArgumentsParser argumentsParser, @NonNull Resul
172172 if (userContextsTracker .containsKey (sdkKey )) {
173173 userContextsTracker .get (sdkKey ).put (userContextId , optlyUserContext );
174174 } else {
175- userContextsTracker .put (sdkKey , Collections .singletonMap (userContextId , optlyUserContext ));
175+ Map <String , OptimizelyUserContext > idContextMap = new HashMap <>();
176+ idContextMap .put (userContextId , optlyUserContext );
177+ userContextsTracker .put (sdkKey , idContextMap );
176178 }
177179 result .success (createResponse (true ,
178- Collections .singletonMap (RequestParameterKey .USER_CONTEXT_ID , optlyUserContext ),
180+ Collections .singletonMap (RequestParameterKey .USER_CONTEXT_ID , userContextId ),
179181 SuccessMessage .USER_CONTEXT_CREATED ));
180182 } else {
181183 result .success (createResponse (false , "User context not created " ));
@@ -546,7 +548,7 @@ public OptimizelyClient getOptimizelyClient(String SDKKey) {
546548 public OptimizelyUserContext getUserContext (ArgumentsParser argumentsParser ) {
547549 String SDKKey = argumentsParser .getSdkKey ();
548550 String userContextId = argumentsParser .getUserContextId ();
549- if (userContextId == null || !userContextsTracker .get (SDKKey ).containsKey (userContextId )) {
551+ if (userContextId == null || userContextsTracker . get ( SDKKey ) == null || !userContextsTracker .get (SDKKey ).containsKey (userContextId )) {
550552 return null ;
551553 }
552554 return userContextsTracker .get (SDKKey ).get (userContextId );
0 commit comments