{-# 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.Organizations.CancelHandshake
(
cancelHandshake
, CancelHandshake
, chHandshakeId
, cancelHandshakeResponse
, CancelHandshakeResponse
, chrsHandshake
, chrsResponseStatus
) where
import Network.AWS.Lens
import Network.AWS.Organizations.Types
import Network.AWS.Organizations.Types.Product
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
newtype CancelHandshake = CancelHandshake'
{ _chHandshakeId :: Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
cancelHandshake
:: Text
-> CancelHandshake
cancelHandshake pHandshakeId_ =
CancelHandshake' {_chHandshakeId = pHandshakeId_}
chHandshakeId :: Lens' CancelHandshake Text
chHandshakeId = lens _chHandshakeId (\ s a -> s{_chHandshakeId = a})
instance AWSRequest CancelHandshake where
type Rs CancelHandshake = CancelHandshakeResponse
request = postJSON organizations
response
= receiveJSON
(\ s h x ->
CancelHandshakeResponse' <$>
(x .?> "Handshake") <*> (pure (fromEnum s)))
instance Hashable CancelHandshake where
instance NFData CancelHandshake where
instance ToHeaders CancelHandshake where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("AWSOrganizationsV20161128.CancelHandshake" ::
ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON CancelHandshake where
toJSON CancelHandshake'{..}
= object
(catMaybes [Just ("HandshakeId" .= _chHandshakeId)])
instance ToPath CancelHandshake where
toPath = const "/"
instance ToQuery CancelHandshake where
toQuery = const mempty
data CancelHandshakeResponse = CancelHandshakeResponse'
{ _chrsHandshake :: !(Maybe Handshake)
, _chrsResponseStatus :: !Int
} deriving (Eq, Show, Data, Typeable, Generic)
cancelHandshakeResponse
:: Int
-> CancelHandshakeResponse
cancelHandshakeResponse pResponseStatus_ =
CancelHandshakeResponse'
{_chrsHandshake = Nothing, _chrsResponseStatus = pResponseStatus_}
chrsHandshake :: Lens' CancelHandshakeResponse (Maybe Handshake)
chrsHandshake = lens _chrsHandshake (\ s a -> s{_chrsHandshake = a})
chrsResponseStatus :: Lens' CancelHandshakeResponse Int
chrsResponseStatus = lens _chrsResponseStatus (\ s a -> s{_chrsResponseStatus = a})
instance NFData CancelHandshakeResponse where