//Parse RoutingPreference in SDK to wrapped property PSRoutingPreference public static PSRoutingPreference ParsePSRoutingPreference(RoutingPreference routingPreference) { if (routingPreference == null) { return(null); } PSRoutingPreference pSRoutingPreference = new PSRoutingPreference(); pSRoutingPreference.RoutingChoice = routingPreference.RoutingChoice; pSRoutingPreference.PublishMicrosoftEndpoints = routingPreference.PublishMicrosoftEndpoints; pSRoutingPreference.PublishInternetEndpoints = routingPreference.PublishInternetEndpoints; return(pSRoutingPreference); }
internal StorageAccountData(ResourceIdentifier id, string name, ResourceType resourceType, SystemData systemData, IDictionary <string, string> tags, AzureLocation location, StorageSku sku, StorageKind?kind, ManagedServiceIdentity identity, ExtendedLocation extendedLocation, ProvisioningState?provisioningState, Endpoints primaryEndpoints, string primaryLocation, AccountStatus?statusOfPrimary, DateTimeOffset?lastGeoFailoverOn, string secondaryLocation, AccountStatus?statusOfSecondary, DateTimeOffset?creationOn, CustomDomain customDomain, SasPolicy sasPolicy, KeyPolicy keyPolicy, KeyCreationTime keyCreationTime, Endpoints secondaryEndpoints, Encryption encryption, AccessTier?accessTier, AzureFilesIdentityBasedAuthentication azureFilesIdentityBasedAuthentication, bool?enableHttpsTrafficOnly, NetworkRuleSet networkRuleSet, bool?isSftpEnabled, bool?isLocalUserEnabled, bool?isHnsEnabled, GeoReplicationStats geoReplicationStats, bool?failoverInProgress, LargeFileSharesState?largeFileSharesState, IReadOnlyList <StoragePrivateEndpointConnectionData> privateEndpointConnections, RoutingPreference routingPreference, BlobRestoreStatus blobRestoreStatus, bool?allowBlobPublicAccess, MinimumTlsVersion?minimumTlsVersion, bool?allowSharedKeyAccess, bool?enableNfsV3, bool?allowCrossTenantReplication, bool?defaultToOAuthAuthentication, PublicNetworkAccess?publicNetworkAccess, ImmutableStorageAccount immutableStorageWithVersioning, AllowedCopyScope?allowedCopyScope, StorageAccountSkuConversionStatus storageAccountSkuConversionStatus, DnsEndpointType?dnsEndpointType) : base(id, name, resourceType, systemData, tags, location) { Sku = sku; Kind = kind; Identity = identity; ExtendedLocation = extendedLocation; ProvisioningState = provisioningState; PrimaryEndpoints = primaryEndpoints; PrimaryLocation = primaryLocation; StatusOfPrimary = statusOfPrimary; LastGeoFailoverOn = lastGeoFailoverOn; SecondaryLocation = secondaryLocation; StatusOfSecondary = statusOfSecondary; CreationOn = creationOn; CustomDomain = customDomain; SasPolicy = sasPolicy; KeyPolicy = keyPolicy; KeyCreationTime = keyCreationTime; SecondaryEndpoints = secondaryEndpoints; Encryption = encryption; AccessTier = accessTier; AzureFilesIdentityBasedAuthentication = azureFilesIdentityBasedAuthentication; EnableHttpsTrafficOnly = enableHttpsTrafficOnly; NetworkRuleSet = networkRuleSet; IsSftpEnabled = isSftpEnabled; IsLocalUserEnabled = isLocalUserEnabled; IsHnsEnabled = isHnsEnabled; GeoReplicationStats = geoReplicationStats; FailoverInProgress = failoverInProgress; LargeFileSharesState = largeFileSharesState; PrivateEndpointConnections = privateEndpointConnections; RoutingPreference = routingPreference; BlobRestoreStatus = blobRestoreStatus; AllowBlobPublicAccess = allowBlobPublicAccess; MinimumTlsVersion = minimumTlsVersion; AllowSharedKeyAccess = allowSharedKeyAccess; EnableNfsV3 = enableNfsV3; AllowCrossTenantReplication = allowCrossTenantReplication; DefaultToOAuthAuthentication = defaultToOAuthAuthentication; PublicNetworkAccess = publicNetworkAccess; ImmutableStorageWithVersioning = immutableStorageWithVersioning; AllowedCopyScope = allowedCopyScope; StorageAccountSkuConversionStatus = storageAccountSkuConversionStatus; DnsEndpointType = dnsEndpointType; }
internal StorageAccountData(ResourceIdentifier id, string name, ResourceType type, IDictionary <string, string> tags, Location location, Models.Sku sku, Kind?kind, Identity identity, ExtendedLocation extendedLocation, ProvisioningState?provisioningState, Endpoints primaryEndpoints, string primaryLocation, AccountStatus?statusOfPrimary, DateTimeOffset?lastGeoFailoverTime, string secondaryLocation, AccountStatus?statusOfSecondary, DateTimeOffset?creationTime, CustomDomain customDomain, SasPolicy sasPolicy, KeyPolicy keyPolicy, KeyCreationTime keyCreationTime, Endpoints secondaryEndpoints, Encryption encryption, AccessTier?accessTier, AzureFilesIdentityBasedAuthentication azureFilesIdentityBasedAuthentication, bool?enableHttpsTrafficOnly, NetworkRuleSet networkRuleSet, bool?isHnsEnabled, GeoReplicationStats geoReplicationStats, bool?failoverInProgress, LargeFileSharesState?largeFileSharesState, IReadOnlyList <PrivateEndpointConnectionData> privateEndpointConnections, RoutingPreference routingPreference, BlobRestoreStatus blobRestoreStatus, bool?allowBlobPublicAccess, MinimumTlsVersion?minimumTlsVersion, bool?allowSharedKeyAccess, bool?enableNfsV3, bool?allowCrossTenantReplication) : base(id, name, type, tags, location) { Sku = sku; Kind = kind; Identity = identity; ExtendedLocation = extendedLocation; ProvisioningState = provisioningState; PrimaryEndpoints = primaryEndpoints; PrimaryLocation = primaryLocation; StatusOfPrimary = statusOfPrimary; LastGeoFailoverTime = lastGeoFailoverTime; SecondaryLocation = secondaryLocation; StatusOfSecondary = statusOfSecondary; CreationTime = creationTime; CustomDomain = customDomain; SasPolicy = sasPolicy; KeyPolicy = keyPolicy; KeyCreationTime = keyCreationTime; SecondaryEndpoints = secondaryEndpoints; Encryption = encryption; AccessTier = accessTier; AzureFilesIdentityBasedAuthentication = azureFilesIdentityBasedAuthentication; EnableHttpsTrafficOnly = enableHttpsTrafficOnly; NetworkRuleSet = networkRuleSet; IsHnsEnabled = isHnsEnabled; GeoReplicationStats = geoReplicationStats; FailoverInProgress = failoverInProgress; LargeFileSharesState = largeFileSharesState; PrivateEndpointConnections = privateEndpointConnections; RoutingPreference = routingPreference; BlobRestoreStatus = blobRestoreStatus; AllowBlobPublicAccess = allowBlobPublicAccess; MinimumTlsVersion = minimumTlsVersion; AllowSharedKeyAccess = allowSharedKeyAccess; EnableNfsV3 = enableNfsV3; AllowCrossTenantReplication = allowCrossTenantReplication; }
internal static StorageAccountData DeserializeStorageAccountData(JsonElement element) { Optional <Sku> sku = default; Optional <Kind> kind = default; Optional <Identity> identity = default; Optional <ExtendedLocation> extendedLocation = default; IDictionary <string, string> tags = default; Location location = default; ResourceIdentifier id = default; string name = default; ResourceType type = default; Optional <ProvisioningState> provisioningState = default; Optional <Endpoints> primaryEndpoints = default; Optional <string> primaryLocation = default; Optional <AccountStatus> statusOfPrimary = default; Optional <DateTimeOffset> lastGeoFailoverTime = default; Optional <string> secondaryLocation = default; Optional <AccountStatus> statusOfSecondary = default; Optional <DateTimeOffset> creationTime = default; Optional <CustomDomain> customDomain = default; Optional <SasPolicy> sasPolicy = default; Optional <KeyPolicy> keyPolicy = default; Optional <KeyCreationTime> keyCreationTime = default; Optional <Endpoints> secondaryEndpoints = default; Optional <Encryption> encryption = default; Optional <AccessTier> accessTier = default; Optional <AzureFilesIdentityBasedAuthentication> azureFilesIdentityBasedAuthentication = default; Optional <bool> supportsHttpsTrafficOnly = default; Optional <NetworkRuleSet> networkAcls = default; Optional <bool> isHnsEnabled = default; Optional <GeoReplicationStats> geoReplicationStats = default; Optional <bool> failoverInProgress = default; Optional <LargeFileSharesState> largeFileSharesState = default; Optional <IReadOnlyList <PrivateEndpointConnectionData> > privateEndpointConnections = default; Optional <RoutingPreference> routingPreference = default; Optional <BlobRestoreStatus> blobRestoreStatus = default; Optional <bool> allowBlobPublicAccess = default; Optional <MinimumTlsVersion> minimumTlsVersion = default; Optional <bool> allowSharedKeyAccess = default; Optional <bool> isNfsV3Enabled = default; Optional <bool> allowCrossTenantReplication = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("sku")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } sku = Sku.DeserializeSku(property.Value); continue; } if (property.NameEquals("kind")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } kind = new Kind(property.Value.GetString()); continue; } if (property.NameEquals("identity")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } identity = Identity.DeserializeIdentity(property.Value); continue; } if (property.NameEquals("extendedLocation")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } extendedLocation = ExtendedLocation.DeserializeExtendedLocation(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 = 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 = property0.Value.GetString().ToProvisioningState(); continue; } if (property0.NameEquals("primaryEndpoints")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } primaryEndpoints = Endpoints.DeserializeEndpoints(property0.Value); continue; } if (property0.NameEquals("primaryLocation")) { primaryLocation = property0.Value.GetString(); continue; } if (property0.NameEquals("statusOfPrimary")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } statusOfPrimary = property0.Value.GetString().ToAccountStatus(); continue; } if (property0.NameEquals("lastGeoFailoverTime")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } lastGeoFailoverTime = property0.Value.GetDateTimeOffset("O"); continue; } if (property0.NameEquals("secondaryLocation")) { secondaryLocation = property0.Value.GetString(); continue; } if (property0.NameEquals("statusOfSecondary")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } statusOfSecondary = property0.Value.GetString().ToAccountStatus(); continue; } if (property0.NameEquals("creationTime")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } creationTime = property0.Value.GetDateTimeOffset("O"); continue; } if (property0.NameEquals("customDomain")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } customDomain = CustomDomain.DeserializeCustomDomain(property0.Value); continue; } if (property0.NameEquals("sasPolicy")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } sasPolicy = SasPolicy.DeserializeSasPolicy(property0.Value); continue; } if (property0.NameEquals("keyPolicy")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } keyPolicy = KeyPolicy.DeserializeKeyPolicy(property0.Value); continue; } if (property0.NameEquals("keyCreationTime")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } keyCreationTime = KeyCreationTime.DeserializeKeyCreationTime(property0.Value); continue; } if (property0.NameEquals("secondaryEndpoints")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } secondaryEndpoints = Endpoints.DeserializeEndpoints(property0.Value); continue; } if (property0.NameEquals("encryption")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } encryption = Encryption.DeserializeEncryption(property0.Value); continue; } if (property0.NameEquals("accessTier")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } accessTier = property0.Value.GetString().ToAccessTier(); continue; } if (property0.NameEquals("azureFilesIdentityBasedAuthentication")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } azureFilesIdentityBasedAuthentication = AzureFilesIdentityBasedAuthentication.DeserializeAzureFilesIdentityBasedAuthentication(property0.Value); continue; } if (property0.NameEquals("supportsHttpsTrafficOnly")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } supportsHttpsTrafficOnly = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("networkAcls")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } networkAcls = NetworkRuleSet.DeserializeNetworkRuleSet(property0.Value); continue; } if (property0.NameEquals("isHnsEnabled")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } isHnsEnabled = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("geoReplicationStats")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } geoReplicationStats = GeoReplicationStats.DeserializeGeoReplicationStats(property0.Value); continue; } if (property0.NameEquals("failoverInProgress")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } failoverInProgress = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("largeFileSharesState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } largeFileSharesState = new LargeFileSharesState(property0.Value.GetString()); continue; } if (property0.NameEquals("privateEndpointConnections")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <PrivateEndpointConnectionData> array = new List <PrivateEndpointConnectionData>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(PrivateEndpointConnectionData.DeserializePrivateEndpointConnectionData(item)); } privateEndpointConnections = array; continue; } if (property0.NameEquals("routingPreference")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } routingPreference = RoutingPreference.DeserializeRoutingPreference(property0.Value); continue; } if (property0.NameEquals("blobRestoreStatus")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } blobRestoreStatus = BlobRestoreStatus.DeserializeBlobRestoreStatus(property0.Value); continue; } if (property0.NameEquals("allowBlobPublicAccess")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } allowBlobPublicAccess = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("minimumTlsVersion")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } minimumTlsVersion = new MinimumTlsVersion(property0.Value.GetString()); continue; } if (property0.NameEquals("allowSharedKeyAccess")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } allowSharedKeyAccess = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("isNfsV3Enabled")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } isNfsV3Enabled = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("allowCrossTenantReplication")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } allowCrossTenantReplication = property0.Value.GetBoolean(); continue; } } continue; } } return(new StorageAccountData(id, name, type, tags, location, sku.Value, Optional.ToNullable(kind), identity.Value, extendedLocation.Value, Optional.ToNullable(provisioningState), primaryEndpoints.Value, primaryLocation.Value, Optional.ToNullable(statusOfPrimary), Optional.ToNullable(lastGeoFailoverTime), secondaryLocation.Value, Optional.ToNullable(statusOfSecondary), Optional.ToNullable(creationTime), customDomain.Value, sasPolicy.Value, keyPolicy.Value, keyCreationTime.Value, secondaryEndpoints.Value, encryption.Value, Optional.ToNullable(accessTier), azureFilesIdentityBasedAuthentication.Value, Optional.ToNullable(supportsHttpsTrafficOnly), networkAcls.Value, Optional.ToNullable(isHnsEnabled), geoReplicationStats.Value, Optional.ToNullable(failoverInProgress), Optional.ToNullable(largeFileSharesState), Optional.ToList(privateEndpointConnections), routingPreference.Value, blobRestoreStatus.Value, Optional.ToNullable(allowBlobPublicAccess), Optional.ToNullable(minimumTlsVersion), Optional.ToNullable(allowSharedKeyAccess), Optional.ToNullable(isNfsV3Enabled), Optional.ToNullable(allowCrossTenantReplication))); }
internal static SapMonitorData DeserializeSapMonitorData(JsonElement element) { IDictionary <string, string> tags = default; AzureLocation location = default; ResourceIdentifier id = default; string name = default; ResourceType type = default; SystemData systemData = default; Optional <WorkloadMonitorProvisioningState> provisioningState = default; Optional <ResponseError> errors = default; Optional <AzureLocation> appLocation = default; Optional <RoutingPreference> routingPreference = default; Optional <ManagedRGConfiguration> managedResourceGroupConfiguration = default; Optional <ResourceIdentifier> logAnalyticsWorkspaceArmId = default; Optional <ResourceIdentifier> monitorSubnet = default; Optional <ResourceIdentifier> msiArmId = default; foreach (var property in element.EnumerateObject()) { 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 = new AzureLocation(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 = new ResourceType(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("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new WorkloadMonitorProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("errors")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } errors = JsonSerializer.Deserialize <ResponseError>(property0.Value.ToString()); continue; } if (property0.NameEquals("appLocation")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } appLocation = new AzureLocation(property0.Value.GetString()); continue; } if (property0.NameEquals("routingPreference")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } routingPreference = new RoutingPreference(property0.Value.GetString()); continue; } if (property0.NameEquals("managedResourceGroupConfiguration")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } managedResourceGroupConfiguration = ManagedRGConfiguration.DeserializeManagedRGConfiguration(property0.Value); continue; } if (property0.NameEquals("logAnalyticsWorkspaceArmId")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } logAnalyticsWorkspaceArmId = new ResourceIdentifier(property0.Value.GetString()); continue; } if (property0.NameEquals("monitorSubnet")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } monitorSubnet = new ResourceIdentifier(property0.Value.GetString()); continue; } if (property0.NameEquals("msiArmId")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } msiArmId = new ResourceIdentifier(property0.Value.GetString()); continue; } } continue; } } return(new SapMonitorData(id, name, type, systemData, tags, location, Optional.ToNullable(provisioningState), errors.Value, Optional.ToNullable(appLocation), Optional.ToNullable(routingPreference), managedResourceGroupConfiguration.Value, logAnalyticsWorkspaceArmId.Value, monitorSubnet.Value, msiArmId.Value)); }