{-# 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.GetContextKeysForCustomPolicy
(
GetContextKeysForCustomPolicy (..),
newGetContextKeysForCustomPolicy,
getContextKeysForCustomPolicy_policyInputList,
GetContextKeysForPolicyResponse (..),
newGetContextKeysForPolicyResponse,
getContextKeysForPolicyResponse_contextKeyNames,
)
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 GetContextKeysForCustomPolicy = GetContextKeysForCustomPolicy'
{
GetContextKeysForCustomPolicy -> [Text]
policyInputList :: [Prelude.Text]
}
deriving (GetContextKeysForCustomPolicy
-> GetContextKeysForCustomPolicy -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetContextKeysForCustomPolicy
-> GetContextKeysForCustomPolicy -> Bool
$c/= :: GetContextKeysForCustomPolicy
-> GetContextKeysForCustomPolicy -> Bool
== :: GetContextKeysForCustomPolicy
-> GetContextKeysForCustomPolicy -> Bool
$c== :: GetContextKeysForCustomPolicy
-> GetContextKeysForCustomPolicy -> Bool
Prelude.Eq, ReadPrec [GetContextKeysForCustomPolicy]
ReadPrec GetContextKeysForCustomPolicy
Int -> ReadS GetContextKeysForCustomPolicy
ReadS [GetContextKeysForCustomPolicy]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetContextKeysForCustomPolicy]
$creadListPrec :: ReadPrec [GetContextKeysForCustomPolicy]
readPrec :: ReadPrec GetContextKeysForCustomPolicy
$creadPrec :: ReadPrec GetContextKeysForCustomPolicy
readList :: ReadS [GetContextKeysForCustomPolicy]
$creadList :: ReadS [GetContextKeysForCustomPolicy]
readsPrec :: Int -> ReadS GetContextKeysForCustomPolicy
$creadsPrec :: Int -> ReadS GetContextKeysForCustomPolicy
Prelude.Read, Int -> GetContextKeysForCustomPolicy -> ShowS
[GetContextKeysForCustomPolicy] -> ShowS
GetContextKeysForCustomPolicy -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetContextKeysForCustomPolicy] -> ShowS
$cshowList :: [GetContextKeysForCustomPolicy] -> ShowS
show :: GetContextKeysForCustomPolicy -> String
$cshow :: GetContextKeysForCustomPolicy -> String
showsPrec :: Int -> GetContextKeysForCustomPolicy -> ShowS
$cshowsPrec :: Int -> GetContextKeysForCustomPolicy -> ShowS
Prelude.Show, forall x.
Rep GetContextKeysForCustomPolicy x
-> GetContextKeysForCustomPolicy
forall x.
GetContextKeysForCustomPolicy
-> Rep GetContextKeysForCustomPolicy x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetContextKeysForCustomPolicy x
-> GetContextKeysForCustomPolicy
$cfrom :: forall x.
GetContextKeysForCustomPolicy
-> Rep GetContextKeysForCustomPolicy x
Prelude.Generic)
newGetContextKeysForCustomPolicy ::
GetContextKeysForCustomPolicy
newGetContextKeysForCustomPolicy :: GetContextKeysForCustomPolicy
newGetContextKeysForCustomPolicy =
GetContextKeysForCustomPolicy'
{ $sel:policyInputList:GetContextKeysForCustomPolicy' :: [Text]
policyInputList =
forall a. Monoid a => a
Prelude.mempty
}
getContextKeysForCustomPolicy_policyInputList :: Lens.Lens' GetContextKeysForCustomPolicy [Prelude.Text]
getContextKeysForCustomPolicy_policyInputList :: Lens' GetContextKeysForCustomPolicy [Text]
getContextKeysForCustomPolicy_policyInputList = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetContextKeysForCustomPolicy' {[Text]
policyInputList :: [Text]
$sel:policyInputList:GetContextKeysForCustomPolicy' :: GetContextKeysForCustomPolicy -> [Text]
policyInputList} -> [Text]
policyInputList) (\s :: GetContextKeysForCustomPolicy
s@GetContextKeysForCustomPolicy' {} [Text]
a -> GetContextKeysForCustomPolicy
s {$sel:policyInputList:GetContextKeysForCustomPolicy' :: [Text]
policyInputList = [Text]
a} :: GetContextKeysForCustomPolicy) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
instance
Core.AWSRequest
GetContextKeysForCustomPolicy
where
type
AWSResponse GetContextKeysForCustomPolicy =
GetContextKeysForPolicyResponse
request :: (Service -> Service)
-> GetContextKeysForCustomPolicy
-> Request GetContextKeysForCustomPolicy
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 GetContextKeysForCustomPolicy
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse GetContextKeysForCustomPolicy)))
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
"GetContextKeysForCustomPolicyResult"
(\Int
s ResponseHeaders
h [Node]
x -> forall a. FromXML a => [Node] -> Either String a
Data.parseXML [Node]
x)
instance
Prelude.Hashable
GetContextKeysForCustomPolicy
where
hashWithSalt :: Int -> GetContextKeysForCustomPolicy -> Int
hashWithSalt Int
_salt GetContextKeysForCustomPolicy' {[Text]
policyInputList :: [Text]
$sel:policyInputList:GetContextKeysForCustomPolicy' :: GetContextKeysForCustomPolicy -> [Text]
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` [Text]
policyInputList
instance Prelude.NFData GetContextKeysForCustomPolicy where
rnf :: GetContextKeysForCustomPolicy -> ()
rnf GetContextKeysForCustomPolicy' {[Text]
policyInputList :: [Text]
$sel:policyInputList:GetContextKeysForCustomPolicy' :: GetContextKeysForCustomPolicy -> [Text]
..} =
forall a. NFData a => a -> ()
Prelude.rnf [Text]
policyInputList
instance Data.ToHeaders GetContextKeysForCustomPolicy where
toHeaders :: GetContextKeysForCustomPolicy -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath GetContextKeysForCustomPolicy where
toPath :: GetContextKeysForCustomPolicy -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery GetContextKeysForCustomPolicy where
toQuery :: GetContextKeysForCustomPolicy -> QueryString
toQuery GetContextKeysForCustomPolicy' {[Text]
policyInputList :: [Text]
$sel:policyInputList:GetContextKeysForCustomPolicy' :: GetContextKeysForCustomPolicy -> [Text]
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"Action"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: ( ByteString
"GetContextKeysForCustomPolicy" ::
Prelude.ByteString
),
ByteString
"Version"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2010-05-08" :: Prelude.ByteString),
ByteString
"PolicyInputList"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: forall a.
(IsList a, ToQuery (Item a)) =>
ByteString -> a -> QueryString
Data.toQueryList ByteString
"member" [Text]
policyInputList
]