module Network.AWS.Route53.ListChangeBatchesByHostedZone
(
listChangeBatchesByHostedZone
, ListChangeBatchesByHostedZone
, lcbbhzMarker
, lcbbhzMaxItems
, lcbbhzHostedZoneId
, lcbbhzStartDate
, lcbbhzEndDate
, listChangeBatchesByHostedZoneResponse
, ListChangeBatchesByHostedZoneResponse
, lcbbhzrsNextMarker
, lcbbhzrsIsTruncated
, lcbbhzrsResponseStatus
, lcbbhzrsMaxItems
, lcbbhzrsMarker
, lcbbhzrsChangeBatchRecords
) where
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
import Network.AWS.Route53.Types
import Network.AWS.Route53.Types.Product
data ListChangeBatchesByHostedZone = ListChangeBatchesByHostedZone'
{ _lcbbhzMarker :: !(Maybe Text)
, _lcbbhzMaxItems :: !(Maybe Text)
, _lcbbhzHostedZoneId :: !Text
, _lcbbhzStartDate :: !Text
, _lcbbhzEndDate :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
listChangeBatchesByHostedZone
:: Text
-> Text
-> Text
-> ListChangeBatchesByHostedZone
listChangeBatchesByHostedZone pHostedZoneId_ pStartDate_ pEndDate_ =
ListChangeBatchesByHostedZone'
{ _lcbbhzMarker = Nothing
, _lcbbhzMaxItems = Nothing
, _lcbbhzHostedZoneId = pHostedZoneId_
, _lcbbhzStartDate = pStartDate_
, _lcbbhzEndDate = pEndDate_
}
lcbbhzMarker :: Lens' ListChangeBatchesByHostedZone (Maybe Text)
lcbbhzMarker = lens _lcbbhzMarker (\ s a -> s{_lcbbhzMarker = a});
lcbbhzMaxItems :: Lens' ListChangeBatchesByHostedZone (Maybe Text)
lcbbhzMaxItems = lens _lcbbhzMaxItems (\ s a -> s{_lcbbhzMaxItems = a});
lcbbhzHostedZoneId :: Lens' ListChangeBatchesByHostedZone Text
lcbbhzHostedZoneId = lens _lcbbhzHostedZoneId (\ s a -> s{_lcbbhzHostedZoneId = a});
lcbbhzStartDate :: Lens' ListChangeBatchesByHostedZone Text
lcbbhzStartDate = lens _lcbbhzStartDate (\ s a -> s{_lcbbhzStartDate = a});
lcbbhzEndDate :: Lens' ListChangeBatchesByHostedZone Text
lcbbhzEndDate = lens _lcbbhzEndDate (\ s a -> s{_lcbbhzEndDate = a});
instance AWSRequest ListChangeBatchesByHostedZone
where
type Rs ListChangeBatchesByHostedZone =
ListChangeBatchesByHostedZoneResponse
request = get route53
response
= receiveXML
(\ s h x ->
ListChangeBatchesByHostedZoneResponse' <$>
(x .@? "NextMarker") <*> (x .@? "IsTruncated") <*>
(pure (fromEnum s))
<*> (x .@ "MaxItems")
<*> (x .@ "Marker")
<*>
(x .@? "ChangeBatchRecords" .!@ mempty >>=
parseXMLList1 "ChangeBatchRecord"))
instance ToHeaders ListChangeBatchesByHostedZone
where
toHeaders = const mempty
instance ToPath ListChangeBatchesByHostedZone where
toPath ListChangeBatchesByHostedZone'{..}
= mconcat
["/2013-04-01/hostedzone/", toBS _lcbbhzHostedZoneId,
"/changes"]
instance ToQuery ListChangeBatchesByHostedZone where
toQuery ListChangeBatchesByHostedZone'{..}
= mconcat
["marker" =: _lcbbhzMarker,
"maxItems" =: _lcbbhzMaxItems,
"startDate" =: _lcbbhzStartDate,
"endDate" =: _lcbbhzEndDate]
data ListChangeBatchesByHostedZoneResponse = ListChangeBatchesByHostedZoneResponse'
{ _lcbbhzrsNextMarker :: !(Maybe Text)
, _lcbbhzrsIsTruncated :: !(Maybe Bool)
, _lcbbhzrsResponseStatus :: !Int
, _lcbbhzrsMaxItems :: !Text
, _lcbbhzrsMarker :: !Text
, _lcbbhzrsChangeBatchRecords :: !(List1 ChangeBatchRecord)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
listChangeBatchesByHostedZoneResponse
:: Int
-> Text
-> Text
-> NonEmpty ChangeBatchRecord
-> ListChangeBatchesByHostedZoneResponse
listChangeBatchesByHostedZoneResponse pResponseStatus_ pMaxItems_ pMarker_ pChangeBatchRecords_ =
ListChangeBatchesByHostedZoneResponse'
{ _lcbbhzrsNextMarker = Nothing
, _lcbbhzrsIsTruncated = Nothing
, _lcbbhzrsResponseStatus = pResponseStatus_
, _lcbbhzrsMaxItems = pMaxItems_
, _lcbbhzrsMarker = pMarker_
, _lcbbhzrsChangeBatchRecords = _List1 # pChangeBatchRecords_
}
lcbbhzrsNextMarker :: Lens' ListChangeBatchesByHostedZoneResponse (Maybe Text)
lcbbhzrsNextMarker = lens _lcbbhzrsNextMarker (\ s a -> s{_lcbbhzrsNextMarker = a});
lcbbhzrsIsTruncated :: Lens' ListChangeBatchesByHostedZoneResponse (Maybe Bool)
lcbbhzrsIsTruncated = lens _lcbbhzrsIsTruncated (\ s a -> s{_lcbbhzrsIsTruncated = a});
lcbbhzrsResponseStatus :: Lens' ListChangeBatchesByHostedZoneResponse Int
lcbbhzrsResponseStatus = lens _lcbbhzrsResponseStatus (\ s a -> s{_lcbbhzrsResponseStatus = a});
lcbbhzrsMaxItems :: Lens' ListChangeBatchesByHostedZoneResponse Text
lcbbhzrsMaxItems = lens _lcbbhzrsMaxItems (\ s a -> s{_lcbbhzrsMaxItems = a});
lcbbhzrsMarker :: Lens' ListChangeBatchesByHostedZoneResponse Text
lcbbhzrsMarker = lens _lcbbhzrsMarker (\ s a -> s{_lcbbhzrsMarker = a});
lcbbhzrsChangeBatchRecords :: Lens' ListChangeBatchesByHostedZoneResponse (NonEmpty ChangeBatchRecord)
lcbbhzrsChangeBatchRecords = lens _lcbbhzrsChangeBatchRecords (\ s a -> s{_lcbbhzrsChangeBatchRecords = a}) . _List1;