WriteElementsToXml method

  1. @override
void WriteElementsToXml(
  1. EwsServiceXmlWriter writer
)
override
Writes XML elements. The writer.

Implementation

@override
void WriteElementsToXml(EwsServiceXmlWriter writer) {
  writer.WriteStartElement(
      XmlNamespace.Messages, this.GetSubscriptionXmlElementName());

  if (this.FolderIds!.Count == 0) {
    writer.WriteAttributeValue(XmlAttributeNames.SubscribeToAllFolders, true);
  }

  this
      .FolderIds!
      .WriteToXml(writer, XmlNamespace.Types, XmlElementNames.FolderIds);

  writer.WriteStartElement(XmlNamespace.Types, XmlElementNames.EventTypes);
  for (EventType eventType in this.EventTypes) {
    writer.WriteElementValueWithNamespace(
        XmlNamespace.Types, XmlElementNames.EventType, eventType);
  }
  writer.WriteEndElement();

  if (!StringUtils.IsNullOrEmpty(this.Watermark)) {
    writer.WriteElementValueWithNamespace(
        XmlNamespace.Types, XmlElementNames.Watermark, this.Watermark);
  }

  this.InternalWriteElementsToXml(writer);

  writer.WriteEndElement();
}