{-# 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.SES.ListReceiptRuleSets
(
listReceiptRuleSets
, ListReceiptRuleSets
, lrrsNextToken
, listReceiptRuleSetsResponse
, ListReceiptRuleSetsResponse
, lrrsrsRuleSets
, lrrsrsNextToken
, lrrsrsResponseStatus
) where
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
import Network.AWS.SES.Types
import Network.AWS.SES.Types.Product
newtype ListReceiptRuleSets = ListReceiptRuleSets'
{ _lrrsNextToken :: Maybe Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
listReceiptRuleSets
:: ListReceiptRuleSets
listReceiptRuleSets =
ListReceiptRuleSets'
{ _lrrsNextToken = Nothing
}
lrrsNextToken :: Lens' ListReceiptRuleSets (Maybe Text)
lrrsNextToken = lens _lrrsNextToken (\ s a -> s{_lrrsNextToken = a});
instance AWSRequest ListReceiptRuleSets where
type Rs ListReceiptRuleSets =
ListReceiptRuleSetsResponse
request = postQuery ses
response
= receiveXMLWrapper "ListReceiptRuleSetsResult"
(\ s h x ->
ListReceiptRuleSetsResponse' <$>
(x .@? "RuleSets" .!@ mempty >>=
may (parseXMLList "member"))
<*> (x .@? "NextToken")
<*> (pure (fromEnum s)))
instance Hashable ListReceiptRuleSets
instance NFData ListReceiptRuleSets
instance ToHeaders ListReceiptRuleSets where
toHeaders = const mempty
instance ToPath ListReceiptRuleSets where
toPath = const "/"
instance ToQuery ListReceiptRuleSets where
toQuery ListReceiptRuleSets'{..}
= mconcat
["Action" =: ("ListReceiptRuleSets" :: ByteString),
"Version" =: ("2010-12-01" :: ByteString),
"NextToken" =: _lrrsNextToken]
data ListReceiptRuleSetsResponse = ListReceiptRuleSetsResponse'
{ _lrrsrsRuleSets :: !(Maybe [ReceiptRuleSetMetadata])
, _lrrsrsNextToken :: !(Maybe Text)
, _lrrsrsResponseStatus :: !Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
listReceiptRuleSetsResponse
:: Int
-> ListReceiptRuleSetsResponse
listReceiptRuleSetsResponse pResponseStatus_ =
ListReceiptRuleSetsResponse'
{ _lrrsrsRuleSets = Nothing
, _lrrsrsNextToken = Nothing
, _lrrsrsResponseStatus = pResponseStatus_
}
lrrsrsRuleSets :: Lens' ListReceiptRuleSetsResponse [ReceiptRuleSetMetadata]
lrrsrsRuleSets = lens _lrrsrsRuleSets (\ s a -> s{_lrrsrsRuleSets = a}) . _Default . _Coerce;
lrrsrsNextToken :: Lens' ListReceiptRuleSetsResponse (Maybe Text)
lrrsrsNextToken = lens _lrrsrsNextToken (\ s a -> s{_lrrsrsNextToken = a});
lrrsrsResponseStatus :: Lens' ListReceiptRuleSetsResponse Int
lrrsrsResponseStatus = lens _lrrsrsResponseStatus (\ s a -> s{_lrrsrsResponseStatus = a});
instance NFData ListReceiptRuleSetsResponse