AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
AccessControlPolicy.h
1
6#pragma once
7#include <aws/s3/S3_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/s3/model/Owner.h>
10#include <aws/s3/model/Grant.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Xml
18{
19 class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace S3
23{
24namespace Model
25{
26
34 {
35 public:
36 AWS_S3_API AccessControlPolicy() = default;
39
40 AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
41
42
44
47 inline const Aws::Vector<Grant>& GetGrants() const { return m_grants; }
48 inline bool GrantsHasBeenSet() const { return m_grantsHasBeenSet; }
49 template<typename GrantsT = Aws::Vector<Grant>>
50 void SetGrants(GrantsT&& value) { m_grantsHasBeenSet = true; m_grants = std::forward<GrantsT>(value); }
51 template<typename GrantsT = Aws::Vector<Grant>>
52 AccessControlPolicy& WithGrants(GrantsT&& value) { SetGrants(std::forward<GrantsT>(value)); return *this;}
53 template<typename GrantsT = Grant>
54 AccessControlPolicy& AddGrants(GrantsT&& value) { m_grantsHasBeenSet = true; m_grants.emplace_back(std::forward<GrantsT>(value)); return *this; }
56
58
61 inline const Owner& GetOwner() const { return m_owner; }
62 inline bool OwnerHasBeenSet() const { return m_ownerHasBeenSet; }
63 template<typename OwnerT = Owner>
64 void SetOwner(OwnerT&& value) { m_ownerHasBeenSet = true; m_owner = std::forward<OwnerT>(value); }
65 template<typename OwnerT = Owner>
66 AccessControlPolicy& WithOwner(OwnerT&& value) { SetOwner(std::forward<OwnerT>(value)); return *this;}
68 private:
69
70 Aws::Vector<Grant> m_grants;
71 bool m_grantsHasBeenSet = false;
72
73 Owner m_owner;
74 bool m_ownerHasBeenSet = false;
75 };
76
77} // namespace Model
78} // namespace S3
79} // namespace Aws
AccessControlPolicy & WithGrants(GrantsT &&value)
AWS_S3_API AccessControlPolicy(const Aws::Utils::Xml::XmlNode &xmlNode)
AccessControlPolicy & AddGrants(GrantsT &&value)
AccessControlPolicy & WithOwner(OwnerT &&value)
AWS_S3_API AccessControlPolicy & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
AWS_S3_API AccessControlPolicy()=default
const Aws::Vector< Grant > & GetGrants() const
std::vector< T, Aws::Allocator< T > > Vector