本文件說明如何刪除行程。假設您已設定 Fleet Engine。請參閱「設定車隊引擎」。
行程刪除作業基本概念
在下列情況下,系統可能會使用 Fleet Engine 刪除行程:
- 在測試 Fleet Engine API 時執行清理作業。
- 立即刪除不再需要的行程。
如要刪除行程,請使用 gRPC 或 REST 傳送要求。
請為專案的服務帳戶使用適當的憑證,如Fleet Engine:服務帳戶角色一節所述。
範例:delete trip
以下範例說明如何在 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
。