حذف الرحلة

يوضّح هذا المستند كيفية حذف رحلة. ويفترض هذا الدليل أنّك أعددت Fleet Engine. راجِع مقالة إعداد Fleet Engine.

أساسيات حذف الرحلات

قد يستخدم نظامك Fleet Engine لحذف رحلة في الحالات التالية:

  • لإجراء عمليات تنظيف أثناء اختبار واجهات برمجة التطبيقات Fleet Engine
  • لحذف رحلة لم تعُد مطلوبة على الفور

لحذف رحلة، أرسِل طلبًا باستخدام gRPC أو REST.

  • طريقة DeleteTrip(): gRPC أو REST
  • رسالة DeleteTripRequest: gRPC فقط

استخدِم بيانات الاعتماد المناسبة لحساب الخدمة الخاص بمشروعك كما هو موضّح في Fleet Engine: أدوار حساب الخدمة.

مثال: حذف الرحلة

يوضّح المثال التالي كيفية حذف رحلة في Fleet Engine.

static final String PROJECT_ID = "my-rideshare-co-gcp-project";
static final String TRIP_ID = "trip-8241890";

String tripName = "providers/" + PROJECT_ID + "/trips/" + TRIP_ID;

TripServiceBlockingStub tripService = TripServiceGrpc.newBlockingStub(channel);

// Delete trip request.
DeleteTripRequest deleteTripRequest = DeleteTripRequest.newBuilder()
    .setName(tripName)
    .build();

// Error handling.
try {
  tripService.deleteTrip(deleteTripRequest);
} catch (StatusRuntimeException e) {
  Status s = e.getStatus();
  switch (s.getCode()) {
    case NOT_FOUND:            // The trip doesn't exist.
      break;
    case FAILED_PRECONDITION:  // Trip is active and assigned to a vehicle.
      break;
    case PERMISSION_DENIED:
      break;
  }
  return;
}

معالجة الأخطاء

عند حذف رحلة، قد يظهر لك الخطأ FAILED_PRECONDITION، وفي هذه الحالة تكون الرحلة نشطة ومخصّصة لمركبة.
للمتابعة في عملية الحذف، اتّصِل بالرقم UpdateTrip وعدِّل trip_status إلى COMPLETE/CANCELED.

الخطوات التالية