This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
pxz-hos-client-cpp-module/support/aws-sdk-cpp-master/aws-cpp-sdk-dms/source/model/ReplicationInstance.cpp

390 lines
12 KiB
C++

/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#include <aws/dms/model/ReplicationInstance.h>
#include <aws/core/utils/json/JsonSerializer.h>
#include <utility>
using namespace Aws::Utils::Json;
using namespace Aws::Utils;
namespace Aws
{
namespace DatabaseMigrationService
{
namespace Model
{
ReplicationInstance::ReplicationInstance() :
m_replicationInstanceIdentifierHasBeenSet(false),
m_replicationInstanceClassHasBeenSet(false),
m_replicationInstanceStatusHasBeenSet(false),
m_allocatedStorage(0),
m_allocatedStorageHasBeenSet(false),
m_instanceCreateTimeHasBeenSet(false),
m_vpcSecurityGroupsHasBeenSet(false),
m_availabilityZoneHasBeenSet(false),
m_replicationSubnetGroupHasBeenSet(false),
m_preferredMaintenanceWindowHasBeenSet(false),
m_pendingModifiedValuesHasBeenSet(false),
m_multiAZ(false),
m_multiAZHasBeenSet(false),
m_engineVersionHasBeenSet(false),
m_autoMinorVersionUpgrade(false),
m_autoMinorVersionUpgradeHasBeenSet(false),
m_kmsKeyIdHasBeenSet(false),
m_replicationInstanceArnHasBeenSet(false),
m_replicationInstancePublicIpAddressesHasBeenSet(false),
m_replicationInstancePrivateIpAddressesHasBeenSet(false),
m_publiclyAccessible(false),
m_publiclyAccessibleHasBeenSet(false),
m_secondaryAvailabilityZoneHasBeenSet(false),
m_freeUntilHasBeenSet(false),
m_dnsNameServersHasBeenSet(false)
{
}
ReplicationInstance::ReplicationInstance(JsonView jsonValue) :
m_replicationInstanceIdentifierHasBeenSet(false),
m_replicationInstanceClassHasBeenSet(false),
m_replicationInstanceStatusHasBeenSet(false),
m_allocatedStorage(0),
m_allocatedStorageHasBeenSet(false),
m_instanceCreateTimeHasBeenSet(false),
m_vpcSecurityGroupsHasBeenSet(false),
m_availabilityZoneHasBeenSet(false),
m_replicationSubnetGroupHasBeenSet(false),
m_preferredMaintenanceWindowHasBeenSet(false),
m_pendingModifiedValuesHasBeenSet(false),
m_multiAZ(false),
m_multiAZHasBeenSet(false),
m_engineVersionHasBeenSet(false),
m_autoMinorVersionUpgrade(false),
m_autoMinorVersionUpgradeHasBeenSet(false),
m_kmsKeyIdHasBeenSet(false),
m_replicationInstanceArnHasBeenSet(false),
m_replicationInstancePublicIpAddressesHasBeenSet(false),
m_replicationInstancePrivateIpAddressesHasBeenSet(false),
m_publiclyAccessible(false),
m_publiclyAccessibleHasBeenSet(false),
m_secondaryAvailabilityZoneHasBeenSet(false),
m_freeUntilHasBeenSet(false),
m_dnsNameServersHasBeenSet(false)
{
*this = jsonValue;
}
ReplicationInstance& ReplicationInstance::operator =(JsonView jsonValue)
{
if(jsonValue.ValueExists("ReplicationInstanceIdentifier"))
{
m_replicationInstanceIdentifier = jsonValue.GetString("ReplicationInstanceIdentifier");
m_replicationInstanceIdentifierHasBeenSet = true;
}
if(jsonValue.ValueExists("ReplicationInstanceClass"))
{
m_replicationInstanceClass = jsonValue.GetString("ReplicationInstanceClass");
m_replicationInstanceClassHasBeenSet = true;
}
if(jsonValue.ValueExists("ReplicationInstanceStatus"))
{
m_replicationInstanceStatus = jsonValue.GetString("ReplicationInstanceStatus");
m_replicationInstanceStatusHasBeenSet = true;
}
if(jsonValue.ValueExists("AllocatedStorage"))
{
m_allocatedStorage = jsonValue.GetInteger("AllocatedStorage");
m_allocatedStorageHasBeenSet = true;
}
if(jsonValue.ValueExists("InstanceCreateTime"))
{
m_instanceCreateTime = jsonValue.GetDouble("InstanceCreateTime");
m_instanceCreateTimeHasBeenSet = true;
}
if(jsonValue.ValueExists("VpcSecurityGroups"))
{
Array<JsonView> vpcSecurityGroupsJsonList = jsonValue.GetArray("VpcSecurityGroups");
for(unsigned vpcSecurityGroupsIndex = 0; vpcSecurityGroupsIndex < vpcSecurityGroupsJsonList.GetLength(); ++vpcSecurityGroupsIndex)
{
m_vpcSecurityGroups.push_back(vpcSecurityGroupsJsonList[vpcSecurityGroupsIndex].AsObject());
}
m_vpcSecurityGroupsHasBeenSet = true;
}
if(jsonValue.ValueExists("AvailabilityZone"))
{
m_availabilityZone = jsonValue.GetString("AvailabilityZone");
m_availabilityZoneHasBeenSet = true;
}
if(jsonValue.ValueExists("ReplicationSubnetGroup"))
{
m_replicationSubnetGroup = jsonValue.GetObject("ReplicationSubnetGroup");
m_replicationSubnetGroupHasBeenSet = true;
}
if(jsonValue.ValueExists("PreferredMaintenanceWindow"))
{
m_preferredMaintenanceWindow = jsonValue.GetString("PreferredMaintenanceWindow");
m_preferredMaintenanceWindowHasBeenSet = true;
}
if(jsonValue.ValueExists("PendingModifiedValues"))
{
m_pendingModifiedValues = jsonValue.GetObject("PendingModifiedValues");
m_pendingModifiedValuesHasBeenSet = true;
}
if(jsonValue.ValueExists("MultiAZ"))
{
m_multiAZ = jsonValue.GetBool("MultiAZ");
m_multiAZHasBeenSet = true;
}
if(jsonValue.ValueExists("EngineVersion"))
{
m_engineVersion = jsonValue.GetString("EngineVersion");
m_engineVersionHasBeenSet = true;
}
if(jsonValue.ValueExists("AutoMinorVersionUpgrade"))
{
m_autoMinorVersionUpgrade = jsonValue.GetBool("AutoMinorVersionUpgrade");
m_autoMinorVersionUpgradeHasBeenSet = true;
}
if(jsonValue.ValueExists("KmsKeyId"))
{
m_kmsKeyId = jsonValue.GetString("KmsKeyId");
m_kmsKeyIdHasBeenSet = true;
}
if(jsonValue.ValueExists("ReplicationInstanceArn"))
{
m_replicationInstanceArn = jsonValue.GetString("ReplicationInstanceArn");
m_replicationInstanceArnHasBeenSet = true;
}
if(jsonValue.ValueExists("ReplicationInstancePublicIpAddresses"))
{
Array<JsonView> replicationInstancePublicIpAddressesJsonList = jsonValue.GetArray("ReplicationInstancePublicIpAddresses");
for(unsigned replicationInstancePublicIpAddressesIndex = 0; replicationInstancePublicIpAddressesIndex < replicationInstancePublicIpAddressesJsonList.GetLength(); ++replicationInstancePublicIpAddressesIndex)
{
m_replicationInstancePublicIpAddresses.push_back(replicationInstancePublicIpAddressesJsonList[replicationInstancePublicIpAddressesIndex].AsString());
}
m_replicationInstancePublicIpAddressesHasBeenSet = true;
}
if(jsonValue.ValueExists("ReplicationInstancePrivateIpAddresses"))
{
Array<JsonView> replicationInstancePrivateIpAddressesJsonList = jsonValue.GetArray("ReplicationInstancePrivateIpAddresses");
for(unsigned replicationInstancePrivateIpAddressesIndex = 0; replicationInstancePrivateIpAddressesIndex < replicationInstancePrivateIpAddressesJsonList.GetLength(); ++replicationInstancePrivateIpAddressesIndex)
{
m_replicationInstancePrivateIpAddresses.push_back(replicationInstancePrivateIpAddressesJsonList[replicationInstancePrivateIpAddressesIndex].AsString());
}
m_replicationInstancePrivateIpAddressesHasBeenSet = true;
}
if(jsonValue.ValueExists("PubliclyAccessible"))
{
m_publiclyAccessible = jsonValue.GetBool("PubliclyAccessible");
m_publiclyAccessibleHasBeenSet = true;
}
if(jsonValue.ValueExists("SecondaryAvailabilityZone"))
{
m_secondaryAvailabilityZone = jsonValue.GetString("SecondaryAvailabilityZone");
m_secondaryAvailabilityZoneHasBeenSet = true;
}
if(jsonValue.ValueExists("FreeUntil"))
{
m_freeUntil = jsonValue.GetDouble("FreeUntil");
m_freeUntilHasBeenSet = true;
}
if(jsonValue.ValueExists("DnsNameServers"))
{
m_dnsNameServers = jsonValue.GetString("DnsNameServers");
m_dnsNameServersHasBeenSet = true;
}
return *this;
}
JsonValue ReplicationInstance::Jsonize() const
{
JsonValue payload;
if(m_replicationInstanceIdentifierHasBeenSet)
{
payload.WithString("ReplicationInstanceIdentifier", m_replicationInstanceIdentifier);
}
if(m_replicationInstanceClassHasBeenSet)
{
payload.WithString("ReplicationInstanceClass", m_replicationInstanceClass);
}
if(m_replicationInstanceStatusHasBeenSet)
{
payload.WithString("ReplicationInstanceStatus", m_replicationInstanceStatus);
}
if(m_allocatedStorageHasBeenSet)
{
payload.WithInteger("AllocatedStorage", m_allocatedStorage);
}
if(m_instanceCreateTimeHasBeenSet)
{
payload.WithDouble("InstanceCreateTime", m_instanceCreateTime.SecondsWithMSPrecision());
}
if(m_vpcSecurityGroupsHasBeenSet)
{
Array<JsonValue> vpcSecurityGroupsJsonList(m_vpcSecurityGroups.size());
for(unsigned vpcSecurityGroupsIndex = 0; vpcSecurityGroupsIndex < vpcSecurityGroupsJsonList.GetLength(); ++vpcSecurityGroupsIndex)
{
vpcSecurityGroupsJsonList[vpcSecurityGroupsIndex].AsObject(m_vpcSecurityGroups[vpcSecurityGroupsIndex].Jsonize());
}
payload.WithArray("VpcSecurityGroups", std::move(vpcSecurityGroupsJsonList));
}
if(m_availabilityZoneHasBeenSet)
{
payload.WithString("AvailabilityZone", m_availabilityZone);
}
if(m_replicationSubnetGroupHasBeenSet)
{
payload.WithObject("ReplicationSubnetGroup", m_replicationSubnetGroup.Jsonize());
}
if(m_preferredMaintenanceWindowHasBeenSet)
{
payload.WithString("PreferredMaintenanceWindow", m_preferredMaintenanceWindow);
}
if(m_pendingModifiedValuesHasBeenSet)
{
payload.WithObject("PendingModifiedValues", m_pendingModifiedValues.Jsonize());
}
if(m_multiAZHasBeenSet)
{
payload.WithBool("MultiAZ", m_multiAZ);
}
if(m_engineVersionHasBeenSet)
{
payload.WithString("EngineVersion", m_engineVersion);
}
if(m_autoMinorVersionUpgradeHasBeenSet)
{
payload.WithBool("AutoMinorVersionUpgrade", m_autoMinorVersionUpgrade);
}
if(m_kmsKeyIdHasBeenSet)
{
payload.WithString("KmsKeyId", m_kmsKeyId);
}
if(m_replicationInstanceArnHasBeenSet)
{
payload.WithString("ReplicationInstanceArn", m_replicationInstanceArn);
}
if(m_replicationInstancePublicIpAddressesHasBeenSet)
{
Array<JsonValue> replicationInstancePublicIpAddressesJsonList(m_replicationInstancePublicIpAddresses.size());
for(unsigned replicationInstancePublicIpAddressesIndex = 0; replicationInstancePublicIpAddressesIndex < replicationInstancePublicIpAddressesJsonList.GetLength(); ++replicationInstancePublicIpAddressesIndex)
{
replicationInstancePublicIpAddressesJsonList[replicationInstancePublicIpAddressesIndex].AsString(m_replicationInstancePublicIpAddresses[replicationInstancePublicIpAddressesIndex]);
}
payload.WithArray("ReplicationInstancePublicIpAddresses", std::move(replicationInstancePublicIpAddressesJsonList));
}
if(m_replicationInstancePrivateIpAddressesHasBeenSet)
{
Array<JsonValue> replicationInstancePrivateIpAddressesJsonList(m_replicationInstancePrivateIpAddresses.size());
for(unsigned replicationInstancePrivateIpAddressesIndex = 0; replicationInstancePrivateIpAddressesIndex < replicationInstancePrivateIpAddressesJsonList.GetLength(); ++replicationInstancePrivateIpAddressesIndex)
{
replicationInstancePrivateIpAddressesJsonList[replicationInstancePrivateIpAddressesIndex].AsString(m_replicationInstancePrivateIpAddresses[replicationInstancePrivateIpAddressesIndex]);
}
payload.WithArray("ReplicationInstancePrivateIpAddresses", std::move(replicationInstancePrivateIpAddressesJsonList));
}
if(m_publiclyAccessibleHasBeenSet)
{
payload.WithBool("PubliclyAccessible", m_publiclyAccessible);
}
if(m_secondaryAvailabilityZoneHasBeenSet)
{
payload.WithString("SecondaryAvailabilityZone", m_secondaryAvailabilityZone);
}
if(m_freeUntilHasBeenSet)
{
payload.WithDouble("FreeUntil", m_freeUntil.SecondsWithMSPrecision());
}
if(m_dnsNameServersHasBeenSet)
{
payload.WithString("DnsNameServers", m_dnsNameServers);
}
return payload;
}
} // namespace Model
} // namespace DatabaseMigrationService
} // namespace Aws