حذف کار

این سند نحوه حذف تکلیف را شرح می‌دهد. فرض بر این است که «موتور ناوگان» را راه‌اندازی کرده‌اید. راه‌اندازی «موتور ناوگان» را ببینید.

مبانی حذف تکلیف

سیستم شما ممکن است از «موتور ناوگان» برای حذف تکلیف در موقعیت‌های زیر استفاده کند:

  • برای انجام عملیات پاکسازی درحین آزمایش کردن Fleet Engine APIs.
  • برای حذف فوری «تکلیفی» که دیگر لازم نیست.

برای حذف تکلیف، بااستفاده از gRPC یا REST درخواست ارسال کنید.

  • روش DeleteTask(): gRPC یا REST
  • پیام DeleteTaskRequest: فقط gRPC

از اطلاعات اعتباری مناسب برای حساب سرویس پروژه خود همان‌گونه که در موتور ناوگان: نقش‌های حساب سرویس توضیح داده شده است استفاده کنید.

مثال: حذف تکلیف

مثال زیر نحوه حذف کردن تکلیف در 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;
}

مدیریت کردن خطاها

هنگام حذف تکلیف، ممکن است با FAILED_PRECONDITION خطا مواجه شوید، در این صورت تکلیف فعال است و به خودرو تحویل اختصاص داده شده است. برای ادامه دادن حذف، تکلیف را ببندید.

قدم بعدی چیست