이 문서에서는 차량을 삭제하는 방법을 설명합니다. Fleet Engine을 설정했다고 가정합니다. Fleet Engine 설정을 참고하세요.
차량 삭제 기본사항
다음과 같은 경우 시스템에서 Fleet Engine을 사용하여 차량을 삭제할 수 있습니다.
- Fleet Engine API를 테스트하는 동안 정리 작업을 실행합니다.
- 더 이상 필요하지 않은 차량을 즉시 삭제합니다.
차량을 삭제하려면 gRPC 또는 REST를 사용하여 요청을 전송합니다.
Fleet Engine: 서비스 계정 역할에 설명된 대로 프로젝트의 서비스 계정에 적절한 사용자 인증 정보를 사용합니다.
예: 차량 삭제
다음 예에서는 Java gRPC 라이브러리를 사용하여 차량을 삭제하는 방법을 보여줍니다.
static final String PROJECT_ID = "my-delivery-co-gcp-project";
static final String VEHICLE_ID = "vehicle-8241890";
String vehicleName = "providers/" + PROJECT_ID + "/vehicles/" + VEHICLE_ID;
VehicleServiceBlockingStub vehicleService = VehicleService.newBlockingStub(channel);
// Delete Vehicle request
DeleteVehicleRequest deleteVehicleRequest = DeleteVehicleRequest.newBuilder()
.setName(vehicleName)
.build();
try {
vehicleService.deleteVehicle(deleteVehicleRequest);
} catch (StatusRuntimeException e) {
Status s = e.getStatus();
switch (s.getCode()) {
case NOT_FOUND: // The vehicle doesn't exist.
break;
case FAILED_PRECONDITION: // There are trip(s) that reference vehicle.
break;
case PERMISSION_DENIED:
break;
}
return;
}
다음 예는 DeleteVehicle
를 호출하여 REST를 사용하여 Fleet Engine에서 차량을 삭제하는 방법을 보여줍니다.
# DELETE https://fleetengine.googleapis.com/v1/providers/<project_id>/vehicles/<vehicleId>
# Set JWT, PROJECT_ID, and VEHICLE_ID in the local environment
curl -X DELETE -H "Authorization: Bearer ${JWT}" \
"https://fleetengine.googleapis.com/v1/providers/${PROJECT_ID}/vehicles/${VEHICLE_ID}"
삭제 작업이 성공하면 API가 빈 응답을 반환합니다.
오류 처리
차량을 삭제할 때 FAILED_PRECONDITION
오류가 발생할 수 있으며, 이 경우 차량을 참조하는 이동이 있는 것입니다.
삭제를 진행하려면 다음 단계를 따르세요.
SearchTrips
를 호출하여 차량을 참조하는 이동을 찾습니다.DeleteTrip
를 호출하여 찾은 각 경로를 삭제합니다.