aws-ec2 0.2 → 0.2.1
raw patch · 3 files changed
+56/−2 lines, 3 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
+ Aws.Elb.Commands.ConfigureHealthCheck: ConfigureHealthCheck :: Text -> HealthCheck -> ConfigureHealthCheck
+ Aws.Elb.Commands.ConfigureHealthCheck: HealthCheck :: Target -> Integer -> Integer -> Integer -> Integer -> HealthCheck
+ Aws.Elb.Commands.ConfigureHealthCheck: TargetHTTP :: Integer -> Text -> Target
+ Aws.Elb.Commands.ConfigureHealthCheck: TargetHTTPS :: Integer -> Text -> Target
+ Aws.Elb.Commands.ConfigureHealthCheck: TargetSSL :: Integer -> Target
+ Aws.Elb.Commands.ConfigureHealthCheck: TargetTCP :: Integer -> Target
+ Aws.Elb.Commands.ConfigureHealthCheck: chc_healthCheck :: ConfigureHealthCheck -> HealthCheck
+ Aws.Elb.Commands.ConfigureHealthCheck: chc_name :: ConfigureHealthCheck -> Text
+ Aws.Elb.Commands.ConfigureHealthCheck: data ConfigureHealthCheck
+ Aws.Elb.Commands.ConfigureHealthCheck: data HealthCheck
+ Aws.Elb.Commands.ConfigureHealthCheck: data Target
+ Aws.Elb.Commands.ConfigureHealthCheck: hc_healthyThreshold :: HealthCheck -> Integer
+ Aws.Elb.Commands.ConfigureHealthCheck: hc_interval :: HealthCheck -> Integer
+ Aws.Elb.Commands.ConfigureHealthCheck: hc_target :: HealthCheck -> Target
+ Aws.Elb.Commands.ConfigureHealthCheck: hc_timeout :: HealthCheck -> Integer
+ Aws.Elb.Commands.ConfigureHealthCheck: hc_unhealthyThreshold :: HealthCheck -> Integer
+ Aws.Elb.Commands.ConfigureHealthCheck: instance ResponseConsumer ConfigureHealthCheck Value
+ Aws.Elb.Commands.ConfigureHealthCheck: instance Show HealthCheck
+ Aws.Elb.Commands.ConfigureHealthCheck: instance Show Target
+ Aws.Elb.Commands.ConfigureHealthCheck: instance SignQuery ConfigureHealthCheck
+ Aws.Elb.Commands.ConfigureHealthCheck: instance Transaction ConfigureHealthCheck Value
Files
- aws-ec2.cabal +3/−2
- src/Aws/Elb.hs +4/−0
- src/Aws/Elb/Commands/ConfigureHealthCheck.hs +49/−0
aws-ec2.cabal view
@@ -1,5 +1,5 @@ name: aws-ec2-version: 0.2+version: 0.2.1 synopsis: AWS EC2/VPC, ELB and CloudWatch client library for Haskell license-file: LICENSE license: BSD3@@ -15,7 +15,7 @@ source-repository this type: git location: https://github.com/zalora/aws-ec2.git- tag: 0.2+ tag: 0.2.1 source-repository head type: git@@ -81,6 +81,7 @@ , Aws.Elb.Commands.DeregisterInstancesFromLoadBalancer , Aws.Elb.Commands.CreateLBCookieStickinessPolicy , Aws.Elb.Commands.SetLoadBalancerPoliciesOfListener+ , Aws.Elb.Commands.ConfigureHealthCheck build-depends: base >=4 && <5
src/Aws/Elb.hs view
@@ -16,6 +16,8 @@ , module Aws.Elb.Commands.CreateLBCookieStickinessPolicy , module Aws.Elb.Commands.SetLoadBalancerPoliciesOfListener++, module Aws.Elb.Commands.ConfigureHealthCheck ) where import Aws.Core (Transaction)@@ -35,3 +37,5 @@ import Aws.Elb.Commands.CreateLBCookieStickinessPolicy import Aws.Elb.Commands.SetLoadBalancerPoliciesOfListener++import Aws.Elb.Commands.ConfigureHealthCheck
+ src/Aws/Elb/Commands/ConfigureHealthCheck.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE TypeFamilies+ , MultiParamTypeClasses+ , FlexibleInstances+ , OverloadedStrings+ , TemplateHaskell+ , RecordWildCards+ #-}++module Aws.Elb.Commands.ConfigureHealthCheck where++import qualified Data.Text as T+import Aws.Elb.TH++data Target = TargetTCP Integer+ | TargetSSL Integer+ | TargetHTTP Integer Text+ | TargetHTTPS Integer Text++instance Show Target where+ show (TargetTCP port) = "TCP:" ++ show port+ show (TargetSSL port) = "SSL:" ++ show port+ show (TargetHTTP port path) = "HTTP:" ++ show port ++ (T.unpack path)+ show (TargetHTTPS port path) = "HTTPS:" ++ show port ++ (T.unpack path)++data HealthCheck = HealthCheck { hc_target :: Target+ , hc_healthyThreshold :: Integer+ , hc_unhealthyThreshold :: Integer+ , hc_interval :: Integer+ , hc_timeout :: Integer -- ^ must be less than `hc_interval'+ } deriving (Show)++data ConfigureHealthCheck = ConfigureHealthCheck { chc_name :: Text+ , chc_healthCheck :: HealthCheck+ }++instance SignQuery ConfigureHealthCheck where+ type ServiceConfiguration ConfigureHealthCheck = QueryAPIConfiguration+ signQuery ConfigureHealthCheck{..} = elbSignQuery $ ($ chc_healthCheck) $ \HealthCheck{..} ->+ [ ("Action", qArg "ConfigureHealthCheck")+ , defVersion+ , ("LoadBalancerName", qArg chc_name)+ , ("HealthCheck.HealthyThreshold", qShow hc_healthyThreshold)+ , ("HealthCheck.UnhealthyThreshold", qShow hc_unhealthyThreshold)+ , ("HealthCheck.Target", qShow hc_target)+ , ("HealthCheck.Interval", qShow hc_interval)+ , ("HealthCheck.Timeout", qShow hc_timeout)+ ]++elbValueTransaction ''ConfigureHealthCheck "ConfigureHealthCheckResult"