youtube  v3
video.h
1 // Copyright 2010 Google Inc.
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License"); you may not
4 // use this file except in compliance with the License. You may obtain a copy of
5 // the License at
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11 // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12 // License for the specific language governing permissions and limitations under
13 // the License.
14 
15 // This code was generated by google-apis-code-generator 1.5.1
16 // Build date: 2018-10-08 17:45:39 UTC
17 // on: 2020-02-27, 01:46:08 UTC
18 // C++ generator version: 0.1.4
19 
20 // ----------------------------------------------------------------------------
21 // NOTE: This file is generated from Google APIs Discovery Service.
22 // Service:
23 // YouTube Data API (youtube/v3)
24 // Generated from:
25 // Version: v3
26 // Revision: 222
27 // Generated by:
28 // Tool: google-apis-code-generator 1.5.1
29 // C++: 0.1.4
30 #ifndef GOOGLE_YOUTUBE_API_VIDEO_H_
31 #define GOOGLE_YOUTUBE_API_VIDEO_H_
32 
33 #include <string>
34 #include "googleapis/base/macros.h"
35 #include "googleapis/client/data/jsoncpp_data.h"
36 #include "googleapis/strings/stringpiece.h"
37 
38 #include "google/youtube_api/video_age_gating.h"
39 #include "google/youtube_api/video_content_details.h"
40 #include "google/youtube_api/video_file_details.h"
41 #include "google/youtube_api/video_live_streaming_details.h"
42 #include "google/youtube_api/video_localization.h"
43 #include "google/youtube_api/video_monetization_details.h"
44 #include "google/youtube_api/video_player.h"
45 #include "google/youtube_api/video_processing_details.h"
46 #include "google/youtube_api/video_project_details.h"
47 #include "google/youtube_api/video_recording_details.h"
48 #include "google/youtube_api/video_snippet.h"
49 #include "google/youtube_api/video_statistics.h"
50 #include "google/youtube_api/video_status.h"
51 #include "google/youtube_api/video_suggestions.h"
52 #include "google/youtube_api/video_topic_details.h"
53 
54 namespace Json {
55 class Value;
56 } // namespace Json
57 
58 namespace google_youtube_api {
59 using namespace googleapis;
60 
66 class Video : public client::JsonCppData {
67  public:
73  static Video* New();
74 
80  explicit Video(const Json::Value& storage);
81 
87  explicit Video(Json::Value* storage);
88 
92  virtual ~Video();
93 
99  const StringPiece GetTypeName() const {
100  return StringPiece("google_youtube_api::Video");
101  }
102 
108  bool has_age_gating() const {
109  return Storage().isMember("ageGating");
110  }
111 
116  MutableStorage()->removeMember("ageGating");
117  }
118 
119 
123  const VideoAgeGating get_age_gating() const;
124 
134  VideoAgeGating mutable_ageGating();
135 
141  bool has_content_details() const {
142  return Storage().isMember("contentDetails");
143  }
144 
149  MutableStorage()->removeMember("contentDetails");
150  }
151 
152 
157  const VideoContentDetails get_content_details() const;
158 
168  VideoContentDetails mutable_contentDetails();
169 
175  bool has_etag() const {
176  return Storage().isMember("etag");
177  }
178 
182  void clear_etag() {
183  MutableStorage()->removeMember("etag");
184  }
185 
186 
190  const StringPiece get_etag() const {
191  const Json::Value& v = Storage("etag");
192  if (v == Json::Value::null) return StringPiece("");
193  return StringPiece(v.asCString());
194  }
195 
203  void set_etag(const StringPiece& value) {
204  *MutableStorage("etag") = value.data();
205  }
206 
212  bool has_file_details() const {
213  return Storage().isMember("fileDetails");
214  }
215 
220  MutableStorage()->removeMember("fileDetails");
221  }
222 
223 
227  const VideoFileDetails get_file_details() const;
228 
240  VideoFileDetails mutable_fileDetails();
241 
247  bool has_id() const {
248  return Storage().isMember("id");
249  }
250 
254  void clear_id() {
255  MutableStorage()->removeMember("id");
256  }
257 
258 
262  const StringPiece get_id() const {
263  const Json::Value& v = Storage("id");
264  if (v == Json::Value::null) return StringPiece("");
265  return StringPiece(v.asCString());
266  }
267 
275  void set_id(const StringPiece& value) {
276  *MutableStorage("id") = value.data();
277  }
278 
284  bool has_kind() const {
285  return Storage().isMember("kind");
286  }
287 
291  void clear_kind() {
292  MutableStorage()->removeMember("kind");
293  }
294 
295 
299  const StringPiece get_kind() const {
300  const Json::Value& v = Storage("kind");
301  if (v == Json::Value::null) return StringPiece("");
302  return StringPiece(v.asCString());
303  }
304 
313  void set_kind(const StringPiece& value) {
314  *MutableStorage("kind") = value.data();
315  }
316 
323  return Storage().isMember("liveStreamingDetails");
324  }
325 
330  MutableStorage()->removeMember("liveStreamingDetails");
331  }
332 
333 
338  const VideoLiveStreamingDetails get_live_streaming_details() const;
339 
350  VideoLiveStreamingDetails mutable_liveStreamingDetails();
351 
357  bool has_localizations() const {
358  return Storage().isMember("localizations");
359  }
360 
365  MutableStorage()->removeMember("localizations");
366  }
367 
368 
372  const client::JsonCppAssociativeArray<VideoLocalization > get_localizations() const;
373 
382  client::JsonCppAssociativeArray<VideoLocalization > mutable_localizations();
383 
390  return Storage().isMember("monetizationDetails");
391  }
392 
397  MutableStorage()->removeMember("monetizationDetails");
398  }
399 
400 
405  const VideoMonetizationDetails get_monetization_details() const;
406 
416  VideoMonetizationDetails mutable_monetizationDetails();
417 
423  bool has_player() const {
424  return Storage().isMember("player");
425  }
426 
430  void clear_player() {
431  MutableStorage()->removeMember("player");
432  }
433 
434 
438  const VideoPlayer get_player() const;
439 
448  VideoPlayer mutable_player();
449 
455  bool has_processing_details() const {
456  return Storage().isMember("processingDetails");
457  }
458 
463  MutableStorage()->removeMember("processingDetails");
464  }
465 
466 
471  const VideoProcessingDetails get_processing_details() const;
472 
490  VideoProcessingDetails mutable_processingDetails();
491 
497  bool has_project_details() const {
498  return Storage().isMember("projectDetails");
499  }
500 
505  MutableStorage()->removeMember("projectDetails");
506  }
507 
508 
513  const VideoProjectDetails get_project_details() const;
514 
524  VideoProjectDetails mutable_projectDetails();
525 
531  bool has_recording_details() const {
532  return Storage().isMember("recordingDetails");
533  }
534 
539  MutableStorage()->removeMember("recordingDetails");
540  }
541 
542 
547  const VideoRecordingDetails get_recording_details() const;
548 
558  VideoRecordingDetails mutable_recordingDetails();
559 
565  bool has_snippet() const {
566  return Storage().isMember("snippet");
567  }
568 
572  void clear_snippet() {
573  MutableStorage()->removeMember("snippet");
574  }
575 
576 
580  const VideoSnippet get_snippet() const;
581 
590  VideoSnippet mutable_snippet();
591 
597  bool has_statistics() const {
598  return Storage().isMember("statistics");
599  }
600 
605  MutableStorage()->removeMember("statistics");
606  }
607 
608 
612  const VideoStatistics get_statistics() const;
613 
622  VideoStatistics mutable_statistics();
623 
629  bool has_status() const {
630  return Storage().isMember("status");
631  }
632 
636  void clear_status() {
637  MutableStorage()->removeMember("status");
638  }
639 
640 
644  const VideoStatus get_status() const;
645 
654  VideoStatus mutable_status();
655 
661  bool has_suggestions() const {
662  return Storage().isMember("suggestions");
663  }
664 
669  MutableStorage()->removeMember("suggestions");
670  }
671 
672 
676  const VideoSuggestions get_suggestions() const;
677 
688  VideoSuggestions mutable_suggestions();
689 
695  bool has_topic_details() const {
696  return Storage().isMember("topicDetails");
697  }
698 
703  MutableStorage()->removeMember("topicDetails");
704  }
705 
706 
710  const VideoTopicDetails get_topic_details() const;
711 
721  VideoTopicDetails mutable_topicDetails();
722 
723  private:
724  void operator=(const Video&);
725 }; // Video
726 } // namespace google_youtube_api
727 #endif // GOOGLE_YOUTUBE_API_VIDEO_H_
bool has_live_streaming_details() const
Definition: video.h:322
Definition: video_monetization_details.h:51
void clear_player()
Definition: video.h:430
bool has_recording_details() const
Definition: video.h:531
Definition: video_content_details.h:54
bool has_project_details() const
Definition: video.h:497
Definition: access_policy.cc:40
Definition: video_topic_details.h:50
void clear_recording_details()
Definition: video.h:538
void clear_status()
Definition: video.h:636
void clear_age_gating()
Definition: video.h:115
Definition: video_age_gating.h:50
void clear_kind()
Definition: video.h:291
const StringPiece get_etag() const
Definition: video.h:190
Definition: video_statistics.h:51
Definition: video.h:66
Definition: video_player.h:51
bool has_localizations() const
Definition: video.h:357
bool has_content_details() const
Definition: video.h:141
void set_etag(const StringPiece &value)
Definition: video.h:203
Definition: video_snippet.h:55
void clear_id()
Definition: video.h:254
bool has_statistics() const
Definition: video.h:597
void clear_live_streaming_details()
Definition: video.h:329
void clear_statistics()
Definition: video.h:604
void set_id(const StringPiece &value)
Definition: video.h:275
void clear_monetization_details()
Definition: video.h:396
void clear_localizations()
Definition: video.h:364
bool has_age_gating() const
Definition: video.h:108
bool has_etag() const
Definition: video.h:175
Definition: video_live_streaming_details.h:52
const StringPiece get_id() const
Definition: video.h:262
bool has_file_details() const
Definition: video.h:212
void clear_file_details()
Definition: video.h:219
void clear_etag()
Definition: video.h:182
bool has_topic_details() const
Definition: video.h:695
bool has_suggestions() const
Definition: video.h:661
const StringPiece GetTypeName() const
Definition: video.h:99
const StringPiece get_kind() const
Definition: video.h:299
Definition: access_policy.h:38
void clear_topic_details()
Definition: video.h:702
void clear_snippet()
Definition: video.h:572
bool has_kind() const
Definition: video.h:284
void clear_content_details()
Definition: video.h:148
Definition: video_file_details.h:56
bool has_id() const
Definition: video.h:247
Definition: video_suggestions.h:53
Definition: video_processing_details.h:53
void set_kind(const StringPiece &value)
Definition: video.h:313
bool has_player() const
Definition: video.h:423
void clear_suggestions()
Definition: video.h:668
void clear_processing_details()
Definition: video.h:462
bool has_monetization_details() const
Definition: video.h:389
Definition: video_project_details.h:50
bool has_processing_details() const
Definition: video.h:455
void clear_project_details()
Definition: video.h:504
bool has_status() const
Definition: video.h:629
bool has_snippet() const
Definition: video.h:565
Definition: video_status.h:51
Definition: video_recording_details.h:53