Z tego artykułu dowiesz się, jak usunąć pojazd dostawczy. Zakłada się, że masz skonfigurowany Fleet Engine. Zobacz Konfigurowanie Fleet Engine.
Podstawy usuwania pojazdów dostawczych
System może używać Fleet Engine do usuwania pojazdu dostawczego w tych sytuacjach:
- Aby podczas testowania interfejsów Fleet Engine API przeprowadzać operacje czyszczenia.
- Aby natychmiast usunąć pojazd dostawczy, który nie jest już potrzebny.
Aby usunąć pojazd dostawczy, wyślij żądanie za pomocą gRPC lub REST.
Użyj odpowiednich danych logowania konta usługi w projekcie zgodnie z opisem w artykule Fleet Engine: role konta usługi.
Przykład: usuwanie pojazdu dostawczego
Java
Poniższy przykład pokazuje, jak użyć biblioteki Java gRPC do usunięcia pojazdu dostawczego.
static final String PROJECT_ID = "my-rideshare-co-gcp-project";
static final String VEHICLE_ID = "vehicle-8241890";
String deliveryVehicleName = "providers/" + PROJECT_ID + "/deliveryVehicles/" + VEHICLE_ID;
DeliveryServiceBlockingStub deliveryService = DeliveryServiceGrpc.newBlockingStub(channel);
// Delete Vehicle request
DeleteDeliveryVehicleRequest deleteDeliveryVehicleRequest =
DeleteDeliveryVehicleRequest.newBuilder().setName(deliveryVehicleName).build();
try {
deliveryService.deleteDeliveryVehicle(deleteDeliveryVehicleRequest);
} catch (StatusRuntimeException e) {
Status s = e.getStatus();
switch (s.getCode()) {
case NOT_FOUND: // The delivery vehicle doesn't exist.
break;
case FAILED_PRECONDITION: // There are tasks(s) that reference delivery vehicle.
break;
case PERMISSION_DENIED:
break;
}
return;
}
REST
Poniższy przykład pokazuje, jak usunąć pojazd dostawczy z Fleet Engine za pomocą interfejsu REST, wywołując DeleteDeliveryVehicle.
# DELETE https://fleetengine.googleapis.com/v1/providers/<project_id>/deliveryVehicles/<vehicleId>
# Set JWT, PROJECT_ID, and VEHICLE_ID in the local environment
curl -X DELETE -H "Authorization: Bearer ${JWT}" \
"https://fleetengine.googleapis.com/v1/providers/${PROJECT_ID}/deliveryvehicles/${VEHICLE_ID}"
Jeśli operacja usuwania się powiedzie, interfejs API zwróci pustą odpowiedź.
Obsługuj błędy
Podczas usuwania pojazdu dostawczego może wystąpić błąd FAILED_PRECONDITION, w którym to przypadku istnieją zadania odwołujące się do pojazdu dostawczego.
Aby kontynuować usuwanie:
- Wywołaj funkcję
ListTasks, aby znaleźć zadania, które odwołują się do pojazdu dostawczego. - Wywołaj
DeleteTask, aby usunąć każde znalezione zadanie.