30 #ifndef GOOGLE_YOUTUBE_API_PLAYLIST_H_ 31 #define GOOGLE_YOUTUBE_API_PLAYLIST_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/playlist_content_details.h" 39 #include "google/youtube_api/playlist_localization.h" 40 #include "google/youtube_api/playlist_player.h" 41 #include "google/youtube_api/playlist_snippet.h" 42 #include "google/youtube_api/playlist_status.h" 89 explicit Playlist(
const Json::Value& storage);
96 explicit Playlist(Json::Value* storage);
109 return StringPiece(
"google_youtube_api::Playlist");
118 return Storage().isMember(
"contentDetails");
125 MutableStorage()->removeMember(
"contentDetails");
151 return Storage().isMember(
"etag");
158 MutableStorage()->removeMember(
"etag");
166 const Json::Value& v = Storage(
"etag");
167 if (v == Json::Value::null)
return StringPiece(
"");
168 return StringPiece(v.asCString());
179 *MutableStorage(
"etag") = value.data();
188 return Storage().isMember(
"id");
195 MutableStorage()->removeMember(
"id");
203 const Json::Value& v = Storage(
"id");
204 if (v == Json::Value::null)
return StringPiece(
"");
205 return StringPiece(v.asCString());
216 *MutableStorage(
"id") = value.data();
225 return Storage().isMember(
"kind");
232 MutableStorage()->removeMember(
"kind");
240 const Json::Value& v = Storage(
"kind");
241 if (v == Json::Value::null)
return StringPiece(
"");
242 return StringPiece(v.asCString());
254 *MutableStorage(
"kind") = value.data();
263 return Storage().isMember(
"localizations");
270 MutableStorage()->removeMember(
"localizations");
277 const client::JsonCppAssociativeArray<PlaylistLocalization > get_localizations()
const;
287 client::JsonCppAssociativeArray<PlaylistLocalization > mutable_localizations();
295 return Storage().isMember(
"player");
302 MutableStorage()->removeMember(
"player");
327 return Storage().isMember(
"snippet");
334 MutableStorage()->removeMember(
"snippet");
359 return Storage().isMember(
"status");
366 MutableStorage()->removeMember(
"status");
388 #endif // GOOGLE_YOUTUBE_API_PLAYLIST_H_ Definition: access_policy.cc:40
bool has_etag() const
Definition: playlist.h:150
Definition: playlist_snippet.h:54
const StringPiece get_id() const
Definition: playlist.h:202
Definition: playlist_player.h:50
void clear_etag()
Definition: playlist.h:157
void clear_kind()
Definition: playlist.h:231
bool has_player() const
Definition: playlist.h:294
Definition: playlist_content_details.h:50
const StringPiece get_etag() const
Definition: playlist.h:165
void clear_id()
Definition: playlist.h:194
void clear_status()
Definition: playlist.h:365
void set_etag(const StringPiece &value)
Definition: playlist.h:178
bool has_snippet() const
Definition: playlist.h:326
Definition: playlist.h:75
Definition: access_policy.h:38
bool has_localizations() const
Definition: playlist.h:262
void clear_snippet()
Definition: playlist.h:333
void set_kind(const StringPiece &value)
Definition: playlist.h:253
void set_id(const StringPiece &value)
Definition: playlist.h:215
bool has_id() const
Definition: playlist.h:187
const StringPiece GetTypeName() const
Definition: playlist.h:108
bool has_status() const
Definition: playlist.h:358
const StringPiece get_kind() const
Definition: playlist.h:239
Definition: playlist_status.h:50
void clear_content_details()
Definition: playlist.h:124
bool has_content_details() const
Definition: playlist.h:117
bool has_kind() const
Definition: playlist.h:224
void clear_localizations()
Definition: playlist.h:269
void clear_player()
Definition: playlist.h:301