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

com.pulumi.gcp.oracledatabase.kotlin.outputs.CloudExadataInfrastructurePropertiesMaintenanceWindow.kt Maven / Gradle / Ivy

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

package com.pulumi.gcp.oracledatabase.kotlin.outputs

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

/**
 *
 * @property customActionTimeoutMins Determines the amount of time the system will wait before the start of each
 * database server patching operation. Custom action timeout is in minutes and
 * valid value is between 15 to 120 (inclusive).
 * @property daysOfWeeks Days during the week when maintenance should be performed.
 * @property hoursOfDays The window of hours during the day when maintenance should be performed.
 * The window is a 4 hour slot. Valid values are:
 * 0 - represents time slot 0:00 - 3:59 UTC
 * 4 - represents time slot 4:00 - 7:59 UTC
 * 8 - represents time slot 8:00 - 11:59 UTC
 * 12 - represents time slot 12:00 - 15:59 UTC
 * 16 - represents time slot 16:00 - 19:59 UTC
 * 20 - represents time slot 20:00 - 23:59 UTC
 * @property isCustomActionTimeoutEnabled If true, enables the configuration of a custom action timeout (waiting
 * period) between database server patching operations.
 * @property leadTimeWeek Lead time window allows user to set a lead time to prepare for a down time.
 * The lead time is in weeks and valid value is between 1 to 4.
 * @property months Months during the year when maintenance should be performed.
 * @property patchingMode Cloud CloudExadataInfrastructure node patching method, either "ROLLING"
 * or "NONROLLING". Default value is ROLLING.
 * Possible values:
 * PATCHING_MODE_UNSPECIFIED
 * ROLLING
 * NON_ROLLING
 * @property preference The maintenance window scheduling preference.
 * Possible values:
 * MAINTENANCE_WINDOW_PREFERENCE_UNSPECIFIED
 * CUSTOM_PREFERENCE
 * NO_PREFERENCE
 * @property weeksOfMonths Weeks during the month when maintenance should be performed. Weeks start on
 * the 1st, 8th, 15th, and 22nd days of the month, and have a duration of 7
 * days. Weeks start and end based on calendar dates, not days of the week.
 */
public data class CloudExadataInfrastructurePropertiesMaintenanceWindow(
    public val customActionTimeoutMins: Int? = null,
    public val daysOfWeeks: List? = null,
    public val hoursOfDays: List? = null,
    public val isCustomActionTimeoutEnabled: Boolean? = null,
    public val leadTimeWeek: Int? = null,
    public val months: List? = null,
    public val patchingMode: String? = null,
    public val preference: String? = null,
    public val weeksOfMonths: List? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.gcp.oracledatabase.outputs.CloudExadataInfrastructurePropertiesMaintenanceWindow): CloudExadataInfrastructurePropertiesMaintenanceWindow =
            CloudExadataInfrastructurePropertiesMaintenanceWindow(
                customActionTimeoutMins = javaType.customActionTimeoutMins().map({ args0 -> args0 }).orElse(null),
                daysOfWeeks = javaType.daysOfWeeks().map({ args0 -> args0 }),
                hoursOfDays = javaType.hoursOfDays().map({ args0 -> args0 }),
                isCustomActionTimeoutEnabled = javaType.isCustomActionTimeoutEnabled().map({ args0 ->
                    args0
                }).orElse(null),
                leadTimeWeek = javaType.leadTimeWeek().map({ args0 -> args0 }).orElse(null),
                months = javaType.months().map({ args0 -> args0 }),
                patchingMode = javaType.patchingMode().map({ args0 -> args0 }).orElse(null),
                preference = javaType.preference().map({ args0 -> args0 }).orElse(null),
                weeksOfMonths = javaType.weeksOfMonths().map({ args0 -> args0 }),
            )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy