Este documento descreve como excluir um veículo de entrega. Pressupo que você tenha configurado o Fleet Engine. Consulte Configurar o Fleet Engine.
Noções básicas sobre a exclusão de veículos de entrega
Seu sistema pode usar o Fleet Engine para excluir um veículo de entrega nas seguintes situações:
- Para executar operações de limpeza ao testar APIs do Fleet Engine.
- Para excluir imediatamente um veículo de entrega que não é mais necessário.
Para excluir um veículo de entrega, envie uma solicitação usando o gRPC ou o REST.
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 de entrega
Java
O exemplo a seguir mostra como usar a biblioteca Java gRPC para excluir um veículo de entrega.
static final String PROJECT_ID = "my-rideshare-co-gcp-project";
static final String VEHICLE_ID = "vehicle-8241890";
String deliveryVehicleName = "providers/" + PROJECT_ID + "/deliveryVehicles/" + VEHICLE_ID;
DeliveryServiceBlockingStub deliveryService = DeliveryServiceGrpc.newBlockingStub(channel);
// Delete Vehicle request
DeleteDeliveryVehicleRequest deleteDeliveryVehicleRequest =
DeleteDeliveryVehicleRequest.newBuilder().setName(deliveryVehicleName).build();
try {
deliveryService.deleteDeliveryVehicle(deleteDeliveryVehicleRequest);
} catch (StatusRuntimeException e) {
Status s = e.getStatus();
switch (s.getCode()) {
case NOT_FOUND: // The delivery vehicle doesn't exist.
break;
case FAILED_PRECONDITION: // There are tasks(s) that reference delivery vehicle.
break;
case PERMISSION_DENIED:
break;
}
return;
}
REST
O exemplo a seguir mostra como excluir um veículo de entrega do Fleet Engine usando REST,
fazendo uma chamada para DeleteDeliveryVehicle
.
# DELETE https://fleetengine.googleapis.com/v1/providers/<project_id>/deliveryVehicles/<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}/deliveryvehicles/${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 de entrega, você pode encontrar um erro FAILED_PRECONDITION
, no qual há tarefas que fazem referência ao veículo de entrega.
Para prosseguir com a exclusão:
- Chame
ListTasks
para encontrar tarefas que fazem referência ao veículo de entrega. - Chame
DeleteTask
para excluir cada uma das tarefas encontradas.