module Network.AWS.EMR.Types
(
eMR
, _InvalidRequestException
, _InternalServerError
, _InternalServerException
, ActionOnFailure (..)
, ClusterState (..)
, ClusterStateChangeReasonCode (..)
, InstanceGroupState (..)
, InstanceGroupStateChangeReasonCode (..)
, InstanceGroupType (..)
, InstanceRoleType (..)
, InstanceState (..)
, InstanceStateChangeReasonCode (..)
, MarketType (..)
, StepState (..)
, StepStateChangeReasonCode (..)
, Application
, application
, aArgs
, aAdditionalInfo
, aName
, aVersion
, BootstrapActionConfig
, bootstrapActionConfig
, bacName
, bacScriptBootstrapAction
, Cluster
, cluster
, cluRequestedAMIVersion
, cluEC2InstanceAttributes
, cluNormalizedInstanceHours
, cluConfigurations
, cluReleaseLabel
, cluLogURI
, cluRunningAMIVersion
, cluMasterPublicDNSName
, cluTerminationProtected
, cluVisibleToAllUsers
, cluAutoTerminate
, cluApplications
, cluTags
, cluServiceRole
, cluId
, cluName
, cluStatus
, ClusterStateChangeReason
, clusterStateChangeReason
, cscrCode
, cscrMessage
, ClusterStatus
, clusterStatus
, csState
, csStateChangeReason
, csTimeline
, ClusterSummary
, clusterSummary
, csStatus
, csNormalizedInstanceHours
, csName
, csId
, ClusterTimeline
, clusterTimeline
, ctReadyDateTime
, ctCreationDateTime
, ctEndDateTime
, Command
, command
, cArgs
, cScriptPath
, cName
, Configuration
, configuration
, cConfigurations
, cClassification
, cProperties
, EC2InstanceAttributes
, ec2InstanceAttributes
, eiaEC2KeyName
, eiaEmrManagedSlaveSecurityGroup
, eiaAdditionalSlaveSecurityGroups
, eiaAdditionalMasterSecurityGroups
, eiaIAMInstanceProfile
, eiaEmrManagedMasterSecurityGroup
, eiaEC2SubnetId
, eiaEC2AvailabilityZone
, HadoopJARStepConfig
, hadoopJARStepConfig
, hjscArgs
, hjscMainClass
, hjscProperties
, hjscJAR
, HadoopStepConfig
, hadoopStepConfig
, hscArgs
, hscJAR
, hscMainClass
, hscProperties
, Instance
, instance'
, iStatus
, iPublicDNSName
, iEC2InstanceId
, iPrivateIPAddress
, iId
, iPrivateDNSName
, iPublicIPAddress
, InstanceGroup
, instanceGroup
, igStatus
, igBidPrice
, igRequestedInstanceCount
, igRunningInstanceCount
, igConfigurations
, igInstanceGroupType
, igInstanceType
, igMarket
, igName
, igId
, InstanceGroupConfig
, instanceGroupConfig
, igcBidPrice
, igcConfigurations
, igcMarket
, igcName
, igcInstanceRole
, igcInstanceType
, igcInstanceCount
, InstanceGroupModifyConfig
, instanceGroupModifyConfig
, igmcInstanceCount
, igmcEC2InstanceIdsToTerminate
, igmcInstanceGroupId
, InstanceGroupStateChangeReason
, instanceGroupStateChangeReason
, igscrCode
, igscrMessage
, InstanceGroupStatus
, instanceGroupStatus
, igsState
, igsStateChangeReason
, igsTimeline
, InstanceGroupTimeline
, instanceGroupTimeline
, igtReadyDateTime
, igtCreationDateTime
, igtEndDateTime
, InstanceStateChangeReason
, instanceStateChangeReason
, iscrCode
, iscrMessage
, InstanceStatus
, instanceStatus
, isState
, isStateChangeReason
, isTimeline
, InstanceTimeline
, instanceTimeline
, itReadyDateTime
, itCreationDateTime
, itEndDateTime
, JobFlowInstancesConfig
, jobFlowInstancesConfig
, jficEC2KeyName
, jficSlaveInstanceType
, jficInstanceCount
, jficEmrManagedSlaveSecurityGroup
, jficAdditionalSlaveSecurityGroups
, jficHadoopVersion
, jficAdditionalMasterSecurityGroups
, jficEmrManagedMasterSecurityGroup
, jficEC2SubnetId
, jficMasterInstanceType
, jficInstanceGroups
, jficKeepJobFlowAliveWhenNoSteps
, jficTerminationProtected
, jficPlacement
, KeyValue
, keyValue
, kvValue
, kvKey
, PlacementType
, placementType
, ptAvailabilityZone
, ScriptBootstrapActionConfig
, scriptBootstrapActionConfig
, sbacArgs
, sbacPath
, Step
, step
, sStatus
, sActionOnFailure
, sConfig
, sName
, sId
, StepConfig
, stepConfig
, scActionOnFailure
, scName
, scHadoopJARStep
, StepStateChangeReason
, stepStateChangeReason
, sscrCode
, sscrMessage
, StepStatus
, stepStatus
, ssState
, ssStateChangeReason
, ssTimeline
, StepSummary
, stepSummary
, ssStatus
, ssActionOnFailure
, ssConfig
, ssName
, ssId
, StepTimeline
, stepTimeline
, stCreationDateTime
, stEndDateTime
, stStartDateTime
, SupportedProductConfig
, supportedProductConfig
, spcArgs
, spcName
, Tag
, tag
, tagValue
, tagKey
) where
import Network.AWS.EMR.Types.Product
import Network.AWS.EMR.Types.Sum
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Sign.V4
eMR :: Service
eMR =
Service
{ _svcAbbrev = "EMR"
, _svcSigner = v4
, _svcPrefix = "elasticmapreduce"
, _svcVersion = "2009-03-31"
, _svcEndpoint = defaultEndpoint eMR
, _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
_InvalidRequestException :: AsError a => Getting (First ServiceError) a ServiceError
_InvalidRequestException = _ServiceError . hasCode "InvalidRequestException"
_InternalServerError :: AsError a => Getting (First ServiceError) a ServiceError
_InternalServerError =
_ServiceError . hasStatus 500 . hasCode "InternalFailure"
_InternalServerException :: AsError a => Getting (First ServiceError) a ServiceError
_InternalServerException = _ServiceError . hasCode "InternalServerException"