public static final class BreakRule.FrequencyConstraint extends GeneratedMessageV3 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
:
<code><code>
{
min_break_duration { seconds: 3600 } # 1 hour.
max_inter_break_duration { seconds: 39600 } # 11 hours (12 - 1 = 11).
}
</code></code><code>
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 </code>BreakRequest<code>.
A </code>FrequencyConstraint<code> may in practice apply to non-consecutive breaks.
For example, the following schedule honors the "1h every 12h" example:
</code><code><code>
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
</code></code>
Protobuf type google.cloud.optimization.v1.BreakRule.FrequencyConstraint
Inheritance
Object > AbstractMessageLite<MessageType,BuilderType> > AbstractMessage > GeneratedMessageV3 > BreakRule.FrequencyConstraintImplements
BreakRule.FrequencyConstraintOrBuilderStatic Fields
MAX_INTER_BREAK_DURATION_FIELD_NUMBER
public static final int MAX_INTER_BREAK_DURATION_FIELD_NUMBER
Type | Description |
int |
MIN_BREAK_DURATION_FIELD_NUMBER
public static final int MIN_BREAK_DURATION_FIELD_NUMBER
Type | Description |
int |
Static Methods
getDefaultInstance()
public static BreakRule.FrequencyConstraint getDefaultInstance()
Type | Description |
BreakRule.FrequencyConstraint |
getDescriptor()
public static final Descriptors.Descriptor getDescriptor()
Type | Description |
Descriptor |
newBuilder()
public static BreakRule.FrequencyConstraint.Builder newBuilder()
Type | Description |
BreakRule.FrequencyConstraint.Builder |
newBuilder(BreakRule.FrequencyConstraint prototype)
public static BreakRule.FrequencyConstraint.Builder newBuilder(BreakRule.FrequencyConstraint prototype)
Name | Description |
prototype | BreakRule.FrequencyConstraint |
Type | Description |
BreakRule.FrequencyConstraint.Builder |
parseDelimitedFrom(InputStream input)
public static BreakRule.FrequencyConstraint parseDelimitedFrom(InputStream input)
Name | Description |
input | InputStream |
Type | Description |
BreakRule.FrequencyConstraint |
Type | Description |
IOException |
parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
public static BreakRule.FrequencyConstraint parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Name | Description |
input | InputStream |
extensionRegistry | ExtensionRegistryLite |
Type | Description |
BreakRule.FrequencyConstraint |
Type | Description |
IOException |
parseFrom(byte[] data)
public static BreakRule.FrequencyConstraint parseFrom(byte[] data)
Name | Description |
data | byte[] |
Type | Description |
BreakRule.FrequencyConstraint |
Type | Description |
InvalidProtocolBufferException |
parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
public static BreakRule.FrequencyConstraint parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
Name | Description |
data | byte[] |
extensionRegistry | ExtensionRegistryLite |
Type | Description |
BreakRule.FrequencyConstraint |
Type | Description |
InvalidProtocolBufferException |
parseFrom(ByteString data)
public static BreakRule.FrequencyConstraint parseFrom(ByteString data)
Name | Description |
data | ByteString |
Type | Description |
BreakRule.FrequencyConstraint |
Type | Description |
InvalidProtocolBufferException |
parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
public static BreakRule.FrequencyConstraint parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
Name | Description |
data | ByteString |
extensionRegistry | ExtensionRegistryLite |
Type | Description |
BreakRule.FrequencyConstraint |
Type | Description |
InvalidProtocolBufferException |
parseFrom(CodedInputStream input)
public static BreakRule.FrequencyConstraint parseFrom(CodedInputStream input)
Name | Description |
input | CodedInputStream |
Type | Description |
BreakRule.FrequencyConstraint |
Type | Description |
IOException |
parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
public static BreakRule.FrequencyConstraint parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Name | Description |
input | CodedInputStream |
extensionRegistry | ExtensionRegistryLite |
Type | Description |
BreakRule.FrequencyConstraint |
Type | Description |
IOException |
parseFrom(InputStream input)
public static BreakRule.FrequencyConstraint parseFrom(InputStream input)
Name | Description |
input | InputStream |
Type | Description |
BreakRule.FrequencyConstraint |
Type | Description |
IOException |
parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
public static BreakRule.FrequencyConstraint parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Name | Description |
input | InputStream |
extensionRegistry | ExtensionRegistryLite |
Type | Description |
BreakRule.FrequencyConstraint |
Type | Description |
IOException |
parseFrom(ByteBuffer data)
public static BreakRule.FrequencyConstraint parseFrom(ByteBuffer data)
Name | Description |
data | ByteBuffer |
Type | Description |
BreakRule.FrequencyConstraint |
Type | Description |
InvalidProtocolBufferException |
parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
public static BreakRule.FrequencyConstraint parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
Name | Description |
data | ByteBuffer |
extensionRegistry | ExtensionRegistryLite |
Type | Description |
BreakRule.FrequencyConstraint |
Type | Description |
InvalidProtocolBufferException |
parser()
public static Parser<BreakRule.FrequencyConstraint> parser()
Type | Description |
Parser<FrequencyConstraint> |
Methods
equals(Object obj)
public boolean equals(Object obj)
Name | Description |
obj | Object |
Type | Description |
boolean |
getDefaultInstanceForType()
public BreakRule.FrequencyConstraint getDefaultInstanceForType()
Type | Description |
BreakRule.FrequencyConstraint |
getMaxInterBreakDuration()
public 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];
Type | Description |
Duration | The maxInterBreakDuration. |
getMaxInterBreakDurationOrBuilder()
public 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];
Type | Description |
DurationOrBuilder |
getMinBreakDuration()
public 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];
Type | Description |
Duration | The minBreakDuration. |
getMinBreakDurationOrBuilder()
public 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];
Type | Description |
DurationOrBuilder |
getParserForType()
public Parser<BreakRule.FrequencyConstraint> getParserForType()
Type | Description |
Parser<FrequencyConstraint> |
getSerializedSize()
public int getSerializedSize()
Type | Description |
int |
getUnknownFields()
public final UnknownFieldSet getUnknownFields()
Type | Description |
UnknownFieldSet |
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];
Type | Description |
boolean | Whether the maxInterBreakDuration field is set. |
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];
Type | Description |
boolean | Whether the minBreakDuration field is set. |
hashCode()
public int hashCode()
Type | Description |
int |
internalGetFieldAccessorTable()
protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Type | Description |
FieldAccessorTable |
isInitialized()
public final boolean isInitialized()
Type | Description |
boolean |
newBuilderForType()
public BreakRule.FrequencyConstraint.Builder newBuilderForType()
Type | Description |
BreakRule.FrequencyConstraint.Builder |
newBuilderForType(GeneratedMessageV3.BuilderParent parent)
protected BreakRule.FrequencyConstraint.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)
Name | Description |
parent | BuilderParent |
Type | Description |
BreakRule.FrequencyConstraint.Builder |
newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
Name | Description |
unused | UnusedPrivateParameter |
Type | Description |
Object |
toBuilder()
public BreakRule.FrequencyConstraint.Builder toBuilder()
Type | Description |
BreakRule.FrequencyConstraint.Builder |
writeTo(CodedOutputStream output)
public void writeTo(CodedOutputStream output)
Name | Description |
output | CodedOutputStream |
Type | Description |
IOException |