All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.google.maps.routeoptimization.v1.OptimizeToursRequestOrBuilder Maven / Gradle / Ivy

There is a newer version: 0.7.0
Show 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.3
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 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 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 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 - 2024 Weber Informatics LLC | Privacy Policy