IImmutableDictionary <string, FeatureFlag> IUserFlagCache.RetrieveFlags(User user)
        {
            try
            {
                var flagsAsJson = persister.GetValue(Constants.FLAGS_KEY_PREFIX + user.Key);
                if (flagsAsJson != null)
                {
                    return(JsonUtil.DecodeJson <ImmutableDictionary <string, FeatureFlag> >(flagsAsJson)); // surprisingly, this works
                }
            }
            catch (Exception ex)
            {
                Log.ErrorFormat("Couldn't get preferences on mobile device: {0}",
                                Util.ExceptionMessage(ex));
            }

            return(ImmutableDictionary.Create <string, FeatureFlag>());
        }
Example #2
0
        IDictionary <string, FeatureFlag> IUserFlagCache.RetrieveFlags(User user)
        {
            try
            {
                var flagsAsJson = persister.GetValue(Constants.FLAGS_KEY_PREFIX + user.Key);
                if (flagsAsJson != null)
                {
                    return(JsonConvert.DeserializeObject <IDictionary <string, FeatureFlag> >(flagsAsJson));
                }
            }
            catch (Exception ex)
            {
                Log.ErrorFormat("Couldn't get preferences on mobile device: '{0}'",
                                ex,
                                Util.ExceptionMessage(ex));
            }

            return(new Dictionary <string, FeatureFlag>());
        }