Excluir veículo

Este documento descreve como excluir um veículo. Pressupo que você tenha configurado o Fleet Engine. Consulte Configurar o Fleet Engine.

Noções básicas sobre a exclusão de veículos

Seu sistema pode usar o Fleet Engine para excluir um veículo nas seguintes situações:

  • Para executar operações de limpeza ao testar APIs do Fleet Engine.
  • Para excluir imediatamente um veículo que não é mais necessário.

Para excluir um veículo, envie uma solicitação usando o gRPC ou o REST.

  • Método DeleteVehicle(): gRPC ou REST
  • Mensagem DeleteVehicleRequest: gRPC

Use as credenciais adequadas para a conta de serviço do seu projeto, conforme descrito em Fleet Engine: papéis da conta de serviço.

Exemplo: excluir veículo

JavaREST

O exemplo a seguir mostra como usar a biblioteca gRPC do Java para excluir um veículo.

  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;
  }

O exemplo a seguir mostra como excluir um veículo do Fleet Engine usando REST, fazendo uma chamada para DeleteVehicle.

  # 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}"

Se a operação de exclusão for bem-sucedida, a API vai retornar uma resposta vazia.

Solucionar erros

Ao excluir um veículo, você pode encontrar um erro FAILED_PRECONDITION, no qual há viagens que fazem referência ao veículo. Para prosseguir com a exclusão:

  1. Chame SearchTrips para encontrar viagens que fazem referência ao veículo.
  2. Chame DeleteTrip para excluir cada uma das viagens encontradas.

A seguir