module Network.AWS.EC2.DescribeVpcEndpoints
(
DescribeVpcEndpoints
, describeVpcEndpoints
, dve1DryRun
, dve1Filters
, dve1MaxResults
, dve1NextToken
, dve1VpcEndpointIds
, DescribeVpcEndpointsResponse
, describeVpcEndpointsResponse
, dverNextToken
, dverVpcEndpoints
) where
import Network.AWS.Prelude
import Network.AWS.Request.Query
import Network.AWS.EC2.Types
import qualified GHC.Exts
data DescribeVpcEndpoints = DescribeVpcEndpoints
{ _dve1DryRun :: Maybe Bool
, _dve1Filters :: List "Filter" Filter
, _dve1MaxResults :: Maybe Int
, _dve1NextToken :: Maybe Text
, _dve1VpcEndpointIds :: List "item" Text
} deriving (Eq, Read, Show)
describeVpcEndpoints :: DescribeVpcEndpoints
describeVpcEndpoints = DescribeVpcEndpoints
{ _dve1DryRun = Nothing
, _dve1VpcEndpointIds = mempty
, _dve1Filters = mempty
, _dve1MaxResults = Nothing
, _dve1NextToken = Nothing
}
dve1DryRun :: Lens' DescribeVpcEndpoints (Maybe Bool)
dve1DryRun = lens _dve1DryRun (\s a -> s { _dve1DryRun = a })
dve1Filters :: Lens' DescribeVpcEndpoints [Filter]
dve1Filters = lens _dve1Filters (\s a -> s { _dve1Filters = a }) . _List
dve1MaxResults :: Lens' DescribeVpcEndpoints (Maybe Int)
dve1MaxResults = lens _dve1MaxResults (\s a -> s { _dve1MaxResults = a })
dve1NextToken :: Lens' DescribeVpcEndpoints (Maybe Text)
dve1NextToken = lens _dve1NextToken (\s a -> s { _dve1NextToken = a })
dve1VpcEndpointIds :: Lens' DescribeVpcEndpoints [Text]
dve1VpcEndpointIds =
lens _dve1VpcEndpointIds (\s a -> s { _dve1VpcEndpointIds = a })
. _List
data DescribeVpcEndpointsResponse = DescribeVpcEndpointsResponse
{ _dverNextToken :: Maybe Text
, _dverVpcEndpoints :: List "item" VpcEndpoint
} deriving (Eq, Read, Show)
describeVpcEndpointsResponse :: DescribeVpcEndpointsResponse
describeVpcEndpointsResponse = DescribeVpcEndpointsResponse
{ _dverVpcEndpoints = mempty
, _dverNextToken = Nothing
}
dverNextToken :: Lens' DescribeVpcEndpointsResponse (Maybe Text)
dverNextToken = lens _dverNextToken (\s a -> s { _dverNextToken = a })
dverVpcEndpoints :: Lens' DescribeVpcEndpointsResponse [VpcEndpoint]
dverVpcEndpoints = lens _dverVpcEndpoints (\s a -> s { _dverVpcEndpoints = a }) . _List
instance ToPath DescribeVpcEndpoints where
toPath = const "/"
instance ToQuery DescribeVpcEndpoints where
toQuery DescribeVpcEndpoints{..} = mconcat
[ "DryRun" =? _dve1DryRun
, "Filter" `toQueryList` _dve1Filters
, "MaxResults" =? _dve1MaxResults
, "NextToken" =? _dve1NextToken
, "VpcEndpointId" `toQueryList` _dve1VpcEndpointIds
]
instance ToHeaders DescribeVpcEndpoints
instance AWSRequest DescribeVpcEndpoints where
type Sv DescribeVpcEndpoints = EC2
type Rs DescribeVpcEndpoints = DescribeVpcEndpointsResponse
request = post "DescribeVpcEndpoints"
response = xmlResponse
instance FromXML DescribeVpcEndpointsResponse where
parseXML x = DescribeVpcEndpointsResponse
<$> x .@? "nextToken"
<*> x .@? "vpcEndpointSet" .!@ mempty