{-# 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.UpdateHITReviewStatus
(
updateHITReviewStatus
, UpdateHITReviewStatus
, uhitrsRevert
, uhitrsHITId
, updateHITReviewStatusResponse
, UpdateHITReviewStatusResponse
, uhitrsrsResponseStatus
) 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 UpdateHITReviewStatus = UpdateHITReviewStatus'
{ _uhitrsRevert :: !(Maybe Bool)
, _uhitrsHITId :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
updateHITReviewStatus
:: Text
-> UpdateHITReviewStatus
updateHITReviewStatus pHITId_ =
UpdateHITReviewStatus' {_uhitrsRevert = Nothing, _uhitrsHITId = pHITId_}
uhitrsRevert :: Lens' UpdateHITReviewStatus (Maybe Bool)
uhitrsRevert = lens _uhitrsRevert (\ s a -> s{_uhitrsRevert = a})
uhitrsHITId :: Lens' UpdateHITReviewStatus Text
uhitrsHITId = lens _uhitrsHITId (\ s a -> s{_uhitrsHITId = a})
instance AWSRequest UpdateHITReviewStatus where
type Rs UpdateHITReviewStatus =
UpdateHITReviewStatusResponse
request = postJSON mechanicalTurk
response
= receiveEmpty
(\ s h x ->
UpdateHITReviewStatusResponse' <$>
(pure (fromEnum s)))
instance Hashable UpdateHITReviewStatus where
instance NFData UpdateHITReviewStatus where
instance ToHeaders UpdateHITReviewStatus where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("MTurkRequesterServiceV20170117.UpdateHITReviewStatus"
:: ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON UpdateHITReviewStatus where
toJSON UpdateHITReviewStatus'{..}
= object
(catMaybes
[("Revert" .=) <$> _uhitrsRevert,
Just ("HITId" .= _uhitrsHITId)])
instance ToPath UpdateHITReviewStatus where
toPath = const "/"
instance ToQuery UpdateHITReviewStatus where
toQuery = const mempty
newtype UpdateHITReviewStatusResponse = UpdateHITReviewStatusResponse'
{ _uhitrsrsResponseStatus :: Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
updateHITReviewStatusResponse
:: Int
-> UpdateHITReviewStatusResponse
updateHITReviewStatusResponse pResponseStatus_ =
UpdateHITReviewStatusResponse' {_uhitrsrsResponseStatus = pResponseStatus_}
uhitrsrsResponseStatus :: Lens' UpdateHITReviewStatusResponse Int
uhitrsrsResponseStatus = lens _uhitrsrsResponseStatus (\ s a -> s{_uhitrsrsResponseStatus = a})
instance NFData UpdateHITReviewStatusResponse where