Geziyi sil

Bu belgede, gezilerin nasıl silineceği açıklanmaktadır. Fleet Engine'i ayarladığınız varsayılır. Fleet Engine'i ayarlama başlıklı makaleyi inceleyin.

Gezi silme temelleri

Sisteminiz, aşağıdaki durumlarda bir geziyi silmek için Fleet Engine'i kullanabilir:

  • Fleet Engine API'lerini test ederken temizleme işlemleri gerçekleştirmek için.
  • Artık gerekli olmayan bir Gezi'yi hemen silmek için.

Bir geziyi silmek için gRPC veya REST kullanarak istek gönderin.

  • DeleteTrip() yöntemi: gRPC veya REST
  • DeleteTripRequest mesajı: Yalnızca gRPC

Fleet Engine: Hizmet hesabı rolleri bölümünde açıklandığı gibi, projenizin hizmet hesabı için uygun kimlik bilgilerini kullanın.

Örnek: delete trip

Aşağıdaki örnekte, Fleet Engine'de bir geziyi nasıl sileceğiniz gösterilmektedir.

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

Hataları işleme

Bir geziyi silerken FAILED_PRECONDITION hatasıyla karşılaşabilirsiniz. Bu durumda gezi etkin durumdadır ve bir araca atanmıştır.
Silme işlemine devam etmek için UpdateTrip çağrısı yapın ve trip_status öğesini COMPLETE/CANCELED olarak güncelleyin.

Sırada ne var?