module Network.AWS.DMS.DescribeConnections
(
describeConnections
, DescribeConnections
, dcFilters
, dcMarker
, dcMaxRecords
, describeConnectionsResponse
, DescribeConnectionsResponse
, dcrsConnections
, dcrsMarker
, dcrsResponseStatus
) where
import Network.AWS.DMS.Types
import Network.AWS.DMS.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data DescribeConnections = DescribeConnections'
{ _dcFilters :: !(Maybe [Filter])
, _dcMarker :: !(Maybe Text)
, _dcMaxRecords :: !(Maybe Int)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
describeConnections
:: DescribeConnections
describeConnections =
DescribeConnections'
{ _dcFilters = Nothing
, _dcMarker = Nothing
, _dcMaxRecords = Nothing
}
dcFilters :: Lens' DescribeConnections [Filter]
dcFilters = lens _dcFilters (\ s a -> s{_dcFilters = a}) . _Default . _Coerce;
dcMarker :: Lens' DescribeConnections (Maybe Text)
dcMarker = lens _dcMarker (\ s a -> s{_dcMarker = a});
dcMaxRecords :: Lens' DescribeConnections (Maybe Int)
dcMaxRecords = lens _dcMaxRecords (\ s a -> s{_dcMaxRecords = a});
instance AWSRequest DescribeConnections where
type Rs DescribeConnections =
DescribeConnectionsResponse
request = postJSON dms
response
= receiveJSON
(\ s h x ->
DescribeConnectionsResponse' <$>
(x .?> "Connections" .!@ mempty) <*> (x .?> "Marker")
<*> (pure (fromEnum s)))
instance Hashable DescribeConnections
instance NFData DescribeConnections
instance ToHeaders DescribeConnections where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("AmazonDMSv20160101.DescribeConnections" ::
ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON DescribeConnections where
toJSON DescribeConnections'{..}
= object
(catMaybes
[("Filters" .=) <$> _dcFilters,
("Marker" .=) <$> _dcMarker,
("MaxRecords" .=) <$> _dcMaxRecords])
instance ToPath DescribeConnections where
toPath = const "/"
instance ToQuery DescribeConnections where
toQuery = const mempty
data DescribeConnectionsResponse = DescribeConnectionsResponse'
{ _dcrsConnections :: !(Maybe [Connection])
, _dcrsMarker :: !(Maybe Text)
, _dcrsResponseStatus :: !Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
describeConnectionsResponse
:: Int
-> DescribeConnectionsResponse
describeConnectionsResponse pResponseStatus_ =
DescribeConnectionsResponse'
{ _dcrsConnections = Nothing
, _dcrsMarker = Nothing
, _dcrsResponseStatus = pResponseStatus_
}
dcrsConnections :: Lens' DescribeConnectionsResponse [Connection]
dcrsConnections = lens _dcrsConnections (\ s a -> s{_dcrsConnections = a}) . _Default . _Coerce;
dcrsMarker :: Lens' DescribeConnectionsResponse (Maybe Text)
dcrsMarker = lens _dcrsMarker (\ s a -> s{_dcrsMarker = a});
dcrsResponseStatus :: Lens' DescribeConnectionsResponse Int
dcrsResponseStatus = lens _dcrsResponseStatus (\ s a -> s{_dcrsResponseStatus = a});
instance NFData DescribeConnectionsResponse