StorageClass.fromJson constructor

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

Creates a StorageClass from JSON data.

Implementation

factory StorageClass.fromJson(Map<String, dynamic> json) {
  final tempAllowVolumeExpansionJson = json['allowVolumeExpansion'];
  final tempAllowedTopologiesJson = json['allowedTopologies'];
  final tempApiVersionJson = json['apiVersion'];
  final tempKindJson = json['kind'];
  final tempMetadataJson = json['metadata'];
  final tempMountOptionsJson = json['mountOptions'];
  final tempParametersJson = json['parameters'];
  final tempProvisionerJson = json['provisioner'];
  final tempReclaimPolicyJson = json['reclaimPolicy'];
  final tempVolumeBindingModeJson = json['volumeBindingMode'];

  final bool? tempAllowVolumeExpansion = tempAllowVolumeExpansionJson;

  final List<TopologySelectorTerm>? tempAllowedTopologies =
      tempAllowedTopologiesJson != null
          ? List<dynamic>.from(tempAllowedTopologiesJson)
              .map(
                (e) => TopologySelectorTerm.fromJson(
                  Map<String, dynamic>.from(e),
                ),
              )
              .toList()
          : null;

  final String? tempApiVersion = tempApiVersionJson;
  final String? tempKind = tempKindJson;
  final ObjectMeta? tempMetadata =
      tempMetadataJson != null ? ObjectMeta.fromJson(tempMetadataJson) : null;
  final List<String>? tempMountOptions = tempMountOptionsJson != null
      ? List<String>.from(tempMountOptionsJson)
      : null;

  final Map<String, String>? tempParameters = tempParametersJson != null
      ? Map<String, String>.from(tempParametersJson)
      : null;

  final String tempProvisioner = tempProvisionerJson;
  final String? tempReclaimPolicy = tempReclaimPolicyJson;
  final String? tempVolumeBindingMode = tempVolumeBindingModeJson;

  return StorageClass(
    allowVolumeExpansion: tempAllowVolumeExpansion,
    allowedTopologies: tempAllowedTopologies,
    apiVersion: tempApiVersion,
    kind: tempKind,
    metadata: tempMetadata,
    mountOptions: tempMountOptions,
    parameters: tempParameters,
    provisioner: tempProvisioner,
    reclaimPolicy: tempReclaimPolicy,
    volumeBindingMode: tempVolumeBindingMode,
  );
}