Fahrzeug löschen

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

Grundlagen zum Löschen von Fahrzeugen

In den folgenden Fällen kann Ihr System die Fleet Engine verwenden, um ein Fahrzeug zu löschen:

  • Zum Ausführen von Bereinigungsvorgängen beim Testen von Fleet Engine APIs.
  • Sie können ein Fahrzeug, das nicht mehr benötigt wird, sofort löschen.

Wenn Sie ein Fahrzeug löschen möchten, senden Sie eine Anfrage über gRPC oder REST.

  • DeleteVehicle()-Methode: gRPC oder REST
  • DeleteVehicleRequest message: Nur gRPC

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

Beispiel: delete vehicle

JavaREST

Im folgenden Beispiel wird gezeigt, wie Sie mit der Java gRPC-Bibliothek ein Fahrzeug löschen.

  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;
  }

Im folgenden Beispiel wird gezeigt, wie Sie ein Fahrzeug mithilfe von REST aus der Fleet Engine löschen, indem Sie DeleteVehicle aufrufen.

  # 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 war, gibt die API eine leere Antwort zurück.

Fehler verarbeiten

Wenn Sie ein Fahrzeug löschen, kann der Fehler FAILED_PRECONDITION auftreten. In diesem Fall gibt es Fahrten, die auf das Fahrzeug verweisen. So löschen Sie das Element:

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

Nächste Schritte