All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.azurenative.workloads.kotlin.outputs.DBBackupPolicyPropertiesResponse.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azurenative.workloads.kotlin.outputs

import kotlin.Boolean
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List

/**
 * Defines the policy properties for database backup.
 * @property backupManagementType This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
 * Expected value is 'AzureWorkload'.
 * @property makePolicyConsistent Fix the policy inconsistency
 * @property name The name of the DB backup policy.
 * @property protectedItemsCount Number of items associated with this policy.
 * @property resourceGuardOperationRequests ResourceGuard Operation Requests
 * @property settings Common settings for the backup management
 * @property subProtectionPolicy List of sub-protection policies which includes schedule and retention
 * @property workLoadType Type of workload for the backup management
 */
public data class DBBackupPolicyPropertiesResponse(
    public val backupManagementType: String,
    public val makePolicyConsistent: Boolean? = null,
    public val name: String,
    public val protectedItemsCount: Int? = null,
    public val resourceGuardOperationRequests: List? = null,
    public val settings: SettingsResponse? = null,
    public val subProtectionPolicy: List? = null,
    public val workLoadType: String? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.azurenative.workloads.outputs.DBBackupPolicyPropertiesResponse): DBBackupPolicyPropertiesResponse = DBBackupPolicyPropertiesResponse(
            backupManagementType = javaType.backupManagementType(),
            makePolicyConsistent = javaType.makePolicyConsistent().map({ args0 -> args0 }).orElse(null),
            name = javaType.name(),
            protectedItemsCount = javaType.protectedItemsCount().map({ args0 -> args0 }).orElse(null),
            resourceGuardOperationRequests = javaType.resourceGuardOperationRequests().map({ args0 -> args0 }),
            settings = javaType.settings().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.azurenative.workloads.kotlin.outputs.SettingsResponse.Companion.toKotlin(args0)
                })
            }).orElse(null),
            subProtectionPolicy = javaType.subProtectionPolicy().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.azurenative.workloads.kotlin.outputs.SubProtectionPolicyResponse.Companion.toKotlin(args0)
                })
            }),
            workLoadType = javaType.workLoadType().map({ args0 -> args0 }).orElse(null),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy