AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
DataLakeLifecycleConfiguration.h
1
6#pragma once
7#include <aws/securitylake/SecurityLake_EXPORTS.h>
8#include <aws/securitylake/model/DataLakeLifecycleExpiration.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/securitylake/model/DataLakeLifecycleTransition.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace SecurityLake
24{
25namespace Model
26{
27
35 {
36 public:
37 AWS_SECURITYLAKE_API DataLakeLifecycleConfiguration() = default;
40 AWS_SECURITYLAKE_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
47 inline const DataLakeLifecycleExpiration& GetExpiration() const { return m_expiration; }
48 inline bool ExpirationHasBeenSet() const { return m_expirationHasBeenSet; }
49 template<typename ExpirationT = DataLakeLifecycleExpiration>
50 void SetExpiration(ExpirationT&& value) { m_expirationHasBeenSet = true; m_expiration = std::forward<ExpirationT>(value); }
51 template<typename ExpirationT = DataLakeLifecycleExpiration>
52 DataLakeLifecycleConfiguration& WithExpiration(ExpirationT&& value) { SetExpiration(std::forward<ExpirationT>(value)); return *this;}
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) { m_transitionsHasBeenSet = true; m_transitions = std::forward<TransitionsT>(value); }
63 template<typename TransitionsT = Aws::Vector<DataLakeLifecycleTransition>>
64 DataLakeLifecycleConfiguration& WithTransitions(TransitionsT&& value) { SetTransitions(std::forward<TransitionsT>(value)); return *this;}
65 template<typename TransitionsT = DataLakeLifecycleTransition>
66 DataLakeLifecycleConfiguration& AddTransitions(TransitionsT&& value) { m_transitionsHasBeenSet = true; m_transitions.emplace_back(std::forward<TransitionsT>(value)); return *this; }
68 private:
69
70 DataLakeLifecycleExpiration m_expiration;
71 bool m_expirationHasBeenSet = false;
72
74 bool m_transitionsHasBeenSet = false;
75 };
76
77} // namespace Model
78} // namespace SecurityLake
79} // 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