module Network.AWS.GameLift.Types
(
gameLift
, _InvalidFleetStatusException
, _InvalidRequestException
, _ConflictException
, _TerminalRoutingStrategyException
, _NotFoundException
, _GameSessionFullException
, _InvalidGameSessionStatusException
, _InternalServiceException
, _UnauthorizedException
, _FleetCapacityExceededException
, _LimitExceededException
, BuildStatus (..)
, ComparisonOperatorType (..)
, EC2InstanceType (..)
, EventCode (..)
, FleetStatus (..)
, GameSessionStatus (..)
, IPProtocol (..)
, MetricName (..)
, PlayerSessionCreationPolicy (..)
, PlayerSessionStatus (..)
, ProtectionPolicy (..)
, RoutingStrategyType (..)
, ScalingAdjustmentType (..)
, ScalingStatusType (..)
, AWSCredentials
, awsCredentials
, acSecretAccessKey
, acSessionToken
, acAccessKeyId
, Alias
, alias
, aCreationTime
, aLastUpdatedTime
, aAliasId
, aRoutingStrategy
, aName
, aDescription
, Build
, build
, bCreationTime
, bStatus
, bBuildId
, bName
, bVersion
, bSizeOnDisk
, EC2InstanceCounts
, ec2InstanceCounts
, eicIdLE
, eicTERMINATING
, eicPENDING
, eicMAXIMUM
, eicDESIRED
, eicMINIMUM
, eicACTIVE
, EC2InstanceLimit
, ec2InstanceLimit
, eilEC2InstanceType
, eilCurrentInstances
, eilInstanceLimit
, Event
, event
, eResourceId
, eEventTime
, eMessage
, eEventCode
, eEventId
, FleetAttributes
, fleetAttributes
, faCreationTime
, faStatus
, faServerLaunchParameters
, faLogPaths
, faBuildId
, faTerminationTime
, faNewGameSessionProtectionPolicy
, faName
, faServerLaunchPath
, faFleetId
, faDescription
, FleetCapacity
, fleetCapacity
, fcInstanceType
, fcFleetId
, fcInstanceCounts
, FleetUtilization
, fleetUtilization
, fuActiveGameSessionCount
, fuMaximumPlayerSessionCount
, fuCurrentPlayerSessionCount
, fuFleetId
, GameProperty
, gameProperty
, gpKey
, gpValue
, GameSession
, gameSession
, gsCreationTime
, gsStatus
, gsGameProperties
, gsIPAddress
, gsGameSessionId
, gsMaximumPlayerSessionCount
, gsTerminationTime
, gsPlayerSessionCreationPolicy
, gsName
, gsCurrentPlayerSessionCount
, gsFleetId
, GameSessionDetail
, gameSessionDetail
, gsdGameSession
, gsdProtectionPolicy
, IPPermission
, ipPermission
, ipFromPort
, ipToPort
, ipIPRange
, ipProtocol
, PlayerSession
, playerSession
, psCreationTime
, psStatus
, psIPAddress
, psGameSessionId
, psTerminationTime
, psPlayerSessionId
, psFleetId
, psPlayerId
, RoutingStrategy
, routingStrategy
, rsType
, rsMessage
, rsFleetId
, S3Location
, s3Location
, slBucket
, slKey
, slRoleARN
, ScalingPolicy
, scalingPolicy
, spStatus
, spScalingAdjustmentType
, spEvaluationPeriods
, spMetricName
, spComparisonOperator
, spName
, spThreshold
, spScalingAdjustment
, spFleetId
) where
import Network.AWS.GameLift.Types.Product
import Network.AWS.GameLift.Types.Sum
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Sign.V4
gameLift :: Service
gameLift =
Service
{ _svcAbbrev = "GameLift"
, _svcSigner = v4
, _svcPrefix = "gamelift"
, _svcVersion = "2015-10-01"
, _svcEndpoint = defaultEndpoint gameLift
, _svcTimeout = Just 70
, _svcCheck = statusSuccess
, _svcError = parseJSONError "GameLift"
, _svcRetry = retry
}
where
retry =
Exponential
{ _retryBase = 5.0e-2
, _retryGrowth = 2
, _retryAttempts = 5
, _retryCheck = check
}
check e
| 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 (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
_InvalidFleetStatusException :: AsError a => Getting (First ServiceError) a ServiceError
_InvalidFleetStatusException =
_ServiceError . hasCode "InvalidFleetStatusException"
_InvalidRequestException :: AsError a => Getting (First ServiceError) a ServiceError
_InvalidRequestException = _ServiceError . hasCode "InvalidRequestException"
_ConflictException :: AsError a => Getting (First ServiceError) a ServiceError
_ConflictException = _ServiceError . hasCode "ConflictException"
_TerminalRoutingStrategyException :: AsError a => Getting (First ServiceError) a ServiceError
_TerminalRoutingStrategyException =
_ServiceError . hasCode "TerminalRoutingStrategyException"
_NotFoundException :: AsError a => Getting (First ServiceError) a ServiceError
_NotFoundException = _ServiceError . hasCode "NotFoundException"
_GameSessionFullException :: AsError a => Getting (First ServiceError) a ServiceError
_GameSessionFullException = _ServiceError . hasCode "GameSessionFullException"
_InvalidGameSessionStatusException :: AsError a => Getting (First ServiceError) a ServiceError
_InvalidGameSessionStatusException =
_ServiceError . hasCode "InvalidGameSessionStatusException"
_InternalServiceException :: AsError a => Getting (First ServiceError) a ServiceError
_InternalServiceException = _ServiceError . hasCode "InternalServiceException"
_UnauthorizedException :: AsError a => Getting (First ServiceError) a ServiceError
_UnauthorizedException = _ServiceError . hasCode "UnauthorizedException"
_FleetCapacityExceededException :: AsError a => Getting (First ServiceError) a ServiceError
_FleetCapacityExceededException =
_ServiceError . hasCode "FleetCapacityExceededException"
_LimitExceededException :: AsError a => Getting (First ServiceError) a ServiceError
_LimitExceededException = _ServiceError . hasCode "LimitExceededException"