internal static DiskPoolZoneInfo DeserializeDiskPoolZoneInfo(JsonElement element) { Optional <IReadOnlyList <string> > availabilityZones = default; Optional <IReadOnlyList <string> > additionalCapabilities = default; Optional <StoragePoolSku> sku = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("availabilityZones")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } List <string> array = new List <string>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(item.GetString()); } availabilityZones = array; continue; } if (property.NameEquals("additionalCapabilities")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } List <string> array = new List <string>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(item.GetString()); } additionalCapabilities = array; continue; } if (property.NameEquals("sku")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } sku = StoragePoolSku.DeserializeStoragePoolSku(property.Value); continue; } } return(new DiskPoolZoneInfo(Optional.ToList(availabilityZones), Optional.ToList(additionalCapabilities), sku.Value)); }
public DiskPoolCreate(StoragePoolSku sku, string location, string subnetId) { if (sku == null) { throw new ArgumentNullException(nameof(sku)); } if (location == null) { throw new ArgumentNullException(nameof(location)); } if (subnetId == null) { throw new ArgumentNullException(nameof(subnetId)); } Sku = sku; Tags = new ChangeTrackingDictionary <string, string>(); Location = location; ManagedByExtended = new ChangeTrackingList <string>(); AvailabilityZones = new ChangeTrackingList <string>(); Disks = new ChangeTrackingList <WritableSubResource>(); SubnetId = subnetId; AdditionalCapabilities = new ChangeTrackingList <string>(); }
internal DiskPoolZoneInfo(IReadOnlyList <string> availabilityZones, IReadOnlyList <string> additionalCapabilities, StoragePoolSku sku) { AvailabilityZones = availabilityZones; AdditionalCapabilities = additionalCapabilities; Sku = sku; }