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

com.pulumi.azure.mssql.inputs.VirtualMachineAutoBackupManualScheduleArgs Maven / Gradle / Ivy

Go to download

A Pulumi package for creating and managing Microsoft Azure cloud resources, based on the Terraform azurerm provider. We recommend using the [Azure Native provider](https://github.com/pulumi/pulumi-azure-native) to provision Azure infrastructure. Azure Native provides complete coverage of Azure resources and same-day access to new resources and resource updates.

There is a newer version: 6.10.0-alpha.1731737215
Show newest version
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.azure.mssql.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class VirtualMachineAutoBackupManualScheduleArgs extends com.pulumi.resources.ResourceArgs {

    public static final VirtualMachineAutoBackupManualScheduleArgs Empty = new VirtualMachineAutoBackupManualScheduleArgs();

    /**
     * A list of days on which backup can take place. Possible values are `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday`, `Saturday` and `Sunday`
     * 
     * > **NOTE:** `days_of_week` can only be specified when `manual_schedule` is set to `Weekly`
     * 
     */
    @Import(name="daysOfWeeks")
    private @Nullable Output> daysOfWeeks;

    /**
     * @return A list of days on which backup can take place. Possible values are `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday`, `Saturday` and `Sunday`
     * 
     * > **NOTE:** `days_of_week` can only be specified when `manual_schedule` is set to `Weekly`
     * 
     */
    public Optional>> daysOfWeeks() {
        return Optional.ofNullable(this.daysOfWeeks);
    }

    /**
     * Frequency of full backups. Valid values include `Daily` or `Weekly`.
     * 
     */
    @Import(name="fullBackupFrequency", required=true)
    private Output fullBackupFrequency;

    /**
     * @return Frequency of full backups. Valid values include `Daily` or `Weekly`.
     * 
     */
    public Output fullBackupFrequency() {
        return this.fullBackupFrequency;
    }

    /**
     * Start hour of a given day during which full backups can take place. Valid values are from `0` to `23`.
     * 
     */
    @Import(name="fullBackupStartHour", required=true)
    private Output fullBackupStartHour;

    /**
     * @return Start hour of a given day during which full backups can take place. Valid values are from `0` to `23`.
     * 
     */
    public Output fullBackupStartHour() {
        return this.fullBackupStartHour;
    }

    /**
     * Duration of the time window of a given day during which full backups can take place, in hours. Valid values are between `1` and `23`.
     * 
     */
    @Import(name="fullBackupWindowInHours", required=true)
    private Output fullBackupWindowInHours;

    /**
     * @return Duration of the time window of a given day during which full backups can take place, in hours. Valid values are between `1` and `23`.
     * 
     */
    public Output fullBackupWindowInHours() {
        return this.fullBackupWindowInHours;
    }

    /**
     * Frequency of log backups, in minutes. Valid values are from `5` to `60`.
     * 
     */
    @Import(name="logBackupFrequencyInMinutes", required=true)
    private Output logBackupFrequencyInMinutes;

    /**
     * @return Frequency of log backups, in minutes. Valid values are from `5` to `60`.
     * 
     */
    public Output logBackupFrequencyInMinutes() {
        return this.logBackupFrequencyInMinutes;
    }

    private VirtualMachineAutoBackupManualScheduleArgs() {}

    private VirtualMachineAutoBackupManualScheduleArgs(VirtualMachineAutoBackupManualScheduleArgs $) {
        this.daysOfWeeks = $.daysOfWeeks;
        this.fullBackupFrequency = $.fullBackupFrequency;
        this.fullBackupStartHour = $.fullBackupStartHour;
        this.fullBackupWindowInHours = $.fullBackupWindowInHours;
        this.logBackupFrequencyInMinutes = $.logBackupFrequencyInMinutes;
    }

    public static Builder builder() {
        return new Builder();
    }
    public static Builder builder(VirtualMachineAutoBackupManualScheduleArgs defaults) {
        return new Builder(defaults);
    }

    public static final class Builder {
        private VirtualMachineAutoBackupManualScheduleArgs $;

        public Builder() {
            $ = new VirtualMachineAutoBackupManualScheduleArgs();
        }

        public Builder(VirtualMachineAutoBackupManualScheduleArgs defaults) {
            $ = new VirtualMachineAutoBackupManualScheduleArgs(Objects.requireNonNull(defaults));
        }

        /**
         * @param daysOfWeeks A list of days on which backup can take place. Possible values are `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday`, `Saturday` and `Sunday`
         * 
         * > **NOTE:** `days_of_week` can only be specified when `manual_schedule` is set to `Weekly`
         * 
         * @return builder
         * 
         */
        public Builder daysOfWeeks(@Nullable Output> daysOfWeeks) {
            $.daysOfWeeks = daysOfWeeks;
            return this;
        }

        /**
         * @param daysOfWeeks A list of days on which backup can take place. Possible values are `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday`, `Saturday` and `Sunday`
         * 
         * > **NOTE:** `days_of_week` can only be specified when `manual_schedule` is set to `Weekly`
         * 
         * @return builder
         * 
         */
        public Builder daysOfWeeks(List daysOfWeeks) {
            return daysOfWeeks(Output.of(daysOfWeeks));
        }

        /**
         * @param daysOfWeeks A list of days on which backup can take place. Possible values are `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday`, `Saturday` and `Sunday`
         * 
         * > **NOTE:** `days_of_week` can only be specified when `manual_schedule` is set to `Weekly`
         * 
         * @return builder
         * 
         */
        public Builder daysOfWeeks(String... daysOfWeeks) {
            return daysOfWeeks(List.of(daysOfWeeks));
        }

        /**
         * @param fullBackupFrequency Frequency of full backups. Valid values include `Daily` or `Weekly`.
         * 
         * @return builder
         * 
         */
        public Builder fullBackupFrequency(Output fullBackupFrequency) {
            $.fullBackupFrequency = fullBackupFrequency;
            return this;
        }

        /**
         * @param fullBackupFrequency Frequency of full backups. Valid values include `Daily` or `Weekly`.
         * 
         * @return builder
         * 
         */
        public Builder fullBackupFrequency(String fullBackupFrequency) {
            return fullBackupFrequency(Output.of(fullBackupFrequency));
        }

        /**
         * @param fullBackupStartHour Start hour of a given day during which full backups can take place. Valid values are from `0` to `23`.
         * 
         * @return builder
         * 
         */
        public Builder fullBackupStartHour(Output fullBackupStartHour) {
            $.fullBackupStartHour = fullBackupStartHour;
            return this;
        }

        /**
         * @param fullBackupStartHour Start hour of a given day during which full backups can take place. Valid values are from `0` to `23`.
         * 
         * @return builder
         * 
         */
        public Builder fullBackupStartHour(Integer fullBackupStartHour) {
            return fullBackupStartHour(Output.of(fullBackupStartHour));
        }

        /**
         * @param fullBackupWindowInHours Duration of the time window of a given day during which full backups can take place, in hours. Valid values are between `1` and `23`.
         * 
         * @return builder
         * 
         */
        public Builder fullBackupWindowInHours(Output fullBackupWindowInHours) {
            $.fullBackupWindowInHours = fullBackupWindowInHours;
            return this;
        }

        /**
         * @param fullBackupWindowInHours Duration of the time window of a given day during which full backups can take place, in hours. Valid values are between `1` and `23`.
         * 
         * @return builder
         * 
         */
        public Builder fullBackupWindowInHours(Integer fullBackupWindowInHours) {
            return fullBackupWindowInHours(Output.of(fullBackupWindowInHours));
        }

        /**
         * @param logBackupFrequencyInMinutes Frequency of log backups, in minutes. Valid values are from `5` to `60`.
         * 
         * @return builder
         * 
         */
        public Builder logBackupFrequencyInMinutes(Output logBackupFrequencyInMinutes) {
            $.logBackupFrequencyInMinutes = logBackupFrequencyInMinutes;
            return this;
        }

        /**
         * @param logBackupFrequencyInMinutes Frequency of log backups, in minutes. Valid values are from `5` to `60`.
         * 
         * @return builder
         * 
         */
        public Builder logBackupFrequencyInMinutes(Integer logBackupFrequencyInMinutes) {
            return logBackupFrequencyInMinutes(Output.of(logBackupFrequencyInMinutes));
        }

        public VirtualMachineAutoBackupManualScheduleArgs build() {
            if ($.fullBackupFrequency == null) {
                throw new MissingRequiredPropertyException("VirtualMachineAutoBackupManualScheduleArgs", "fullBackupFrequency");
            }
            if ($.fullBackupStartHour == null) {
                throw new MissingRequiredPropertyException("VirtualMachineAutoBackupManualScheduleArgs", "fullBackupStartHour");
            }
            if ($.fullBackupWindowInHours == null) {
                throw new MissingRequiredPropertyException("VirtualMachineAutoBackupManualScheduleArgs", "fullBackupWindowInHours");
            }
            if ($.logBackupFrequencyInMinutes == null) {
                throw new MissingRequiredPropertyException("VirtualMachineAutoBackupManualScheduleArgs", "logBackupFrequencyInMinutes");
            }
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy