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

com.pulumi.awsnative.backup.kotlin.outputs.GetFrameworkResult.kt Maven / Gradle / Ivy

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

package com.pulumi.awsnative.backup.kotlin.outputs

import com.pulumi.awsnative.kotlin.outputs.Tag
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List

/**
 *
 * @property creationTime The date and time that a framework is created, in ISO 8601 representation. The value of CreationTime is accurate to milliseconds. For example, 2020-07-10T15:00:00.000-08:00 represents the 10th of July 2020 at 3:00 PM 8 hours behind UTC.
 * @property deploymentStatus The deployment status of a framework. The statuses are: `CREATE_IN_PROGRESS | UPDATE_IN_PROGRESS | DELETE_IN_PROGRESS | COMPLETED | FAILED`
 * @property frameworkArn An Amazon Resource Name (ARN) that uniquely identifies Framework as a resource
 * @property frameworkControls Contains detailed information about all of the controls of a framework. Each framework must contain at least one control.
 * @property frameworkDescription An optional description of the framework with a maximum 1,024 characters.
 * @property frameworkStatus A framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn AWS Config recording on or off for each resource. The statuses are:
 * `ACTIVE` when recording is turned on for all resources governed by the framework.
 * `PARTIALLY_ACTIVE` when recording is turned off for at least one resource governed by the framework.
 * `INACTIVE` when recording is turned off for all resources governed by the framework.
 * `UNAVAILABLE` when AWS Backup is unable to validate recording status at this time.
 * @property frameworkTags Metadata that you can assign to help organize the frameworks that you create. Each tag is a key-value pair.
 */
public data class GetFrameworkResult(
    public val creationTime: String? = null,
    public val deploymentStatus: String? = null,
    public val frameworkArn: String? = null,
    public val frameworkControls: List? = null,
    public val frameworkDescription: String? = null,
    public val frameworkStatus: String? = null,
    public val frameworkTags: List? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.awsnative.backup.outputs.GetFrameworkResult): GetFrameworkResult = GetFrameworkResult(
            creationTime = javaType.creationTime().map({ args0 -> args0 }).orElse(null),
            deploymentStatus = javaType.deploymentStatus().map({ args0 -> args0 }).orElse(null),
            frameworkArn = javaType.frameworkArn().map({ args0 -> args0 }).orElse(null),
            frameworkControls = javaType.frameworkControls().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.backup.kotlin.outputs.FrameworkControl.Companion.toKotlin(args0)
                })
            }),
            frameworkDescription = javaType.frameworkDescription().map({ args0 -> args0 }).orElse(null),
            frameworkStatus = javaType.frameworkStatus().map({ args0 -> args0 }).orElse(null),
            frameworkTags = javaType.frameworkTags().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.kotlin.outputs.Tag.Companion.toKotlin(args0)
                })
            }),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy