module Network.AWS.SSM.Types
(
sSM
, _AssociatedInstances
, _InvalidInstanceId
, _StatusUnchanged
, _InvalidNextToken
, _DuplicateInstanceId
, _InvalidDocument
, _AssociationAlreadyExists
, _InvalidDocumentContent
, _AssociationLimitExceeded
, _AssociationDoesNotExist
, _InternalServerError
, _TooManyUpdates
, _MaxDocumentSizeExceeded
, _DocumentAlreadyExists
, _DocumentLimitExceeded
, AssociationFilterKey (..)
, AssociationStatusName (..)
, DocumentFilterKey (..)
, DocumentStatus (..)
, Fault (..)
, Association
, association
, aInstanceId
, aName
, AssociationDescription
, associationDescription
, adInstanceId
, adStatus
, adDate
, adName
, AssociationFilter
, associationFilter
, afKey
, afValue
, AssociationStatus
, associationStatus
, asAdditionalInfo
, asDate
, asName
, asMessage
, CreateAssociationBatchRequestEntry
, createAssociationBatchRequestEntry
, cabreInstanceId
, cabreName
, DocumentDescription
, documentDescription
, dStatus
, dSha1
, dCreatedDate
, dName
, DocumentFilter
, documentFilter
, dfKey
, dfValue
, DocumentIdentifier
, documentIdentifier
, diName
, FailedCreateAssociation
, failedCreateAssociation
, fcaEntry
, fcaFault
, fcaMessage
) where
import Network.AWS.Prelude
import Network.AWS.Sign.V4
import Network.AWS.SSM.Types.Product
import Network.AWS.SSM.Types.Sum
sSM :: Service
sSM =
Service
{ _svcAbbrev = "SSM"
, _svcSigner = v4
, _svcPrefix = "ssm"
, _svcVersion = "2014-11-06"
, _svcEndpoint = defaultEndpoint sSM
, _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
_AssociatedInstances :: AsError a => Getting (First ServiceError) a ServiceError
_AssociatedInstances =
_ServiceError . hasStatus 400 . hasCode "AssociatedInstances"
_InvalidInstanceId :: AsError a => Getting (First ServiceError) a ServiceError
_InvalidInstanceId =
_ServiceError . hasStatus 404 . hasCode "InvalidInstanceId"
_StatusUnchanged :: AsError a => Getting (First ServiceError) a ServiceError
_StatusUnchanged = _ServiceError . hasStatus 400 . hasCode "StatusUnchanged"
_InvalidNextToken :: AsError a => Getting (First ServiceError) a ServiceError
_InvalidNextToken = _ServiceError . hasStatus 400 . hasCode "InvalidNextToken"
_DuplicateInstanceId :: AsError a => Getting (First ServiceError) a ServiceError
_DuplicateInstanceId =
_ServiceError . hasStatus 404 . hasCode "DuplicateInstanceId"
_InvalidDocument :: AsError a => Getting (First ServiceError) a ServiceError
_InvalidDocument = _ServiceError . hasStatus 404 . hasCode "InvalidDocument"
_AssociationAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError
_AssociationAlreadyExists =
_ServiceError . hasStatus 400 . hasCode "AssociationAlreadyExists"
_InvalidDocumentContent :: AsError a => Getting (First ServiceError) a ServiceError
_InvalidDocumentContent =
_ServiceError . hasStatus 400 . hasCode "InvalidDocumentContent"
_AssociationLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError
_AssociationLimitExceeded =
_ServiceError . hasStatus 400 . hasCode "AssociationLimitExceeded"
_AssociationDoesNotExist :: AsError a => Getting (First ServiceError) a ServiceError
_AssociationDoesNotExist =
_ServiceError . hasStatus 404 . hasCode "AssociationDoesNotExist"
_InternalServerError :: AsError a => Getting (First ServiceError) a ServiceError
_InternalServerError =
_ServiceError . hasStatus 500 . hasCode "InternalServerError"
_TooManyUpdates :: AsError a => Getting (First ServiceError) a ServiceError
_TooManyUpdates = _ServiceError . hasStatus 429 . hasCode "TooManyUpdates"
_MaxDocumentSizeExceeded :: AsError a => Getting (First ServiceError) a ServiceError
_MaxDocumentSizeExceeded =
_ServiceError . hasStatus 400 . hasCode "MaxDocumentSizeExceeded"
_DocumentAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError
_DocumentAlreadyExists =
_ServiceError . hasStatus 400 . hasCode "DocumentAlreadyExists"
_DocumentLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError
_DocumentLimitExceeded =
_ServiceError . hasStatus 400 . hasCode "DocumentLimitExceeded"