com.google.maps.routeoptimization.v1.OptimizeToursRequestOrBuilder Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of proto-google-maps-routeoptimization-v1 Show documentation
Show all versions of proto-google-maps-routeoptimization-v1 Show documentation
Proto library for google-maps-routeoptimization
The newest version!
/*
* Copyright 2024 Google LLC
*
* 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
*
* https://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.
*/
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: google/maps/routeoptimization/v1/route_optimization_service.proto
// Protobuf Java Version: 3.25.5
package com.google.maps.routeoptimization.v1;
public interface OptimizeToursRequestOrBuilder
extends
// @@protoc_insertion_point(interface_extends:google.maps.routeoptimization.v1.OptimizeToursRequest)
com.google.protobuf.MessageOrBuilder {
/**
*
*
*
* Required. Target project or location to make a call.
*
* Format:
* * `projects/{project-id}`
* * `projects/{project-id}/locations/{location-id}`
*
* If no location is specified, a region will be chosen automatically.
*
*
* string parent = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The parent.
*/
java.lang.String getParent();
/**
*
*
*
* Required. Target project or location to make a call.
*
* Format:
* * `projects/{project-id}`
* * `projects/{project-id}/locations/{location-id}`
*
* If no location is specified, a region will be chosen automatically.
*
*
* string parent = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The bytes for parent.
*/
com.google.protobuf.ByteString getParentBytes();
/**
*
*
*
* If this timeout is set, the server returns a response before the timeout
* period has elapsed or the server deadline for synchronous requests is
* reached, whichever is sooner.
*
* For asynchronous requests, the server will generate a solution (if
* possible) before the timeout has elapsed.
*
*
* .google.protobuf.Duration timeout = 2;
*
* @return Whether the timeout field is set.
*/
boolean hasTimeout();
/**
*
*
*
* If this timeout is set, the server returns a response before the timeout
* period has elapsed or the server deadline for synchronous requests is
* reached, whichever is sooner.
*
* For asynchronous requests, the server will generate a solution (if
* possible) before the timeout has elapsed.
*
*
* .google.protobuf.Duration timeout = 2;
*
* @return The timeout.
*/
com.google.protobuf.Duration getTimeout();
/**
*
*
*
* If this timeout is set, the server returns a response before the timeout
* period has elapsed or the server deadline for synchronous requests is
* reached, whichever is sooner.
*
* For asynchronous requests, the server will generate a solution (if
* possible) before the timeout has elapsed.
*
*
* .google.protobuf.Duration timeout = 2;
*/
com.google.protobuf.DurationOrBuilder getTimeoutOrBuilder();
/**
*
*
*
* Shipment model to solve.
*
*
* .google.maps.routeoptimization.v1.ShipmentModel model = 3;
*
* @return Whether the model field is set.
*/
boolean hasModel();
/**
*
*
*
* Shipment model to solve.
*
*
* .google.maps.routeoptimization.v1.ShipmentModel model = 3;
*
* @return The model.
*/
com.google.maps.routeoptimization.v1.ShipmentModel getModel();
/**
*
*
*
* Shipment model to solve.
*
*
* .google.maps.routeoptimization.v1.ShipmentModel model = 3;
*/
com.google.maps.routeoptimization.v1.ShipmentModelOrBuilder getModelOrBuilder();
/**
*
*
*
* By default, the solving mode is `DEFAULT_SOLVE` (0).
*
*
* .google.maps.routeoptimization.v1.OptimizeToursRequest.SolvingMode solving_mode = 4;
*
*
* @return The enum numeric value on the wire for solvingMode.
*/
int getSolvingModeValue();
/**
*
*
*
* By default, the solving mode is `DEFAULT_SOLVE` (0).
*
*
* .google.maps.routeoptimization.v1.OptimizeToursRequest.SolvingMode solving_mode = 4;
*
*
* @return The solvingMode.
*/
com.google.maps.routeoptimization.v1.OptimizeToursRequest.SolvingMode getSolvingMode();
/**
*
*
*
* Search mode used to solve the request.
*
*
* .google.maps.routeoptimization.v1.OptimizeToursRequest.SearchMode search_mode = 6;
*
* @return The enum numeric value on the wire for searchMode.
*/
int getSearchModeValue();
/**
*
*
*
* Search mode used to solve the request.
*
*
* .google.maps.routeoptimization.v1.OptimizeToursRequest.SearchMode search_mode = 6;
*
* @return The searchMode.
*/
com.google.maps.routeoptimization.v1.OptimizeToursRequest.SearchMode getSearchMode();
/**
*
*
*
* Guide the optimization algorithm in finding a first solution that is
* similar to a previous solution.
*
* The model is constrained when the first solution is built.
* Any shipments not performed on a route are implicitly skipped in the first
* solution, but they may be performed in successive solutions.
*
* The solution must satisfy some basic validity assumptions:
*
* * for all routes, `vehicle_index` must be in range and not be duplicated.
* * for all visits, `shipment_index` and `visit_request_index` must be
* in range.
* * a shipment may only be referenced on one route.
* * the pickup of a pickup-delivery shipment must be performed before
* the delivery.
* * no more than one pickup alternative or delivery alternative of
* a shipment may be performed.
* * for all routes, times are increasing (i.e., `vehicle_start_time
* <= visits[0].start_time <= visits[1].start_time ...
* <= vehicle_end_time`).
* * a shipment may only be performed on a vehicle that is allowed. A
* vehicle is allowed if
* [Shipment.allowed_vehicle_indices][google.maps.routeoptimization.v1.Shipment.allowed_vehicle_indices]
* is empty or its `vehicle_index` is included in
* [Shipment.allowed_vehicle_indices][google.maps.routeoptimization.v1.Shipment.allowed_vehicle_indices].
*
* If the injected solution is not feasible, a validation error is not
* necessarily returned and an error indicating infeasibility may be returned
* instead.
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentRoute injected_first_solution_routes = 7;
*
*/
java.util.List
getInjectedFirstSolutionRoutesList();
/**
*
*
*
* Guide the optimization algorithm in finding a first solution that is
* similar to a previous solution.
*
* The model is constrained when the first solution is built.
* Any shipments not performed on a route are implicitly skipped in the first
* solution, but they may be performed in successive solutions.
*
* The solution must satisfy some basic validity assumptions:
*
* * for all routes, `vehicle_index` must be in range and not be duplicated.
* * for all visits, `shipment_index` and `visit_request_index` must be
* in range.
* * a shipment may only be referenced on one route.
* * the pickup of a pickup-delivery shipment must be performed before
* the delivery.
* * no more than one pickup alternative or delivery alternative of
* a shipment may be performed.
* * for all routes, times are increasing (i.e., `vehicle_start_time
* <= visits[0].start_time <= visits[1].start_time ...
* <= vehicle_end_time`).
* * a shipment may only be performed on a vehicle that is allowed. A
* vehicle is allowed if
* [Shipment.allowed_vehicle_indices][google.maps.routeoptimization.v1.Shipment.allowed_vehicle_indices]
* is empty or its `vehicle_index` is included in
* [Shipment.allowed_vehicle_indices][google.maps.routeoptimization.v1.Shipment.allowed_vehicle_indices].
*
* If the injected solution is not feasible, a validation error is not
* necessarily returned and an error indicating infeasibility may be returned
* instead.
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentRoute injected_first_solution_routes = 7;
*
*/
com.google.maps.routeoptimization.v1.ShipmentRoute getInjectedFirstSolutionRoutes(int index);
/**
*
*
*
* Guide the optimization algorithm in finding a first solution that is
* similar to a previous solution.
*
* The model is constrained when the first solution is built.
* Any shipments not performed on a route are implicitly skipped in the first
* solution, but they may be performed in successive solutions.
*
* The solution must satisfy some basic validity assumptions:
*
* * for all routes, `vehicle_index` must be in range and not be duplicated.
* * for all visits, `shipment_index` and `visit_request_index` must be
* in range.
* * a shipment may only be referenced on one route.
* * the pickup of a pickup-delivery shipment must be performed before
* the delivery.
* * no more than one pickup alternative or delivery alternative of
* a shipment may be performed.
* * for all routes, times are increasing (i.e., `vehicle_start_time
* <= visits[0].start_time <= visits[1].start_time ...
* <= vehicle_end_time`).
* * a shipment may only be performed on a vehicle that is allowed. A
* vehicle is allowed if
* [Shipment.allowed_vehicle_indices][google.maps.routeoptimization.v1.Shipment.allowed_vehicle_indices]
* is empty or its `vehicle_index` is included in
* [Shipment.allowed_vehicle_indices][google.maps.routeoptimization.v1.Shipment.allowed_vehicle_indices].
*
* If the injected solution is not feasible, a validation error is not
* necessarily returned and an error indicating infeasibility may be returned
* instead.
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentRoute injected_first_solution_routes = 7;
*
*/
int getInjectedFirstSolutionRoutesCount();
/**
*
*
*
* Guide the optimization algorithm in finding a first solution that is
* similar to a previous solution.
*
* The model is constrained when the first solution is built.
* Any shipments not performed on a route are implicitly skipped in the first
* solution, but they may be performed in successive solutions.
*
* The solution must satisfy some basic validity assumptions:
*
* * for all routes, `vehicle_index` must be in range and not be duplicated.
* * for all visits, `shipment_index` and `visit_request_index` must be
* in range.
* * a shipment may only be referenced on one route.
* * the pickup of a pickup-delivery shipment must be performed before
* the delivery.
* * no more than one pickup alternative or delivery alternative of
* a shipment may be performed.
* * for all routes, times are increasing (i.e., `vehicle_start_time
* <= visits[0].start_time <= visits[1].start_time ...
* <= vehicle_end_time`).
* * a shipment may only be performed on a vehicle that is allowed. A
* vehicle is allowed if
* [Shipment.allowed_vehicle_indices][google.maps.routeoptimization.v1.Shipment.allowed_vehicle_indices]
* is empty or its `vehicle_index` is included in
* [Shipment.allowed_vehicle_indices][google.maps.routeoptimization.v1.Shipment.allowed_vehicle_indices].
*
* If the injected solution is not feasible, a validation error is not
* necessarily returned and an error indicating infeasibility may be returned
* instead.
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentRoute injected_first_solution_routes = 7;
*
*/
java.util.List extends com.google.maps.routeoptimization.v1.ShipmentRouteOrBuilder>
getInjectedFirstSolutionRoutesOrBuilderList();
/**
*
*
*
* Guide the optimization algorithm in finding a first solution that is
* similar to a previous solution.
*
* The model is constrained when the first solution is built.
* Any shipments not performed on a route are implicitly skipped in the first
* solution, but they may be performed in successive solutions.
*
* The solution must satisfy some basic validity assumptions:
*
* * for all routes, `vehicle_index` must be in range and not be duplicated.
* * for all visits, `shipment_index` and `visit_request_index` must be
* in range.
* * a shipment may only be referenced on one route.
* * the pickup of a pickup-delivery shipment must be performed before
* the delivery.
* * no more than one pickup alternative or delivery alternative of
* a shipment may be performed.
* * for all routes, times are increasing (i.e., `vehicle_start_time
* <= visits[0].start_time <= visits[1].start_time ...
* <= vehicle_end_time`).
* * a shipment may only be performed on a vehicle that is allowed. A
* vehicle is allowed if
* [Shipment.allowed_vehicle_indices][google.maps.routeoptimization.v1.Shipment.allowed_vehicle_indices]
* is empty or its `vehicle_index` is included in
* [Shipment.allowed_vehicle_indices][google.maps.routeoptimization.v1.Shipment.allowed_vehicle_indices].
*
* If the injected solution is not feasible, a validation error is not
* necessarily returned and an error indicating infeasibility may be returned
* instead.
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentRoute injected_first_solution_routes = 7;
*
*/
com.google.maps.routeoptimization.v1.ShipmentRouteOrBuilder
getInjectedFirstSolutionRoutesOrBuilder(int index);
/**
*
*
*
* Constrain the optimization algorithm to find a final solution that is
* similar to a previous solution. For example, this may be used to freeze
* portions of routes which have already been completed or which are to be
* completed but must not be modified.
*
* If the injected solution is not feasible, a validation error is not
* necessarily returned and an error indicating infeasibility may be returned
* instead.
*
*
*
* .google.maps.routeoptimization.v1.InjectedSolutionConstraint injected_solution_constraint = 8;
*
*
* @return Whether the injectedSolutionConstraint field is set.
*/
boolean hasInjectedSolutionConstraint();
/**
*
*
*
* Constrain the optimization algorithm to find a final solution that is
* similar to a previous solution. For example, this may be used to freeze
* portions of routes which have already been completed or which are to be
* completed but must not be modified.
*
* If the injected solution is not feasible, a validation error is not
* necessarily returned and an error indicating infeasibility may be returned
* instead.
*
*
*
* .google.maps.routeoptimization.v1.InjectedSolutionConstraint injected_solution_constraint = 8;
*
*
* @return The injectedSolutionConstraint.
*/
com.google.maps.routeoptimization.v1.InjectedSolutionConstraint getInjectedSolutionConstraint();
/**
*
*
*
* Constrain the optimization algorithm to find a final solution that is
* similar to a previous solution. For example, this may be used to freeze
* portions of routes which have already been completed or which are to be
* completed but must not be modified.
*
* If the injected solution is not feasible, a validation error is not
* necessarily returned and an error indicating infeasibility may be returned
* instead.
*
*
*
* .google.maps.routeoptimization.v1.InjectedSolutionConstraint injected_solution_constraint = 8;
*
*/
com.google.maps.routeoptimization.v1.InjectedSolutionConstraintOrBuilder
getInjectedSolutionConstraintOrBuilder();
/**
*
*
*
* If non-empty, the given routes will be refreshed, without modifying their
* underlying sequence of visits or travel times: only other details will be
* updated. This does not solve the model.
*
* As of 2020/11, this only populates the polylines of non-empty routes and
* requires that `populate_polylines` is true.
*
* The `route_polyline` fields of the passed-in routes may be inconsistent
* with route `transitions`.
*
* This field must not be used together with `injected_first_solution_routes`
* or `injected_solution_constraint`.
*
* `Shipment.ignore` and `Vehicle.ignore` have no effect on the behavior.
* Polylines are still populated between all visits in all non-empty routes
* regardless of whether the related shipments or vehicles are ignored.
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentRoute refresh_details_routes = 9;
*
*/
java.util.List getRefreshDetailsRoutesList();
/**
*
*
*
* If non-empty, the given routes will be refreshed, without modifying their
* underlying sequence of visits or travel times: only other details will be
* updated. This does not solve the model.
*
* As of 2020/11, this only populates the polylines of non-empty routes and
* requires that `populate_polylines` is true.
*
* The `route_polyline` fields of the passed-in routes may be inconsistent
* with route `transitions`.
*
* This field must not be used together with `injected_first_solution_routes`
* or `injected_solution_constraint`.
*
* `Shipment.ignore` and `Vehicle.ignore` have no effect on the behavior.
* Polylines are still populated between all visits in all non-empty routes
* regardless of whether the related shipments or vehicles are ignored.
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentRoute refresh_details_routes = 9;
*
*/
com.google.maps.routeoptimization.v1.ShipmentRoute getRefreshDetailsRoutes(int index);
/**
*
*
*
* If non-empty, the given routes will be refreshed, without modifying their
* underlying sequence of visits or travel times: only other details will be
* updated. This does not solve the model.
*
* As of 2020/11, this only populates the polylines of non-empty routes and
* requires that `populate_polylines` is true.
*
* The `route_polyline` fields of the passed-in routes may be inconsistent
* with route `transitions`.
*
* This field must not be used together with `injected_first_solution_routes`
* or `injected_solution_constraint`.
*
* `Shipment.ignore` and `Vehicle.ignore` have no effect on the behavior.
* Polylines are still populated between all visits in all non-empty routes
* regardless of whether the related shipments or vehicles are ignored.
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentRoute refresh_details_routes = 9;
*
*/
int getRefreshDetailsRoutesCount();
/**
*
*
*
* If non-empty, the given routes will be refreshed, without modifying their
* underlying sequence of visits or travel times: only other details will be
* updated. This does not solve the model.
*
* As of 2020/11, this only populates the polylines of non-empty routes and
* requires that `populate_polylines` is true.
*
* The `route_polyline` fields of the passed-in routes may be inconsistent
* with route `transitions`.
*
* This field must not be used together with `injected_first_solution_routes`
* or `injected_solution_constraint`.
*
* `Shipment.ignore` and `Vehicle.ignore` have no effect on the behavior.
* Polylines are still populated between all visits in all non-empty routes
* regardless of whether the related shipments or vehicles are ignored.
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentRoute refresh_details_routes = 9;
*
*/
java.util.List extends com.google.maps.routeoptimization.v1.ShipmentRouteOrBuilder>
getRefreshDetailsRoutesOrBuilderList();
/**
*
*
*
* If non-empty, the given routes will be refreshed, without modifying their
* underlying sequence of visits or travel times: only other details will be
* updated. This does not solve the model.
*
* As of 2020/11, this only populates the polylines of non-empty routes and
* requires that `populate_polylines` is true.
*
* The `route_polyline` fields of the passed-in routes may be inconsistent
* with route `transitions`.
*
* This field must not be used together with `injected_first_solution_routes`
* or `injected_solution_constraint`.
*
* `Shipment.ignore` and `Vehicle.ignore` have no effect on the behavior.
* Polylines are still populated between all visits in all non-empty routes
* regardless of whether the related shipments or vehicles are ignored.
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentRoute refresh_details_routes = 9;
*
*/
com.google.maps.routeoptimization.v1.ShipmentRouteOrBuilder getRefreshDetailsRoutesOrBuilder(
int index);
/**
*
*
*
* If true:
*
* * uses
* [ShipmentRoute.vehicle_label][google.maps.routeoptimization.v1.ShipmentRoute.vehicle_label]
* instead of `vehicle_index` to
* match routes in an injected solution with vehicles in the request;
* reuses the mapping of original
* [ShipmentRoute.vehicle_index][google.maps.routeoptimization.v1.ShipmentRoute.vehicle_index]
* to new
* [ShipmentRoute.vehicle_index][google.maps.routeoptimization.v1.ShipmentRoute.vehicle_index]
* to update
* [ConstraintRelaxation.vehicle_indices][google.maps.routeoptimization.v1.InjectedSolutionConstraint.ConstraintRelaxation.vehicle_indices]
* if non-empty, but the mapping must be unambiguous (i.e., multiple
* `ShipmentRoute`s must not share the same original `vehicle_index`).
* * uses
* [ShipmentRoute.Visit.shipment_label][google.maps.routeoptimization.v1.ShipmentRoute.Visit.shipment_label]
* instead of `shipment_index`
* to match visits in an injected solution with shipments in the request;
* * uses
* [SkippedShipment.label][google.maps.routeoptimization.v1.SkippedShipment.label]
* instead of
* [SkippedShipment.index][google.maps.routeoptimization.v1.SkippedShipment.index]
* to
* match skipped shipments in the injected solution with request
* shipments.
*
* This interpretation applies to the `injected_first_solution_routes`,
* `injected_solution_constraint`, and `refresh_details_routes` fields.
* It can be used when shipment or vehicle indices in the request have
* changed since the solution was created, perhaps because shipments or
* vehicles have been removed from or added to the request.
*
* If true, labels in the following categories must appear at most once in
* their category:
*
* * [Vehicle.label][google.maps.routeoptimization.v1.Vehicle.label] in the
* request;
* * [Shipment.label][google.maps.routeoptimization.v1.Shipment.label] in
* the request;
* * [ShipmentRoute.vehicle_label][google.maps.routeoptimization.v1.ShipmentRoute.vehicle_label] in the injected solution;
* * [SkippedShipment.label][google.maps.routeoptimization.v1.SkippedShipment.label] and [ShipmentRoute.Visit.shipment_label][google.maps.routeoptimization.v1.ShipmentRoute.Visit.shipment_label] in
* the injected solution (except pickup/delivery visit pairs, whose
* `shipment_label` must appear twice).
*
* If a `vehicle_label` in the injected solution does not correspond to a
* request vehicle, the corresponding route is removed from the solution
* along with its visits. If a `shipment_label` in the injected solution does
* not correspond to a request shipment, the corresponding visit is removed
* from the solution. If a
* [SkippedShipment.label][google.maps.routeoptimization.v1.SkippedShipment.label]
* in the injected solution does not correspond to a request shipment, the
* `SkippedShipment` is removed from the solution.
*
* Removing route visits or entire routes from an injected solution may
* have an effect on the implied constraints, which may lead to change in
* solution, validation errors, or infeasibility.
*
* NOTE: The caller must ensure that each
* [Vehicle.label][google.maps.routeoptimization.v1.Vehicle.label] (resp.
* [Shipment.label][google.maps.routeoptimization.v1.Shipment.label]) uniquely
* identifies a vehicle (resp. shipment) entity used across the two relevant
* requests: the past request that produced the `OptimizeToursResponse` used
* in the injected solution and the current request that includes the injected
* solution. The uniqueness checks described above are not enough to guarantee
* this requirement.
*
*
* bool interpret_injected_solutions_using_labels = 10;
*
* @return The interpretInjectedSolutionsUsingLabels.
*/
boolean getInterpretInjectedSolutionsUsingLabels();
/**
*
*
*
* Consider traffic estimation in calculating `ShipmentRoute` fields
* [Transition.travel_duration][google.maps.routeoptimization.v1.ShipmentRoute.Transition.travel_duration],
* [Visit.start_time][google.maps.routeoptimization.v1.ShipmentRoute.Visit.start_time],
* and `vehicle_end_time`; in setting the
* [ShipmentRoute.has_traffic_infeasibilities][google.maps.routeoptimization.v1.ShipmentRoute.has_traffic_infeasibilities]
* field, and in calculating the
* [OptimizeToursResponse.total_cost][google.maps.routeoptimization.v1.OptimizeToursResponse.total_cost]
* field.
*
*
* bool consider_road_traffic = 11;
*
* @return The considerRoadTraffic.
*/
boolean getConsiderRoadTraffic();
/**
*
*
*
* If true, polylines will be populated in response `ShipmentRoute`s.
*
*
* bool populate_polylines = 12;
*
* @return The populatePolylines.
*/
boolean getPopulatePolylines();
/**
*
*
*
* If true, polylines and route tokens will be populated in response
* [ShipmentRoute.transitions][google.maps.routeoptimization.v1.ShipmentRoute.transitions].
*
*
* bool populate_transition_polylines = 13;
*
* @return The populateTransitionPolylines.
*/
boolean getPopulateTransitionPolylines();
/**
*
*
*
* If this is set, then the request can have a deadline
* (see https://grpc.io/blog/deadlines) of up to 60 minutes.
* Otherwise, the maximum deadline is only 30 minutes.
* Note that long-lived requests have a significantly larger (but still small)
* risk of interruption.
*
*
* bool allow_large_deadline_despite_interruption_risk = 14;
*
* @return The allowLargeDeadlineDespiteInterruptionRisk.
*/
boolean getAllowLargeDeadlineDespiteInterruptionRisk();
/**
*
*
*
* If true, travel distances will be computed using geodesic distances instead
* of Google Maps distances, and travel times will be computed using geodesic
* distances with a speed defined by `geodesic_meters_per_second`.
*
*
* bool use_geodesic_distances = 15;
*
* @return The useGeodesicDistances.
*/
boolean getUseGeodesicDistances();
/**
*
*
*
* When `use_geodesic_distances` is true, this field must be set and defines
* the speed applied to compute travel times. Its value must be at least 1.0
* meters/seconds.
*
*
* optional double geodesic_meters_per_second = 16;
*
* @return Whether the geodesicMetersPerSecond field is set.
*/
boolean hasGeodesicMetersPerSecond();
/**
*
*
*
* When `use_geodesic_distances` is true, this field must be set and defines
* the speed applied to compute travel times. Its value must be at least 1.0
* meters/seconds.
*
*
* optional double geodesic_meters_per_second = 16;
*
* @return The geodesicMetersPerSecond.
*/
double getGeodesicMetersPerSecond();
/**
*
*
*
* Truncates the number of validation errors returned. These errors are
* typically attached to an INVALID_ARGUMENT error payload as a BadRequest
* error detail (https://cloud.google.com/apis/design/errors#error_details),
* unless solving_mode=VALIDATE_ONLY: see the
* [OptimizeToursResponse.validation_errors][google.maps.routeoptimization.v1.OptimizeToursResponse.validation_errors]
* field.
* This defaults to 100 and is capped at 10,000.
*
*
* optional int32 max_validation_errors = 5;
*
* @return Whether the maxValidationErrors field is set.
*/
boolean hasMaxValidationErrors();
/**
*
*
*
* Truncates the number of validation errors returned. These errors are
* typically attached to an INVALID_ARGUMENT error payload as a BadRequest
* error detail (https://cloud.google.com/apis/design/errors#error_details),
* unless solving_mode=VALIDATE_ONLY: see the
* [OptimizeToursResponse.validation_errors][google.maps.routeoptimization.v1.OptimizeToursResponse.validation_errors]
* field.
* This defaults to 100 and is capped at 10,000.
*
*
* optional int32 max_validation_errors = 5;
*
* @return The maxValidationErrors.
*/
int getMaxValidationErrors();
/**
*
*
*
* Label that may be used to identify this request, reported back in the
* [OptimizeToursResponse.request_label][google.maps.routeoptimization.v1.OptimizeToursResponse.request_label].
*
*
* string label = 17;
*
* @return The label.
*/
java.lang.String getLabel();
/**
*
*
*
* Label that may be used to identify this request, reported back in the
* [OptimizeToursResponse.request_label][google.maps.routeoptimization.v1.OptimizeToursResponse.request_label].
*
*
* string label = 17;
*
* @return The bytes for label.
*/
com.google.protobuf.ByteString getLabelBytes();
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy