module Network.AWS.EC2.DescribeVPCClassicLinkDNSSupport
(
describeVPCClassicLinkDNSSupport
, DescribeVPCClassicLinkDNSSupport
, dvcldsNextToken
, dvcldsVPCIds
, dvcldsMaxResults
, describeVPCClassicLinkDNSSupportResponse
, DescribeVPCClassicLinkDNSSupportResponse
, dvpccldnssrsVPCs
, dvpccldnssrsNextToken
, dvpccldnssrsResponseStatus
) where
import Network.AWS.EC2.Types
import Network.AWS.EC2.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data DescribeVPCClassicLinkDNSSupport = DescribeVPCClassicLinkDNSSupport'
{ _dvcldsNextToken :: !(Maybe Text)
, _dvcldsVPCIds :: !(Maybe [Text])
, _dvcldsMaxResults :: !(Maybe Nat)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
describeVPCClassicLinkDNSSupport
:: DescribeVPCClassicLinkDNSSupport
describeVPCClassicLinkDNSSupport =
DescribeVPCClassicLinkDNSSupport'
{ _dvcldsNextToken = Nothing
, _dvcldsVPCIds = Nothing
, _dvcldsMaxResults = Nothing
}
dvcldsNextToken :: Lens' DescribeVPCClassicLinkDNSSupport (Maybe Text)
dvcldsNextToken = lens _dvcldsNextToken (\ s a -> s{_dvcldsNextToken = a});
dvcldsVPCIds :: Lens' DescribeVPCClassicLinkDNSSupport [Text]
dvcldsVPCIds = lens _dvcldsVPCIds (\ s a -> s{_dvcldsVPCIds = a}) . _Default . _Coerce;
dvcldsMaxResults :: Lens' DescribeVPCClassicLinkDNSSupport (Maybe Natural)
dvcldsMaxResults = lens _dvcldsMaxResults (\ s a -> s{_dvcldsMaxResults = a}) . mapping _Nat;
instance AWSRequest DescribeVPCClassicLinkDNSSupport
where
type Rs DescribeVPCClassicLinkDNSSupport =
DescribeVPCClassicLinkDNSSupportResponse
request = postQuery ec2
response
= receiveXML
(\ s h x ->
DescribeVPCClassicLinkDNSSupportResponse' <$>
(x .@? "vpcs" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "nextToken")
<*> (pure (fromEnum s)))
instance Hashable DescribeVPCClassicLinkDNSSupport
where
instance NFData DescribeVPCClassicLinkDNSSupport
where
instance ToHeaders DescribeVPCClassicLinkDNSSupport
where
toHeaders = const mempty
instance ToPath DescribeVPCClassicLinkDNSSupport
where
toPath = const "/"
instance ToQuery DescribeVPCClassicLinkDNSSupport
where
toQuery DescribeVPCClassicLinkDNSSupport'{..}
= mconcat
["Action" =:
("DescribeVpcClassicLinkDnsSupport" :: ByteString),
"Version" =: ("2016-11-15" :: ByteString),
"NextToken" =: _dvcldsNextToken,
toQuery (toQueryList "VpcIds" <$> _dvcldsVPCIds),
"MaxResults" =: _dvcldsMaxResults]
data DescribeVPCClassicLinkDNSSupportResponse = DescribeVPCClassicLinkDNSSupportResponse'
{ _dvpccldnssrsVPCs :: !(Maybe [ClassicLinkDNSSupport])
, _dvpccldnssrsNextToken :: !(Maybe Text)
, _dvpccldnssrsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
describeVPCClassicLinkDNSSupportResponse
:: Int
-> DescribeVPCClassicLinkDNSSupportResponse
describeVPCClassicLinkDNSSupportResponse pResponseStatus_ =
DescribeVPCClassicLinkDNSSupportResponse'
{ _dvpccldnssrsVPCs = Nothing
, _dvpccldnssrsNextToken = Nothing
, _dvpccldnssrsResponseStatus = pResponseStatus_
}
dvpccldnssrsVPCs :: Lens' DescribeVPCClassicLinkDNSSupportResponse [ClassicLinkDNSSupport]
dvpccldnssrsVPCs = lens _dvpccldnssrsVPCs (\ s a -> s{_dvpccldnssrsVPCs = a}) . _Default . _Coerce;
dvpccldnssrsNextToken :: Lens' DescribeVPCClassicLinkDNSSupportResponse (Maybe Text)
dvpccldnssrsNextToken = lens _dvpccldnssrsNextToken (\ s a -> s{_dvpccldnssrsNextToken = a});
dvpccldnssrsResponseStatus :: Lens' DescribeVPCClassicLinkDNSSupportResponse Int
dvpccldnssrsResponseStatus = lens _dvpccldnssrsResponseStatus (\ s a -> s{_dvpccldnssrsResponseStatus = a});
instance NFData
DescribeVPCClassicLinkDNSSupportResponse
where