CacheCluster.fromXml constructor

CacheCluster.fromXml(
  1. XmlElement elem
)

Implementation

factory CacheCluster.fromXml(_s.XmlElement elem) {
  return CacheCluster(
    arn: _s.extractXmlStringValue(elem, 'ARN'),
    atRestEncryptionEnabled:
        _s.extractXmlBoolValue(elem, 'AtRestEncryptionEnabled'),
    authTokenEnabled: _s.extractXmlBoolValue(elem, 'AuthTokenEnabled'),
    authTokenLastModifiedDate:
        _s.extractXmlDateTimeValue(elem, 'AuthTokenLastModifiedDate'),
    autoMinorVersionUpgrade:
        _s.extractXmlBoolValue(elem, 'AutoMinorVersionUpgrade'),
    cacheClusterCreateTime:
        _s.extractXmlDateTimeValue(elem, 'CacheClusterCreateTime'),
    cacheClusterId: _s.extractXmlStringValue(elem, 'CacheClusterId'),
    cacheClusterStatus: _s.extractXmlStringValue(elem, 'CacheClusterStatus'),
    cacheNodeType: _s.extractXmlStringValue(elem, 'CacheNodeType'),
    cacheNodes: _s.extractXmlChild(elem, 'CacheNodes')?.let((elem) => elem
        .findElements('CacheNode')
        .map((c) => CacheNode.fromXml(c))
        .toList()),
    cacheParameterGroup: _s
        .extractXmlChild(elem, 'CacheParameterGroup')
        ?.let((e) => CacheParameterGroupStatus.fromXml(e)),
    cacheSecurityGroups: _s.extractXmlChild(elem, 'CacheSecurityGroups')?.let(
        (elem) => elem
            .findElements('CacheSecurityGroup')
            .map((c) => CacheSecurityGroupMembership.fromXml(c))
            .toList()),
    cacheSubnetGroupName:
        _s.extractXmlStringValue(elem, 'CacheSubnetGroupName'),
    clientDownloadLandingPage:
        _s.extractXmlStringValue(elem, 'ClientDownloadLandingPage'),
    configurationEndpoint: _s
        .extractXmlChild(elem, 'ConfigurationEndpoint')
        ?.let((e) => Endpoint.fromXml(e)),
    engine: _s.extractXmlStringValue(elem, 'Engine'),
    engineVersion: _s.extractXmlStringValue(elem, 'EngineVersion'),
    notificationConfiguration: _s
        .extractXmlChild(elem, 'NotificationConfiguration')
        ?.let((e) => NotificationConfiguration.fromXml(e)),
    numCacheNodes: _s.extractXmlIntValue(elem, 'NumCacheNodes'),
    pendingModifiedValues: _s
        .extractXmlChild(elem, 'PendingModifiedValues')
        ?.let((e) => PendingModifiedValues.fromXml(e)),
    preferredAvailabilityZone:
        _s.extractXmlStringValue(elem, 'PreferredAvailabilityZone'),
    preferredMaintenanceWindow:
        _s.extractXmlStringValue(elem, 'PreferredMaintenanceWindow'),
    preferredOutpostArn:
        _s.extractXmlStringValue(elem, 'PreferredOutpostArn'),
    replicationGroupId: _s.extractXmlStringValue(elem, 'ReplicationGroupId'),
    securityGroups: _s.extractXmlChild(elem, 'SecurityGroups')?.let((elem) =>
        elem
            .findElements('member')
            .map((c) => SecurityGroupMembership.fromXml(c))
            .toList()),
    snapshotRetentionLimit:
        _s.extractXmlIntValue(elem, 'SnapshotRetentionLimit'),
    snapshotWindow: _s.extractXmlStringValue(elem, 'SnapshotWindow'),
    transitEncryptionEnabled:
        _s.extractXmlBoolValue(elem, 'TransitEncryptionEnabled'),
  );
}