internal BackupRequest(ResourceIdentifier id, string name, ResourceType type, string kind, string backupName, bool?enabled, string storageAccountUrl, BackupSchedule backupSchedule, IList <DatabaseBackupSetting> databases) : base(id, name, type, kind) { BackupName = backupName; Enabled = enabled; StorageAccountUrl = storageAccountUrl; BackupSchedule = backupSchedule; Databases = databases; }
internal BackupRequest(ResourceIdentifier id, string name, ResourceType resourceType, SystemData systemData, string kind, string backupName, bool?enabled, Uri storageAccountUri, BackupSchedule backupSchedule, IList <DatabaseBackupSetting> databases) : base(id, name, resourceType, systemData, kind) { BackupName = backupName; Enabled = enabled; StorageAccountUri = storageAccountUri; BackupSchedule = backupSchedule; Databases = databases; }
internal static BackupRequest DeserializeBackupRequest(JsonElement element) { Optional <string> kind = default; ResourceIdentifier id = default; string name = default; ResourceType type = default; SystemData systemData = default; Optional <string> backupName = default; Optional <bool> enabled = default; Optional <string> storageAccountUrl = default; Optional <BackupSchedule> backupSchedule = default; Optional <IList <DatabaseBackupSetting> > databases = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("kind")) { kind = property.Value.GetString(); continue; } if (property.NameEquals("id")) { id = new ResourceIdentifier(property.Value.GetString()); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("systemData")) { systemData = JsonSerializer.Deserialize <SystemData>(property.Value.ToString()); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("backupName")) { backupName = property0.Value.GetString(); continue; } if (property0.NameEquals("enabled")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } enabled = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("storageAccountUrl")) { storageAccountUrl = property0.Value.GetString(); continue; } if (property0.NameEquals("backupSchedule")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } backupSchedule = BackupSchedule.DeserializeBackupSchedule(property0.Value); continue; } if (property0.NameEquals("databases")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <DatabaseBackupSetting> array = new List <DatabaseBackupSetting>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(DatabaseBackupSetting.DeserializeDatabaseBackupSetting(item)); } databases = array; continue; } } continue; } } return(new BackupRequest(id, name, type, systemData, kind.Value, backupName.Value, Optional.ToNullable(enabled), storageAccountUrl.Value, backupSchedule.Value, Optional.ToList(databases))); }