/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Provides information about settings that define whether one or more objects
* in an S3 bucket are replicated to S3 buckets for other Amazon Web Services
* accounts and, if so, which accounts.See Also:
AWS
* API Reference
Specifies whether the bucket is configured to replicate one or more objects * to any destination.
*/ inline bool GetReplicated() const{ return m_replicated; } /** *Specifies whether the bucket is configured to replicate one or more objects * to any destination.
*/ inline bool ReplicatedHasBeenSet() const { return m_replicatedHasBeenSet; } /** *Specifies whether the bucket is configured to replicate one or more objects * to any destination.
*/ inline void SetReplicated(bool value) { m_replicatedHasBeenSet = true; m_replicated = value; } /** *Specifies whether the bucket is configured to replicate one or more objects * to any destination.
*/ inline ReplicationDetails& WithReplicated(bool value) { SetReplicated(value); return *this;} /** *Specifies whether the bucket is configured to replicate one or more objects * to a bucket for an Amazon Web Services account that isn't part of your Amazon * Macie organization. An Amazon Macie organization is a set of Macie * accounts that are centrally managed as a group of related accounts through * Organizations or by Macie invitation.
*/ inline bool GetReplicatedExternally() const{ return m_replicatedExternally; } /** *Specifies whether the bucket is configured to replicate one or more objects * to a bucket for an Amazon Web Services account that isn't part of your Amazon * Macie organization. An Amazon Macie organization is a set of Macie * accounts that are centrally managed as a group of related accounts through * Organizations or by Macie invitation.
*/ inline bool ReplicatedExternallyHasBeenSet() const { return m_replicatedExternallyHasBeenSet; } /** *Specifies whether the bucket is configured to replicate one or more objects * to a bucket for an Amazon Web Services account that isn't part of your Amazon * Macie organization. An Amazon Macie organization is a set of Macie * accounts that are centrally managed as a group of related accounts through * Organizations or by Macie invitation.
*/ inline void SetReplicatedExternally(bool value) { m_replicatedExternallyHasBeenSet = true; m_replicatedExternally = value; } /** *Specifies whether the bucket is configured to replicate one or more objects * to a bucket for an Amazon Web Services account that isn't part of your Amazon * Macie organization. An Amazon Macie organization is a set of Macie * accounts that are centrally managed as a group of related accounts through * Organizations or by Macie invitation.
*/ inline ReplicationDetails& WithReplicatedExternally(bool value) { SetReplicatedExternally(value); return *this;} /** *An array of Amazon Web Services account IDs, one for each Amazon Web Services * account that owns a bucket that the bucket is configured to replicate one or * more objects to.
*/ inline const Aws::VectorAn array of Amazon Web Services account IDs, one for each Amazon Web Services * account that owns a bucket that the bucket is configured to replicate one or * more objects to.
*/ inline bool ReplicationAccountsHasBeenSet() const { return m_replicationAccountsHasBeenSet; } /** *An array of Amazon Web Services account IDs, one for each Amazon Web Services * account that owns a bucket that the bucket is configured to replicate one or * more objects to.
*/ inline void SetReplicationAccounts(const Aws::VectorAn array of Amazon Web Services account IDs, one for each Amazon Web Services * account that owns a bucket that the bucket is configured to replicate one or * more objects to.
*/ inline void SetReplicationAccounts(Aws::VectorAn array of Amazon Web Services account IDs, one for each Amazon Web Services * account that owns a bucket that the bucket is configured to replicate one or * more objects to.
*/ inline ReplicationDetails& WithReplicationAccounts(const Aws::VectorAn array of Amazon Web Services account IDs, one for each Amazon Web Services * account that owns a bucket that the bucket is configured to replicate one or * more objects to.
*/ inline ReplicationDetails& WithReplicationAccounts(Aws::VectorAn array of Amazon Web Services account IDs, one for each Amazon Web Services * account that owns a bucket that the bucket is configured to replicate one or * more objects to.
*/ inline ReplicationDetails& AddReplicationAccounts(const Aws::String& value) { m_replicationAccountsHasBeenSet = true; m_replicationAccounts.push_back(value); return *this; } /** *An array of Amazon Web Services account IDs, one for each Amazon Web Services * account that owns a bucket that the bucket is configured to replicate one or * more objects to.
*/ inline ReplicationDetails& AddReplicationAccounts(Aws::String&& value) { m_replicationAccountsHasBeenSet = true; m_replicationAccounts.push_back(std::move(value)); return *this; } /** *An array of Amazon Web Services account IDs, one for each Amazon Web Services * account that owns a bucket that the bucket is configured to replicate one or * more objects to.
*/ inline ReplicationDetails& AddReplicationAccounts(const char* value) { m_replicationAccountsHasBeenSet = true; m_replicationAccounts.push_back(value); return *this; } private: bool m_replicated; bool m_replicatedHasBeenSet = false; bool m_replicatedExternally; bool m_replicatedExternallyHasBeenSet = false; Aws::Vector