AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
ScopeDetails.h
1
6#pragma once
7#include <aws/dataexchange/DataExchange_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/dataexchange/model/LakeFormationTagPolicyDetails.h>
10#include <aws/dataexchange/model/RedshiftDataShareDetails.h>
11#include <aws/dataexchange/model/S3DataAccessDetails.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace DataExchange
25{
26namespace Model
27{
28
36 {
37 public:
38 AWS_DATAEXCHANGE_API ScopeDetails() = default;
39 AWS_DATAEXCHANGE_API ScopeDetails(Aws::Utils::Json::JsonView jsonValue);
40 AWS_DATAEXCHANGE_API ScopeDetails& operator=(Aws::Utils::Json::JsonView jsonValue);
41 AWS_DATAEXCHANGE_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
48 inline const Aws::Vector<LakeFormationTagPolicyDetails>& GetLakeFormationTagPolicies() const { return m_lakeFormationTagPolicies; }
49 inline bool LakeFormationTagPoliciesHasBeenSet() const { return m_lakeFormationTagPoliciesHasBeenSet; }
50 template<typename LakeFormationTagPoliciesT = Aws::Vector<LakeFormationTagPolicyDetails>>
51 void SetLakeFormationTagPolicies(LakeFormationTagPoliciesT&& value) { m_lakeFormationTagPoliciesHasBeenSet = true; m_lakeFormationTagPolicies = std::forward<LakeFormationTagPoliciesT>(value); }
52 template<typename LakeFormationTagPoliciesT = Aws::Vector<LakeFormationTagPolicyDetails>>
53 ScopeDetails& WithLakeFormationTagPolicies(LakeFormationTagPoliciesT&& value) { SetLakeFormationTagPolicies(std::forward<LakeFormationTagPoliciesT>(value)); return *this;}
54 template<typename LakeFormationTagPoliciesT = LakeFormationTagPolicyDetails>
55 ScopeDetails& AddLakeFormationTagPolicies(LakeFormationTagPoliciesT&& value) { m_lakeFormationTagPoliciesHasBeenSet = true; m_lakeFormationTagPolicies.emplace_back(std::forward<LakeFormationTagPoliciesT>(value)); return *this; }
57
59
62 inline const Aws::Vector<RedshiftDataShareDetails>& GetRedshiftDataShares() const { return m_redshiftDataShares; }
63 inline bool RedshiftDataSharesHasBeenSet() const { return m_redshiftDataSharesHasBeenSet; }
64 template<typename RedshiftDataSharesT = Aws::Vector<RedshiftDataShareDetails>>
65 void SetRedshiftDataShares(RedshiftDataSharesT&& value) { m_redshiftDataSharesHasBeenSet = true; m_redshiftDataShares = std::forward<RedshiftDataSharesT>(value); }
66 template<typename RedshiftDataSharesT = Aws::Vector<RedshiftDataShareDetails>>
67 ScopeDetails& WithRedshiftDataShares(RedshiftDataSharesT&& value) { SetRedshiftDataShares(std::forward<RedshiftDataSharesT>(value)); return *this;}
68 template<typename RedshiftDataSharesT = RedshiftDataShareDetails>
69 ScopeDetails& AddRedshiftDataShares(RedshiftDataSharesT&& value) { m_redshiftDataSharesHasBeenSet = true; m_redshiftDataShares.emplace_back(std::forward<RedshiftDataSharesT>(value)); return *this; }
71
73
76 inline const Aws::Vector<S3DataAccessDetails>& GetS3DataAccesses() const { return m_s3DataAccesses; }
77 inline bool S3DataAccessesHasBeenSet() const { return m_s3DataAccessesHasBeenSet; }
78 template<typename S3DataAccessesT = Aws::Vector<S3DataAccessDetails>>
79 void SetS3DataAccesses(S3DataAccessesT&& value) { m_s3DataAccessesHasBeenSet = true; m_s3DataAccesses = std::forward<S3DataAccessesT>(value); }
80 template<typename S3DataAccessesT = Aws::Vector<S3DataAccessDetails>>
81 ScopeDetails& WithS3DataAccesses(S3DataAccessesT&& value) { SetS3DataAccesses(std::forward<S3DataAccessesT>(value)); return *this;}
82 template<typename S3DataAccessesT = S3DataAccessDetails>
83 ScopeDetails& AddS3DataAccesses(S3DataAccessesT&& value) { m_s3DataAccessesHasBeenSet = true; m_s3DataAccesses.emplace_back(std::forward<S3DataAccessesT>(value)); return *this; }
85 private:
86
87 Aws::Vector<LakeFormationTagPolicyDetails> m_lakeFormationTagPolicies;
88 bool m_lakeFormationTagPoliciesHasBeenSet = false;
89
90 Aws::Vector<RedshiftDataShareDetails> m_redshiftDataShares;
91 bool m_redshiftDataSharesHasBeenSet = false;
92
93 Aws::Vector<S3DataAccessDetails> m_s3DataAccesses;
94 bool m_s3DataAccessesHasBeenSet = false;
95 };
96
97} // namespace Model
98} // namespace DataExchange
99} // namespace Aws
AWS_DATAEXCHANGE_API ScopeDetails(Aws::Utils::Json::JsonView jsonValue)
AWS_DATAEXCHANGE_API ScopeDetails()=default
const Aws::Vector< RedshiftDataShareDetails > & GetRedshiftDataShares() const
ScopeDetails & AddRedshiftDataShares(RedshiftDataSharesT &&value)
ScopeDetails & AddS3DataAccesses(S3DataAccessesT &&value)
const Aws::Vector< S3DataAccessDetails > & GetS3DataAccesses() const
const Aws::Vector< LakeFormationTagPolicyDetails > & GetLakeFormationTagPolicies() const
AWS_DATAEXCHANGE_API Aws::Utils::Json::JsonValue Jsonize() const
ScopeDetails & WithS3DataAccesses(S3DataAccessesT &&value)
AWS_DATAEXCHANGE_API ScopeDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetLakeFormationTagPolicies(LakeFormationTagPoliciesT &&value)
ScopeDetails & WithRedshiftDataShares(RedshiftDataSharesT &&value)
ScopeDetails & WithLakeFormationTagPolicies(LakeFormationTagPoliciesT &&value)
void SetS3DataAccesses(S3DataAccessesT &&value)
ScopeDetails & AddLakeFormationTagPolicies(LakeFormationTagPoliciesT &&value)
void SetRedshiftDataShares(RedshiftDataSharesT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue