func expandOracleDatabaseAutonomousDatabaseProperties()

in tfplan2cai/converters/google/resources/services/oracledatabase/oracledatabase_autonomous_database.go [117:505]


func expandOracleDatabaseAutonomousDatabaseProperties(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
	l := v.([]interface{})
	if len(l) == 0 || l[0] == nil {
		return nil, nil
	}
	raw := l[0]
	original := raw.(map[string]interface{})
	transformed := make(map[string]interface{})

	transformedOcid, err := expandOracleDatabaseAutonomousDatabasePropertiesOcid(original["ocid"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedOcid); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["ocid"] = transformedOcid
	}

	transformedComputeCount, err := expandOracleDatabaseAutonomousDatabasePropertiesComputeCount(original["compute_count"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedComputeCount); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["computeCount"] = transformedComputeCount
	}

	transformedDataStorageSizeTb, err := expandOracleDatabaseAutonomousDatabasePropertiesDataStorageSizeTb(original["data_storage_size_tb"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedDataStorageSizeTb); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["dataStorageSizeTb"] = transformedDataStorageSizeTb
	}

	transformedDataStorageSizeGb, err := expandOracleDatabaseAutonomousDatabasePropertiesDataStorageSizeGb(original["data_storage_size_gb"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedDataStorageSizeGb); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["dataStorageSizeGb"] = transformedDataStorageSizeGb
	}

	transformedDbWorkload, err := expandOracleDatabaseAutonomousDatabasePropertiesDbWorkload(original["db_workload"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedDbWorkload); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["dbWorkload"] = transformedDbWorkload
	}

	transformedDbEdition, err := expandOracleDatabaseAutonomousDatabasePropertiesDbEdition(original["db_edition"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedDbEdition); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["dbEdition"] = transformedDbEdition
	}

	transformedCharacterSet, err := expandOracleDatabaseAutonomousDatabasePropertiesCharacterSet(original["character_set"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedCharacterSet); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["characterSet"] = transformedCharacterSet
	}

	transformedNCharacterSet, err := expandOracleDatabaseAutonomousDatabasePropertiesNCharacterSet(original["n_character_set"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedNCharacterSet); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["nCharacterSet"] = transformedNCharacterSet
	}

	transformedPrivateEndpointIp, err := expandOracleDatabaseAutonomousDatabasePropertiesPrivateEndpointIp(original["private_endpoint_ip"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedPrivateEndpointIp); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["privateEndpointIp"] = transformedPrivateEndpointIp
	}

	transformedPrivateEndpointLabel, err := expandOracleDatabaseAutonomousDatabasePropertiesPrivateEndpointLabel(original["private_endpoint_label"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedPrivateEndpointLabel); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["privateEndpointLabel"] = transformedPrivateEndpointLabel
	}

	transformedDbVersion, err := expandOracleDatabaseAutonomousDatabasePropertiesDbVersion(original["db_version"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedDbVersion); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["dbVersion"] = transformedDbVersion
	}

	transformedIsAutoScalingEnabled, err := expandOracleDatabaseAutonomousDatabasePropertiesIsAutoScalingEnabled(original["is_auto_scaling_enabled"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedIsAutoScalingEnabled); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["isAutoScalingEnabled"] = transformedIsAutoScalingEnabled
	}

	transformedIsStorageAutoScalingEnabled, err := expandOracleDatabaseAutonomousDatabasePropertiesIsStorageAutoScalingEnabled(original["is_storage_auto_scaling_enabled"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedIsStorageAutoScalingEnabled); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["isStorageAutoScalingEnabled"] = transformedIsStorageAutoScalingEnabled
	}

	transformedLicenseType, err := expandOracleDatabaseAutonomousDatabasePropertiesLicenseType(original["license_type"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedLicenseType); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["licenseType"] = transformedLicenseType
	}

	transformedCustomerContacts, err := expandOracleDatabaseAutonomousDatabasePropertiesCustomerContacts(original["customer_contacts"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedCustomerContacts); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["customerContacts"] = transformedCustomerContacts
	}

	transformedMaintenanceScheduleType, err := expandOracleDatabaseAutonomousDatabasePropertiesMaintenanceScheduleType(original["maintenance_schedule_type"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedMaintenanceScheduleType); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["maintenanceScheduleType"] = transformedMaintenanceScheduleType
	}

	transformedMtlsConnectionRequired, err := expandOracleDatabaseAutonomousDatabasePropertiesMtlsConnectionRequired(original["mtls_connection_required"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedMtlsConnectionRequired); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["mtlsConnectionRequired"] = transformedMtlsConnectionRequired
	}

	transformedBackupRetentionPeriodDays, err := expandOracleDatabaseAutonomousDatabasePropertiesBackupRetentionPeriodDays(original["backup_retention_period_days"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedBackupRetentionPeriodDays); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["backupRetentionPeriodDays"] = transformedBackupRetentionPeriodDays
	}

	transformedActualUsedDataStorageSizeTb, err := expandOracleDatabaseAutonomousDatabasePropertiesActualUsedDataStorageSizeTb(original["actual_used_data_storage_size_tb"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedActualUsedDataStorageSizeTb); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["actualUsedDataStorageSizeTb"] = transformedActualUsedDataStorageSizeTb
	}

	transformedAllocatedStorageSizeTb, err := expandOracleDatabaseAutonomousDatabasePropertiesAllocatedStorageSizeTb(original["allocated_storage_size_tb"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedAllocatedStorageSizeTb); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["allocatedStorageSizeTb"] = transformedAllocatedStorageSizeTb
	}

	transformedApexDetails, err := expandOracleDatabaseAutonomousDatabasePropertiesApexDetails(original["apex_details"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedApexDetails); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["apexDetails"] = transformedApexDetails
	}

	transformedArePrimaryAllowlistedIpsUsed, err := expandOracleDatabaseAutonomousDatabasePropertiesArePrimaryAllowlistedIpsUsed(original["are_primary_allowlisted_ips_used"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedArePrimaryAllowlistedIpsUsed); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["arePrimaryAllowlistedIpsUsed"] = transformedArePrimaryAllowlistedIpsUsed
	}

	transformedLifecycleDetails, err := expandOracleDatabaseAutonomousDatabasePropertiesLifecycleDetails(original["lifecycle_details"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedLifecycleDetails); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["lifecycleDetails"] = transformedLifecycleDetails
	}

	transformedState, err := expandOracleDatabaseAutonomousDatabasePropertiesState(original["state"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedState); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["state"] = transformedState
	}

	transformedAutonomousContainerDatabaseId, err := expandOracleDatabaseAutonomousDatabasePropertiesAutonomousContainerDatabaseId(original["autonomous_container_database_id"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedAutonomousContainerDatabaseId); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["autonomousContainerDatabaseId"] = transformedAutonomousContainerDatabaseId
	}

	transformedAvailableUpgradeVersions, err := expandOracleDatabaseAutonomousDatabasePropertiesAvailableUpgradeVersions(original["available_upgrade_versions"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedAvailableUpgradeVersions); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["availableUpgradeVersions"] = transformedAvailableUpgradeVersions
	}

	transformedConnectionStrings, err := expandOracleDatabaseAutonomousDatabasePropertiesConnectionStrings(original["connection_strings"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedConnectionStrings); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["connectionStrings"] = transformedConnectionStrings
	}

	transformedConnectionUrls, err := expandOracleDatabaseAutonomousDatabasePropertiesConnectionUrls(original["connection_urls"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedConnectionUrls); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["connectionUrls"] = transformedConnectionUrls
	}

	transformedFailedDataRecoveryDuration, err := expandOracleDatabaseAutonomousDatabasePropertiesFailedDataRecoveryDuration(original["failed_data_recovery_duration"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedFailedDataRecoveryDuration); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["failedDataRecoveryDuration"] = transformedFailedDataRecoveryDuration
	}

	transformedMemoryTableGbs, err := expandOracleDatabaseAutonomousDatabasePropertiesMemoryTableGbs(original["memory_table_gbs"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedMemoryTableGbs); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["memoryTableGbs"] = transformedMemoryTableGbs
	}

	transformedIsLocalDataGuardEnabled, err := expandOracleDatabaseAutonomousDatabasePropertiesIsLocalDataGuardEnabled(original["is_local_data_guard_enabled"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedIsLocalDataGuardEnabled); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["isLocalDataGuardEnabled"] = transformedIsLocalDataGuardEnabled
	}

	transformedLocalAdgAutoFailoverMaxDataLossLimit, err := expandOracleDatabaseAutonomousDatabasePropertiesLocalAdgAutoFailoverMaxDataLossLimit(original["local_adg_auto_failover_max_data_loss_limit"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedLocalAdgAutoFailoverMaxDataLossLimit); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["localAdgAutoFailoverMaxDataLossLimit"] = transformedLocalAdgAutoFailoverMaxDataLossLimit
	}

	transformedLocalStandbyDb, err := expandOracleDatabaseAutonomousDatabasePropertiesLocalStandbyDb(original["local_standby_db"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedLocalStandbyDb); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["localStandbyDb"] = transformedLocalStandbyDb
	}

	transformedMemoryPerOracleComputeUnitGbs, err := expandOracleDatabaseAutonomousDatabasePropertiesMemoryPerOracleComputeUnitGbs(original["memory_per_oracle_compute_unit_gbs"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedMemoryPerOracleComputeUnitGbs); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["memoryPerOracleComputeUnitGbs"] = transformedMemoryPerOracleComputeUnitGbs
	}

	transformedLocalDisasterRecoveryType, err := expandOracleDatabaseAutonomousDatabasePropertiesLocalDisasterRecoveryType(original["local_disaster_recovery_type"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedLocalDisasterRecoveryType); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["localDisasterRecoveryType"] = transformedLocalDisasterRecoveryType
	}

	transformedDataSafeState, err := expandOracleDatabaseAutonomousDatabasePropertiesDataSafeState(original["data_safe_state"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedDataSafeState); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["dataSafeState"] = transformedDataSafeState
	}

	transformedDatabaseManagementState, err := expandOracleDatabaseAutonomousDatabasePropertiesDatabaseManagementState(original["database_management_state"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedDatabaseManagementState); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["databaseManagementState"] = transformedDatabaseManagementState
	}

	transformedOpenMode, err := expandOracleDatabaseAutonomousDatabasePropertiesOpenMode(original["open_mode"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedOpenMode); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["openMode"] = transformedOpenMode
	}

	transformedOperationsInsightsState, err := expandOracleDatabaseAutonomousDatabasePropertiesOperationsInsightsState(original["operations_insights_state"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedOperationsInsightsState); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["operationsInsightsState"] = transformedOperationsInsightsState
	}

	transformedPeerDbIds, err := expandOracleDatabaseAutonomousDatabasePropertiesPeerDbIds(original["peer_db_ids"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedPeerDbIds); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["peerDbIds"] = transformedPeerDbIds
	}

	transformedPermissionLevel, err := expandOracleDatabaseAutonomousDatabasePropertiesPermissionLevel(original["permission_level"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedPermissionLevel); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["permissionLevel"] = transformedPermissionLevel
	}

	transformedPrivateEndpoint, err := expandOracleDatabaseAutonomousDatabasePropertiesPrivateEndpoint(original["private_endpoint"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedPrivateEndpoint); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["privateEndpoint"] = transformedPrivateEndpoint
	}

	transformedRefreshableMode, err := expandOracleDatabaseAutonomousDatabasePropertiesRefreshableMode(original["refreshable_mode"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedRefreshableMode); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["refreshableMode"] = transformedRefreshableMode
	}

	transformedRefreshableState, err := expandOracleDatabaseAutonomousDatabasePropertiesRefreshableState(original["refreshable_state"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedRefreshableState); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["refreshableState"] = transformedRefreshableState
	}

	transformedRole, err := expandOracleDatabaseAutonomousDatabasePropertiesRole(original["role"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedRole); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["role"] = transformedRole
	}

	transformedScheduledOperationDetails, err := expandOracleDatabaseAutonomousDatabasePropertiesScheduledOperationDetails(original["scheduled_operation_details"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedScheduledOperationDetails); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["scheduledOperationDetails"] = transformedScheduledOperationDetails
	}

	transformedSqlWebDeveloperUrl, err := expandOracleDatabaseAutonomousDatabasePropertiesSqlWebDeveloperUrl(original["sql_web_developer_url"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedSqlWebDeveloperUrl); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["sqlWebDeveloperUrl"] = transformedSqlWebDeveloperUrl
	}

	transformedSupportedCloneRegions, err := expandOracleDatabaseAutonomousDatabasePropertiesSupportedCloneRegions(original["supported_clone_regions"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedSupportedCloneRegions); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["supportedCloneRegions"] = transformedSupportedCloneRegions
	}

	transformedUsedDataStorageSizeTbs, err := expandOracleDatabaseAutonomousDatabasePropertiesUsedDataStorageSizeTbs(original["used_data_storage_size_tbs"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedUsedDataStorageSizeTbs); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["usedDataStorageSizeTbs"] = transformedUsedDataStorageSizeTbs
	}

	transformedOciUrl, err := expandOracleDatabaseAutonomousDatabasePropertiesOciUrl(original["oci_url"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedOciUrl); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["ociUrl"] = transformedOciUrl
	}

	transformedTotalAutoBackupStorageSizeGbs, err := expandOracleDatabaseAutonomousDatabasePropertiesTotalAutoBackupStorageSizeGbs(original["total_auto_backup_storage_size_gbs"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedTotalAutoBackupStorageSizeGbs); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["totalAutoBackupStorageSizeGbs"] = transformedTotalAutoBackupStorageSizeGbs
	}

	transformedNextLongTermBackupTime, err := expandOracleDatabaseAutonomousDatabasePropertiesNextLongTermBackupTime(original["next_long_term_backup_time"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedNextLongTermBackupTime); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["nextLongTermBackupTime"] = transformedNextLongTermBackupTime
	}

	transformedMaintenanceBeginTime, err := expandOracleDatabaseAutonomousDatabasePropertiesMaintenanceBeginTime(original["maintenance_begin_time"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedMaintenanceBeginTime); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["maintenanceBeginTime"] = transformedMaintenanceBeginTime
	}

	transformedMaintenanceEndTime, err := expandOracleDatabaseAutonomousDatabasePropertiesMaintenanceEndTime(original["maintenance_end_time"], d, config)
	if err != nil {
		return nil, err
	} else if val := reflect.ValueOf(transformedMaintenanceEndTime); val.IsValid() && !tpgresource.IsEmptyValue(val) {
		transformed["maintenanceEndTime"] = transformedMaintenanceEndTime
	}

	return transformed, nil
}