{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.IAM.GetServiceLinkedRoleDeletionStatus
(
GetServiceLinkedRoleDeletionStatus (..),
newGetServiceLinkedRoleDeletionStatus,
getServiceLinkedRoleDeletionStatus_deletionTaskId,
GetServiceLinkedRoleDeletionStatusResponse (..),
newGetServiceLinkedRoleDeletionStatusResponse,
getServiceLinkedRoleDeletionStatusResponse_reason,
getServiceLinkedRoleDeletionStatusResponse_httpStatus,
getServiceLinkedRoleDeletionStatusResponse_status,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.IAM.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data GetServiceLinkedRoleDeletionStatus = GetServiceLinkedRoleDeletionStatus'
{
GetServiceLinkedRoleDeletionStatus -> Text
deletionTaskId :: Prelude.Text
}
deriving (GetServiceLinkedRoleDeletionStatus
-> GetServiceLinkedRoleDeletionStatus -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetServiceLinkedRoleDeletionStatus
-> GetServiceLinkedRoleDeletionStatus -> Bool
$c/= :: GetServiceLinkedRoleDeletionStatus
-> GetServiceLinkedRoleDeletionStatus -> Bool
== :: GetServiceLinkedRoleDeletionStatus
-> GetServiceLinkedRoleDeletionStatus -> Bool
$c== :: GetServiceLinkedRoleDeletionStatus
-> GetServiceLinkedRoleDeletionStatus -> Bool
Prelude.Eq, ReadPrec [GetServiceLinkedRoleDeletionStatus]
ReadPrec GetServiceLinkedRoleDeletionStatus
Int -> ReadS GetServiceLinkedRoleDeletionStatus
ReadS [GetServiceLinkedRoleDeletionStatus]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetServiceLinkedRoleDeletionStatus]
$creadListPrec :: ReadPrec [GetServiceLinkedRoleDeletionStatus]
readPrec :: ReadPrec GetServiceLinkedRoleDeletionStatus
$creadPrec :: ReadPrec GetServiceLinkedRoleDeletionStatus
readList :: ReadS [GetServiceLinkedRoleDeletionStatus]
$creadList :: ReadS [GetServiceLinkedRoleDeletionStatus]
readsPrec :: Int -> ReadS GetServiceLinkedRoleDeletionStatus
$creadsPrec :: Int -> ReadS GetServiceLinkedRoleDeletionStatus
Prelude.Read, Int -> GetServiceLinkedRoleDeletionStatus -> ShowS
[GetServiceLinkedRoleDeletionStatus] -> ShowS
GetServiceLinkedRoleDeletionStatus -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetServiceLinkedRoleDeletionStatus] -> ShowS
$cshowList :: [GetServiceLinkedRoleDeletionStatus] -> ShowS
show :: GetServiceLinkedRoleDeletionStatus -> String
$cshow :: GetServiceLinkedRoleDeletionStatus -> String
showsPrec :: Int -> GetServiceLinkedRoleDeletionStatus -> ShowS
$cshowsPrec :: Int -> GetServiceLinkedRoleDeletionStatus -> ShowS
Prelude.Show, forall x.
Rep GetServiceLinkedRoleDeletionStatus x
-> GetServiceLinkedRoleDeletionStatus
forall x.
GetServiceLinkedRoleDeletionStatus
-> Rep GetServiceLinkedRoleDeletionStatus x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetServiceLinkedRoleDeletionStatus x
-> GetServiceLinkedRoleDeletionStatus
$cfrom :: forall x.
GetServiceLinkedRoleDeletionStatus
-> Rep GetServiceLinkedRoleDeletionStatus x
Prelude.Generic)
newGetServiceLinkedRoleDeletionStatus ::
Prelude.Text ->
GetServiceLinkedRoleDeletionStatus
newGetServiceLinkedRoleDeletionStatus :: Text -> GetServiceLinkedRoleDeletionStatus
newGetServiceLinkedRoleDeletionStatus
Text
pDeletionTaskId_ =
GetServiceLinkedRoleDeletionStatus'
{ $sel:deletionTaskId:GetServiceLinkedRoleDeletionStatus' :: Text
deletionTaskId =
Text
pDeletionTaskId_
}
getServiceLinkedRoleDeletionStatus_deletionTaskId :: Lens.Lens' GetServiceLinkedRoleDeletionStatus Prelude.Text
getServiceLinkedRoleDeletionStatus_deletionTaskId :: Lens' GetServiceLinkedRoleDeletionStatus Text
getServiceLinkedRoleDeletionStatus_deletionTaskId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetServiceLinkedRoleDeletionStatus' {Text
deletionTaskId :: Text
$sel:deletionTaskId:GetServiceLinkedRoleDeletionStatus' :: GetServiceLinkedRoleDeletionStatus -> Text
deletionTaskId} -> Text
deletionTaskId) (\s :: GetServiceLinkedRoleDeletionStatus
s@GetServiceLinkedRoleDeletionStatus' {} Text
a -> GetServiceLinkedRoleDeletionStatus
s {$sel:deletionTaskId:GetServiceLinkedRoleDeletionStatus' :: Text
deletionTaskId = Text
a} :: GetServiceLinkedRoleDeletionStatus)
instance
Core.AWSRequest
GetServiceLinkedRoleDeletionStatus
where
type
AWSResponse GetServiceLinkedRoleDeletionStatus =
GetServiceLinkedRoleDeletionStatusResponse
request :: (Service -> Service)
-> GetServiceLinkedRoleDeletionStatus
-> Request GetServiceLinkedRoleDeletionStatus
request Service -> Service
overrides =
forall a. ToRequest a => Service -> a -> Request a
Request.postQuery (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy GetServiceLinkedRoleDeletionStatus
-> ClientResponse ClientBody
-> m (Either
Error
(ClientResponse (AWSResponse GetServiceLinkedRoleDeletionStatus)))
response =
forall (m :: * -> *) a.
MonadResource m =>
Text
-> (Int
-> ResponseHeaders -> [Node] -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveXMLWrapper
Text
"GetServiceLinkedRoleDeletionStatusResult"
( \Int
s ResponseHeaders
h [Node]
x ->
Maybe DeletionTaskFailureReasonType
-> Int
-> DeletionTaskStatusType
-> GetServiceLinkedRoleDeletionStatusResponse
GetServiceLinkedRoleDeletionStatusResponse'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"Reason")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String a
Data..@ Text
"Status")
)
instance
Prelude.Hashable
GetServiceLinkedRoleDeletionStatus
where
hashWithSalt :: Int -> GetServiceLinkedRoleDeletionStatus -> Int
hashWithSalt
Int
_salt
GetServiceLinkedRoleDeletionStatus' {Text
deletionTaskId :: Text
$sel:deletionTaskId:GetServiceLinkedRoleDeletionStatus' :: GetServiceLinkedRoleDeletionStatus -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
deletionTaskId
instance
Prelude.NFData
GetServiceLinkedRoleDeletionStatus
where
rnf :: GetServiceLinkedRoleDeletionStatus -> ()
rnf GetServiceLinkedRoleDeletionStatus' {Text
deletionTaskId :: Text
$sel:deletionTaskId:GetServiceLinkedRoleDeletionStatus' :: GetServiceLinkedRoleDeletionStatus -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
deletionTaskId
instance
Data.ToHeaders
GetServiceLinkedRoleDeletionStatus
where
toHeaders :: GetServiceLinkedRoleDeletionStatus -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance
Data.ToPath
GetServiceLinkedRoleDeletionStatus
where
toPath :: GetServiceLinkedRoleDeletionStatus -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance
Data.ToQuery
GetServiceLinkedRoleDeletionStatus
where
toQuery :: GetServiceLinkedRoleDeletionStatus -> QueryString
toQuery GetServiceLinkedRoleDeletionStatus' {Text
deletionTaskId :: Text
$sel:deletionTaskId:GetServiceLinkedRoleDeletionStatus' :: GetServiceLinkedRoleDeletionStatus -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"Action"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: ( ByteString
"GetServiceLinkedRoleDeletionStatus" ::
Prelude.ByteString
),
ByteString
"Version"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2010-05-08" :: Prelude.ByteString),
ByteString
"DeletionTaskId" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
deletionTaskId
]
data GetServiceLinkedRoleDeletionStatusResponse = GetServiceLinkedRoleDeletionStatusResponse'
{
GetServiceLinkedRoleDeletionStatusResponse
-> Maybe DeletionTaskFailureReasonType
reason :: Prelude.Maybe DeletionTaskFailureReasonType,
GetServiceLinkedRoleDeletionStatusResponse -> Int
httpStatus :: Prelude.Int,
GetServiceLinkedRoleDeletionStatusResponse
-> DeletionTaskStatusType
status :: DeletionTaskStatusType
}
deriving (GetServiceLinkedRoleDeletionStatusResponse
-> GetServiceLinkedRoleDeletionStatusResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetServiceLinkedRoleDeletionStatusResponse
-> GetServiceLinkedRoleDeletionStatusResponse -> Bool
$c/= :: GetServiceLinkedRoleDeletionStatusResponse
-> GetServiceLinkedRoleDeletionStatusResponse -> Bool
== :: GetServiceLinkedRoleDeletionStatusResponse
-> GetServiceLinkedRoleDeletionStatusResponse -> Bool
$c== :: GetServiceLinkedRoleDeletionStatusResponse
-> GetServiceLinkedRoleDeletionStatusResponse -> Bool
Prelude.Eq, ReadPrec [GetServiceLinkedRoleDeletionStatusResponse]
ReadPrec GetServiceLinkedRoleDeletionStatusResponse
Int -> ReadS GetServiceLinkedRoleDeletionStatusResponse
ReadS [GetServiceLinkedRoleDeletionStatusResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetServiceLinkedRoleDeletionStatusResponse]
$creadListPrec :: ReadPrec [GetServiceLinkedRoleDeletionStatusResponse]
readPrec :: ReadPrec GetServiceLinkedRoleDeletionStatusResponse
$creadPrec :: ReadPrec GetServiceLinkedRoleDeletionStatusResponse
readList :: ReadS [GetServiceLinkedRoleDeletionStatusResponse]
$creadList :: ReadS [GetServiceLinkedRoleDeletionStatusResponse]
readsPrec :: Int -> ReadS GetServiceLinkedRoleDeletionStatusResponse
$creadsPrec :: Int -> ReadS GetServiceLinkedRoleDeletionStatusResponse
Prelude.Read, Int -> GetServiceLinkedRoleDeletionStatusResponse -> ShowS
[GetServiceLinkedRoleDeletionStatusResponse] -> ShowS
GetServiceLinkedRoleDeletionStatusResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetServiceLinkedRoleDeletionStatusResponse] -> ShowS
$cshowList :: [GetServiceLinkedRoleDeletionStatusResponse] -> ShowS
show :: GetServiceLinkedRoleDeletionStatusResponse -> String
$cshow :: GetServiceLinkedRoleDeletionStatusResponse -> String
showsPrec :: Int -> GetServiceLinkedRoleDeletionStatusResponse -> ShowS
$cshowsPrec :: Int -> GetServiceLinkedRoleDeletionStatusResponse -> ShowS
Prelude.Show, forall x.
Rep GetServiceLinkedRoleDeletionStatusResponse x
-> GetServiceLinkedRoleDeletionStatusResponse
forall x.
GetServiceLinkedRoleDeletionStatusResponse
-> Rep GetServiceLinkedRoleDeletionStatusResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetServiceLinkedRoleDeletionStatusResponse x
-> GetServiceLinkedRoleDeletionStatusResponse
$cfrom :: forall x.
GetServiceLinkedRoleDeletionStatusResponse
-> Rep GetServiceLinkedRoleDeletionStatusResponse x
Prelude.Generic)
newGetServiceLinkedRoleDeletionStatusResponse ::
Prelude.Int ->
DeletionTaskStatusType ->
GetServiceLinkedRoleDeletionStatusResponse
newGetServiceLinkedRoleDeletionStatusResponse :: Int
-> DeletionTaskStatusType
-> GetServiceLinkedRoleDeletionStatusResponse
newGetServiceLinkedRoleDeletionStatusResponse
Int
pHttpStatus_
DeletionTaskStatusType
pStatus_ =
GetServiceLinkedRoleDeletionStatusResponse'
{ $sel:reason:GetServiceLinkedRoleDeletionStatusResponse' :: Maybe DeletionTaskFailureReasonType
reason =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:GetServiceLinkedRoleDeletionStatusResponse' :: Int
httpStatus = Int
pHttpStatus_,
$sel:status:GetServiceLinkedRoleDeletionStatusResponse' :: DeletionTaskStatusType
status = DeletionTaskStatusType
pStatus_
}
getServiceLinkedRoleDeletionStatusResponse_reason :: Lens.Lens' GetServiceLinkedRoleDeletionStatusResponse (Prelude.Maybe DeletionTaskFailureReasonType)
getServiceLinkedRoleDeletionStatusResponse_reason :: Lens'
GetServiceLinkedRoleDeletionStatusResponse
(Maybe DeletionTaskFailureReasonType)
getServiceLinkedRoleDeletionStatusResponse_reason = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetServiceLinkedRoleDeletionStatusResponse' {Maybe DeletionTaskFailureReasonType
reason :: Maybe DeletionTaskFailureReasonType
$sel:reason:GetServiceLinkedRoleDeletionStatusResponse' :: GetServiceLinkedRoleDeletionStatusResponse
-> Maybe DeletionTaskFailureReasonType
reason} -> Maybe DeletionTaskFailureReasonType
reason) (\s :: GetServiceLinkedRoleDeletionStatusResponse
s@GetServiceLinkedRoleDeletionStatusResponse' {} Maybe DeletionTaskFailureReasonType
a -> GetServiceLinkedRoleDeletionStatusResponse
s {$sel:reason:GetServiceLinkedRoleDeletionStatusResponse' :: Maybe DeletionTaskFailureReasonType
reason = Maybe DeletionTaskFailureReasonType
a} :: GetServiceLinkedRoleDeletionStatusResponse)
getServiceLinkedRoleDeletionStatusResponse_httpStatus :: Lens.Lens' GetServiceLinkedRoleDeletionStatusResponse Prelude.Int
getServiceLinkedRoleDeletionStatusResponse_httpStatus :: Lens' GetServiceLinkedRoleDeletionStatusResponse Int
getServiceLinkedRoleDeletionStatusResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetServiceLinkedRoleDeletionStatusResponse' {Int
httpStatus :: Int
$sel:httpStatus:GetServiceLinkedRoleDeletionStatusResponse' :: GetServiceLinkedRoleDeletionStatusResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GetServiceLinkedRoleDeletionStatusResponse
s@GetServiceLinkedRoleDeletionStatusResponse' {} Int
a -> GetServiceLinkedRoleDeletionStatusResponse
s {$sel:httpStatus:GetServiceLinkedRoleDeletionStatusResponse' :: Int
httpStatus = Int
a} :: GetServiceLinkedRoleDeletionStatusResponse)
getServiceLinkedRoleDeletionStatusResponse_status :: Lens.Lens' GetServiceLinkedRoleDeletionStatusResponse DeletionTaskStatusType
getServiceLinkedRoleDeletionStatusResponse_status :: Lens'
GetServiceLinkedRoleDeletionStatusResponse DeletionTaskStatusType
getServiceLinkedRoleDeletionStatusResponse_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetServiceLinkedRoleDeletionStatusResponse' {DeletionTaskStatusType
status :: DeletionTaskStatusType
$sel:status:GetServiceLinkedRoleDeletionStatusResponse' :: GetServiceLinkedRoleDeletionStatusResponse
-> DeletionTaskStatusType
status} -> DeletionTaskStatusType
status) (\s :: GetServiceLinkedRoleDeletionStatusResponse
s@GetServiceLinkedRoleDeletionStatusResponse' {} DeletionTaskStatusType
a -> GetServiceLinkedRoleDeletionStatusResponse
s {$sel:status:GetServiceLinkedRoleDeletionStatusResponse' :: DeletionTaskStatusType
status = DeletionTaskStatusType
a} :: GetServiceLinkedRoleDeletionStatusResponse)
instance
Prelude.NFData
GetServiceLinkedRoleDeletionStatusResponse
where
rnf :: GetServiceLinkedRoleDeletionStatusResponse -> ()
rnf GetServiceLinkedRoleDeletionStatusResponse' {Int
Maybe DeletionTaskFailureReasonType
DeletionTaskStatusType
status :: DeletionTaskStatusType
httpStatus :: Int
reason :: Maybe DeletionTaskFailureReasonType
$sel:status:GetServiceLinkedRoleDeletionStatusResponse' :: GetServiceLinkedRoleDeletionStatusResponse
-> DeletionTaskStatusType
$sel:httpStatus:GetServiceLinkedRoleDeletionStatusResponse' :: GetServiceLinkedRoleDeletionStatusResponse -> Int
$sel:reason:GetServiceLinkedRoleDeletionStatusResponse' :: GetServiceLinkedRoleDeletionStatusResponse
-> Maybe DeletionTaskFailureReasonType
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe DeletionTaskFailureReasonType
reason
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf DeletionTaskStatusType
status