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

com.pulumi.azurenative.dbforpostgresql.inputs.MaintenanceWindowArgs Maven / Gradle / Ivy

There is a newer version: 2.82.0
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.azurenative.dbforpostgresql.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.core.internal.Codegen;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * Maintenance window properties of a server.
 * 
 */
public final class MaintenanceWindowArgs extends com.pulumi.resources.ResourceArgs {

    public static final MaintenanceWindowArgs Empty = new MaintenanceWindowArgs();

    /**
     * indicates whether custom window is enabled or disabled
     * 
     */
    @Import(name="customWindow")
    private @Nullable Output customWindow;

    /**
     * @return indicates whether custom window is enabled or disabled
     * 
     */
    public Optional> customWindow() {
        return Optional.ofNullable(this.customWindow);
    }

    /**
     * day of week for maintenance window
     * 
     */
    @Import(name="dayOfWeek")
    private @Nullable Output dayOfWeek;

    /**
     * @return day of week for maintenance window
     * 
     */
    public Optional> dayOfWeek() {
        return Optional.ofNullable(this.dayOfWeek);
    }

    /**
     * start hour for maintenance window
     * 
     */
    @Import(name="startHour")
    private @Nullable Output startHour;

    /**
     * @return start hour for maintenance window
     * 
     */
    public Optional> startHour() {
        return Optional.ofNullable(this.startHour);
    }

    /**
     * start minute for maintenance window
     * 
     */
    @Import(name="startMinute")
    private @Nullable Output startMinute;

    /**
     * @return start minute for maintenance window
     * 
     */
    public Optional> startMinute() {
        return Optional.ofNullable(this.startMinute);
    }

    private MaintenanceWindowArgs() {}

    private MaintenanceWindowArgs(MaintenanceWindowArgs $) {
        this.customWindow = $.customWindow;
        this.dayOfWeek = $.dayOfWeek;
        this.startHour = $.startHour;
        this.startMinute = $.startMinute;
    }

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

    public static final class Builder {
        private MaintenanceWindowArgs $;

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

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

        /**
         * @param customWindow indicates whether custom window is enabled or disabled
         * 
         * @return builder
         * 
         */
        public Builder customWindow(@Nullable Output customWindow) {
            $.customWindow = customWindow;
            return this;
        }

        /**
         * @param customWindow indicates whether custom window is enabled or disabled
         * 
         * @return builder
         * 
         */
        public Builder customWindow(String customWindow) {
            return customWindow(Output.of(customWindow));
        }

        /**
         * @param dayOfWeek day of week for maintenance window
         * 
         * @return builder
         * 
         */
        public Builder dayOfWeek(@Nullable Output dayOfWeek) {
            $.dayOfWeek = dayOfWeek;
            return this;
        }

        /**
         * @param dayOfWeek day of week for maintenance window
         * 
         * @return builder
         * 
         */
        public Builder dayOfWeek(Integer dayOfWeek) {
            return dayOfWeek(Output.of(dayOfWeek));
        }

        /**
         * @param startHour start hour for maintenance window
         * 
         * @return builder
         * 
         */
        public Builder startHour(@Nullable Output startHour) {
            $.startHour = startHour;
            return this;
        }

        /**
         * @param startHour start hour for maintenance window
         * 
         * @return builder
         * 
         */
        public Builder startHour(Integer startHour) {
            return startHour(Output.of(startHour));
        }

        /**
         * @param startMinute start minute for maintenance window
         * 
         * @return builder
         * 
         */
        public Builder startMinute(@Nullable Output startMinute) {
            $.startMinute = startMinute;
            return this;
        }

        /**
         * @param startMinute start minute for maintenance window
         * 
         * @return builder
         * 
         */
        public Builder startMinute(Integer startMinute) {
            return startMinute(Output.of(startMinute));
        }

        public MaintenanceWindowArgs build() {
            $.customWindow = Codegen.stringProp("customWindow").output().arg($.customWindow).def("Disabled").getNullable();
            $.dayOfWeek = Codegen.integerProp("dayOfWeek").output().arg($.dayOfWeek).def(0).getNullable();
            $.startHour = Codegen.integerProp("startHour").output().arg($.startHour).def(0).getNullable();
            $.startMinute = Codegen.integerProp("startMinute").output().arg($.startMinute).def(0).getNullable();
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy