public void DeserializeFromFile(PolicySerializationFormat fmt, string fileName) { using (FileStream s = new FileStream(fileName, FileMode.Open)) { Deserialize(fmt, s); } }
/// <summary> /// Load a policy from a stream (MemoryStream, FileStream) in the specified format /// </summary> /// <param name="format"></param> /// <param name="sourceStream"></param> public void Deserialize(PolicySerializationFormat format, Stream sourceStream) { TpmPolicy pol = null; switch (format) { case PolicySerializationFormat.Xml: { var ser = new DataContractSerializer(typeof(TpmPolicy)); pol = (TpmPolicy)ser.ReadObject(sourceStream); break; } case PolicySerializationFormat.Json: { var ser = new DataContractJsonSerializer(typeof(TpmPolicy)); pol = (TpmPolicy)ser.ReadObject(sourceStream); break; } default: Globs.Throw <ArgumentException>("PolicyTree.Deserialize: Unknown format " + format); return; } pol.AssociatedPolicy = this; PolicyRoot = pol.PolicyRoot; }
public string SerializeToString(string policyIdentifier, PolicySerializationFormat fmt) { MemoryStream s = new MemoryStream(); Serialize(policyIdentifier, fmt, s); return(Encoding.UTF8.GetString(s.ToArray())); }
/// <summary> /// Create a serialization of the current policy object in a stream (e.g. MemoryStream or FileStream) /// </summary> /// <param name="policyIdentifier"></param> /// <param name="format"></param> /// <param name="targetStream"></param> public void Serialize(string policyIdentifier, PolicySerializationFormat format, Stream targetStream) { var p = new TpmPolicy(this); p.Create(policyIdentifier); switch (format) { case PolicySerializationFormat.Xml: { var ser = new DataContractSerializer(typeof(TpmPolicy)); ser.WriteObject(targetStream, p); break; } case PolicySerializationFormat.Json: { var ser = new DataContractJsonSerializer(typeof(TpmPolicy)); ser.WriteObject(targetStream, p); break; } default: Globs.Throw <ArgumentException>("PolicyTree.Serialize: Unknown format " + format); break; } targetStream.Flush(); }
public void DeserializeFromString(PolicySerializationFormat fmt, string stream) { MemoryStream s = new MemoryStream(Encoding.UTF8.GetBytes(stream)); Deserialize(fmt, s); }
public void SerializeToFile(string policyIdentifier, PolicySerializationFormat fmt, string fileName) { string s = SerializeToString(policyIdentifier, fmt); File.WriteAllText(fileName, s); }
public string SerializeToString(string policyIdentifier, PolicySerializationFormat fmt) { MemoryStream s = new MemoryStream(); Serialize(policyIdentifier, fmt, s); return Encoding.UTF8.GetString(s.ToArray()); }
/// <summary> /// Load a policy from a stream (MemoryStream, FileStream) in the specified format /// </summary> /// <param name="policyIdentifier"></param> /// <param name="fileName"></param> public void Deserialize(PolicySerializationFormat format, Stream sourceStream) { TpmPolicy pol = null; switch (format) { case PolicySerializationFormat.Xml: { var ser = new DataContractSerializer(typeof(TpmPolicy)); pol = (TpmPolicy)ser.ReadObject(sourceStream); break; } case PolicySerializationFormat.Json: { var ser = new DataContractJsonSerializer(typeof(TpmPolicy)); pol = (TpmPolicy)ser.ReadObject(sourceStream); break; } default: Globs.Throw<ArgumentException>("PolicyTree.Deserialize: Unknown format " + format); return; } pol.AssociatedPolicy = this; PolicyRoot = pol.PolicyRoot; }
/// <summary> /// Create a serialization of the current policy object in a stream (e.g. MemoryStream or FileStream) /// </summary> /// <param name="policyIdentifier"></param> /// <param name="fileName"></param> public void Serialize(string policyIdentifier, PolicySerializationFormat format, Stream targetStream) { var p = new TpmPolicy(this); p.Create(policyIdentifier); switch(format) { case PolicySerializationFormat.Xml: { var ser = new DataContractSerializer(typeof(TpmPolicy)); ser.WriteObject(targetStream, p); break; } case PolicySerializationFormat.Json: { var ser = new DataContractJsonSerializer(typeof(TpmPolicy)); ser.WriteObject(targetStream, p); break; } default: Globs.Throw<ArgumentException>("PolicyTree.Serialize: Unknown format " + format); break; } targetStream.Flush(); }