Java Örnek İstemcisi

Gerçek zamanlı güncellemeleri uygulamaya başlamanıza yardımcı olması için Java gerçek zamanlı güncelleme API istemcimizi indirebilirsiniz.

Ön koşul:

Hizmet hesabınızı oluşturun ve özel anahtarınızı indirin.

Başlayın:

  1. Java istemci kitaplığını indirin ve "mapsbooking" paketini almak için dosyayı arşivden çıkarın.
  2. IDE'nizde bir Java projesi oluşturun, bu depodan InventoryUpdate.java ve BookingNotification.java örnek kodlarını indirin:

    git clone https://maps-booking.googlesource.com/java-maps-booking-api-example

    ve bunları src dizini altındaki java projenize aktarın.

  3. Özel anahtarınızın (JSON dosyası) src dizininde bir kopyasını oluşturun.
  4. Java istemci kitaplığını projenizin bağımlılıklarına ekleyin (jar dosyalarını mapsbooking ve libs-sources dizinine ekleyin).
  5. Her iki Java dosyasında da uygulamalarınızı tamamlamak için TODO'ları uygulayın.

REST API hakkında daha fazla bilgiyi burada bulabilirsiniz.

Sorun Giderme:

  1. Mevcut bir merchantId veya serviceId ile yeni bir satıcı/hizmet oluşturmaya çalışırken aşağıdaki hata mesajını alırsınız:

    409 Conflict
    {
      code : 409,
      errors :
        [{
            domain : global,
            message : Requested entity already exists,
            reason : alreadyExists,
            debugInfo : detail: "[ORIGINAL ERROR] generic::already_exists: ...”\n"
        }],
      message : Requested entity already exists,
      status : ALREADY_EXISTS
    }
  2. Geçersiz bir merchantId veya serviceId ile müsaitlik durumu değiştirme çağrısı yapıldığında çağrıda hata mesajı gösterilmez. Bunun nedeni, RTU'lar aracılığıyla bilgi dokümanı aralıklarında yapılan değişikliklerin sıra dışı yürütmeyi desteklemesi ve dolayısıyla bir merchantId veya serviceId ile ilişkilendirilmemesidir. Ancak istekteki slotlar, geçersiz merchantId veya serviceId nedeniyle üretimde yayınlanmaz. Alanların yayınlanabilir hale gelmesi için lütfen eksik satıcıyı veya hizmeti RTU'lar ya da feed'ler aracılığıyla ekleyin.
  3. Güncelleme işlevlerinin tümünde, güncellenecek alanları belirtmek için "updateMask" parametresi FieldMask biçiminde olmalıdır. API'nin yalnızca maskede belirtildiği şekilde alanların değerlerini değiştirmesi ve diğer alanları değiştirmeden bırakması gerekir. Yanlış updateMask dizesini iletirseniz güncelleme geçerli olmaz. Güncelleme sırasında alan maskesi yoksa işlem tüm alanlar için geçerli olur (tüm alanların alan maskesi belirtilmiş gibi). Bu nedenle, tüm alanları güncellemek istiyorsanız updateMask değerini boş olarak ayarlayın.
  4. Sıfır değeri olan alanlar yanıtta gösterilmez.