Elimina veicolo

Questo documento descrive come eliminare un veicolo. Presuppone che tu abbia configurato Fleet Engine. Vedi Configurare Fleet Engine.

Nozioni di base sull'eliminazione dei veicoli

Il tuo sistema potrebbe utilizzare Fleet Engine per eliminare un veicolo nelle seguenti situazioni:

  • Per eseguire operazioni di pulizia durante il test delle API Fleet Engine.
  • Per eliminare immediatamente un veicolo che non è più necessario.

Per eliminare un veicolo, invia una richiesta utilizzando gRPC o REST.

  • Metodo DeleteVehicle(): gRPC o REST
  • Messaggio DeleteVehicleRequest: solo gRPC

Utilizza le credenziali appropriate per il service account del tuo progetto, come descritto in Fleet Engine: ruoli del service account.

Esempio: elimina veicolo

Java

L'esempio seguente mostra come utilizzare la libreria gRPC Java per eliminare un veicolo.

  static final String PROJECT_ID = "my-delivery-co-gcp-project";
  static final String VEHICLE_ID = "vehicle-8241890";

  String vehicleName = "providers/" + PROJECT_ID + "/vehicles/" + VEHICLE_ID;

  VehicleServiceBlockingStub vehicleService = VehicleService.newBlockingStub(channel);

  // Delete Vehicle request
  DeleteVehicleRequest deleteVehicleRequest = DeleteVehicleRequest.newBuilder()
      .setName(vehicleName)
      .build();

  try {
    vehicleService.deleteVehicle(deleteVehicleRequest);
  } catch (StatusRuntimeException e) {
    Status s = e.getStatus();
    switch (s.getCode()) {
       case NOT_FOUND:            // The vehicle doesn't exist.
         break;
       case FAILED_PRECONDITION:  // There are trip(s) that reference vehicle.
         break;
       case PERMISSION_DENIED:
         break;
    }
    return;
  }

REST

L'esempio seguente mostra come eliminare un veicolo da Fleet Engine utilizzando REST effettuando una chiamata a DeleteVehicle.

  # DELETE https://fleetengine.googleapis.com/v1/providers/<project_id>/vehicles/<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}/vehicles/${VEHICLE_ID}"

Se l'operazione di eliminazione ha esito positivo, l'API restituisce una risposta vuota.

Gestisci gli errori

Quando elimini un veicolo, potresti riscontrare un errore FAILED_PRECONDITION nel caso in cui siano presenti viaggi che fanno riferimento al veicolo. Per procedere con l'eliminazione:

  1. Chiama il numero SearchTrips per trovare i viaggi che fanno riferimento al veicolo.
  2. Chiama DeleteTrip per eliminare ciascun viaggio trovato.

Passaggi successivi