module Network.AWS.Firehose.Types
(
firehose
, _InvalidArgumentException
, _ConcurrentModificationException
, _ServiceUnavailableException
, _ResourceNotFoundException
, _LimitExceededException
, _ResourceInUseException
, CompressionFormat (..)
, DeliveryStreamStatus (..)
, NoEncryptionConfig (..)
, BufferingHints
, bufferingHints
, bhSizeInMBs
, bhIntervalInSeconds
, CopyCommand
, copyCommand
, ccCopyOptions
, ccDataTableColumns
, ccDataTableName
, DeliveryStreamDescription
, deliveryStreamDescription
, dsdCreateTimestamp
, dsdLastUpdateTimestamp
, dsdDeliveryStreamName
, dsdDeliveryStreamARN
, dsdDeliveryStreamStatus
, dsdVersionId
, dsdDestinations
, dsdHasMoreDestinations
, DestinationDescription
, destinationDescription
, ddS3DestinationDescription
, ddRedshiftDestinationDescription
, ddDestinationId
, EncryptionConfiguration
, encryptionConfiguration
, ecNoEncryptionConfig
, ecKMSEncryptionConfig
, KMSEncryptionConfig
, kmsEncryptionConfig
, kecAWSKMSKeyARN
, PutRecordBatchResponseEntry
, putRecordBatchResponseEntry
, prbreRecordId
, prbreErrorCode
, prbreErrorMessage
, Record
, record
, rData
, RedshiftDestinationConfiguration
, redshiftDestinationConfiguration
, rdcRoleARN
, rdcClusterJDBCURL
, rdcCopyCommand
, rdcUsername
, rdcPassword
, rdcS3Configuration
, RedshiftDestinationDescription
, redshiftDestinationDescription
, rddRoleARN
, rddClusterJDBCURL
, rddCopyCommand
, rddUsername
, rddS3DestinationDescription
, RedshiftDestinationUpdate
, redshiftDestinationUpdate
, rduUsername
, rduS3Update
, rduPassword
, rduCopyCommand
, rduClusterJDBCURL
, rduRoleARN
, S3DestinationConfiguration
, s3DestinationConfiguration
, sdcPrefix
, sdcEncryptionConfiguration
, sdcCompressionFormat
, sdcBufferingHints
, sdcRoleARN
, sdcBucketARN
, S3DestinationDescription
, s3DestinationDescription
, sddPrefix
, sddRoleARN
, sddBucketARN
, sddBufferingHints
, sddCompressionFormat
, sddEncryptionConfiguration
, S3DestinationUpdate
, s3DestinationUpdate
, sduPrefix
, sduEncryptionConfiguration
, sduCompressionFormat
, sduBufferingHints
, sduBucketARN
, sduRoleARN
) where
import Network.AWS.Firehose.Types.Product
import Network.AWS.Firehose.Types.Sum
import Network.AWS.Prelude
import Network.AWS.Sign.V4
firehose :: Service
firehose =
Service
{ _svcAbbrev = "Firehose"
, _svcSigner = v4
, _svcPrefix = "firehose"
, _svcVersion = "2015-08-04"
, _svcEndpoint = defaultEndpoint firehose
, _svcTimeout = Just 70
, _svcCheck = statusSuccess
, _svcError = parseJSONError
, _svcRetry = retry
}
where
retry =
Exponential
{ _retryBase = 5.0e-2
, _retryGrowth = 2
, _retryAttempts = 5
, _retryCheck = check
}
check e
| has (hasCode "ThrottlingException" . hasStatus 400) e =
Just "throttling_exception"
| has (hasCode "Throttling" . hasStatus 400) e = Just "throttling"
| has (hasStatus 503) e = Just "service_unavailable"
| has (hasStatus 500) e = Just "general_server_error"
| has (hasStatus 509) e = Just "limit_exceeded"
| otherwise = Nothing
_InvalidArgumentException :: AsError a => Getting (First ServiceError) a ServiceError
_InvalidArgumentException = _ServiceError . hasCode "InvalidArgumentException"
_ConcurrentModificationException :: AsError a => Getting (First ServiceError) a ServiceError
_ConcurrentModificationException =
_ServiceError . hasCode "ConcurrentModificationException"
_ServiceUnavailableException :: AsError a => Getting (First ServiceError) a ServiceError
_ServiceUnavailableException =
_ServiceError . hasStatus 503 . hasCode "ServiceUnavailableException"
_ResourceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError
_ResourceNotFoundException =
_ServiceError . hasCode "ResourceNotFoundException"
_LimitExceededException :: AsError a => Getting (First ServiceError) a ServiceError
_LimitExceededException = _ServiceError . hasCode "LimitExceededException"
_ResourceInUseException :: AsError a => Getting (First ServiceError) a ServiceError
_ResourceInUseException = _ServiceError . hasCode "ResourceInUseException"