/// <summary> /// /// </summary> /// <param name="stm"></param> /// <param name="svcType"></param> /// <returns></returns> public XmlRpcResponse DeserializeResponse(Stream stm, Type svcType) { if (stm == null) { throw new ArgumentNullException("stm", "XmlRpcSerializer.DeserializeResponse"); } if (AllowInvalidHTTPContent) { Stream newStm = new MemoryStream(); Util.CopyStream(stm, newStm); stm = newStm; stm.Position = 0; while (true) { // for now just strip off any leading CR-LF characters int byt = stm.ReadByte(); if (byt == -1) { throw new XmlRpcIllFormedXmlException( "Response from server does not contain valid XML."); } if (byt != 0x0d && byt != 0x0a && byt != ' ' && byt != '\t') { stm.Position = stm.Position - 1; break; } } } XmlReader xmlRdr = XmlRpcXmlReader.Create(stm); return(DeserializeResponse(xmlRdr, svcType)); }
/// <summary> /// /// </summary> /// <param name="txtrdr"></param> /// <param name="svcType"></param> /// <returns></returns> public XmlRpcResponse DeserializeResponse(TextReader txtrdr, Type svcType) { if (txtrdr == null) { throw new ArgumentNullException("txtrdr", "XmlRpcSerializer.DeserializeResponse"); } XmlReader xmlRdr = XmlRpcXmlReader.Create(txtrdr); return(DeserializeResponse(xmlRdr, svcType)); }
public XmlRpcRequest DeserializeRequest(Stream stm, Type svcType) { if (stm == null) { throw new ArgumentNullException("stm", "XmlRpcSerializer.DeserializeRequest"); } XmlReader xmlRdr = XmlRpcXmlReader.Create(stm); return(DeserializeRequest(xmlRdr, svcType)); }
public static object ParseValue(string xml, Type valueType) { var sr = new StringReader(xml); var reader = XmlRpcXmlReader.Create(sr); reader.MoveToContent(); return(new XmlRpcDeserializer() .ParseValueElement( reader, valueType, new MappingStack("value"), MappingAction.Error)); }
public static XmlReader Serialize(string testName, object obj, Encoding encoding, MappingActions actions) { Stream stm = new MemoryStream(); var xtw = XmlRpcXmlWriter.Create(stm, new XmlRpcFormatSettings()); xtw.WriteStartDocument(); var ser = new XmlRpcSerializer(); ser.Serialize(xtw, obj, actions); xtw.Flush(); stm.Position = 0; return(XmlRpcXmlReader.Create(stm)); }
// ----------------------------------------------------------------------// public static object Parse( string xml, Type valueType, MappingAction action, out Type parsedType, out Type parsedArrayType) { var sr = new StringReader(xml); return(Parse( XmlRpcXmlReader.Create(sr), valueType, action, out parsedType, out parsedArrayType)); }