gandi_v5 0.2.0 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (157) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -0
  3. data/.rubocop.yml +13 -3
  4. data/.travis.yml +15 -1
  5. data/CHANGELOG.md +63 -0
  6. data/FUNDING.yml +10 -0
  7. data/LICENSE.md +2 -6
  8. data/README.md +16 -21
  9. data/gandi_v5.gemspec +3 -2
  10. data/lib/gandi_v5.rb +64 -24
  11. data/lib/gandi_v5/billing.rb +0 -2
  12. data/lib/gandi_v5/billing/info.rb +0 -2
  13. data/lib/gandi_v5/data.rb +1 -4
  14. data/lib/gandi_v5/data/converter.rb +0 -4
  15. data/lib/gandi_v5/data/converter/integer.rb +26 -0
  16. data/lib/gandi_v5/domain.rb +167 -28
  17. data/lib/gandi_v5/domain/availability.rb +0 -3
  18. data/lib/gandi_v5/domain/availability/product.rb +0 -3
  19. data/lib/gandi_v5/domain/live_dns.rb +42 -0
  20. data/lib/gandi_v5/domain/renewal_information.rb +0 -3
  21. data/lib/gandi_v5/domain/sharing_space.rb +10 -2
  22. data/lib/gandi_v5/email.rb +0 -4
  23. data/lib/gandi_v5/email/forward.rb +102 -0
  24. data/lib/gandi_v5/email/mailbox.rb +57 -13
  25. data/lib/gandi_v5/email/slot.rb +11 -3
  26. data/lib/gandi_v5/error.rb +0 -2
  27. data/lib/gandi_v5/live_dns.rb +0 -16
  28. data/lib/gandi_v5/live_dns/domain.rb +221 -80
  29. data/lib/gandi_v5/live_dns/domain/dnssec_key.rb +115 -0
  30. data/lib/gandi_v5/live_dns/domain/record.rb +81 -0
  31. data/lib/gandi_v5/live_dns/domain/snapshot.rb +107 -0
  32. data/lib/gandi_v5/live_dns/domain/tsig_key.rb +71 -0
  33. data/lib/gandi_v5/organization.rb +38 -5
  34. data/lib/gandi_v5/organization/customer.rb +90 -0
  35. data/lib/gandi_v5/version.rb +1 -1
  36. data/spec/.rubocop.yml +9 -2
  37. data/spec/fixtures/bodies/GandiV5_Billing/{info.yaml → info.yml} +0 -0
  38. data/spec/fixtures/bodies/GandiV5_Domain/{get.yaml → fetch.yml} +8 -0
  39. data/spec/fixtures/bodies/GandiV5_Domain/{fetch_contacts.yaml → fetch_contacts.yml} +0 -0
  40. data/spec/fixtures/bodies/GandiV5_Domain/fetch_glue_records.yml +7 -0
  41. data/spec/fixtures/bodies/GandiV5_Domain/fetch_livedns.yml +6 -0
  42. data/spec/fixtures/bodies/GandiV5_Domain/fetch_name_servers.yml +2 -0
  43. data/spec/fixtures/bodies/GandiV5_Domain/{renewal_info.yaml → fetch_renewal_info.yml} +0 -3
  44. data/spec/fixtures/bodies/GandiV5_Domain/{restore_info.yaml → fetch_restore_info.yml} +0 -0
  45. data/spec/fixtures/bodies/GandiV5_Domain/{list.yaml → list.yml} +1 -0
  46. data/spec/fixtures/bodies/GandiV5_Domain_Availability/{fetch.yaml → fetch.yml} +0 -0
  47. data/spec/fixtures/bodies/GandiV5_Domain_TLD/{fetch.yaml → fetch.yml} +0 -0
  48. data/spec/fixtures/bodies/GandiV5_Domain_TLD/{list.yaml → list.yml} +0 -0
  49. data/spec/fixtures/bodies/GandiV5_Email_Forward/list.yml +6 -0
  50. data/spec/fixtures/bodies/GandiV5_Email_Mailbox/{get.yaml → fetch.yml} +0 -0
  51. data/spec/fixtures/bodies/GandiV5_Email_Mailbox/{list.yaml → list.yml} +0 -0
  52. data/spec/fixtures/bodies/GandiV5_Email_Slot/{get.yaml → fetch.yml} +0 -0
  53. data/spec/fixtures/bodies/GandiV5_Email_Slot/{list.yaml → list.yml} +0 -0
  54. data/spec/fixtures/bodies/GandiV5_LiveDNS_Domain/fetch.yml +3 -0
  55. data/spec/fixtures/bodies/GandiV5_LiveDNS_Domain/{list.yaml → list.yml} +0 -0
  56. data/spec/fixtures/bodies/GandiV5_LiveDNS_Domain/list_tsig.yml +3 -0
  57. data/spec/fixtures/bodies/GandiV5_LiveDNS_Domain/nameservers.yml +3 -0
  58. data/spec/fixtures/bodies/GandiV5_LiveDNS_Domain_DnssecKey/fetch.yml +12 -0
  59. data/spec/fixtures/bodies/GandiV5_LiveDNS_Domain_DnssecKey/list.yml +9 -0
  60. data/spec/fixtures/bodies/{GandiV5_LiveDNS_Zone_Snapshot/fetch.yaml → GandiV5_LiveDNS_Domain_Snapshot/fetch.yml} +4 -3
  61. data/spec/fixtures/bodies/GandiV5_LiveDNS_Domain_Snapshot/list.yml +5 -0
  62. data/spec/fixtures/bodies/GandiV5_LiveDNS_Domain_TsigKey/fetch.yml +9 -0
  63. data/spec/fixtures/bodies/GandiV5_LiveDNS_Domain_TsigKey/list.yml +4 -0
  64. data/spec/fixtures/bodies/GandiV5_Organization/{get.yaml → fetch.yml} +0 -0
  65. data/spec/fixtures/bodies/GandiV5_Organization/list.yml +7 -0
  66. data/spec/fixtures/bodies/GandiV5_Organization_Customer/list.yml +8 -0
  67. data/spec/spec_helper.rb +2 -2
  68. data/spec/units/gandi_v5/billing_spec.rb +2 -2
  69. data/spec/units/gandi_v5/data/converter/integer_spec.rb +16 -0
  70. data/spec/units/gandi_v5/domain/availability_spec.rb +1 -1
  71. data/spec/units/gandi_v5/domain/live_dns_spec.rb +45 -0
  72. data/spec/units/gandi_v5/domain/tld_spec.rb +2 -2
  73. data/spec/units/gandi_v5/domain_spec.rb +294 -65
  74. data/spec/units/gandi_v5/email/forward_spec.rb +92 -0
  75. data/spec/units/gandi_v5/email/mailbox_spec.rb +122 -40
  76. data/spec/units/gandi_v5/email/slot_spec.rb +13 -5
  77. data/spec/units/gandi_v5/live_dns/domain/dnssec_key_spec.rb +128 -0
  78. data/spec/units/gandi_v5/live_dns/{record_set_spec.rb → domain/record_spec.rb} +1 -1
  79. data/spec/units/gandi_v5/live_dns/domain/snapshot_spec.rb +101 -0
  80. data/spec/units/gandi_v5/live_dns/domain/tsig_key_spec.rb +78 -0
  81. data/spec/units/gandi_v5/live_dns/domain_spec.rb +299 -120
  82. data/spec/units/gandi_v5/live_dns_spec.rb +0 -12
  83. data/spec/units/gandi_v5/organization/customer_spec.rb +81 -0
  84. data/spec/units/gandi_v5/organization_spec.rb +52 -1
  85. data/spec/units/gandi_v5_spec.rb +139 -30
  86. metadata +68 -95
  87. data/doc/GandiV5.html +0 -1183
  88. data/doc/GandiV5/Billing.html +0 -293
  89. data/doc/GandiV5/Billing/Info.html +0 -641
  90. data/doc/GandiV5/Billing/Info/Prepaid.html +0 -817
  91. data/doc/GandiV5/Data.html +0 -785
  92. data/doc/GandiV5/Data/ClassMethods.html +0 -223
  93. data/doc/GandiV5/Data/Converter.html +0 -433
  94. data/doc/GandiV5/Data/Converter/ArrayOf.html +0 -413
  95. data/doc/GandiV5/Data/Converter/Symbol.html +0 -322
  96. data/doc/GandiV5/Data/Converter/Time.html +0 -330
  97. data/doc/GandiV5/Domain.html +0 -16847
  98. data/doc/GandiV5/Domain/AutoRenew.html +0 -1237
  99. data/doc/GandiV5/Domain/Availability.html +0 -1020
  100. data/doc/GandiV5/Domain/Availability/Product.html +0 -988
  101. data/doc/GandiV5/Domain/Availability/Product/Period.html +0 -220
  102. data/doc/GandiV5/Domain/Availability/Product/Price.html +0 -1031
  103. data/doc/GandiV5/Domain/Availability/Tax.html +0 -440
  104. data/doc/GandiV5/Domain/Contact.html +0 -4459
  105. data/doc/GandiV5/Domain/Contract.html +0 -520
  106. data/doc/GandiV5/Domain/Dates.html +0 -1313
  107. data/doc/GandiV5/Domain/RenewalInformation.html +0 -1147
  108. data/doc/GandiV5/Domain/RestoreInformation.html +0 -339
  109. data/doc/GandiV5/Domain/SharingSpace.html +0 -437
  110. data/doc/GandiV5/Domain/TLD.html +0 -1565
  111. data/doc/GandiV5/Email.html +0 -144
  112. data/doc/GandiV5/Email/Mailbox.html +0 -6307
  113. data/doc/GandiV5/Email/Mailbox/Responder.html +0 -1560
  114. data/doc/GandiV5/Email/Offer.html +0 -514
  115. data/doc/GandiV5/Email/Slot.html +0 -4244
  116. data/doc/GandiV5/Error.html +0 -151
  117. data/doc/GandiV5/Error/GandiError.html +0 -270
  118. data/doc/GandiV5/LiveDNS.html +0 -300
  119. data/doc/GandiV5/LiveDNS/Domain.html +0 -2984
  120. data/doc/GandiV5/LiveDNS/RecordSet.html +0 -1593
  121. data/doc/GandiV5/LiveDNS/Zone.html +0 -8891
  122. data/doc/GandiV5/LiveDNS/Zone/Snapshot.html +0 -1556
  123. data/doc/GandiV5/Organization.html +0 -2341
  124. data/doc/_index.html +0 -474
  125. data/doc/class_list.html +0 -51
  126. data/doc/css/common.css +0 -1
  127. data/doc/css/full_list.css +0 -58
  128. data/doc/css/style.css +0 -496
  129. data/doc/file.README.html +0 -175
  130. data/doc/file_list.html +0 -56
  131. data/doc/frames.html +0 -17
  132. data/doc/index.html +0 -175
  133. data/doc/js/app.js +0 -303
  134. data/doc/js/full_list.js +0 -216
  135. data/doc/js/jquery.js +0 -4
  136. data/doc/method_list.html +0 -2427
  137. data/doc/top-level-namespace.html +0 -110
  138. data/lib/gandi_v5/live_dns/record_set.rb +0 -79
  139. data/lib/gandi_v5/live_dns/zone.rb +0 -305
  140. data/lib/gandi_v5/live_dns/zone/snapshot.rb +0 -81
  141. data/spec/features/domain_spec.rb +0 -45
  142. data/spec/features/livedns_domain_spec.rb +0 -8
  143. data/spec/features/livedns_zone_spec.rb +0 -45
  144. data/spec/features/mailbox_spec.rb +0 -18
  145. data/spec/fixtures/bodies/GandiV5_LiveDNS_Domain/get.yaml +0 -4
  146. data/spec/fixtures/bodies/GandiV5_LiveDNS_Zone/get.yaml +0 -11
  147. data/spec/fixtures/bodies/GandiV5_LiveDNS_Zone/list.yaml +0 -11
  148. data/spec/fixtures/bodies/GandiV5_LiveDNS_Zone_Snapshot/list.yaml +0 -3
  149. data/spec/fixtures/vcr/Domain_features/List_domains.yml +0 -54
  150. data/spec/fixtures/vcr/Domain_features/Renew_domain.yml +0 -133
  151. data/spec/fixtures/vcr/LiveDNS_Domain_features/List_domains.yml +0 -32
  152. data/spec/fixtures/vcr/LiveDNS_Zone_features/List_zones.yml +0 -42
  153. data/spec/fixtures/vcr/LiveDNS_Zone_features/Make_and_save_snapshot.yml +0 -72
  154. data/spec/fixtures/vcr/LiveDNS_Zone_features/Save_zone_to_file.yml +0 -28
  155. data/spec/fixtures/vcr/Mailbox_features/List_mailboxes.yml +0 -39
  156. data/spec/units/gandi_v5/live_dns/zone/snapshot_spec.rb +0 -66
  157. data/spec/units/gandi_v5/live_dns/zone_spec.rb +0 -347
@@ -1,785 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>
7
- Module: GandiV5::Data
8
-
9
- &mdash; Documentation by YARD 0.9.19
10
-
11
- </title>
12
-
13
- <link rel="stylesheet" href="../css/style.css" type="text/css" charset="utf-8" />
14
-
15
- <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" />
16
-
17
- <script type="text/javascript" charset="utf-8">
18
- pathId = "GandiV5::Data";
19
- relpath = '../';
20
- </script>
21
-
22
-
23
- <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
24
-
25
- <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
26
-
27
-
28
- </head>
29
- <body>
30
- <div class="nav_wrap">
31
- <iframe id="nav" src="../class_list.html?1"></iframe>
32
- <div id="resizer"></div>
33
- </div>
34
-
35
- <div id="main" tabindex="-1">
36
- <div id="header">
37
- <div id="menu">
38
-
39
- <a href="../_index.html">Index (D)</a> &raquo;
40
- <span class='title'><span class='object_link'><a href="../GandiV5.html" title="GandiV5 (class)">GandiV5</a></span></span>
41
- &raquo;
42
- <span class="title">Data</span>
43
-
44
- </div>
45
-
46
- <div id="search">
47
-
48
- <a class="full_list_link" id="class_list_link"
49
- href="../class_list.html">
50
-
51
- <svg width="24" height="24">
52
- <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
- <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
- <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
- </svg>
56
- </a>
57
-
58
- </div>
59
- <div class="clear"></div>
60
- </div>
61
-
62
- <div id="content"><h1>Module: GandiV5::Data
63
-
64
-
65
-
66
- </h1>
67
- <div class="box_info">
68
-
69
-
70
-
71
-
72
-
73
-
74
-
75
-
76
-
77
- <dl>
78
- <dt>Included in:</dt>
79
- <dd><span class='object_link'><a href="Billing/Info.html" title="GandiV5::Billing::Info (class)">Billing::Info</a></span>, <span class='object_link'><a href="Billing/Info/Prepaid.html" title="GandiV5::Billing::Info::Prepaid (class)">Billing::Info::Prepaid</a></span>, <span class='object_link'><a href="Domain.html" title="GandiV5::Domain (class)">Domain</a></span>, <span class='object_link'><a href="Domain/AutoRenew.html" title="GandiV5::Domain::AutoRenew (class)">GandiV5::Domain::AutoRenew</a></span>, <span class='object_link'><a href="Domain/Availability.html" title="GandiV5::Domain::Availability (class)">GandiV5::Domain::Availability</a></span>, <span class='object_link'><a href="Domain/Availability/Product.html" title="GandiV5::Domain::Availability::Product (class)">GandiV5::Domain::Availability::Product</a></span>, <span class='object_link'><a href="Domain/Availability/Product/Price.html" title="GandiV5::Domain::Availability::Product::Price (class)">GandiV5::Domain::Availability::Product::Price</a></span>, <span class='object_link'><a href="Domain/Availability/Tax.html" title="GandiV5::Domain::Availability::Tax (class)">GandiV5::Domain::Availability::Tax</a></span>, <span class='object_link'><a href="Domain/Contact.html" title="GandiV5::Domain::Contact (class)">GandiV5::Domain::Contact</a></span>, <span class='object_link'><a href="Domain/Contract.html" title="GandiV5::Domain::Contract (class)">GandiV5::Domain::Contract</a></span>, <span class='object_link'><a href="Domain/Dates.html" title="GandiV5::Domain::Dates (class)">GandiV5::Domain::Dates</a></span>, <span class='object_link'><a href="Domain/RenewalInformation.html" title="GandiV5::Domain::RenewalInformation (class)">GandiV5::Domain::RenewalInformation</a></span>, <span class='object_link'><a href="Domain/RestoreInformation.html" title="GandiV5::Domain::RestoreInformation (class)">GandiV5::Domain::RestoreInformation</a></span>, <span class='object_link'><a href="Domain/SharingSpace.html" title="GandiV5::Domain::SharingSpace (class)">GandiV5::Domain::SharingSpace</a></span>, <span class='object_link'><a href="Domain/TLD.html" title="GandiV5::Domain::TLD (class)">GandiV5::Domain::TLD</a></span>, <span class='object_link'><a href="Email/Mailbox.html" title="GandiV5::Email::Mailbox (class)">Email::Mailbox</a></span>, <span class='object_link'><a href="Email/Mailbox/Responder.html" title="GandiV5::Email::Mailbox::Responder (class)">Email::Mailbox::Responder</a></span>, <span class='object_link'><a href="Email/Offer.html" title="GandiV5::Email::Offer (class)">Email::Offer</a></span>, <span class='object_link'><a href="Email/Slot.html" title="GandiV5::Email::Slot (class)">Email::Slot</a></span>, <span class='object_link'><a href="LiveDNS/Domain.html" title="GandiV5::LiveDNS::Domain (class)">LiveDNS::Domain</a></span>, <span class='object_link'><a href="LiveDNS/RecordSet.html" title="GandiV5::LiveDNS::RecordSet (class)">LiveDNS::RecordSet</a></span>, <span class='object_link'><a href="LiveDNS/Zone.html" title="GandiV5::LiveDNS::Zone (class)">LiveDNS::Zone</a></span>, <span class='object_link'><a href="LiveDNS/Zone/Snapshot.html" title="GandiV5::LiveDNS::Zone::Snapshot (class)">LiveDNS::Zone::Snapshot</a></span>, <span class='object_link'><a href="Organization.html" title="GandiV5::Organization (class)">Organization</a></span></dd>
80
- </dl>
81
-
82
-
83
-
84
- <dl>
85
- <dt>Defined in:</dt>
86
- <dd>lib/gandi_v5/data.rb<span class="defines">,<br />
87
- lib/gandi_v5/data/converter.rb,<br /> lib/gandi_v5/data/converter/time.rb,<br /> lib/gandi_v5/data/converter/symbol.rb,<br /> lib/gandi_v5/data/converter/array_of.rb</span>
88
- </dd>
89
- </dl>
90
-
91
- </div>
92
-
93
- <h2>Overview</h2><div class="docstring">
94
- <div class="discussion">
95
-
96
- <p>Addin providing a DSL to manage declaring attributes and how to map and convert to/from Gandi&#39;s fields.</p>
97
-
98
-
99
- </div>
100
- </div>
101
- <div class="tags">
102
-
103
-
104
- </div><h2>Defined Under Namespace</h2>
105
- <p class="children">
106
-
107
-
108
- <strong class="modules">Modules:</strong> <span class='object_link'><a href="Data/ClassMethods.html" title="GandiV5::Data::ClassMethods (module)">ClassMethods</a></span>
109
-
110
-
111
-
112
- <strong class="classes">Classes:</strong> <span class='object_link'><a href="Data/Converter.html" title="GandiV5::Data::Converter (class)">Converter</a></span>
113
-
114
-
115
- </p>
116
-
117
-
118
-
119
-
120
-
121
-
122
-
123
-
124
- <h2>
125
- Class Method Summary
126
- <small><a href="#" class="summary_toggle">collapse</a></small>
127
- </h2>
128
-
129
- <ul class="summary">
130
-
131
- <li class="public ">
132
- <span class="summary_signature">
133
-
134
- <a href="#included-class_method" title="included (class method)">.<strong>included</strong>(host_class) &#x21d2; Object </a>
135
-
136
-
137
-
138
- </span>
139
-
140
-
141
-
142
-
143
-
144
-
145
-
146
-
147
-
148
- <span class="summary_desc"><div class='inline'>
149
- <p>api private Add contents of ClassMethods to the Class which includes this module.</p>
150
- </div></span>
151
-
152
- </li>
153
-
154
-
155
- </ul>
156
-
157
- <h2>
158
- Instance Method Summary
159
- <small><a href="#" class="summary_toggle">collapse</a></small>
160
- </h2>
161
-
162
- <ul class="summary">
163
-
164
- <li class="public ">
165
- <span class="summary_signature">
166
-
167
- <a href="#from_gandi-instance_method" title="#from_gandi (instance method)">#<strong>from_gandi</strong>(data) &#x21d2; self </a>
168
-
169
-
170
-
171
- </span>
172
-
173
-
174
-
175
-
176
-
177
-
178
-
179
-
180
-
181
- <span class="summary_desc"><div class='inline'>
182
- <p>Update instance with data from Gandi.</p>
183
- </div></span>
184
-
185
- </li>
186
-
187
-
188
- <li class="public ">
189
- <span class="summary_signature">
190
-
191
- <a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(**members) &#x21d2; Object </a>
192
-
193
-
194
-
195
- </span>
196
-
197
-
198
-
199
-
200
-
201
-
202
-
203
-
204
-
205
- <span class="summary_desc"><div class='inline'>
206
- <p>Create a new instance from any passed members.</p>
207
- </div></span>
208
-
209
- </li>
210
-
211
-
212
- <li class="public ">
213
- <span class="summary_signature">
214
-
215
- <a href="#to_gandi-instance_method" title="#to_gandi (instance method)">#<strong>to_gandi</strong> &#x21d2; Hash&lt;String =&gt; nil, Boolean, String, Numeric, Hash, Array&gt; </a>
216
-
217
-
218
-
219
- </span>
220
-
221
-
222
-
223
-
224
-
225
-
226
-
227
-
228
-
229
- <span class="summary_desc"><div class='inline'>
230
- <p>Get a hash representation of this object suitable for passing back to Gandi.</p>
231
- </div></span>
232
-
233
- </li>
234
-
235
-
236
- <li class="public ">
237
- <span class="summary_signature">
238
-
239
- <a href="#to_h-instance_method" title="#to_h (instance method)">#<strong>to_h</strong> &#x21d2; Hash&lt;Symbol =&gt; Object&gt; </a>
240
-
241
-
242
-
243
- </span>
244
-
245
-
246
-
247
-
248
-
249
-
250
-
251
-
252
-
253
- <span class="summary_desc"><div class='inline'>
254
- <p>Get a hash representation of the object.</p>
255
- </div></span>
256
-
257
- </li>
258
-
259
-
260
- <li class="public ">
261
- <span class="summary_signature">
262
-
263
- <a href="#values_at-instance_method" title="#values_at (instance method)">#<strong>values_at</strong>(*keys) &#x21d2; Array&lt;Object&gt; </a>
264
-
265
-
266
-
267
- </span>
268
-
269
-
270
-
271
-
272
-
273
-
274
-
275
-
276
-
277
- <span class="summary_desc"><div class='inline'>
278
- <p>Get an array of values from particular members.</p>
279
- </div></span>
280
-
281
- </li>
282
-
283
-
284
- </ul>
285
-
286
-
287
-
288
-
289
- <div id="class_method_details" class="method_details_list">
290
- <h2>Class Method Details</h2>
291
-
292
-
293
- <div class="method_details first">
294
- <h3 class="signature first" id="included-class_method">
295
-
296
- .<strong>included</strong>(host_class) &#x21d2; <tt>Object</tt>
297
-
298
-
299
-
300
-
301
-
302
- </h3><div class="docstring">
303
- <div class="discussion">
304
-
305
- <p>api private Add contents of ClassMethods to the Class which includes this module.</p>
306
-
307
-
308
- </div>
309
- </div>
310
- <div class="tags">
311
- <p class="tag_title">Parameters:</p>
312
- <ul class="param">
313
-
314
- <li>
315
-
316
- <span class='name'>host_class</span>
317
-
318
-
319
- <span class='type'>(<tt>Class</tt>)</span>
320
-
321
-
322
-
323
- &mdash;
324
- <div class='inline'>
325
- <p>the class which included us.</p>
326
- </div>
327
-
328
- </li>
329
-
330
- </ul>
331
-
332
-
333
- </div><table class="source_code">
334
- <tr>
335
- <td>
336
- <pre class="lines">
337
-
338
-
339
- 12
340
- 13
341
- 14
342
- 15
343
- 16
344
- 17
345
- 18
346
- 19
347
- 20
348
- 21</pre>
349
- </td>
350
- <td>
351
- <pre class="code"><span class="info file"># File 'lib/gandi_v5/data.rb', line 12</span>
352
-
353
- <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_included'>included</span><span class='lparen'>(</span><span class='id identifier rubyid_host_class'>host_class</span><span class='rparen'>)</span>
354
- <span class='id identifier rubyid_host_class'>host_class</span><span class='period'>.</span><span class='id identifier rubyid_extend'>extend</span> <span class='const'><span class='object_link'><a href="Data/ClassMethods.html" title="GandiV5::Data::ClassMethods (module)">ClassMethods</a></span></span>
355
-
356
- <span class='id identifier rubyid_host_class'>host_class</span><span class='period'>.</span><span class='id identifier rubyid_instance_exec'>instance_exec</span> <span class='kw'>do</span>
357
- <span class='ivar'>@data_members</span> <span class='op'>||=</span> <span class='const'>Set</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
358
- <span class='ivar'>@data_converters</span> <span class='op'>||=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
359
- <span class='ivar'>@data_map_key_to_member</span> <span class='op'>||=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
360
- <span class='ivar'>@data_map_member_to_key</span> <span class='op'>||=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
361
- <span class='kw'>end</span>
362
- <span class='kw'>end</span></pre>
363
- </td>
364
- </tr>
365
- </table>
366
- </div>
367
-
368
- </div>
369
-
370
- <div id="instance_method_details" class="method_details_list">
371
- <h2>Instance Method Details</h2>
372
-
373
-
374
- <div class="method_details first">
375
- <h3 class="signature first" id="from_gandi-instance_method">
376
-
377
- #<strong>from_gandi</strong>(data) &#x21d2; <tt>self</tt>
378
-
379
-
380
-
381
-
382
-
383
- </h3><div class="docstring">
384
- <div class="discussion">
385
-
386
- <p>Update instance with data from Gandi.</p>
387
-
388
-
389
- </div>
390
- </div>
391
- <div class="tags">
392
- <p class="tag_title">Parameters:</p>
393
- <ul class="param">
394
-
395
- <li>
396
-
397
- <span class='name'>data</span>
398
-
399
-
400
- <span class='type'>(<tt>Hash</tt>)</span>
401
-
402
-
403
-
404
- </li>
405
-
406
- </ul>
407
-
408
- <p class="tag_title">Returns:</p>
409
- <ul class="return">
410
-
411
- <li>
412
-
413
-
414
- <span class='type'>(<tt>self</tt>)</span>
415
-
416
-
417
-
418
- </li>
419
-
420
- </ul>
421
-
422
- </div><table class="source_code">
423
- <tr>
424
- <td>
425
- <pre class="lines">
426
-
427
-
428
- 82
429
- 83
430
- 84
431
- 85
432
- 86
433
- 87
434
- 88
435
- 89</pre>
436
- </td>
437
- <td>
438
- <pre class="code"><span class="info file"># File 'lib/gandi_v5/data.rb', line 82</span>
439
-
440
- <span class='kw'>def</span> <span class='id identifier rubyid_from_gandi'>from_gandi</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
441
- <span class='id identifier rubyid_translate_gandi'>translate_gandi</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='op'>|</span>
442
- <span class='kw'>next</span> <span class='kw'>unless</span> <span class='id identifier rubyid_data_member?'>data_member?</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span><span class='rparen'>)</span>
443
-
444
- <span class='id identifier rubyid_send'>send</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='embexpr_end'>}</span><span class='tstring_content'>=</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span>
445
- <span class='kw'>end</span>
446
- <span class='kw'>self</span>
447
- <span class='kw'>end</span></pre>
448
- </td>
449
- </tr>
450
- </table>
451
- </div>
452
-
453
- <div class="method_details ">
454
- <h3 class="signature " id="initialize-instance_method">
455
-
456
- #<strong>initialize</strong>(**members) &#x21d2; <tt>Object</tt>
457
-
458
-
459
-
460
-
461
-
462
- </h3><div class="docstring">
463
- <div class="discussion">
464
-
465
- <p>Create a new instance from any passed members. rubocop:disable Style/IfUnlessModifier</p>
466
-
467
-
468
- </div>
469
- </div>
470
- <div class="tags">
471
- <p class="tag_title">Parameters:</p>
472
- <ul class="param">
473
-
474
- <li>
475
-
476
- <span class='name'>members</span>
477
-
478
-
479
- <span class='type'>(<tt>Hash&lt;Symbol =&gt; Object&gt;</tt>)</span>
480
-
481
-
482
-
483
- </li>
484
-
485
- </ul>
486
-
487
-
488
- </div><table class="source_code">
489
- <tr>
490
- <td>
491
- <pre class="lines">
492
-
493
-
494
- 94
495
- 95
496
- 96
497
- 97
498
- 98
499
- 99
500
- 100
501
- 101
502
- 102</pre>
503
- </td>
504
- <td>
505
- <pre class="code"><span class="info file"># File 'lib/gandi_v5/data.rb', line 94</span>
506
-
507
- <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='op'>**</span><span class='id identifier rubyid_members'>members</span><span class='rparen'>)</span>
508
- <span class='id identifier rubyid_members'>members</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_member'>member</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='op'>|</span>
509
- <span class='kw'>unless</span> <span class='id identifier rubyid_data_member?'>data_member?</span><span class='lparen'>(</span><span class='id identifier rubyid_member'>member</span><span class='rparen'>)</span>
510
- <span class='id identifier rubyid_fail'>fail</span> <span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>unknown keyword: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_member'>member</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
511
- <span class='kw'>end</span>
512
-
513
- <span class='id identifier rubyid_send'>send</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_member'>member</span><span class='embexpr_end'>}</span><span class='tstring_content'>=</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span>
514
- <span class='kw'>end</span>
515
- <span class='kw'>end</span></pre>
516
- </td>
517
- </tr>
518
- </table>
519
- </div>
520
-
521
- <div class="method_details ">
522
- <h3 class="signature " id="to_gandi-instance_method">
523
-
524
- #<strong>to_gandi</strong> &#x21d2; <tt>Hash&lt;String =&gt; nil, Boolean, String, Numeric, Hash, Array&gt;</tt>
525
-
526
-
527
-
528
-
529
-
530
- </h3><div class="docstring">
531
- <div class="discussion">
532
-
533
- <p>Get a hash representation of this object suitable for passing back to Gandi.</p>
534
-
535
-
536
- </div>
537
- </div>
538
- <div class="tags">
539
-
540
- <p class="tag_title">Returns:</p>
541
- <ul class="return">
542
-
543
- <li>
544
-
545
-
546
- <span class='type'>(<tt>Hash&lt;String =&gt; nil, Boolean, String, Numeric, Hash, Array&gt;</tt>)</span>
547
-
548
-
549
-
550
- </li>
551
-
552
- </ul>
553
-
554
- </div><table class="source_code">
555
- <tr>
556
- <td>
557
- <pre class="lines">
558
-
559
-
560
- 43
561
- 44
562
- 45
563
- 46
564
- 47
565
- 48
566
- 49
567
- 50
568
- 51
569
- 52
570
- 53
571
- 54
572
- 55
573
- 56
574
- 57
575
- 58
576
- 59
577
- 60
578
- 61</pre>
579
- </td>
580
- <td>
581
- <pre class="code"><span class="info file"># File 'lib/gandi_v5/data.rb', line 43</span>
582
-
583
- <span class='kw'>def</span> <span class='id identifier rubyid_to_gandi'>to_gandi</span>
584
- <span class='id identifier rubyid_data'>data</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
585
-
586
- <span class='id identifier rubyid_data_members'>data_members</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_member'>member</span><span class='op'>|</span>
587
- <span class='id identifier rubyid_key'>key</span> <span class='op'>=</span> <span class='id identifier rubyid_data_member_to_gandi_key'>data_member_to_gandi_key</span><span class='lparen'>(</span><span class='id identifier rubyid_member'>member</span><span class='rparen'>)</span>
588
- <span class='id identifier rubyid_value'>value</span> <span class='op'>=</span> <span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='id identifier rubyid_member'>member</span><span class='rparen'>)</span>
589
- <span class='id identifier rubyid_converter'>converter</span> <span class='op'>=</span> <span class='id identifier rubyid_data_converter_for'>data_converter_for</span><span class='lparen'>(</span><span class='id identifier rubyid_member'>member</span><span class='rparen'>)</span>
590
-
591
- <span class='id identifier rubyid_data'>data</span><span class='lbracket'>[</span><span class='id identifier rubyid_key'>key</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='kw'>if</span> <span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_respond_to?'>respond_to?</span><span class='lparen'>(</span><span class='symbol'>:to_gandi</span><span class='rparen'>)</span>
592
- <span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_to_gandi'>to_gandi</span>
593
- <span class='kw'>elsif</span> <span class='id identifier rubyid_converter'>converter</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
594
- <span class='id identifier rubyid_converter'>converter</span><span class='period'>.</span><span class='id identifier rubyid_to_gandi'>to_gandi</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
595
- <span class='kw'>else</span>
596
- <span class='id identifier rubyid_value'>value</span>
597
- <span class='kw'>end</span>
598
- <span class='kw'>end</span>
599
-
600
- <span class='id identifier rubyid_data'>data</span>
601
- <span class='kw'>end</span></pre>
602
- </td>
603
- </tr>
604
- </table>
605
- </div>
606
-
607
- <div class="method_details ">
608
- <h3 class="signature " id="to_h-instance_method">
609
-
610
- #<strong>to_h</strong> &#x21d2; <tt>Hash&lt;Symbol =&gt; Object&gt;</tt>
611
-
612
-
613
-
614
-
615
-
616
- </h3><div class="docstring">
617
- <div class="discussion">
618
-
619
- <p>Get a hash representation of the object.</p>
620
-
621
-
622
- </div>
623
- </div>
624
- <div class="tags">
625
-
626
- <p class="tag_title">Returns:</p>
627
- <ul class="return">
628
-
629
- <li>
630
-
631
-
632
- <span class='type'>(<tt>Hash&lt;Symbol =&gt; Object&gt;</tt>)</span>
633
-
634
-
635
-
636
- </li>
637
-
638
- </ul>
639
-
640
- </div><table class="source_code">
641
- <tr>
642
- <td>
643
- <pre class="lines">
644
-
645
-
646
- 25
647
- 26
648
- 27
649
- 28
650
- 29
651
- 30
652
- 31
653
- 32
654
- 33
655
- 34
656
- 35
657
- 36
658
- 37
659
- 38
660
- 39</pre>
661
- </td>
662
- <td>
663
- <pre class="code"><span class="info file"># File 'lib/gandi_v5/data.rb', line 25</span>
664
-
665
- <span class='kw'>def</span> <span class='id identifier rubyid_to_h'>to_h</span>
666
- <span class='const'>Hash</span><span class='lbracket'>[</span>
667
- <span class='id identifier rubyid_data_members'>data_members</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_key'>key</span><span class='op'>|</span>
668
- <span class='id identifier rubyid_value'>value</span> <span class='op'>=</span> <span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='rparen'>)</span>
669
- <span class='kw'>next</span> <span class='lbracket'>[</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='rbracket'>]</span> <span class='kw'>if</span> <span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
670
-
671
- <span class='kw'>if</span> <span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Enumerable</span><span class='rparen'>)</span>
672
- <span class='id identifier rubyid_value'>value</span> <span class='op'>=</span> <span class='id identifier rubyid_to_h_transform_enumerable'>to_h_transform_enumerable</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
673
- <span class='kw'>elsif</span> <span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_respond_to?'>respond_to?</span><span class='lparen'>(</span><span class='symbol'>:to_h</span><span class='rparen'>)</span>
674
- <span class='id identifier rubyid_value'>value</span> <span class='op'>=</span> <span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_to_h'>to_h</span>
675
- <span class='kw'>end</span>
676
- <span class='lbracket'>[</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='rbracket'>]</span>
677
- <span class='kw'>end</span>
678
- <span class='rbracket'>]</span>
679
- <span class='kw'>end</span></pre>
680
- </td>
681
- </tr>
682
- </table>
683
- </div>
684
-
685
- <div class="method_details ">
686
- <h3 class="signature " id="values_at-instance_method">
687
-
688
- #<strong>values_at</strong>(*keys) &#x21d2; <tt>Array&lt;Object&gt;</tt>
689
-
690
-
691
-
692
-
693
-
694
- </h3><div class="docstring">
695
- <div class="discussion">
696
-
697
- <p>Get an array of values from particular members. rubocop:disable Style/IfUnlessModifier</p>
698
-
699
-
700
- </div>
701
- </div>
702
- <div class="tags">
703
- <p class="tag_title">Parameters:</p>
704
- <ul class="param">
705
-
706
- <li>
707
-
708
- <span class='name'>keys</span>
709
-
710
-
711
- <span class='type'>(<tt>Array&lt;Symbol, String&gt;</tt>)</span>
712
-
713
-
714
-
715
- &mdash;
716
- <div class='inline'>
717
- <p>e.g. :fqdn, “contacts.owner”</p>
718
- </div>
719
-
720
- </li>
721
-
722
- </ul>
723
-
724
- <p class="tag_title">Returns:</p>
725
- <ul class="return">
726
-
727
- <li>
728
-
729
-
730
- <span class='type'>(<tt>Array&lt;Object&gt;</tt>)</span>
731
-
732
-
733
-
734
- </li>
735
-
736
- </ul>
737
-
738
- </div><table class="source_code">
739
- <tr>
740
- <td>
741
- <pre class="lines">
742
-
743
-
744
- 67
745
- 68
746
- 69
747
- 70
748
- 71
749
- 72
750
- 73
751
- 74
752
- 75
753
- 76</pre>
754
- </td>
755
- <td>
756
- <pre class="code"><span class="info file"># File 'lib/gandi_v5/data.rb', line 67</span>
757
-
758
- <span class='kw'>def</span> <span class='id identifier rubyid_values_at'>values_at</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_keys'>keys</span><span class='rparen'>)</span>
759
- <span class='id identifier rubyid_keys'>keys</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='symbol'>:to_s</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_key'>key</span><span class='op'>|</span>
760
- <span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_sub_key'>sub_key</span> <span class='op'>=</span> <span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_split'>split</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>.</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='int'>2</span><span class='rparen'>)</span>
761
- <span class='kw'>unless</span> <span class='id identifier rubyid_data_member?'>data_member?</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span><span class='rparen'>)</span>
762
- <span class='id identifier rubyid_fail'>fail</span> <span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='embexpr_end'>}</span><span class='tstring_content'> is not a member.</span><span class='tstring_end'>&quot;</span></span>
763
- <span class='kw'>end</span>
764
-
765
- <span class='id identifier rubyid_sub_key'>sub_key</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span> <span class='op'>?</span> <span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='rparen'>)</span> <span class='op'>:</span> <span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_values_at'>values_at</span><span class='lparen'>(</span><span class='id identifier rubyid_sub_key'>sub_key</span><span class='rparen'>)</span>
766
- <span class='kw'>end</span>
767
- <span class='kw'>end</span></pre>
768
- </td>
769
- </tr>
770
- </table>
771
- </div>
772
-
773
- </div>
774
-
775
- </div>
776
-
777
- <div id="footer">
778
- Generated on Mon Jul 22 16:44:23 2019 by
779
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
780
- 0.9.19 (ruby-2.6.3).
781
- </div>
782
-
783
- </div>
784
- </body>
785
- </html>