En este documento, se describe cómo borrar una tarea. Se supone que configuraste el motor de flota. Consulta Cómo configurar Fleet Engine.
Conceptos básicos de la eliminación de tareas
Es posible que tu sistema use Fleet Engine para borrar una tarea en las siguientes situaciones:
- Para realizar operaciones de limpieza mientras se prueban las APIs de Fleet Engine.
- Para borrar de inmediato una tarea que ya no se necesita.
Para borrar una tarea, envía una solicitud con gRPC o REST.
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 tarea
En el siguiente ejemplo, se muestra cómo borrar una tarea en Fleet Engine.
static final String PROJECT_ID = "my-delivery-co-gcp-project";
static final String TASK_ID = "task-8241890";
String taskName = "providers/" + PROJECT_ID + "/tasks/" + TASK_ID;
DeliveryServiceBlockingStub deliveryService = DeliveryServiceGrpc.newBlockingStub(channel);
// Delete task request.
DeleteTaskRequest deleteTaskRequest = DeleteTaskRequest.newBuilder()
.setName(taskName)
.build();
// Error handling.
try {
deliveryService.deleteTask(deleteTaskRequest);
} catch (StatusRuntimeException e) {
Status s = e.getStatus();
switch (s.getCode()) {
case NOT_FOUND: // The task doesn't exist.
break;
case FAILED_PRECONDITION: // Task is active and assigned to a delivery vehicle.
break;
case PERMISSION_DENIED:
break;
}
return;
}
Soluciona errores
Cuando borres una tarea, es posible que encuentres un error FAILED_PRECONDITION
, en cuyo caso la tarea estará activa y asignada a un vehículo de entrega.
Para continuar con la eliminación, cierra la tarea.