يوضّح هذا المستند كيفية حذف مركبة تسليم. يفترض هذا الإجراء أنّك أعددت Fleet Engine. راجِع مقالة إعداد Fleet Engine.
أساسيات حذف مركبة التسليم
قد يستخدم نظامك Fleet Engine لحذف مركبة توصيل في الحالات التالية:
- لإجراء عمليات تنظيف أثناء اختبار واجهات برمجة تطبيقات Fleet Engine
- لحذف مركبة توصيل لم تعُد مطلوبة على الفور
لحذف مركبة تسليم، أرسِل طلبًا باستخدام gRPC أو REST.
استخدِم بيانات الاعتماد المناسبة لحساب الخدمة في مشروعك كما هو описан في مقالة Fleet Engine: أدوار حساب الخدمة.
مثال: حذف مركبة التسليم
Java
يوضّح المثال التالي كيفية استخدام مكتبة Java gRPC لحذف مركبة توصيل.
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
يوضّح المثال التالي كيفية حذف مركبة توصيل من Fleet Engine باستخدام REST من خلال
إجراء مكالمة إلى 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}"
إذا تمت عملية الحذف بنجاح، تعرض واجهة برمجة التطبيقات استجابة فارغة.
معالجة الأخطاء
عند حذف مركبة تسليم، قد تواجه FAILED_PRECONDITION
خطأً، وفي هذه الحالة تكون هناك مهام تشير إلى مركبة التسليم.
اتّبِع الخطوات التالية لمتابعة عملية الحذف:
- اتصل برقم
ListTasks
للعثور على المهام التي تشير إلى مركبة التسليم. - اتصل بالرقم
DeleteTask
لحذف كل مهمة تم العثور عليها.