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