/// <summary> /// Converts an object instance into a <see cref="KspDataContext"/> instance /// </summary> /// <param name="obj">object to convert</param> /// <returns>data context instance based on object data</returns> public KspDataContext Convert(T obj) { var context = new KspDataContext(); BuildKspData((JObject)obj, context.Data); return(context); }
/// <summary> /// Processes data for de-serialization into a typed object instance /// </summary> /// <param name="data">data stream to de-serialize</param> /// <returns>de-serialized object instance</returns> public T Process(Stream data) { var dc = new KspDataContext(); Serializer.DeSerialize(dc, new StreamReader(data, true)); var obj = Converter.Convert(dc); return(obj); }
/// <summary> /// Converts a <see cref="KspDataContext"/> instance into a specific object type /// </summary> /// <param name="context">data to map</param> /// <returns>object constructed based on context</returns> public T Convert(KspDataContext context) { return(converter.Convert(context).ToObject <T>()); }
/// <summary> /// De-Serializes data /// </summary> /// <param name="context">context to de-serialize to</param> /// <param name="reader">stream reader to read from</param> public void DeSerialize(KspDataContext context, StreamReader reader) { var lineList = reader.ReadToEnd().Split(new[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries).ToList(); ParseData(lineList, context.Data); }
/// <summary> /// Serializes data /// </summary> /// <param name="context">context to serialize data from</param> /// <param name="writer">stream writer to serialize to</param> public void Serialize(KspDataContext context, StreamWriter writer) { BuildKspData(context.Data, writer); }
/// <summary> /// Converts a <see cref="KspDataContext"/> instance into a specific object type /// </summary> /// <param name="context">data to map</param> /// <returns>object constructed based on context</returns> public T Convert(KspDataContext context) { var obj = (T)BuildJson(context.Data); return(obj); }