module Network.AWS.DAX.DescribeParameterGroups
(
describeParameterGroups
, DescribeParameterGroups
, dpgNextToken
, dpgParameterGroupNames
, dpgMaxResults
, describeParameterGroupsResponse
, DescribeParameterGroupsResponse
, dpgsrsNextToken
, dpgsrsParameterGroups
, dpgsrsResponseStatus
) where
import Network.AWS.DAX.Types
import Network.AWS.DAX.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data DescribeParameterGroups = DescribeParameterGroups'
{ _dpgNextToken :: !(Maybe Text)
, _dpgParameterGroupNames :: !(Maybe [Text])
, _dpgMaxResults :: !(Maybe Int)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
describeParameterGroups
:: DescribeParameterGroups
describeParameterGroups =
DescribeParameterGroups'
{ _dpgNextToken = Nothing
, _dpgParameterGroupNames = Nothing
, _dpgMaxResults = Nothing
}
dpgNextToken :: Lens' DescribeParameterGroups (Maybe Text)
dpgNextToken = lens _dpgNextToken (\ s a -> s{_dpgNextToken = a});
dpgParameterGroupNames :: Lens' DescribeParameterGroups [Text]
dpgParameterGroupNames = lens _dpgParameterGroupNames (\ s a -> s{_dpgParameterGroupNames = a}) . _Default . _Coerce;
dpgMaxResults :: Lens' DescribeParameterGroups (Maybe Int)
dpgMaxResults = lens _dpgMaxResults (\ s a -> s{_dpgMaxResults = a});
instance AWSRequest DescribeParameterGroups where
type Rs DescribeParameterGroups =
DescribeParameterGroupsResponse
request = postJSON dax
response
= receiveJSON
(\ s h x ->
DescribeParameterGroupsResponse' <$>
(x .?> "NextToken") <*>
(x .?> "ParameterGroups" .!@ mempty)
<*> (pure (fromEnum s)))
instance Hashable DescribeParameterGroups where
instance NFData DescribeParameterGroups where
instance ToHeaders DescribeParameterGroups where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("AmazonDAXV3.DescribeParameterGroups" ::
ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON DescribeParameterGroups where
toJSON DescribeParameterGroups'{..}
= object
(catMaybes
[("NextToken" .=) <$> _dpgNextToken,
("ParameterGroupNames" .=) <$>
_dpgParameterGroupNames,
("MaxResults" .=) <$> _dpgMaxResults])
instance ToPath DescribeParameterGroups where
toPath = const "/"
instance ToQuery DescribeParameterGroups where
toQuery = const mempty
data DescribeParameterGroupsResponse = DescribeParameterGroupsResponse'
{ _dpgsrsNextToken :: !(Maybe Text)
, _dpgsrsParameterGroups :: !(Maybe [ParameterGroup])
, _dpgsrsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
describeParameterGroupsResponse
:: Int
-> DescribeParameterGroupsResponse
describeParameterGroupsResponse pResponseStatus_ =
DescribeParameterGroupsResponse'
{ _dpgsrsNextToken = Nothing
, _dpgsrsParameterGroups = Nothing
, _dpgsrsResponseStatus = pResponseStatus_
}
dpgsrsNextToken :: Lens' DescribeParameterGroupsResponse (Maybe Text)
dpgsrsNextToken = lens _dpgsrsNextToken (\ s a -> s{_dpgsrsNextToken = a});
dpgsrsParameterGroups :: Lens' DescribeParameterGroupsResponse [ParameterGroup]
dpgsrsParameterGroups = lens _dpgsrsParameterGroups (\ s a -> s{_dpgsrsParameterGroups = a}) . _Default . _Coerce;
dpgsrsResponseStatus :: Lens' DescribeParameterGroupsResponse Int
dpgsrsResponseStatus = lens _dpgsrsResponseStatus (\ s a -> s{_dpgsrsResponseStatus = a});
instance NFData DescribeParameterGroupsResponse where