amazonka-s3-2.0: gen/Amazonka/S3/Types.hs
{-# LANGUAGE DisambiguateRecordFields #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
-- Derived from AWS service descriptions, licensed under Apache 2.0.
-- |
-- Module : Amazonka.S3.Types
-- Copyright : (c) 2013-2023 Brendan Hay
-- License : Mozilla Public License, v. 2.0.
-- Maintainer : Brendan Hay
-- Stability : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.S3.Types
( -- * Service Configuration
defaultService,
-- * Errors
_BucketAlreadyExists,
_BucketAlreadyOwnedByYou,
_InvalidObjectState,
_NoSuchBucket,
_NoSuchKey,
_NoSuchUpload,
_ObjectAlreadyInActiveTierError,
_ObjectNotInActiveTierError,
-- * Re-exported Types
module Amazonka.S3.Internal,
-- * AnalyticsS3ExportFileFormat
AnalyticsS3ExportFileFormat (..),
-- * ArchiveStatus
ArchiveStatus (..),
-- * BucketAccelerateStatus
BucketAccelerateStatus (..),
-- * BucketCannedACL
BucketCannedACL (..),
-- * BucketLogsPermission
BucketLogsPermission (..),
-- * BucketVersioningStatus
BucketVersioningStatus (..),
-- * ChecksumAlgorithm
ChecksumAlgorithm (..),
-- * ChecksumMode
ChecksumMode (..),
-- * CompressionType
CompressionType (..),
-- * DeleteMarkerReplicationStatus
DeleteMarkerReplicationStatus (..),
-- * EncodingType
EncodingType (..),
-- * Event
Event (..),
-- * ExistingObjectReplicationStatus
ExistingObjectReplicationStatus (..),
-- * ExpirationStatus
ExpirationStatus (..),
-- * ExpressionType
ExpressionType (..),
-- * FileHeaderInfo
FileHeaderInfo (..),
-- * FilterRuleName
FilterRuleName (..),
-- * IntelligentTieringAccessTier
IntelligentTieringAccessTier (..),
-- * IntelligentTieringStatus
IntelligentTieringStatus (..),
-- * InventoryFormat
InventoryFormat (..),
-- * InventoryFrequency
InventoryFrequency (..),
-- * InventoryIncludedObjectVersions
InventoryIncludedObjectVersions (..),
-- * InventoryOptionalField
InventoryOptionalField (..),
-- * JSONType
JSONType (..),
-- * MFADelete
MFADelete (..),
-- * MFADeleteStatus
MFADeleteStatus (..),
-- * MetadataDirective
MetadataDirective (..),
-- * MetricsStatus
MetricsStatus (..),
-- * ObjectAttributes
ObjectAttributes (..),
-- * ObjectCannedACL
ObjectCannedACL (..),
-- * ObjectLockEnabled
ObjectLockEnabled (..),
-- * ObjectLockLegalHoldStatus
ObjectLockLegalHoldStatus (..),
-- * ObjectLockMode
ObjectLockMode (..),
-- * ObjectLockRetentionMode
ObjectLockRetentionMode (..),
-- * ObjectOwnership
ObjectOwnership (..),
-- * ObjectStorageClass
ObjectStorageClass (..),
-- * ObjectVersionStorageClass
ObjectVersionStorageClass (..),
-- * OwnerOverride
OwnerOverride (..),
-- * Payer
Payer (..),
-- * Permission
Permission (..),
-- * Protocol
Protocol (..),
-- * QuoteFields
QuoteFields (..),
-- * ReplicaModificationsStatus
ReplicaModificationsStatus (..),
-- * ReplicationRuleStatus
ReplicationRuleStatus (..),
-- * ReplicationStatus
ReplicationStatus (..),
-- * ReplicationTimeStatus
ReplicationTimeStatus (..),
-- * RequestCharged
RequestCharged (..),
-- * RequestPayer
RequestPayer (..),
-- * RestoreRequestType
RestoreRequestType (..),
-- * ServerSideEncryption
ServerSideEncryption (..),
-- * SseKmsEncryptedObjectsStatus
SseKmsEncryptedObjectsStatus (..),
-- * StorageClass
StorageClass (..),
-- * StorageClassAnalysisSchemaVersion
StorageClassAnalysisSchemaVersion (..),
-- * TaggingDirective
TaggingDirective (..),
-- * Tier
Tier (..),
-- * TransitionStorageClass
TransitionStorageClass (..),
-- * Type
Type (..),
-- * AbortIncompleteMultipartUpload
AbortIncompleteMultipartUpload (..),
newAbortIncompleteMultipartUpload,
abortIncompleteMultipartUpload_daysAfterInitiation,
-- * AccelerateConfiguration
AccelerateConfiguration (..),
newAccelerateConfiguration,
accelerateConfiguration_status,
-- * AccessControlPolicy
AccessControlPolicy (..),
newAccessControlPolicy,
accessControlPolicy_grants,
accessControlPolicy_owner,
-- * AccessControlTranslation
AccessControlTranslation (..),
newAccessControlTranslation,
accessControlTranslation_owner,
-- * AnalyticsAndOperator
AnalyticsAndOperator (..),
newAnalyticsAndOperator,
analyticsAndOperator_prefix,
analyticsAndOperator_tags,
-- * AnalyticsConfiguration
AnalyticsConfiguration (..),
newAnalyticsConfiguration,
analyticsConfiguration_filter,
analyticsConfiguration_id,
analyticsConfiguration_storageClassAnalysis,
-- * AnalyticsExportDestination
AnalyticsExportDestination (..),
newAnalyticsExportDestination,
analyticsExportDestination_s3BucketDestination,
-- * AnalyticsFilter
AnalyticsFilter (..),
newAnalyticsFilter,
analyticsFilter_and,
analyticsFilter_prefix,
analyticsFilter_tag,
-- * AnalyticsS3BucketDestination
AnalyticsS3BucketDestination (..),
newAnalyticsS3BucketDestination,
analyticsS3BucketDestination_bucketAccountId,
analyticsS3BucketDestination_prefix,
analyticsS3BucketDestination_format,
analyticsS3BucketDestination_bucket,
-- * Bucket
Bucket (..),
newBucket,
bucket_creationDate,
bucket_name,
-- * BucketLifecycleConfiguration
BucketLifecycleConfiguration (..),
newBucketLifecycleConfiguration,
bucketLifecycleConfiguration_rules,
-- * BucketLoggingStatus
BucketLoggingStatus (..),
newBucketLoggingStatus,
bucketLoggingStatus_loggingEnabled,
-- * CORSConfiguration
CORSConfiguration (..),
newCORSConfiguration,
cORSConfiguration_cORSRules,
-- * CORSRule
CORSRule (..),
newCORSRule,
cORSRule_allowedHeaders,
cORSRule_exposeHeaders,
cORSRule_id,
cORSRule_maxAgeSeconds,
cORSRule_allowedMethods,
cORSRule_allowedOrigins,
-- * CSVInput
CSVInput (..),
newCSVInput,
cSVInput_allowQuotedRecordDelimiter,
cSVInput_comments,
cSVInput_fieldDelimiter,
cSVInput_fileHeaderInfo,
cSVInput_quoteCharacter,
cSVInput_quoteEscapeCharacter,
cSVInput_recordDelimiter,
-- * CSVOutput
CSVOutput (..),
newCSVOutput,
cSVOutput_fieldDelimiter,
cSVOutput_quoteCharacter,
cSVOutput_quoteEscapeCharacter,
cSVOutput_quoteFields,
cSVOutput_recordDelimiter,
-- * Checksum
Checksum (..),
newChecksum,
checksum_checksumCRC32,
checksum_checksumCRC32C,
checksum_checksumSHA1,
checksum_checksumSHA256,
-- * CommonPrefix
CommonPrefix (..),
newCommonPrefix,
commonPrefix_prefix,
-- * CompletedMultipartUpload
CompletedMultipartUpload (..),
newCompletedMultipartUpload,
completedMultipartUpload_parts,
-- * CompletedPart
CompletedPart (..),
newCompletedPart,
completedPart_checksumCRC32,
completedPart_checksumCRC32C,
completedPart_checksumSHA1,
completedPart_checksumSHA256,
completedPart_partNumber,
completedPart_eTag,
-- * Condition
Condition (..),
newCondition,
condition_httpErrorCodeReturnedEquals,
condition_keyPrefixEquals,
-- * ContinuationEvent
ContinuationEvent (..),
newContinuationEvent,
-- * CopyObjectResult
CopyObjectResult (..),
newCopyObjectResult,
copyObjectResult_checksumCRC32,
copyObjectResult_checksumCRC32C,
copyObjectResult_checksumSHA1,
copyObjectResult_checksumSHA256,
copyObjectResult_eTag,
copyObjectResult_lastModified,
-- * CopyPartResult
CopyPartResult (..),
newCopyPartResult,
copyPartResult_checksumCRC32,
copyPartResult_checksumCRC32C,
copyPartResult_checksumSHA1,
copyPartResult_checksumSHA256,
copyPartResult_eTag,
copyPartResult_lastModified,
-- * CreateBucketConfiguration
CreateBucketConfiguration (..),
newCreateBucketConfiguration,
createBucketConfiguration_locationConstraint,
-- * DefaultRetention
DefaultRetention (..),
newDefaultRetention,
defaultRetention_days,
defaultRetention_mode,
defaultRetention_years,
-- * Delete
Delete (..),
newDelete,
delete_quiet,
delete_objects,
-- * DeleteMarkerEntry
DeleteMarkerEntry (..),
newDeleteMarkerEntry,
deleteMarkerEntry_isLatest,
deleteMarkerEntry_key,
deleteMarkerEntry_lastModified,
deleteMarkerEntry_owner,
deleteMarkerEntry_versionId,
-- * DeleteMarkerReplication
DeleteMarkerReplication (..),
newDeleteMarkerReplication,
deleteMarkerReplication_status,
-- * DeletedObject
DeletedObject (..),
newDeletedObject,
deletedObject_deleteMarker,
deletedObject_deleteMarkerVersionId,
deletedObject_key,
deletedObject_versionId,
-- * Destination
Destination (..),
newDestination,
destination_accessControlTranslation,
destination_account,
destination_encryptionConfiguration,
destination_metrics,
destination_replicationTime,
destination_storageClass,
destination_bucket,
-- * Encryption
Encryption (..),
newEncryption,
encryption_kmsContext,
encryption_kmsKeyId,
encryption_encryptionType,
-- * EncryptionConfiguration
EncryptionConfiguration (..),
newEncryptionConfiguration,
encryptionConfiguration_replicaKmsKeyID,
-- * EndEvent
EndEvent (..),
newEndEvent,
-- * ErrorDocument
ErrorDocument (..),
newErrorDocument,
errorDocument_key,
-- * EventBridgeConfiguration
EventBridgeConfiguration (..),
newEventBridgeConfiguration,
-- * ExistingObjectReplication
ExistingObjectReplication (..),
newExistingObjectReplication,
existingObjectReplication_status,
-- * FilterRule
FilterRule (..),
newFilterRule,
filterRule_name,
filterRule_value,
-- * GetObjectAttributesParts
GetObjectAttributesParts (..),
newGetObjectAttributesParts,
getObjectAttributesParts_isTruncated,
getObjectAttributesParts_maxParts,
getObjectAttributesParts_nextPartNumberMarker,
getObjectAttributesParts_partNumberMarker,
getObjectAttributesParts_parts,
getObjectAttributesParts_totalPartsCount,
-- * GlacierJobParameters
GlacierJobParameters (..),
newGlacierJobParameters,
glacierJobParameters_tier,
-- * Grant
Grant (..),
newGrant,
grant_grantee,
grant_permission,
-- * Grantee
Grantee (..),
newGrantee,
grantee_displayName,
grantee_emailAddress,
grantee_id,
grantee_uri,
grantee_type,
-- * IndexDocument
IndexDocument (..),
newIndexDocument,
indexDocument_suffix,
-- * Initiator
Initiator (..),
newInitiator,
initiator_displayName,
initiator_id,
-- * InputSerialization
InputSerialization (..),
newInputSerialization,
inputSerialization_csv,
inputSerialization_compressionType,
inputSerialization_json,
inputSerialization_parquet,
-- * IntelligentTieringAndOperator
IntelligentTieringAndOperator (..),
newIntelligentTieringAndOperator,
intelligentTieringAndOperator_prefix,
intelligentTieringAndOperator_tags,
-- * IntelligentTieringConfiguration
IntelligentTieringConfiguration (..),
newIntelligentTieringConfiguration,
intelligentTieringConfiguration_filter,
intelligentTieringConfiguration_id,
intelligentTieringConfiguration_status,
intelligentTieringConfiguration_tierings,
-- * IntelligentTieringFilter
IntelligentTieringFilter (..),
newIntelligentTieringFilter,
intelligentTieringFilter_and,
intelligentTieringFilter_prefix,
intelligentTieringFilter_tag,
-- * InventoryConfiguration
InventoryConfiguration (..),
newInventoryConfiguration,
inventoryConfiguration_filter,
inventoryConfiguration_optionalFields,
inventoryConfiguration_destination,
inventoryConfiguration_isEnabled,
inventoryConfiguration_id,
inventoryConfiguration_includedObjectVersions,
inventoryConfiguration_schedule,
-- * InventoryDestination
InventoryDestination (..),
newInventoryDestination,
inventoryDestination_s3BucketDestination,
-- * InventoryEncryption
InventoryEncryption (..),
newInventoryEncryption,
inventoryEncryption_ssekms,
inventoryEncryption_sses3,
-- * InventoryFilter
InventoryFilter (..),
newInventoryFilter,
inventoryFilter_prefix,
-- * InventoryS3BucketDestination
InventoryS3BucketDestination (..),
newInventoryS3BucketDestination,
inventoryS3BucketDestination_accountId,
inventoryS3BucketDestination_encryption,
inventoryS3BucketDestination_prefix,
inventoryS3BucketDestination_bucket,
inventoryS3BucketDestination_format,
-- * InventorySchedule
InventorySchedule (..),
newInventorySchedule,
inventorySchedule_frequency,
-- * JSONInput
JSONInput (..),
newJSONInput,
jSONInput_type,
-- * JSONOutput
JSONOutput (..),
newJSONOutput,
jSONOutput_recordDelimiter,
-- * LambdaFunctionConfiguration
LambdaFunctionConfiguration (..),
newLambdaFunctionConfiguration,
lambdaFunctionConfiguration_filter,
lambdaFunctionConfiguration_id,
lambdaFunctionConfiguration_lambdaFunctionArn,
lambdaFunctionConfiguration_events,
-- * LifecycleExpiration
LifecycleExpiration (..),
newLifecycleExpiration,
lifecycleExpiration_date,
lifecycleExpiration_days,
lifecycleExpiration_expiredObjectDeleteMarker,
-- * LifecycleRule
LifecycleRule (..),
newLifecycleRule,
lifecycleRule_abortIncompleteMultipartUpload,
lifecycleRule_expiration,
lifecycleRule_filter,
lifecycleRule_id,
lifecycleRule_noncurrentVersionExpiration,
lifecycleRule_noncurrentVersionTransitions,
lifecycleRule_prefix,
lifecycleRule_transitions,
lifecycleRule_status,
-- * LifecycleRuleAndOperator
LifecycleRuleAndOperator (..),
newLifecycleRuleAndOperator,
lifecycleRuleAndOperator_objectSizeGreaterThan,
lifecycleRuleAndOperator_objectSizeLessThan,
lifecycleRuleAndOperator_prefix,
lifecycleRuleAndOperator_tags,
-- * LifecycleRuleFilter
LifecycleRuleFilter (..),
newLifecycleRuleFilter,
lifecycleRuleFilter_and,
lifecycleRuleFilter_objectSizeGreaterThan,
lifecycleRuleFilter_objectSizeLessThan,
lifecycleRuleFilter_prefix,
lifecycleRuleFilter_tag,
-- * LoggingEnabled
LoggingEnabled (..),
newLoggingEnabled,
loggingEnabled_targetGrants,
loggingEnabled_targetBucket,
loggingEnabled_targetPrefix,
-- * MetadataEntry
MetadataEntry (..),
newMetadataEntry,
metadataEntry_name,
metadataEntry_value,
-- * Metrics
Metrics (..),
newMetrics,
metrics_eventThreshold,
metrics_status,
-- * MetricsAndOperator
MetricsAndOperator (..),
newMetricsAndOperator,
metricsAndOperator_accessPointArn,
metricsAndOperator_prefix,
metricsAndOperator_tags,
-- * MetricsConfiguration
MetricsConfiguration (..),
newMetricsConfiguration,
metricsConfiguration_filter,
metricsConfiguration_id,
-- * MetricsFilter
MetricsFilter (..),
newMetricsFilter,
metricsFilter_accessPointArn,
metricsFilter_and,
metricsFilter_prefix,
metricsFilter_tag,
-- * MultipartUpload
MultipartUpload (..),
newMultipartUpload,
multipartUpload_checksumAlgorithm,
multipartUpload_initiated,
multipartUpload_initiator,
multipartUpload_key,
multipartUpload_owner,
multipartUpload_storageClass,
multipartUpload_uploadId,
-- * NoncurrentVersionExpiration
NoncurrentVersionExpiration (..),
newNoncurrentVersionExpiration,
noncurrentVersionExpiration_newerNoncurrentVersions,
noncurrentVersionExpiration_noncurrentDays,
-- * NoncurrentVersionTransition
NoncurrentVersionTransition (..),
newNoncurrentVersionTransition,
noncurrentVersionTransition_newerNoncurrentVersions,
noncurrentVersionTransition_noncurrentDays,
noncurrentVersionTransition_storageClass,
-- * NotificationConfiguration
NotificationConfiguration (..),
newNotificationConfiguration,
notificationConfiguration_eventBridgeConfiguration,
notificationConfiguration_lambdaFunctionConfigurations,
notificationConfiguration_queueConfigurations,
notificationConfiguration_topicConfigurations,
-- * NotificationConfigurationFilter
NotificationConfigurationFilter (..),
newNotificationConfigurationFilter,
notificationConfigurationFilter_key,
-- * Object
Object (..),
newObject,
object_checksumAlgorithm,
object_owner,
object_eTag,
object_size,
object_key,
object_storageClass,
object_lastModified,
-- * ObjectIdentifier
ObjectIdentifier (..),
newObjectIdentifier,
objectIdentifier_versionId,
objectIdentifier_key,
-- * ObjectLockConfiguration
ObjectLockConfiguration (..),
newObjectLockConfiguration,
objectLockConfiguration_objectLockEnabled,
objectLockConfiguration_rule,
-- * ObjectLockLegalHold
ObjectLockLegalHold (..),
newObjectLockLegalHold,
objectLockLegalHold_status,
-- * ObjectLockRetention
ObjectLockRetention (..),
newObjectLockRetention,
objectLockRetention_mode,
objectLockRetention_retainUntilDate,
-- * ObjectLockRule
ObjectLockRule (..),
newObjectLockRule,
objectLockRule_defaultRetention,
-- * ObjectPart
ObjectPart (..),
newObjectPart,
objectPart_checksumCRC32,
objectPart_checksumCRC32C,
objectPart_checksumSHA1,
objectPart_checksumSHA256,
objectPart_partNumber,
objectPart_size,
-- * ObjectVersion
ObjectVersion (..),
newObjectVersion,
objectVersion_checksumAlgorithm,
objectVersion_eTag,
objectVersion_isLatest,
objectVersion_key,
objectVersion_lastModified,
objectVersion_owner,
objectVersion_size,
objectVersion_storageClass,
objectVersion_versionId,
-- * OutputLocation
OutputLocation (..),
newOutputLocation,
outputLocation_s3,
-- * OutputSerialization
OutputSerialization (..),
newOutputSerialization,
outputSerialization_csv,
outputSerialization_json,
-- * Owner
Owner (..),
newOwner,
owner_displayName,
owner_id,
-- * OwnershipControls
OwnershipControls (..),
newOwnershipControls,
ownershipControls_rules,
-- * OwnershipControlsRule
OwnershipControlsRule (..),
newOwnershipControlsRule,
ownershipControlsRule_objectOwnership,
-- * ParquetInput
ParquetInput (..),
newParquetInput,
-- * Part
Part (..),
newPart,
part_checksumCRC32,
part_checksumCRC32C,
part_checksumSHA1,
part_checksumSHA256,
part_eTag,
part_lastModified,
part_partNumber,
part_size,
-- * PolicyStatus
PolicyStatus (..),
newPolicyStatus,
policyStatus_isPublic,
-- * Progress
Progress (..),
newProgress,
progress_bytesProcessed,
progress_bytesReturned,
progress_bytesScanned,
-- * ProgressEvent
ProgressEvent (..),
newProgressEvent,
progressEvent_details,
-- * PublicAccessBlockConfiguration
PublicAccessBlockConfiguration (..),
newPublicAccessBlockConfiguration,
publicAccessBlockConfiguration_blockPublicAcls,
publicAccessBlockConfiguration_blockPublicPolicy,
publicAccessBlockConfiguration_ignorePublicAcls,
publicAccessBlockConfiguration_restrictPublicBuckets,
-- * QueueConfiguration
QueueConfiguration (..),
newQueueConfiguration,
queueConfiguration_filter,
queueConfiguration_id,
queueConfiguration_queueArn,
queueConfiguration_events,
-- * RecordsEvent
RecordsEvent (..),
newRecordsEvent,
recordsEvent_payload,
-- * Redirect
Redirect (..),
newRedirect,
redirect_hostName,
redirect_httpRedirectCode,
redirect_protocol,
redirect_replaceKeyPrefixWith,
redirect_replaceKeyWith,
-- * RedirectAllRequestsTo
RedirectAllRequestsTo (..),
newRedirectAllRequestsTo,
redirectAllRequestsTo_protocol,
redirectAllRequestsTo_hostName,
-- * ReplicaModifications
ReplicaModifications (..),
newReplicaModifications,
replicaModifications_status,
-- * ReplicationConfiguration
ReplicationConfiguration (..),
newReplicationConfiguration,
replicationConfiguration_role,
replicationConfiguration_rules,
-- * ReplicationRule
ReplicationRule (..),
newReplicationRule,
replicationRule_deleteMarkerReplication,
replicationRule_existingObjectReplication,
replicationRule_filter,
replicationRule_id,
replicationRule_prefix,
replicationRule_priority,
replicationRule_sourceSelectionCriteria,
replicationRule_status,
replicationRule_destination,
-- * ReplicationRuleAndOperator
ReplicationRuleAndOperator (..),
newReplicationRuleAndOperator,
replicationRuleAndOperator_prefix,
replicationRuleAndOperator_tags,
-- * ReplicationRuleFilter
ReplicationRuleFilter (..),
newReplicationRuleFilter,
replicationRuleFilter_and,
replicationRuleFilter_prefix,
replicationRuleFilter_tag,
-- * ReplicationTime
ReplicationTime (..),
newReplicationTime,
replicationTime_status,
replicationTime_time,
-- * ReplicationTimeValue
ReplicationTimeValue (..),
newReplicationTimeValue,
replicationTimeValue_minutes,
-- * RequestPaymentConfiguration
RequestPaymentConfiguration (..),
newRequestPaymentConfiguration,
requestPaymentConfiguration_payer,
-- * RequestProgress
RequestProgress (..),
newRequestProgress,
requestProgress_enabled,
-- * RestoreRequest
RestoreRequest (..),
newRestoreRequest,
restoreRequest_days,
restoreRequest_description,
restoreRequest_glacierJobParameters,
restoreRequest_outputLocation,
restoreRequest_selectParameters,
restoreRequest_tier,
restoreRequest_type,
-- * RoutingRule
RoutingRule (..),
newRoutingRule,
routingRule_condition,
routingRule_redirect,
-- * S3KeyFilter
S3KeyFilter (..),
newS3KeyFilter,
s3KeyFilter_filterRules,
-- * S3Location
S3Location (..),
newS3Location,
s3Location_accessControlList,
s3Location_cannedACL,
s3Location_encryption,
s3Location_storageClass,
s3Location_tagging,
s3Location_userMetadata,
s3Location_bucketName,
s3Location_prefix,
-- * S3ServiceError
S3ServiceError (..),
newS3ServiceError,
s3ServiceError_code,
s3ServiceError_key,
s3ServiceError_message,
s3ServiceError_versionId,
-- * SSEKMS
SSEKMS (..),
newSSEKMS,
ssekms_keyId,
-- * SSES3
SSES3 (..),
newSSES3,
-- * ScanRange
ScanRange (..),
newScanRange,
scanRange_end,
scanRange_start,
-- * SelectObjectContentEventStream
SelectObjectContentEventStream (..),
newSelectObjectContentEventStream,
selectObjectContentEventStream_cont,
selectObjectContentEventStream_end,
selectObjectContentEventStream_progress,
selectObjectContentEventStream_records,
selectObjectContentEventStream_stats,
-- * SelectParameters
SelectParameters (..),
newSelectParameters,
selectParameters_inputSerialization,
selectParameters_expressionType,
selectParameters_expression,
selectParameters_outputSerialization,
-- * ServerSideEncryptionByDefault
ServerSideEncryptionByDefault (..),
newServerSideEncryptionByDefault,
serverSideEncryptionByDefault_kmsMasterKeyID,
serverSideEncryptionByDefault_sSEAlgorithm,
-- * ServerSideEncryptionConfiguration
ServerSideEncryptionConfiguration (..),
newServerSideEncryptionConfiguration,
serverSideEncryptionConfiguration_rules,
-- * ServerSideEncryptionRule
ServerSideEncryptionRule (..),
newServerSideEncryptionRule,
serverSideEncryptionRule_applyServerSideEncryptionByDefault,
serverSideEncryptionRule_bucketKeyEnabled,
-- * SourceSelectionCriteria
SourceSelectionCriteria (..),
newSourceSelectionCriteria,
sourceSelectionCriteria_replicaModifications,
sourceSelectionCriteria_sseKmsEncryptedObjects,
-- * SseKmsEncryptedObjects
SseKmsEncryptedObjects (..),
newSseKmsEncryptedObjects,
sseKmsEncryptedObjects_status,
-- * Stats
Stats (..),
newStats,
stats_bytesProcessed,
stats_bytesReturned,
stats_bytesScanned,
-- * StatsEvent
StatsEvent (..),
newStatsEvent,
statsEvent_details,
-- * StorageClassAnalysis
StorageClassAnalysis (..),
newStorageClassAnalysis,
storageClassAnalysis_dataExport,
-- * StorageClassAnalysisDataExport
StorageClassAnalysisDataExport (..),
newStorageClassAnalysisDataExport,
storageClassAnalysisDataExport_outputSchemaVersion,
storageClassAnalysisDataExport_destination,
-- * Tag
Tag (..),
newTag,
tag_key,
tag_value,
-- * Tagging
Tagging (..),
newTagging,
tagging_tagSet,
-- * TargetGrant
TargetGrant (..),
newTargetGrant,
targetGrant_grantee,
targetGrant_permission,
-- * Tiering
Tiering (..),
newTiering,
tiering_days,
tiering_accessTier,
-- * TopicConfiguration
TopicConfiguration (..),
newTopicConfiguration,
topicConfiguration_filter,
topicConfiguration_id,
topicConfiguration_topicArn,
topicConfiguration_events,
-- * Transition
Transition (..),
newTransition,
transition_date,
transition_days,
transition_storageClass,
-- * VersioningConfiguration
VersioningConfiguration (..),
newVersioningConfiguration,
versioningConfiguration_mfaDelete,
versioningConfiguration_status,
-- * WebsiteConfiguration
WebsiteConfiguration (..),
newWebsiteConfiguration,
websiteConfiguration_errorDocument,
websiteConfiguration_indexDocument,
websiteConfiguration_redirectAllRequestsTo,
websiteConfiguration_routingRules,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Prelude as Prelude
import Amazonka.S3.Internal
import Amazonka.S3.Types.AbortIncompleteMultipartUpload
import Amazonka.S3.Types.AccelerateConfiguration
import Amazonka.S3.Types.AccessControlPolicy
import Amazonka.S3.Types.AccessControlTranslation
import Amazonka.S3.Types.AnalyticsAndOperator
import Amazonka.S3.Types.AnalyticsConfiguration
import Amazonka.S3.Types.AnalyticsExportDestination
import Amazonka.S3.Types.AnalyticsFilter
import Amazonka.S3.Types.AnalyticsS3BucketDestination
import Amazonka.S3.Types.AnalyticsS3ExportFileFormat
import Amazonka.S3.Types.ArchiveStatus
import Amazonka.S3.Types.Bucket
import Amazonka.S3.Types.BucketAccelerateStatus
import Amazonka.S3.Types.BucketCannedACL
import Amazonka.S3.Types.BucketLifecycleConfiguration
import Amazonka.S3.Types.BucketLoggingStatus
import Amazonka.S3.Types.BucketLogsPermission
import Amazonka.S3.Types.BucketVersioningStatus
import Amazonka.S3.Types.CORSConfiguration
import Amazonka.S3.Types.CORSRule
import Amazonka.S3.Types.CSVInput
import Amazonka.S3.Types.CSVOutput
import Amazonka.S3.Types.Checksum
import Amazonka.S3.Types.ChecksumAlgorithm
import Amazonka.S3.Types.ChecksumMode
import Amazonka.S3.Types.CommonPrefix
import Amazonka.S3.Types.CompletedMultipartUpload
import Amazonka.S3.Types.CompletedPart
import Amazonka.S3.Types.CompressionType
import Amazonka.S3.Types.Condition
import Amazonka.S3.Types.ContinuationEvent
import Amazonka.S3.Types.CopyObjectResult
import Amazonka.S3.Types.CopyPartResult
import Amazonka.S3.Types.CreateBucketConfiguration
import Amazonka.S3.Types.DefaultRetention
import Amazonka.S3.Types.Delete
import Amazonka.S3.Types.DeleteMarkerEntry
import Amazonka.S3.Types.DeleteMarkerReplication
import Amazonka.S3.Types.DeleteMarkerReplicationStatus
import Amazonka.S3.Types.DeletedObject
import Amazonka.S3.Types.Destination
import Amazonka.S3.Types.EncodingType
import Amazonka.S3.Types.Encryption
import Amazonka.S3.Types.EncryptionConfiguration
import Amazonka.S3.Types.EndEvent
import Amazonka.S3.Types.ErrorDocument
import Amazonka.S3.Types.Event
import Amazonka.S3.Types.EventBridgeConfiguration
import Amazonka.S3.Types.ExistingObjectReplication
import Amazonka.S3.Types.ExistingObjectReplicationStatus
import Amazonka.S3.Types.ExpirationStatus
import Amazonka.S3.Types.ExpressionType
import Amazonka.S3.Types.FileHeaderInfo
import Amazonka.S3.Types.FilterRule
import Amazonka.S3.Types.FilterRuleName
import Amazonka.S3.Types.GetObjectAttributesParts
import Amazonka.S3.Types.GlacierJobParameters
import Amazonka.S3.Types.Grant
import Amazonka.S3.Types.Grantee
import Amazonka.S3.Types.IndexDocument
import Amazonka.S3.Types.Initiator
import Amazonka.S3.Types.InputSerialization
import Amazonka.S3.Types.IntelligentTieringAccessTier
import Amazonka.S3.Types.IntelligentTieringAndOperator
import Amazonka.S3.Types.IntelligentTieringConfiguration
import Amazonka.S3.Types.IntelligentTieringFilter
import Amazonka.S3.Types.IntelligentTieringStatus
import Amazonka.S3.Types.InventoryConfiguration
import Amazonka.S3.Types.InventoryDestination
import Amazonka.S3.Types.InventoryEncryption
import Amazonka.S3.Types.InventoryFilter
import Amazonka.S3.Types.InventoryFormat
import Amazonka.S3.Types.InventoryFrequency
import Amazonka.S3.Types.InventoryIncludedObjectVersions
import Amazonka.S3.Types.InventoryOptionalField
import Amazonka.S3.Types.InventoryS3BucketDestination
import Amazonka.S3.Types.InventorySchedule
import Amazonka.S3.Types.JSONInput
import Amazonka.S3.Types.JSONOutput
import Amazonka.S3.Types.JSONType
import Amazonka.S3.Types.LambdaFunctionConfiguration
import Amazonka.S3.Types.LifecycleExpiration
import Amazonka.S3.Types.LifecycleRule
import Amazonka.S3.Types.LifecycleRuleAndOperator
import Amazonka.S3.Types.LifecycleRuleFilter
import Amazonka.S3.Types.LoggingEnabled
import Amazonka.S3.Types.MFADelete
import Amazonka.S3.Types.MFADeleteStatus
import Amazonka.S3.Types.MetadataDirective
import Amazonka.S3.Types.MetadataEntry
import Amazonka.S3.Types.Metrics
import Amazonka.S3.Types.MetricsAndOperator
import Amazonka.S3.Types.MetricsConfiguration
import Amazonka.S3.Types.MetricsFilter
import Amazonka.S3.Types.MetricsStatus
import Amazonka.S3.Types.MultipartUpload
import Amazonka.S3.Types.NoncurrentVersionExpiration
import Amazonka.S3.Types.NoncurrentVersionTransition
import Amazonka.S3.Types.NotificationConfiguration
import Amazonka.S3.Types.NotificationConfigurationFilter
import Amazonka.S3.Types.Object
import Amazonka.S3.Types.ObjectAttributes
import Amazonka.S3.Types.ObjectCannedACL
import Amazonka.S3.Types.ObjectIdentifier
import Amazonka.S3.Types.ObjectLockConfiguration
import Amazonka.S3.Types.ObjectLockEnabled
import Amazonka.S3.Types.ObjectLockLegalHold
import Amazonka.S3.Types.ObjectLockLegalHoldStatus
import Amazonka.S3.Types.ObjectLockMode
import Amazonka.S3.Types.ObjectLockRetention
import Amazonka.S3.Types.ObjectLockRetentionMode
import Amazonka.S3.Types.ObjectLockRule
import Amazonka.S3.Types.ObjectOwnership
import Amazonka.S3.Types.ObjectPart
import Amazonka.S3.Types.ObjectStorageClass
import Amazonka.S3.Types.ObjectVersion
import Amazonka.S3.Types.ObjectVersionStorageClass
import Amazonka.S3.Types.OutputLocation
import Amazonka.S3.Types.OutputSerialization
import Amazonka.S3.Types.Owner
import Amazonka.S3.Types.OwnerOverride
import Amazonka.S3.Types.OwnershipControls
import Amazonka.S3.Types.OwnershipControlsRule
import Amazonka.S3.Types.ParquetInput
import Amazonka.S3.Types.Part
import Amazonka.S3.Types.Payer
import Amazonka.S3.Types.Permission
import Amazonka.S3.Types.PolicyStatus
import Amazonka.S3.Types.Progress
import Amazonka.S3.Types.ProgressEvent
import Amazonka.S3.Types.Protocol
import Amazonka.S3.Types.PublicAccessBlockConfiguration
import Amazonka.S3.Types.QueueConfiguration
import Amazonka.S3.Types.QuoteFields
import Amazonka.S3.Types.RecordsEvent
import Amazonka.S3.Types.Redirect
import Amazonka.S3.Types.RedirectAllRequestsTo
import Amazonka.S3.Types.ReplicaModifications
import Amazonka.S3.Types.ReplicaModificationsStatus
import Amazonka.S3.Types.ReplicationConfiguration
import Amazonka.S3.Types.ReplicationRule
import Amazonka.S3.Types.ReplicationRuleAndOperator
import Amazonka.S3.Types.ReplicationRuleFilter
import Amazonka.S3.Types.ReplicationRuleStatus
import Amazonka.S3.Types.ReplicationStatus
import Amazonka.S3.Types.ReplicationTime
import Amazonka.S3.Types.ReplicationTimeStatus
import Amazonka.S3.Types.ReplicationTimeValue
import Amazonka.S3.Types.RequestCharged
import Amazonka.S3.Types.RequestPayer
import Amazonka.S3.Types.RequestPaymentConfiguration
import Amazonka.S3.Types.RequestProgress
import Amazonka.S3.Types.RestoreRequest
import Amazonka.S3.Types.RestoreRequestType
import Amazonka.S3.Types.RoutingRule
import Amazonka.S3.Types.S3KeyFilter
import Amazonka.S3.Types.S3Location
import Amazonka.S3.Types.S3ServiceError
import Amazonka.S3.Types.SSEKMS
import Amazonka.S3.Types.SSES3
import Amazonka.S3.Types.ScanRange
import Amazonka.S3.Types.SelectObjectContentEventStream
import Amazonka.S3.Types.SelectParameters
import Amazonka.S3.Types.ServerSideEncryption
import Amazonka.S3.Types.ServerSideEncryptionByDefault
import Amazonka.S3.Types.ServerSideEncryptionConfiguration
import Amazonka.S3.Types.ServerSideEncryptionRule
import Amazonka.S3.Types.SourceSelectionCriteria
import Amazonka.S3.Types.SseKmsEncryptedObjects
import Amazonka.S3.Types.SseKmsEncryptedObjectsStatus
import Amazonka.S3.Types.Stats
import Amazonka.S3.Types.StatsEvent
import Amazonka.S3.Types.StorageClass
import Amazonka.S3.Types.StorageClassAnalysis
import Amazonka.S3.Types.StorageClassAnalysisDataExport
import Amazonka.S3.Types.StorageClassAnalysisSchemaVersion
import Amazonka.S3.Types.Tag
import Amazonka.S3.Types.Tagging
import Amazonka.S3.Types.TaggingDirective
import Amazonka.S3.Types.TargetGrant
import Amazonka.S3.Types.Tier
import Amazonka.S3.Types.Tiering
import Amazonka.S3.Types.TopicConfiguration
import Amazonka.S3.Types.Transition
import Amazonka.S3.Types.TransitionStorageClass
import Amazonka.S3.Types.Type
import Amazonka.S3.Types.VersioningConfiguration
import Amazonka.S3.Types.WebsiteConfiguration
import qualified Amazonka.Sign.V4 as Sign
-- | API version @2006-03-01@ of the Amazon Simple Storage Service SDK configuration.
defaultService :: Core.Service
defaultService =
Core.Service
{ Core.abbrev = "S3",
Core.signer = Sign.v4,
Core.endpointPrefix = "s3",
Core.signingName = "s3",
Core.version = "2006-03-01",
Core.s3AddressingStyle = Core.S3AddressingStyleAuto,
Core.endpoint = Core.defaultEndpoint defaultService,
Core.timeout = Prelude.Just 70,
Core.check = Core.statusSuccess,
Core.error = Core.parseXMLError "S3",
Core.retry = retry
}
where
retry =
Core.Exponential
{ Core.base = 5.0e-2,
Core.growth = 2,
Core.attempts = 5,
Core.check = check
}
check e
| Lens.has (Core.hasStatus 502) e =
Prelude.Just "bad_gateway"
| Lens.has
( Core.hasCode "BadDigest"
Prelude.. Core.hasStatus 400
)
e =
Prelude.Just "contentmd5"
| Lens.has (Core.hasStatus 504) e =
Prelude.Just "gateway_timeout"
| Lens.has (Core.hasStatus 500) e =
Prelude.Just "general_server_error"
| Lens.has (Core.hasStatus 509) e =
Prelude.Just "limit_exceeded"
| Lens.has
( Core.hasCode "RequestThrottledException"
Prelude.. Core.hasStatus 400
)
e =
Prelude.Just "request_throttled_exception"
| Lens.has (Core.hasStatus 503) e =
Prelude.Just "service_unavailable"
| Lens.has
( Core.hasCode "ThrottledException"
Prelude.. Core.hasStatus 400
)
e =
Prelude.Just "throttled_exception"
| Lens.has
( Core.hasCode "Throttling"
Prelude.. Core.hasStatus 400
)
e =
Prelude.Just "throttling"
| Lens.has
( Core.hasCode "ThrottlingException"
Prelude.. Core.hasStatus 400
)
e =
Prelude.Just "throttling_exception"
| Lens.has
( Core.hasCode
"ProvisionedThroughputExceededException"
Prelude.. Core.hasStatus 400
)
e =
Prelude.Just "throughput_exceeded"
| Lens.has
( Core.hasCode "RequestTimeout"
Prelude.. Core.hasStatus 400
)
e =
Prelude.Just "timeouts"
| Lens.has (Core.hasStatus 429) e =
Prelude.Just "too_many_requests"
| Prelude.otherwise = Prelude.Nothing
-- | The requested bucket name is not available. The bucket namespace is
-- shared by all users of the system. Select a different name and try
-- again.
_BucketAlreadyExists :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_BucketAlreadyExists =
Core._MatchServiceError
defaultService
"BucketAlreadyExists"
-- | The bucket you tried to create already exists, and you own it. Amazon S3
-- returns this error in all Amazon Web Services Regions except in the
-- North Virginia Region. For legacy compatibility, if you re-create an
-- existing bucket that you already own in the North Virginia Region,
-- Amazon S3 returns 200 OK and resets the bucket access control lists
-- (ACLs).
_BucketAlreadyOwnedByYou :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_BucketAlreadyOwnedByYou =
Core._MatchServiceError
defaultService
"BucketAlreadyOwnedByYou"
-- | Object is archived and inaccessible until restored.
_InvalidObjectState :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_InvalidObjectState =
Core._MatchServiceError
defaultService
"InvalidObjectState"
-- | The specified bucket does not exist.
_NoSuchBucket :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_NoSuchBucket =
Core._MatchServiceError
defaultService
"NoSuchBucket"
-- | The specified key does not exist.
_NoSuchKey :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_NoSuchKey =
Core._MatchServiceError defaultService "NoSuchKey"
-- | The specified multipart upload does not exist.
_NoSuchUpload :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_NoSuchUpload =
Core._MatchServiceError
defaultService
"NoSuchUpload"
-- | This action is not allowed against this storage tier.
_ObjectAlreadyInActiveTierError :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_ObjectAlreadyInActiveTierError =
Core._MatchServiceError
defaultService
"ObjectAlreadyInActiveTierError"
-- | The source object of the COPY action is not in the active tier and is
-- only stored in Amazon S3 Glacier.
_ObjectNotInActiveTierError :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_ObjectNotInActiveTierError =
Core._MatchServiceError
defaultService
"ObjectNotInActiveTierError"