Beispiel #1
0
func (sldds *softLayer_Dns_Domain_Service) CreateObject(template datatypes.SoftLayer_Dns_Domain_Template) (datatypes.SoftLayer_Dns_Domain, error) {
	if template.ResourceRecords == nil {
		template.ResourceRecords = []datatypes.SoftLayer_Dns_Domain_ResourceRecord{}
	}

	parameters := datatypes.SoftLayer_Dns_Domain_Template_Parameters{
		Parameters: []datatypes.SoftLayer_Dns_Domain_Template{
			template,
		},
	}

	requestBody, err := json.Marshal(parameters)
	if err != nil {
		return datatypes.SoftLayer_Dns_Domain{}, err
	}

	response, err := sldds.client.DoRawHttpRequest(fmt.Sprintf("%s.json", sldds.GetName()), "POST", bytes.NewBuffer(requestBody))
	if err != nil {
		return datatypes.SoftLayer_Dns_Domain{}, err
	}

	err = sldds.client.CheckForHttpResponseErrors(response)
	if err != nil {
		return datatypes.SoftLayer_Dns_Domain{}, err
	}

	softLayer_Dns_Domain := datatypes.SoftLayer_Dns_Domain{}
	err = json.Unmarshal(response, &softLayer_Dns_Domain)
	if err != nil {
		return datatypes.SoftLayer_Dns_Domain{}, err
	}

	return softLayer_Dns_Domain, nil
}
func (sldds *softLayer_Dns_Domain_Service) CreateObject(template datatypes.SoftLayer_Dns_Domain_Template) (datatypes.SoftLayer_Dns_Domain, error) {
	if template.ResourceRecords == nil {
		template.ResourceRecords = []datatypes.SoftLayer_Dns_Domain_ResourceRecord{}
	}

	parameters := datatypes.SoftLayer_Dns_Domain_Template_Parameters{
		Parameters: []datatypes.SoftLayer_Dns_Domain_Template{
			template,
		},
	}

	requestBody, err := json.Marshal(parameters)
	if err != nil {
		return datatypes.SoftLayer_Dns_Domain{}, err
	}

	response, errorCode, err := sldds.client.GetHttpClient().DoRawHttpRequest(fmt.Sprintf("%s.json", sldds.GetName()), "POST", bytes.NewBuffer(requestBody))
	if err != nil {
		return datatypes.SoftLayer_Dns_Domain{}, err
	}

	if common.IsHttpErrorCode(errorCode) {
		errorMessage := fmt.Sprintf("softlayer-go: could not SoftLayer_Dns_Domain#createObject, HTTP error code: '%d'", errorCode)
		return datatypes.SoftLayer_Dns_Domain{}, errors.New(errorMessage)
	}

	err = sldds.client.GetHttpClient().CheckForHttpResponseErrors(response)
	if err != nil {
		return datatypes.SoftLayer_Dns_Domain{}, err
	}

	softLayer_Dns_Domain := datatypes.SoftLayer_Dns_Domain{}
	err = json.Unmarshal(response, &softLayer_Dns_Domain)
	if err != nil {
		return datatypes.SoftLayer_Dns_Domain{}, err
	}

	return softLayer_Dns_Domain, nil
}