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

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

ProtoLookupUtil

GoogleAdsClient-এ (যা ফ্যাক্টরি ও ServiceLookup দ্বারা পরিচালিত হয়, যা পুরনো ProtoLookupUtil ক্লাসকে প্রতিস্থাপন করে) লুক-আপ ইউটিলিটি পদ্ধতি আপনাকে API ভার্সন নম্বর ও মডিউল নেমস্পেস ট্র্যাক না করেই পরিষেবা, অপারেশন, এনুমেরেশন ও রিসোর্সের ইনস্ট্যান্স লুক-আপ ও তৈরি করতে দেয়। সাধারণত, এই পদ্ধতিগুলি আপনার ইনস্টল করা জেমের সাথে কাজ করে এমন সবচেয়ে উন্নত API ভার্সন ব্যবহার করে (V25 লেটেস্ট রিলিজের মধ্যে, যেখানে v25.1-এর মতো মাইনর API রিলিজ তাদের মেজর ভার্সন মডিউল V25 ব্যবহার করে) অথবা আপনি লুক-আপ কলের মধ্যে একটি স্পষ্ট ভার্সন প্রিফিক্স (যেমন v25) নির্দিষ্ট করতে পারেন।

লুক-আপ ইউটিলিটি ছাড়া, আপনি সরাসরি এর ভার্সন করা নেমস্পেস থেকে ক্যাম্পেন রিসোর্স ইনস্ট্যানশিয়েট করেন:

campaign =
  Google::Ads::GoogleAds::V25::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 }