AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
Statement.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/iam/IAM_EXPORTS.h>
10#include <aws/iam/model/PolicySourceType.h>
11#include <aws/iam/model/Position.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Xml {
18class XmlNode;
19} // namespace Xml
20} // namespace Utils
21namespace IAM {
22namespace Model {
23
33class Statement {
34 public:
35 AWS_IAM_API Statement() = default;
36 AWS_IAM_API Statement(const Aws::Utils::Xml::XmlNode& xmlNode);
37 AWS_IAM_API Statement& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
38
39 AWS_IAM_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
40 AWS_IAM_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
41
43
46 inline const Aws::String& GetSourcePolicyId() const { return m_sourcePolicyId; }
47 inline bool SourcePolicyIdHasBeenSet() const { return m_sourcePolicyIdHasBeenSet; }
48 template <typename SourcePolicyIdT = Aws::String>
49 void SetSourcePolicyId(SourcePolicyIdT&& value) {
50 m_sourcePolicyIdHasBeenSet = true;
51 m_sourcePolicyId = std::forward<SourcePolicyIdT>(value);
52 }
53 template <typename SourcePolicyIdT = Aws::String>
54 Statement& WithSourcePolicyId(SourcePolicyIdT&& value) {
55 SetSourcePolicyId(std::forward<SourcePolicyIdT>(value));
56 return *this;
57 }
59
61
64 inline PolicySourceType GetSourcePolicyType() const { return m_sourcePolicyType; }
65 inline bool SourcePolicyTypeHasBeenSet() const { return m_sourcePolicyTypeHasBeenSet; }
67 m_sourcePolicyTypeHasBeenSet = true;
68 m_sourcePolicyType = value;
69 }
72 return *this;
73 }
75
77
81 inline const Position& GetStartPosition() const { return m_startPosition; }
82 inline bool StartPositionHasBeenSet() const { return m_startPositionHasBeenSet; }
83 template <typename StartPositionT = Position>
84 void SetStartPosition(StartPositionT&& value) {
85 m_startPositionHasBeenSet = true;
86 m_startPosition = std::forward<StartPositionT>(value);
87 }
88 template <typename StartPositionT = Position>
89 Statement& WithStartPosition(StartPositionT&& value) {
90 SetStartPosition(std::forward<StartPositionT>(value));
91 return *this;
92 }
94
96
100 inline const Position& GetEndPosition() const { return m_endPosition; }
101 inline bool EndPositionHasBeenSet() const { return m_endPositionHasBeenSet; }
102 template <typename EndPositionT = Position>
103 void SetEndPosition(EndPositionT&& value) {
104 m_endPositionHasBeenSet = true;
105 m_endPosition = std::forward<EndPositionT>(value);
106 }
107 template <typename EndPositionT = Position>
108 Statement& WithEndPosition(EndPositionT&& value) {
109 SetEndPosition(std::forward<EndPositionT>(value));
110 return *this;
111 }
113 private:
114 Aws::String m_sourcePolicyId;
115
117
118 Position m_startPosition;
119
120 Position m_endPosition;
121 bool m_sourcePolicyIdHasBeenSet = false;
122 bool m_sourcePolicyTypeHasBeenSet = false;
123 bool m_startPositionHasBeenSet = false;
124 bool m_endPositionHasBeenSet = false;
125};
126
127} // namespace Model
128} // namespace IAM
129} // namespace Aws
const Position & GetEndPosition() const
Definition Statement.h:100
bool SourcePolicyTypeHasBeenSet() const
Definition Statement.h:65
AWS_IAM_API Statement()=default
bool EndPositionHasBeenSet() const
Definition Statement.h:101
AWS_IAM_API Statement(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_IAM_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_IAM_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetStartPosition(StartPositionT &&value)
Definition Statement.h:84
const Aws::String & GetSourcePolicyId() const
Definition Statement.h:46
void SetSourcePolicyType(PolicySourceType value)
Definition Statement.h:66
void SetEndPosition(EndPositionT &&value)
Definition Statement.h:103
Statement & WithEndPosition(EndPositionT &&value)
Definition Statement.h:108
bool StartPositionHasBeenSet() const
Definition Statement.h:82
Statement & WithSourcePolicyId(SourcePolicyIdT &&value)
Definition Statement.h:54
Statement & WithSourcePolicyType(PolicySourceType value)
Definition Statement.h:70
void SetSourcePolicyId(SourcePolicyIdT &&value)
Definition Statement.h:49
Statement & WithStartPosition(StartPositionT &&value)
Definition Statement.h:89
AWS_IAM_API Statement & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
bool SourcePolicyIdHasBeenSet() const
Definition Statement.h:47
PolicySourceType GetSourcePolicyType() const
Definition Statement.h:64
const Position & GetStartPosition() const
Definition Statement.h:81
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream