com.pulumi.azure.desktopvirtualization.outputs.GetHostPoolScheduledAgentUpdate Maven / Gradle / Ivy
// *** 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.desktopvirtualization.outputs;
import com.pulumi.azure.desktopvirtualization.outputs.GetHostPoolScheduledAgentUpdateSchedule;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.lang.String;
import java.util.List;
import java.util.Objects;
@CustomType
public final class GetHostPoolScheduledAgentUpdate {
/**
* @return Are scheduled updates of the AVD agent components (RDAgent, Geneva Monitoring agent, and side-by-side stack) enabled on session hosts.
*
*/
private Boolean enabled;
/**
* @return A `schedule` block as defined below.
*
*/
private List schedules;
/**
* @return The time zone in which the agent update schedule will apply.
*
*/
private String timezone;
/**
* @return Specifies whether scheduled agent updates should be applied based on the timezone of the affected session host.
*
*/
private Boolean useSessionHostTimezone;
private GetHostPoolScheduledAgentUpdate() {}
/**
* @return Are scheduled updates of the AVD agent components (RDAgent, Geneva Monitoring agent, and side-by-side stack) enabled on session hosts.
*
*/
public Boolean enabled() {
return this.enabled;
}
/**
* @return A `schedule` block as defined below.
*
*/
public List schedules() {
return this.schedules;
}
/**
* @return The time zone in which the agent update schedule will apply.
*
*/
public String timezone() {
return this.timezone;
}
/**
* @return Specifies whether scheduled agent updates should be applied based on the timezone of the affected session host.
*
*/
public Boolean useSessionHostTimezone() {
return this.useSessionHostTimezone;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(GetHostPoolScheduledAgentUpdate defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private Boolean enabled;
private List schedules;
private String timezone;
private Boolean useSessionHostTimezone;
public Builder() {}
public Builder(GetHostPoolScheduledAgentUpdate defaults) {
Objects.requireNonNull(defaults);
this.enabled = defaults.enabled;
this.schedules = defaults.schedules;
this.timezone = defaults.timezone;
this.useSessionHostTimezone = defaults.useSessionHostTimezone;
}
@CustomType.Setter
public Builder enabled(Boolean enabled) {
if (enabled == null) {
throw new MissingRequiredPropertyException("GetHostPoolScheduledAgentUpdate", "enabled");
}
this.enabled = enabled;
return this;
}
@CustomType.Setter
public Builder schedules(List schedules) {
if (schedules == null) {
throw new MissingRequiredPropertyException("GetHostPoolScheduledAgentUpdate", "schedules");
}
this.schedules = schedules;
return this;
}
public Builder schedules(GetHostPoolScheduledAgentUpdateSchedule... schedules) {
return schedules(List.of(schedules));
}
@CustomType.Setter
public Builder timezone(String timezone) {
if (timezone == null) {
throw new MissingRequiredPropertyException("GetHostPoolScheduledAgentUpdate", "timezone");
}
this.timezone = timezone;
return this;
}
@CustomType.Setter
public Builder useSessionHostTimezone(Boolean useSessionHostTimezone) {
if (useSessionHostTimezone == null) {
throw new MissingRequiredPropertyException("GetHostPoolScheduledAgentUpdate", "useSessionHostTimezone");
}
this.useSessionHostTimezone = useSessionHostTimezone;
return this;
}
public GetHostPoolScheduledAgentUpdate build() {
final var _resultValue = new GetHostPoolScheduledAgentUpdate();
_resultValue.enabled = enabled;
_resultValue.schedules = schedules;
_resultValue.timezone = timezone;
_resultValue.useSessionHostTimezone = useSessionHostTimezone;
return _resultValue;
}
}
}