Borrar vehículo

En este documento, se describe cómo borrar un vehículo. Se supone que ya configuraste Fleet Engine. Consulta Cómo configurar Fleet Engine.

Conceptos básicos sobre el borrado de vehículos

Es posible que tu sistema use Fleet Engine para borrar un vehículo en las siguientes situaciones:

  • Realizar operaciones de limpieza mientras se prueban las APIs de Fleet Engine
  • Borra de inmediato un vehículo que ya no se necesita.

Para borrar un vehículo, envía una solicitud con gRPC o REST.

  • Método DeleteVehicle(): gRPC o REST
  • Mensaje DeleteVehicleRequest: Solo gRPC

Usa las credenciales adecuadas para la cuenta de servicio de tu proyecto, como se describe en Fleet Engine: Roles de la cuenta de servicio.

Ejemplo: Borrar vehículo

Java

En el siguiente ejemplo, se muestra cómo usar la biblioteca de gRPC de Java para borrar un vehí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;
  }

REST

En el siguiente ejemplo, se muestra cómo borrar un vehículo de Fleet Engine con REST llamando a 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}"

Si la operación de eliminación se realiza correctamente, la API devuelve una respuesta vacía.

Soluciona errores

Cuando borres un vehículo, es posible que se produzca un error FAILED_PRECONDITION, en cuyo caso habrá viajes que hagan referencia al vehículo. Para continuar con la eliminación, sigue estos pasos:

  1. Llama a SearchTrips para encontrar viajes que hagan referencia al vehículo.
  2. Llama a DeleteTrip para borrar cada uno de los viajes encontrados.

¿Qué sigue?