AWS SDK for C++

AWS SDK for C++ Version 1.11.748

Loading...
Searching...
No Matches
DataLakeLifecycleConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/securitylake/SecurityLake_EXPORTS.h>
9#include <aws/securitylake/model/DataLakeLifecycleExpiration.h>
10#include <aws/securitylake/model/DataLakeLifecycleTransition.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace SecurityLake {
22namespace Model {
23
31 public:
32 AWS_SECURITYLAKE_API DataLakeLifecycleConfiguration() = default;
35 AWS_SECURITYLAKE_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline const DataLakeLifecycleExpiration& GetExpiration() const { return m_expiration; }
42 inline bool ExpirationHasBeenSet() const { return m_expirationHasBeenSet; }
43 template <typename ExpirationT = DataLakeLifecycleExpiration>
44 void SetExpiration(ExpirationT&& value) {
45 m_expirationHasBeenSet = true;
46 m_expiration = std::forward<ExpirationT>(value);
47 }
48 template <typename ExpirationT = DataLakeLifecycleExpiration>
50 SetExpiration(std::forward<ExpirationT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::Vector<DataLakeLifecycleTransition>& GetTransitions() const { return m_transitions; }
60 inline bool TransitionsHasBeenSet() const { return m_transitionsHasBeenSet; }
61 template <typename TransitionsT = Aws::Vector<DataLakeLifecycleTransition>>
62 void SetTransitions(TransitionsT&& value) {
63 m_transitionsHasBeenSet = true;
64 m_transitions = std::forward<TransitionsT>(value);
65 }
66 template <typename TransitionsT = Aws::Vector<DataLakeLifecycleTransition>>
68 SetTransitions(std::forward<TransitionsT>(value));
69 return *this;
70 }
71 template <typename TransitionsT = DataLakeLifecycleTransition>
73 m_transitionsHasBeenSet = true;
74 m_transitions.emplace_back(std::forward<TransitionsT>(value));
75 return *this;
76 }
78 private:
79 DataLakeLifecycleExpiration m_expiration;
80
82 bool m_expirationHasBeenSet = false;
83 bool m_transitionsHasBeenSet = false;
84};
85
86} // namespace Model
87} // namespace SecurityLake
88} // namespace Aws
DataLakeLifecycleConfiguration & AddTransitions(TransitionsT &&value)
AWS_SECURITYLAKE_API DataLakeLifecycleConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
DataLakeLifecycleConfiguration & WithTransitions(TransitionsT &&value)
const Aws::Vector< DataLakeLifecycleTransition > & GetTransitions() const
DataLakeLifecycleConfiguration & WithExpiration(ExpirationT &&value)
AWS_SECURITYLAKE_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_SECURITYLAKE_API DataLakeLifecycleConfiguration()=default
AWS_SECURITYLAKE_API DataLakeLifecycleConfiguration(Aws::Utils::Json::JsonView jsonValue)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue