В этом документе описывается, как удалить поездку. Предполагается, что вы уже настроили Fleet Engine. Подробнее о том, как настроить Fleet Engine…
Общие сведения об удалении поездок
Ваша система может использовать Fleet Engine для удаления поездки в следующих ситуациях:
- Выполнять очистку при тестировании Fleet Engine API.
- Чтобы немедленно удалить поездку, которая больше не нужна.
Чтобы удалить поездку, отправьте запрос с помощью gRPC или REST.
Используйте подходящие учетные данные для сервисного аккаунта проекта, как описано в статье Fleet Engine: роли сервисного аккаунта.
Пример: удалить поездку
В следующем примере показано, как удалить рейс в 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;
}
Обработка ошибок
При удалении поездки может возникнуть ошибка FAILED_PRECONDITION. Это означает, что поездка активна и назначена транспортному средству.
Чтобы продолжить удаление, вызовите UpdateTrip и измените значение trip_status на COMPLETE/CANCELED.