com.pulumi.googlenative.compute.beta.outputs.ResourcePolicyInstanceSchedulePolicyResponse 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.googlenative.compute.beta.outputs;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.googlenative.compute.beta.outputs.ResourcePolicyInstanceSchedulePolicyScheduleResponse;
import java.lang.String;
import java.util.Objects;
@CustomType
public final class ResourcePolicyInstanceSchedulePolicyResponse {
/**
* @return The expiration time of the schedule. The timestamp is an RFC3339 string.
*
*/
private String expirationTime;
/**
* @return The start time of the schedule. The timestamp is an RFC3339 string.
*
*/
private String startTime;
/**
* @return Specifies the time zone to be used in interpreting Schedule.schedule. The value of this field must be a time zone name from the tz database: https://wikipedia.org/wiki/Tz_database.
*
*/
private String timeZone;
/**
* @return Specifies the schedule for starting instances.
*
*/
private ResourcePolicyInstanceSchedulePolicyScheduleResponse vmStartSchedule;
/**
* @return Specifies the schedule for stopping instances.
*
*/
private ResourcePolicyInstanceSchedulePolicyScheduleResponse vmStopSchedule;
private ResourcePolicyInstanceSchedulePolicyResponse() {}
/**
* @return The expiration time of the schedule. The timestamp is an RFC3339 string.
*
*/
public String expirationTime() {
return this.expirationTime;
}
/**
* @return The start time of the schedule. The timestamp is an RFC3339 string.
*
*/
public String startTime() {
return this.startTime;
}
/**
* @return Specifies the time zone to be used in interpreting Schedule.schedule. The value of this field must be a time zone name from the tz database: https://wikipedia.org/wiki/Tz_database.
*
*/
public String timeZone() {
return this.timeZone;
}
/**
* @return Specifies the schedule for starting instances.
*
*/
public ResourcePolicyInstanceSchedulePolicyScheduleResponse vmStartSchedule() {
return this.vmStartSchedule;
}
/**
* @return Specifies the schedule for stopping instances.
*
*/
public ResourcePolicyInstanceSchedulePolicyScheduleResponse vmStopSchedule() {
return this.vmStopSchedule;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(ResourcePolicyInstanceSchedulePolicyResponse defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private String expirationTime;
private String startTime;
private String timeZone;
private ResourcePolicyInstanceSchedulePolicyScheduleResponse vmStartSchedule;
private ResourcePolicyInstanceSchedulePolicyScheduleResponse vmStopSchedule;
public Builder() {}
public Builder(ResourcePolicyInstanceSchedulePolicyResponse defaults) {
Objects.requireNonNull(defaults);
this.expirationTime = defaults.expirationTime;
this.startTime = defaults.startTime;
this.timeZone = defaults.timeZone;
this.vmStartSchedule = defaults.vmStartSchedule;
this.vmStopSchedule = defaults.vmStopSchedule;
}
@CustomType.Setter
public Builder expirationTime(String expirationTime) {
this.expirationTime = Objects.requireNonNull(expirationTime);
return this;
}
@CustomType.Setter
public Builder startTime(String startTime) {
this.startTime = Objects.requireNonNull(startTime);
return this;
}
@CustomType.Setter
public Builder timeZone(String timeZone) {
this.timeZone = Objects.requireNonNull(timeZone);
return this;
}
@CustomType.Setter
public Builder vmStartSchedule(ResourcePolicyInstanceSchedulePolicyScheduleResponse vmStartSchedule) {
this.vmStartSchedule = Objects.requireNonNull(vmStartSchedule);
return this;
}
@CustomType.Setter
public Builder vmStopSchedule(ResourcePolicyInstanceSchedulePolicyScheduleResponse vmStopSchedule) {
this.vmStopSchedule = Objects.requireNonNull(vmStopSchedule);
return this;
}
public ResourcePolicyInstanceSchedulePolicyResponse build() {
final var o = new ResourcePolicyInstanceSchedulePolicyResponse();
o.expirationTime = expirationTime;
o.startTime = startTime;
o.timeZone = timeZone;
o.vmStartSchedule = vmStartSchedule;
o.vmStopSchedule = vmStopSchedule;
return o;
}
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy