module Network.AWS.EC2.DetachNetworkInterface
(
detachNetworkInterface
, DetachNetworkInterface
, dniForce
, dniDryRun
, dniAttachmentId
, detachNetworkInterfaceResponse
, DetachNetworkInterfaceResponse
) where
import Network.AWS.EC2.Types
import Network.AWS.EC2.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data DetachNetworkInterface = DetachNetworkInterface'
{ _dniForce :: !(Maybe Bool)
, _dniDryRun :: !(Maybe Bool)
, _dniAttachmentId :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
detachNetworkInterface
:: Text
-> DetachNetworkInterface
detachNetworkInterface pAttachmentId_ =
DetachNetworkInterface'
{ _dniForce = Nothing
, _dniDryRun = Nothing
, _dniAttachmentId = pAttachmentId_
}
dniForce :: Lens' DetachNetworkInterface (Maybe Bool)
dniForce = lens _dniForce (\ s a -> s{_dniForce = a});
dniDryRun :: Lens' DetachNetworkInterface (Maybe Bool)
dniDryRun = lens _dniDryRun (\ s a -> s{_dniDryRun = a});
dniAttachmentId :: Lens' DetachNetworkInterface Text
dniAttachmentId = lens _dniAttachmentId (\ s a -> s{_dniAttachmentId = a});
instance AWSRequest DetachNetworkInterface where
type Rs DetachNetworkInterface =
DetachNetworkInterfaceResponse
request = postQuery ec2
response
= receiveNull DetachNetworkInterfaceResponse'
instance Hashable DetachNetworkInterface
instance ToHeaders DetachNetworkInterface where
toHeaders = const mempty
instance ToPath DetachNetworkInterface where
toPath = const "/"
instance ToQuery DetachNetworkInterface where
toQuery DetachNetworkInterface'{..}
= mconcat
["Action" =:
("DetachNetworkInterface" :: ByteString),
"Version" =: ("2015-10-01" :: ByteString),
"Force" =: _dniForce, "DryRun" =: _dniDryRun,
"AttachmentId" =: _dniAttachmentId]
data DetachNetworkInterfaceResponse =
DetachNetworkInterfaceResponse'
deriving (Eq,Read,Show,Data,Typeable,Generic)
detachNetworkInterfaceResponse
:: DetachNetworkInterfaceResponse
detachNetworkInterfaceResponse = DetachNetworkInterfaceResponse'