module Network.AWS.Inspector.ListAssessmentTargets
(
listAssessmentTargets
, ListAssessmentTargets
, lNextToken
, lFilter
, lMaxResults
, listAssessmentTargetsResponse
, ListAssessmentTargetsResponse
, lrsNextToken
, lrsResponseStatus
, lrsAssessmentTargetARNs
) where
import Network.AWS.Inspector.Types
import Network.AWS.Inspector.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data ListAssessmentTargets = ListAssessmentTargets'
{ _lNextToken :: !(Maybe Text)
, _lFilter :: !(Maybe AssessmentTargetFilter)
, _lMaxResults :: !(Maybe Int)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
listAssessmentTargets
:: ListAssessmentTargets
listAssessmentTargets =
ListAssessmentTargets'
{ _lNextToken = Nothing
, _lFilter = Nothing
, _lMaxResults = Nothing
}
lNextToken :: Lens' ListAssessmentTargets (Maybe Text)
lNextToken = lens _lNextToken (\ s a -> s{_lNextToken = a});
lFilter :: Lens' ListAssessmentTargets (Maybe AssessmentTargetFilter)
lFilter = lens _lFilter (\ s a -> s{_lFilter = a});
lMaxResults :: Lens' ListAssessmentTargets (Maybe Int)
lMaxResults = lens _lMaxResults (\ s a -> s{_lMaxResults = a});
instance AWSRequest ListAssessmentTargets where
type Rs ListAssessmentTargets =
ListAssessmentTargetsResponse
request = postJSON inspector
response
= receiveJSON
(\ s h x ->
ListAssessmentTargetsResponse' <$>
(x .?> "nextToken") <*> (pure (fromEnum s)) <*>
(x .?> "assessmentTargetArns" .!@ mempty))
instance Hashable ListAssessmentTargets
instance NFData ListAssessmentTargets
instance ToHeaders ListAssessmentTargets where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("InspectorService.ListAssessmentTargets" ::
ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON ListAssessmentTargets where
toJSON ListAssessmentTargets'{..}
= object
(catMaybes
[("nextToken" .=) <$> _lNextToken,
("filter" .=) <$> _lFilter,
("maxResults" .=) <$> _lMaxResults])
instance ToPath ListAssessmentTargets where
toPath = const "/"
instance ToQuery ListAssessmentTargets where
toQuery = const mempty
data ListAssessmentTargetsResponse = ListAssessmentTargetsResponse'
{ _lrsNextToken :: !(Maybe Text)
, _lrsResponseStatus :: !Int
, _lrsAssessmentTargetARNs :: ![Text]
} deriving (Eq,Read,Show,Data,Typeable,Generic)
listAssessmentTargetsResponse
:: Int
-> ListAssessmentTargetsResponse
listAssessmentTargetsResponse pResponseStatus_ =
ListAssessmentTargetsResponse'
{ _lrsNextToken = Nothing
, _lrsResponseStatus = pResponseStatus_
, _lrsAssessmentTargetARNs = mempty
}
lrsNextToken :: Lens' ListAssessmentTargetsResponse (Maybe Text)
lrsNextToken = lens _lrsNextToken (\ s a -> s{_lrsNextToken = a});
lrsResponseStatus :: Lens' ListAssessmentTargetsResponse Int
lrsResponseStatus = lens _lrsResponseStatus (\ s a -> s{_lrsResponseStatus = a});
lrsAssessmentTargetARNs :: Lens' ListAssessmentTargetsResponse [Text]
lrsAssessmentTargetARNs = lens _lrsAssessmentTargetARNs (\ s a -> s{_lrsAssessmentTargetARNs = a}) . _Coerce;
instance NFData ListAssessmentTargetsResponse