Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.gcp.backupdisasterrecovery.kotlin.inputs
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gcp.backupdisasterrecovery.inputs.BackupPlanBackupRuleStandardScheduleArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
*
* @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 BackupPlanBackupRuleStandardScheduleArgs(
public val backupWindow: Output? = null,
public val daysOfMonths: Output>? = null,
public val daysOfWeeks: Output>? = null,
public val hourlyFrequency: Output? = null,
public val months: Output>? = null,
public val recurrenceType: Output,
public val timeZone: Output,
public val weekDayOfMonth: Output? = null,
) :
ConvertibleToJava {
override fun toJava(): com.pulumi.gcp.backupdisasterrecovery.inputs.BackupPlanBackupRuleStandardScheduleArgs =
com.pulumi.gcp.backupdisasterrecovery.inputs.BackupPlanBackupRuleStandardScheduleArgs.builder()
.backupWindow(backupWindow?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.daysOfMonths(daysOfMonths?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
.daysOfWeeks(daysOfWeeks?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
.hourlyFrequency(hourlyFrequency?.applyValue({ args0 -> args0 }))
.months(months?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
.recurrenceType(recurrenceType.applyValue({ args0 -> args0 }))
.timeZone(timeZone.applyValue({ args0 -> args0 }))
.weekDayOfMonth(
weekDayOfMonth?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
).build()
}
/**
* Builder for [BackupPlanBackupRuleStandardScheduleArgs].
*/
@PulumiTagMarker
public class BackupPlanBackupRuleStandardScheduleArgsBuilder internal constructor() {
private var backupWindow: Output? = null
private var daysOfMonths: Output>? = null
private var daysOfWeeks: Output>? = null
private var hourlyFrequency: Output? = null
private var months: Output>? = null
private var recurrenceType: Output? = null
private var timeZone: Output? = null
private var weekDayOfMonth: Output? = null
/**
* @param value 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.
*/
@JvmName("ghmfgylbaswkfmbv")
public suspend fun backupWindow(`value`: Output) {
this.backupWindow = value
}
/**
* @param value Specifies days of months like 1, 5, or 14 on which jobs will run.
*/
@JvmName("iqhxiicdaxrgjjbd")
public suspend fun daysOfMonths(`value`: Output>) {
this.daysOfMonths = value
}
@JvmName("fegqbidfmlpeiebx")
public suspend fun daysOfMonths(vararg values: Output) {
this.daysOfMonths = Output.all(values.asList())
}
/**
* @param values Specifies days of months like 1, 5, or 14 on which jobs will run.
*/
@JvmName("sjemxnawyygrkanb")
public suspend fun daysOfMonths(values: List