Java सैंपल क्लाइंट

आप हमारी लागू करने में मदद करने के लिए Java रीयल टाइम अपडेट एपीआई क्लाइंट को समझने में मदद मिलती है.

पूर्वापेक्षा:

सेवा खाता बना लें और निजी पासकोड डाउनलोड करें.

शुरू करें:

  1. Google News ऐप्लिकेशन Java क्लाइंट लाइब्रेरी में, 'मैप बुकिंग' पाने के लिए, फ़ाइल को अनज़िप करें पैकेज.
  2. अपने IDE में एक Java प्रोजेक्ट बनाएं और सैंपल कोड डाउनलोड करें InventoryUpdate.java और इस रेपो से BookingNotification.java पर जाकर देखें:

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

    और उन्हें src डायरेक्ट्री में अपने java प्रोजेक्ट में इंपोर्ट करें.

  3. सोर्स डायरेक्ट्री में अपनी निजी पासकोड (JSON फ़ाइल) की कॉपी बनाएं.
  4. अपने प्रोजेक्ट की डिपेंडेंसी में Java क्लाइंट लाइब्रेरी जोड़ना (Mapsbooking और libs-sources डायरेक्ट्री के तहत जार फ़ाइलें शामिल करें).
  5. दोनों java फ़ाइलों में, लागू करने की प्रोसेस को पूरा करने के लिए TODOs का पालन करें

REST API के बारे में ज़्यादा जानकारी यहां देखें.

समस्या का हल:

  1. मौजूदा मर्चेंट आईडी के साथ नया व्यापारी/सेवा बनाते समय या ServiceId का इस्तेमाल कर रहे हैं, तो आपको गड़बड़ी का यह मैसेज दिखेगा:

    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. किसी अमान्य मर्चेंट आईडी के साथ बदलने की सुविधा का इस्तेमाल करते समय या serviceId का इस्तेमाल न करने पर, कॉल से गड़बड़ी का मैसेज नहीं मिलेगा. ऐसा इसलिए है, क्योंकि RTU के ज़रिए उपलब्धता स्लॉट में किए जाने वाले बदलाव, आउट-ऑफ़-ऑर्डर निष्पादन का समर्थन करते हैं और इसलिए, यह किसी merchantId या serviceId से जुड़ा हुआ नहीं है. हालांकि, स्लॉट अमान्य हो सकता है. MerchantId या serviceId. स्लॉट सर्व करने लायक बनाने के लिए, कृपया जोड़ें आरटीयू या फ़ीड के ज़रिए व्यापारी/कंपनी/सेवा मौजूद नहीं है.
  3. सभी अपडेट फ़ंक्शन में, पैरामीटर 'updateMask' FieldMask फ़ॉर्मैट का इस्तेमाल करें. इससे फ़ील्ड अपडेट किए जाने वाले फ़ील्ड की जानकारी मिलती है. यह एपीआई सिर्फ़ मास्क में बताए गए फ़ील्ड की वैल्यू बदलने की ज़रूरत है और दूसरों को अनछुई छोड़ देता है. अगर आपने गलत updatedMask स्ट्रिंग पास की है, अपडेट लागू नहीं होगा. अगर अपडेट करने पर फ़ील्ड मास्क मौजूद नहीं है, तो कार्रवाई सभी फ़ील्ड पर लागू होती है (जैसे कि सभी फ़ील्ड के फ़ील्ड मास्क में तय किया गया है). इसलिए यदि आप सभी फ़ील्ड अपडेट करना चाहते हैं, तो बस updatedMask खाली है.
  4. अगर किसी फ़ील्ड की वैल्यू शून्य है, तो उसे जवाब में नहीं दिखाया जाता.