/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace VerifiedPermissions { namespace Model { class CreatePolicyResult { public: AWS_VERIFIEDPERMISSIONS_API CreatePolicyResult(); AWS_VERIFIEDPERMISSIONS_API CreatePolicyResult(const Aws::AmazonWebServiceResult& result); AWS_VERIFIEDPERMISSIONS_API CreatePolicyResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The ID of the policy store that contains the new policy.

*/ inline const Aws::String& GetPolicyStoreId() const{ return m_policyStoreId; } /** *

The ID of the policy store that contains the new policy.

*/ inline void SetPolicyStoreId(const Aws::String& value) { m_policyStoreId = value; } /** *

The ID of the policy store that contains the new policy.

*/ inline void SetPolicyStoreId(Aws::String&& value) { m_policyStoreId = std::move(value); } /** *

The ID of the policy store that contains the new policy.

*/ inline void SetPolicyStoreId(const char* value) { m_policyStoreId.assign(value); } /** *

The ID of the policy store that contains the new policy.

*/ inline CreatePolicyResult& WithPolicyStoreId(const Aws::String& value) { SetPolicyStoreId(value); return *this;} /** *

The ID of the policy store that contains the new policy.

*/ inline CreatePolicyResult& WithPolicyStoreId(Aws::String&& value) { SetPolicyStoreId(std::move(value)); return *this;} /** *

The ID of the policy store that contains the new policy.

*/ inline CreatePolicyResult& WithPolicyStoreId(const char* value) { SetPolicyStoreId(value); return *this;} /** *

The unique ID of the new policy.

*/ inline const Aws::String& GetPolicyId() const{ return m_policyId; } /** *

The unique ID of the new policy.

*/ inline void SetPolicyId(const Aws::String& value) { m_policyId = value; } /** *

The unique ID of the new policy.

*/ inline void SetPolicyId(Aws::String&& value) { m_policyId = std::move(value); } /** *

The unique ID of the new policy.

*/ inline void SetPolicyId(const char* value) { m_policyId.assign(value); } /** *

The unique ID of the new policy.

*/ inline CreatePolicyResult& WithPolicyId(const Aws::String& value) { SetPolicyId(value); return *this;} /** *

The unique ID of the new policy.

*/ inline CreatePolicyResult& WithPolicyId(Aws::String&& value) { SetPolicyId(std::move(value)); return *this;} /** *

The unique ID of the new policy.

*/ inline CreatePolicyResult& WithPolicyId(const char* value) { SetPolicyId(value); return *this;} /** *

The policy type of the new policy.

*/ inline const PolicyType& GetPolicyType() const{ return m_policyType; } /** *

The policy type of the new policy.

*/ inline void SetPolicyType(const PolicyType& value) { m_policyType = value; } /** *

The policy type of the new policy.

*/ inline void SetPolicyType(PolicyType&& value) { m_policyType = std::move(value); } /** *

The policy type of the new policy.

*/ inline CreatePolicyResult& WithPolicyType(const PolicyType& value) { SetPolicyType(value); return *this;} /** *

The policy type of the new policy.

*/ inline CreatePolicyResult& WithPolicyType(PolicyType&& value) { SetPolicyType(std::move(value)); return *this;} /** *

The principal specified in the new policy's scope. This response element * isn't present when principal isn't specified in the policy * content.

*/ inline const EntityIdentifier& GetPrincipal() const{ return m_principal; } /** *

The principal specified in the new policy's scope. This response element * isn't present when principal isn't specified in the policy * content.

*/ inline void SetPrincipal(const EntityIdentifier& value) { m_principal = value; } /** *

The principal specified in the new policy's scope. This response element * isn't present when principal isn't specified in the policy * content.

*/ inline void SetPrincipal(EntityIdentifier&& value) { m_principal = std::move(value); } /** *

The principal specified in the new policy's scope. This response element * isn't present when principal isn't specified in the policy * content.

*/ inline CreatePolicyResult& WithPrincipal(const EntityIdentifier& value) { SetPrincipal(value); return *this;} /** *

The principal specified in the new policy's scope. This response element * isn't present when principal isn't specified in the policy * content.

*/ inline CreatePolicyResult& WithPrincipal(EntityIdentifier&& value) { SetPrincipal(std::move(value)); return *this;} /** *

The resource specified in the new policy's scope. This response element isn't * present when the resource isn't specified in the policy * content.

*/ inline const EntityIdentifier& GetResource() const{ return m_resource; } /** *

The resource specified in the new policy's scope. This response element isn't * present when the resource isn't specified in the policy * content.

*/ inline void SetResource(const EntityIdentifier& value) { m_resource = value; } /** *

The resource specified in the new policy's scope. This response element isn't * present when the resource isn't specified in the policy * content.

*/ inline void SetResource(EntityIdentifier&& value) { m_resource = std::move(value); } /** *

The resource specified in the new policy's scope. This response element isn't * present when the resource isn't specified in the policy * content.

*/ inline CreatePolicyResult& WithResource(const EntityIdentifier& value) { SetResource(value); return *this;} /** *

The resource specified in the new policy's scope. This response element isn't * present when the resource isn't specified in the policy * content.

*/ inline CreatePolicyResult& WithResource(EntityIdentifier&& value) { SetResource(std::move(value)); return *this;} /** *

The date and time the policy was originally created.

*/ inline const Aws::Utils::DateTime& GetCreatedDate() const{ return m_createdDate; } /** *

The date and time the policy was originally created.

*/ inline void SetCreatedDate(const Aws::Utils::DateTime& value) { m_createdDate = value; } /** *

The date and time the policy was originally created.

*/ inline void SetCreatedDate(Aws::Utils::DateTime&& value) { m_createdDate = std::move(value); } /** *

The date and time the policy was originally created.

*/ inline CreatePolicyResult& WithCreatedDate(const Aws::Utils::DateTime& value) { SetCreatedDate(value); return *this;} /** *

The date and time the policy was originally created.

*/ inline CreatePolicyResult& WithCreatedDate(Aws::Utils::DateTime&& value) { SetCreatedDate(std::move(value)); return *this;} /** *

The date and time the policy was last updated.

*/ inline const Aws::Utils::DateTime& GetLastUpdatedDate() const{ return m_lastUpdatedDate; } /** *

The date and time the policy was last updated.

*/ inline void SetLastUpdatedDate(const Aws::Utils::DateTime& value) { m_lastUpdatedDate = value; } /** *

The date and time the policy was last updated.

*/ inline void SetLastUpdatedDate(Aws::Utils::DateTime&& value) { m_lastUpdatedDate = std::move(value); } /** *

The date and time the policy was last updated.

*/ inline CreatePolicyResult& WithLastUpdatedDate(const Aws::Utils::DateTime& value) { SetLastUpdatedDate(value); return *this;} /** *

The date and time the policy was last updated.

*/ inline CreatePolicyResult& WithLastUpdatedDate(Aws::Utils::DateTime&& value) { SetLastUpdatedDate(std::move(value)); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline CreatePolicyResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline CreatePolicyResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline CreatePolicyResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_policyStoreId; Aws::String m_policyId; PolicyType m_policyType; EntityIdentifier m_principal; EntityIdentifier m_resource; Aws::Utils::DateTime m_createdDate; Aws::Utils::DateTime m_lastUpdatedDate; Aws::String m_requestId; }; } // namespace Model } // namespace VerifiedPermissions } // namespace Aws