
gobblin.restli.throttling.PermitAllocation Maven / Gradle / Ivy
package gobblin.restli.throttling;
import java.util.List;
import javax.annotation.Generated;
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;
/**
* Used by gobblin-throttling-service to allocate permits to a client.
*
*/
@Generated(value = "com.linkedin.pegasus.generator.JavaCodeUtil", comments = "Rest.li Data Template. Generated from /Users/ibuenros/repos/gobblin/gobblin-restli/gobblin-throttling-service/gobblin-throttling-service-api/src/main/pegasus/gobblin/restli/throttling/PermitAllocation.pdsc.", date = "Tue May 09 09:51:51 PDT 2017")
public class PermitAllocation
extends RecordTemplate
{
private final static PermitAllocation.Fields _fields = new PermitAllocation.Fields();
private final static RecordDataSchema SCHEMA = ((RecordDataSchema) DataTemplateUtil.parseSchema("{\"type\":\"record\",\"name\":\"PermitAllocation\",\"namespace\":\"gobblin.restli.throttling\",\"doc\":\"Used by gobblin-throttling-service to allocate permits to a client.\",\"fields\":[{\"name\":\"permits\",\"type\":\"long\",\"doc\":\"Number of permits allocated. This may be 0 if no permits are allocated, or the number of requested permits.\"},{\"name\":\"expiration\",\"type\":\"long\",\"doc\":\"Expiration time in Unix timestamp of the allocated permits.\"},{\"name\":\"minRetryDelayMillis\",\"type\":\"long\",\"doc\":\"Client should not try to acquire permits before this delay has passed.\",\"optional\":true}]}"));
private final static RecordDataSchema.Field FIELD_Permits = SCHEMA.getField("permits");
private final static RecordDataSchema.Field FIELD_Expiration = SCHEMA.getField("expiration");
private final static RecordDataSchema.Field FIELD_MinRetryDelayMillis = SCHEMA.getField("minRetryDelayMillis");
public PermitAllocation() {
super(new DataMap(), SCHEMA);
}
public PermitAllocation(DataMap data) {
super(data, SCHEMA);
}
public static PermitAllocation.Fields fields() {
return _fields;
}
/**
* Existence checker for permits
*
* @see Fields#permits
*/
public boolean hasPermits() {
return contains(FIELD_Permits);
}
/**
* Remover for permits
*
* @see Fields#permits
*/
public void removePermits() {
remove(FIELD_Permits);
}
/**
* Getter for permits
*
* @see Fields#permits
*/
public Long getPermits(GetMode mode) {
return obtainDirect(FIELD_Permits, Long.class, mode);
}
/**
* Getter for permits
*
* @see Fields#permits
*/
public Long getPermits() {
return getPermits(GetMode.STRICT);
}
/**
* Setter for permits
*
* @see Fields#permits
*/
public PermitAllocation setPermits(Long value, SetMode mode) {
putDirect(FIELD_Permits, Long.class, Long.class, value, mode);
return this;
}
/**
* Setter for permits
*
* @see Fields#permits
*/
public PermitAllocation setPermits(Long value) {
putDirect(FIELD_Permits, Long.class, Long.class, value, SetMode.DISALLOW_NULL);
return this;
}
/**
* Setter for permits
*
* @see Fields#permits
*/
public PermitAllocation setPermits(long value) {
putDirect(FIELD_Permits, Long.class, Long.class, value, SetMode.DISALLOW_NULL);
return this;
}
/**
* Existence checker for expiration
*
* @see Fields#expiration
*/
public boolean hasExpiration() {
return contains(FIELD_Expiration);
}
/**
* Remover for expiration
*
* @see Fields#expiration
*/
public void removeExpiration() {
remove(FIELD_Expiration);
}
/**
* Getter for expiration
*
* @see Fields#expiration
*/
public Long getExpiration(GetMode mode) {
return obtainDirect(FIELD_Expiration, Long.class, mode);
}
/**
* Getter for expiration
*
* @see Fields#expiration
*/
public Long getExpiration() {
return getExpiration(GetMode.STRICT);
}
/**
* Setter for expiration
*
* @see Fields#expiration
*/
public PermitAllocation setExpiration(Long value, SetMode mode) {
putDirect(FIELD_Expiration, Long.class, Long.class, value, mode);
return this;
}
/**
* Setter for expiration
*
* @see Fields#expiration
*/
public PermitAllocation setExpiration(Long value) {
putDirect(FIELD_Expiration, Long.class, Long.class, value, SetMode.DISALLOW_NULL);
return this;
}
/**
* Setter for expiration
*
* @see Fields#expiration
*/
public PermitAllocation setExpiration(long value) {
putDirect(FIELD_Expiration, Long.class, Long.class, value, SetMode.DISALLOW_NULL);
return this;
}
/**
* Existence checker for minRetryDelayMillis
*
* @see Fields#minRetryDelayMillis
*/
public boolean hasMinRetryDelayMillis() {
return contains(FIELD_MinRetryDelayMillis);
}
/**
* Remover for minRetryDelayMillis
*
* @see Fields#minRetryDelayMillis
*/
public void removeMinRetryDelayMillis() {
remove(FIELD_MinRetryDelayMillis);
}
/**
* Getter for minRetryDelayMillis
*
* @see Fields#minRetryDelayMillis
*/
public Long getMinRetryDelayMillis(GetMode mode) {
return obtainDirect(FIELD_MinRetryDelayMillis, Long.class, mode);
}
/**
* Getter for minRetryDelayMillis
*
* @see Fields#minRetryDelayMillis
*/
public Long getMinRetryDelayMillis() {
return getMinRetryDelayMillis(GetMode.STRICT);
}
/**
* Setter for minRetryDelayMillis
*
* @see Fields#minRetryDelayMillis
*/
public PermitAllocation setMinRetryDelayMillis(Long value, SetMode mode) {
putDirect(FIELD_MinRetryDelayMillis, Long.class, Long.class, value, mode);
return this;
}
/**
* Setter for minRetryDelayMillis
*
* @see Fields#minRetryDelayMillis
*/
public PermitAllocation setMinRetryDelayMillis(Long value) {
putDirect(FIELD_MinRetryDelayMillis, Long.class, Long.class, value, SetMode.DISALLOW_NULL);
return this;
}
/**
* Setter for minRetryDelayMillis
*
* @see Fields#minRetryDelayMillis
*/
public PermitAllocation setMinRetryDelayMillis(long value) {
putDirect(FIELD_MinRetryDelayMillis, Long.class, Long.class, value, SetMode.DISALLOW_NULL);
return this;
}
@Override
public PermitAllocation clone()
throws CloneNotSupportedException
{
return ((PermitAllocation) super.clone());
}
@Override
public PermitAllocation copy()
throws CloneNotSupportedException
{
return ((PermitAllocation) super.copy());
}
public static class Fields
extends PathSpec
{
public Fields(List path, String name) {
super(path, name);
}
public Fields() {
super();
}
/**
* Number of permits allocated. This may be 0 if no permits are allocated, or the number of requested permits.
*
*/
public PathSpec permits() {
return new PathSpec(getPathComponents(), "permits");
}
/**
* Expiration time in Unix timestamp of the allocated permits.
*
*/
public PathSpec expiration() {
return new PathSpec(getPathComponents(), "expiration");
}
/**
* Client should not try to acquire permits before this delay has passed.
*
*/
public PathSpec minRetryDelayMillis() {
return new PathSpec(getPathComponents(), "minRetryDelayMillis");
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy