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