
com.pulumi.azurenative.storsimple.inputs.BandwidthScheduleArgs Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-native Show documentation
Show all versions of azure-native Show documentation
A native Pulumi package for creating and managing Azure resources.
// *** 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.storsimple.inputs;
import com.pulumi.azurenative.storsimple.enums.DayOfWeek;
import com.pulumi.azurenative.storsimple.inputs.TimeArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Integer;
import java.util.List;
import java.util.Objects;
/**
* The schedule for bandwidth setting.
*
*/
public final class BandwidthScheduleArgs extends com.pulumi.resources.ResourceArgs {
public static final BandwidthScheduleArgs Empty = new BandwidthScheduleArgs();
/**
* The days of the week when this schedule is applicable.
*
*/
@Import(name="days", required=true)
private Output> days;
/**
* @return The days of the week when this schedule is applicable.
*
*/
public Output> days() {
return this.days;
}
/**
* The rate in Mbps.
*
*/
@Import(name="rateInMbps", required=true)
private Output rateInMbps;
/**
* @return The rate in Mbps.
*
*/
public Output rateInMbps() {
return this.rateInMbps;
}
/**
* The start time of the schedule.
*
*/
@Import(name="start", required=true)
private Output start;
/**
* @return The start time of the schedule.
*
*/
public Output start() {
return this.start;
}
/**
* The stop time of the schedule.
*
*/
@Import(name="stop", required=true)
private Output stop;
/**
* @return The stop time of the schedule.
*
*/
public Output stop() {
return this.stop;
}
private BandwidthScheduleArgs() {}
private BandwidthScheduleArgs(BandwidthScheduleArgs $) {
this.days = $.days;
this.rateInMbps = $.rateInMbps;
this.start = $.start;
this.stop = $.stop;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(BandwidthScheduleArgs defaults) {
return new Builder(defaults);
}
public static final class Builder {
private BandwidthScheduleArgs $;
public Builder() {
$ = new BandwidthScheduleArgs();
}
public Builder(BandwidthScheduleArgs defaults) {
$ = new BandwidthScheduleArgs(Objects.requireNonNull(defaults));
}
/**
* @param days The days of the week when this schedule is applicable.
*
* @return builder
*
*/
public Builder days(Output> days) {
$.days = days;
return this;
}
/**
* @param days The days of the week when this schedule is applicable.
*
* @return builder
*
*/
public Builder days(List days) {
return days(Output.of(days));
}
/**
* @param days The days of the week when this schedule is applicable.
*
* @return builder
*
*/
public Builder days(DayOfWeek... days) {
return days(List.of(days));
}
/**
* @param rateInMbps The rate in Mbps.
*
* @return builder
*
*/
public Builder rateInMbps(Output rateInMbps) {
$.rateInMbps = rateInMbps;
return this;
}
/**
* @param rateInMbps The rate in Mbps.
*
* @return builder
*
*/
public Builder rateInMbps(Integer rateInMbps) {
return rateInMbps(Output.of(rateInMbps));
}
/**
* @param start The start time of the schedule.
*
* @return builder
*
*/
public Builder start(Output start) {
$.start = start;
return this;
}
/**
* @param start The start time of the schedule.
*
* @return builder
*
*/
public Builder start(TimeArgs start) {
return start(Output.of(start));
}
/**
* @param stop The stop time of the schedule.
*
* @return builder
*
*/
public Builder stop(Output stop) {
$.stop = stop;
return this;
}
/**
* @param stop The stop time of the schedule.
*
* @return builder
*
*/
public Builder stop(TimeArgs stop) {
return stop(Output.of(stop));
}
public BandwidthScheduleArgs build() {
if ($.days == null) {
throw new MissingRequiredPropertyException("BandwidthScheduleArgs", "days");
}
if ($.rateInMbps == null) {
throw new MissingRequiredPropertyException("BandwidthScheduleArgs", "rateInMbps");
}
if ($.start == null) {
throw new MissingRequiredPropertyException("BandwidthScheduleArgs", "start");
}
if ($.stop == null) {
throw new MissingRequiredPropertyException("BandwidthScheduleArgs", "stop");
}
return $;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy