ConfigureDtsJobResponse Alibabacloud_Dts20200101::Client::configureDtsJobWithOptions()

in dts-20200101/src/dts_20200101.cpp [102:322]


ConfigureDtsJobResponse Alibabacloud_Dts20200101::Client::configureDtsJobWithOptions(shared_ptr<ConfigureDtsJobRequest> request, shared_ptr<Darabonba_Util::RuntimeOptions> runtime) {
  Darabonba_Util::Client::validateModel(request);
  shared_ptr<map<string, boost::any>> query = make_shared<map<string, boost::any>>(map<string, boost::any>());
  if (!Darabonba_Util::Client::isUnset<string>(request->checkpoint)) {
    query->insert(pair<string, string>("Checkpoint", *request->checkpoint));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->dataCheckConfigure)) {
    query->insert(pair<string, string>("DataCheckConfigure", *request->dataCheckConfigure));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->dataInitialization)) {
    query->insert(pair<string, bool>("DataInitialization", *request->dataInitialization));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->dataSynchronization)) {
    query->insert(pair<string, bool>("DataSynchronization", *request->dataSynchronization));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->dedicatedClusterId)) {
    query->insert(pair<string, string>("DedicatedClusterId", *request->dedicatedClusterId));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->delayNotice)) {
    query->insert(pair<string, bool>("DelayNotice", *request->delayNotice));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->delayPhone)) {
    query->insert(pair<string, string>("DelayPhone", *request->delayPhone));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->delayRuleTime)) {
    query->insert(pair<string, long>("DelayRuleTime", *request->delayRuleTime));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->destCaCertificateOssUrl)) {
    query->insert(pair<string, string>("DestCaCertificateOssUrl", *request->destCaCertificateOssUrl));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->destCaCertificatePassword)) {
    query->insert(pair<string, string>("DestCaCertificatePassword", *request->destCaCertificatePassword));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->destClientCertOssUrl)) {
    query->insert(pair<string, string>("DestClientCertOssUrl", *request->destClientCertOssUrl));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->destClientKeyOssUrl)) {
    query->insert(pair<string, string>("DestClientKeyOssUrl", *request->destClientKeyOssUrl));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->destClientPassword)) {
    query->insert(pair<string, string>("DestClientPassword", *request->destClientPassword));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->destPrimaryVswId)) {
    query->insert(pair<string, string>("DestPrimaryVswId", *request->destPrimaryVswId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->destSecondaryVswId)) {
    query->insert(pair<string, string>("DestSecondaryVswId", *request->destSecondaryVswId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->destinationEndpointDataBaseName)) {
    query->insert(pair<string, string>("DestinationEndpointDataBaseName", *request->destinationEndpointDataBaseName));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->destinationEndpointEngineName)) {
    query->insert(pair<string, string>("DestinationEndpointEngineName", *request->destinationEndpointEngineName));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->destinationEndpointIP)) {
    query->insert(pair<string, string>("DestinationEndpointIP", *request->destinationEndpointIP));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->destinationEndpointInstanceID)) {
    query->insert(pair<string, string>("DestinationEndpointInstanceID", *request->destinationEndpointInstanceID));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->destinationEndpointInstanceType)) {
    query->insert(pair<string, string>("DestinationEndpointInstanceType", *request->destinationEndpointInstanceType));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->destinationEndpointOracleSID)) {
    query->insert(pair<string, string>("DestinationEndpointOracleSID", *request->destinationEndpointOracleSID));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->destinationEndpointOwnerID)) {
    query->insert(pair<string, string>("DestinationEndpointOwnerID", *request->destinationEndpointOwnerID));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->destinationEndpointPassword)) {
    query->insert(pair<string, string>("DestinationEndpointPassword", *request->destinationEndpointPassword));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->destinationEndpointPort)) {
    query->insert(pair<string, string>("DestinationEndpointPort", *request->destinationEndpointPort));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->destinationEndpointRegion)) {
    query->insert(pair<string, string>("DestinationEndpointRegion", *request->destinationEndpointRegion));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->destinationEndpointRole)) {
    query->insert(pair<string, string>("DestinationEndpointRole", *request->destinationEndpointRole));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->destinationEndpointUserName)) {
    query->insert(pair<string, string>("DestinationEndpointUserName", *request->destinationEndpointUserName));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->disasterRecoveryJob)) {
    query->insert(pair<string, bool>("DisasterRecoveryJob", *request->disasterRecoveryJob));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->dtsBisLabel)) {
    query->insert(pair<string, string>("DtsBisLabel", *request->dtsBisLabel));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->dtsInstanceId)) {
    query->insert(pair<string, string>("DtsInstanceId", *request->dtsInstanceId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->dtsJobId)) {
    query->insert(pair<string, string>("DtsJobId", *request->dtsJobId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->dtsJobName)) {
    query->insert(pair<string, string>("DtsJobName", *request->dtsJobName));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->errorNotice)) {
    query->insert(pair<string, bool>("ErrorNotice", *request->errorNotice));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->errorPhone)) {
    query->insert(pair<string, string>("ErrorPhone", *request->errorPhone));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->fileOssUrl)) {
    query->insert(pair<string, string>("FileOssUrl", *request->fileOssUrl));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->jobType)) {
    query->insert(pair<string, string>("JobType", *request->jobType));
  }
  if (!Darabonba_Util::Client::isUnset<double>(request->maxDu)) {
    query->insert(pair<string, double>("MaxDu", *request->maxDu));
  }
  if (!Darabonba_Util::Client::isUnset<double>(request->minDu)) {
    query->insert(pair<string, double>("MinDu", *request->minDu));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->ownerId)) {
    query->insert(pair<string, string>("OwnerId", *request->ownerId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->regionId)) {
    query->insert(pair<string, string>("RegionId", *request->regionId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->resourceGroupId)) {
    query->insert(pair<string, string>("ResourceGroupId", *request->resourceGroupId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->sourceEndpointDatabaseName)) {
    query->insert(pair<string, string>("SourceEndpointDatabaseName", *request->sourceEndpointDatabaseName));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->sourceEndpointEngineName)) {
    query->insert(pair<string, string>("SourceEndpointEngineName", *request->sourceEndpointEngineName));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->sourceEndpointIP)) {
    query->insert(pair<string, string>("SourceEndpointIP", *request->sourceEndpointIP));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->sourceEndpointInstanceID)) {
    query->insert(pair<string, string>("SourceEndpointInstanceID", *request->sourceEndpointInstanceID));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->sourceEndpointInstanceType)) {
    query->insert(pair<string, string>("SourceEndpointInstanceType", *request->sourceEndpointInstanceType));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->sourceEndpointOracleSID)) {
    query->insert(pair<string, string>("SourceEndpointOracleSID", *request->sourceEndpointOracleSID));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->sourceEndpointOwnerID)) {
    query->insert(pair<string, string>("SourceEndpointOwnerID", *request->sourceEndpointOwnerID));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->sourceEndpointPassword)) {
    query->insert(pair<string, string>("SourceEndpointPassword", *request->sourceEndpointPassword));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->sourceEndpointPort)) {
    query->insert(pair<string, string>("SourceEndpointPort", *request->sourceEndpointPort));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->sourceEndpointRegion)) {
    query->insert(pair<string, string>("SourceEndpointRegion", *request->sourceEndpointRegion));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->sourceEndpointRole)) {
    query->insert(pair<string, string>("SourceEndpointRole", *request->sourceEndpointRole));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->sourceEndpointUserName)) {
    query->insert(pair<string, string>("SourceEndpointUserName", *request->sourceEndpointUserName));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->sourceEndpointVSwitchID)) {
    query->insert(pair<string, string>("SourceEndpointVSwitchID", *request->sourceEndpointVSwitchID));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->srcCaCertificateOssUrl)) {
    query->insert(pair<string, string>("SrcCaCertificateOssUrl", *request->srcCaCertificateOssUrl));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->srcCaCertificatePassword)) {
    query->insert(pair<string, string>("SrcCaCertificatePassword", *request->srcCaCertificatePassword));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->srcClientCertOssUrl)) {
    query->insert(pair<string, string>("SrcClientCertOssUrl", *request->srcClientCertOssUrl));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->srcClientKeyOssUrl)) {
    query->insert(pair<string, string>("SrcClientKeyOssUrl", *request->srcClientKeyOssUrl));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->srcClientPassword)) {
    query->insert(pair<string, string>("SrcClientPassword", *request->srcClientPassword));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->srcPrimaryVswId)) {
    query->insert(pair<string, string>("SrcPrimaryVswId", *request->srcPrimaryVswId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->srcSecondaryVswId)) {
    query->insert(pair<string, string>("SrcSecondaryVswId", *request->srcSecondaryVswId));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->structureInitialization)) {
    query->insert(pair<string, bool>("StructureInitialization", *request->structureInitialization));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->synchronizationDirection)) {
    query->insert(pair<string, string>("SynchronizationDirection", *request->synchronizationDirection));
  }
  shared_ptr<map<string, boost::any>> body = make_shared<map<string, boost::any>>(map<string, boost::any>());
  if (!Darabonba_Util::Client::isUnset<string>(request->dbList)) {
    body->insert(pair<string, string>("DbList", *request->dbList));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->reserve)) {
    body->insert(pair<string, string>("Reserve", *request->reserve));
  }
  shared_ptr<Alibabacloud_OpenApi::OpenApiRequest> req = make_shared<Alibabacloud_OpenApi::OpenApiRequest>(map<string, boost::any>({
    {"query", boost::any(Alibabacloud_OpenApiUtil::Client::query(query))},
    {"body", boost::any(Alibabacloud_OpenApiUtil::Client::parseToMap(body))}
  }));
  shared_ptr<Alibabacloud_OpenApi::Params> params = make_shared<Alibabacloud_OpenApi::Params>(map<string, boost::any>({
    {"action", boost::any(string("ConfigureDtsJob"))},
    {"version", boost::any(string("2020-01-01"))},
    {"protocol", boost::any(string("HTTPS"))},
    {"pathname", boost::any(string("/"))},
    {"method", boost::any(string("POST"))},
    {"authType", boost::any(string("AK"))},
    {"style", boost::any(string("RPC"))},
    {"reqBodyType", boost::any(string("formData"))},
    {"bodyType", boost::any(string("json"))}
  }));
  if (Darabonba_Util::Client::isUnset<string>(_signatureVersion) || !Darabonba_Util::Client::equalString(_signatureVersion, make_shared<string>("v4"))) {
    return ConfigureDtsJobResponse(callApi(params, req, runtime));
  }
  else {
    return ConfigureDtsJobResponse(execute(params, req, runtime));
  }
}