DomainserviceClient_modified.go raw
1 // Copyright 2018 JDCLOUD.COM
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of 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,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14 //
15 // NOTE: This class is auto generated by the jdcloud code generator program.
16
17 package client
18
19 import (
20 "encoding/json"
21 "errors"
22 "github.com/go-acme/jdcloud-sdk-go/core"
23 domainservice "github.com/go-acme/jdcloud-sdk-go/services/domainservice/apis"
24 )
25
26 type DomainserviceClient struct {
27 core.JDCloudClient
28 }
29
30 func NewDomainserviceClient(credential *core.Credential) *DomainserviceClient {
31 if credential == nil {
32 return nil
33 }
34
35 config := core.NewConfig()
36 config.SetEndpoint("domainservice.jdcloud-api.com")
37
38 return &DomainserviceClient{
39 core.JDCloudClient{
40 Credential: *credential,
41 Config: *config,
42 ServiceName: "domainservice",
43 Revision: "2.0.3",
44 Logger: core.NewDefaultLogger(core.LogInfo),
45 }}
46 }
47
48 func (c *DomainserviceClient) SetConfig(config *core.Config) {
49 c.Config = *config
50 }
51
52 func (c *DomainserviceClient) SetLogger(logger core.Logger) {
53 c.Logger = logger
54 }
55
56 func (c *DomainserviceClient) DisableLogger() {
57 c.Logger = core.NewDummyLogger()
58 }
59
60 /* 删除主域名的自定义解析线路的IP段 */
61 func DeleteUserViewIP(c *DomainserviceClient, request *domainservice.DeleteUserViewIPRequest) (*domainservice.DeleteUserViewIPResponse, error) {
62 if request == nil {
63 return nil, errors.New("Request object is nil. ")
64 }
65 resp, err := c.Send(request, c.ServiceName)
66 if err != nil {
67 return nil, err
68 }
69
70 jdResp := &domainservice.DeleteUserViewIPResponse{}
71 err = json.Unmarshal(resp, jdResp)
72 if err != nil {
73 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
74 return nil, err
75 }
76
77 return jdResp, err
78 }
79
80 /* 查看用户在云解析服务下的操作记录 */
81 func DescribeActionLog(c *DomainserviceClient, request *domainservice.DescribeActionLogRequest) (*domainservice.DescribeActionLogResponse, error) {
82 if request == nil {
83 return nil, errors.New("Request object is nil. ")
84 }
85 resp, err := c.Send(request, c.ServiceName)
86 if err != nil {
87 return nil, err
88 }
89
90 jdResp := &domainservice.DescribeActionLogResponse{}
91 err = json.Unmarshal(resp, jdResp)
92 if err != nil {
93 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
94 return nil, err
95 }
96
97 return jdResp, err
98 }
99
100 /* 查看主域名的解析次数 */
101 func DescribeDomainQueryCount(c *DomainserviceClient, request *domainservice.DescribeDomainQueryCountRequest) (*domainservice.DescribeDomainQueryCountResponse, error) {
102 if request == nil {
103 return nil, errors.New("Request object is nil. ")
104 }
105 resp, err := c.Send(request, c.ServiceName)
106 if err != nil {
107 return nil, err
108 }
109
110 jdResp := &domainservice.DescribeDomainQueryCountResponse{}
111 err = json.Unmarshal(resp, jdResp)
112 if err != nil {
113 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
114 return nil, err
115 }
116
117 return jdResp, err
118 }
119
120 /* 查看域名的查询流量 */
121 func DescribeDomainQueryTraffic(c *DomainserviceClient, request *domainservice.DescribeDomainQueryTrafficRequest) (*domainservice.DescribeDomainQueryTrafficResponse, error) {
122 if request == nil {
123 return nil, errors.New("Request object is nil. ")
124 }
125 resp, err := c.Send(request, c.ServiceName)
126 if err != nil {
127 return nil, err
128 }
129
130 jdResp := &domainservice.DescribeDomainQueryTrafficResponse{}
131 err = json.Unmarshal(resp, jdResp)
132 if err != nil {
133 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
134 return nil, err
135 }
136
137 return jdResp, err
138 }
139
140 /* 监控项的操作集合,包括:暂停,启动, 手动恢复, 手动切换 */
141 func ModifyMonitorStatus(c *DomainserviceClient, request *domainservice.ModifyMonitorStatusRequest) (*domainservice.ModifyMonitorStatusResponse, error) {
142 if request == nil {
143 return nil, errors.New("Request object is nil. ")
144 }
145 resp, err := c.Send(request, c.ServiceName)
146 if err != nil {
147 return nil, err
148 }
149
150 jdResp := &domainservice.ModifyMonitorStatusResponse{}
151 err = json.Unmarshal(resp, jdResp)
152 if err != nil {
153 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
154 return nil, err
155 }
156
157 return jdResp, err
158 }
159
160 /* 添加主域名的解析记录 */
161 func CreateResourceRecord(c *DomainserviceClient, request *domainservice.CreateResourceRecordRequest) (*domainservice.CreateResourceRecordResponse, error) {
162 if request == nil {
163 return nil, errors.New("Request object is nil. ")
164 }
165 resp, err := c.Send(request, c.ServiceName)
166 if err != nil {
167 return nil, err
168 }
169
170 jdResp := &domainservice.CreateResourceRecordResponse{}
171 err = json.Unmarshal(resp, jdResp)
172 if err != nil {
173 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
174 return nil, err
175 }
176
177 return jdResp, err
178 }
179
180 /* 修改主域名 */
181 func ModifyDomain(c *DomainserviceClient, request *domainservice.ModifyDomainRequest) (*domainservice.ModifyDomainResponse, error) {
182 if request == nil {
183 return nil, errors.New("Request object is nil. ")
184 }
185 resp, err := c.Send(request, c.ServiceName)
186 if err != nil {
187 return nil, err
188 }
189
190 jdResp := &domainservice.ModifyDomainResponse{}
191 err = json.Unmarshal(resp, jdResp)
192 if err != nil {
193 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
194 return nil, err
195 }
196
197 return jdResp, err
198 }
199
200 /*
201 同一个主域名下,批量新增或者批量更新导入解析记录。
202
203 如果解析记录的ID为0,是新增解析记录,如果不为0,则是更新解析记录。
204 */
205 func BatchSetResourceRecords(c *DomainserviceClient, request *domainservice.BatchSetResourceRecordsRequest) (*domainservice.BatchSetResourceRecordsResponse, error) {
206 if request == nil {
207 return nil, errors.New("Request object is nil. ")
208 }
209 resp, err := c.Send(request, c.ServiceName)
210 if err != nil {
211 return nil, err
212 }
213
214 jdResp := &domainservice.BatchSetResourceRecordsResponse{}
215 err = json.Unmarshal(resp, jdResp)
216 if err != nil {
217 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
218 return nil, err
219 }
220
221 return jdResp, err
222 }
223
224 /* 查询子域名的可用监控对象 */
225 func DescribeMonitorTarget(c *DomainserviceClient, request *domainservice.DescribeMonitorTargetRequest) (*domainservice.DescribeMonitorTargetResponse, error) {
226 if request == nil {
227 return nil, errors.New("Request object is nil. ")
228 }
229 resp, err := c.Send(request, c.ServiceName)
230 if err != nil {
231 return nil, err
232 }
233
234 jdResp := &domainservice.DescribeMonitorTargetResponse{}
235 err = json.Unmarshal(resp, jdResp)
236 if err != nil {
237 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
238 return nil, err
239 }
240
241 return jdResp, err
242 }
243
244 /* 添加子域名的某些特定监控对象为监控项 */
245 func CreateMonitorTarget(c *DomainserviceClient, request *domainservice.CreateMonitorTargetRequest) (*domainservice.CreateMonitorTargetResponse, error) {
246 if request == nil {
247 return nil, errors.New("Request object is nil. ")
248 }
249 resp, err := c.Send(request, c.ServiceName)
250 if err != nil {
251 return nil, err
252 }
253
254 jdResp := &domainservice.CreateMonitorTargetResponse{}
255 err = json.Unmarshal(resp, jdResp)
256 if err != nil {
257 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
258 return nil, err
259 }
260
261 return jdResp, err
262 }
263
264 /*
265 添加主域名
266
267 如何添加免费域名,详细情况请查阅<a href="https://docs.jdcloud.com/cn/jd-cloud-dns/domainadd">文档</a>
268 添加收费域名,请查阅<a href="https://docs.jdcloud.com/cn/jd-cloud-dns/purchase-process">文档</a>,
269 添加收费域名前,请确保用户的京东云账户有足够的资金支付,Openapi接口回返回订单号,可以用此订单号向计费系统查阅详情。
270 */
271 func CreateDomain(c *DomainserviceClient, request *domainservice.CreateDomainRequest) (*domainservice.CreateDomainResponse, error) {
272 if request == nil {
273 return nil, errors.New("Request object is nil. ")
274 }
275 resp, err := c.Send(request, c.ServiceName)
276 if err != nil {
277 return nil, err
278 }
279
280 jdResp := &domainservice.CreateDomainResponse{}
281 err = json.Unmarshal(resp, jdResp)
282 if err != nil {
283 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
284 return nil, err
285 }
286
287 return jdResp, err
288 }
289
290 /* 查询主域名的自定义解析线路的IP段 */
291 func DescribeUserViewIP(c *DomainserviceClient, request *domainservice.DescribeUserViewIPRequest) (*domainservice.DescribeUserViewIPResponse, error) {
292 if request == nil {
293 return nil, errors.New("Request object is nil. ")
294 }
295 resp, err := c.Send(request, c.ServiceName)
296 if err != nil {
297 return nil, err
298 }
299
300 jdResp := &domainservice.DescribeUserViewIPResponse{}
301 err = json.Unmarshal(resp, jdResp)
302 if err != nil {
303 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
304 return nil, err
305 }
306
307 return jdResp, err
308 }
309
310 /* 启用、停用主域名下的解析记录 */
311 func ModifyResourceRecordStatus(c *DomainserviceClient, request *domainservice.ModifyResourceRecordStatusRequest) (*domainservice.ModifyResourceRecordStatusResponse, error) {
312 if request == nil {
313 return nil, errors.New("Request object is nil. ")
314 }
315 resp, err := c.Send(request, c.ServiceName)
316 if err != nil {
317 return nil, err
318 }
319
320 jdResp := &domainservice.ModifyResourceRecordStatusResponse{}
321 err = json.Unmarshal(resp, jdResp)
322 if err != nil {
323 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
324 return nil, err
325 }
326
327 return jdResp, err
328 }
329
330 /* 修改主域名的某个解析记录 */
331 func ModifyResourceRecord(c *DomainserviceClient, request *domainservice.ModifyResourceRecordRequest) (*domainservice.ModifyResourceRecordResponse, error) {
332 if request == nil {
333 return nil, errors.New("Request object is nil. ")
334 }
335 resp, err := c.Send(request, c.ServiceName)
336 if err != nil {
337 return nil, err
338 }
339
340 jdResp := &domainservice.ModifyResourceRecordResponse{}
341 err = json.Unmarshal(resp, jdResp)
342 if err != nil {
343 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
344 return nil, err
345 }
346
347 return jdResp, err
348 }
349
350 /*
351 获取用户所属的主域名列表。
352
353 请在调用域名相关的接口之前,调用此接口获取相关的domainId和domainName。
354 主域名的相关概念,请查阅<a href="https://docs.jdcloud.com/cn/jd-cloud-dns/product-overview">云解析文档</a>
355 */
356 func DescribeDomains(c *DomainserviceClient, request *domainservice.DescribeDomainsRequest) (*domainservice.DescribeDomainsResponse, error) {
357 if request == nil {
358 return nil, errors.New("Request object is nil. ")
359 }
360 resp, err := c.Send(request, c.ServiceName)
361 if err != nil {
362 return nil, err
363 }
364
365 jdResp := &domainservice.DescribeDomainsResponse{}
366 err = json.Unmarshal(resp, jdResp)
367 if err != nil {
368 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
369 return nil, err
370 }
371
372 return jdResp, err
373 }
374
375 /* 添加子域名的监控项,默认把子域名的所有监控项都添加上监控 */
376 func CreateMonitor(c *DomainserviceClient, request *domainservice.CreateMonitorRequest) (*domainservice.CreateMonitorResponse, error) {
377 if request == nil {
378 return nil, errors.New("Request object is nil. ")
379 }
380 resp, err := c.Send(request, c.ServiceName)
381 if err != nil {
382 return nil, err
383 }
384
385 jdResp := &domainservice.CreateMonitorResponse{}
386 err = json.Unmarshal(resp, jdResp)
387 if err != nil {
388 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
389 return nil, err
390 }
391
392 return jdResp, err
393 }
394
395 /* 添加主域名的自定义解析线路的IP段 */
396 func CreateUserViewIP(c *DomainserviceClient, request *domainservice.CreateUserViewIPRequest) (*domainservice.CreateUserViewIPResponse, error) {
397 if request == nil {
398 return nil, errors.New("Request object is nil. ")
399 }
400 resp, err := c.Send(request, c.ServiceName)
401 if err != nil {
402 return nil, err
403 }
404
405 jdResp := &domainservice.CreateUserViewIPResponse{}
406 err = json.Unmarshal(resp, jdResp)
407 if err != nil {
408 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
409 return nil, err
410 }
411
412 return jdResp, err
413 }
414
415 /* 删除主域名的自定义解析线路 */
416 func DeleteUserView(c *DomainserviceClient, request *domainservice.DeleteUserViewRequest) (*domainservice.DeleteUserViewResponse, error) {
417 if request == nil {
418 return nil, errors.New("Request object is nil. ")
419 }
420 resp, err := c.Send(request, c.ServiceName)
421 if err != nil {
422 return nil, err
423 }
424
425 jdResp := &domainservice.DeleteUserViewResponse{}
426 err = json.Unmarshal(resp, jdResp)
427 if err != nil {
428 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
429 return nil, err
430 }
431
432 return jdResp, err
433 }
434
435 /* 域名的监控项修改 */
436 func ModifyMonitor(c *DomainserviceClient, request *domainservice.ModifyMonitorRequest) (*domainservice.ModifyMonitorResponse, error) {
437 if request == nil {
438 return nil, errors.New("Request object is nil. ")
439 }
440 resp, err := c.Send(request, c.ServiceName)
441 if err != nil {
442 return nil, err
443 }
444
445 jdResp := &domainservice.ModifyMonitorResponse{}
446 err = json.Unmarshal(resp, jdResp)
447 if err != nil {
448 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
449 return nil, err
450 }
451
452 return jdResp, err
453 }
454
455 /*
456 查询主域名的解析记录。
457
458 在使用解析记录相关的接口之前,请调用此接口获取解析记录的列表。
459 */
460 func DescribeResourceRecord(c *DomainserviceClient, request *domainservice.DescribeResourceRecordRequest) (*domainservice.DescribeResourceRecordResponse, error) {
461 if request == nil {
462 return nil, errors.New("Request object is nil. ")
463 }
464 resp, err := c.Send(request, c.ServiceName)
465 if err != nil {
466 return nil, err
467 }
468
469 jdResp := &domainservice.DescribeResourceRecordResponse{}
470 err = json.Unmarshal(resp, jdResp)
471 if err != nil {
472 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
473 return nil, err
474 }
475
476 return jdResp, err
477 }
478
479 /* 查询主域名的自定义解析线路 */
480 func DescribeUserView(c *DomainserviceClient, request *domainservice.DescribeUserViewRequest) (*domainservice.DescribeUserViewResponse, error) {
481 if request == nil {
482 return nil, errors.New("Request object is nil. ")
483 }
484 resp, err := c.Send(request, c.ServiceName)
485 if err != nil {
486 return nil, err
487 }
488
489 jdResp := &domainservice.DescribeUserViewResponse{}
490 err = json.Unmarshal(resp, jdResp)
491 if err != nil {
492 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
493 return nil, err
494 }
495
496 return jdResp, err
497 }
498
499 /* 主域名的监控项的报警信息 */
500 func DescribeMonitorAlarm(c *DomainserviceClient, request *domainservice.DescribeMonitorAlarmRequest) (*domainservice.DescribeMonitorAlarmResponse, error) {
501 if request == nil {
502 return nil, errors.New("Request object is nil. ")
503 }
504 resp, err := c.Send(request, c.ServiceName)
505 if err != nil {
506 return nil, err
507 }
508
509 jdResp := &domainservice.DescribeMonitorAlarmResponse{}
510 err = json.Unmarshal(resp, jdResp)
511 if err != nil {
512 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
513 return nil, err
514 }
515
516 return jdResp, err
517 }
518
519 /* 添加主域名的自定义解析线路 */
520 func CreateUserView(c *DomainserviceClient, request *domainservice.CreateUserViewRequest) (*domainservice.CreateUserViewResponse, error) {
521 if request == nil {
522 return nil, errors.New("Request object is nil. ")
523 }
524 resp, err := c.Send(request, c.ServiceName)
525 if err != nil {
526 return nil, err
527 }
528
529 jdResp := &domainservice.CreateUserViewResponse{}
530 err = json.Unmarshal(resp, jdResp)
531 if err != nil {
532 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
533 return nil, err
534 }
535
536 return jdResp, err
537 }
538
539 /*
540 查询云解析所有的基础解析线路。
541
542 在使用解析线路的参数之前,请调用此接口获取解析线路的ID。
543 */
544 func DescribeViewTree(c *DomainserviceClient, request *domainservice.DescribeViewTreeRequest) (*domainservice.DescribeViewTreeResponse, error) {
545 if request == nil {
546 return nil, errors.New("Request object is nil. ")
547 }
548 resp, err := c.Send(request, c.ServiceName)
549 if err != nil {
550 return nil, err
551 }
552
553 jdResp := &domainservice.DescribeViewTreeResponse{}
554 err = json.Unmarshal(resp, jdResp)
555 if err != nil {
556 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
557 return nil, err
558 }
559
560 return jdResp, err
561 }
562
563 /* 删除主域名下的解析记录 */
564 func DeleteResourceRecord(c *DomainserviceClient, request *domainservice.DeleteResourceRecordRequest) (*domainservice.DeleteResourceRecordResponse, error) {
565 if request == nil {
566 return nil, errors.New("Request object is nil. ")
567 }
568 resp, err := c.Send(request, c.ServiceName)
569 if err != nil {
570 return nil, err
571 }
572
573 jdResp := &domainservice.DeleteResourceRecordResponse{}
574 err = json.Unmarshal(resp, jdResp)
575 if err != nil {
576 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
577 return nil, err
578 }
579
580 return jdResp, err
581 }
582
583 /* 查看主域名的监控项的配置以及状态 */
584 func DescribeMonitor(c *DomainserviceClient, request *domainservice.DescribeMonitorRequest) (*domainservice.DescribeMonitorResponse, error) {
585 if request == nil {
586 return nil, errors.New("Request object is nil. ")
587 }
588 resp, err := c.Send(request, c.ServiceName)
589 if err != nil {
590 return nil, err
591 }
592
593 jdResp := &domainservice.DescribeMonitorResponse{}
594 err = json.Unmarshal(resp, jdResp)
595 if err != nil {
596 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
597 return nil, err
598 }
599
600 return jdResp, err
601 }
602
603 /* 监控项的删除 */
604 func DeleteMonitor(c *DomainserviceClient, request *domainservice.DeleteMonitorRequest) (*domainservice.DeleteMonitorResponse, error) {
605 if request == nil {
606 return nil, errors.New("Request object is nil. ")
607 }
608 resp, err := c.Send(request, c.ServiceName)
609 if err != nil {
610 return nil, err
611 }
612
613 jdResp := &domainservice.DeleteMonitorResponse{}
614 err = json.Unmarshal(resp, jdResp)
615 if err != nil {
616 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
617 return nil, err
618 }
619
620 return jdResp, err
621 }
622
623 /* 删除主域名 */
624 func DeleteDomain(c *DomainserviceClient, request *domainservice.DeleteDomainRequest) (*domainservice.DeleteDomainResponse, error) {
625 if request == nil {
626 return nil, errors.New("Request object is nil. ")
627 }
628 resp, err := c.Send(request, c.ServiceName)
629 if err != nil {
630 return nil, err
631 }
632
633 jdResp := &domainservice.DeleteDomainResponse{}
634 err = json.Unmarshal(resp, jdResp)
635 if err != nil {
636 c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp))
637 return nil, err
638 }
639
640 return jdResp, err
641 }
642