GPUdb C++ API  Version 7.0.19.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
create_external_table.h
Go to the documentation of this file.
1 /*
2  * This file was autogenerated by the GPUdb schema processor.
3  *
4  * DO NOT EDIT DIRECTLY.
5  */
6 #ifndef __CREATE_EXTERNAL_TABLE_H__
7 #define __CREATE_EXTERNAL_TABLE_H__
8 
9 namespace gpudb
10 {
11 
18  struct CreateExternalTableRequest
19  {
20 
26  CreateExternalTableRequest() :
27  tableName(std::string()),
28  filepaths(std::vector<std::string>()),
29  createTableOptions(std::map<std::string, std::string>()),
30  options(std::map<std::string, std::string>())
31  {
32  }
33 
155  CreateExternalTableRequest(const std::string& tableName_, const std::vector<std::string>& filepaths_, const std::map<std::string, std::string>& createTableOptions_, const std::map<std::string, std::string>& options_):
156  tableName( tableName_ ),
157  filepaths( filepaths_ ),
158  createTableOptions( createTableOptions_ ),
159  options( options_ )
160  {
161  }
162 
163  std::string tableName;
164  std::vector<std::string> filepaths;
165  std::map<std::string, std::string> createTableOptions;
166  std::map<std::string, std::string> options;
167  };
168 }
169 
174 namespace avro
175 {
176  template<> struct codec_traits<gpudb::CreateExternalTableRequest>
177  {
178  static void encode(Encoder& e, const gpudb::CreateExternalTableRequest& v)
179  {
180  ::avro::encode(e, v.tableName);
181  ::avro::encode(e, v.filepaths);
182  ::avro::encode(e, v.createTableOptions);
183  ::avro::encode(e, v.options);
184  }
185 
186  static void decode(Decoder& d, gpudb::CreateExternalTableRequest& v)
187  {
188  if (::avro::ResolvingDecoder *rd = dynamic_cast< ::avro::ResolvingDecoder*>(&d))
189  {
190  const std::vector<size_t> fo = rd->fieldOrder();
191 
192  for (std::vector<size_t>::const_iterator it = fo.begin(); it != fo.end(); ++it)
193  {
194  switch (*it)
195  {
196  case 0:
197  ::avro::decode(d, v.tableName);
198  break;
199 
200  case 1:
201  ::avro::decode(d, v.filepaths);
202  break;
203 
204  case 2:
205  ::avro::decode(d, v.createTableOptions);
206  break;
207 
208  case 3:
209  ::avro::decode(d, v.options);
210  break;
211 
212  default:
213  break;
214  }
215  }
216  }
217  else
218  {
219  ::avro::decode(d, v.tableName);
220  ::avro::decode(d, v.filepaths);
221  ::avro::decode(d, v.createTableOptions);
222  ::avro::decode(d, v.options);
223  }
224  }
225  };
226 }
227 
228 namespace gpudb
229 {
230 
237  struct CreateExternalTableResponse
238  {
239 
245  CreateExternalTableResponse() :
246  tableName(std::string()),
247  typeId(std::string()),
248  countInserted(int64_t()),
249  countSkipped(int64_t()),
250  countUpdated(int64_t()),
251  info(std::map<std::string, std::string>())
252  {
253  }
254 
255  std::string tableName;
256  std::string typeId;
257  int64_t countInserted;
258  int64_t countSkipped;
259  int64_t countUpdated;
260  std::map<std::string, std::string> info;
261  };
262 }
263 
268 namespace avro
269 {
270  template<> struct codec_traits<gpudb::CreateExternalTableResponse>
271  {
272  static void encode(Encoder& e, const gpudb::CreateExternalTableResponse& v)
273  {
274  ::avro::encode(e, v.tableName);
275  ::avro::encode(e, v.typeId);
276  ::avro::encode(e, v.countInserted);
277  ::avro::encode(e, v.countSkipped);
278  ::avro::encode(e, v.countUpdated);
279  ::avro::encode(e, v.info);
280  }
281 
282  static void decode(Decoder& d, gpudb::CreateExternalTableResponse& v)
283  {
284  if (::avro::ResolvingDecoder *rd = dynamic_cast< ::avro::ResolvingDecoder*>(&d))
285  {
286  const std::vector<size_t> fo = rd->fieldOrder();
287 
288  for (std::vector<size_t>::const_iterator it = fo.begin(); it != fo.end(); ++it)
289  {
290  switch (*it)
291  {
292  case 0:
293  ::avro::decode(d, v.tableName);
294  break;
295 
296  case 1:
297  ::avro::decode(d, v.typeId);
298  break;
299 
300  case 2:
301  ::avro::decode(d, v.countInserted);
302  break;
303 
304  case 3:
305  ::avro::decode(d, v.countSkipped);
306  break;
307 
308  case 4:
309  ::avro::decode(d, v.countUpdated);
310  break;
311 
312  case 5:
313  ::avro::decode(d, v.info);
314  break;
315 
316  default:
317  break;
318  }
319  }
320  }
321  else
322  {
323  ::avro::decode(d, v.tableName);
324  ::avro::decode(d, v.typeId);
325  ::avro::decode(d, v.countInserted);
326  ::avro::decode(d, v.countSkipped);
327  ::avro::decode(d, v.countUpdated);
328  ::avro::decode(d, v.info);
329  }
330  }
331  };
332 }
333 
334 #endif