{-# 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.CloudFormation.ListChangeSets
(
listChangeSets
, ListChangeSets
, lcsNextToken
, lcsStackName
, listChangeSetsResponse
, ListChangeSetsResponse
, lcsrsNextToken
, lcsrsSummaries
, lcsrsResponseStatus
) where
import Network.AWS.CloudFormation.Types
import Network.AWS.CloudFormation.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data ListChangeSets = ListChangeSets'
{ _lcsNextToken :: !(Maybe Text)
, _lcsStackName :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
listChangeSets
:: Text
-> ListChangeSets
listChangeSets pStackName_ =
ListChangeSets' {_lcsNextToken = Nothing, _lcsStackName = pStackName_}
lcsNextToken :: Lens' ListChangeSets (Maybe Text)
lcsNextToken = lens _lcsNextToken (\ s a -> s{_lcsNextToken = a})
lcsStackName :: Lens' ListChangeSets Text
lcsStackName = lens _lcsStackName (\ s a -> s{_lcsStackName = a})
instance AWSRequest ListChangeSets where
type Rs ListChangeSets = ListChangeSetsResponse
request = postQuery cloudFormation
response
= receiveXMLWrapper "ListChangeSetsResult"
(\ s h x ->
ListChangeSetsResponse' <$>
(x .@? "NextToken") <*>
(x .@? "Summaries" .!@ mempty >>=
may (parseXMLList "member"))
<*> (pure (fromEnum s)))
instance Hashable ListChangeSets where
instance NFData ListChangeSets where
instance ToHeaders ListChangeSets where
toHeaders = const mempty
instance ToPath ListChangeSets where
toPath = const "/"
instance ToQuery ListChangeSets where
toQuery ListChangeSets'{..}
= mconcat
["Action" =: ("ListChangeSets" :: ByteString),
"Version" =: ("2010-05-15" :: ByteString),
"NextToken" =: _lcsNextToken,
"StackName" =: _lcsStackName]
data ListChangeSetsResponse = ListChangeSetsResponse'
{ _lcsrsNextToken :: !(Maybe Text)
, _lcsrsSummaries :: !(Maybe [ChangeSetSummary])
, _lcsrsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
listChangeSetsResponse
:: Int
-> ListChangeSetsResponse
listChangeSetsResponse pResponseStatus_ =
ListChangeSetsResponse'
{ _lcsrsNextToken = Nothing
, _lcsrsSummaries = Nothing
, _lcsrsResponseStatus = pResponseStatus_
}
lcsrsNextToken :: Lens' ListChangeSetsResponse (Maybe Text)
lcsrsNextToken = lens _lcsrsNextToken (\ s a -> s{_lcsrsNextToken = a})
lcsrsSummaries :: Lens' ListChangeSetsResponse [ChangeSetSummary]
lcsrsSummaries = lens _lcsrsSummaries (\ s a -> s{_lcsrsSummaries = a}) . _Default . _Coerce
lcsrsResponseStatus :: Lens' ListChangeSetsResponse Int
lcsrsResponseStatus = lens _lcsrsResponseStatus (\ s a -> s{_lcsrsResponseStatus = a})
instance NFData ListChangeSetsResponse where