@@ -171,10 +171,12 @@ protected void createUserContext(ArgumentsParser argumentsParser, @NonNull Resul
171171 if (userContextsTracker .containsKey (sdkKey )) {
172172 userContextsTracker .get (sdkKey ).put (userContextId , optlyUserContext );
173173 } else {
174- userContextsTracker .put (sdkKey , Collections .singletonMap (userContextId , optlyUserContext ));
174+ Map <String , OptimizelyUserContext > idContextMap = new HashMap <>();
175+ idContextMap .put (userContextId , optlyUserContext );
176+ userContextsTracker .put (sdkKey , idContextMap );
175177 }
176178 result .success (createResponse (true ,
177- Collections .singletonMap (RequestParameterKey .USER_CONTEXT_ID , optlyUserContext ),
179+ Collections .singletonMap (RequestParameterKey .USER_CONTEXT_ID , userContextId ),
178180 SuccessMessage .USER_CONTEXT_CREATED ));
179181 } else {
180182 result .success (createResponse (false , "User context not created " ));
@@ -545,7 +547,7 @@ public OptimizelyClient getOptimizelyClient(String SDKKey) {
545547 public OptimizelyUserContext getUserContext (ArgumentsParser argumentsParser ) {
546548 String SDKKey = argumentsParser .getSdkKey ();
547549 String userContextId = argumentsParser .getUserContextId ();
548- if (userContextId == null || !userContextsTracker .get (SDKKey ).containsKey (userContextId )) {
550+ if (userContextId == null || userContextsTracker . get ( SDKKey ) == null || !userContextsTracker .get (SDKKey ).containsKey (userContextId )) {
549551 return null ;
550552 }
551553 return userContextsTracker .get (SDKKey ).get (userContextId );
0 commit comments