module Network.AWS.DirectConnect.DeleteVirtualInterface
(
deleteVirtualInterface
, DeleteVirtualInterface
, dVirtualInterfaceId
, deleteVirtualInterfaceResponse
, DeleteVirtualInterfaceResponse
, dvirsVirtualInterfaceState
, dvirsResponseStatus
) where
import Network.AWS.DirectConnect.Types
import Network.AWS.DirectConnect.Types.Product
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
newtype DeleteVirtualInterface = DeleteVirtualInterface'
{ _dVirtualInterfaceId :: Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
deleteVirtualInterface
:: Text
-> DeleteVirtualInterface
deleteVirtualInterface pVirtualInterfaceId_ =
DeleteVirtualInterface'
{ _dVirtualInterfaceId = pVirtualInterfaceId_
}
dVirtualInterfaceId :: Lens' DeleteVirtualInterface Text
dVirtualInterfaceId = lens _dVirtualInterfaceId (\ s a -> s{_dVirtualInterfaceId = a});
instance AWSRequest DeleteVirtualInterface where
type Rs DeleteVirtualInterface =
DeleteVirtualInterfaceResponse
request = postJSON directConnect
response
= receiveJSON
(\ s h x ->
DeleteVirtualInterfaceResponse' <$>
(x .?> "virtualInterfaceState") <*>
(pure (fromEnum s)))
instance ToHeaders DeleteVirtualInterface where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("OvertureService.DeleteVirtualInterface" ::
ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON DeleteVirtualInterface where
toJSON DeleteVirtualInterface'{..}
= object
(catMaybes
[Just
("virtualInterfaceId" .= _dVirtualInterfaceId)])
instance ToPath DeleteVirtualInterface where
toPath = const "/"
instance ToQuery DeleteVirtualInterface where
toQuery = const mempty
data DeleteVirtualInterfaceResponse = DeleteVirtualInterfaceResponse'
{ _dvirsVirtualInterfaceState :: !(Maybe VirtualInterfaceState)
, _dvirsResponseStatus :: !Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
deleteVirtualInterfaceResponse
:: Int
-> DeleteVirtualInterfaceResponse
deleteVirtualInterfaceResponse pResponseStatus_ =
DeleteVirtualInterfaceResponse'
{ _dvirsVirtualInterfaceState = Nothing
, _dvirsResponseStatus = pResponseStatus_
}
dvirsVirtualInterfaceState :: Lens' DeleteVirtualInterfaceResponse (Maybe VirtualInterfaceState)
dvirsVirtualInterfaceState = lens _dvirsVirtualInterfaceState (\ s a -> s{_dvirsVirtualInterfaceState = a});
dvirsResponseStatus :: Lens' DeleteVirtualInterfaceResponse Int
dvirsResponseStatus = lens _dvirsResponseStatus (\ s a -> s{_dvirsResponseStatus = a});