Cluster.fromJson constructor

Cluster.fromJson(
  1. Map<String, dynamic> json
)

Implementation

factory Cluster.fromJson(Map<String, dynamic> json) {
  return Cluster(
    applications: (json['Applications'] as List?)
        ?.whereNotNull()
        .map((e) => Application.fromJson(e as Map<String, dynamic>))
        .toList(),
    autoScalingRole: json['AutoScalingRole'] as String?,
    autoTerminate: json['AutoTerminate'] as bool?,
    clusterArn: json['ClusterArn'] as String?,
    configurations: (json['Configurations'] as List?)
        ?.whereNotNull()
        .map((e) => Configuration.fromJson(e as Map<String, dynamic>))
        .toList(),
    customAmiId: json['CustomAmiId'] as String?,
    ebsRootVolumeSize: json['EbsRootVolumeSize'] as int?,
    ec2InstanceAttributes: json['Ec2InstanceAttributes'] != null
        ? Ec2InstanceAttributes.fromJson(
            json['Ec2InstanceAttributes'] as Map<String, dynamic>)
        : null,
    id: json['Id'] as String?,
    instanceCollectionType: (json['InstanceCollectionType'] as String?)
        ?.toInstanceCollectionType(),
    kerberosAttributes: json['KerberosAttributes'] != null
        ? KerberosAttributes.fromJson(
            json['KerberosAttributes'] as Map<String, dynamic>)
        : null,
    logEncryptionKmsKeyId: json['LogEncryptionKmsKeyId'] as String?,
    logUri: json['LogUri'] as String?,
    masterPublicDnsName: json['MasterPublicDnsName'] as String?,
    name: json['Name'] as String?,
    normalizedInstanceHours: json['NormalizedInstanceHours'] as int?,
    outpostArn: json['OutpostArn'] as String?,
    placementGroups: (json['PlacementGroups'] as List?)
        ?.whereNotNull()
        .map((e) => PlacementGroupConfig.fromJson(e as Map<String, dynamic>))
        .toList(),
    releaseLabel: json['ReleaseLabel'] as String?,
    repoUpgradeOnBoot:
        (json['RepoUpgradeOnBoot'] as String?)?.toRepoUpgradeOnBoot(),
    requestedAmiVersion: json['RequestedAmiVersion'] as String?,
    runningAmiVersion: json['RunningAmiVersion'] as String?,
    scaleDownBehavior:
        (json['ScaleDownBehavior'] as String?)?.toScaleDownBehavior(),
    securityConfiguration: json['SecurityConfiguration'] as String?,
    serviceRole: json['ServiceRole'] as String?,
    status: json['Status'] != null
        ? ClusterStatus.fromJson(json['Status'] as Map<String, dynamic>)
        : null,
    stepConcurrencyLevel: json['StepConcurrencyLevel'] as int?,
    tags: (json['Tags'] as List?)
        ?.whereNotNull()
        .map((e) => Tag.fromJson(e as Map<String, dynamic>))
        .toList(),
    terminationProtected: json['TerminationProtected'] as bool?,
    visibleToAllUsers: json['VisibleToAllUsers'] as bool?,
  );
}