{-# LANGUAGE OverloadedStrings #-}
module Network.AWS.EMR.Types
(
emr
, _InvalidRequestException
, _InternalServerError
, _InternalServerException
, ActionOnFailure (..)
, AdjustmentType (..)
, AutoScalingPolicyState (..)
, AutoScalingPolicyStateChangeReasonCode (..)
, CancelStepsRequestStatus (..)
, ClusterState (..)
, ClusterStateChangeReasonCode (..)
, ComparisonOperator (..)
, InstanceCollectionType (..)
, InstanceFleetState (..)
, InstanceFleetStateChangeReasonCode (..)
, InstanceFleetType (..)
, InstanceGroupState (..)
, InstanceGroupStateChangeReasonCode (..)
, InstanceGroupType (..)
, InstanceRoleType (..)
, InstanceState (..)
, InstanceStateChangeReasonCode (..)
, MarketType (..)
, RepoUpgradeOnBoot (..)
, ScaleDownBehavior (..)
, SpotProvisioningTimeoutAction (..)
, Statistic (..)
, StepState (..)
, StepStateChangeReasonCode (..)
, Unit (..)
, Application
, application
, aArgs
, aAdditionalInfo
, aName
, aVersion
, AutoScalingPolicy
, autoScalingPolicy
, aspConstraints
, aspRules
, AutoScalingPolicyDescription
, autoScalingPolicyDescription
, aspdStatus
, aspdRules
, aspdConstraints
, AutoScalingPolicyStateChangeReason
, autoScalingPolicyStateChangeReason
, aspscrCode
, aspscrMessage
, AutoScalingPolicyStatus
, autoScalingPolicyStatus
, aspsState
, aspsStateChangeReason
, BootstrapActionConfig
, bootstrapActionConfig
, bacName
, bacScriptBootstrapAction
, CancelStepsInfo
, cancelStepsInfo
, csiStatus
, csiStepId
, csiReason
, CloudWatchAlarmDefinition
, cloudWatchAlarmDefinition
, cwadEvaluationPeriods
, cwadNamespace
, cwadDimensions
, cwadUnit
, cwadStatistic
, cwadComparisonOperator
, cwadMetricName
, cwadPeriod
, cwadThreshold
, Cluster
, cluster
, cluRequestedAMIVersion
, cluEBSRootVolumeSize
, cluEC2InstanceAttributes
, cluNormalizedInstanceHours
, cluConfigurations
, cluCustomAMIId
, cluAutoScalingRole
, cluSecurityConfiguration
, cluScaleDownBehavior
, cluInstanceCollectionType
, cluReleaseLabel
, cluRepoUpgradeOnBoot
, cluLogURI
, cluKerberosAttributes
, 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
, EBSBlockDevice
, ebsBlockDevice
, ebdDevice
, ebdVolumeSpecification
, EBSBlockDeviceConfig
, ebsBlockDeviceConfig
, ebdcVolumesPerInstance
, ebdcVolumeSpecification
, EBSConfiguration
, ebsConfiguration
, ecEBSOptimized
, ecEBSBlockDeviceConfigs
, EBSVolume
, ebsVolume
, evDevice
, evVolumeId
, EC2InstanceAttributes
, ec2InstanceAttributes
, eiaEC2KeyName
, eiaEmrManagedSlaveSecurityGroup
, eiaAdditionalSlaveSecurityGroups
, eiaRequestedEC2SubnetIds
, eiaAdditionalMasterSecurityGroups
, eiaIAMInstanceProfile
, eiaEmrManagedMasterSecurityGroup
, eiaEC2SubnetId
, eiaRequestedEC2AvailabilityZones
, eiaServiceAccessSecurityGroup
, eiaEC2AvailabilityZone
, FailureDetails
, failureDetails
, fdLogFile
, fdReason
, fdMessage
, HadoopJARStepConfig
, hadoopJARStepConfig
, hjscArgs
, hjscMainClass
, hjscProperties
, hjscJAR
, HadoopStepConfig
, hadoopStepConfig
, hscArgs
, hscJAR
, hscMainClass
, hscProperties
, Instance
, instance'
, iStatus
, iPublicDNSName
, iEBSVolumes
, iEC2InstanceId
, iInstanceType
, iMarket
, iPrivateIPAddress
, iInstanceFleetId
, iId
, iInstanceGroupId
, iPrivateDNSName
, iPublicIPAddress
, InstanceFleet
, instanceFleet
, ifProvisionedSpotCapacity
, ifStatus
, ifTargetOnDemandCapacity
, ifInstanceFleetType
, ifInstanceTypeSpecifications
, ifName
, ifProvisionedOnDemandCapacity
, ifTargetSpotCapacity
, ifId
, ifLaunchSpecifications
, InstanceFleetConfig
, instanceFleetConfig
, ifcInstanceTypeConfigs
, ifcTargetOnDemandCapacity
, ifcName
, ifcTargetSpotCapacity
, ifcLaunchSpecifications
, ifcInstanceFleetType
, InstanceFleetModifyConfig
, instanceFleetModifyConfig
, ifmcTargetOnDemandCapacity
, ifmcTargetSpotCapacity
, ifmcInstanceFleetId
, InstanceFleetProvisioningSpecifications
, instanceFleetProvisioningSpecifications
, ifpsSpotSpecification
, InstanceFleetStateChangeReason
, instanceFleetStateChangeReason
, ifscrCode
, ifscrMessage
, InstanceFleetStatus
, instanceFleetStatus
, ifsState
, ifsStateChangeReason
, ifsTimeline
, InstanceFleetTimeline
, instanceFleetTimeline
, iftReadyDateTime
, iftCreationDateTime
, iftEndDateTime
, InstanceGroup
, instanceGroup
, igStatus
, igBidPrice
, igRequestedInstanceCount
, igRunningInstanceCount
, igConfigurations
, igInstanceGroupType
, igEBSBlockDevices
, igInstanceType
, igEBSOptimized
, igMarket
, igName
, igAutoScalingPolicy
, igShrinkPolicy
, igId
, InstanceGroupConfig
, instanceGroupConfig
, igcEBSConfiguration
, igcBidPrice
, igcConfigurations
, igcMarket
, igcName
, igcAutoScalingPolicy
, igcInstanceRole
, igcInstanceType
, igcInstanceCount
, InstanceGroupModifyConfig
, instanceGroupModifyConfig
, igmcInstanceCount
, igmcEC2InstanceIdsToTerminate
, igmcShrinkPolicy
, igmcInstanceGroupId
, InstanceGroupStateChangeReason
, instanceGroupStateChangeReason
, igscrCode
, igscrMessage
, InstanceGroupStatus
, instanceGroupStatus
, igsState
, igsStateChangeReason
, igsTimeline
, InstanceGroupTimeline
, instanceGroupTimeline
, igtReadyDateTime
, igtCreationDateTime
, igtEndDateTime
, InstanceResizePolicy
, instanceResizePolicy
, irpInstancesToProtect
, irpInstancesToTerminate
, irpInstanceTerminationTimeout
, InstanceStateChangeReason
, instanceStateChangeReason
, iscrCode
, iscrMessage
, InstanceStatus
, instanceStatus
, isState
, isStateChangeReason
, isTimeline
, InstanceTimeline
, instanceTimeline
, itReadyDateTime
, itCreationDateTime
, itEndDateTime
, InstanceTypeConfig
, instanceTypeConfig
, itcEBSConfiguration
, itcBidPrice
, itcWeightedCapacity
, itcConfigurations
, itcBidPriceAsPercentageOfOnDemandPrice
, itcInstanceType
, InstanceTypeSpecification
, instanceTypeSpecification
, itsBidPrice
, itsWeightedCapacity
, itsConfigurations
, itsEBSBlockDevices
, itsInstanceType
, itsEBSOptimized
, itsBidPriceAsPercentageOfOnDemandPrice
, JobFlowInstancesConfig
, jobFlowInstancesConfig
, jficInstanceFleets
, jficEC2KeyName
, jficSlaveInstanceType
, jficInstanceCount
, jficEmrManagedSlaveSecurityGroup
, jficAdditionalSlaveSecurityGroups
, jficEC2SubnetIds
, jficHadoopVersion
, jficAdditionalMasterSecurityGroups
, jficEmrManagedMasterSecurityGroup
, jficEC2SubnetId
, jficMasterInstanceType
, jficInstanceGroups
, jficKeepJobFlowAliveWhenNoSteps
, jficServiceAccessSecurityGroup
, jficTerminationProtected
, jficPlacement
, KerberosAttributes
, kerberosAttributes
, kaADDomainJoinPassword
, kaCrossRealmTrustPrincipalPassword
, kaADDomainJoinUser
, kaRealm
, kaKdcAdminPassword
, KeyValue
, keyValue
, kvValue
, kvKey
, MetricDimension
, metricDimension
, mdValue
, mdKey
, PlacementType
, placementType
, ptAvailabilityZones
, ptAvailabilityZone
, ScalingAction
, scalingAction
, saMarket
, saSimpleScalingPolicyConfiguration
, ScalingConstraints
, scalingConstraints
, scMinCapacity
, scMaxCapacity
, ScalingRule
, scalingRule
, srDescription
, srName
, srAction
, srTrigger
, ScalingTrigger
, scalingTrigger
, stCloudWatchAlarmDefinition
, ScriptBootstrapActionConfig
, scriptBootstrapActionConfig
, sbacArgs
, sbacPath
, SecurityConfigurationSummary
, securityConfigurationSummary
, scsName
, scsCreationDateTime
, ShrinkPolicy
, shrinkPolicy
, spDecommissionTimeout
, spInstanceResizePolicy
, SimpleScalingPolicyConfiguration
, simpleScalingPolicyConfiguration
, sspcAdjustmentType
, sspcCoolDown
, sspcScalingAdjustment
, SpotProvisioningSpecification
, spotProvisioningSpecification
, spsBlockDurationMinutes
, spsTimeoutDurationMinutes
, spsTimeoutAction
, Step
, step
, sStatus
, sActionOnFailure
, sConfig
, sName
, sId
, StepConfig
, stepConfig
, scActionOnFailure
, scName
, scHadoopJARStep
, StepStateChangeReason
, stepStateChangeReason
, sscrCode
, sscrMessage
, StepStatus
, stepStatus
, ssState
, ssFailureDetails
, ssStateChangeReason
, ssTimeline
, StepSummary
, stepSummary
, ssStatus
, ssActionOnFailure
, ssConfig
, ssName
, ssId
, StepTimeline
, stepTimeline
, stCreationDateTime
, stEndDateTime
, stStartDateTime
, SupportedProductConfig
, supportedProductConfig
, spcArgs
, spcName
, Tag
, tag
, tagValue
, tagKey
, VolumeSpecification
, volumeSpecification
, vsIOPS
, vsVolumeType
, vsSizeInGB
) 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 "EMR"
, _svcRetry = retry
}
where
retry =
Exponential
{ _retryBase = 5.0e-2
, _retryGrowth = 2
, _retryAttempts = 5
, _retryCheck = check
}
check e
| has (hasCode "ThrottledException" . hasStatus 400) e =
Just "throttled_exception"
| has (hasStatus 429) e = Just "too_many_requests"
| has (hasCode "ThrottlingException" . hasStatus 400) e =
Just "throttling_exception"
| has (hasCode "Throttling" . hasStatus 400) e = Just "throttling"
| has (hasStatus 504) e = Just "gateway_timeout"
| has (hasCode "RequestThrottledException" . hasStatus 400) e =
Just "request_throttled_exception"
| has (hasStatus 502) e = Just "bad_gateway"
| 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 = _MatchServiceError emr "InvalidRequestException"
_InternalServerError :: AsError a => Getting (First ServiceError) a ServiceError
_InternalServerError = _MatchServiceError emr "InternalServerError"
_InternalServerException :: AsError a => Getting (First ServiceError) a ServiceError
_InternalServerException = _MatchServiceError emr "InternalServerException"