{-# 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.CognitoIdentityProvider.AdminUpdateDeviceStatus
(
adminUpdateDeviceStatus
, AdminUpdateDeviceStatus
, audsDeviceRememberedStatus
, audsUserPoolId
, audsUsername
, audsDeviceKey
, adminUpdateDeviceStatusResponse
, AdminUpdateDeviceStatusResponse
, audsrsResponseStatus
) where
import Network.AWS.CognitoIdentityProvider.Types
import Network.AWS.CognitoIdentityProvider.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data AdminUpdateDeviceStatus = AdminUpdateDeviceStatus'
{ _audsDeviceRememberedStatus :: !(Maybe DeviceRememberedStatusType)
, _audsUserPoolId :: !Text
, _audsUsername :: !(Sensitive Text)
, _audsDeviceKey :: !Text
} deriving (Eq, Show, Data, Typeable, Generic)
adminUpdateDeviceStatus
:: Text
-> Text
-> Text
-> AdminUpdateDeviceStatus
adminUpdateDeviceStatus pUserPoolId_ pUsername_ pDeviceKey_ =
AdminUpdateDeviceStatus'
{ _audsDeviceRememberedStatus = Nothing
, _audsUserPoolId = pUserPoolId_
, _audsUsername = _Sensitive # pUsername_
, _audsDeviceKey = pDeviceKey_
}
audsDeviceRememberedStatus :: Lens' AdminUpdateDeviceStatus (Maybe DeviceRememberedStatusType)
audsDeviceRememberedStatus = lens _audsDeviceRememberedStatus (\ s a -> s{_audsDeviceRememberedStatus = a})
audsUserPoolId :: Lens' AdminUpdateDeviceStatus Text
audsUserPoolId = lens _audsUserPoolId (\ s a -> s{_audsUserPoolId = a})
audsUsername :: Lens' AdminUpdateDeviceStatus Text
audsUsername = lens _audsUsername (\ s a -> s{_audsUsername = a}) . _Sensitive
audsDeviceKey :: Lens' AdminUpdateDeviceStatus Text
audsDeviceKey = lens _audsDeviceKey (\ s a -> s{_audsDeviceKey = a})
instance AWSRequest AdminUpdateDeviceStatus where
type Rs AdminUpdateDeviceStatus =
AdminUpdateDeviceStatusResponse
request = postJSON cognitoIdentityProvider
response
= receiveEmpty
(\ s h x ->
AdminUpdateDeviceStatusResponse' <$>
(pure (fromEnum s)))
instance Hashable AdminUpdateDeviceStatus where
instance NFData AdminUpdateDeviceStatus where
instance ToHeaders AdminUpdateDeviceStatus where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("AWSCognitoIdentityProviderService.AdminUpdateDeviceStatus"
:: ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON AdminUpdateDeviceStatus where
toJSON AdminUpdateDeviceStatus'{..}
= object
(catMaybes
[("DeviceRememberedStatus" .=) <$>
_audsDeviceRememberedStatus,
Just ("UserPoolId" .= _audsUserPoolId),
Just ("Username" .= _audsUsername),
Just ("DeviceKey" .= _audsDeviceKey)])
instance ToPath AdminUpdateDeviceStatus where
toPath = const "/"
instance ToQuery AdminUpdateDeviceStatus where
toQuery = const mempty
newtype AdminUpdateDeviceStatusResponse = AdminUpdateDeviceStatusResponse'
{ _audsrsResponseStatus :: Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
adminUpdateDeviceStatusResponse
:: Int
-> AdminUpdateDeviceStatusResponse
adminUpdateDeviceStatusResponse pResponseStatus_ =
AdminUpdateDeviceStatusResponse' {_audsrsResponseStatus = pResponseStatus_}
audsrsResponseStatus :: Lens' AdminUpdateDeviceStatusResponse Int
audsrsResponseStatus = lens _audsrsResponseStatus (\ s a -> s{_audsrsResponseStatus = a})
instance NFData AdminUpdateDeviceStatusResponse where