API ব্যবহার করার সময় প্রোটো ক্লাসের রেফারেন্স ফেচ করতে হলে, আপনাকে হয় API সম্পর্কে খুব ভালোভাবে জানতে হবে অথবা সঠিক নেমস্পেস পাথের জন্য প্রোটো রেফারেন্স ডকুমেন্টেশন ঘনঘন দেখতে হবে।
ProtoLookupUtil
GoogleAdsClient-এ লুকআপ ইউটিলিটি পদ্ধতি (ফ্যাক্টরি এবং ServiceLookup দ্বারা সমর্থিত, যা পুরনো
ProtoLookupUtil ক্লাসকে প্রতিস্থাপন করে) আপনাকে API ভার্সন নম্বর এবং মডিউল নেমস্পেস ট্র্যাক না করেই পরিষেবা,
অপারেশন, গণনা এবং রিসোর্সের ইনস্ট্যান্স খুঁজতে এবং তৈরি করতে দেয়। ডিফল্ট হিসেবে, এইসব পদ্ধতি আপনার ইনস্টল করা জেমের (লেটেস্ট রিলিজে V26, যেখানে v25.1-এর মতো মাইনর API রিলিজ তাদের মেজর ভার্সন মডিউল V25 ব্যবহার করে) মাধ্যমে কাজ করে এমন সর্বোচ্চ API ভার্সন ব্যবহার করে অথবা আপনি লুকআপ কলে একটি নির্দিষ্ট ভার্সন প্রিফিক্স (যেমন v26) উল্লেখ করতে পারেন।
লুকআপ ইউটিলিটি ছাড়া, আপনি সরাসরি এর ভার্সন করা নেমস্পেস থেকে ক্যাম্পেন রিসোর্স ইনস্ট্যান্টিয়েট করেন:
campaign =
Google::Ads::GoogleAds::V26::Resources::Campaign.new
ক্লায়েন্ট লুকআপ পদ্ধতির মাধ্যমে, আপনি সরাসরি ক্লায়েন্ট থেকে রিসোর্স ইনস্ট্যান্টিয়েট করতে পারবেন:
campaign = client.resource.campaign
কোনও রিসোর্স, পরিষেবা বা অপারেশন ফেচ করার সময়, সেই এন্টিটির একটি ইনস্ট্যান্স ফেরত পাঠানো হয়:
# Instantiate an operation
operation = client.operation.campaign
পরিষেবা লুকআপ
অন্যান্য এন্টিটির জন্য এই ইউটিলিটি ব্যবহার না করলেও, পরিষেবা ক্লায়েন্ট ফেচ করতে client.service পদ্ধতি ব্যবহার করুন। client.service অটোমেটিক আপনার যাচাইকরণ সংক্রান্ত ক্রেডেনশিয়াল এবং রিটার্ন করা পরিষেবা ক্লায়েন্টে ট্রান্সপোর্ট সেটিংস কনফিগার করে:
campaign_service = client.service.campaign
এনিউমারেশন লুকআপ
protobuf মেসেজে enum ফিল্ডের জন্য, এনুমেরেশন মডিউল লুক-আপ করার পরিবর্তে সরাসরি একটি Ruby সিম্বল অ্যাসাইন করুন:
campaign.status = :PAUSED
রানটাইমে কোনও এনুমেরেশনের জন্য সব বৈধ প্রতীক পরিদর্শন বা পুনরাবৃত্তি করতে, client.enum ব্যবহার করুন, যা সেই
enum-এর জন্য Google::Protobuf::EnumDescriptor রিটার্ন করে:
status_enum = client.enum.campaign_status
status_enum.each { |status| p status }