module Network.AWS.ELB.DescribeLoadBalancerPolicyTypes
(
DescribeLoadBalancerPolicyTypes
, describeLoadBalancerPolicyTypes
, dlbptPolicyTypeNames
, DescribeLoadBalancerPolicyTypesResponse
, describeLoadBalancerPolicyTypesResponse
, dlbptrPolicyTypeDescriptions
) where
import Network.AWS.Prelude
import Network.AWS.Request.Query
import Network.AWS.ELB.Types
import qualified GHC.Exts
newtype DescribeLoadBalancerPolicyTypes = DescribeLoadBalancerPolicyTypes
{ _dlbptPolicyTypeNames :: List "member" Text
} deriving (Eq, Ord, Read, Show, Monoid, Semigroup)
instance GHC.Exts.IsList DescribeLoadBalancerPolicyTypes where
type Item DescribeLoadBalancerPolicyTypes = Text
fromList = DescribeLoadBalancerPolicyTypes . GHC.Exts.fromList
toList = GHC.Exts.toList . _dlbptPolicyTypeNames
describeLoadBalancerPolicyTypes :: DescribeLoadBalancerPolicyTypes
describeLoadBalancerPolicyTypes = DescribeLoadBalancerPolicyTypes
{ _dlbptPolicyTypeNames = mempty
}
dlbptPolicyTypeNames :: Lens' DescribeLoadBalancerPolicyTypes [Text]
dlbptPolicyTypeNames =
lens _dlbptPolicyTypeNames (\s a -> s { _dlbptPolicyTypeNames = a })
. _List
newtype DescribeLoadBalancerPolicyTypesResponse = DescribeLoadBalancerPolicyTypesResponse
{ _dlbptrPolicyTypeDescriptions :: List "member" PolicyTypeDescription
} deriving (Eq, Read, Show, Monoid, Semigroup)
instance GHC.Exts.IsList DescribeLoadBalancerPolicyTypesResponse where
type Item DescribeLoadBalancerPolicyTypesResponse = PolicyTypeDescription
fromList = DescribeLoadBalancerPolicyTypesResponse . GHC.Exts.fromList
toList = GHC.Exts.toList . _dlbptrPolicyTypeDescriptions
describeLoadBalancerPolicyTypesResponse :: DescribeLoadBalancerPolicyTypesResponse
describeLoadBalancerPolicyTypesResponse = DescribeLoadBalancerPolicyTypesResponse
{ _dlbptrPolicyTypeDescriptions = mempty
}
dlbptrPolicyTypeDescriptions :: Lens' DescribeLoadBalancerPolicyTypesResponse [PolicyTypeDescription]
dlbptrPolicyTypeDescriptions =
lens _dlbptrPolicyTypeDescriptions
(\s a -> s { _dlbptrPolicyTypeDescriptions = a })
. _List
instance ToPath DescribeLoadBalancerPolicyTypes where
toPath = const "/"
instance ToQuery DescribeLoadBalancerPolicyTypes where
toQuery DescribeLoadBalancerPolicyTypes{..} = mconcat
[ "PolicyTypeNames" =? _dlbptPolicyTypeNames
]
instance ToHeaders DescribeLoadBalancerPolicyTypes
instance AWSRequest DescribeLoadBalancerPolicyTypes where
type Sv DescribeLoadBalancerPolicyTypes = ELB
type Rs DescribeLoadBalancerPolicyTypes = DescribeLoadBalancerPolicyTypesResponse
request = post "DescribeLoadBalancerPolicyTypes"
response = xmlResponse
instance FromXML DescribeLoadBalancerPolicyTypesResponse where
parseXML = withElement "DescribeLoadBalancerPolicyTypesResult" $ \x -> DescribeLoadBalancerPolicyTypesResponse
<$> x .@? "PolicyTypeDescriptions" .!@ mempty