1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSVector.h> 9 #include <aws/serverlessrepo/model/ApplicationPolicyStatement.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 template<typename RESULT_TYPE> 15 class AmazonWebServiceResult; 16 17 namespace Utils 18 { 19 namespace Json 20 { 21 class JsonValue; 22 } // namespace Json 23 } // namespace Utils 24 namespace ServerlessApplicationRepository 25 { 26 namespace Model 27 { 28 class AWS_SERVERLESSAPPLICATIONREPOSITORY_API GetApplicationPolicyResult 29 { 30 public: 31 GetApplicationPolicyResult(); 32 GetApplicationPolicyResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result); 33 GetApplicationPolicyResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result); 34 35 36 /** 37 * <p>An array of policy statements applied to the application.</p> 38 */ GetStatements()39 inline const Aws::Vector<ApplicationPolicyStatement>& GetStatements() const{ return m_statements; } 40 41 /** 42 * <p>An array of policy statements applied to the application.</p> 43 */ SetStatements(const Aws::Vector<ApplicationPolicyStatement> & value)44 inline void SetStatements(const Aws::Vector<ApplicationPolicyStatement>& value) { m_statements = value; } 45 46 /** 47 * <p>An array of policy statements applied to the application.</p> 48 */ SetStatements(Aws::Vector<ApplicationPolicyStatement> && value)49 inline void SetStatements(Aws::Vector<ApplicationPolicyStatement>&& value) { m_statements = std::move(value); } 50 51 /** 52 * <p>An array of policy statements applied to the application.</p> 53 */ WithStatements(const Aws::Vector<ApplicationPolicyStatement> & value)54 inline GetApplicationPolicyResult& WithStatements(const Aws::Vector<ApplicationPolicyStatement>& value) { SetStatements(value); return *this;} 55 56 /** 57 * <p>An array of policy statements applied to the application.</p> 58 */ WithStatements(Aws::Vector<ApplicationPolicyStatement> && value)59 inline GetApplicationPolicyResult& WithStatements(Aws::Vector<ApplicationPolicyStatement>&& value) { SetStatements(std::move(value)); return *this;} 60 61 /** 62 * <p>An array of policy statements applied to the application.</p> 63 */ AddStatements(const ApplicationPolicyStatement & value)64 inline GetApplicationPolicyResult& AddStatements(const ApplicationPolicyStatement& value) { m_statements.push_back(value); return *this; } 65 66 /** 67 * <p>An array of policy statements applied to the application.</p> 68 */ AddStatements(ApplicationPolicyStatement && value)69 inline GetApplicationPolicyResult& AddStatements(ApplicationPolicyStatement&& value) { m_statements.push_back(std::move(value)); return *this; } 70 71 private: 72 73 Aws::Vector<ApplicationPolicyStatement> m_statements; 74 }; 75 76 } // namespace Model 77 } // namespace ServerlessApplicationRepository 78 } // namespace Aws 79