{-# 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.GetQualificationType
(
getQualificationType
, GetQualificationType
, gqtQualificationTypeId
, getQualificationTypeResponse
, GetQualificationTypeResponse
, gqtrsQualificationType
, gqtrsResponseStatus
) 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
newtype GetQualificationType = GetQualificationType'
{ _gqtQualificationTypeId :: Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
getQualificationType
:: Text
-> GetQualificationType
getQualificationType pQualificationTypeId_ =
GetQualificationType' {_gqtQualificationTypeId = pQualificationTypeId_}
gqtQualificationTypeId :: Lens' GetQualificationType Text
gqtQualificationTypeId = lens _gqtQualificationTypeId (\ s a -> s{_gqtQualificationTypeId = a})
instance AWSRequest GetQualificationType where
type Rs GetQualificationType =
GetQualificationTypeResponse
request = postJSON mechanicalTurk
response
= receiveJSON
(\ s h x ->
GetQualificationTypeResponse' <$>
(x .?> "QualificationType") <*> (pure (fromEnum s)))
instance Hashable GetQualificationType where
instance NFData GetQualificationType where
instance ToHeaders GetQualificationType where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("MTurkRequesterServiceV20170117.GetQualificationType"
:: ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON GetQualificationType where
toJSON GetQualificationType'{..}
= object
(catMaybes
[Just
("QualificationTypeId" .= _gqtQualificationTypeId)])
instance ToPath GetQualificationType where
toPath = const "/"
instance ToQuery GetQualificationType where
toQuery = const mempty
data GetQualificationTypeResponse = GetQualificationTypeResponse'
{ _gqtrsQualificationType :: !(Maybe QualificationType)
, _gqtrsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
getQualificationTypeResponse
:: Int
-> GetQualificationTypeResponse
getQualificationTypeResponse pResponseStatus_ =
GetQualificationTypeResponse'
{_gqtrsQualificationType = Nothing, _gqtrsResponseStatus = pResponseStatus_}
gqtrsQualificationType :: Lens' GetQualificationTypeResponse (Maybe QualificationType)
gqtrsQualificationType = lens _gqtrsQualificationType (\ s a -> s{_gqtrsQualificationType = a})
gqtrsResponseStatus :: Lens' GetQualificationTypeResponse Int
gqtrsResponseStatus = lens _gqtrsResponseStatus (\ s a -> s{_gqtrsResponseStatus = a})
instance NFData GetQualificationTypeResponse where