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 des tests 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 la section Fleet Engine: rôles de compte de service.

Exemple: delete trip

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, vous pouvez rencontrer une erreur FAILED_PRECONDITION. Dans ce cas, le trajet est actif et attribué à un véhicule.
Pour procéder à la suppression, appelez UpdateTrip et mettez à jour trip_status avec COMPLETE/CANCELED.

Étape suivante