
gobblin.service.Schedule Maven / Gradle / Ivy
The newest version!
package gobblin.service;
import java.util.List;
import javax.annotation.Generated;
import javax.annotation.Nonnull;
import com.linkedin.data.DataMap;
import com.linkedin.data.schema.PathSpec;
import com.linkedin.data.schema.RecordDataSchema;
import com.linkedin.data.template.DataTemplateUtil;
import com.linkedin.data.template.GetMode;
import com.linkedin.data.template.RecordTemplate;
import com.linkedin.data.template.SetMode;
/**
* Attributes for defining a job schedule
*
*/
@Generated(value = "com.linkedin.pegasus.generator.JavaCodeUtil", comments = "Rest.li Data Template. Generated from /Users/ibuenros/repos/gobblin/gobblin-restli/gobblin-flow-config-service/gobblin-flow-config-service-api/src/main/pegasus/gobblin/service/Schedule.pdsc.", date = "Fri Jul 21 13:35:27 PDT 2017")
public class Schedule
extends RecordTemplate
{
private final static Schedule.Fields _fields = new Schedule.Fields();
private final static RecordDataSchema SCHEMA = ((RecordDataSchema) DataTemplateUtil.parseSchema("{\"type\":\"record\",\"name\":\"Schedule\",\"namespace\":\"gobblin.service\",\"doc\":\"Attributes for defining a job schedule\",\"fields\":[{\"name\":\"cronSchedule\",\"type\":\"string\",\"doc\":\"Schedule for flow in cron format\",\"validate\":{\"gobblin.service.validator.CronValidator\":{}}},{\"name\":\"runImmediately\",\"type\":\"boolean\",\"doc\":\"Set to true to request that a job with a schedule be run immediately in addition to being scheduled\",\"default\":false}]}"));
private final static RecordDataSchema.Field FIELD_CronSchedule = SCHEMA.getField("cronSchedule");
private final static RecordDataSchema.Field FIELD_RunImmediately = SCHEMA.getField("runImmediately");
public Schedule() {
super(new DataMap(), SCHEMA);
}
public Schedule(DataMap data) {
super(data, SCHEMA);
}
public static Schedule.Fields fields() {
return _fields;
}
/**
* Existence checker for cronSchedule
*
* @see Schedule.Fields#cronSchedule
*/
public boolean hasCronSchedule() {
return contains(FIELD_CronSchedule);
}
/**
* Remover for cronSchedule
*
* @see Schedule.Fields#cronSchedule
*/
public void removeCronSchedule() {
remove(FIELD_CronSchedule);
}
/**
* Getter for cronSchedule
*
* @see Schedule.Fields#cronSchedule
*/
public String getCronSchedule(GetMode mode) {
return obtainDirect(FIELD_CronSchedule, String.class, mode);
}
/**
* Getter for cronSchedule
*
* @return
* Required field. Could be null for partial record.
* @see Schedule.Fields#cronSchedule
*/
@Nonnull
public String getCronSchedule() {
return obtainDirect(FIELD_CronSchedule, String.class, GetMode.STRICT);
}
/**
* Setter for cronSchedule
*
* @see Schedule.Fields#cronSchedule
*/
public Schedule setCronSchedule(String value, SetMode mode) {
putDirect(FIELD_CronSchedule, String.class, String.class, value, mode);
return this;
}
/**
* Setter for cronSchedule
*
* @param value
* Must not be null. For more control, use setters with mode instead.
* @see Schedule.Fields#cronSchedule
*/
public Schedule setCronSchedule(
@Nonnull
String value) {
putDirect(FIELD_CronSchedule, String.class, String.class, value, SetMode.DISALLOW_NULL);
return this;
}
/**
* Existence checker for runImmediately
*
* @see Schedule.Fields#runImmediately
*/
public boolean hasRunImmediately() {
return contains(FIELD_RunImmediately);
}
/**
* Remover for runImmediately
*
* @see Schedule.Fields#runImmediately
*/
public void removeRunImmediately() {
remove(FIELD_RunImmediately);
}
/**
* Getter for runImmediately
*
* @see Schedule.Fields#runImmediately
*/
public Boolean isRunImmediately(GetMode mode) {
return obtainDirect(FIELD_RunImmediately, Boolean.class, mode);
}
/**
* Getter for runImmediately
*
* @return
* Required field. Could be null for partial record.
* @see Schedule.Fields#runImmediately
*/
@Nonnull
public Boolean isRunImmediately() {
return obtainDirect(FIELD_RunImmediately, Boolean.class, GetMode.STRICT);
}
/**
* Setter for runImmediately
*
* @see Schedule.Fields#runImmediately
*/
public Schedule setRunImmediately(Boolean value, SetMode mode) {
putDirect(FIELD_RunImmediately, Boolean.class, Boolean.class, value, mode);
return this;
}
/**
* Setter for runImmediately
*
* @param value
* Must not be null. For more control, use setters with mode instead.
* @see Schedule.Fields#runImmediately
*/
public Schedule setRunImmediately(
@Nonnull
Boolean value) {
putDirect(FIELD_RunImmediately, Boolean.class, Boolean.class, value, SetMode.DISALLOW_NULL);
return this;
}
/**
* Setter for runImmediately
*
* @see Schedule.Fields#runImmediately
*/
public Schedule setRunImmediately(boolean value) {
putDirect(FIELD_RunImmediately, Boolean.class, Boolean.class, value, SetMode.DISALLOW_NULL);
return this;
}
@Override
public Schedule clone()
throws CloneNotSupportedException
{
return ((Schedule) super.clone());
}
@Override
public Schedule copy()
throws CloneNotSupportedException
{
return ((Schedule) super.copy());
}
public static class Fields
extends PathSpec
{
public Fields(List path, String name) {
super(path, name);
}
public Fields() {
super();
}
/**
* Schedule for flow in cron format
*
*/
public PathSpec cronSchedule() {
return new PathSpec(getPathComponents(), "cronSchedule");
}
/**
* Set to true to request that a job with a schedule be run immediately in addition to being scheduled
*
*/
public PathSpec runImmediately() {
return new PathSpec(getPathComponents(), "runImmediately");
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy