이 문서에서는 여정을 삭제하는 방법을 설명합니다. 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
로 업데이트합니다.