module Network.AWS.MechanicalTurk.ListWorkersWithQualificationType
(
listWorkersWithQualificationType
, ListWorkersWithQualificationType
, lwwqtStatus
, lwwqtNextToken
, lwwqtMaxResults
, lwwqtQualificationTypeId
, listWorkersWithQualificationTypeResponse
, ListWorkersWithQualificationTypeResponse
, lwwqtrsNextToken
, lwwqtrsNumResults
, lwwqtrsQualifications
, lwwqtrsResponseStatus
) where
import Network.AWS.Lens
import Network.AWS.MechanicalTurk.Types
import Network.AWS.MechanicalTurk.Types.Product
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data ListWorkersWithQualificationType = ListWorkersWithQualificationType'
{ _lwwqtStatus :: !(Maybe QualificationStatus)
, _lwwqtNextToken :: !(Maybe Text)
, _lwwqtMaxResults :: !(Maybe Nat)
, _lwwqtQualificationTypeId :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
listWorkersWithQualificationType
:: Text
-> ListWorkersWithQualificationType
listWorkersWithQualificationType pQualificationTypeId_ =
ListWorkersWithQualificationType'
{ _lwwqtStatus = Nothing
, _lwwqtNextToken = Nothing
, _lwwqtMaxResults = Nothing
, _lwwqtQualificationTypeId = pQualificationTypeId_
}
lwwqtStatus :: Lens' ListWorkersWithQualificationType (Maybe QualificationStatus)
lwwqtStatus = lens _lwwqtStatus (\ s a -> s{_lwwqtStatus = a});
lwwqtNextToken :: Lens' ListWorkersWithQualificationType (Maybe Text)
lwwqtNextToken = lens _lwwqtNextToken (\ s a -> s{_lwwqtNextToken = a});
lwwqtMaxResults :: Lens' ListWorkersWithQualificationType (Maybe Natural)
lwwqtMaxResults = lens _lwwqtMaxResults (\ s a -> s{_lwwqtMaxResults = a}) . mapping _Nat;
lwwqtQualificationTypeId :: Lens' ListWorkersWithQualificationType Text
lwwqtQualificationTypeId = lens _lwwqtQualificationTypeId (\ s a -> s{_lwwqtQualificationTypeId = a});
instance AWSRequest ListWorkersWithQualificationType
where
type Rs ListWorkersWithQualificationType =
ListWorkersWithQualificationTypeResponse
request = postJSON mechanicalTurk
response
= receiveJSON
(\ s h x ->
ListWorkersWithQualificationTypeResponse' <$>
(x .?> "NextToken") <*> (x .?> "NumResults") <*>
(x .?> "Qualifications" .!@ mempty)
<*> (pure (fromEnum s)))
instance Hashable ListWorkersWithQualificationType
where
instance NFData ListWorkersWithQualificationType
where
instance ToHeaders ListWorkersWithQualificationType
where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("MTurkRequesterServiceV20170117.ListWorkersWithQualificationType"
:: ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON ListWorkersWithQualificationType
where
toJSON ListWorkersWithQualificationType'{..}
= object
(catMaybes
[("Status" .=) <$> _lwwqtStatus,
("NextToken" .=) <$> _lwwqtNextToken,
("MaxResults" .=) <$> _lwwqtMaxResults,
Just
("QualificationTypeId" .=
_lwwqtQualificationTypeId)])
instance ToPath ListWorkersWithQualificationType
where
toPath = const "/"
instance ToQuery ListWorkersWithQualificationType
where
toQuery = const mempty
data ListWorkersWithQualificationTypeResponse = ListWorkersWithQualificationTypeResponse'
{ _lwwqtrsNextToken :: !(Maybe Text)
, _lwwqtrsNumResults :: !(Maybe Int)
, _lwwqtrsQualifications :: !(Maybe [Qualification])
, _lwwqtrsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
listWorkersWithQualificationTypeResponse
:: Int
-> ListWorkersWithQualificationTypeResponse
listWorkersWithQualificationTypeResponse pResponseStatus_ =
ListWorkersWithQualificationTypeResponse'
{ _lwwqtrsNextToken = Nothing
, _lwwqtrsNumResults = Nothing
, _lwwqtrsQualifications = Nothing
, _lwwqtrsResponseStatus = pResponseStatus_
}
lwwqtrsNextToken :: Lens' ListWorkersWithQualificationTypeResponse (Maybe Text)
lwwqtrsNextToken = lens _lwwqtrsNextToken (\ s a -> s{_lwwqtrsNextToken = a});
lwwqtrsNumResults :: Lens' ListWorkersWithQualificationTypeResponse (Maybe Int)
lwwqtrsNumResults = lens _lwwqtrsNumResults (\ s a -> s{_lwwqtrsNumResults = a});
lwwqtrsQualifications :: Lens' ListWorkersWithQualificationTypeResponse [Qualification]
lwwqtrsQualifications = lens _lwwqtrsQualifications (\ s a -> s{_lwwqtrsQualifications = a}) . _Default . _Coerce;
lwwqtrsResponseStatus :: Lens' ListWorkersWithQualificationTypeResponse Int
lwwqtrsResponseStatus = lens _lwwqtrsResponseStatus (\ s a -> s{_lwwqtrsResponseStatus = a});
instance NFData
ListWorkersWithQualificationTypeResponse
where