module Network.AWS.WAF.GetChangeTokenStatus
(
getChangeTokenStatus
, GetChangeTokenStatus
, gctsChangeToken
, getChangeTokenStatusResponse
, GetChangeTokenStatusResponse
, gctsrsChangeTokenStatus
, gctsrsResponseStatus
) where
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
import Network.AWS.WAF.Types
import Network.AWS.WAF.Types.Product
newtype GetChangeTokenStatus = GetChangeTokenStatus'
{ _gctsChangeToken :: Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
getChangeTokenStatus
:: Text
-> GetChangeTokenStatus
getChangeTokenStatus pChangeToken_ =
GetChangeTokenStatus'
{ _gctsChangeToken = pChangeToken_
}
gctsChangeToken :: Lens' GetChangeTokenStatus Text
gctsChangeToken = lens _gctsChangeToken (\ s a -> s{_gctsChangeToken = a});
instance AWSRequest GetChangeTokenStatus where
type Rs GetChangeTokenStatus =
GetChangeTokenStatusResponse
request = postJSON waf
response
= receiveJSON
(\ s h x ->
GetChangeTokenStatusResponse' <$>
(x .?> "ChangeTokenStatus") <*> (pure (fromEnum s)))
instance Hashable GetChangeTokenStatus
instance ToHeaders GetChangeTokenStatus where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("AWSWAF_20150824.GetChangeTokenStatus" ::
ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON GetChangeTokenStatus where
toJSON GetChangeTokenStatus'{..}
= object
(catMaybes
[Just ("ChangeToken" .= _gctsChangeToken)])
instance ToPath GetChangeTokenStatus where
toPath = const "/"
instance ToQuery GetChangeTokenStatus where
toQuery = const mempty
data GetChangeTokenStatusResponse = GetChangeTokenStatusResponse'
{ _gctsrsChangeTokenStatus :: !(Maybe ChangeTokenStatus)
, _gctsrsResponseStatus :: !Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
getChangeTokenStatusResponse
:: Int
-> GetChangeTokenStatusResponse
getChangeTokenStatusResponse pResponseStatus_ =
GetChangeTokenStatusResponse'
{ _gctsrsChangeTokenStatus = Nothing
, _gctsrsResponseStatus = pResponseStatus_
}
gctsrsChangeTokenStatus :: Lens' GetChangeTokenStatusResponse (Maybe ChangeTokenStatus)
gctsrsChangeTokenStatus = lens _gctsrsChangeTokenStatus (\ s a -> s{_gctsrsChangeTokenStatus = a});
gctsrsResponseStatus :: Lens' GetChangeTokenStatusResponse Int
gctsrsResponseStatus = lens _gctsrsResponseStatus (\ s a -> s{_gctsrsResponseStatus = a});