차량 삭제

이 문서에서는 차량을 삭제하는 방법을 설명합니다. Fleet Engine을 설정했다고 가정합니다. Fleet Engine 설정을 참고하세요.

차량 삭제 기본사항

다음과 같은 경우 시스템에서 Fleet Engine을 사용하여 차량을 삭제할 수 있습니다.

  • Fleet Engine API를 테스트하는 동안 정리 작업을 실행합니다.
  • 더 이상 필요하지 않은 차량을 즉시 삭제합니다.

차량을 삭제하려면 gRPC 또는 REST를 사용하여 요청을 전송합니다.

  • DeleteVehicle() 메서드: gRPC 또는 REST
  • DeleteVehicleRequest 메시지: gRPC만 해당

Fleet Engine: 서비스 계정 역할에 설명된 대로 프로젝트의 서비스 계정에 적절한 사용자 인증 정보를 사용합니다.

예: 차량 삭제

자바REST

다음 예에서는 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 오류가 발생할 수 있으며, 이 경우 차량을 참조하는 이동이 있는 것입니다. 삭제를 진행하려면 다음 단계를 따르세요.

  1. SearchTrips를 호출하여 차량을 참조하는 이동을 찾습니다.
  2. DeleteTrip를 호출하여 찾은 각 경로를 삭제합니다.

다음 단계