Exemplo n.º 1
0
        protected EgoiType walkMap(Dictionary <string, object> map)
        {
            EgoiType r = null;

            if (map.ContainsKey("key_0"))
            {
                EgoiMapList   mrl  = new EgoiMapList();
                List <String> keys = map.Keys.ToList <string>();
                keys.Sort();
                foreach (String k in keys)
                {
                    if (!k.StartsWith("key_"))
                    {
                        continue;
                    }
                    if (map [k] is Dictionary <string, object> )
                    {
                        mrl.Add(walkValues(new EgoiMap(map [k] as Dictionary <string, object>)));
                    }
                    else
                    {
                        EgoiMap value = new EgoiMap(); value.Add("value", map [k]); mrl.Add(value);
                    }
                }
                r = mrl;
            }
            else
            {
                r = walkValues(new EgoiMap(map));
            }

            return(r);
        }
Exemplo n.º 2
0
        public EgoiMapList decodeMapListResult(String method, EgoiMap arguments)
        {
            Dictionary <string, object> result = processResult(method, arguments);

            EgoiType et = walkMap(result);

            if (et is EgoiMap)
            {
                EgoiMapList eml = new EgoiMapList();

                eml.Add(et as EgoiMap);

                et = eml;
            }

            return(et as EgoiMapList);
        }