Terradue.ElasticCas.Types.GenericJsonCollection.DeserializeFromStream C# (CSharp) Method

DeserializeFromStream() public static method

public static DeserializeFromStream ( System stream ) : GenericJsonCollection
stream System
return GenericJsonCollection
        public static GenericJsonCollection DeserializeFromStream(System.IO.Stream stream)
        {
            var serializer = new Newtonsoft.Json.JsonSerializer();
            serializer.TypeNameHandling = TypeNameHandling.All;
            serializer.TypeNameAssemblyFormat = System.Runtime.Serialization.Formatters.FormatterAssemblyStyle.Simple;

            Dictionary<string, object> obj = null;
            using (var sr = new StreamReader(stream))
            using (var jsonTextReader = new JsonTextReader(sr)) {
                obj = serializer.Deserialize<Dictionary<string, object>>(jsonTextReader);
            }

            JContainer items = (JContainer)obj["items"];

            GenericJsonCollection collection = new GenericJsonCollection();
            collection.items = new List<GenericJsonItem>();

            foreach (var item in items) {
                GenericJsonItem it = new GenericJsonItem(item.ToObject<Dictionary<string, object>>());
                collection.items.Add(it);
            }

            return collection;
        }