com.pulumi.azure.logicapps.outputs.IntegrationAccountBatchConfigurationReleaseCriteriaRecurrence Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure Show documentation
Show all versions of azure Show documentation
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.
// *** 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.logicapps.outputs;
import com.pulumi.azure.logicapps.outputs.IntegrationAccountBatchConfigurationReleaseCriteriaRecurrenceSchedule;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class IntegrationAccountBatchConfigurationReleaseCriteriaRecurrence {
/**
* @return The end time of the schedule, formatted as an RFC3339 string.
*
*/
private @Nullable String endTime;
/**
* @return The frequency of the schedule. Possible values are `Day`, `Hour`, `Minute`, `Month`, `NotSpecified`, `Second`, `Week` and `Year`.
*
*/
private String frequency;
/**
* @return The number of `frequency`s between runs.
*
*/
private Integer interval;
/**
* @return A `schedule` block as documented below.
*
*/
private @Nullable IntegrationAccountBatchConfigurationReleaseCriteriaRecurrenceSchedule schedule;
/**
* @return The start time of the schedule, formatted as an RFC3339 string.
*
*/
private @Nullable String startTime;
/**
* @return The timezone of the start/end time.
*
*/
private @Nullable String timeZone;
private IntegrationAccountBatchConfigurationReleaseCriteriaRecurrence() {}
/**
* @return The end time of the schedule, formatted as an RFC3339 string.
*
*/
public Optional endTime() {
return Optional.ofNullable(this.endTime);
}
/**
* @return The frequency of the schedule. Possible values are `Day`, `Hour`, `Minute`, `Month`, `NotSpecified`, `Second`, `Week` and `Year`.
*
*/
public String frequency() {
return this.frequency;
}
/**
* @return The number of `frequency`s between runs.
*
*/
public Integer interval() {
return this.interval;
}
/**
* @return A `schedule` block as documented below.
*
*/
public Optional schedule() {
return Optional.ofNullable(this.schedule);
}
/**
* @return The start time of the schedule, formatted as an RFC3339 string.
*
*/
public Optional startTime() {
return Optional.ofNullable(this.startTime);
}
/**
* @return The timezone of the start/end time.
*
*/
public Optional timeZone() {
return Optional.ofNullable(this.timeZone);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(IntegrationAccountBatchConfigurationReleaseCriteriaRecurrence defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable String endTime;
private String frequency;
private Integer interval;
private @Nullable IntegrationAccountBatchConfigurationReleaseCriteriaRecurrenceSchedule schedule;
private @Nullable String startTime;
private @Nullable String timeZone;
public Builder() {}
public Builder(IntegrationAccountBatchConfigurationReleaseCriteriaRecurrence defaults) {
Objects.requireNonNull(defaults);
this.endTime = defaults.endTime;
this.frequency = defaults.frequency;
this.interval = defaults.interval;
this.schedule = defaults.schedule;
this.startTime = defaults.startTime;
this.timeZone = defaults.timeZone;
}
@CustomType.Setter
public Builder endTime(@Nullable String endTime) {
this.endTime = endTime;
return this;
}
@CustomType.Setter
public Builder frequency(String frequency) {
if (frequency == null) {
throw new MissingRequiredPropertyException("IntegrationAccountBatchConfigurationReleaseCriteriaRecurrence", "frequency");
}
this.frequency = frequency;
return this;
}
@CustomType.Setter
public Builder interval(Integer interval) {
if (interval == null) {
throw new MissingRequiredPropertyException("IntegrationAccountBatchConfigurationReleaseCriteriaRecurrence", "interval");
}
this.interval = interval;
return this;
}
@CustomType.Setter
public Builder schedule(@Nullable IntegrationAccountBatchConfigurationReleaseCriteriaRecurrenceSchedule schedule) {
this.schedule = schedule;
return this;
}
@CustomType.Setter
public Builder startTime(@Nullable String startTime) {
this.startTime = startTime;
return this;
}
@CustomType.Setter
public Builder timeZone(@Nullable String timeZone) {
this.timeZone = timeZone;
return this;
}
public IntegrationAccountBatchConfigurationReleaseCriteriaRecurrence build() {
final var _resultValue = new IntegrationAccountBatchConfigurationReleaseCriteriaRecurrence();
_resultValue.endTime = endTime;
_resultValue.frequency = frequency;
_resultValue.interval = interval;
_resultValue.schedule = schedule;
_resultValue.startTime = startTime;
_resultValue.timeZone = timeZone;
return _resultValue;
}
}
}