Mengambil referensi ke class proto saat menggunakan API mengharuskan Anda memiliki pemahaman intrinsik tentang API atau sering mencari dokumentasi referensi proto untuk jalur namespace yang tepat.
ProtoLookupUtil
Metode utilitas lookup di GoogleAdsClient (yang didukung oleh
Factories dan ServiceLookup, menggantikan class
ProtoLookupUtil lama) memungkinkan Anda mencari dan membuat instance layanan,
operasi, enumerasi, dan resource tanpa harus melacak nomor versi API
dan namespace modul. Secara default, metode ini menggunakan versi API tertinggi yang didukung oleh gem yang diinstal (V25 dalam rilis terbaru, dengan rilis API minor seperti v25.1 menggunakan modul versi utama V25), atau Anda dapat menentukan awalan versi eksplisit (seperti v25) pada panggilan lookup.
Tanpa utilitas penelusuran, Anda membuat instance resource kampanye langsung dari namespace yang diberi versi:
campaign =
Google::Ads::GoogleAds::V25::Resources::Campaign.new
Dengan metode pencarian klien, Anda dapat membuat instance resource langsung dari klien:
campaign = client.resource.campaign
Saat mengambil resource, layanan, atau operasi, instance entity tersebut akan ditampilkan:
# Instantiate an operation
operation = client.operation.campaign
Pencarian layanan
Gunakan metode client.service untuk mengambil klien layanan, meskipun Anda tidak menggunakan utilitas ini untuk entity lain. client.service secara otomatis mengonfigurasi kredensial autentikasi dan setelan transportasi Anda di klien layanan yang ditampilkan:
campaign_service = client.service.campaign
Pencarian enumerasi
Untuk kolom enum pada pesan protobuf, tetapkan simbol Ruby secara langsung, bukan mencari modul enumerasi:
campaign.status = :PAUSED
Untuk memeriksa atau melakukan iterasi pada semua simbol yang valid untuk enumerasi saat runtime, gunakan
client.enum, yang menampilkan Google::Protobuf::EnumDescriptor untuk
enum tersebut:
status_enum = client.enum.campaign_status
status_enum.each { |status| p status }