AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
PutApplicationPolicyRequest.h
1
6#pragma once
7#include <aws/serverlessrepo/ServerlessApplicationRepository_EXPORTS.h>
8#include <aws/serverlessrepo/ServerlessApplicationRepositoryRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/serverlessrepo/model/ApplicationPolicyStatement.h>
12#include <utility>
13
14namespace Aws
15{
16namespace ServerlessApplicationRepository
17{
18namespace Model
19{
20
24 {
25 public:
26 AWS_SERVERLESSAPPLICATIONREPOSITORY_API PutApplicationPolicyRequest() = default;
27
28 // Service request name is the Operation name which will send this request out,
29 // each operation should has unique request name, so that we can get operation's name from this request.
30 // Note: this is not true for response, multiple operations may have the same response name,
31 // so we can not get operation's name from response.
32 inline virtual const char* GetServiceRequestName() const override { return "PutApplicationPolicy"; }
33
34 AWS_SERVERLESSAPPLICATIONREPOSITORY_API Aws::String SerializePayload() const override;
35
36
38
41 inline const Aws::String& GetApplicationId() const { return m_applicationId; }
42 inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; }
43 template<typename ApplicationIdT = Aws::String>
44 void SetApplicationId(ApplicationIdT&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::forward<ApplicationIdT>(value); }
45 template<typename ApplicationIdT = Aws::String>
46 PutApplicationPolicyRequest& WithApplicationId(ApplicationIdT&& value) { SetApplicationId(std::forward<ApplicationIdT>(value)); return *this;}
48
50
53 inline const Aws::Vector<ApplicationPolicyStatement>& GetStatements() const { return m_statements; }
54 inline bool StatementsHasBeenSet() const { return m_statementsHasBeenSet; }
55 template<typename StatementsT = Aws::Vector<ApplicationPolicyStatement>>
56 void SetStatements(StatementsT&& value) { m_statementsHasBeenSet = true; m_statements = std::forward<StatementsT>(value); }
57 template<typename StatementsT = Aws::Vector<ApplicationPolicyStatement>>
58 PutApplicationPolicyRequest& WithStatements(StatementsT&& value) { SetStatements(std::forward<StatementsT>(value)); return *this;}
59 template<typename StatementsT = ApplicationPolicyStatement>
60 PutApplicationPolicyRequest& AddStatements(StatementsT&& value) { m_statementsHasBeenSet = true; m_statements.emplace_back(std::forward<StatementsT>(value)); return *this; }
62 private:
63
64 Aws::String m_applicationId;
65 bool m_applicationIdHasBeenSet = false;
66
68 bool m_statementsHasBeenSet = false;
69 };
70
71} // namespace Model
72} // namespace ServerlessApplicationRepository
73} // namespace Aws
AWS_SERVERLESSAPPLICATIONREPOSITORY_API PutApplicationPolicyRequest()=default
AWS_SERVERLESSAPPLICATIONREPOSITORY_API Aws::String SerializePayload() const override
const Aws::Vector< ApplicationPolicyStatement > & GetStatements() const
PutApplicationPolicyRequest & WithApplicationId(ApplicationIdT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector