Esempio n. 1
0
        private static bool UpdateItemIntoDataStore(DictionaryIgnoreCase <DictionaryIgnoreCase <JToken> > store,
                                                    string route, string key, JToken value)
        {
            bool found = false;

            if (store.ContainsKey(route) && store[route].ContainsKey(key))
            {
                found = true;
                if (value == null)
                {
                    store[route].Remove(key);

                    // Bug - TODO fix this area
                    //if (!store[key].Any())
                    //{
                    //    store.Remove(route);
                    //}
                }
                else
                {
                    store[route][key] = value;
                }
            }

            return(found);
        }
Esempio n. 2
0
        private static void AddModifyItemToDataStore(DictionaryIgnoreCase <DictionaryIgnoreCase <JToken> > store,
                                                     string route, string key, JToken value)
        {
            if (!store.ContainsKey(route))
            {
                store.Add(route, new DictionaryIgnoreCase <JToken>());
            }

            if (!store[route].ContainsKey(key))
            {
                store[route].Add(key, value);
            }

            store[route][key] = value;
        }
Esempio n. 3
0
        private static List <DataStoreItem> GetValueAndRoutesFromDataStore(DictionaryIgnoreCase <DictionaryIgnoreCase <JToken> > store,
                                                                           string key, DataStoreType dataStoreType)
        {
            List <DataStoreItem> itemsMatching = new List <DataStoreItem>();

            foreach (var keyValuePair in store)
            {
                if (keyValuePair.Value.ContainsKey(key))
                {
                    itemsMatching.Add(new DataStoreItem()
                    {
                        Route         = keyValuePair.Key,
                        Key           = key,
                        Value         = keyValuePair.Value[key],
                        DataStoreType = dataStoreType
                    });
                }
            }

            return(itemsMatching);
        }