module Network.AWS.RDS.DescribeDBLogFiles
(
describeDBLogFiles
, DescribeDBLogFiles
, ddlfFilenameContains
, ddlfFileSize
, ddlfFileLastWritten
, ddlfFilters
, ddlfMaxRecords
, ddlfMarker
, ddlfDBInstanceIdentifier
, describeDBLogFilesResponse
, DescribeDBLogFilesResponse
, ddlfrsDescribeDBLogFiles
, ddlfrsMarker
, ddlfrsStatus
) where
import Network.AWS.Pager
import Network.AWS.Prelude
import Network.AWS.RDS.Types
import Network.AWS.RDS.Types.Product
import Network.AWS.Request
import Network.AWS.Response
data DescribeDBLogFiles = DescribeDBLogFiles'
{ _ddlfFilenameContains :: !(Maybe Text)
, _ddlfFileSize :: !(Maybe Integer)
, _ddlfFileLastWritten :: !(Maybe Integer)
, _ddlfFilters :: !(Maybe [Filter])
, _ddlfMaxRecords :: !(Maybe Int)
, _ddlfMarker :: !(Maybe Text)
, _ddlfDBInstanceIdentifier :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
describeDBLogFiles
:: Text
-> DescribeDBLogFiles
describeDBLogFiles pDBInstanceIdentifier_ =
DescribeDBLogFiles'
{ _ddlfFilenameContains = Nothing
, _ddlfFileSize = Nothing
, _ddlfFileLastWritten = Nothing
, _ddlfFilters = Nothing
, _ddlfMaxRecords = Nothing
, _ddlfMarker = Nothing
, _ddlfDBInstanceIdentifier = pDBInstanceIdentifier_
}
ddlfFilenameContains :: Lens' DescribeDBLogFiles (Maybe Text)
ddlfFilenameContains = lens _ddlfFilenameContains (\ s a -> s{_ddlfFilenameContains = a});
ddlfFileSize :: Lens' DescribeDBLogFiles (Maybe Integer)
ddlfFileSize = lens _ddlfFileSize (\ s a -> s{_ddlfFileSize = a});
ddlfFileLastWritten :: Lens' DescribeDBLogFiles (Maybe Integer)
ddlfFileLastWritten = lens _ddlfFileLastWritten (\ s a -> s{_ddlfFileLastWritten = a});
ddlfFilters :: Lens' DescribeDBLogFiles [Filter]
ddlfFilters = lens _ddlfFilters (\ s a -> s{_ddlfFilters = a}) . _Default . _Coerce;
ddlfMaxRecords :: Lens' DescribeDBLogFiles (Maybe Int)
ddlfMaxRecords = lens _ddlfMaxRecords (\ s a -> s{_ddlfMaxRecords = a});
ddlfMarker :: Lens' DescribeDBLogFiles (Maybe Text)
ddlfMarker = lens _ddlfMarker (\ s a -> s{_ddlfMarker = a});
ddlfDBInstanceIdentifier :: Lens' DescribeDBLogFiles Text
ddlfDBInstanceIdentifier = lens _ddlfDBInstanceIdentifier (\ s a -> s{_ddlfDBInstanceIdentifier = a});
instance AWSPager DescribeDBLogFiles where
page rq rs
| stop (rs ^. ddlfrsMarker) = Nothing
| stop (rs ^. ddlfrsDescribeDBLogFiles) = Nothing
| otherwise =
Just $ rq & ddlfMarker .~ rs ^. ddlfrsMarker
instance AWSRequest DescribeDBLogFiles where
type Sv DescribeDBLogFiles = RDS
type Rs DescribeDBLogFiles =
DescribeDBLogFilesResponse
request = postQuery
response
= receiveXMLWrapper "DescribeDBLogFilesResult"
(\ s h x ->
DescribeDBLogFilesResponse' <$>
(x .@? "DescribeDBLogFiles" .!@ mempty >>=
may (parseXMLList "DescribeDBLogFilesDetails"))
<*> (x .@? "Marker")
<*> (pure (fromEnum s)))
instance ToHeaders DescribeDBLogFiles where
toHeaders = const mempty
instance ToPath DescribeDBLogFiles where
toPath = const "/"
instance ToQuery DescribeDBLogFiles where
toQuery DescribeDBLogFiles'{..}
= mconcat
["Action" =: ("DescribeDBLogFiles" :: ByteString),
"Version" =: ("2014-10-31" :: ByteString),
"FilenameContains" =: _ddlfFilenameContains,
"FileSize" =: _ddlfFileSize,
"FileLastWritten" =: _ddlfFileLastWritten,
"Filters" =:
toQuery (toQueryList "Filter" <$> _ddlfFilters),
"MaxRecords" =: _ddlfMaxRecords,
"Marker" =: _ddlfMarker,
"DBInstanceIdentifier" =: _ddlfDBInstanceIdentifier]
data DescribeDBLogFilesResponse = DescribeDBLogFilesResponse'
{ _ddlfrsDescribeDBLogFiles :: !(Maybe [DescribeDBLogFilesDetails])
, _ddlfrsMarker :: !(Maybe Text)
, _ddlfrsStatus :: !Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
describeDBLogFilesResponse
:: Int
-> DescribeDBLogFilesResponse
describeDBLogFilesResponse pStatus_ =
DescribeDBLogFilesResponse'
{ _ddlfrsDescribeDBLogFiles = Nothing
, _ddlfrsMarker = Nothing
, _ddlfrsStatus = pStatus_
}
ddlfrsDescribeDBLogFiles :: Lens' DescribeDBLogFilesResponse [DescribeDBLogFilesDetails]
ddlfrsDescribeDBLogFiles = lens _ddlfrsDescribeDBLogFiles (\ s a -> s{_ddlfrsDescribeDBLogFiles = a}) . _Default . _Coerce;
ddlfrsMarker :: Lens' DescribeDBLogFilesResponse (Maybe Text)
ddlfrsMarker = lens _ddlfrsMarker (\ s a -> s{_ddlfrsMarker = a});
ddlfrsStatus :: Lens' DescribeDBLogFilesResponse Int
ddlfrsStatus = lens _ddlfrsStatus (\ s a -> s{_ddlfrsStatus = a});