{-# 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.IAM.DeleteGroupPolicy
(
deleteGroupPolicy
, DeleteGroupPolicy
, dGroupName
, dPolicyName
, deleteGroupPolicyResponse
, DeleteGroupPolicyResponse
) where
import Network.AWS.IAM.Types
import Network.AWS.IAM.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data DeleteGroupPolicy = DeleteGroupPolicy'
{ _dGroupName :: !Text
, _dPolicyName :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
deleteGroupPolicy
:: Text
-> Text
-> DeleteGroupPolicy
deleteGroupPolicy pGroupName_ pPolicyName_ =
DeleteGroupPolicy'
{ _dGroupName = pGroupName_
, _dPolicyName = pPolicyName_
}
dGroupName :: Lens' DeleteGroupPolicy Text
dGroupName = lens _dGroupName (\ s a -> s{_dGroupName = a});
dPolicyName :: Lens' DeleteGroupPolicy Text
dPolicyName = lens _dPolicyName (\ s a -> s{_dPolicyName = a});
instance AWSRequest DeleteGroupPolicy where
type Rs DeleteGroupPolicy = DeleteGroupPolicyResponse
request = postQuery iam
response = receiveNull DeleteGroupPolicyResponse'
instance Hashable DeleteGroupPolicy
instance NFData DeleteGroupPolicy
instance ToHeaders DeleteGroupPolicy where
toHeaders = const mempty
instance ToPath DeleteGroupPolicy where
toPath = const "/"
instance ToQuery DeleteGroupPolicy where
toQuery DeleteGroupPolicy'{..}
= mconcat
["Action" =: ("DeleteGroupPolicy" :: ByteString),
"Version" =: ("2010-05-08" :: ByteString),
"GroupName" =: _dGroupName,
"PolicyName" =: _dPolicyName]
data DeleteGroupPolicyResponse =
DeleteGroupPolicyResponse'
deriving (Eq,Read,Show,Data,Typeable,Generic)
deleteGroupPolicyResponse
:: DeleteGroupPolicyResponse
deleteGroupPolicyResponse = DeleteGroupPolicyResponse'
instance NFData DeleteGroupPolicyResponse