{-# 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.DirectConnect.ConfirmPublicVirtualInterface
(
confirmPublicVirtualInterface
, ConfirmPublicVirtualInterface
, cVirtualInterfaceId
, confirmPublicVirtualInterfaceResponse
, ConfirmPublicVirtualInterfaceResponse
, crsVirtualInterfaceState
, crsResponseStatus
) where
import Network.AWS.DirectConnect.Types
import Network.AWS.DirectConnect.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
newtype ConfirmPublicVirtualInterface = ConfirmPublicVirtualInterface'
{ _cVirtualInterfaceId :: Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
confirmPublicVirtualInterface
:: Text
-> ConfirmPublicVirtualInterface
confirmPublicVirtualInterface pVirtualInterfaceId_ =
ConfirmPublicVirtualInterface' {_cVirtualInterfaceId = pVirtualInterfaceId_}
cVirtualInterfaceId :: Lens' ConfirmPublicVirtualInterface Text
cVirtualInterfaceId = lens _cVirtualInterfaceId (\ s a -> s{_cVirtualInterfaceId = a})
instance AWSRequest ConfirmPublicVirtualInterface
where
type Rs ConfirmPublicVirtualInterface =
ConfirmPublicVirtualInterfaceResponse
request = postJSON directConnect
response
= receiveJSON
(\ s h x ->
ConfirmPublicVirtualInterfaceResponse' <$>
(x .?> "virtualInterfaceState") <*>
(pure (fromEnum s)))
instance Hashable ConfirmPublicVirtualInterface where
instance NFData ConfirmPublicVirtualInterface where
instance ToHeaders ConfirmPublicVirtualInterface
where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("OvertureService.ConfirmPublicVirtualInterface" ::
ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON ConfirmPublicVirtualInterface where
toJSON ConfirmPublicVirtualInterface'{..}
= object
(catMaybes
[Just
("virtualInterfaceId" .= _cVirtualInterfaceId)])
instance ToPath ConfirmPublicVirtualInterface where
toPath = const "/"
instance ToQuery ConfirmPublicVirtualInterface where
toQuery = const mempty
data ConfirmPublicVirtualInterfaceResponse = ConfirmPublicVirtualInterfaceResponse'
{ _crsVirtualInterfaceState :: !(Maybe VirtualInterfaceState)
, _crsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
confirmPublicVirtualInterfaceResponse
:: Int
-> ConfirmPublicVirtualInterfaceResponse
confirmPublicVirtualInterfaceResponse pResponseStatus_ =
ConfirmPublicVirtualInterfaceResponse'
{_crsVirtualInterfaceState = Nothing, _crsResponseStatus = pResponseStatus_}
crsVirtualInterfaceState :: Lens' ConfirmPublicVirtualInterfaceResponse (Maybe VirtualInterfaceState)
crsVirtualInterfaceState = lens _crsVirtualInterfaceState (\ s a -> s{_crsVirtualInterfaceState = a})
crsResponseStatus :: Lens' ConfirmPublicVirtualInterfaceResponse Int
crsResponseStatus = lens _crsResponseStatus (\ s a -> s{_crsResponseStatus = a})
instance NFData ConfirmPublicVirtualInterfaceResponse
where