aws-0.22: Aws/Iam/Commands/DeleteGroupPolicy.hs
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeFamilies #-}
module Aws.Iam.Commands.DeleteGroupPolicy
( DeleteGroupPolicy(..)
, DeleteGroupPolicyResponse(..)
) where
import Aws.Core
import Aws.Iam.Core
import Aws.Iam.Internal
import Data.Text (Text)
import Data.Typeable
-- | Deletes the specified policy associated with the specified group.
--
-- <http://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteGroupPolicy.html>
data DeleteGroupPolicy
= DeleteGroupPolicy {
dgpPolicyName :: Text
-- ^ Name of the policy to be deleted.
, dgpGroupName :: Text
-- ^ Name of the group with whom the policy is associated.
}
deriving (Eq, Ord, Show, Typeable)
instance SignQuery DeleteGroupPolicy where
type ServiceConfiguration DeleteGroupPolicy = IamConfiguration
signQuery DeleteGroupPolicy{..}
= iamAction "DeleteGroupPolicy" [
("PolicyName", dgpPolicyName)
, ("GroupName", dgpGroupName)
]
data DeleteGroupPolicyResponse = DeleteGroupPolicyResponse
deriving (Eq, Ord, Show, Typeable)
instance ResponseConsumer DeleteGroupPolicy DeleteGroupPolicyResponse where
type ResponseMetadata DeleteGroupPolicyResponse = IamMetadata
responseConsumer _ _ =
iamResponseConsumer (const $ return DeleteGroupPolicyResponse)
instance Transaction DeleteGroupPolicy DeleteGroupPolicyResponse
instance AsMemoryResponse DeleteGroupPolicyResponse where
type MemoryResponse DeleteGroupPolicyResponse = DeleteGroupPolicyResponse
loadToMemory = return