{-# 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.SDB.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.SDB.Types ( -- * Service Configuration defaultService, -- * Errors _AttributeDoesNotExist, _DuplicateItemName, _InvalidNextToken, _InvalidNumberPredicates, _InvalidNumberValueTests, _InvalidParameterValue, _InvalidQueryExpression, _MissingParameter, _NoSuchDomain, _NumberDomainAttributesExceeded, _NumberDomainBytesExceeded, _NumberDomainsExceeded, _NumberItemAttributesExceeded, _NumberSubmittedAttributesExceeded, _NumberSubmittedItemsExceeded, _RequestTimeout, _TooManyRequestedAttributes, -- * Attribute Attribute (..), newAttribute, attribute_alternateNameEncoding, attribute_alternateValueEncoding, attribute_name, attribute_value, -- * DeletableItem DeletableItem (..), newDeletableItem, deletableItem_attributes, deletableItem_name, -- * Item Item (..), newItem, item_alternateNameEncoding, item_name, item_attributes, -- * ReplaceableAttribute ReplaceableAttribute (..), newReplaceableAttribute, replaceableAttribute_replace, replaceableAttribute_name, replaceableAttribute_value, -- * ReplaceableItem ReplaceableItem (..), newReplaceableItem, replaceableItem_name, replaceableItem_attributes, -- * UpdateCondition UpdateCondition (..), newUpdateCondition, updateCondition_exists, updateCondition_name, updateCondition_value, ) where import qualified Amazonka.Core as Core import qualified Amazonka.Core.Lens.Internal as Lens import qualified Amazonka.Prelude as Prelude import Amazonka.SDB.Types.Attribute import Amazonka.SDB.Types.DeletableItem import Amazonka.SDB.Types.Item import Amazonka.SDB.Types.ReplaceableAttribute import Amazonka.SDB.Types.ReplaceableItem import Amazonka.SDB.Types.UpdateCondition import qualified Amazonka.Sign.V2 as Sign -- | API version @2009-04-15@ of the Amazon SimpleDB SDK configuration. defaultService :: Core.Service defaultService = Core.Service { Core.abbrev = "SDB", Core.signer = Sign.v2, Core.endpointPrefix = "sdb", Core.signingName = "sdb", Core.version = "2009-04-15", Core.s3AddressingStyle = Core.S3AddressingStyleAuto, Core.endpoint = Core.defaultEndpoint defaultService, Core.timeout = Prelude.Just 70, Core.check = Core.statusSuccess, Core.error = Core.parseXMLError "SDB", 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.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.hasStatus 429) e = Prelude.Just "too_many_requests" | Prelude.otherwise = Prelude.Nothing -- | The specified attribute does not exist. _AttributeDoesNotExist :: (Core.AsError a) => Lens.Fold a Core.ServiceError _AttributeDoesNotExist = Core._MatchServiceError defaultService "AttributeDoesNotExist" Prelude.. Core.hasStatus 404 -- | The item name was specified more than once. _DuplicateItemName :: (Core.AsError a) => Lens.Fold a Core.ServiceError _DuplicateItemName = Core._MatchServiceError defaultService "DuplicateItemName" Prelude.. Core.hasStatus 400 -- | The specified NextToken is not valid. _InvalidNextToken :: (Core.AsError a) => Lens.Fold a Core.ServiceError _InvalidNextToken = Core._MatchServiceError defaultService "InvalidNextToken" Prelude.. Core.hasStatus 400 -- | Too many predicates exist in the query expression. _InvalidNumberPredicates :: (Core.AsError a) => Lens.Fold a Core.ServiceError _InvalidNumberPredicates = Core._MatchServiceError defaultService "InvalidNumberPredicates" Prelude.. Core.hasStatus 400 -- | Too many predicates exist in the query expression. _InvalidNumberValueTests :: (Core.AsError a) => Lens.Fold a Core.ServiceError _InvalidNumberValueTests = Core._MatchServiceError defaultService "InvalidNumberValueTests" Prelude.. Core.hasStatus 400 -- | The value for a parameter is invalid. _InvalidParameterValue :: (Core.AsError a) => Lens.Fold a Core.ServiceError _InvalidParameterValue = Core._MatchServiceError defaultService "InvalidParameterValue" Prelude.. Core.hasStatus 400 -- | The specified query expression syntax is not valid. _InvalidQueryExpression :: (Core.AsError a) => Lens.Fold a Core.ServiceError _InvalidQueryExpression = Core._MatchServiceError defaultService "InvalidQueryExpression" Prelude.. Core.hasStatus 400 -- | The request must contain the specified missing parameter. _MissingParameter :: (Core.AsError a) => Lens.Fold a Core.ServiceError _MissingParameter = Core._MatchServiceError defaultService "MissingParameter" Prelude.. Core.hasStatus 400 -- | The specified domain does not exist. _NoSuchDomain :: (Core.AsError a) => Lens.Fold a Core.ServiceError _NoSuchDomain = Core._MatchServiceError defaultService "NoSuchDomain" Prelude.. Core.hasStatus 400 -- | Too many attributes in this domain. _NumberDomainAttributesExceeded :: (Core.AsError a) => Lens.Fold a Core.ServiceError _NumberDomainAttributesExceeded = Core._MatchServiceError defaultService "NumberDomainAttributesExceeded" Prelude.. Core.hasStatus 409 -- | Too many bytes in this domain. _NumberDomainBytesExceeded :: (Core.AsError a) => Lens.Fold a Core.ServiceError _NumberDomainBytesExceeded = Core._MatchServiceError defaultService "NumberDomainBytesExceeded" Prelude.. Core.hasStatus 409 -- | Too many domains exist per this account. _NumberDomainsExceeded :: (Core.AsError a) => Lens.Fold a Core.ServiceError _NumberDomainsExceeded = Core._MatchServiceError defaultService "NumberDomainsExceeded" Prelude.. Core.hasStatus 409 -- | Too many attributes in this item. _NumberItemAttributesExceeded :: (Core.AsError a) => Lens.Fold a Core.ServiceError _NumberItemAttributesExceeded = Core._MatchServiceError defaultService "NumberItemAttributesExceeded" Prelude.. Core.hasStatus 409 -- | Too many attributes exist in a single call. _NumberSubmittedAttributesExceeded :: (Core.AsError a) => Lens.Fold a Core.ServiceError _NumberSubmittedAttributesExceeded = Core._MatchServiceError defaultService "NumberSubmittedAttributesExceeded" Prelude.. Core.hasStatus 409 -- | Too many items exist in a single call. _NumberSubmittedItemsExceeded :: (Core.AsError a) => Lens.Fold a Core.ServiceError _NumberSubmittedItemsExceeded = Core._MatchServiceError defaultService "NumberSubmittedItemsExceeded" Prelude.. Core.hasStatus 409 -- | A timeout occurred when attempting to query the specified domain with -- specified query expression. _RequestTimeout :: (Core.AsError a) => Lens.Fold a Core.ServiceError _RequestTimeout = Core._MatchServiceError defaultService "RequestTimeout" Prelude.. Core.hasStatus 408 -- | Too many attributes requested. _TooManyRequestedAttributes :: (Core.AsError a) => Lens.Fold a Core.ServiceError _TooManyRequestedAttributes = Core._MatchServiceError defaultService "TooManyRequestedAttributes" Prelude.. Core.hasStatus 400