/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include A structure that describes a PolicyDefinintion.
* It will always have either an This data type is used as a
* response parameter for the CreatePolicy
* and ListPolicies
* operations. StaticPolicy
or a
* TemplateLinkedPolicy
element.See Also:
AWS
* API Reference
Information about a static policy that wasn't created with a policy * template.
*/ inline const StaticPolicyDefinitionItem& GetStatic() const{ return m_static; } /** *Information about a static policy that wasn't created with a policy * template.
*/ inline bool StaticHasBeenSet() const { return m_staticHasBeenSet; } /** *Information about a static policy that wasn't created with a policy * template.
*/ inline void SetStatic(const StaticPolicyDefinitionItem& value) { m_staticHasBeenSet = true; m_static = value; } /** *Information about a static policy that wasn't created with a policy * template.
*/ inline void SetStatic(StaticPolicyDefinitionItem&& value) { m_staticHasBeenSet = true; m_static = std::move(value); } /** *Information about a static policy that wasn't created with a policy * template.
*/ inline PolicyDefinitionItem& WithStatic(const StaticPolicyDefinitionItem& value) { SetStatic(value); return *this;} /** *Information about a static policy that wasn't created with a policy * template.
*/ inline PolicyDefinitionItem& WithStatic(StaticPolicyDefinitionItem&& value) { SetStatic(std::move(value)); return *this;} /** *Information about a template-linked policy that was created by instantiating * a policy template.
*/ inline const TemplateLinkedPolicyDefinitionItem& GetTemplateLinked() const{ return m_templateLinked; } /** *Information about a template-linked policy that was created by instantiating * a policy template.
*/ inline bool TemplateLinkedHasBeenSet() const { return m_templateLinkedHasBeenSet; } /** *Information about a template-linked policy that was created by instantiating * a policy template.
*/ inline void SetTemplateLinked(const TemplateLinkedPolicyDefinitionItem& value) { m_templateLinkedHasBeenSet = true; m_templateLinked = value; } /** *Information about a template-linked policy that was created by instantiating * a policy template.
*/ inline void SetTemplateLinked(TemplateLinkedPolicyDefinitionItem&& value) { m_templateLinkedHasBeenSet = true; m_templateLinked = std::move(value); } /** *Information about a template-linked policy that was created by instantiating * a policy template.
*/ inline PolicyDefinitionItem& WithTemplateLinked(const TemplateLinkedPolicyDefinitionItem& value) { SetTemplateLinked(value); return *this;} /** *Information about a template-linked policy that was created by instantiating * a policy template.
*/ inline PolicyDefinitionItem& WithTemplateLinked(TemplateLinkedPolicyDefinitionItem&& value) { SetTemplateLinked(std::move(value)); return *this;} private: StaticPolicyDefinitionItem m_static; bool m_staticHasBeenSet = false; TemplateLinkedPolicyDefinitionItem m_templateLinked; bool m_templateLinkedHasBeenSet = false; }; } // namespace Model } // namespace VerifiedPermissions } // namespace Aws