in v2/api/documentdb/v1api20231115/database_account_types_gen.go [652:1038]
func (account *DatabaseAccount_Spec) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
typedInput, ok := armInput.(arm.DatabaseAccount_Spec)
if !ok {
return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.DatabaseAccount_Spec, got %T", armInput)
}
// Set property "AnalyticalStorageConfiguration":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.AnalyticalStorageConfiguration != nil {
var analyticalStorageConfiguration1 AnalyticalStorageConfiguration
err := analyticalStorageConfiguration1.PopulateFromARM(owner, *typedInput.Properties.AnalyticalStorageConfiguration)
if err != nil {
return err
}
analyticalStorageConfiguration := analyticalStorageConfiguration1
account.AnalyticalStorageConfiguration = &analyticalStorageConfiguration
}
}
// Set property "ApiProperties":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.ApiProperties != nil {
var apiProperties1 ApiProperties
err := apiProperties1.PopulateFromARM(owner, *typedInput.Properties.ApiProperties)
if err != nil {
return err
}
apiProperties := apiProperties1
account.ApiProperties = &apiProperties
}
}
// Set property "AzureName":
account.SetAzureName(genruntime.ExtractKubernetesResourceNameFromARMName(typedInput.Name))
// Set property "BackupPolicy":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.BackupPolicy != nil {
var backupPolicy1 BackupPolicy
err := backupPolicy1.PopulateFromARM(owner, *typedInput.Properties.BackupPolicy)
if err != nil {
return err
}
backupPolicy := backupPolicy1
account.BackupPolicy = &backupPolicy
}
}
// Set property "Capabilities":
// copying flattened property:
if typedInput.Properties != nil {
for _, item := range typedInput.Properties.Capabilities {
var item1 Capability
err := item1.PopulateFromARM(owner, item)
if err != nil {
return err
}
account.Capabilities = append(account.Capabilities, item1)
}
}
// Set property "Capacity":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.Capacity != nil {
var capacity1 Capacity
err := capacity1.PopulateFromARM(owner, *typedInput.Properties.Capacity)
if err != nil {
return err
}
capacity := capacity1
account.Capacity = &capacity
}
}
// Set property "ConnectorOffer":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.ConnectorOffer != nil {
var temp string
temp = string(*typedInput.Properties.ConnectorOffer)
connectorOffer := ConnectorOffer(temp)
account.ConnectorOffer = &connectorOffer
}
}
// Set property "ConsistencyPolicy":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.ConsistencyPolicy != nil {
var consistencyPolicy1 ConsistencyPolicy
err := consistencyPolicy1.PopulateFromARM(owner, *typedInput.Properties.ConsistencyPolicy)
if err != nil {
return err
}
consistencyPolicy := consistencyPolicy1
account.ConsistencyPolicy = &consistencyPolicy
}
}
// Set property "Cors":
// copying flattened property:
if typedInput.Properties != nil {
for _, item := range typedInput.Properties.Cors {
var item1 CorsPolicy
err := item1.PopulateFromARM(owner, item)
if err != nil {
return err
}
account.Cors = append(account.Cors, item1)
}
}
// Set property "CreateMode":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.CreateMode != nil {
var temp string
temp = string(*typedInput.Properties.CreateMode)
createMode := CreateMode(temp)
account.CreateMode = &createMode
}
}
// Set property "CustomerManagedKeyStatus":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.CustomerManagedKeyStatus != nil {
customerManagedKeyStatus := *typedInput.Properties.CustomerManagedKeyStatus
account.CustomerManagedKeyStatus = &customerManagedKeyStatus
}
}
// Set property "DatabaseAccountOfferType":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.DatabaseAccountOfferType != nil {
var temp string
temp = string(*typedInput.Properties.DatabaseAccountOfferType)
databaseAccountOfferType := DatabaseAccountOfferType(temp)
account.DatabaseAccountOfferType = &databaseAccountOfferType
}
}
// Set property "DefaultIdentity":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.DefaultIdentity != nil {
defaultIdentity := *typedInput.Properties.DefaultIdentity
account.DefaultIdentity = &defaultIdentity
}
}
// Set property "DisableKeyBasedMetadataWriteAccess":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.DisableKeyBasedMetadataWriteAccess != nil {
disableKeyBasedMetadataWriteAccess := *typedInput.Properties.DisableKeyBasedMetadataWriteAccess
account.DisableKeyBasedMetadataWriteAccess = &disableKeyBasedMetadataWriteAccess
}
}
// Set property "DisableLocalAuth":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.DisableLocalAuth != nil {
disableLocalAuth := *typedInput.Properties.DisableLocalAuth
account.DisableLocalAuth = &disableLocalAuth
}
}
// Set property "EnableAnalyticalStorage":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.EnableAnalyticalStorage != nil {
enableAnalyticalStorage := *typedInput.Properties.EnableAnalyticalStorage
account.EnableAnalyticalStorage = &enableAnalyticalStorage
}
}
// Set property "EnableAutomaticFailover":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.EnableAutomaticFailover != nil {
enableAutomaticFailover := *typedInput.Properties.EnableAutomaticFailover
account.EnableAutomaticFailover = &enableAutomaticFailover
}
}
// Set property "EnableBurstCapacity":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.EnableBurstCapacity != nil {
enableBurstCapacity := *typedInput.Properties.EnableBurstCapacity
account.EnableBurstCapacity = &enableBurstCapacity
}
}
// Set property "EnableCassandraConnector":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.EnableCassandraConnector != nil {
enableCassandraConnector := *typedInput.Properties.EnableCassandraConnector
account.EnableCassandraConnector = &enableCassandraConnector
}
}
// Set property "EnableFreeTier":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.EnableFreeTier != nil {
enableFreeTier := *typedInput.Properties.EnableFreeTier
account.EnableFreeTier = &enableFreeTier
}
}
// Set property "EnableMultipleWriteLocations":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.EnableMultipleWriteLocations != nil {
enableMultipleWriteLocations := *typedInput.Properties.EnableMultipleWriteLocations
account.EnableMultipleWriteLocations = &enableMultipleWriteLocations
}
}
// Set property "EnablePartitionMerge":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.EnablePartitionMerge != nil {
enablePartitionMerge := *typedInput.Properties.EnablePartitionMerge
account.EnablePartitionMerge = &enablePartitionMerge
}
}
// Set property "Identity":
if typedInput.Identity != nil {
var identity1 ManagedServiceIdentity
err := identity1.PopulateFromARM(owner, *typedInput.Identity)
if err != nil {
return err
}
identity := identity1
account.Identity = &identity
}
// Set property "IpRules":
// copying flattened property:
if typedInput.Properties != nil {
for _, item := range typedInput.Properties.IpRules {
var item1 IpAddressOrRange
err := item1.PopulateFromARM(owner, item)
if err != nil {
return err
}
account.IpRules = append(account.IpRules, item1)
}
}
// Set property "IsVirtualNetworkFilterEnabled":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.IsVirtualNetworkFilterEnabled != nil {
isVirtualNetworkFilterEnabled := *typedInput.Properties.IsVirtualNetworkFilterEnabled
account.IsVirtualNetworkFilterEnabled = &isVirtualNetworkFilterEnabled
}
}
// Set property "KeyVaultKeyUri":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.KeyVaultKeyUri != nil {
keyVaultKeyUri := *typedInput.Properties.KeyVaultKeyUri
account.KeyVaultKeyUri = &keyVaultKeyUri
}
}
// Set property "Kind":
if typedInput.Kind != nil {
var temp string
temp = string(*typedInput.Kind)
kind := DatabaseAccount_Kind_Spec(temp)
account.Kind = &kind
}
// Set property "Location":
if typedInput.Location != nil {
location := *typedInput.Location
account.Location = &location
}
// Set property "Locations":
// copying flattened property:
if typedInput.Properties != nil {
for _, item := range typedInput.Properties.Locations {
var item1 Location
err := item1.PopulateFromARM(owner, item)
if err != nil {
return err
}
account.Locations = append(account.Locations, item1)
}
}
// Set property "MinimalTlsVersion":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.MinimalTlsVersion != nil {
var temp string
temp = string(*typedInput.Properties.MinimalTlsVersion)
minimalTlsVersion := MinimalTlsVersion(temp)
account.MinimalTlsVersion = &minimalTlsVersion
}
}
// Set property "NetworkAclBypass":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.NetworkAclBypass != nil {
var temp string
temp = string(*typedInput.Properties.NetworkAclBypass)
networkAclBypass := NetworkAclBypass(temp)
account.NetworkAclBypass = &networkAclBypass
}
}
// no assignment for property "NetworkAclBypassResourceReferences"
// no assignment for property "OperatorSpec"
// Set property "Owner":
account.Owner = &genruntime.KnownResourceReference{
Name: owner.Name,
ARMID: owner.ARMID,
}
// Set property "PublicNetworkAccess":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.PublicNetworkAccess != nil {
var temp string
temp = string(*typedInput.Properties.PublicNetworkAccess)
publicNetworkAccess := PublicNetworkAccess(temp)
account.PublicNetworkAccess = &publicNetworkAccess
}
}
// Set property "RestoreParameters":
// copying flattened property:
if typedInput.Properties != nil {
if typedInput.Properties.RestoreParameters != nil {
var restoreParameters1 RestoreParameters
err := restoreParameters1.PopulateFromARM(owner, *typedInput.Properties.RestoreParameters)
if err != nil {
return err
}
restoreParameters := restoreParameters1
account.RestoreParameters = &restoreParameters
}
}
// Set property "Tags":
if typedInput.Tags != nil {
account.Tags = make(map[string]string, len(typedInput.Tags))
for key, value := range typedInput.Tags {
account.Tags[key] = value
}
}
// Set property "VirtualNetworkRules":
// copying flattened property:
if typedInput.Properties != nil {
for _, item := range typedInput.Properties.VirtualNetworkRules {
var item1 VirtualNetworkRule
err := item1.PopulateFromARM(owner, item)
if err != nil {
return err
}
account.VirtualNetworkRules = append(account.VirtualNetworkRules, item1)
}
}
// No error
return nil
}