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

com.pulumi.gcp.backupdisasterrecovery.kotlin.outputs.BackupPlanBackupRuleStandardSchedule.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 8.13.1.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.gcp.backupdisasterrecovery.kotlin.outputs

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

/**
 *
 * @property backupWindow A BackupWindow defines the window of the day during which backup jobs will run. Jobs are queued at the beginning of the window and will be marked as
 * `NOT_RUN` if they do not start by the end of the window.
 * Structure is documented below.
 * @property daysOfMonths Specifies days of months like 1, 5, or 14 on which jobs will run.
 * @property daysOfWeeks Specifies days of week like MONDAY or TUESDAY, on which jobs will run. This is required for `recurrence_type`, `WEEKLY` and is not applicable otherwise.
 * Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`.
 * @property hourlyFrequency Specifies frequency for hourly backups. An hourly frequency of 2 means jobs will run every 2 hours from start time till end time defined.
 * This is required for `recurrence_type`, `HOURLY` and is not applicable otherwise.
 * @property months Specifies values of months
 * Each value may be one of: `MONTH_UNSPECIFIED`, `JANUARY`, `FEBRUARY`, `MARCH`, `APRIL`, `MAY`, `JUNE`, `JULY`, `AUGUST`, `SEPTEMBER`, `OCTOBER`, `NOVEMBER`, `DECEMBER`.
 * @property recurrenceType RecurrenceType enumerates the applicable periodicity for the schedule.
 * Possible values are: `HOURLY`, `DAILY`, `WEEKLY`, `MONTHLY`, `YEARLY`.
 * @property timeZone The time zone to be used when interpreting the schedule.
 * @property weekDayOfMonth Specifies a week day of the month like FIRST SUNDAY or LAST MONDAY, on which jobs will run.
 * Structure is documented below.
 */
public data class BackupPlanBackupRuleStandardSchedule(
    public val backupWindow: BackupPlanBackupRuleStandardScheduleBackupWindow? = null,
    public val daysOfMonths: List? = null,
    public val daysOfWeeks: List? = null,
    public val hourlyFrequency: Int? = null,
    public val months: List? = null,
    public val recurrenceType: String,
    public val timeZone: String,
    public val weekDayOfMonth: BackupPlanBackupRuleStandardScheduleWeekDayOfMonth? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.gcp.backupdisasterrecovery.outputs.BackupPlanBackupRuleStandardSchedule): BackupPlanBackupRuleStandardSchedule = BackupPlanBackupRuleStandardSchedule(
            backupWindow = javaType.backupWindow().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.gcp.backupdisasterrecovery.kotlin.outputs.BackupPlanBackupRuleStandardScheduleBackupWindow.Companion.toKotlin(args0)
                })
            }).orElse(null),
            daysOfMonths = javaType.daysOfMonths().map({ args0 -> args0 }),
            daysOfWeeks = javaType.daysOfWeeks().map({ args0 -> args0 }),
            hourlyFrequency = javaType.hourlyFrequency().map({ args0 -> args0 }).orElse(null),
            months = javaType.months().map({ args0 -> args0 }),
            recurrenceType = javaType.recurrenceType(),
            timeZone = javaType.timeZone(),
            weekDayOfMonth = javaType.weekDayOfMonth().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.gcp.backupdisasterrecovery.kotlin.outputs.BackupPlanBackupRuleStandardScheduleWeekDayOfMonth.Companion.toKotlin(args0)
                })
            }).orElse(null),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy