public ConfigurationStoreData(AzureLocation location, Models.Sku sku) : base(location) { if (sku == null) { throw new ArgumentNullException(nameof(sku)); } Sku = sku; PrivateEndpointConnections = new ChangeTrackingList <PrivateEndpointConnectionReference>(); }
internal ConfigurationStoreData(ResourceIdentifier id, string name, ResourceType type, SystemData systemData, IDictionary <string, string> tags, AzureLocation location, ManagedServiceIdentity identity, Models.Sku sku, ProvisioningState?provisioningState, DateTimeOffset?creationDate, string endpoint, Models.EncryptionProperties encryption, IReadOnlyList <PrivateEndpointConnectionReference> privateEndpointConnections, PublicNetworkAccess?publicNetworkAccess) : base(id, name, type, systemData, tags, location) { Identity = identity; Sku = sku; ProvisioningState = provisioningState; CreationDate = creationDate; Endpoint = endpoint; Encryption = encryption; PrivateEndpointConnections = privateEndpointConnections; PublicNetworkAccess = publicNetworkAccess; }
internal static ConfigurationStoreData DeserializeConfigurationStoreData(JsonElement element) { Optional <ResourceIdentity> identity = default; Models.Sku sku = default; IDictionary <string, string> tags = default; AzureLocation location = default; ResourceIdentifier id = default; string name = default; ResourceType type = default; Optional <ProvisioningState> provisioningState = default; Optional <DateTimeOffset> creationDate = default; Optional <string> endpoint = default; Optional <EncryptionProperties> encryption = default; Optional <IReadOnlyList <PrivateEndpointConnectionReference> > privateEndpointConnections = default; Optional <PublicNetworkAccess> publicNetworkAccess = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("identity")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } identity = JsonSerializer.Deserialize <ResourceIdentity>(property.Value.ToString()); continue; } if (property.NameEquals("sku")) { sku = Models.Sku.DeserializeSku(property.Value); 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("location")) { location = 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("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("creationDate")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } creationDate = property0.Value.GetDateTimeOffset("O"); continue; } if (property0.NameEquals("endpoint")) { endpoint = property0.Value.GetString(); continue; } if (property0.NameEquals("encryption")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } encryption = EncryptionProperties.DeserializeEncryptionProperties(property0.Value); continue; } if (property0.NameEquals("privateEndpointConnections")) { if (property0.Value.ValueKind == JsonValueKind.Null) { privateEndpointConnections = null; continue; } List <PrivateEndpointConnectionReference> array = new List <PrivateEndpointConnectionReference>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(PrivateEndpointConnectionReference.DeserializePrivateEndpointConnectionReference(item)); } privateEndpointConnections = array; continue; } if (property0.NameEquals("publicNetworkAccess")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } publicNetworkAccess = new PublicNetworkAccess(property0.Value.GetString()); continue; } } continue; } } return(new ConfigurationStoreData(id, name, type, tags, location, identity, sku, Optional.ToNullable(provisioningState), Optional.ToNullable(creationDate), endpoint.Value, encryption.Value, Optional.ToList(privateEndpointConnections), Optional.ToNullable(publicNetworkAccess))); }