internal static MountConfiguration DeserializeMountConfiguration(JsonElement element) { AzureBlobFileSystemConfiguration azureBlobFileSystemConfiguration = default; NFSMountConfiguration nfsMountConfiguration = default; CifsMountConfiguration cifsMountConfiguration = default; AzureFileShareConfiguration azureFileShareConfiguration = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("azureBlobFileSystemConfiguration")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } azureBlobFileSystemConfiguration = AzureBlobFileSystemConfiguration.DeserializeAzureBlobFileSystemConfiguration(property.Value); continue; } if (property.NameEquals("nfsMountConfiguration")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } nfsMountConfiguration = NFSMountConfiguration.DeserializeNFSMountConfiguration(property.Value); continue; } if (property.NameEquals("cifsMountConfiguration")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } cifsMountConfiguration = CifsMountConfiguration.DeserializeCifsMountConfiguration(property.Value); continue; } if (property.NameEquals("azureFileShareConfiguration")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } azureFileShareConfiguration = AzureFileShareConfiguration.DeserializeAzureFileShareConfiguration(property.Value); continue; } } return(new MountConfiguration(azureBlobFileSystemConfiguration, nfsMountConfiguration, cifsMountConfiguration, azureFileShareConfiguration)); }