Ce document explique comment supprimer une tâche. Il suppose que vous avez configuré Fleet Engine. Consultez Configurer Fleet Engine.
Principes de base de la suppression de tâches
Votre système peut utiliser Fleet Engine pour supprimer une tâche dans les situations suivantes:
- Pour effectuer des opérations de nettoyage lors des tests des API Fleet Engine.
- Pour supprimer immédiatement une tâche qui n'est plus nécessaire.
Pour supprimer une tâche, envoyez une requête à l'aide de gRPC ou de REST.
Utilisez les identifiants appropriés pour le compte de service de votre projet, comme décrit dans la section Fleet Engine: rôles de compte de service.
Exemple: supprimer la tâche
L'exemple suivant montre comment supprimer une tâche dans 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;
}
Gérer les erreurs
Lorsque vous supprimez une tâche, vous pouvez rencontrer une erreur FAILED_PRECONDITION
. Dans ce cas, la tâche est active et attribuée à un véhicule de livraison.
Pour effectuer la suppression, fermez la tâche.