{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeFamilies #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Network.AWS.MQ.ListConfigurationRevisions
(
listConfigurationRevisions
, ListConfigurationRevisions
, lcrNextToken
, lcrMaxResults
, lcrConfigurationId
, listConfigurationRevisionsResponse
, ListConfigurationRevisionsResponse
, lcrrsConfigurationId
, lcrrsNextToken
, lcrrsRevisions
, lcrrsMaxResults
, lcrrsResponseStatus
) where
import Network.AWS.Lens
import Network.AWS.MQ.Types
import Network.AWS.MQ.Types.Product
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data ListConfigurationRevisions = ListConfigurationRevisions'
{ _lcrNextToken :: !(Maybe Text)
, _lcrMaxResults :: !(Maybe Nat)
, _lcrConfigurationId :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
listConfigurationRevisions
:: Text
-> ListConfigurationRevisions
listConfigurationRevisions pConfigurationId_ =
ListConfigurationRevisions'
{ _lcrNextToken = Nothing
, _lcrMaxResults = Nothing
, _lcrConfigurationId = pConfigurationId_
}
lcrNextToken :: Lens' ListConfigurationRevisions (Maybe Text)
lcrNextToken = lens _lcrNextToken (\ s a -> s{_lcrNextToken = a})
lcrMaxResults :: Lens' ListConfigurationRevisions (Maybe Natural)
lcrMaxResults = lens _lcrMaxResults (\ s a -> s{_lcrMaxResults = a}) . mapping _Nat
lcrConfigurationId :: Lens' ListConfigurationRevisions Text
lcrConfigurationId = lens _lcrConfigurationId (\ s a -> s{_lcrConfigurationId = a})
instance AWSRequest ListConfigurationRevisions where
type Rs ListConfigurationRevisions =
ListConfigurationRevisionsResponse
request = get mq
response
= receiveJSON
(\ s h x ->
ListConfigurationRevisionsResponse' <$>
(x .?> "configurationId") <*> (x .?> "nextToken") <*>
(x .?> "revisions" .!@ mempty)
<*> (x .?> "maxResults")
<*> (pure (fromEnum s)))
instance Hashable ListConfigurationRevisions where
instance NFData ListConfigurationRevisions where
instance ToHeaders ListConfigurationRevisions where
toHeaders
= const
(mconcat
["Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToPath ListConfigurationRevisions where
toPath ListConfigurationRevisions'{..}
= mconcat
["/v1/configurations/", toBS _lcrConfigurationId,
"/revisions"]
instance ToQuery ListConfigurationRevisions where
toQuery ListConfigurationRevisions'{..}
= mconcat
["nextToken" =: _lcrNextToken,
"maxResults" =: _lcrMaxResults]
data ListConfigurationRevisionsResponse = ListConfigurationRevisionsResponse'
{ _lcrrsConfigurationId :: !(Maybe Text)
, _lcrrsNextToken :: !(Maybe Text)
, _lcrrsRevisions :: !(Maybe [ConfigurationRevision])
, _lcrrsMaxResults :: !(Maybe Int)
, _lcrrsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
listConfigurationRevisionsResponse
:: Int
-> ListConfigurationRevisionsResponse
listConfigurationRevisionsResponse pResponseStatus_ =
ListConfigurationRevisionsResponse'
{ _lcrrsConfigurationId = Nothing
, _lcrrsNextToken = Nothing
, _lcrrsRevisions = Nothing
, _lcrrsMaxResults = Nothing
, _lcrrsResponseStatus = pResponseStatus_
}
lcrrsConfigurationId :: Lens' ListConfigurationRevisionsResponse (Maybe Text)
lcrrsConfigurationId = lens _lcrrsConfigurationId (\ s a -> s{_lcrrsConfigurationId = a})
lcrrsNextToken :: Lens' ListConfigurationRevisionsResponse (Maybe Text)
lcrrsNextToken = lens _lcrrsNextToken (\ s a -> s{_lcrrsNextToken = a})
lcrrsRevisions :: Lens' ListConfigurationRevisionsResponse [ConfigurationRevision]
lcrrsRevisions = lens _lcrrsRevisions (\ s a -> s{_lcrrsRevisions = a}) . _Default . _Coerce
lcrrsMaxResults :: Lens' ListConfigurationRevisionsResponse (Maybe Int)
lcrrsMaxResults = lens _lcrrsMaxResults (\ s a -> s{_lcrrsMaxResults = a})
lcrrsResponseStatus :: Lens' ListConfigurationRevisionsResponse Int
lcrrsResponseStatus = lens _lcrrsResponseStatus (\ s a -> s{_lcrrsResponseStatus = a})
instance NFData ListConfigurationRevisionsResponse
where