Questo documento descrive come eliminare un veicolo di consegna. Si presume che tu abbia configurato Fleet Engine. Vedi Configurare Fleet Engine.
Nozioni di base sull'eliminazione dei veicoli di consegna
Il sistema potrebbe utilizzare Fleet Engine per eliminare un veicolo di consegna nelle seguenti situazioni:
- Per eseguire operazioni di pulizia durante il test delle API Fleet Engine.
- Per eliminare immediatamente un veicolo di consegna che non è più necessario.
Per eliminare un veicolo di consegna, invia una richiesta utilizzando gRPC o REST.
Utilizza le credenziali appropriate per l'account di servizio del tuo progetto come descritto in Fleet Engine: ruoli dell'account di servizio.
Esempio: elimina veicolo di consegna
L'esempio seguente mostra come utilizzare la libreria gRPC Java per eliminare un veicolo di consegna.
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;
}
L'esempio seguente mostra come eliminare un veicolo di consegna da Fleet Engine utilizzando REST facendo una chiamata a 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}"
Se l'operazione di eliminazione ha esito positivo, l'API restituisce una risposta vuota.
Gestisci gli errori
Quando elimini un veicolo di consegna, potresti riscontrare un errore FAILED_PRECONDITION
, nel qual caso sono presenti attività che fanno riferimento al veicolo di consegna.
Per procedere con l'eliminazione:
- Chiama
ListTasks
per trovare le attività che fanno riferimento al veicolo di consegna. - Chiama
DeleteTask
per eliminare ciascuna delle attività trovate.