Fahrzeug löschen

In diesem Dokument wird beschrieben, wie Sie ein Fahrzeug löschen. Dabei wird davon ausgegangen, dass Sie Fleet Engine eingerichtet haben. Weitere Informationen finden Sie unter Fleet Engine einrichten.

Grundlagen zum Löschen von Fahrzeugen

Ihr System kann Fleet Engine verwenden, um ein Fahrzeug in den folgenden Situationen zu löschen:

  • Um Bereinigungen durchzuführen, während Sie Fleet Engine APIs testen.
  • Um ein Fahrzeug, das nicht mehr benötigt wird, sofort zu löschen.

Senden Sie eine Anfrage mit gRPC oder REST, um ein Fahrzeug zu löschen.

  • Methode DeleteVehicle(): gRPC oder REST
  • Nachricht DeleteVehicleRequest: gRPC nur

Verwenden Sie die entsprechenden Anmeldedaten für das Dienstkonto Ihres Projekts, wie unter Fleet Engine: Rollen für Dienstkonten beschrieben.

Beispiel: Fahrzeug löschen

Java

Im folgenden Beispiel wird gezeigt, wie Sie mit der Java gRPC-Bibliothek ein Fahrzeug löschen. Eine vollständige Liste der unterstützten Sprachen finden Sie unter Clientbibliotheken für On-Demand-Fahrdienste.

  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

Im folgenden Beispiel wird gezeigt, wie Sie ein Fahrzeug aus Fleet Engine löschen, indem Sie mit REST einen Aufruf an DeleteVehicle senden.

  # 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}"

Wenn der Löschvorgang erfolgreich ist, gibt die API eine leere Antwort zurück.

Fehler verarbeiten

Beim Löschen eines Fahrzeugs kann der Fehler FAILED_PRECONDITION auftreten. In diesem Fall gibt es Fahrten, die auf das Fahrzeug verweisen. So fahren Sie mit dem Löschen fort:

  1. Rufen Sie SearchTrips auf, um Fahrten zu finden, die auf das Fahrzeug verweisen.
  2. Rufen Sie DeleteTrip auf, um jede der gefundenen Fahrten zu löschen.

Nächste Schritte