30 #ifndef GOOGLE_YOUTUBE_API_CHANNEL_H_ 31 #define GOOGLE_YOUTUBE_API_CHANNEL_H_ 34 #include "googleapis/base/macros.h" 35 #include "googleapis/client/data/jsoncpp_data.h" 36 #include "googleapis/strings/stringpiece.h" 38 #include "google/youtube_api/channel_audit_details.h" 39 #include "google/youtube_api/channel_branding_settings.h" 40 #include "google/youtube_api/channel_content_details.h" 41 #include "google/youtube_api/channel_content_owner_details.h" 42 #include "google/youtube_api/channel_conversion_pings.h" 43 #include "google/youtube_api/channel_localization.h" 44 #include "google/youtube_api/channel_snippet.h" 45 #include "google/youtube_api/channel_statistics.h" 46 #include "google/youtube_api/channel_status.h" 47 #include "google/youtube_api/channel_topic_details.h" 48 #include "google/youtube_api/invideo_promotion.h" 62 class Channel :
public client::JsonCppData {
76 explicit Channel(
const Json::Value& storage);
83 explicit Channel(Json::Value* storage);
96 return StringPiece(
"google_youtube_api::Channel");
105 return Storage().isMember(
"auditDetails");
112 MutableStorage()->removeMember(
"auditDetails");
138 return Storage().isMember(
"brandingSettings");
145 MutableStorage()->removeMember(
"brandingSettings");
172 return Storage().isMember(
"contentDetails");
179 MutableStorage()->removeMember(
"contentDetails");
206 return Storage().isMember(
"contentOwnerDetails");
213 MutableStorage()->removeMember(
"contentOwnerDetails");
240 return Storage().isMember(
"conversionPings");
247 MutableStorage()->removeMember(
"conversionPings");
274 return Storage().isMember(
"etag");
281 MutableStorage()->removeMember(
"etag");
289 const Json::Value& v = Storage(
"etag");
290 if (v == Json::Value::null)
return StringPiece(
"");
291 return StringPiece(v.asCString());
302 *MutableStorage(
"etag") = value.data();
311 return Storage().isMember(
"id");
318 MutableStorage()->removeMember(
"id");
326 const Json::Value& v = Storage(
"id");
327 if (v == Json::Value::null)
return StringPiece(
"");
328 return StringPiece(v.asCString());
339 *MutableStorage(
"id") = value.data();
348 return Storage().isMember(
"invideoPromotion");
355 MutableStorage()->removeMember(
"invideoPromotion");
382 return Storage().isMember(
"kind");
389 MutableStorage()->removeMember(
"kind");
397 const Json::Value& v = Storage(
"kind");
398 if (v == Json::Value::null)
return StringPiece(
"");
399 return StringPiece(v.asCString());
411 *MutableStorage(
"kind") = value.data();
420 return Storage().isMember(
"localizations");
427 MutableStorage()->removeMember(
"localizations");
434 const client::JsonCppAssociativeArray<ChannelLocalization > get_localizations()
const;
444 client::JsonCppAssociativeArray<ChannelLocalization > mutable_localizations();
452 return Storage().isMember(
"snippet");
459 MutableStorage()->removeMember(
"snippet");
484 return Storage().isMember(
"statistics");
491 MutableStorage()->removeMember(
"statistics");
516 return Storage().isMember(
"status");
523 MutableStorage()->removeMember(
"status");
548 return Storage().isMember(
"topicDetails");
555 MutableStorage()->removeMember(
"topicDetails");
576 void operator=(
const Channel&);
579 #endif // GOOGLE_YOUTUBE_API_CHANNEL_H_ void clear_statistics()
Definition: channel.h:490
Definition: channel_content_details.h:50
void clear_kind()
Definition: channel.h:388
bool has_etag() const
Definition: channel.h:273
bool has_branding_settings() const
Definition: channel.h:137
Definition: access_policy.cc:40
bool has_topic_details() const
Definition: channel.h:547
const StringPiece get_kind() const
Definition: channel.h:396
bool has_invideo_promotion() const
Definition: channel.h:347
void clear_localizations()
Definition: channel.h:426
bool has_kind() const
Definition: channel.h:381
void set_kind(const StringPiece &value)
Definition: channel.h:410
void set_etag(const StringPiece &value)
Definition: channel.h:301
void clear_branding_settings()
Definition: channel.h:144
void clear_content_owner_details()
Definition: channel.h:212
const StringPiece get_etag() const
Definition: channel.h:288
bool has_snippet() const
Definition: channel.h:451
Definition: channel_conversion_pings.h:52
void clear_content_details()
Definition: channel.h:178
Definition: channel_content_owner_details.h:52
Definition: channel_audit_details.h:50
void clear_etag()
Definition: channel.h:280
void clear_status()
Definition: channel.h:522
bool has_status() const
Definition: channel.h:515
bool has_content_owner_details() const
Definition: channel.h:205
void clear_audit_details()
Definition: channel.h:111
Definition: channel_snippet.h:54
Definition: channel_status.h:50
void clear_conversion_pings()
Definition: channel.h:246
bool has_localizations() const
Definition: channel.h:419
Definition: access_policy.h:38
Definition: channel_topic_details.h:50
void clear_invideo_promotion()
Definition: channel.h:354
void clear_snippet()
Definition: channel.h:458
bool has_conversion_pings() const
Definition: channel.h:239
Definition: channel_statistics.h:51
bool has_statistics() const
Definition: channel.h:483
bool has_content_details() const
Definition: channel.h:171
void clear_topic_details()
Definition: channel.h:554
bool has_id() const
Definition: channel.h:310
void set_id(const StringPiece &value)
Definition: channel.h:338
const StringPiece GetTypeName() const
Definition: channel.h:95
void clear_id()
Definition: channel.h:317
const StringPiece get_id() const
Definition: channel.h:325
Definition: channel_branding_settings.h:54
bool has_audit_details() const
Definition: channel.h:104