/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Contains the configuration parameters for a Set Object Retention operation.
* Amazon S3 Batch Operations passes each value through to the underlying PUT
* Object Retention API. For more information about the parameters for this
* operation, see PUT
* Object Retention.See Also:
AWS
* API Reference
Indicates if the operation should be applied to objects in the Batch * Operations job even if they have Governance-type Object Lock in place.
*/ inline bool GetBypassGovernanceRetention() const{ return m_bypassGovernanceRetention; } /** *Indicates if the operation should be applied to objects in the Batch * Operations job even if they have Governance-type Object Lock in place.
*/ inline bool BypassGovernanceRetentionHasBeenSet() const { return m_bypassGovernanceRetentionHasBeenSet; } /** *Indicates if the operation should be applied to objects in the Batch * Operations job even if they have Governance-type Object Lock in place.
*/ inline void SetBypassGovernanceRetention(bool value) { m_bypassGovernanceRetentionHasBeenSet = true; m_bypassGovernanceRetention = value; } /** *Indicates if the operation should be applied to objects in the Batch * Operations job even if they have Governance-type Object Lock in place.
*/ inline S3SetObjectRetentionOperation& WithBypassGovernanceRetention(bool value) { SetBypassGovernanceRetention(value); return *this;} /** *Amazon S3 object lock Retention contains the retention mode to be applied to * all objects in the Batch Operations job.
*/ inline const S3Retention& GetRetention() const{ return m_retention; } /** *Amazon S3 object lock Retention contains the retention mode to be applied to * all objects in the Batch Operations job.
*/ inline bool RetentionHasBeenSet() const { return m_retentionHasBeenSet; } /** *Amazon S3 object lock Retention contains the retention mode to be applied to * all objects in the Batch Operations job.
*/ inline void SetRetention(const S3Retention& value) { m_retentionHasBeenSet = true; m_retention = value; } /** *Amazon S3 object lock Retention contains the retention mode to be applied to * all objects in the Batch Operations job.
*/ inline void SetRetention(S3Retention&& value) { m_retentionHasBeenSet = true; m_retention = std::move(value); } /** *Amazon S3 object lock Retention contains the retention mode to be applied to * all objects in the Batch Operations job.
*/ inline S3SetObjectRetentionOperation& WithRetention(const S3Retention& value) { SetRetention(value); return *this;} /** *Amazon S3 object lock Retention contains the retention mode to be applied to * all objects in the Batch Operations job.
*/ inline S3SetObjectRetentionOperation& WithRetention(S3Retention&& value) { SetRetention(std::move(value)); return *this;} private: bool m_bypassGovernanceRetention; bool m_bypassGovernanceRetentionHasBeenSet; S3Retention m_retention; bool m_retentionHasBeenSet; }; } // namespace Model } // namespace S3Control } // namespace Aws