Package com.google.cloud.optimization.v1
Class BreakRule.FrequencyConstraint.Builder
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite.Builder
-
- com.google.protobuf.AbstractMessage.Builder<BuilderT>
-
- com.google.protobuf.GeneratedMessageV3.Builder<BreakRule.FrequencyConstraint.Builder>
-
- com.google.cloud.optimization.v1.BreakRule.FrequencyConstraint.Builder
-
- All Implemented Interfaces:
BreakRule.FrequencyConstraintOrBuilder,com.google.protobuf.Message.Builder,com.google.protobuf.MessageLite.Builder,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,Cloneable
- Enclosing class:
- BreakRule.FrequencyConstraint
public static final class BreakRule.FrequencyConstraint.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<BreakRule.FrequencyConstraint.Builder> implements BreakRule.FrequencyConstraintOrBuilder
One may further constrain the frequency and duration of the breaks specified above, by enforcing a minimum break frequency, such as "There must be a break of at least 1 hour every 12 hours". Assuming that this can be interpreted as "Within any sliding time window of 12h, there must be at least one break of at least one hour", that example would translate to the following `FrequencyConstraint`: ``` { min_break_duration { seconds: 3600 } # 1 hour. max_inter_break_duration { seconds: 39600 } # 11 hours (12 - 1 = 11). } ``` The timing and duration of the breaks in the solution will respect all such constraints, in addition to the time windows and minimum durations already specified in the `BreakRequest`. A `FrequencyConstraint` may in practice apply to non-consecutive breaks. For example, the following schedule honors the "1h every 12h" example: ``` 04:00 vehicle start .. performing travel and visits .. 09:00 1 hour break 10:00 end of the break .. performing travel and visits .. 12:00 20-min lunch break 12:20 end of the break .. performing travel and visits .. 21:00 1 hour break 22:00 end of the break .. performing travel and visits .. 23:59 vehicle end ```Protobuf typegoogle.cloud.optimization.v1.BreakRule.FrequencyConstraint
-
-
Method Summary
-
Methods inherited from class com.google.protobuf.GeneratedMessageV3.Builder
getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, getUnknownFieldSetBuilder, hasField, hasOneof, internalGetMapField, internalGetMutableMapField, isClean, markClean, mergeUnknownLengthDelimitedField, mergeUnknownVarintField, newBuilderForField, onBuilt, onChanged, parseUnknownField, setUnknownFieldSetBuilder, setUnknownFieldsProto3
-
Methods inherited from class com.google.protobuf.AbstractMessage.Builder
findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toString
-
Methods inherited from class com.google.protobuf.AbstractMessageLite.Builder
addAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, newUninitializedMessageException
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
-
-
-
Method Detail
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
-
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessageV3.Builder<BreakRule.FrequencyConstraint.Builder>
-
clear
public BreakRule.FrequencyConstraint.Builder clear()
- Specified by:
clearin interfacecom.google.protobuf.Message.Builder- Specified by:
clearin interfacecom.google.protobuf.MessageLite.Builder- Overrides:
clearin classcom.google.protobuf.GeneratedMessageV3.Builder<BreakRule.FrequencyConstraint.Builder>
-
getDescriptorForType
public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
- Specified by:
getDescriptorForTypein interfacecom.google.protobuf.Message.Builder- Specified by:
getDescriptorForTypein interfacecom.google.protobuf.MessageOrBuilder- Overrides:
getDescriptorForTypein classcom.google.protobuf.GeneratedMessageV3.Builder<BreakRule.FrequencyConstraint.Builder>
-
getDefaultInstanceForType
public BreakRule.FrequencyConstraint getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
build
public BreakRule.FrequencyConstraint build()
- Specified by:
buildin interfacecom.google.protobuf.Message.Builder- Specified by:
buildin interfacecom.google.protobuf.MessageLite.Builder
-
buildPartial
public BreakRule.FrequencyConstraint buildPartial()
- Specified by:
buildPartialin interfacecom.google.protobuf.Message.Builder- Specified by:
buildPartialin interfacecom.google.protobuf.MessageLite.Builder
-
clone
public BreakRule.FrequencyConstraint.Builder clone()
- Specified by:
clonein interfacecom.google.protobuf.Message.Builder- Specified by:
clonein interfacecom.google.protobuf.MessageLite.Builder- Overrides:
clonein classcom.google.protobuf.GeneratedMessageV3.Builder<BreakRule.FrequencyConstraint.Builder>
-
setField
public BreakRule.FrequencyConstraint.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
- Specified by:
setFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
setFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<BreakRule.FrequencyConstraint.Builder>
-
clearField
public BreakRule.FrequencyConstraint.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
- Specified by:
clearFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
clearFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<BreakRule.FrequencyConstraint.Builder>
-
clearOneof
public BreakRule.FrequencyConstraint.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
- Specified by:
clearOneofin interfacecom.google.protobuf.Message.Builder- Overrides:
clearOneofin classcom.google.protobuf.GeneratedMessageV3.Builder<BreakRule.FrequencyConstraint.Builder>
-
setRepeatedField
public BreakRule.FrequencyConstraint.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
- Specified by:
setRepeatedFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
setRepeatedFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<BreakRule.FrequencyConstraint.Builder>
-
addRepeatedField
public BreakRule.FrequencyConstraint.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
- Specified by:
addRepeatedFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
addRepeatedFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<BreakRule.FrequencyConstraint.Builder>
-
mergeFrom
public BreakRule.FrequencyConstraint.Builder mergeFrom(com.google.protobuf.Message other)
- Specified by:
mergeFromin interfacecom.google.protobuf.Message.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<BreakRule.FrequencyConstraint.Builder>
-
mergeFrom
public BreakRule.FrequencyConstraint.Builder mergeFrom(BreakRule.FrequencyConstraint other)
-
isInitialized
public final boolean isInitialized()
- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessageV3.Builder<BreakRule.FrequencyConstraint.Builder>
-
mergeFrom
public BreakRule.FrequencyConstraint.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Specified by:
mergeFromin interfacecom.google.protobuf.Message.Builder- Specified by:
mergeFromin interfacecom.google.protobuf.MessageLite.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<BreakRule.FrequencyConstraint.Builder>- Throws:
IOException
-
hasMinBreakDuration
public boolean hasMinBreakDuration()
Required. Minimum break duration for this constraint. Nonnegative. See description of `FrequencyConstraint`.
.google.protobuf.Duration min_break_duration = 1 [(.google.api.field_behavior) = REQUIRED];- Specified by:
hasMinBreakDurationin interfaceBreakRule.FrequencyConstraintOrBuilder- Returns:
- Whether the minBreakDuration field is set.
-
getMinBreakDuration
public com.google.protobuf.Duration getMinBreakDuration()
Required. Minimum break duration for this constraint. Nonnegative. See description of `FrequencyConstraint`.
.google.protobuf.Duration min_break_duration = 1 [(.google.api.field_behavior) = REQUIRED];- Specified by:
getMinBreakDurationin interfaceBreakRule.FrequencyConstraintOrBuilder- Returns:
- The minBreakDuration.
-
setMinBreakDuration
public BreakRule.FrequencyConstraint.Builder setMinBreakDuration(com.google.protobuf.Duration value)
Required. Minimum break duration for this constraint. Nonnegative. See description of `FrequencyConstraint`.
.google.protobuf.Duration min_break_duration = 1 [(.google.api.field_behavior) = REQUIRED];
-
setMinBreakDuration
public BreakRule.FrequencyConstraint.Builder setMinBreakDuration(com.google.protobuf.Duration.Builder builderForValue)
Required. Minimum break duration for this constraint. Nonnegative. See description of `FrequencyConstraint`.
.google.protobuf.Duration min_break_duration = 1 [(.google.api.field_behavior) = REQUIRED];
-
mergeMinBreakDuration
public BreakRule.FrequencyConstraint.Builder mergeMinBreakDuration(com.google.protobuf.Duration value)
Required. Minimum break duration for this constraint. Nonnegative. See description of `FrequencyConstraint`.
.google.protobuf.Duration min_break_duration = 1 [(.google.api.field_behavior) = REQUIRED];
-
clearMinBreakDuration
public BreakRule.FrequencyConstraint.Builder clearMinBreakDuration()
Required. Minimum break duration for this constraint. Nonnegative. See description of `FrequencyConstraint`.
.google.protobuf.Duration min_break_duration = 1 [(.google.api.field_behavior) = REQUIRED];
-
getMinBreakDurationBuilder
public com.google.protobuf.Duration.Builder getMinBreakDurationBuilder()
Required. Minimum break duration for this constraint. Nonnegative. See description of `FrequencyConstraint`.
.google.protobuf.Duration min_break_duration = 1 [(.google.api.field_behavior) = REQUIRED];
-
getMinBreakDurationOrBuilder
public com.google.protobuf.DurationOrBuilder getMinBreakDurationOrBuilder()
Required. Minimum break duration for this constraint. Nonnegative. See description of `FrequencyConstraint`.
.google.protobuf.Duration min_break_duration = 1 [(.google.api.field_behavior) = REQUIRED];- Specified by:
getMinBreakDurationOrBuilderin interfaceBreakRule.FrequencyConstraintOrBuilder
-
hasMaxInterBreakDuration
public boolean hasMaxInterBreakDuration()
Required. Maximum allowed span of any interval of time in the route that does not include at least partially a break of `duration >= min_break_duration`. Must be positive.
.google.protobuf.Duration max_inter_break_duration = 2 [(.google.api.field_behavior) = REQUIRED];- Specified by:
hasMaxInterBreakDurationin interfaceBreakRule.FrequencyConstraintOrBuilder- Returns:
- Whether the maxInterBreakDuration field is set.
-
getMaxInterBreakDuration
public com.google.protobuf.Duration getMaxInterBreakDuration()
Required. Maximum allowed span of any interval of time in the route that does not include at least partially a break of `duration >= min_break_duration`. Must be positive.
.google.protobuf.Duration max_inter_break_duration = 2 [(.google.api.field_behavior) = REQUIRED];- Specified by:
getMaxInterBreakDurationin interfaceBreakRule.FrequencyConstraintOrBuilder- Returns:
- The maxInterBreakDuration.
-
setMaxInterBreakDuration
public BreakRule.FrequencyConstraint.Builder setMaxInterBreakDuration(com.google.protobuf.Duration value)
Required. Maximum allowed span of any interval of time in the route that does not include at least partially a break of `duration >= min_break_duration`. Must be positive.
.google.protobuf.Duration max_inter_break_duration = 2 [(.google.api.field_behavior) = REQUIRED];
-
setMaxInterBreakDuration
public BreakRule.FrequencyConstraint.Builder setMaxInterBreakDuration(com.google.protobuf.Duration.Builder builderForValue)
Required. Maximum allowed span of any interval of time in the route that does not include at least partially a break of `duration >= min_break_duration`. Must be positive.
.google.protobuf.Duration max_inter_break_duration = 2 [(.google.api.field_behavior) = REQUIRED];
-
mergeMaxInterBreakDuration
public BreakRule.FrequencyConstraint.Builder mergeMaxInterBreakDuration(com.google.protobuf.Duration value)
Required. Maximum allowed span of any interval of time in the route that does not include at least partially a break of `duration >= min_break_duration`. Must be positive.
.google.protobuf.Duration max_inter_break_duration = 2 [(.google.api.field_behavior) = REQUIRED];
-
clearMaxInterBreakDuration
public BreakRule.FrequencyConstraint.Builder clearMaxInterBreakDuration()
Required. Maximum allowed span of any interval of time in the route that does not include at least partially a break of `duration >= min_break_duration`. Must be positive.
.google.protobuf.Duration max_inter_break_duration = 2 [(.google.api.field_behavior) = REQUIRED];
-
getMaxInterBreakDurationBuilder
public com.google.protobuf.Duration.Builder getMaxInterBreakDurationBuilder()
Required. Maximum allowed span of any interval of time in the route that does not include at least partially a break of `duration >= min_break_duration`. Must be positive.
.google.protobuf.Duration max_inter_break_duration = 2 [(.google.api.field_behavior) = REQUIRED];
-
getMaxInterBreakDurationOrBuilder
public com.google.protobuf.DurationOrBuilder getMaxInterBreakDurationOrBuilder()
Required. Maximum allowed span of any interval of time in the route that does not include at least partially a break of `duration >= min_break_duration`. Must be positive.
.google.protobuf.Duration max_inter_break_duration = 2 [(.google.api.field_behavior) = REQUIRED];- Specified by:
getMaxInterBreakDurationOrBuilderin interfaceBreakRule.FrequencyConstraintOrBuilder
-
setUnknownFields
public final BreakRule.FrequencyConstraint.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
- Specified by:
setUnknownFieldsin interfacecom.google.protobuf.Message.Builder- Overrides:
setUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3.Builder<BreakRule.FrequencyConstraint.Builder>
-
mergeUnknownFields
public final BreakRule.FrequencyConstraint.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
- Specified by:
mergeUnknownFieldsin interfacecom.google.protobuf.Message.Builder- Overrides:
mergeUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3.Builder<BreakRule.FrequencyConstraint.Builder>
-
-