Supprimer le véhicule

Ce document explique comment supprimer un véhicule. Il suppose que vous avez configuré Fleet Engine. Consultez Configurer Fleet Engine.

Principes de base de la suppression de véhicules

Votre système peut utiliser Fleet Engine pour supprimer un véhicule dans les cas suivants:

  • Pour effectuer des opérations de nettoyage lors des tests des API Fleet Engine.
  • Pour supprimer immédiatement un véhicule dont vous n'avez plus besoin.

Pour supprimer un véhicule, envoyez une requête à l'aide de gRPC ou de REST.

  • Méthode DeleteVehicle(): gRPC ou REST
  • Message DeleteVehicleRequest: gRPC uniquement

Utilisez les identifiants appropriés pour le compte de service de votre projet, comme décrit dans la section Fleet Engine: rôles de compte de service.

Exemple: delete vehicle

Java

L'exemple suivant montre comment utiliser la bibliothèque gRPC Java pour supprimer un véhicule.

  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'exemple suivant montre comment supprimer un véhicule de Fleet Engine à l'aide de REST en appelant 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}"

Si l'opération de suppression aboutit, l'API renvoie une réponse vide.

Gérer les erreurs

Lorsque vous supprimez un véhicule, vous pouvez rencontrer une erreur FAILED_PRECONDITION. Dans ce cas, un ou plusieurs trajets font référence au véhicule. Pour supprimer le contenu:

  1. Appelez SearchTrips pour trouver le ou les trajets qui font référence au véhicule.
  2. Appelez DeleteTrip pour supprimer chacun des trajets trouvés.

Étape suivante