מחיקת הרכב

במסמך הזה מוסבר איך למחוק רכב. ההנחה היא שהגדרתם את Fleet Engine. הגדרת Fleet Engine

יסודות המחיקה של כלי רכב

המערכת עשויה להשתמש ב-Fleet Engine כדי למחוק רכב בתרחישים הבאים:

  • כדי לבצע פעולות ניקוי בזמן בדיקת ממשקי ה-API של Fleet Engine.
  • כדי למחוק באופן מיידי רכב שכבר לא נדרש.

כדי למחוק רכב, שולחים בקשה באמצעות gRPC או REST.

  • שיטת DeleteVehicle(): gRPC או REST
  • DeleteVehicleRequest message: gRPC בלבד

משתמשים בפרטי הכניסה המתאימים לחשבון השירות של הפרויקט, כפי שמתואר במאמר Fleet Engine: תפקידים של חשבונות שירות.

דוגמה: delete vehicle

Java

בדוגמה הבאה מוסבר איך משתמשים בספריית gRPC של Java כדי למחוק רכב.

  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}"

אם פעולת המחיקה מסתיימת בהצלחה, ה-API מחזיר תשובה ריקה.

טיפול בשגיאות

כשמוחקים רכב, ייתכן שתופיע שגיאה מסוג FAILED_PRECONDITION. במקרה כזה, יש נסיעות שמתייחסות לרכב. כדי להמשיך במחיקה:

  1. מתקשרים למספר SearchTrips כדי למצוא נסיעות שכוללות את הרכב.
  2. כדי למחוק כל אחת מהנסיעות שנמצאו, קוראים ל-DeleteTrip.

המאמרים הבאים