{-# LANGUAGE TypeFamilies , MultiParamTypeClasses , FlexibleInstances , OverloadedStrings , RecordWildCards , TemplateHaskell #-} module Aws.Ec2.Commands.CreateSubnet where import Data.Text (Text) import Aws.Ec2.TH data CreateSubnet = CreateSubnet { csub_vpcId :: Text , csub_cidrBlock :: Text , csub_availabilityZone :: Maybe Text } deriving (Show) instance SignQuery CreateSubnet where type ServiceConfiguration CreateSubnet = EC2Configuration signQuery CreateSubnet{..} = ec2SignQuery $ [ ("Action", qArg "CreateSubnet") , defVersion , ("VpcId", qArg csub_vpcId) , ("CidrBlock", qArg csub_cidrBlock) ] +++ (optionalA "AvailabilityZone" csub_availabilityZone) EC2VALUETRANSACTION(CreateSubnet,"subnet")