{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeFamilies #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Network.AWS.MechanicalTurk.GetQualificationScore
(
getQualificationScore
, GetQualificationScore
, gqsQualificationTypeId
, gqsWorkerId
, getQualificationScoreResponse
, GetQualificationScoreResponse
, gqsrsQualification
, gqsrsResponseStatus
) 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 GetQualificationScore = GetQualificationScore'
{ _gqsQualificationTypeId :: !Text
, _gqsWorkerId :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
getQualificationScore
:: Text
-> Text
-> GetQualificationScore
getQualificationScore pQualificationTypeId_ pWorkerId_ =
GetQualificationScore'
{_gqsQualificationTypeId = pQualificationTypeId_, _gqsWorkerId = pWorkerId_}
gqsQualificationTypeId :: Lens' GetQualificationScore Text
gqsQualificationTypeId = lens _gqsQualificationTypeId (\ s a -> s{_gqsQualificationTypeId = a})
gqsWorkerId :: Lens' GetQualificationScore Text
gqsWorkerId = lens _gqsWorkerId (\ s a -> s{_gqsWorkerId = a})
instance AWSRequest GetQualificationScore where
type Rs GetQualificationScore =
GetQualificationScoreResponse
request = postJSON mechanicalTurk
response
= receiveJSON
(\ s h x ->
GetQualificationScoreResponse' <$>
(x .?> "Qualification") <*> (pure (fromEnum s)))
instance Hashable GetQualificationScore where
instance NFData GetQualificationScore where
instance ToHeaders GetQualificationScore where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("MTurkRequesterServiceV20170117.GetQualificationScore"
:: ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON GetQualificationScore where
toJSON GetQualificationScore'{..}
= object
(catMaybes
[Just
("QualificationTypeId" .= _gqsQualificationTypeId),
Just ("WorkerId" .= _gqsWorkerId)])
instance ToPath GetQualificationScore where
toPath = const "/"
instance ToQuery GetQualificationScore where
toQuery = const mempty
data GetQualificationScoreResponse = GetQualificationScoreResponse'
{ _gqsrsQualification :: !(Maybe Qualification)
, _gqsrsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
getQualificationScoreResponse
:: Int
-> GetQualificationScoreResponse
getQualificationScoreResponse pResponseStatus_ =
GetQualificationScoreResponse'
{_gqsrsQualification = Nothing, _gqsrsResponseStatus = pResponseStatus_}
gqsrsQualification :: Lens' GetQualificationScoreResponse (Maybe Qualification)
gqsrsQualification = lens _gqsrsQualification (\ s a -> s{_gqsrsQualification = a})
gqsrsResponseStatus :: Lens' GetQualificationScoreResponse Int
gqsrsResponseStatus = lens _gqsrsResponseStatus (\ s a -> s{_gqsrsResponseStatus = a})
instance NFData GetQualificationScoreResponse where