aws-ec2-0.3.5: src/Aws/Ec2/Commands/ModifyInstanceAttribute.hs
{-# LANGUAGE TypeFamilies
, MultiParamTypeClasses
, FlexibleInstances
, OverloadedStrings
, RecordWildCards
, TemplateHaskell
#-}
module Aws.Ec2.Commands.ModifyInstanceAttribute where
import Aws.Ec2.TH
data InstanceAttribute = DisableApiTermination Bool
deriving (Show)
data ModifyInstanceAttribute = ModifyInstanceAttribute
{ mia_InstanceId :: Text
, mia_attribute :: InstanceAttribute
} deriving (Show)
instance SignQuery ModifyInstanceAttribute where
type ServiceConfiguration ModifyInstanceAttribute = EC2Configuration
signQuery ModifyInstanceAttribute{..} = ec2SignQuery $
[ ("InstanceId", qArg mia_InstanceId)
, ("Action", qArg "ModifyInstanceAttribute")
, defVersion
] +++ case mia_attribute of
DisableApiTermination dat -> [("DisableApiTermination.Value", qShow dat)]
ec2ValueTransaction ''ModifyInstanceAttribute "return"