google-maps-api-sdk 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +169 -0
  4. data/bin/console +15 -0
  5. data/lib/google_maps_platform/api_helper.rb +10 -0
  6. data/lib/google_maps_platform/client.rb +123 -0
  7. data/lib/google_maps_platform/configuration.rb +181 -0
  8. data/lib/google_maps_platform/controllers/base_controller.rb +67 -0
  9. data/lib/google_maps_platform/controllers/directions_api_controller.rb +341 -0
  10. data/lib/google_maps_platform/controllers/distance_matrix_api_controller.rb +224 -0
  11. data/lib/google_maps_platform/controllers/elevation_api_controller.rb +71 -0
  12. data/lib/google_maps_platform/controllers/geocoding_api_controller.rb +214 -0
  13. data/lib/google_maps_platform/controllers/geolocation_api_controller.rb +46 -0
  14. data/lib/google_maps_platform/controllers/places_api_controller.rb +866 -0
  15. data/lib/google_maps_platform/controllers/roads_api_controller.rb +81 -0
  16. data/lib/google_maps_platform/controllers/street_view_api_controller.rb +198 -0
  17. data/lib/google_maps_platform/controllers/time_zone_api_controller.rb +65 -0
  18. data/lib/google_maps_platform/exceptions/api_exception.rb +21 -0
  19. data/lib/google_maps_platform/exceptions/error_response_exception.rb +48 -0
  20. data/lib/google_maps_platform/exceptions/nearest_roads_error_response_exception.rb +46 -0
  21. data/lib/google_maps_platform/http/api_response.rb +19 -0
  22. data/lib/google_maps_platform/http/auth/custom_query_authentication.rb +52 -0
  23. data/lib/google_maps_platform/http/http_call_back.rb +10 -0
  24. data/lib/google_maps_platform/http/http_method_enum.rb +10 -0
  25. data/lib/google_maps_platform/http/http_request.rb +10 -0
  26. data/lib/google_maps_platform/http/http_response.rb +10 -0
  27. data/lib/google_maps_platform/http/proxy_settings.rb +22 -0
  28. data/lib/google_maps_platform/logging/configuration/api_logging_configuration.rb +186 -0
  29. data/lib/google_maps_platform/logging/sdk_logger.rb +17 -0
  30. data/lib/google_maps_platform/models/address_component.rb +97 -0
  31. data/lib/google_maps_platform/models/base_model.rb +110 -0
  32. data/lib/google_maps_platform/models/bounds.rb +85 -0
  33. data/lib/google_maps_platform/models/business_status.rb +41 -0
  34. data/lib/google_maps_platform/models/cell_tower.rb +146 -0
  35. data/lib/google_maps_platform/models/directions_geocoded_waypoint.rb +181 -0
  36. data/lib/google_maps_platform/models/directions_leg.rb +224 -0
  37. data/lib/google_maps_platform/models/directions_polyline.rb +93 -0
  38. data/lib/google_maps_platform/models/directions_response.rb +185 -0
  39. data/lib/google_maps_platform/models/directions_route.rb +188 -0
  40. data/lib/google_maps_platform/models/directions_status.rb +94 -0
  41. data/lib/google_maps_platform/models/directions_step.rb +216 -0
  42. data/lib/google_maps_platform/models/directions_traffic_speed_entry.rb +84 -0
  43. data/lib/google_maps_platform/models/directions_transit_agency.rb +95 -0
  44. data/lib/google_maps_platform/models/directions_transit_details.rb +176 -0
  45. data/lib/google_maps_platform/models/directions_transit_line.rb +152 -0
  46. data/lib/google_maps_platform/models/directions_transit_stop.rb +83 -0
  47. data/lib/google_maps_platform/models/directions_transit_vehicle.rb +126 -0
  48. data/lib/google_maps_platform/models/directions_via_waypoint.rb +99 -0
  49. data/lib/google_maps_platform/models/distance_matrix_element.rb +132 -0
  50. data/lib/google_maps_platform/models/distance_matrix_element_status.rb +48 -0
  51. data/lib/google_maps_platform/models/distance_matrix_response.rb +149 -0
  52. data/lib/google_maps_platform/models/distance_matrix_row.rb +89 -0
  53. data/lib/google_maps_platform/models/distance_matrix_status.rb +74 -0
  54. data/lib/google_maps_platform/models/elevation_response.rb +132 -0
  55. data/lib/google_maps_platform/models/elevation_result.rb +99 -0
  56. data/lib/google_maps_platform/models/elevation_status.rb +65 -0
  57. data/lib/google_maps_platform/models/error_detail.rb +135 -0
  58. data/lib/google_maps_platform/models/error_object.rb +130 -0
  59. data/lib/google_maps_platform/models/fare.rb +92 -0
  60. data/lib/google_maps_platform/models/field_violation.rb +82 -0
  61. data/lib/google_maps_platform/models/geocoder_status.rb +37 -0
  62. data/lib/google_maps_platform/models/geocoding_geometry.rb +117 -0
  63. data/lib/google_maps_platform/models/geocoding_response.rb +140 -0
  64. data/lib/google_maps_platform/models/geocoding_result.rb +174 -0
  65. data/lib/google_maps_platform/models/geocoding_status.rb +71 -0
  66. data/lib/google_maps_platform/models/geolocation_request.rb +166 -0
  67. data/lib/google_maps_platform/models/geolocation_response.rb +91 -0
  68. data/lib/google_maps_platform/models/geometry.rb +84 -0
  69. data/lib/google_maps_platform/models/inputtype.rb +36 -0
  70. data/lib/google_maps_platform/models/language.rb +240 -0
  71. data/lib/google_maps_platform/models/lat_lng_literal.rb +83 -0
  72. data/lib/google_maps_platform/models/latitude_longitude_literal.rb +83 -0
  73. data/lib/google_maps_platform/models/location_type.rb +54 -0
  74. data/lib/google_maps_platform/models/location_type1.rb +44 -0
  75. data/lib/google_maps_platform/models/maneuver.rb +110 -0
  76. data/lib/google_maps_platform/models/maps_api_elevation_json_response.rb +132 -0
  77. data/lib/google_maps_platform/models/maxprice.rb +48 -0
  78. data/lib/google_maps_platform/models/minprice.rb +48 -0
  79. data/lib/google_maps_platform/models/mode.rb +44 -0
  80. data/lib/google_maps_platform/models/nearest_roads_error.rb +90 -0
  81. data/lib/google_maps_platform/models/nearest_roads_response.rb +86 -0
  82. data/lib/google_maps_platform/models/place.rb +647 -0
  83. data/lib/google_maps_platform/models/place_autocomplete_matched_substring.rb +82 -0
  84. data/lib/google_maps_platform/models/place_autocomplete_prediction.rb +181 -0
  85. data/lib/google_maps_platform/models/place_autocomplete_structured_format.rb +136 -0
  86. data/lib/google_maps_platform/models/place_autocomplete_term.rb +83 -0
  87. data/lib/google_maps_platform/models/place_editorial_summary.rb +87 -0
  88. data/lib/google_maps_platform/models/place_opening_hours.rb +138 -0
  89. data/lib/google_maps_platform/models/place_opening_hours_period.rb +84 -0
  90. data/lib/google_maps_platform/models/place_opening_hours_period_detail.rb +108 -0
  91. data/lib/google_maps_platform/models/place_photo.rb +109 -0
  92. data/lib/google_maps_platform/models/place_review.rb +186 -0
  93. data/lib/google_maps_platform/models/place_special_day.rb +93 -0
  94. data/lib/google_maps_platform/models/places_autocomplete_response.rb +141 -0
  95. data/lib/google_maps_platform/models/places_autocomplete_status.rb +66 -0
  96. data/lib/google_maps_platform/models/places_details_response.rb +131 -0
  97. data/lib/google_maps_platform/models/places_details_status.rb +71 -0
  98. data/lib/google_maps_platform/models/places_find_place_from_text_response.rb +145 -0
  99. data/lib/google_maps_platform/models/places_nearby_search_response.rb +171 -0
  100. data/lib/google_maps_platform/models/places_query_autocomplete_response.rb +141 -0
  101. data/lib/google_maps_platform/models/places_search_status.rb +66 -0
  102. data/lib/google_maps_platform/models/places_text_search_response.rb +171 -0
  103. data/lib/google_maps_platform/models/plus_code.rb +92 -0
  104. data/lib/google_maps_platform/models/rankby.rb +36 -0
  105. data/lib/google_maps_platform/models/region.rb +1052 -0
  106. data/lib/google_maps_platform/models/result.rb +96 -0
  107. data/lib/google_maps_platform/models/result_type.rb +112 -0
  108. data/lib/google_maps_platform/models/snap_to_roads_response.rb +96 -0
  109. data/lib/google_maps_platform/models/snapped_point.rb +103 -0
  110. data/lib/google_maps_platform/models/source.rb +36 -0
  111. data/lib/google_maps_platform/models/street_view_response.rb +135 -0
  112. data/lib/google_maps_platform/models/street_view_status.rb +71 -0
  113. data/lib/google_maps_platform/models/text_value_object.rb +82 -0
  114. data/lib/google_maps_platform/models/time_zone_response.rb +154 -0
  115. data/lib/google_maps_platform/models/time_zone_status.rb +68 -0
  116. data/lib/google_maps_platform/models/time_zone_text_value_object.rb +94 -0
  117. data/lib/google_maps_platform/models/traffic_model.rb +40 -0
  118. data/lib/google_maps_platform/models/transit_routing_preference.rb +36 -0
  119. data/lib/google_maps_platform/models/travel_mode.rb +48 -0
  120. data/lib/google_maps_platform/models/type.rb +140 -0
  121. data/lib/google_maps_platform/models/type1.rb +112 -0
  122. data/lib/google_maps_platform/models/units.rb +36 -0
  123. data/lib/google_maps_platform/models/wi_fi_access_point.rb +119 -0
  124. data/lib/google_maps_platform/utilities/date_time_helper.rb +11 -0
  125. data/lib/google_maps_platform/utilities/file_wrapper.rb +28 -0
  126. data/lib/google_maps_platform.rb +154 -0
  127. metadata +210 -0
@@ -0,0 +1,1052 @@
1
+ # google_maps_platform
2
+ #
3
+ # This file was automatically generated by APIMATIC
4
+ # v3.0 ( https://www.apimatic.io ).
5
+
6
+ module GoogleMapsPlatform
7
+ # region.
8
+ class Region
9
+ REGION = [
10
+ # TODO: Write general description for AC
11
+ AC = 'ac'.freeze,
12
+
13
+ # TODO: Write general description for AD
14
+ AD = 'ad'.freeze,
15
+
16
+ # TODO: Write general description for AE
17
+ AE = 'ae'.freeze,
18
+
19
+ # TODO: Write general description for AF
20
+ AF = 'af'.freeze,
21
+
22
+ # TODO: Write general description for AG
23
+ AG = 'ag'.freeze,
24
+
25
+ # TODO: Write general description for AI
26
+ AI = 'ai'.freeze,
27
+
28
+ # TODO: Write general description for AL
29
+ AL = 'al'.freeze,
30
+
31
+ # TODO: Write general description for AM
32
+ AM = 'am'.freeze,
33
+
34
+ # TODO: Write general description for AN
35
+ AN = 'an'.freeze,
36
+
37
+ # TODO: Write general description for AO
38
+ AO = 'ao'.freeze,
39
+
40
+ # TODO: Write general description for AQ
41
+ AQ = 'aq'.freeze,
42
+
43
+ # TODO: Write general description for AR
44
+ AR = 'ar'.freeze,
45
+
46
+ # TODO: Write general description for AS
47
+ AS = 'as'.freeze,
48
+
49
+ # TODO: Write general description for AT
50
+ AT = 'at'.freeze,
51
+
52
+ # TODO: Write general description for AU
53
+ AU = 'au'.freeze,
54
+
55
+ # TODO: Write general description for AW
56
+ AW = 'aw'.freeze,
57
+
58
+ # TODO: Write general description for AX
59
+ AX = 'ax'.freeze,
60
+
61
+ # TODO: Write general description for AZ
62
+ AZ = 'az'.freeze,
63
+
64
+ # TODO: Write general description for BA
65
+ BA = 'ba'.freeze,
66
+
67
+ # TODO: Write general description for BB
68
+ BB = 'bb'.freeze,
69
+
70
+ # TODO: Write general description for BD
71
+ BD = 'bd'.freeze,
72
+
73
+ # TODO: Write general description for BE
74
+ BE = 'be'.freeze,
75
+
76
+ # TODO: Write general description for BF
77
+ BF = 'bf'.freeze,
78
+
79
+ # TODO: Write general description for BG
80
+ BG = 'bg'.freeze,
81
+
82
+ # TODO: Write general description for BH
83
+ BH = 'bh'.freeze,
84
+
85
+ # TODO: Write general description for BI
86
+ BI = 'bi'.freeze,
87
+
88
+ # TODO: Write general description for BJ
89
+ BJ = 'bj'.freeze,
90
+
91
+ # TODO: Write general description for BL
92
+ BL = 'bl'.freeze,
93
+
94
+ # TODO: Write general description for BM
95
+ BM = 'bm'.freeze,
96
+
97
+ # TODO: Write general description for BN
98
+ BN = 'bn'.freeze,
99
+
100
+ # TODO: Write general description for BO
101
+ BO = 'bo'.freeze,
102
+
103
+ # TODO: Write general description for BQ
104
+ BQ = 'bq'.freeze,
105
+
106
+ # TODO: Write general description for BR
107
+ BR = 'br'.freeze,
108
+
109
+ # TODO: Write general description for BS
110
+ BS = 'bs'.freeze,
111
+
112
+ # TODO: Write general description for BT
113
+ BT = 'bt'.freeze,
114
+
115
+ # TODO: Write general description for BV
116
+ BV = 'bv'.freeze,
117
+
118
+ # TODO: Write general description for BW
119
+ BW = 'bw'.freeze,
120
+
121
+ # TODO: Write general description for BY
122
+ BY = 'by'.freeze,
123
+
124
+ # TODO: Write general description for BZ
125
+ BZ = 'bz'.freeze,
126
+
127
+ # TODO: Write general description for CA
128
+ CA = 'ca'.freeze,
129
+
130
+ # TODO: Write general description for CC
131
+ CC = 'cc'.freeze,
132
+
133
+ # TODO: Write general description for CD
134
+ CD = 'cd'.freeze,
135
+
136
+ # TODO: Write general description for CF
137
+ CF = 'cf'.freeze,
138
+
139
+ # TODO: Write general description for CG
140
+ CG = 'cg'.freeze,
141
+
142
+ # TODO: Write general description for CH
143
+ CH = 'ch'.freeze,
144
+
145
+ # TODO: Write general description for CI
146
+ CI = 'ci'.freeze,
147
+
148
+ # TODO: Write general description for CK
149
+ CK = 'ck'.freeze,
150
+
151
+ # TODO: Write general description for CL
152
+ CL = 'cl'.freeze,
153
+
154
+ # TODO: Write general description for CM
155
+ CM = 'cm'.freeze,
156
+
157
+ # TODO: Write general description for CN
158
+ CN = 'cn'.freeze,
159
+
160
+ # TODO: Write general description for CO
161
+ CO = 'co'.freeze,
162
+
163
+ # TODO: Write general description for CR
164
+ CR = 'cr'.freeze,
165
+
166
+ # TODO: Write general description for CU
167
+ CU = 'cu'.freeze,
168
+
169
+ # TODO: Write general description for CV
170
+ CV = 'cv'.freeze,
171
+
172
+ # TODO: Write general description for CW
173
+ CW = 'cw'.freeze,
174
+
175
+ # TODO: Write general description for CX
176
+ CX = 'cx'.freeze,
177
+
178
+ # TODO: Write general description for CY
179
+ CY = 'cy'.freeze,
180
+
181
+ # TODO: Write general description for CZ
182
+ CZ = 'cz'.freeze,
183
+
184
+ # TODO: Write general description for DE
185
+ DE = 'de'.freeze,
186
+
187
+ # TODO: Write general description for DJ
188
+ DJ = 'dj'.freeze,
189
+
190
+ # TODO: Write general description for DK
191
+ DK = 'dk'.freeze,
192
+
193
+ # TODO: Write general description for DM
194
+ DM = 'dm'.freeze,
195
+
196
+ # TODO: Write general description for ENUM_DO
197
+ ENUM_DO = 'do'.freeze,
198
+
199
+ # TODO: Write general description for DZ
200
+ DZ = 'dz'.freeze,
201
+
202
+ # TODO: Write general description for EC
203
+ EC = 'ec'.freeze,
204
+
205
+ # TODO: Write general description for EE
206
+ EE = 'ee'.freeze,
207
+
208
+ # TODO: Write general description for EG
209
+ EG = 'eg'.freeze,
210
+
211
+ # TODO: Write general description for EH
212
+ EH = 'eh'.freeze,
213
+
214
+ # TODO: Write general description for EN
215
+ EN = 'en'.freeze,
216
+
217
+ # TODO: Write general description for ER
218
+ ER = 'er'.freeze,
219
+
220
+ # TODO: Write general description for ES
221
+ ES = 'es'.freeze,
222
+
223
+ # TODO: Write general description for ET
224
+ ET = 'et'.freeze,
225
+
226
+ # TODO: Write general description for EU
227
+ EU = 'eu'.freeze,
228
+
229
+ # TODO: Write general description for FI
230
+ FI = 'fi'.freeze,
231
+
232
+ # TODO: Write general description for FJ
233
+ FJ = 'fj'.freeze,
234
+
235
+ # TODO: Write general description for FK
236
+ FK = 'fk'.freeze,
237
+
238
+ # TODO: Write general description for FM
239
+ FM = 'fm'.freeze,
240
+
241
+ # TODO: Write general description for FO
242
+ FO = 'fo'.freeze,
243
+
244
+ # TODO: Write general description for FR
245
+ FR = 'fr'.freeze,
246
+
247
+ # TODO: Write general description for GA
248
+ GA = 'ga'.freeze,
249
+
250
+ # TODO: Write general description for GB
251
+ GB = 'gb'.freeze,
252
+
253
+ # TODO: Write general description for GD
254
+ GD = 'gd'.freeze,
255
+
256
+ # TODO: Write general description for GE
257
+ GE = 'ge'.freeze,
258
+
259
+ # TODO: Write general description for GF
260
+ GF = 'gf'.freeze,
261
+
262
+ # TODO: Write general description for GG
263
+ GG = 'gg'.freeze,
264
+
265
+ # TODO: Write general description for GH
266
+ GH = 'gh'.freeze,
267
+
268
+ # TODO: Write general description for GI
269
+ GI = 'gi'.freeze,
270
+
271
+ # TODO: Write general description for GL
272
+ GL = 'gl'.freeze,
273
+
274
+ # TODO: Write general description for GM
275
+ GM = 'gm'.freeze,
276
+
277
+ # TODO: Write general description for GN
278
+ GN = 'gn'.freeze,
279
+
280
+ # TODO: Write general description for GP
281
+ GP = 'gp'.freeze,
282
+
283
+ # TODO: Write general description for GQ
284
+ GQ = 'gq'.freeze,
285
+
286
+ # TODO: Write general description for GR
287
+ GR = 'gr'.freeze,
288
+
289
+ # TODO: Write general description for GS
290
+ GS = 'gs'.freeze,
291
+
292
+ # TODO: Write general description for GT
293
+ GT = 'gt'.freeze,
294
+
295
+ # TODO: Write general description for GU
296
+ GU = 'gu'.freeze,
297
+
298
+ # TODO: Write general description for GW
299
+ GW = 'gw'.freeze,
300
+
301
+ # TODO: Write general description for GY
302
+ GY = 'gy'.freeze,
303
+
304
+ # TODO: Write general description for HK
305
+ HK = 'hk'.freeze,
306
+
307
+ # TODO: Write general description for HM
308
+ HM = 'hm'.freeze,
309
+
310
+ # TODO: Write general description for HN
311
+ HN = 'hn'.freeze,
312
+
313
+ # TODO: Write general description for HR
314
+ HR = 'hr'.freeze,
315
+
316
+ # TODO: Write general description for HT
317
+ HT = 'ht'.freeze,
318
+
319
+ # TODO: Write general description for HU
320
+ HU = 'hu'.freeze,
321
+
322
+ # TODO: Write general description for ID
323
+ ID = 'id'.freeze,
324
+
325
+ # TODO: Write general description for IE
326
+ IE = 'ie'.freeze,
327
+
328
+ # TODO: Write general description for IL
329
+ IL = 'il'.freeze,
330
+
331
+ # TODO: Write general description for IM
332
+ IM = 'im'.freeze,
333
+
334
+ # TODO: Write general description for ENUM_IN
335
+ ENUM_IN = 'in'.freeze,
336
+
337
+ # TODO: Write general description for IO
338
+ IO = 'io'.freeze,
339
+
340
+ # TODO: Write general description for IQ
341
+ IQ = 'iq'.freeze,
342
+
343
+ # TODO: Write general description for IR
344
+ IR = 'ir'.freeze,
345
+
346
+ # TODO: Write general description for IS
347
+ IS = 'is'.freeze,
348
+
349
+ # TODO: Write general description for IT
350
+ IT = 'it'.freeze,
351
+
352
+ # TODO: Write general description for JE
353
+ JE = 'je'.freeze,
354
+
355
+ # TODO: Write general description for JM
356
+ JM = 'jm'.freeze,
357
+
358
+ # TODO: Write general description for JO
359
+ JO = 'jo'.freeze,
360
+
361
+ # TODO: Write general description for JP
362
+ JP = 'jp'.freeze,
363
+
364
+ # TODO: Write general description for KE
365
+ KE = 'ke'.freeze,
366
+
367
+ # TODO: Write general description for KG
368
+ KG = 'kg'.freeze,
369
+
370
+ # TODO: Write general description for KH
371
+ KH = 'kh'.freeze,
372
+
373
+ # TODO: Write general description for KI
374
+ KI = 'ki'.freeze,
375
+
376
+ # TODO: Write general description for KM
377
+ KM = 'km'.freeze,
378
+
379
+ # TODO: Write general description for KN
380
+ KN = 'kn'.freeze,
381
+
382
+ # TODO: Write general description for KP
383
+ KP = 'kp'.freeze,
384
+
385
+ # TODO: Write general description for KR
386
+ KR = 'kr'.freeze,
387
+
388
+ # TODO: Write general description for KW
389
+ KW = 'kw'.freeze,
390
+
391
+ # TODO: Write general description for KY
392
+ KY = 'ky'.freeze,
393
+
394
+ # TODO: Write general description for KZ
395
+ KZ = 'kz'.freeze,
396
+
397
+ # TODO: Write general description for LA
398
+ LA = 'la'.freeze,
399
+
400
+ # TODO: Write general description for LB
401
+ LB = 'lb'.freeze,
402
+
403
+ # TODO: Write general description for LC
404
+ LC = 'lc'.freeze,
405
+
406
+ # TODO: Write general description for LI
407
+ LI = 'li'.freeze,
408
+
409
+ # TODO: Write general description for LK
410
+ LK = 'lk'.freeze,
411
+
412
+ # TODO: Write general description for LR
413
+ LR = 'lr'.freeze,
414
+
415
+ # TODO: Write general description for LS
416
+ LS = 'ls'.freeze,
417
+
418
+ # TODO: Write general description for LT
419
+ LT = 'lt'.freeze,
420
+
421
+ # TODO: Write general description for LU
422
+ LU = 'lu'.freeze,
423
+
424
+ # TODO: Write general description for LV
425
+ LV = 'lv'.freeze,
426
+
427
+ # TODO: Write general description for LY
428
+ LY = 'ly'.freeze,
429
+
430
+ # TODO: Write general description for MA
431
+ MA = 'ma'.freeze,
432
+
433
+ # TODO: Write general description for MC
434
+ MC = 'mc'.freeze,
435
+
436
+ # TODO: Write general description for MD
437
+ MD = 'md'.freeze,
438
+
439
+ # TODO: Write general description for ME
440
+ ME = 'me'.freeze,
441
+
442
+ # TODO: Write general description for MF
443
+ MF = 'mf'.freeze,
444
+
445
+ # TODO: Write general description for MG
446
+ MG = 'mg'.freeze,
447
+
448
+ # TODO: Write general description for MH
449
+ MH = 'mh'.freeze,
450
+
451
+ # TODO: Write general description for MK
452
+ MK = 'mk'.freeze,
453
+
454
+ # TODO: Write general description for ML
455
+ ML = 'ml'.freeze,
456
+
457
+ # TODO: Write general description for MM
458
+ MM = 'mm'.freeze,
459
+
460
+ # TODO: Write general description for MN
461
+ MN = 'mn'.freeze,
462
+
463
+ # TODO: Write general description for MO
464
+ MO = 'mo'.freeze,
465
+
466
+ # TODO: Write general description for MP
467
+ MP = 'mp'.freeze,
468
+
469
+ # TODO: Write general description for MQ
470
+ MQ = 'mq'.freeze,
471
+
472
+ # TODO: Write general description for MR
473
+ MR = 'mr'.freeze,
474
+
475
+ # TODO: Write general description for MS
476
+ MS = 'ms'.freeze,
477
+
478
+ # TODO: Write general description for MT
479
+ MT = 'mt'.freeze,
480
+
481
+ # TODO: Write general description for MU
482
+ MU = 'mu'.freeze,
483
+
484
+ # TODO: Write general description for MV
485
+ MV = 'mv'.freeze,
486
+
487
+ # TODO: Write general description for MW
488
+ MW = 'mw'.freeze,
489
+
490
+ # TODO: Write general description for MX
491
+ MX = 'mx'.freeze,
492
+
493
+ # TODO: Write general description for MY
494
+ MY = 'my'.freeze,
495
+
496
+ # TODO: Write general description for MZ
497
+ MZ = 'mz'.freeze,
498
+
499
+ # TODO: Write general description for NA
500
+ NA = 'na'.freeze,
501
+
502
+ # TODO: Write general description for NC
503
+ NC = 'nc'.freeze,
504
+
505
+ # TODO: Write general description for NE
506
+ NE = 'ne'.freeze,
507
+
508
+ # TODO: Write general description for NF
509
+ NF = 'nf'.freeze,
510
+
511
+ # TODO: Write general description for NG
512
+ NG = 'ng'.freeze,
513
+
514
+ # TODO: Write general description for NI
515
+ NI = 'ni'.freeze,
516
+
517
+ # TODO: Write general description for NL
518
+ NL = 'nl'.freeze,
519
+
520
+ # TODO: Write general description for NO
521
+ NO = 'no'.freeze,
522
+
523
+ # TODO: Write general description for NP
524
+ NP = 'np'.freeze,
525
+
526
+ # TODO: Write general description for NR
527
+ NR = 'nr'.freeze,
528
+
529
+ # TODO: Write general description for NU
530
+ NU = 'nu'.freeze,
531
+
532
+ # TODO: Write general description for NZ
533
+ NZ = 'nz'.freeze,
534
+
535
+ # TODO: Write general description for OM
536
+ OM = 'om'.freeze,
537
+
538
+ # TODO: Write general description for PA
539
+ PA = 'pa'.freeze,
540
+
541
+ # TODO: Write general description for PE
542
+ PE = 'pe'.freeze,
543
+
544
+ # TODO: Write general description for PF
545
+ PF = 'pf'.freeze,
546
+
547
+ # TODO: Write general description for PG
548
+ PG = 'pg'.freeze,
549
+
550
+ # TODO: Write general description for PH
551
+ PH = 'ph'.freeze,
552
+
553
+ # TODO: Write general description for PK
554
+ PK = 'pk'.freeze,
555
+
556
+ # TODO: Write general description for PL
557
+ PL = 'pl'.freeze,
558
+
559
+ # TODO: Write general description for PM
560
+ PM = 'pm'.freeze,
561
+
562
+ # TODO: Write general description for PN
563
+ PN = 'pn'.freeze,
564
+
565
+ # TODO: Write general description for PR
566
+ PR = 'pr'.freeze,
567
+
568
+ # TODO: Write general description for PS
569
+ PS = 'ps'.freeze,
570
+
571
+ # TODO: Write general description for PT
572
+ PT = 'pt'.freeze,
573
+
574
+ # TODO: Write general description for PW
575
+ PW = 'pw'.freeze,
576
+
577
+ # TODO: Write general description for PY
578
+ PY = 'py'.freeze,
579
+
580
+ # TODO: Write general description for QA
581
+ QA = 'qa'.freeze,
582
+
583
+ # TODO: Write general description for RE
584
+ RE = 're'.freeze,
585
+
586
+ # TODO: Write general description for RO
587
+ RO = 'ro'.freeze,
588
+
589
+ # TODO: Write general description for RS
590
+ RS = 'rs'.freeze,
591
+
592
+ # TODO: Write general description for RU
593
+ RU = 'ru'.freeze,
594
+
595
+ # TODO: Write general description for RW
596
+ RW = 'rw'.freeze,
597
+
598
+ # TODO: Write general description for SA
599
+ SA = 'sa'.freeze,
600
+
601
+ # TODO: Write general description for SB
602
+ SB = 'sb'.freeze,
603
+
604
+ # TODO: Write general description for SC
605
+ SC = 'sc'.freeze,
606
+
607
+ # TODO: Write general description for SD
608
+ SD = 'sd'.freeze,
609
+
610
+ # TODO: Write general description for SE
611
+ SE = 'se'.freeze,
612
+
613
+ # TODO: Write general description for SG
614
+ SG = 'sg'.freeze,
615
+
616
+ # TODO: Write general description for SH
617
+ SH = 'sh'.freeze,
618
+
619
+ # TODO: Write general description for SI
620
+ SI = 'si'.freeze,
621
+
622
+ # TODO: Write general description for SJ
623
+ SJ = 'sj'.freeze,
624
+
625
+ # TODO: Write general description for SK
626
+ SK = 'sk'.freeze,
627
+
628
+ # TODO: Write general description for SL
629
+ SL = 'sl'.freeze,
630
+
631
+ # TODO: Write general description for SM
632
+ SM = 'sm'.freeze,
633
+
634
+ # TODO: Write general description for SN
635
+ SN = 'sn'.freeze,
636
+
637
+ # TODO: Write general description for SO
638
+ SO = 'so'.freeze,
639
+
640
+ # TODO: Write general description for SR
641
+ SR = 'sr'.freeze,
642
+
643
+ # TODO: Write general description for SS
644
+ SS = 'ss'.freeze,
645
+
646
+ # TODO: Write general description for ST
647
+ ST = 'st'.freeze,
648
+
649
+ # TODO: Write general description for SU
650
+ SU = 'su'.freeze,
651
+
652
+ # TODO: Write general description for SV
653
+ SV = 'sv'.freeze,
654
+
655
+ # TODO: Write general description for SX
656
+ SX = 'sx'.freeze,
657
+
658
+ # TODO: Write general description for SY
659
+ SY = 'sy'.freeze,
660
+
661
+ # TODO: Write general description for SZ
662
+ SZ = 'sz'.freeze,
663
+
664
+ # TODO: Write general description for TC
665
+ TC = 'tc'.freeze,
666
+
667
+ # TODO: Write general description for TD
668
+ TD = 'td'.freeze,
669
+
670
+ # TODO: Write general description for TF
671
+ TF = 'tf'.freeze,
672
+
673
+ # TODO: Write general description for TG
674
+ TG = 'tg'.freeze,
675
+
676
+ # TODO: Write general description for TH
677
+ TH = 'th'.freeze,
678
+
679
+ # TODO: Write general description for TJ
680
+ TJ = 'tj'.freeze,
681
+
682
+ # TODO: Write general description for TK
683
+ TK = 'tk'.freeze,
684
+
685
+ # TODO: Write general description for TL
686
+ TL = 'tl'.freeze,
687
+
688
+ # TODO: Write general description for TM
689
+ TM = 'tm'.freeze,
690
+
691
+ # TODO: Write general description for TN
692
+ TN = 'tn'.freeze,
693
+
694
+ # TODO: Write general description for TO
695
+ TO = 'to'.freeze,
696
+
697
+ # TODO: Write general description for TP
698
+ TP = 'tp'.freeze,
699
+
700
+ # TODO: Write general description for TR
701
+ TR = 'tr'.freeze,
702
+
703
+ # TODO: Write general description for TT
704
+ TT = 'tt'.freeze,
705
+
706
+ # TODO: Write general description for TV
707
+ TV = 'tv'.freeze,
708
+
709
+ # TODO: Write general description for TW
710
+ TW = 'tw'.freeze,
711
+
712
+ # TODO: Write general description for TZ
713
+ TZ = 'tz'.freeze,
714
+
715
+ # TODO: Write general description for UA
716
+ UA = 'ua'.freeze,
717
+
718
+ # TODO: Write general description for UG
719
+ UG = 'ug'.freeze,
720
+
721
+ # TODO: Write general description for UK
722
+ UK = 'uk'.freeze,
723
+
724
+ # TODO: Write general description for UM
725
+ UM = 'um'.freeze,
726
+
727
+ # TODO: Write general description for US
728
+ US = 'us'.freeze,
729
+
730
+ # TODO: Write general description for UY
731
+ UY = 'uy'.freeze,
732
+
733
+ # TODO: Write general description for UZ
734
+ UZ = 'uz'.freeze,
735
+
736
+ # TODO: Write general description for VA
737
+ VA = 'va'.freeze,
738
+
739
+ # TODO: Write general description for VC
740
+ VC = 'vc'.freeze,
741
+
742
+ # TODO: Write general description for VE
743
+ VE = 've'.freeze,
744
+
745
+ # TODO: Write general description for VG
746
+ VG = 'vg'.freeze,
747
+
748
+ # TODO: Write general description for VI
749
+ VI = 'vi'.freeze,
750
+
751
+ # TODO: Write general description for VN
752
+ VN = 'vn'.freeze,
753
+
754
+ # TODO: Write general description for VU
755
+ VU = 'vu'.freeze,
756
+
757
+ # TODO: Write general description for WF
758
+ WF = 'wf'.freeze,
759
+
760
+ # TODO: Write general description for WS
761
+ WS = 'ws'.freeze,
762
+
763
+ # TODO: Write general description for YE
764
+ YE = 'ye'.freeze,
765
+
766
+ # TODO: Write general description for YT
767
+ YT = 'yt'.freeze,
768
+
769
+ # TODO: Write general description for ZA
770
+ ZA = 'za'.freeze,
771
+
772
+ # TODO: Write general description for ZM
773
+ ZM = 'zm'.freeze,
774
+
775
+ # TODO: Write general description for ZW
776
+ ZW = 'zw'.freeze
777
+ ].freeze
778
+
779
+ def self.validate(value)
780
+ return false if value.nil?
781
+
782
+ REGION.include?(value)
783
+ end
784
+
785
+ def self.from_value(value, default_value = AC)
786
+ return default_value if value.nil?
787
+
788
+ str = value.to_s.strip
789
+
790
+ case str.downcase
791
+ when 'ac' then AC
792
+ when 'ad' then AD
793
+ when 'ae' then AE
794
+ when 'af' then AF
795
+ when 'ag' then AG
796
+ when 'ai' then AI
797
+ when 'al' then AL
798
+ when 'am' then AM
799
+ when 'an' then AN
800
+ when 'ao' then AO
801
+ when 'aq' then AQ
802
+ when 'ar' then AR
803
+ when 'as' then AS
804
+ when 'at' then AT
805
+ when 'au' then AU
806
+ when 'aw' then AW
807
+ when 'ax' then AX
808
+ when 'az' then AZ
809
+ when 'ba' then BA
810
+ when 'bb' then BB
811
+ when 'bd' then BD
812
+ when 'be' then BE
813
+ when 'bf' then BF
814
+ when 'bg' then BG
815
+ when 'bh' then BH
816
+ when 'bi' then BI
817
+ when 'bj' then BJ
818
+ when 'bl' then BL
819
+ when 'bm' then BM
820
+ when 'bn' then BN
821
+ when 'bo' then BO
822
+ when 'bq' then BQ
823
+ when 'br' then BR
824
+ when 'bs' then BS
825
+ when 'bt' then BT
826
+ when 'bv' then BV
827
+ when 'bw' then BW
828
+ when 'by' then BY
829
+ when 'bz' then BZ
830
+ when 'ca' then CA
831
+ when 'cc' then CC
832
+ when 'cd' then CD
833
+ when 'cf' then CF
834
+ when 'cg' then CG
835
+ when 'ch' then CH
836
+ when 'ci' then CI
837
+ when 'ck' then CK
838
+ when 'cl' then CL
839
+ when 'cm' then CM
840
+ when 'cn' then CN
841
+ when 'co' then CO
842
+ when 'cr' then CR
843
+ when 'cu' then CU
844
+ when 'cv' then CV
845
+ when 'cw' then CW
846
+ when 'cx' then CX
847
+ when 'cy' then CY
848
+ when 'cz' then CZ
849
+ when 'de' then DE
850
+ when 'dj' then DJ
851
+ when 'dk' then DK
852
+ when 'dm' then DM
853
+ when 'enum_do' then ENUM_DO
854
+ when 'dz' then DZ
855
+ when 'ec' then EC
856
+ when 'ee' then EE
857
+ when 'eg' then EG
858
+ when 'eh' then EH
859
+ when 'en' then EN
860
+ when 'er' then ER
861
+ when 'es' then ES
862
+ when 'et' then ET
863
+ when 'eu' then EU
864
+ when 'fi' then FI
865
+ when 'fj' then FJ
866
+ when 'fk' then FK
867
+ when 'fm' then FM
868
+ when 'fo' then FO
869
+ when 'fr' then FR
870
+ when 'ga' then GA
871
+ when 'gb' then GB
872
+ when 'gd' then GD
873
+ when 'ge' then GE
874
+ when 'gf' then GF
875
+ when 'gg' then GG
876
+ when 'gh' then GH
877
+ when 'gi' then GI
878
+ when 'gl' then GL
879
+ when 'gm' then GM
880
+ when 'gn' then GN
881
+ when 'gp' then GP
882
+ when 'gq' then GQ
883
+ when 'gr' then GR
884
+ when 'gs' then GS
885
+ when 'gt' then GT
886
+ when 'gu' then GU
887
+ when 'gw' then GW
888
+ when 'gy' then GY
889
+ when 'hk' then HK
890
+ when 'hm' then HM
891
+ when 'hn' then HN
892
+ when 'hr' then HR
893
+ when 'ht' then HT
894
+ when 'hu' then HU
895
+ when 'id' then ID
896
+ when 'ie' then IE
897
+ when 'il' then IL
898
+ when 'im' then IM
899
+ when 'enum_in' then ENUM_IN
900
+ when 'io' then IO
901
+ when 'iq' then IQ
902
+ when 'ir' then IR
903
+ when 'is' then IS
904
+ when 'it' then IT
905
+ when 'je' then JE
906
+ when 'jm' then JM
907
+ when 'jo' then JO
908
+ when 'jp' then JP
909
+ when 'ke' then KE
910
+ when 'kg' then KG
911
+ when 'kh' then KH
912
+ when 'ki' then KI
913
+ when 'km' then KM
914
+ when 'kn' then KN
915
+ when 'kp' then KP
916
+ when 'kr' then KR
917
+ when 'kw' then KW
918
+ when 'ky' then KY
919
+ when 'kz' then KZ
920
+ when 'la' then LA
921
+ when 'lb' then LB
922
+ when 'lc' then LC
923
+ when 'li' then LI
924
+ when 'lk' then LK
925
+ when 'lr' then LR
926
+ when 'ls' then LS
927
+ when 'lt' then LT
928
+ when 'lu' then LU
929
+ when 'lv' then LV
930
+ when 'ly' then LY
931
+ when 'ma' then MA
932
+ when 'mc' then MC
933
+ when 'md' then MD
934
+ when 'me' then ME
935
+ when 'mf' then MF
936
+ when 'mg' then MG
937
+ when 'mh' then MH
938
+ when 'mk' then MK
939
+ when 'ml' then ML
940
+ when 'mm' then MM
941
+ when 'mn' then MN
942
+ when 'mo' then MO
943
+ when 'mp' then MP
944
+ when 'mq' then MQ
945
+ when 'mr' then MR
946
+ when 'ms' then MS
947
+ when 'mt' then MT
948
+ when 'mu' then MU
949
+ when 'mv' then MV
950
+ when 'mw' then MW
951
+ when 'mx' then MX
952
+ when 'my' then MY
953
+ when 'mz' then MZ
954
+ when 'na' then NA
955
+ when 'nc' then NC
956
+ when 'ne' then NE
957
+ when 'nf' then NF
958
+ when 'ng' then NG
959
+ when 'ni' then NI
960
+ when 'nl' then NL
961
+ when 'no' then NO
962
+ when 'np' then NP
963
+ when 'nr' then NR
964
+ when 'nu' then NU
965
+ when 'nz' then NZ
966
+ when 'om' then OM
967
+ when 'pa' then PA
968
+ when 'pe' then PE
969
+ when 'pf' then PF
970
+ when 'pg' then PG
971
+ when 'ph' then PH
972
+ when 'pk' then PK
973
+ when 'pl' then PL
974
+ when 'pm' then PM
975
+ when 'pn' then PN
976
+ when 'pr' then PR
977
+ when 'ps' then PS
978
+ when 'pt' then PT
979
+ when 'pw' then PW
980
+ when 'py' then PY
981
+ when 'qa' then QA
982
+ when 're' then RE
983
+ when 'ro' then RO
984
+ when 'rs' then RS
985
+ when 'ru' then RU
986
+ when 'rw' then RW
987
+ when 'sa' then SA
988
+ when 'sb' then SB
989
+ when 'sc' then SC
990
+ when 'sd' then SD
991
+ when 'se' then SE
992
+ when 'sg' then SG
993
+ when 'sh' then SH
994
+ when 'si' then SI
995
+ when 'sj' then SJ
996
+ when 'sk' then SK
997
+ when 'sl' then SL
998
+ when 'sm' then SM
999
+ when 'sn' then SN
1000
+ when 'so' then SO
1001
+ when 'sr' then SR
1002
+ when 'ss' then SS
1003
+ when 'st' then ST
1004
+ when 'su' then SU
1005
+ when 'sv' then SV
1006
+ when 'sx' then SX
1007
+ when 'sy' then SY
1008
+ when 'sz' then SZ
1009
+ when 'tc' then TC
1010
+ when 'td' then TD
1011
+ when 'tf' then TF
1012
+ when 'tg' then TG
1013
+ when 'th' then TH
1014
+ when 'tj' then TJ
1015
+ when 'tk' then TK
1016
+ when 'tl' then TL
1017
+ when 'tm' then TM
1018
+ when 'tn' then TN
1019
+ when 'to' then TO
1020
+ when 'tp' then TP
1021
+ when 'tr' then TR
1022
+ when 'tt' then TT
1023
+ when 'tv' then TV
1024
+ when 'tw' then TW
1025
+ when 'tz' then TZ
1026
+ when 'ua' then UA
1027
+ when 'ug' then UG
1028
+ when 'uk' then UK
1029
+ when 'um' then UM
1030
+ when 'us' then US
1031
+ when 'uy' then UY
1032
+ when 'uz' then UZ
1033
+ when 'va' then VA
1034
+ when 'vc' then VC
1035
+ when 've' then VE
1036
+ when 'vg' then VG
1037
+ when 'vi' then VI
1038
+ when 'vn' then VN
1039
+ when 'vu' then VU
1040
+ when 'wf' then WF
1041
+ when 'ws' then WS
1042
+ when 'ye' then YE
1043
+ when 'yt' then YT
1044
+ when 'za' then ZA
1045
+ when 'zm' then ZM
1046
+ when 'zw' then ZW
1047
+ else
1048
+ default_value
1049
+ end
1050
+ end
1051
+ end
1052
+ end