in smc-20190601/client/client.go [7397:7571]
func (client *Client) CreateReplicationJobWithOptions(request *CreateReplicationJobRequest, runtime *util.RuntimeOptions) (_result *CreateReplicationJobResponse, _err error) {
_err = util.ValidateModel(request)
if _err != nil {
return _result, _err
}
query := map[string]interface{}{}
if !tea.BoolValue(util.IsUnset(request.ClientToken)) {
query["ClientToken"] = request.ClientToken
}
if !tea.BoolValue(util.IsUnset(request.ContainerNamespace)) {
query["ContainerNamespace"] = request.ContainerNamespace
}
if !tea.BoolValue(util.IsUnset(request.ContainerRepository)) {
query["ContainerRepository"] = request.ContainerRepository
}
if !tea.BoolValue(util.IsUnset(request.ContainerTag)) {
query["ContainerTag"] = request.ContainerTag
}
if !tea.BoolValue(util.IsUnset(request.DataDisk)) {
query["DataDisk"] = request.DataDisk
}
if !tea.BoolValue(util.IsUnset(request.Description)) {
query["Description"] = request.Description
}
if !tea.BoolValue(util.IsUnset(request.Disks)) {
query["Disks"] = request.Disks
}
if !tea.BoolValue(util.IsUnset(request.Frequency)) {
query["Frequency"] = request.Frequency
}
if !tea.BoolValue(util.IsUnset(request.ImageName)) {
query["ImageName"] = request.ImageName
}
if !tea.BoolValue(util.IsUnset(request.InstanceId)) {
query["InstanceId"] = request.InstanceId
}
if !tea.BoolValue(util.IsUnset(request.InstanceRamRole)) {
query["InstanceRamRole"] = request.InstanceRamRole
}
if !tea.BoolValue(util.IsUnset(request.InstanceType)) {
query["InstanceType"] = request.InstanceType
}
if !tea.BoolValue(util.IsUnset(request.JobType)) {
query["JobType"] = request.JobType
}
if !tea.BoolValue(util.IsUnset(request.LaunchTemplateId)) {
query["LaunchTemplateId"] = request.LaunchTemplateId
}
if !tea.BoolValue(util.IsUnset(request.LaunchTemplateVersion)) {
query["LaunchTemplateVersion"] = request.LaunchTemplateVersion
}
if !tea.BoolValue(util.IsUnset(request.LicenseType)) {
query["LicenseType"] = request.LicenseType
}
if !tea.BoolValue(util.IsUnset(request.MaxNumberOfImageToKeep)) {
query["MaxNumberOfImageToKeep"] = request.MaxNumberOfImageToKeep
}
if !tea.BoolValue(util.IsUnset(request.Name)) {
query["Name"] = request.Name
}
if !tea.BoolValue(util.IsUnset(request.NetMode)) {
query["NetMode"] = request.NetMode
}
if !tea.BoolValue(util.IsUnset(request.OwnerId)) {
query["OwnerId"] = request.OwnerId
}
if !tea.BoolValue(util.IsUnset(request.RegionId)) {
query["RegionId"] = request.RegionId
}
if !tea.BoolValue(util.IsUnset(request.ReplicationParameters)) {
query["ReplicationParameters"] = request.ReplicationParameters
}
if !tea.BoolValue(util.IsUnset(request.ResourceGroupId)) {
query["ResourceGroupId"] = request.ResourceGroupId
}
if !tea.BoolValue(util.IsUnset(request.ResourceOwnerAccount)) {
query["ResourceOwnerAccount"] = request.ResourceOwnerAccount
}
if !tea.BoolValue(util.IsUnset(request.RunOnce)) {
query["RunOnce"] = request.RunOnce
}
if !tea.BoolValue(util.IsUnset(request.ScheduledStartTime)) {
query["ScheduledStartTime"] = request.ScheduledStartTime
}
if !tea.BoolValue(util.IsUnset(request.SourceId)) {
query["SourceId"] = request.SourceId
}
if !tea.BoolValue(util.IsUnset(request.SystemDiskPart)) {
query["SystemDiskPart"] = request.SystemDiskPart
}
if !tea.BoolValue(util.IsUnset(request.SystemDiskSize)) {
query["SystemDiskSize"] = request.SystemDiskSize
}
if !tea.BoolValue(util.IsUnset(request.Tag)) {
query["Tag"] = request.Tag
}
if !tea.BoolValue(util.IsUnset(request.TargetType)) {
query["TargetType"] = request.TargetType
}
if !tea.BoolValue(util.IsUnset(request.VSwitchId)) {
query["VSwitchId"] = request.VSwitchId
}
if !tea.BoolValue(util.IsUnset(request.ValidTime)) {
query["ValidTime"] = request.ValidTime
}
if !tea.BoolValue(util.IsUnset(request.VpcId)) {
query["VpcId"] = request.VpcId
}
req := &openapi.OpenApiRequest{
Query: openapiutil.Query(query),
}
params := &openapi.Params{
Action: tea.String("CreateReplicationJob"),
Version: tea.String("2019-06-01"),
Protocol: tea.String("HTTPS"),
Pathname: tea.String("/"),
Method: tea.String("POST"),
AuthType: tea.String("AK"),
Style: tea.String("RPC"),
ReqBodyType: tea.String("formData"),
BodyType: tea.String("json"),
}
if tea.BoolValue(util.IsUnset(client.SignatureVersion)) || !tea.BoolValue(util.EqualString(client.SignatureVersion, tea.String("v4"))) {
_result = &CreateReplicationJobResponse{}
_body, _err := client.CallApi(params, req, runtime)
if _err != nil {
return _result, _err
}
_err = tea.Convert(_body, &_result)
return _result, _err
} else {
_result = &CreateReplicationJobResponse{}
_body, _err := client.Execute(params, req, runtime)
if _err != nil {
return _result, _err
}
_err = tea.Convert(_body, &_result)
return _result, _err
}
}