$darkmode
Qore GoogleDataProvider Module Reference 1.0
GoogleDataProvider.qc.dox.h
1 // -*- mode: c++; indent-tabs-mode: nil -*-
3 
26 namespace GoogleDataProvider {
29 
30 public:
32  const ProviderInfo = <DataProviderInfo>{
33  "type": "GoogleDataProvider",
34  "supports_children": True,
35  "constructor_options": ConstructorOptions,
36  "children_can_support_apis": True,
37  };
38 
40  const ConstructorOptions = {
41  "restclient": <DataProviderOptionInfo>{
42  "type": AbstractDataProviderType::get(new Type("GoogleRestClient")),
43  "desc": "The GoogleRestClient object",
44  },
45  "restclient_options": <DataProviderOptionInfo>{
46  "type": AbstractDataProviderTypeMap."*hash",
47  "desc": "Options to the GoogleRestClient constructor; only used if a GoogleRestClient object is "
48  "created for a call",
49  },
50  "oauth2_client_id": <DataProviderOptionInfo>{
51  "type": AbstractDataProviderTypeMap."*string",
52  "desc": "The OAuth2 client ID",
53  },
54  "oauth2_client_secret": <DataProviderOptionInfo>{
55  "type": AbstractDataProviderTypeMap."*string",
56  "desc": "The OAuth2 client secret",
57  },
58  "oauth2_refresh_token": <DataProviderOptionInfo>{
59  "type": AbstractDataProviderTypeMap."*string",
60  "desc": "The OAuth2 refresh token, if known",
61  },
62  "token": <DataProviderOptionInfo>{
63  "type": AbstractDataProviderTypeMap."*string",
64  "desc": "The OAuth2 token, if known",
65  },
66  };
67 
68 protected:
69  const ChildMap = {
70  "calendar": Class::forName("GoogleDataProvider::GoogleCalendarBaseDataProvider"),
71  };
72 
73 public:
74 
76  constructor(*hash<auto> options);
77 
78 
80  constructor(GoogleRestClient rest) ;
81 
82 
84  static GoogleRestClient::GoogleRestClient getRestConnection(*hash<auto> options);
85 
87  string getName();
88 
89 
91  *string getDesc();
92 
93 
95  *list<hash<DataProvider::DataProviderSummaryInfo>> getChildProviderSummaryInfo();
96 
97 
99 
101 protected:
102  *list<string> getChildProviderNamesImpl();
103 public:
104 
105 
107 
111 protected:
112  *DataProvider::AbstractDataProvider getChildProviderImpl(string name);
113 public:
114 
115 
117 protected:
118  hash<DataProvider::DataProviderInfo> getStaticInfoImpl();
119 public:
120 
121 };
122 
125 
127 const SoftBoolDataProviderStringType = AbstractDataProviderType::get(SoftBoolStringType);
128 
130 class SoftBoolStringType : public Qore::Reflection::Type {
131 
132 public:
135 
136 
138  auto acceptsValue(auto value);
139 
140 
143 
144 };
145 
148 
150 class SoftTimestampDataProviderStringType : public DataProvider::QoreSoftStringOrNothingDataType {
151 
152 public:
155 
156 
158  auto acceptsValue(auto value);
159 
160 };
161 
164 
166 class SoftDateDataProviderStringType : public DataProvider::QoreSoftStringOrNothingDataType {
167 
168 public:
171 
172 
174  auto acceptsValue(auto value);
175 
176 };
177 };
The Google data provider base class.
Definition: GoogleDataProviderBase.qc.dox.h:28
string getName()
Returns the data provider name.
hash< DataProvider::DataProviderInfo > getStaticInfoImpl()
Returns data provider static info.
*DataProvider::AbstractDataProvider getChildProviderImpl(string name)
Returns the given child provider or NOTHING if the given child is unknown.
constructor(*hash< auto > options)
Creates the object from constructor options.
*list< string > getChildProviderNamesImpl()
Returns a list of child data provider names, if any.
*string getDesc()
Returns the data provider description.
static GoogleRestClient::GoogleRestClient getRestConnection(*hash< auto > options)
Returns a GoogleRestClient connection from the options.
constructor(GoogleRestClient rest)
Creates the object from a GoogleRestClient.
*list< hash< DataProvider::DataProviderSummaryInfo > > getChildProviderSummaryInfo()
Return data provider summary info.
Boolean string type.
Definition: GoogleDataProvider.qc.dox.h:130
auto getDefaultValue()
Returns the default value for the type or NOTHING if the type has no default value.
auto acceptsValue(auto value)
Returns the value after any conversions by the type.
Date string type.
Definition: GoogleDataProvider.qc.dox.h:166
auto acceptsValue(auto value)
Returns the value after any conversions by the type.
Timestamp string type.
Definition: GoogleDataProvider.qc.dox.h:150
auto acceptsValue(auto value)
Returns the value after any conversions by the type.
const True
Qore GoogleDataProvider module definition.
Definition: GoogleCalendarBaseDataProvider.qc.dox.h:26
const SoftDateDataProviderStringType
Data provider type for timestamps in API arguments.
Definition: GoogleDataProvider.qc.dox.h:163
const SoftTimestampDataProviderStringType
Data provider type for timestamps in API arguments.
Definition: GoogleDataProvider.qc.dox.h:147
const SoftBoolDataProviderStringType
Boolean data provider string type for query parameters.
Definition: GoogleDataProvider.qc.dox.h:127
const SoftBoolStringType
Boolean string type for query parameters.
Definition: GoogleDataProvider.qc.dox.h:124