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

Ihr System kann die Fleet Engine in den folgenden Situationen zum Löschen eines Fahrzeugs verwenden:

  • Bereinigungsvorgänge beim Testen von Fleet Engine APIs ausführen
  • Ein nicht mehr benötigtes Fahrzeug sofort löschen.

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

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

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

Beispiel: Fahrzeug löschen

Java

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

  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 mithilfe von REST aus 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 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 sich auf das Fahrzeug beziehen.
  2. Rufen Sie DeleteTrip auf, um die einzelnen gefundenen Fahrten zu löschen.

Nächste Schritte