module Network.AWS.RDS.DescribeDBClusterParameterGroups
(
describeDBClusterParameterGroups
, DescribeDBClusterParameterGroups
, ddcpgFilters
, ddcpgMarker
, ddcpgMaxRecords
, ddcpgDBClusterParameterGroupName
, describeDBClusterParameterGroupsResponse
, DescribeDBClusterParameterGroupsResponse
, ddcpgrsMarker
, ddcpgrsDBClusterParameterGroups
, ddcpgrsResponseStatus
) where
import Network.AWS.Prelude
import Network.AWS.RDS.Types
import Network.AWS.RDS.Types.Product
import Network.AWS.Request
import Network.AWS.Response
data DescribeDBClusterParameterGroups = DescribeDBClusterParameterGroups'
{ _ddcpgFilters :: !(Maybe [Filter])
, _ddcpgMarker :: !(Maybe Text)
, _ddcpgMaxRecords :: !(Maybe Int)
, _ddcpgDBClusterParameterGroupName :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
describeDBClusterParameterGroups
:: DescribeDBClusterParameterGroups
describeDBClusterParameterGroups =
DescribeDBClusterParameterGroups'
{ _ddcpgFilters = Nothing
, _ddcpgMarker = Nothing
, _ddcpgMaxRecords = Nothing
, _ddcpgDBClusterParameterGroupName = Nothing
}
ddcpgFilters :: Lens' DescribeDBClusterParameterGroups [Filter]
ddcpgFilters = lens _ddcpgFilters (\ s a -> s{_ddcpgFilters = a}) . _Default . _Coerce;
ddcpgMarker :: Lens' DescribeDBClusterParameterGroups (Maybe Text)
ddcpgMarker = lens _ddcpgMarker (\ s a -> s{_ddcpgMarker = a});
ddcpgMaxRecords :: Lens' DescribeDBClusterParameterGroups (Maybe Int)
ddcpgMaxRecords = lens _ddcpgMaxRecords (\ s a -> s{_ddcpgMaxRecords = a});
ddcpgDBClusterParameterGroupName :: Lens' DescribeDBClusterParameterGroups (Maybe Text)
ddcpgDBClusterParameterGroupName = lens _ddcpgDBClusterParameterGroupName (\ s a -> s{_ddcpgDBClusterParameterGroupName = a});
instance AWSRequest DescribeDBClusterParameterGroups
where
type Rs DescribeDBClusterParameterGroups =
DescribeDBClusterParameterGroupsResponse
request = postQuery rDS
response
= receiveXMLWrapper
"DescribeDBClusterParameterGroupsResult"
(\ s h x ->
DescribeDBClusterParameterGroupsResponse' <$>
(x .@? "Marker") <*>
(x .@? "DBClusterParameterGroups" .!@ mempty >>=
may (parseXMLList "DBClusterParameterGroup"))
<*> (pure (fromEnum s)))
instance ToHeaders DescribeDBClusterParameterGroups
where
toHeaders = const mempty
instance ToPath DescribeDBClusterParameterGroups
where
toPath = const "/"
instance ToQuery DescribeDBClusterParameterGroups
where
toQuery DescribeDBClusterParameterGroups'{..}
= mconcat
["Action" =:
("DescribeDBClusterParameterGroups" :: ByteString),
"Version" =: ("2014-10-31" :: ByteString),
"Filters" =:
toQuery (toQueryList "Filter" <$> _ddcpgFilters),
"Marker" =: _ddcpgMarker,
"MaxRecords" =: _ddcpgMaxRecords,
"DBClusterParameterGroupName" =:
_ddcpgDBClusterParameterGroupName]
data DescribeDBClusterParameterGroupsResponse = DescribeDBClusterParameterGroupsResponse'
{ _ddcpgrsMarker :: !(Maybe Text)
, _ddcpgrsDBClusterParameterGroups :: !(Maybe [DBClusterParameterGroup])
, _ddcpgrsResponseStatus :: !Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
describeDBClusterParameterGroupsResponse
:: Int
-> DescribeDBClusterParameterGroupsResponse
describeDBClusterParameterGroupsResponse pResponseStatus_ =
DescribeDBClusterParameterGroupsResponse'
{ _ddcpgrsMarker = Nothing
, _ddcpgrsDBClusterParameterGroups = Nothing
, _ddcpgrsResponseStatus = pResponseStatus_
}
ddcpgrsMarker :: Lens' DescribeDBClusterParameterGroupsResponse (Maybe Text)
ddcpgrsMarker = lens _ddcpgrsMarker (\ s a -> s{_ddcpgrsMarker = a});
ddcpgrsDBClusterParameterGroups :: Lens' DescribeDBClusterParameterGroupsResponse [DBClusterParameterGroup]
ddcpgrsDBClusterParameterGroups = lens _ddcpgrsDBClusterParameterGroups (\ s a -> s{_ddcpgrsDBClusterParameterGroups = a}) . _Default . _Coerce;
ddcpgrsResponseStatus :: Lens' DescribeDBClusterParameterGroupsResponse Int
ddcpgrsResponseStatus = lens _ddcpgrsResponseStatus (\ s a -> s{_ddcpgrsResponseStatus = a});