in v2/api/documentdb/v1api20210515/storage/database_account_types_gen.go [735:1140]
func (account *DatabaseAccount_Spec) AssignProperties_To_DatabaseAccount_Spec(destination *storage.DatabaseAccount_Spec) error {
// Clone the existing property bag
propertyBag := genruntime.NewPropertyBag(account.PropertyBag)
// AnalyticalStorageConfiguration
if account.AnalyticalStorageConfiguration != nil {
var analyticalStorageConfiguration storage.AnalyticalStorageConfiguration
err := account.AnalyticalStorageConfiguration.AssignProperties_To_AnalyticalStorageConfiguration(&analyticalStorageConfiguration)
if err != nil {
return eris.Wrap(err, "calling AssignProperties_To_AnalyticalStorageConfiguration() to populate field AnalyticalStorageConfiguration")
}
destination.AnalyticalStorageConfiguration = &analyticalStorageConfiguration
} else {
destination.AnalyticalStorageConfiguration = nil
}
// ApiProperties
if account.ApiProperties != nil {
var apiProperty storage.ApiProperties
err := account.ApiProperties.AssignProperties_To_ApiProperties(&apiProperty)
if err != nil {
return eris.Wrap(err, "calling AssignProperties_To_ApiProperties() to populate field ApiProperties")
}
destination.ApiProperties = &apiProperty
} else {
destination.ApiProperties = nil
}
// AzureName
destination.AzureName = account.AzureName
// BackupPolicy
if account.BackupPolicy != nil {
var backupPolicy storage.BackupPolicy
err := account.BackupPolicy.AssignProperties_To_BackupPolicy(&backupPolicy)
if err != nil {
return eris.Wrap(err, "calling AssignProperties_To_BackupPolicy() to populate field BackupPolicy")
}
destination.BackupPolicy = &backupPolicy
} else {
destination.BackupPolicy = nil
}
// Capabilities
if account.Capabilities != nil {
capabilityList := make([]storage.Capability, len(account.Capabilities))
for capabilityIndex, capabilityItem := range account.Capabilities {
// Shadow the loop variable to avoid aliasing
capabilityItem := capabilityItem
var capability storage.Capability
err := capabilityItem.AssignProperties_To_Capability(&capability)
if err != nil {
return eris.Wrap(err, "calling AssignProperties_To_Capability() to populate field Capabilities")
}
capabilityList[capabilityIndex] = capability
}
destination.Capabilities = capabilityList
} else {
destination.Capabilities = nil
}
// Capacity
if propertyBag.Contains("Capacity") {
var capacity storage.Capacity
err := propertyBag.Pull("Capacity", &capacity)
if err != nil {
return eris.Wrap(err, "pulling 'Capacity' from propertyBag")
}
destination.Capacity = &capacity
} else {
destination.Capacity = nil
}
// ConnectorOffer
destination.ConnectorOffer = genruntime.ClonePointerToString(account.ConnectorOffer)
// ConsistencyPolicy
if account.ConsistencyPolicy != nil {
var consistencyPolicy storage.ConsistencyPolicy
err := account.ConsistencyPolicy.AssignProperties_To_ConsistencyPolicy(&consistencyPolicy)
if err != nil {
return eris.Wrap(err, "calling AssignProperties_To_ConsistencyPolicy() to populate field ConsistencyPolicy")
}
destination.ConsistencyPolicy = &consistencyPolicy
} else {
destination.ConsistencyPolicy = nil
}
// Cors
if account.Cors != nil {
corList := make([]storage.CorsPolicy, len(account.Cors))
for corIndex, corItem := range account.Cors {
// Shadow the loop variable to avoid aliasing
corItem := corItem
var cor storage.CorsPolicy
err := corItem.AssignProperties_To_CorsPolicy(&cor)
if err != nil {
return eris.Wrap(err, "calling AssignProperties_To_CorsPolicy() to populate field Cors")
}
corList[corIndex] = cor
}
destination.Cors = corList
} else {
destination.Cors = nil
}
// CreateMode
if propertyBag.Contains("CreateMode") {
var createMode string
err := propertyBag.Pull("CreateMode", &createMode)
if err != nil {
return eris.Wrap(err, "pulling 'CreateMode' from propertyBag")
}
destination.CreateMode = &createMode
} else {
destination.CreateMode = nil
}
// CustomerManagedKeyStatus
if propertyBag.Contains("CustomerManagedKeyStatus") {
var customerManagedKeyStatus string
err := propertyBag.Pull("CustomerManagedKeyStatus", &customerManagedKeyStatus)
if err != nil {
return eris.Wrap(err, "pulling 'CustomerManagedKeyStatus' from propertyBag")
}
destination.CustomerManagedKeyStatus = &customerManagedKeyStatus
} else {
destination.CustomerManagedKeyStatus = nil
}
// DatabaseAccountOfferType
destination.DatabaseAccountOfferType = genruntime.ClonePointerToString(account.DatabaseAccountOfferType)
// DefaultIdentity
destination.DefaultIdentity = genruntime.ClonePointerToString(account.DefaultIdentity)
// DisableKeyBasedMetadataWriteAccess
if account.DisableKeyBasedMetadataWriteAccess != nil {
disableKeyBasedMetadataWriteAccess := *account.DisableKeyBasedMetadataWriteAccess
destination.DisableKeyBasedMetadataWriteAccess = &disableKeyBasedMetadataWriteAccess
} else {
destination.DisableKeyBasedMetadataWriteAccess = nil
}
// DisableLocalAuth
if propertyBag.Contains("DisableLocalAuth") {
var disableLocalAuth bool
err := propertyBag.Pull("DisableLocalAuth", &disableLocalAuth)
if err != nil {
return eris.Wrap(err, "pulling 'DisableLocalAuth' from propertyBag")
}
destination.DisableLocalAuth = &disableLocalAuth
} else {
destination.DisableLocalAuth = nil
}
// EnableAnalyticalStorage
if account.EnableAnalyticalStorage != nil {
enableAnalyticalStorage := *account.EnableAnalyticalStorage
destination.EnableAnalyticalStorage = &enableAnalyticalStorage
} else {
destination.EnableAnalyticalStorage = nil
}
// EnableAutomaticFailover
if account.EnableAutomaticFailover != nil {
enableAutomaticFailover := *account.EnableAutomaticFailover
destination.EnableAutomaticFailover = &enableAutomaticFailover
} else {
destination.EnableAutomaticFailover = nil
}
// EnableBurstCapacity
if propertyBag.Contains("EnableBurstCapacity") {
var enableBurstCapacity bool
err := propertyBag.Pull("EnableBurstCapacity", &enableBurstCapacity)
if err != nil {
return eris.Wrap(err, "pulling 'EnableBurstCapacity' from propertyBag")
}
destination.EnableBurstCapacity = &enableBurstCapacity
} else {
destination.EnableBurstCapacity = nil
}
// EnableCassandraConnector
if account.EnableCassandraConnector != nil {
enableCassandraConnector := *account.EnableCassandraConnector
destination.EnableCassandraConnector = &enableCassandraConnector
} else {
destination.EnableCassandraConnector = nil
}
// EnableFreeTier
if account.EnableFreeTier != nil {
enableFreeTier := *account.EnableFreeTier
destination.EnableFreeTier = &enableFreeTier
} else {
destination.EnableFreeTier = nil
}
// EnableMultipleWriteLocations
if account.EnableMultipleWriteLocations != nil {
enableMultipleWriteLocation := *account.EnableMultipleWriteLocations
destination.EnableMultipleWriteLocations = &enableMultipleWriteLocation
} else {
destination.EnableMultipleWriteLocations = nil
}
// EnablePartitionMerge
if propertyBag.Contains("EnablePartitionMerge") {
var enablePartitionMerge bool
err := propertyBag.Pull("EnablePartitionMerge", &enablePartitionMerge)
if err != nil {
return eris.Wrap(err, "pulling 'EnablePartitionMerge' from propertyBag")
}
destination.EnablePartitionMerge = &enablePartitionMerge
} else {
destination.EnablePartitionMerge = nil
}
// Identity
if account.Identity != nil {
var identity storage.ManagedServiceIdentity
err := account.Identity.AssignProperties_To_ManagedServiceIdentity(&identity)
if err != nil {
return eris.Wrap(err, "calling AssignProperties_To_ManagedServiceIdentity() to populate field Identity")
}
destination.Identity = &identity
} else {
destination.Identity = nil
}
// IpRules
if account.IpRules != nil {
ipRuleList := make([]storage.IpAddressOrRange, len(account.IpRules))
for ipRuleIndex, ipRuleItem := range account.IpRules {
// Shadow the loop variable to avoid aliasing
ipRuleItem := ipRuleItem
var ipRule storage.IpAddressOrRange
err := ipRuleItem.AssignProperties_To_IpAddressOrRange(&ipRule)
if err != nil {
return eris.Wrap(err, "calling AssignProperties_To_IpAddressOrRange() to populate field IpRules")
}
ipRuleList[ipRuleIndex] = ipRule
}
destination.IpRules = ipRuleList
} else {
destination.IpRules = nil
}
// IsVirtualNetworkFilterEnabled
if account.IsVirtualNetworkFilterEnabled != nil {
isVirtualNetworkFilterEnabled := *account.IsVirtualNetworkFilterEnabled
destination.IsVirtualNetworkFilterEnabled = &isVirtualNetworkFilterEnabled
} else {
destination.IsVirtualNetworkFilterEnabled = nil
}
// KeyVaultKeyUri
destination.KeyVaultKeyUri = genruntime.ClonePointerToString(account.KeyVaultKeyUri)
// Kind
destination.Kind = genruntime.ClonePointerToString(account.Kind)
// Location
destination.Location = genruntime.ClonePointerToString(account.Location)
// Locations
if account.Locations != nil {
locationList := make([]storage.Location, len(account.Locations))
for locationIndex, locationItem := range account.Locations {
// Shadow the loop variable to avoid aliasing
locationItem := locationItem
var location storage.Location
err := locationItem.AssignProperties_To_Location(&location)
if err != nil {
return eris.Wrap(err, "calling AssignProperties_To_Location() to populate field Locations")
}
locationList[locationIndex] = location
}
destination.Locations = locationList
} else {
destination.Locations = nil
}
// MinimalTlsVersion
if propertyBag.Contains("MinimalTlsVersion") {
var minimalTlsVersion string
err := propertyBag.Pull("MinimalTlsVersion", &minimalTlsVersion)
if err != nil {
return eris.Wrap(err, "pulling 'MinimalTlsVersion' from propertyBag")
}
destination.MinimalTlsVersion = &minimalTlsVersion
} else {
destination.MinimalTlsVersion = nil
}
// NetworkAclBypass
destination.NetworkAclBypass = genruntime.ClonePointerToString(account.NetworkAclBypass)
// NetworkAclBypassResourceIds
if len(account.NetworkAclBypassResourceIds) > 0 {
propertyBag.Add("NetworkAclBypassResourceIds", account.NetworkAclBypassResourceIds)
} else {
propertyBag.Remove("NetworkAclBypassResourceIds")
}
// NetworkAclBypassResourceReferences
if propertyBag.Contains("NetworkAclBypassResourceReferences") {
var networkAclBypassResourceReference []genruntime.ResourceReference
err := propertyBag.Pull("NetworkAclBypassResourceReferences", &networkAclBypassResourceReference)
if err != nil {
return eris.Wrap(err, "pulling 'NetworkAclBypassResourceReferences' from propertyBag")
}
destination.NetworkAclBypassResourceReferences = networkAclBypassResourceReference
} else {
destination.NetworkAclBypassResourceReferences = nil
}
// OperatorSpec
if account.OperatorSpec != nil {
var operatorSpec storage.DatabaseAccountOperatorSpec
err := account.OperatorSpec.AssignProperties_To_DatabaseAccountOperatorSpec(&operatorSpec)
if err != nil {
return eris.Wrap(err, "calling AssignProperties_To_DatabaseAccountOperatorSpec() to populate field OperatorSpec")
}
destination.OperatorSpec = &operatorSpec
} else {
destination.OperatorSpec = nil
}
// OriginalVersion
destination.OriginalVersion = account.OriginalVersion
// Owner
if account.Owner != nil {
owner := account.Owner.Copy()
destination.Owner = &owner
} else {
destination.Owner = nil
}
// PublicNetworkAccess
destination.PublicNetworkAccess = genruntime.ClonePointerToString(account.PublicNetworkAccess)
// RestoreParameters
if propertyBag.Contains("RestoreParameters") {
var restoreParameter storage.RestoreParameters
err := propertyBag.Pull("RestoreParameters", &restoreParameter)
if err != nil {
return eris.Wrap(err, "pulling 'RestoreParameters' from propertyBag")
}
destination.RestoreParameters = &restoreParameter
} else {
destination.RestoreParameters = nil
}
// Tags
destination.Tags = genruntime.CloneMapOfStringToString(account.Tags)
// VirtualNetworkRules
if account.VirtualNetworkRules != nil {
virtualNetworkRuleList := make([]storage.VirtualNetworkRule, len(account.VirtualNetworkRules))
for virtualNetworkRuleIndex, virtualNetworkRuleItem := range account.VirtualNetworkRules {
// Shadow the loop variable to avoid aliasing
virtualNetworkRuleItem := virtualNetworkRuleItem
var virtualNetworkRule storage.VirtualNetworkRule
err := virtualNetworkRuleItem.AssignProperties_To_VirtualNetworkRule(&virtualNetworkRule)
if err != nil {
return eris.Wrap(err, "calling AssignProperties_To_VirtualNetworkRule() to populate field VirtualNetworkRules")
}
virtualNetworkRuleList[virtualNetworkRuleIndex] = virtualNetworkRule
}
destination.VirtualNetworkRules = virtualNetworkRuleList
} else {
destination.VirtualNetworkRules = nil
}
// Update the property bag
if len(propertyBag) > 0 {
destination.PropertyBag = propertyBag
} else {
destination.PropertyBag = nil
}
// Invoke the augmentConversionForDatabaseAccount_Spec interface (if implemented) to customize the conversion
var accountAsAny any = account
if augmentedAccount, ok := accountAsAny.(augmentConversionForDatabaseAccount_Spec); ok {
err := augmentedAccount.AssignPropertiesTo(destination)
if err != nil {
return eris.Wrap(err, "calling augmented AssignPropertiesTo() for conversion")
}
}
// No error
return nil
}