লুক-আপ ইউটিলিটি

API ব্যবহার করার সময় প্রোটো ক্লাসের রেফারেন্স ফেচ করতে হলে, আপনাকে হয় API সম্পর্কে খুব ভালোভাবে জানতে হবে অথবা সঠিক নেমস্পেস পাথের জন্য প্রোটো রেফারেন্স ডকুমেন্টেশন ঘন ঘন দেখতে হবে।

ProtoLookupUtil

GoogleAdsClient-এ লুকআপ ইউটিলিটি পদ্ধতি (ফ্যাক্টরি এবং ServiceLookup দ্বারা সমর্থিত, যা পুরনো ProtoLookupUtil ক্লাসকে প্রতিস্থাপন করে) আপনাকে API ভার্সন নম্বর এবং মডিউল নেমস্পেস ট্র্যাক না করেই পরিষেবা, অপারেশন, এনিউমারেশন এবং রিসোর্সের ইনস্ট্যান্স খুঁজতে এবং তৈরি করতে দেয়। ডিফল্ট হিসেবে, এই পদ্ধতিগুলি আপনার ইনস্টল করা জেম দ্বারা সমর্থিত সর্বোচ্চ API ভার্সন ব্যবহার করে (লেটেস্ট রিলিজে V26, যেখানে v25.1-এর মতো মাইনর API রিলিজগুলি তাদের মেজর ভার্সন মডিউল V25 ব্যবহার করে), অথবা আপনি লুকআপ কলে একটি নির্দিষ্ট ভার্সন প্রিফিক্স (যেমন 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 }