google-cloud-optimization-v1 0.2.0 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/AUTHENTICATION.md +1 -1
- data/README.md +2 -2
- data/lib/google/cloud/optimization/v1/fleet_routing/client.rb +52 -31
- data/lib/google/cloud/optimization/v1/fleet_routing/operations.rb +12 -14
- data/lib/google/cloud/optimization/v1/fleet_routing/rest/client.rb +667 -0
- data/lib/google/cloud/optimization/v1/fleet_routing/rest/operations.rb +800 -0
- data/lib/google/cloud/optimization/v1/fleet_routing/rest/service_stub.rb +184 -0
- data/lib/google/cloud/optimization/v1/fleet_routing/rest.rb +68 -0
- data/lib/google/cloud/optimization/v1/fleet_routing.rb +7 -1
- data/lib/google/cloud/optimization/v1/rest.rb +37 -0
- data/lib/google/cloud/optimization/v1/version.rb +1 -1
- data/lib/google/cloud/optimization/v1.rb +7 -2
- data/proto_docs/google/api/client.rb +318 -0
- data/proto_docs/google/api/launch_stage.rb +71 -0
- data/proto_docs/google/cloud/optimization/v1/fleet_routing.rb +254 -132
- data/proto_docs/google/protobuf/empty.rb +0 -2
- data/proto_docs/google/rpc/status.rb +4 -2
- metadata +16 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ef1c06c8689f9ec9924927c2e6a0f05bf3ae76fc4cacfb54f66209e9c41c80f5
|
4
|
+
data.tar.gz: b88a5648c0cd64550643df1bae0294832727a0048b710f8ffefd8d6a5172ed30
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 31d9d6dd3d96519f5c6e832bca5ac24bd478f2e0fad7514de42554d996fb377a3d7638c458b8b3721f0358ed68e52fc9ec321bf1e22335c1163d8306e467a268
|
7
|
+
data.tar.gz: 740e1e2341166cc4a3206e813ad6479a9a6178573fa8238051a6ff20d2bc6bfc1511845235bcc79b66726ab1a7ff9d49c32f13798182590c14a3f529d388ca73
|
data/AUTHENTICATION.md
CHANGED
@@ -112,7 +112,7 @@ credentials are discovered.
|
|
112
112
|
To configure your system for this, simply:
|
113
113
|
|
114
114
|
1. [Download and install the Cloud SDK](https://cloud.google.com/sdk)
|
115
|
-
2. Authenticate using OAuth 2.0 `$ gcloud auth login`
|
115
|
+
2. Authenticate using OAuth 2.0 `$ gcloud auth application-default login`
|
116
116
|
3. Write code as if already authenticated.
|
117
117
|
|
118
118
|
**NOTE:** This is _not_ recommended for running in production. The Cloud SDK
|
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# Ruby Client for the Cloud Optimization V1 API
|
2
2
|
|
3
|
-
API
|
3
|
+
Cloud Optimization API provides a portfolio of solvers to address common optimization use cases starting with optimal route planning for vehicle fleets.
|
4
4
|
|
5
5
|
Cloud Optimization API provides a portfolio of solvers to address common optimization use cases starting with optimal route planning for vehicle fleets.
|
6
6
|
|
@@ -46,7 +46,7 @@ for general usage information.
|
|
46
46
|
## Enabling Logging
|
47
47
|
|
48
48
|
To enable logging for this library, set the logger for the underlying [gRPC](https://github.com/grpc/grpc/tree/master/src/ruby) library.
|
49
|
-
The logger that you set may be a Ruby stdlib [`Logger`](https://ruby-doc.org/
|
49
|
+
The logger that you set may be a Ruby stdlib [`Logger`](https://ruby-doc.org/current/stdlibs/logger/Logger.html) as shown below,
|
50
50
|
or a [`Google::Cloud::Logging::Logger`](https://googleapis.dev/ruby/google-cloud-logging/latest)
|
51
51
|
that will write logs to [Cloud Logging](https://cloud.google.com/logging/). See [grpc/logconfig.rb](https://github.com/grpc/grpc/blob/master/src/ruby/lib/grpc/logconfig.rb)
|
52
52
|
and the gRPC [spec_helper.rb](https://github.com/grpc/grpc/blob/master/src/ruby/spec/spec_helper.rb) for additional information.
|
@@ -230,7 +230,7 @@ module Google
|
|
230
230
|
# @param solving_mode [::Google::Cloud::Optimization::V1::OptimizeToursRequest::SolvingMode]
|
231
231
|
# By default, the solving mode is `DEFAULT_SOLVE` (0).
|
232
232
|
# @param max_validation_errors [::Integer]
|
233
|
-
# Truncates the number of validation errors returned.
|
233
|
+
# Truncates the number of validation errors returned. These errors are
|
234
234
|
# typically attached to an INVALID_ARGUMENT error payload as a BadRequest
|
235
235
|
# error detail (https://cloud.google.com/apis/design/errors#error_details),
|
236
236
|
# unless solving_mode=VALIDATE_ONLY: see the
|
@@ -261,8 +261,9 @@ module Google
|
|
261
261
|
# <= visits[0].start_time <= visits[1].start_time ...
|
262
262
|
# <= vehicle_end_time`).
|
263
263
|
# * a shipment may only be performed on a vehicle that is allowed. A
|
264
|
-
# vehicle is allowed if
|
265
|
-
#
|
264
|
+
# vehicle is allowed if
|
265
|
+
# {::Google::Cloud::Optimization::V1::Shipment#allowed_vehicle_indices Shipment.allowed_vehicle_indices}
|
266
|
+
# is empty or its `vehicle_index` is included in
|
266
267
|
# {::Google::Cloud::Optimization::V1::Shipment#allowed_vehicle_indices Shipment.allowed_vehicle_indices}.
|
267
268
|
#
|
268
269
|
# If the injected solution is not feasible, a validation error is not
|
@@ -297,16 +298,27 @@ module Google
|
|
297
298
|
# @param interpret_injected_solutions_using_labels [::Boolean]
|
298
299
|
# If true:
|
299
300
|
#
|
300
|
-
# * uses
|
301
|
+
# * uses
|
302
|
+
# {::Google::Cloud::Optimization::V1::ShipmentRoute#vehicle_label ShipmentRoute.vehicle_label}
|
303
|
+
# instead of `vehicle_index` to
|
301
304
|
# match routes in an injected solution with vehicles in the request;
|
302
|
-
# reuses the mapping of original
|
303
|
-
# {::Google::Cloud::Optimization::V1::ShipmentRoute#vehicle_index ShipmentRoute.vehicle_index}
|
305
|
+
# reuses the mapping of original
|
306
|
+
# {::Google::Cloud::Optimization::V1::ShipmentRoute#vehicle_index ShipmentRoute.vehicle_index}
|
307
|
+
# to new
|
308
|
+
# {::Google::Cloud::Optimization::V1::ShipmentRoute#vehicle_index ShipmentRoute.vehicle_index}
|
309
|
+
# to update
|
304
310
|
# {::Google::Cloud::Optimization::V1::InjectedSolutionConstraint::ConstraintRelaxation#vehicle_indices ConstraintRelaxation.vehicle_indices}
|
305
311
|
# if non-empty, but the mapping must be unambiguous (i.e., multiple
|
306
312
|
# `ShipmentRoute`s must not share the same original `vehicle_index`).
|
307
|
-
# * uses
|
313
|
+
# * uses
|
314
|
+
# {::Google::Cloud::Optimization::V1::ShipmentRoute::Visit#shipment_label ShipmentRoute.Visit.shipment_label}
|
315
|
+
# instead of `shipment_index`
|
308
316
|
# to match visits in an injected solution with shipments in the request;
|
309
|
-
# * uses
|
317
|
+
# * uses
|
318
|
+
# {::Google::Cloud::Optimization::V1::SkippedShipment#label SkippedShipment.label}
|
319
|
+
# instead of
|
320
|
+
# {::Google::Cloud::Optimization::V1::SkippedShipment#index SkippedShipment.index}
|
321
|
+
# to
|
310
322
|
# match skipped shipments in the injected solution with request
|
311
323
|
# shipments.
|
312
324
|
#
|
@@ -319,8 +331,10 @@ module Google
|
|
319
331
|
# If true, labels in the following categories must appear at most once in
|
320
332
|
# their category:
|
321
333
|
#
|
322
|
-
# * {::Google::Cloud::Optimization::V1::Vehicle#label Vehicle.label} in the
|
323
|
-
#
|
334
|
+
# * {::Google::Cloud::Optimization::V1::Vehicle#label Vehicle.label} in the
|
335
|
+
# request;
|
336
|
+
# * {::Google::Cloud::Optimization::V1::Shipment#label Shipment.label} in the
|
337
|
+
# request;
|
324
338
|
# * {::Google::Cloud::Optimization::V1::ShipmentRoute#vehicle_label ShipmentRoute.vehicle_label} in the injected solution;
|
325
339
|
# * {::Google::Cloud::Optimization::V1::SkippedShipment#label SkippedShipment.label} and {::Google::Cloud::Optimization::V1::ShipmentRoute::Visit#shipment_label ShipmentRoute.Visit.shipment_label} in
|
326
340
|
# the injected solution (except pickup/delivery visit pairs, whose
|
@@ -330,27 +344,32 @@ module Google
|
|
330
344
|
# request vehicle, the corresponding route is removed from the solution
|
331
345
|
# along with its visits. If a `shipment_label` in the injected solution does
|
332
346
|
# not correspond to a request shipment, the corresponding visit is removed
|
333
|
-
# from the solution. If a
|
334
|
-
#
|
335
|
-
#
|
347
|
+
# from the solution. If a
|
348
|
+
# {::Google::Cloud::Optimization::V1::SkippedShipment#label SkippedShipment.label}
|
349
|
+
# in the injected solution does not correspond to a request shipment, the
|
350
|
+
# `SkippedShipment` is removed from the solution.
|
336
351
|
#
|
337
352
|
# Removing route visits or entire routes from an injected solution may
|
338
353
|
# have an effect on the implied constraints, which may lead to change in
|
339
354
|
# solution, validation errors, or infeasibility.
|
340
355
|
#
|
341
|
-
# NOTE: The caller must ensure that each
|
342
|
-
#
|
343
|
-
#
|
344
|
-
#
|
345
|
-
#
|
346
|
-
#
|
356
|
+
# NOTE: The caller must ensure that each
|
357
|
+
# {::Google::Cloud::Optimization::V1::Vehicle#label Vehicle.label} (resp.
|
358
|
+
# {::Google::Cloud::Optimization::V1::Shipment#label Shipment.label}) uniquely
|
359
|
+
# identifies a vehicle (resp. shipment) entity used across the two relevant
|
360
|
+
# requests: the past request that produced the `OptimizeToursResponse` used
|
361
|
+
# in the injected solution and the current request that includes the injected
|
362
|
+
# solution. The uniqueness checks described above are not enough to guarantee
|
363
|
+
# this requirement.
|
347
364
|
# @param consider_road_traffic [::Boolean]
|
348
365
|
# Consider traffic estimation in calculating `ShipmentRoute` fields
|
349
366
|
# {::Google::Cloud::Optimization::V1::ShipmentRoute::Transition#travel_duration Transition.travel_duration},
|
350
367
|
# {::Google::Cloud::Optimization::V1::ShipmentRoute::Visit#start_time Visit.start_time},
|
351
368
|
# and `vehicle_end_time`; in setting the
|
352
|
-
# {::Google::Cloud::Optimization::V1::ShipmentRoute#has_traffic_infeasibilities ShipmentRoute.has_traffic_infeasibilities}
|
353
|
-
#
|
369
|
+
# {::Google::Cloud::Optimization::V1::ShipmentRoute#has_traffic_infeasibilities ShipmentRoute.has_traffic_infeasibilities}
|
370
|
+
# field, and in calculating the
|
371
|
+
# {::Google::Cloud::Optimization::V1::OptimizeToursResponse#total_cost OptimizeToursResponse.total_cost}
|
372
|
+
# field.
|
354
373
|
# @param populate_polylines [::Boolean]
|
355
374
|
# If true, polylines will be populated in response `ShipmentRoute`s.
|
356
375
|
# @param populate_transition_polylines [::Boolean]
|
@@ -376,10 +395,12 @@ module Google
|
|
376
395
|
# Label that may be used to identify this request, reported back in the
|
377
396
|
# {::Google::Cloud::Optimization::V1::OptimizeToursResponse#request_label OptimizeToursResponse.request_label}.
|
378
397
|
# @param populate_travel_step_polylines [::Boolean]
|
379
|
-
# Deprecated: Use
|
380
|
-
#
|
381
|
-
#
|
382
|
-
#
|
398
|
+
# Deprecated: Use
|
399
|
+
# {::Google::Cloud::Optimization::V1::OptimizeToursRequest#populate_transition_polylines OptimizeToursRequest.populate_transition_polylines}
|
400
|
+
# instead. If true, polylines will be populated in response
|
401
|
+
# {::Google::Cloud::Optimization::V1::ShipmentRoute#transitions ShipmentRoute.transitions}.
|
402
|
+
# Note that in this case, the polylines will also be populated in the
|
403
|
+
# deprecated `travel_steps`.
|
383
404
|
#
|
384
405
|
# @yield [response, operation] Access the result along with the RPC operation
|
385
406
|
# @yieldparam response [::Google::Cloud::Optimization::V1::OptimizeToursResponse]
|
@@ -479,8 +500,8 @@ module Google
|
|
479
500
|
#
|
480
501
|
# If no location is specified, a region will be chosen automatically.
|
481
502
|
# @param model_configs [::Array<::Google::Cloud::Optimization::V1::BatchOptimizeToursRequest::AsyncModelConfig, ::Hash>]
|
482
|
-
# Required. Input/Output information each purchase model, such as file paths
|
483
|
-
# formats.
|
503
|
+
# Required. Input/Output information each purchase model, such as file paths
|
504
|
+
# and data formats.
|
484
505
|
#
|
485
506
|
# @yield [response, operation] Access the result along with the RPC operation
|
486
507
|
# @yieldparam response [::Gapic::Operation]
|
@@ -502,14 +523,14 @@ module Google
|
|
502
523
|
# # Call the batch_optimize_tours method.
|
503
524
|
# result = client.batch_optimize_tours request
|
504
525
|
#
|
505
|
-
# # The returned object is of type Gapic::Operation. You can use
|
506
|
-
# #
|
507
|
-
# #
|
526
|
+
# # The returned object is of type Gapic::Operation. You can use it to
|
527
|
+
# # check the status of an operation, cancel it, or wait for results.
|
528
|
+
# # Here is how to wait for a response.
|
508
529
|
# result.wait_until_done! timeout: 60
|
509
530
|
# if result.response?
|
510
531
|
# p result.response
|
511
532
|
# else
|
512
|
-
# puts "
|
533
|
+
# puts "No response received."
|
513
534
|
# end
|
514
535
|
#
|
515
536
|
def batch_optimize_tours request, options = nil
|
@@ -158,13 +158,11 @@ module Google
|
|
158
158
|
# # Call the list_operations method.
|
159
159
|
# result = client.list_operations request
|
160
160
|
#
|
161
|
-
# # The returned object is of type Gapic::PagedEnumerable. You can
|
162
|
-
# #
|
163
|
-
#
|
164
|
-
# # methods are also available for managing paging directly.
|
165
|
-
# result.each do |response|
|
161
|
+
# # The returned object is of type Gapic::PagedEnumerable. You can iterate
|
162
|
+
# # over elements, and API calls will be issued to fetch pages as needed.
|
163
|
+
# result.each do |item|
|
166
164
|
# # Each element is of type ::Google::Longrunning::Operation.
|
167
|
-
# p
|
165
|
+
# p item
|
168
166
|
# end
|
169
167
|
#
|
170
168
|
def list_operations request, options = nil
|
@@ -253,14 +251,14 @@ module Google
|
|
253
251
|
# # Call the get_operation method.
|
254
252
|
# result = client.get_operation request
|
255
253
|
#
|
256
|
-
# # The returned object is of type Gapic::Operation. You can use
|
257
|
-
# #
|
258
|
-
# #
|
254
|
+
# # The returned object is of type Gapic::Operation. You can use it to
|
255
|
+
# # check the status of an operation, cancel it, or wait for results.
|
256
|
+
# # Here is how to wait for a response.
|
259
257
|
# result.wait_until_done! timeout: 60
|
260
258
|
# if result.response?
|
261
259
|
# p result.response
|
262
260
|
# else
|
263
|
-
# puts "
|
261
|
+
# puts "No response received."
|
264
262
|
# end
|
265
263
|
#
|
266
264
|
def get_operation request, options = nil
|
@@ -540,14 +538,14 @@ module Google
|
|
540
538
|
# # Call the wait_operation method.
|
541
539
|
# result = client.wait_operation request
|
542
540
|
#
|
543
|
-
# # The returned object is of type Gapic::Operation. You can use
|
544
|
-
# #
|
545
|
-
# #
|
541
|
+
# # The returned object is of type Gapic::Operation. You can use it to
|
542
|
+
# # check the status of an operation, cancel it, or wait for results.
|
543
|
+
# # Here is how to wait for a response.
|
546
544
|
# result.wait_until_done! timeout: 60
|
547
545
|
# if result.response?
|
548
546
|
# p result.response
|
549
547
|
# else
|
550
|
-
# puts "
|
548
|
+
# puts "No response received."
|
551
549
|
# end
|
552
550
|
#
|
553
551
|
def wait_operation request, options = nil
|