// Copyright 2018 JDCLOUD.COM // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // // NOTE: This class is auto generated by the jdcloud code generator program. package client import ( "encoding/json" "errors" "github.com/go-acme/jdcloud-sdk-go/core" domainservice "github.com/go-acme/jdcloud-sdk-go/services/domainservice/apis" ) type DomainserviceClient struct { core.JDCloudClient } func NewDomainserviceClient(credential *core.Credential) *DomainserviceClient { if credential == nil { return nil } config := core.NewConfig() config.SetEndpoint("domainservice.jdcloud-api.com") return &DomainserviceClient{ core.JDCloudClient{ Credential: *credential, Config: *config, ServiceName: "domainservice", Revision: "2.0.3", Logger: core.NewDefaultLogger(core.LogInfo), }} } func (c *DomainserviceClient) SetConfig(config *core.Config) { c.Config = *config } func (c *DomainserviceClient) SetLogger(logger core.Logger) { c.Logger = logger } func (c *DomainserviceClient) DisableLogger() { c.Logger = core.NewDummyLogger() } /* 删除主域名的自定义解析线路的IP段 */ func DeleteUserViewIP(c *DomainserviceClient, request *domainservice.DeleteUserViewIPRequest) (*domainservice.DeleteUserViewIPResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.DeleteUserViewIPResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 查看用户在云解析服务下的操作记录 */ func DescribeActionLog(c *DomainserviceClient, request *domainservice.DescribeActionLogRequest) (*domainservice.DescribeActionLogResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.DescribeActionLogResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 查看主域名的解析次数 */ func DescribeDomainQueryCount(c *DomainserviceClient, request *domainservice.DescribeDomainQueryCountRequest) (*domainservice.DescribeDomainQueryCountResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.DescribeDomainQueryCountResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 查看域名的查询流量 */ func DescribeDomainQueryTraffic(c *DomainserviceClient, request *domainservice.DescribeDomainQueryTrafficRequest) (*domainservice.DescribeDomainQueryTrafficResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.DescribeDomainQueryTrafficResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 监控项的操作集合,包括:暂停,启动, 手动恢复, 手动切换 */ func ModifyMonitorStatus(c *DomainserviceClient, request *domainservice.ModifyMonitorStatusRequest) (*domainservice.ModifyMonitorStatusResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.ModifyMonitorStatusResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 添加主域名的解析记录 */ func CreateResourceRecord(c *DomainserviceClient, request *domainservice.CreateResourceRecordRequest) (*domainservice.CreateResourceRecordResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.CreateResourceRecordResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 修改主域名 */ func ModifyDomain(c *DomainserviceClient, request *domainservice.ModifyDomainRequest) (*domainservice.ModifyDomainResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.ModifyDomainResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 同一个主域名下,批量新增或者批量更新导入解析记录。 如果解析记录的ID为0,是新增解析记录,如果不为0,则是更新解析记录。 */ func BatchSetResourceRecords(c *DomainserviceClient, request *domainservice.BatchSetResourceRecordsRequest) (*domainservice.BatchSetResourceRecordsResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.BatchSetResourceRecordsResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 查询子域名的可用监控对象 */ func DescribeMonitorTarget(c *DomainserviceClient, request *domainservice.DescribeMonitorTargetRequest) (*domainservice.DescribeMonitorTargetResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.DescribeMonitorTargetResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 添加子域名的某些特定监控对象为监控项 */ func CreateMonitorTarget(c *DomainserviceClient, request *domainservice.CreateMonitorTargetRequest) (*domainservice.CreateMonitorTargetResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.CreateMonitorTargetResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 添加主域名 如何添加免费域名,详细情况请查阅文档 添加收费域名,请查阅文档, 添加收费域名前,请确保用户的京东云账户有足够的资金支付,Openapi接口回返回订单号,可以用此订单号向计费系统查阅详情。 */ func CreateDomain(c *DomainserviceClient, request *domainservice.CreateDomainRequest) (*domainservice.CreateDomainResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.CreateDomainResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 查询主域名的自定义解析线路的IP段 */ func DescribeUserViewIP(c *DomainserviceClient, request *domainservice.DescribeUserViewIPRequest) (*domainservice.DescribeUserViewIPResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.DescribeUserViewIPResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 启用、停用主域名下的解析记录 */ func ModifyResourceRecordStatus(c *DomainserviceClient, request *domainservice.ModifyResourceRecordStatusRequest) (*domainservice.ModifyResourceRecordStatusResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.ModifyResourceRecordStatusResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 修改主域名的某个解析记录 */ func ModifyResourceRecord(c *DomainserviceClient, request *domainservice.ModifyResourceRecordRequest) (*domainservice.ModifyResourceRecordResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.ModifyResourceRecordResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 获取用户所属的主域名列表。 请在调用域名相关的接口之前,调用此接口获取相关的domainId和domainName。 主域名的相关概念,请查阅云解析文档 */ func DescribeDomains(c *DomainserviceClient, request *domainservice.DescribeDomainsRequest) (*domainservice.DescribeDomainsResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.DescribeDomainsResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 添加子域名的监控项,默认把子域名的所有监控项都添加上监控 */ func CreateMonitor(c *DomainserviceClient, request *domainservice.CreateMonitorRequest) (*domainservice.CreateMonitorResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.CreateMonitorResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 添加主域名的自定义解析线路的IP段 */ func CreateUserViewIP(c *DomainserviceClient, request *domainservice.CreateUserViewIPRequest) (*domainservice.CreateUserViewIPResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.CreateUserViewIPResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 删除主域名的自定义解析线路 */ func DeleteUserView(c *DomainserviceClient, request *domainservice.DeleteUserViewRequest) (*domainservice.DeleteUserViewResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.DeleteUserViewResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 域名的监控项修改 */ func ModifyMonitor(c *DomainserviceClient, request *domainservice.ModifyMonitorRequest) (*domainservice.ModifyMonitorResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.ModifyMonitorResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 查询主域名的解析记录。 在使用解析记录相关的接口之前,请调用此接口获取解析记录的列表。 */ func DescribeResourceRecord(c *DomainserviceClient, request *domainservice.DescribeResourceRecordRequest) (*domainservice.DescribeResourceRecordResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.DescribeResourceRecordResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 查询主域名的自定义解析线路 */ func DescribeUserView(c *DomainserviceClient, request *domainservice.DescribeUserViewRequest) (*domainservice.DescribeUserViewResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.DescribeUserViewResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 主域名的监控项的报警信息 */ func DescribeMonitorAlarm(c *DomainserviceClient, request *domainservice.DescribeMonitorAlarmRequest) (*domainservice.DescribeMonitorAlarmResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.DescribeMonitorAlarmResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 添加主域名的自定义解析线路 */ func CreateUserView(c *DomainserviceClient, request *domainservice.CreateUserViewRequest) (*domainservice.CreateUserViewResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.CreateUserViewResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 查询云解析所有的基础解析线路。 在使用解析线路的参数之前,请调用此接口获取解析线路的ID。 */ func DescribeViewTree(c *DomainserviceClient, request *domainservice.DescribeViewTreeRequest) (*domainservice.DescribeViewTreeResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.DescribeViewTreeResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 删除主域名下的解析记录 */ func DeleteResourceRecord(c *DomainserviceClient, request *domainservice.DeleteResourceRecordRequest) (*domainservice.DeleteResourceRecordResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.DeleteResourceRecordResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 查看主域名的监控项的配置以及状态 */ func DescribeMonitor(c *DomainserviceClient, request *domainservice.DescribeMonitorRequest) (*domainservice.DescribeMonitorResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.DescribeMonitorResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 监控项的删除 */ func DeleteMonitor(c *DomainserviceClient, request *domainservice.DeleteMonitorRequest) (*domainservice.DeleteMonitorResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.DeleteMonitorResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err } /* 删除主域名 */ func DeleteDomain(c *DomainserviceClient, request *domainservice.DeleteDomainRequest) (*domainservice.DeleteDomainResponse, error) { if request == nil { return nil, errors.New("Request object is nil. ") } resp, err := c.Send(request, c.ServiceName) if err != nil { return nil, err } jdResp := &domainservice.DeleteDomainResponse{} err = json.Unmarshal(resp, jdResp) if err != nil { c.Logger.Log(core.LogError, "Unmarshal json failed, resp: %s", string(resp)) return nil, err } return jdResp, err }