/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SSM { namespace Model { /** *

Information about the AwsOrganizationsSource resource data sync * source. A sync source of this type can synchronize data from Organizations or, * if an Amazon Web Services organization isn't present, from multiple Amazon Web * Services Regions.

See Also:

AWS * API Reference

*/ class ResourceDataSyncAwsOrganizationsSource { public: AWS_SSM_API ResourceDataSyncAwsOrganizationsSource(); AWS_SSM_API ResourceDataSyncAwsOrganizationsSource(Aws::Utils::Json::JsonView jsonValue); AWS_SSM_API ResourceDataSyncAwsOrganizationsSource& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SSM_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

If an Amazon Web Services organization is present, this is either * OrganizationalUnits or EntireOrganization. For * OrganizationalUnits, the data is aggregated from a set of * organization units. For EntireOrganization, the data is aggregated * from the entire Amazon Web Services organization.

*/ inline const Aws::String& GetOrganizationSourceType() const{ return m_organizationSourceType; } /** *

If an Amazon Web Services organization is present, this is either * OrganizationalUnits or EntireOrganization. For * OrganizationalUnits, the data is aggregated from a set of * organization units. For EntireOrganization, the data is aggregated * from the entire Amazon Web Services organization.

*/ inline bool OrganizationSourceTypeHasBeenSet() const { return m_organizationSourceTypeHasBeenSet; } /** *

If an Amazon Web Services organization is present, this is either * OrganizationalUnits or EntireOrganization. For * OrganizationalUnits, the data is aggregated from a set of * organization units. For EntireOrganization, the data is aggregated * from the entire Amazon Web Services organization.

*/ inline void SetOrganizationSourceType(const Aws::String& value) { m_organizationSourceTypeHasBeenSet = true; m_organizationSourceType = value; } /** *

If an Amazon Web Services organization is present, this is either * OrganizationalUnits or EntireOrganization. For * OrganizationalUnits, the data is aggregated from a set of * organization units. For EntireOrganization, the data is aggregated * from the entire Amazon Web Services organization.

*/ inline void SetOrganizationSourceType(Aws::String&& value) { m_organizationSourceTypeHasBeenSet = true; m_organizationSourceType = std::move(value); } /** *

If an Amazon Web Services organization is present, this is either * OrganizationalUnits or EntireOrganization. For * OrganizationalUnits, the data is aggregated from a set of * organization units. For EntireOrganization, the data is aggregated * from the entire Amazon Web Services organization.

*/ inline void SetOrganizationSourceType(const char* value) { m_organizationSourceTypeHasBeenSet = true; m_organizationSourceType.assign(value); } /** *

If an Amazon Web Services organization is present, this is either * OrganizationalUnits or EntireOrganization. For * OrganizationalUnits, the data is aggregated from a set of * organization units. For EntireOrganization, the data is aggregated * from the entire Amazon Web Services organization.

*/ inline ResourceDataSyncAwsOrganizationsSource& WithOrganizationSourceType(const Aws::String& value) { SetOrganizationSourceType(value); return *this;} /** *

If an Amazon Web Services organization is present, this is either * OrganizationalUnits or EntireOrganization. For * OrganizationalUnits, the data is aggregated from a set of * organization units. For EntireOrganization, the data is aggregated * from the entire Amazon Web Services organization.

*/ inline ResourceDataSyncAwsOrganizationsSource& WithOrganizationSourceType(Aws::String&& value) { SetOrganizationSourceType(std::move(value)); return *this;} /** *

If an Amazon Web Services organization is present, this is either * OrganizationalUnits or EntireOrganization. For * OrganizationalUnits, the data is aggregated from a set of * organization units. For EntireOrganization, the data is aggregated * from the entire Amazon Web Services organization.

*/ inline ResourceDataSyncAwsOrganizationsSource& WithOrganizationSourceType(const char* value) { SetOrganizationSourceType(value); return *this;} /** *

The Organizations organization units included in the sync.

*/ inline const Aws::Vector& GetOrganizationalUnits() const{ return m_organizationalUnits; } /** *

The Organizations organization units included in the sync.

*/ inline bool OrganizationalUnitsHasBeenSet() const { return m_organizationalUnitsHasBeenSet; } /** *

The Organizations organization units included in the sync.

*/ inline void SetOrganizationalUnits(const Aws::Vector& value) { m_organizationalUnitsHasBeenSet = true; m_organizationalUnits = value; } /** *

The Organizations organization units included in the sync.

*/ inline void SetOrganizationalUnits(Aws::Vector&& value) { m_organizationalUnitsHasBeenSet = true; m_organizationalUnits = std::move(value); } /** *

The Organizations organization units included in the sync.

*/ inline ResourceDataSyncAwsOrganizationsSource& WithOrganizationalUnits(const Aws::Vector& value) { SetOrganizationalUnits(value); return *this;} /** *

The Organizations organization units included in the sync.

*/ inline ResourceDataSyncAwsOrganizationsSource& WithOrganizationalUnits(Aws::Vector&& value) { SetOrganizationalUnits(std::move(value)); return *this;} /** *

The Organizations organization units included in the sync.

*/ inline ResourceDataSyncAwsOrganizationsSource& AddOrganizationalUnits(const ResourceDataSyncOrganizationalUnit& value) { m_organizationalUnitsHasBeenSet = true; m_organizationalUnits.push_back(value); return *this; } /** *

The Organizations organization units included in the sync.

*/ inline ResourceDataSyncAwsOrganizationsSource& AddOrganizationalUnits(ResourceDataSyncOrganizationalUnit&& value) { m_organizationalUnitsHasBeenSet = true; m_organizationalUnits.push_back(std::move(value)); return *this; } private: Aws::String m_organizationSourceType; bool m_organizationSourceTypeHasBeenSet = false; Aws::Vector m_organizationalUnits; bool m_organizationalUnitsHasBeenSet = false; }; } // namespace Model } // namespace SSM } // namespace Aws