classroom  v1
course_work.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-03-13, 00:00:47 UTC
18 // C++ generator version: 0.1.4
19 
20 // ----------------------------------------------------------------------------
21 // NOTE: This file is generated from Google APIs Discovery Service.
22 // Service:
23 // Google Classroom API (classroom/v1)
24 // Generated from:
25 // Version: v1
26 // Revision: 386
27 // Generated by:
28 // Tool: google-apis-code-generator 1.5.1
29 // C++: 0.1.4
30 #ifndef GOOGLE_CLASSROOM_API_COURSE_WORK_H_
31 #define GOOGLE_CLASSROOM_API_COURSE_WORK_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/classroom_api/assignment.h"
39 #include "google/classroom_api/date.h"
40 #include "google/classroom_api/individual_students_options.h"
41 #include "google/classroom_api/material.h"
42 #include "google/classroom_api/multiple_choice_question.h"
43 #include "google/classroom_api/time_of_day.h"
44 
45 namespace Json {
46 class Value;
47 } // namespace Json
48 
49 namespace google_classroom_api {
50 using namespace googleapis;
51 
57 class CourseWork : public client::JsonCppData {
58  public:
64  static CourseWork* New();
65 
71  explicit CourseWork(const Json::Value& storage);
72 
78  explicit CourseWork(Json::Value* storage);
79 
83  virtual ~CourseWork();
84 
90  const StringPiece GetTypeName() const {
91  return StringPiece("google_classroom_api::CourseWork");
92  }
93 
99  bool has_alternate_link() const {
100  return Storage().isMember("alternateLink");
101  }
102 
107  MutableStorage()->removeMember("alternateLink");
108  }
109 
110 
114  const StringPiece get_alternate_link() const {
115  const Json::Value& v = Storage("alternateLink");
116  if (v == Json::Value::null) return StringPiece("");
117  return StringPiece(v.asCString());
118  }
119 
130  void set_alternate_link(const StringPiece& value) {
131  *MutableStorage("alternateLink") = value.data();
132  }
133 
139  bool has_assignee_mode() const {
140  return Storage().isMember("assigneeMode");
141  }
142 
147  MutableStorage()->removeMember("assigneeMode");
148  }
149 
150 
154  const StringPiece get_assignee_mode() const {
155  const Json::Value& v = Storage("assigneeMode");
156  if (v == Json::Value::null) return StringPiece("");
157  return StringPiece(v.asCString());
158  }
159 
168  void set_assignee_mode(const StringPiece& value) {
169  *MutableStorage("assigneeMode") = value.data();
170  }
171 
177  bool has_assignment() const {
178  return Storage().isMember("assignment");
179  }
180 
185  MutableStorage()->removeMember("assignment");
186  }
187 
188 
192  const Assignment get_assignment() const;
193 
205  Assignment mutable_assignment();
206 
214  return Storage().isMember("associatedWithDeveloper");
215  }
216 
221  MutableStorage()->removeMember("associatedWithDeveloper");
222  }
223 
224 
229  const Json::Value& storage = Storage("associatedWithDeveloper");
230  return client::JsonValueToCppValueHelper<bool >(storage);
231  }
232 
246  void set_associated_with_developer(bool value) {
247  client::SetJsonValueFromCppValueHelper<bool >(
248  value, MutableStorage("associatedWithDeveloper"));
249  }
250 
256  bool has_course_id() const {
257  return Storage().isMember("courseId");
258  }
259 
264  MutableStorage()->removeMember("courseId");
265  }
266 
267 
271  const StringPiece get_course_id() const {
272  const Json::Value& v = Storage("courseId");
273  if (v == Json::Value::null) return StringPiece("");
274  return StringPiece(v.asCString());
275  }
276 
286  void set_course_id(const StringPiece& value) {
287  *MutableStorage("courseId") = value.data();
288  }
289 
295  bool has_creation_time() const {
296  return Storage().isMember("creationTime");
297  }
298 
303  MutableStorage()->removeMember("creationTime");
304  }
305 
306 
310  const StringPiece get_creation_time() const {
311  const Json::Value& v = Storage("creationTime");
312  if (v == Json::Value::null) return StringPiece("");
313  return StringPiece(v.asCString());
314  }
315 
325  void set_creation_time(const StringPiece& value) {
326  *MutableStorage("creationTime") = value.data();
327  }
328 
334  bool has_creator_user_id() const {
335  return Storage().isMember("creatorUserId");
336  }
337 
342  MutableStorage()->removeMember("creatorUserId");
343  }
344 
345 
349  const StringPiece get_creator_user_id() const {
350  const Json::Value& v = Storage("creatorUserId");
351  if (v == Json::Value::null) return StringPiece("");
352  return StringPiece(v.asCString());
353  }
354 
364  void set_creator_user_id(const StringPiece& value) {
365  *MutableStorage("creatorUserId") = value.data();
366  }
367 
373  bool has_description() const {
374  return Storage().isMember("description");
375  }
376 
381  MutableStorage()->removeMember("description");
382  }
383 
384 
388  const StringPiece get_description() const {
389  const Json::Value& v = Storage("description");
390  if (v == Json::Value::null) return StringPiece("");
391  return StringPiece(v.asCString());
392  }
393 
403  void set_description(const StringPiece& value) {
404  *MutableStorage("description") = value.data();
405  }
406 
412  bool has_due_date() const {
413  return Storage().isMember("dueDate");
414  }
415 
419  void clear_due_date() {
420  MutableStorage()->removeMember("dueDate");
421  }
422 
423 
427  const Date get_due_date() const;
428 
437  Date mutable_dueDate();
438 
444  bool has_due_time() const {
445  return Storage().isMember("dueTime");
446  }
447 
451  void clear_due_time() {
452  MutableStorage()->removeMember("dueTime");
453  }
454 
455 
459  const TimeOfDay get_due_time() const;
460 
470  TimeOfDay mutable_dueTime();
471 
477  bool has_id() const {
478  return Storage().isMember("id");
479  }
480 
484  void clear_id() {
485  MutableStorage()->removeMember("id");
486  }
487 
488 
492  const StringPiece get_id() const {
493  const Json::Value& v = Storage("id");
494  if (v == Json::Value::null) return StringPiece("");
495  return StringPiece(v.asCString());
496  }
497 
511  void set_id(const StringPiece& value) {
512  *MutableStorage("id") = value.data();
513  }
514 
523  return Storage().isMember("individualStudentsOptions");
524  }
525 
530  MutableStorage()->removeMember("individualStudentsOptions");
531  }
532 
533 
538  const IndividualStudentsOptions get_individual_students_options() const;
539 
551  IndividualStudentsOptions mutable_individualStudentsOptions();
552 
558  bool has_materials() const {
559  return Storage().isMember("materials");
560  }
561 
566  MutableStorage()->removeMember("materials");
567  }
568 
569 
573  const client::JsonCppArray<Material > get_materials() const;
574 
585  client::JsonCppArray<Material > mutable_materials();
586 
592  bool has_max_points() const {
593  return Storage().isMember("maxPoints");
594  }
595 
600  MutableStorage()->removeMember("maxPoints");
601  }
602 
603 
607  double get_max_points() const {
608  const Json::Value& storage = Storage("maxPoints");
609  return client::JsonValueToCppValueHelper<double >(storage);
610  }
611 
621  void set_max_points(double value) {
622  client::SetJsonValueFromCppValueHelper<double >(
623  value, MutableStorage("maxPoints"));
624  }
625 
633  return Storage().isMember("multipleChoiceQuestion");
634  }
635 
640  MutableStorage()->removeMember("multipleChoiceQuestion");
641  }
642 
643 
648  const MultipleChoiceQuestion get_multiple_choice_question() const;
649 
663  MultipleChoiceQuestion mutable_multipleChoiceQuestion();
664 
670  bool has_scheduled_time() const {
671  return Storage().isMember("scheduledTime");
672  }
673 
678  MutableStorage()->removeMember("scheduledTime");
679  }
680 
681 
685  const StringPiece get_scheduled_time() const {
686  const Json::Value& v = Storage("scheduledTime");
687  if (v == Json::Value::null) return StringPiece("");
688  return StringPiece(v.asCString());
689  }
690 
698  void set_scheduled_time(const StringPiece& value) {
699  *MutableStorage("scheduledTime") = value.data();
700  }
701 
707  bool has_state() const {
708  return Storage().isMember("state");
709  }
710 
714  void clear_state() {
715  MutableStorage()->removeMember("state");
716  }
717 
718 
722  const StringPiece get_state() const {
723  const Json::Value& v = Storage("state");
724  if (v == Json::Value::null) return StringPiece("");
725  return StringPiece(v.asCString());
726  }
727 
736  void set_state(const StringPiece& value) {
737  *MutableStorage("state") = value.data();
738  }
739 
748  return Storage().isMember("submissionModificationMode");
749  }
750 
755  MutableStorage()->removeMember("submissionModificationMode");
756  }
757 
758 
762  const StringPiece get_submission_modification_mode() const {
763  const Json::Value& v = Storage("submissionModificationMode");
764  if (v == Json::Value::null) return StringPiece("");
765  return StringPiece(v.asCString());
766  }
767 
776  void set_submission_modification_mode(const StringPiece& value) {
777  *MutableStorage("submissionModificationMode") = value.data();
778  }
779 
785  bool has_title() const {
786  return Storage().isMember("title");
787  }
788 
792  void clear_title() {
793  MutableStorage()->removeMember("title");
794  }
795 
796 
800  const StringPiece get_title() const {
801  const Json::Value& v = Storage("title");
802  if (v == Json::Value::null) return StringPiece("");
803  return StringPiece(v.asCString());
804  }
805 
815  void set_title(const StringPiece& value) {
816  *MutableStorage("title") = value.data();
817  }
818 
824  bool has_topic_id() const {
825  return Storage().isMember("topicId");
826  }
827 
831  void clear_topic_id() {
832  MutableStorage()->removeMember("topicId");
833  }
834 
835 
839  const StringPiece get_topic_id() const {
840  const Json::Value& v = Storage("topicId");
841  if (v == Json::Value::null) return StringPiece("");
842  return StringPiece(v.asCString());
843  }
844 
853  void set_topic_id(const StringPiece& value) {
854  *MutableStorage("topicId") = value.data();
855  }
856 
862  bool has_update_time() const {
863  return Storage().isMember("updateTime");
864  }
865 
870  MutableStorage()->removeMember("updateTime");
871  }
872 
873 
877  const StringPiece get_update_time() const {
878  const Json::Value& v = Storage("updateTime");
879  if (v == Json::Value::null) return StringPiece("");
880  return StringPiece(v.asCString());
881  }
882 
892  void set_update_time(const StringPiece& value) {
893  *MutableStorage("updateTime") = value.data();
894  }
895 
901  bool has_work_type() const {
902  return Storage().isMember("workType");
903  }
904 
909  MutableStorage()->removeMember("workType");
910  }
911 
912 
916  const StringPiece get_work_type() const {
917  const Json::Value& v = Storage("workType");
918  if (v == Json::Value::null) return StringPiece("");
919  return StringPiece(v.asCString());
920  }
921 
931  void set_work_type(const StringPiece& value) {
932  *MutableStorage("workType") = value.data();
933  }
934 
935  private:
936  void operator=(const CourseWork&);
937 }; // CourseWork
938 } // namespace google_classroom_api
939 #endif // GOOGLE_CLASSROOM_API_COURSE_WORK_H_
bool has_individual_students_options() const
Definition: course_work.h:522
bool has_creation_time() const
Definition: course_work.h:295
bool has_title() const
Definition: course_work.h:785
void clear_course_id()
Definition: course_work.h:263
const StringPiece get_course_id() const
Definition: course_work.h:271
bool has_state() const
Definition: course_work.h:707
const StringPiece get_scheduled_time() const
Definition: course_work.h:685
bool has_update_time() const
Definition: course_work.h:862
void set_scheduled_time(const StringPiece &value)
Definition: course_work.h:698
Definition: assignment.h:51
bool has_associated_with_developer() const
Definition: course_work.h:213
bool has_id() const
Definition: course_work.h:477
const StringPiece get_title() const
Definition: course_work.h:800
void clear_description()
Definition: course_work.h:380
void clear_assignee_mode()
Definition: course_work.h:146
void clear_topic_id()
Definition: course_work.h:831
void set_creation_time(const StringPiece &value)
Definition: course_work.h:325
void clear_associated_with_developer()
Definition: course_work.h:220
Definition: course_work.h:57
const StringPiece get_state() const
Definition: course_work.h:722
bool has_max_points() const
Definition: course_work.h:592
void set_course_id(const StringPiece &value)
Definition: course_work.h:286
bool has_scheduled_time() const
Definition: course_work.h:670
void clear_materials()
Definition: course_work.h:565
bool has_due_date() const
Definition: course_work.h:412
void set_title(const StringPiece &value)
Definition: course_work.h:815
bool has_due_time() const
Definition: course_work.h:444
const StringPiece get_description() const
Definition: course_work.h:388
const StringPiece get_creation_time() const
Definition: course_work.h:310
void clear_alternate_link()
Definition: course_work.h:106
void clear_max_points()
Definition: course_work.h:599
Definition: date.h:59
bool has_topic_id() const
Definition: course_work.h:824
const StringPiece get_work_type() const
Definition: course_work.h:916
const StringPiece get_creator_user_id() const
Definition: course_work.h:349
Definition: individual_students_options.h:51
void set_description(const StringPiece &value)
Definition: course_work.h:403
bool has_alternate_link() const
Definition: course_work.h:99
void set_topic_id(const StringPiece &value)
Definition: course_work.h:853
void clear_creation_time()
Definition: course_work.h:302
void clear_due_date()
Definition: course_work.h:419
void clear_assignment()
Definition: course_work.h:184
void clear_scheduled_time()
Definition: course_work.h:677
void set_alternate_link(const StringPiece &value)
Definition: course_work.h:130
bool has_assignee_mode() const
Definition: course_work.h:139
void clear_work_type()
Definition: course_work.h:908
const StringPiece get_update_time() const
Definition: course_work.h:877
const StringPiece get_submission_modification_mode() const
Definition: course_work.h:762
bool has_course_id() const
Definition: course_work.h:256
const StringPiece get_alternate_link() const
Definition: course_work.h:114
void clear_id()
Definition: course_work.h:484
void clear_state()
Definition: course_work.h:714
bool has_multiple_choice_question() const
Definition: course_work.h:632
bool get_associated_with_developer() const
Definition: course_work.h:228
Definition: announcement.h:41
Definition: multiple_choice_question.h:50
void clear_title()
Definition: course_work.h:792
const StringPiece get_topic_id() const
Definition: course_work.h:839
const StringPiece GetTypeName() const
Definition: course_work.h:90
const StringPiece get_id() const
Definition: course_work.h:492
bool has_creator_user_id() const
Definition: course_work.h:334
void set_assignee_mode(const StringPiece &value)
Definition: course_work.h:168
void set_id(const StringPiece &value)
Definition: course_work.h:511
void set_creator_user_id(const StringPiece &value)
Definition: course_work.h:364
bool has_description() const
Definition: course_work.h:373
bool has_materials() const
Definition: course_work.h:558
Definition: time_of_day.h:52
void clear_due_time()
Definition: course_work.h:451
void set_max_points(double value)
Definition: course_work.h:621
Definition: announcement.cc:43
void set_associated_with_developer(bool value)
Definition: course_work.h:246
void clear_creator_user_id()
Definition: course_work.h:341
void set_work_type(const StringPiece &value)
Definition: course_work.h:931
double get_max_points() const
Definition: course_work.h:607
void set_update_time(const StringPiece &value)
Definition: course_work.h:892
bool has_work_type() const
Definition: course_work.h:901
void clear_individual_students_options()
Definition: course_work.h:529
void set_state(const StringPiece &value)
Definition: course_work.h:736
void clear_submission_modification_mode()
Definition: course_work.h:754
const StringPiece get_assignee_mode() const
Definition: course_work.h:154
void set_submission_modification_mode(const StringPiece &value)
Definition: course_work.h:776
bool has_submission_modification_mode() const
Definition: course_work.h:747
void clear_multiple_choice_question()
Definition: course_work.h:639
void clear_update_time()
Definition: course_work.h:869
bool has_assignment() const
Definition: course_work.h:177