7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/dlm/DLM_EXPORTS.h>
10#include <aws/dlm/model/RetentionIntervalUnitValues.h>
44 template <
typename TargetAccountsT = Aws::Vector<Aws::String>>
46 m_targetAccountsHasBeenSet =
true;
47 m_targetAccounts = std::forward<TargetAccountsT>(value);
49 template <
typename TargetAccountsT = Aws::Vector<Aws::String>>
54 template <
typename TargetAccountsT = Aws::String>
56 m_targetAccountsHasBeenSet =
true;
57 m_targetAccounts.emplace_back(std::forward<TargetAccountsT>(value));
70 m_unshareIntervalHasBeenSet =
true;
71 m_unshareInterval = value;
86 m_unshareIntervalUnitHasBeenSet =
true;
87 m_unshareIntervalUnit = value;
97 int m_unshareInterval{0};
100 bool m_targetAccountsHasBeenSet =
false;
101 bool m_unshareIntervalHasBeenSet =
false;
102 bool m_unshareIntervalUnitHasBeenSet =
false;
AWS_DLM_API ShareRule()=default
bool TargetAccountsHasBeenSet() const
void SetUnshareInterval(int value)
AWS_DLM_API ShareRule & operator=(Aws::Utils::Json::JsonView jsonValue)
ShareRule & WithTargetAccounts(TargetAccountsT &&value)
RetentionIntervalUnitValues GetUnshareIntervalUnit() const
void SetUnshareIntervalUnit(RetentionIntervalUnitValues value)
const Aws::Vector< Aws::String > & GetTargetAccounts() const
bool UnshareIntervalHasBeenSet() const
AWS_DLM_API Aws::Utils::Json::JsonValue Jsonize() const
ShareRule & AddTargetAccounts(TargetAccountsT &&value)
AWS_DLM_API ShareRule(Aws::Utils::Json::JsonView jsonValue)
ShareRule & WithUnshareIntervalUnit(RetentionIntervalUnitValues value)
bool UnshareIntervalUnitHasBeenSet() const
int GetUnshareInterval() const
void SetTargetAccounts(TargetAccountsT &&value)
ShareRule & WithUnshareInterval(int value)
RetentionIntervalUnitValues
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue