internal static GalleryImage DeserializeGalleryImage(JsonElement element) { Optional <string> id = default; Optional <string> name = default; Optional <string> type = default; string location = default; Optional <IDictionary <string, string> > tags = default; Optional <string> description = default; Optional <string> eula = default; Optional <string> privacyStatementUri = default; Optional <string> releaseNoteUri = default; Optional <OperatingSystemTypes> osType = default; Optional <OperatingSystemStateTypes> osState = default; Optional <HyperVGeneration> hyperVGeneration = default; Optional <DateTimeOffset> endOfLifeDate = default; Optional <GalleryImageIdentifier> identifier = default; Optional <RecommendedMachineConfiguration> recommended = default; Optional <Disallowed> disallowed = default; Optional <ImagePurchasePlan> purchasePlan = default; Optional <GalleryImagePropertiesProvisioningState> provisioningState = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("id")) { id = 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("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("properties")) { foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("description")) { description = property0.Value.GetString(); continue; } if (property0.NameEquals("eula")) { eula = property0.Value.GetString(); continue; } if (property0.NameEquals("privacyStatementUri")) { privacyStatementUri = property0.Value.GetString(); continue; } if (property0.NameEquals("releaseNoteUri")) { releaseNoteUri = property0.Value.GetString(); continue; } if (property0.NameEquals("osType")) { osType = property0.Value.GetString().ToOperatingSystemTypes(); continue; } if (property0.NameEquals("osState")) { osState = property0.Value.GetString().ToOperatingSystemStateTypes(); continue; } if (property0.NameEquals("hyperVGeneration")) { hyperVGeneration = new HyperVGeneration(property0.Value.GetString()); continue; } if (property0.NameEquals("endOfLifeDate")) { endOfLifeDate = property0.Value.GetDateTimeOffset("O"); continue; } if (property0.NameEquals("identifier")) { identifier = GalleryImageIdentifier.DeserializeGalleryImageIdentifier(property0.Value); continue; } if (property0.NameEquals("recommended")) { recommended = RecommendedMachineConfiguration.DeserializeRecommendedMachineConfiguration(property0.Value); continue; } if (property0.NameEquals("disallowed")) { disallowed = Disallowed.DeserializeDisallowed(property0.Value); continue; } if (property0.NameEquals("purchasePlan")) { purchasePlan = ImagePurchasePlan.DeserializeImagePurchasePlan(property0.Value); continue; } if (property0.NameEquals("provisioningState")) { provisioningState = new GalleryImagePropertiesProvisioningState(property0.Value.GetString()); continue; } } continue; } } return(new GalleryImage(id.Value, name.Value, type.Value, location, Optional.ToDictionary(tags), description.Value, eula.Value, privacyStatementUri.Value, releaseNoteUri.Value, Optional.ToNullable(osType), Optional.ToNullable(osState), Optional.ToNullable(hyperVGeneration), Optional.ToNullable(endOfLifeDate), identifier.Value, recommended.Value, disallowed.Value, purchasePlan.Value, Optional.ToNullable(provisioningState))); }
internal static GalleryImage DeserializeGalleryImage(JsonElement element) { string id = default; string name = default; string type = default; string location = default; IDictionary <string, string> tags = default; string description = default; string eula = default; string privacyStatementUri = default; string releaseNoteUri = default; OperatingSystemTypes? osType = default; OperatingSystemStateTypes? osState = default; HyperVGeneration? hyperVGeneration = default; DateTimeOffset? endOfLifeDate = default; GalleryImageIdentifier identifier = default; RecommendedMachineConfiguration recommended = default; Disallowed disallowed = default; ImagePurchasePlan purchasePlan = default; GalleryImagePropertiesProvisioningState?provisioningState = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("id")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } id = property.Value.GetString(); continue; } if (property.NameEquals("name")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { if (property0.Value.ValueKind == JsonValueKind.Null) { dictionary.Add(property0.Name, null); } else { dictionary.Add(property0.Name, property0.Value.GetString()); } } tags = dictionary; continue; } if (property.NameEquals("properties")) { foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("description")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } description = property0.Value.GetString(); continue; } if (property0.NameEquals("eula")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } eula = property0.Value.GetString(); continue; } if (property0.NameEquals("privacyStatementUri")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } privacyStatementUri = property0.Value.GetString(); continue; } if (property0.NameEquals("releaseNoteUri")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } releaseNoteUri = property0.Value.GetString(); continue; } if (property0.NameEquals("osType")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } osType = property0.Value.GetString().ToOperatingSystemTypes(); continue; } if (property0.NameEquals("osState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } osState = property0.Value.GetString().ToOperatingSystemStateTypes(); continue; } if (property0.NameEquals("hyperVGeneration")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } hyperVGeneration = new HyperVGeneration(property0.Value.GetString()); continue; } if (property0.NameEquals("endOfLifeDate")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } endOfLifeDate = property0.Value.GetDateTimeOffset("O"); continue; } if (property0.NameEquals("identifier")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } identifier = GalleryImageIdentifier.DeserializeGalleryImageIdentifier(property0.Value); continue; } if (property0.NameEquals("recommended")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } recommended = RecommendedMachineConfiguration.DeserializeRecommendedMachineConfiguration(property0.Value); continue; } if (property0.NameEquals("disallowed")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } disallowed = Disallowed.DeserializeDisallowed(property0.Value); continue; } if (property0.NameEquals("purchasePlan")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } purchasePlan = ImagePurchasePlan.DeserializeImagePurchasePlan(property0.Value); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } provisioningState = new GalleryImagePropertiesProvisioningState(property0.Value.GetString()); continue; } } continue; } } return(new GalleryImage(id, name, type, location, tags, description, eula, privacyStatementUri, releaseNoteUri, osType, osState, hyperVGeneration, endOfLifeDate, identifier, recommended, disallowed, purchasePlan, provisioningState)); }