{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TupleSections #-}
{-# LANGUAGE TypeFamilies #-}
module Aws.Iam.Commands.DeleteAccessKey
( DeleteAccessKey(..)
, DeleteAccessKeyResponse(..)
) where
import Aws.Core
import Aws.Iam.Core
import Aws.Iam.Internal
import Control.Applicative
import Data.Text (Text)
import Data.Typeable
import Prelude
data DeleteAccessKey
= DeleteAccessKey {
DeleteAccessKey -> Text
dakAccessKeyId :: Text
, DeleteAccessKey -> Maybe Text
dakUserName :: Maybe Text
}
deriving (DeleteAccessKey -> DeleteAccessKey -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteAccessKey -> DeleteAccessKey -> Bool
$c/= :: DeleteAccessKey -> DeleteAccessKey -> Bool
== :: DeleteAccessKey -> DeleteAccessKey -> Bool
$c== :: DeleteAccessKey -> DeleteAccessKey -> Bool
Eq, Eq DeleteAccessKey
DeleteAccessKey -> DeleteAccessKey -> Bool
DeleteAccessKey -> DeleteAccessKey -> Ordering
DeleteAccessKey -> DeleteAccessKey -> DeleteAccessKey
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: DeleteAccessKey -> DeleteAccessKey -> DeleteAccessKey
$cmin :: DeleteAccessKey -> DeleteAccessKey -> DeleteAccessKey
max :: DeleteAccessKey -> DeleteAccessKey -> DeleteAccessKey
$cmax :: DeleteAccessKey -> DeleteAccessKey -> DeleteAccessKey
>= :: DeleteAccessKey -> DeleteAccessKey -> Bool
$c>= :: DeleteAccessKey -> DeleteAccessKey -> Bool
> :: DeleteAccessKey -> DeleteAccessKey -> Bool
$c> :: DeleteAccessKey -> DeleteAccessKey -> Bool
<= :: DeleteAccessKey -> DeleteAccessKey -> Bool
$c<= :: DeleteAccessKey -> DeleteAccessKey -> Bool
< :: DeleteAccessKey -> DeleteAccessKey -> Bool
$c< :: DeleteAccessKey -> DeleteAccessKey -> Bool
compare :: DeleteAccessKey -> DeleteAccessKey -> Ordering
$ccompare :: DeleteAccessKey -> DeleteAccessKey -> Ordering
Ord, Int -> DeleteAccessKey -> ShowS
[DeleteAccessKey] -> ShowS
DeleteAccessKey -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteAccessKey] -> ShowS
$cshowList :: [DeleteAccessKey] -> ShowS
show :: DeleteAccessKey -> String
$cshow :: DeleteAccessKey -> String
showsPrec :: Int -> DeleteAccessKey -> ShowS
$cshowsPrec :: Int -> DeleteAccessKey -> ShowS
Show, Typeable)
instance SignQuery DeleteAccessKey where
type ServiceConfiguration DeleteAccessKey = IamConfiguration
signQuery :: forall queryType.
DeleteAccessKey
-> ServiceConfiguration DeleteAccessKey queryType
-> SignatureData
-> SignedQuery
signQuery DeleteAccessKey{Maybe Text
Text
dakUserName :: Maybe Text
dakAccessKeyId :: Text
dakUserName :: DeleteAccessKey -> Maybe Text
dakAccessKeyId :: DeleteAccessKey -> Text
..}
= forall qt.
ByteString
-> [Maybe (ByteString, Text)]
-> IamConfiguration qt
-> SignatureData
-> SignedQuery
iamAction' ByteString
"DeleteAccessKey" [
forall a. a -> Maybe a
Just (ByteString
"AccessKeyId", Text
dakAccessKeyId)
, (ByteString
"UserName",) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Maybe Text
dakUserName
]
data DeleteAccessKeyResponse = DeleteAccessKeyResponse
deriving (DeleteAccessKeyResponse -> DeleteAccessKeyResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteAccessKeyResponse -> DeleteAccessKeyResponse -> Bool
$c/= :: DeleteAccessKeyResponse -> DeleteAccessKeyResponse -> Bool
== :: DeleteAccessKeyResponse -> DeleteAccessKeyResponse -> Bool
$c== :: DeleteAccessKeyResponse -> DeleteAccessKeyResponse -> Bool
Eq, Eq DeleteAccessKeyResponse
DeleteAccessKeyResponse -> DeleteAccessKeyResponse -> Bool
DeleteAccessKeyResponse -> DeleteAccessKeyResponse -> Ordering
DeleteAccessKeyResponse
-> DeleteAccessKeyResponse -> DeleteAccessKeyResponse
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: DeleteAccessKeyResponse
-> DeleteAccessKeyResponse -> DeleteAccessKeyResponse
$cmin :: DeleteAccessKeyResponse
-> DeleteAccessKeyResponse -> DeleteAccessKeyResponse
max :: DeleteAccessKeyResponse
-> DeleteAccessKeyResponse -> DeleteAccessKeyResponse
$cmax :: DeleteAccessKeyResponse
-> DeleteAccessKeyResponse -> DeleteAccessKeyResponse
>= :: DeleteAccessKeyResponse -> DeleteAccessKeyResponse -> Bool
$c>= :: DeleteAccessKeyResponse -> DeleteAccessKeyResponse -> Bool
> :: DeleteAccessKeyResponse -> DeleteAccessKeyResponse -> Bool
$c> :: DeleteAccessKeyResponse -> DeleteAccessKeyResponse -> Bool
<= :: DeleteAccessKeyResponse -> DeleteAccessKeyResponse -> Bool
$c<= :: DeleteAccessKeyResponse -> DeleteAccessKeyResponse -> Bool
< :: DeleteAccessKeyResponse -> DeleteAccessKeyResponse -> Bool
$c< :: DeleteAccessKeyResponse -> DeleteAccessKeyResponse -> Bool
compare :: DeleteAccessKeyResponse -> DeleteAccessKeyResponse -> Ordering
$ccompare :: DeleteAccessKeyResponse -> DeleteAccessKeyResponse -> Ordering
Ord, Int -> DeleteAccessKeyResponse -> ShowS
[DeleteAccessKeyResponse] -> ShowS
DeleteAccessKeyResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteAccessKeyResponse] -> ShowS
$cshowList :: [DeleteAccessKeyResponse] -> ShowS
show :: DeleteAccessKeyResponse -> String
$cshow :: DeleteAccessKeyResponse -> String
showsPrec :: Int -> DeleteAccessKeyResponse -> ShowS
$cshowsPrec :: Int -> DeleteAccessKeyResponse -> ShowS
Show, Typeable)
instance ResponseConsumer DeleteAccessKey DeleteAccessKeyResponse where
type ResponseMetadata DeleteAccessKeyResponse = IamMetadata
responseConsumer :: Request
-> DeleteAccessKey
-> IORef (ResponseMetadata DeleteAccessKeyResponse)
-> HTTPResponseConsumer DeleteAccessKeyResponse
responseConsumer Request
_ DeleteAccessKey
_
= forall a.
(Cursor -> Response IamMetadata a)
-> IORef IamMetadata -> HTTPResponseConsumer a
iamResponseConsumer (forall a b. a -> b -> a
const forall a b. (a -> b) -> a -> b
$ forall (m :: * -> *) a. Monad m => a -> m a
return DeleteAccessKeyResponse
DeleteAccessKeyResponse)
instance Transaction DeleteAccessKey DeleteAccessKeyResponse
instance AsMemoryResponse DeleteAccessKeyResponse where
type MemoryResponse DeleteAccessKeyResponse = DeleteAccessKeyResponse
loadToMemory :: DeleteAccessKeyResponse
-> ResourceT IO (MemoryResponse DeleteAccessKeyResponse)
loadToMemory = forall (m :: * -> *) a. Monad m => a -> m a
return