module Network.AWS.SSM.DeleteAssociation
(
deleteAssociation
, DeleteAssociation
, delName
, delInstanceId
, deleteAssociationResponse
, DeleteAssociationResponse
, delrsResponseStatus
) where
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
import Network.AWS.SSM.Types
import Network.AWS.SSM.Types.Product
data DeleteAssociation = DeleteAssociation'
{ _delName :: !Text
, _delInstanceId :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
deleteAssociation
:: Text
-> Text
-> DeleteAssociation
deleteAssociation pName_ pInstanceId_ =
DeleteAssociation'
{ _delName = pName_
, _delInstanceId = pInstanceId_
}
delName :: Lens' DeleteAssociation Text
delName = lens _delName (\ s a -> s{_delName = a});
delInstanceId :: Lens' DeleteAssociation Text
delInstanceId = lens _delInstanceId (\ s a -> s{_delInstanceId = a});
instance AWSRequest DeleteAssociation where
type Rs DeleteAssociation = DeleteAssociationResponse
request = postJSON ssm
response
= receiveEmpty
(\ s h x ->
DeleteAssociationResponse' <$> (pure (fromEnum s)))
instance Hashable DeleteAssociation
instance NFData DeleteAssociation
instance ToHeaders DeleteAssociation where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("AmazonSSM.DeleteAssociation" :: ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON DeleteAssociation where
toJSON DeleteAssociation'{..}
= object
(catMaybes
[Just ("Name" .= _delName),
Just ("InstanceId" .= _delInstanceId)])
instance ToPath DeleteAssociation where
toPath = const "/"
instance ToQuery DeleteAssociation where
toQuery = const mempty
newtype DeleteAssociationResponse = DeleteAssociationResponse'
{ _delrsResponseStatus :: Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
deleteAssociationResponse
:: Int
-> DeleteAssociationResponse
deleteAssociationResponse pResponseStatus_ =
DeleteAssociationResponse'
{ _delrsResponseStatus = pResponseStatus_
}
delrsResponseStatus :: Lens' DeleteAssociationResponse Int
delrsResponseStatus = lens _delrsResponseStatus (\ s a -> s{_delrsResponseStatus = a});
instance NFData DeleteAssociationResponse