toXml method

XmlNode toXml()

Implementation

XmlNode toXml() {
  final builder = XmlBuilder();
  builder.element(
    'Destination',
    nest: () {
      if (accessControlTranslation != null) {
        builder.element(
          'AccessControlTranslation',
          nest: (accessControlTranslation!.toXml() as XmlDocument)
              .rootElement
              .children,
        );
      }

      if (account != null) {
        builder.element('Account', nest: account);
      }

      if (bucket != null) {
        builder.element('Bucket', nest: bucket);
      }

      if (encryptionConfiguration != null) {
        builder.element(
          'EncryptionConfiguration',
          nest: (encryptionConfiguration!.toXml() as XmlDocument)
              .rootElement
              .children,
        );
      }

      if (metrics != null) {
        builder.element(
          'Metrics',
          nest: (metrics!.toXml() as XmlDocument).rootElement.children,
        );
      }

      if (replicationTime != null) {
        builder.element(
          'ReplicationTime',
          nest:
              (replicationTime!.toXml() as XmlDocument).rootElement.children,
        );
      }

      if (storageClass != null) {
        builder.element('StorageClass', nest: storageClass);
      }
    },
  );
  return builder.buildDocument();
}