public static ServiceRequest Deserialize(XmlReader reader, ServiceRequest serviceRequest) { if (reader.IsStartElement(DTD.Request.TagServiceRequest)) { if (serviceRequest == null) { serviceRequest = new ServiceRequest(); } serviceRequest.Class = reader.GetAttribute(DTD.Request.ServiceRequest.TagClass); serviceRequest.Name = reader.GetAttribute(DTD.Request.ServiceRequest.TagService); if (!reader.IsEmptyElement) { reader.ReadStartElement(); serviceRequest.Arguments = XMLArgumentsSerializer.Deserialize(reader.ReadSubtree()); } else { reader.Skip(); } } else { throw new ArgumentException("Xml Reader don't have the Service.Request in Start Element.", "XmlReader reader"); } return(serviceRequest); }
public static ServiceResponse Deserialize(XmlReader reader, ServiceResponse serviceResponse) { if (reader.IsStartElement(DTD.Response.TagServiceResponse)) { if (serviceResponse == null) { serviceResponse = new ServiceResponse(); } if (!reader.IsEmptyElement) { reader.ReadStartElement(); do { #region <ERROR> if (reader.IsStartElement(DTD.Response.ServiceResponse.TagError)) { if (int.Parse(reader.GetAttribute(DTD.Error.TagNumber)) != 0) { throw XMLErrorSerializer.Deserialize(reader.ReadSubtree()); } else { reader.Skip(); } } #endregion <ERROR> #region <OID> if (reader.IsStartElement(DTD.TagOID)) { serviceResponse.Oid = XMLAdaptorOIDSerializer.Deserialize(reader.ReadSubtree()); } #endregion <OID> #region <Arguments> if (reader.IsStartElement(DTD.Response.ServiceResponse.TagArguments)) { serviceResponse.Arguments = XMLArgumentsSerializer.Deserialize(reader.ReadSubtree()); } #endregion <Arguments> } while (reader.Read()); } else { reader.Skip(); } } else { throw new ArgumentException("Xml Reader don't have the Service.Response in Start Element.", "XmlReader reader"); } return(serviceResponse); }
public static XmlWriter Serialize(XmlWriter writer, ServiceResponse serviceResponse) { writer.WriteStartElement(DTD.Response.TagServiceResponse); writer.WriteElementString(DTD.Error.TagError, string.Empty); XMLAdaptorOIDSerializer.Serialize(writer, serviceResponse.Oid); XMLArgumentsSerializer.Serialize(writer, serviceResponse.Arguments); writer.WriteEndElement(); return(writer); }
public static XmlWriter Serialize(XmlWriter writer, ServiceRequest serviceRequest) { writer.WriteStartElement(DTD.Request.TagServiceRequest); writer.WriteAttributeString(DTD.Request.ServiceRequest.TagClass, serviceRequest.Class); writer.WriteAttributeString(DTD.Request.ServiceRequest.TagService, serviceRequest.Name); XMLArgumentsSerializer.Serialize(writer, serviceRequest.Arguments); XMLChangeDetectionItemsSerializer.Serialize(writer, serviceRequest.ChangeDetectionItems); writer.WriteEndElement(); return(writer); }