Supprimer le voyage

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

Principes de base de la suppression de trajets

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

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

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

  • Méthode DeleteTrip() : gRPC ou REST
  • Message DeleteTripRequest : gRPC uniquement

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

Exemple : supprime le voyage

L'exemple suivant montre comment supprimer un trajet dans Fleet Engine.

static final String PROJECT_ID = "my-rideshare-co-gcp-project";
static final String TRIP_ID = "trip-8241890";

String tripName = "providers/" + PROJECT_ID + "/trips/" + TRIP_ID;

TripServiceBlockingStub tripService = TripServiceGrpc.newBlockingStub(channel);

// Delete trip request.
DeleteTripRequest deleteTripRequest = DeleteTripRequest.newBuilder()
    .setName(tripName)
    .build();

// Error handling.
try {
  tripService.deleteTrip(deleteTripRequest);
} catch (StatusRuntimeException e) {
  Status s = e.getStatus();
  switch (s.getCode()) {
    case NOT_FOUND:            // The trip doesn't exist.
      break;
    case FAILED_PRECONDITION:  // Trip is active and assigned to a vehicle.
      break;
    case PERMISSION_DENIED:
      break;
  }
  return;
}

Gérer les erreurs

Lorsque vous supprimez un trajet, il est possible que l'erreur FAILED_PRECONDITION s'affiche. Dans ce cas, le trajet est actif et attribué à un véhicule.
Pour procéder à la suppression, appelez UpdateTrip et mettez à jour trip_status sur COMPLETE/CANCELED.

Étape suivante