com.google.api.services.osconfig.v1.model.RecurringSchedule Maven / Gradle / Ivy
The newest version!
/*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software distributed under the License
* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
*/
/*
* This code was generated by https://github.com/googleapis/google-api-java-client-services/
* Modify at your own risk.
*/
package com.google.api.services.osconfig.v1.model;
/**
* Sets the time for recurring patch deployments.
*
* This is the Java data model class that specifies how to parse/serialize into the JSON that is
* transmitted over HTTP when working with the OS Config API. For a detailed explanation see:
* https://developers.google.com/api-client-library/java/google-http-java-client/json
*
*
* @author Google, Inc.
*/
@SuppressWarnings("javadoc")
public final class RecurringSchedule extends com.google.api.client.json.GenericJson {
/**
* Optional. The end time at which a recurring patch deployment schedule is no longer active.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private String endTime;
/**
* Required. The frequency unit of this recurring schedule.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String frequency;
/**
* Output only. The time the last patch job ran successfully.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private String lastExecuteTime;
/**
* Required. Schedule with monthly executions.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private MonthlySchedule monthly;
/**
* Output only. The time the next patch job is scheduled to run.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private String nextExecuteTime;
/**
* Optional. The time that the recurring schedule becomes effective. Defaults to `create_time` of
* the patch deployment.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private String startTime;
/**
* Required. Time of the day to run a recurring deployment.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private TimeOfDay timeOfDay;
/**
* Required. Defines the time zone that `time_of_day` is relative to. The rules for daylight
* saving time are determined by the chosen time zone.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private TimeZone timeZone;
/**
* Required. Schedule with weekly executions.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private WeeklySchedule weekly;
/**
* Optional. The end time at which a recurring patch deployment schedule is no longer active.
* @return value or {@code null} for none
*/
public String getEndTime() {
return endTime;
}
/**
* Optional. The end time at which a recurring patch deployment schedule is no longer active.
* @param endTime endTime or {@code null} for none
*/
public RecurringSchedule setEndTime(String endTime) {
this.endTime = endTime;
return this;
}
/**
* Required. The frequency unit of this recurring schedule.
* @return value or {@code null} for none
*/
public java.lang.String getFrequency() {
return frequency;
}
/**
* Required. The frequency unit of this recurring schedule.
* @param frequency frequency or {@code null} for none
*/
public RecurringSchedule setFrequency(java.lang.String frequency) {
this.frequency = frequency;
return this;
}
/**
* Output only. The time the last patch job ran successfully.
* @return value or {@code null} for none
*/
public String getLastExecuteTime() {
return lastExecuteTime;
}
/**
* Output only. The time the last patch job ran successfully.
* @param lastExecuteTime lastExecuteTime or {@code null} for none
*/
public RecurringSchedule setLastExecuteTime(String lastExecuteTime) {
this.lastExecuteTime = lastExecuteTime;
return this;
}
/**
* Required. Schedule with monthly executions.
* @return value or {@code null} for none
*/
public MonthlySchedule getMonthly() {
return monthly;
}
/**
* Required. Schedule with monthly executions.
* @param monthly monthly or {@code null} for none
*/
public RecurringSchedule setMonthly(MonthlySchedule monthly) {
this.monthly = monthly;
return this;
}
/**
* Output only. The time the next patch job is scheduled to run.
* @return value or {@code null} for none
*/
public String getNextExecuteTime() {
return nextExecuteTime;
}
/**
* Output only. The time the next patch job is scheduled to run.
* @param nextExecuteTime nextExecuteTime or {@code null} for none
*/
public RecurringSchedule setNextExecuteTime(String nextExecuteTime) {
this.nextExecuteTime = nextExecuteTime;
return this;
}
/**
* Optional. The time that the recurring schedule becomes effective. Defaults to `create_time` of
* the patch deployment.
* @return value or {@code null} for none
*/
public String getStartTime() {
return startTime;
}
/**
* Optional. The time that the recurring schedule becomes effective. Defaults to `create_time` of
* the patch deployment.
* @param startTime startTime or {@code null} for none
*/
public RecurringSchedule setStartTime(String startTime) {
this.startTime = startTime;
return this;
}
/**
* Required. Time of the day to run a recurring deployment.
* @return value or {@code null} for none
*/
public TimeOfDay getTimeOfDay() {
return timeOfDay;
}
/**
* Required. Time of the day to run a recurring deployment.
* @param timeOfDay timeOfDay or {@code null} for none
*/
public RecurringSchedule setTimeOfDay(TimeOfDay timeOfDay) {
this.timeOfDay = timeOfDay;
return this;
}
/**
* Required. Defines the time zone that `time_of_day` is relative to. The rules for daylight
* saving time are determined by the chosen time zone.
* @return value or {@code null} for none
*/
public TimeZone getTimeZone() {
return timeZone;
}
/**
* Required. Defines the time zone that `time_of_day` is relative to. The rules for daylight
* saving time are determined by the chosen time zone.
* @param timeZone timeZone or {@code null} for none
*/
public RecurringSchedule setTimeZone(TimeZone timeZone) {
this.timeZone = timeZone;
return this;
}
/**
* Required. Schedule with weekly executions.
* @return value or {@code null} for none
*/
public WeeklySchedule getWeekly() {
return weekly;
}
/**
* Required. Schedule with weekly executions.
* @param weekly weekly or {@code null} for none
*/
public RecurringSchedule setWeekly(WeeklySchedule weekly) {
this.weekly = weekly;
return this;
}
@Override
public RecurringSchedule set(String fieldName, Object value) {
return (RecurringSchedule) super.set(fieldName, value);
}
@Override
public RecurringSchedule clone() {
return (RecurringSchedule) super.clone();
}
}