{-# 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.EC2.GetVerifiedAccessGroupPolicy
(
GetVerifiedAccessGroupPolicy (..),
newGetVerifiedAccessGroupPolicy,
getVerifiedAccessGroupPolicy_dryRun,
getVerifiedAccessGroupPolicy_verifiedAccessGroupId,
GetVerifiedAccessGroupPolicyResponse (..),
newGetVerifiedAccessGroupPolicyResponse,
getVerifiedAccessGroupPolicyResponse_policyDocument,
getVerifiedAccessGroupPolicyResponse_policyEnabled,
getVerifiedAccessGroupPolicyResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.EC2.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data GetVerifiedAccessGroupPolicy = GetVerifiedAccessGroupPolicy'
{
GetVerifiedAccessGroupPolicy -> Maybe Bool
dryRun :: Prelude.Maybe Prelude.Bool,
GetVerifiedAccessGroupPolicy -> Text
verifiedAccessGroupId :: Prelude.Text
}
deriving (GetVerifiedAccessGroupPolicy
-> GetVerifiedAccessGroupPolicy -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetVerifiedAccessGroupPolicy
-> GetVerifiedAccessGroupPolicy -> Bool
$c/= :: GetVerifiedAccessGroupPolicy
-> GetVerifiedAccessGroupPolicy -> Bool
== :: GetVerifiedAccessGroupPolicy
-> GetVerifiedAccessGroupPolicy -> Bool
$c== :: GetVerifiedAccessGroupPolicy
-> GetVerifiedAccessGroupPolicy -> Bool
Prelude.Eq, ReadPrec [GetVerifiedAccessGroupPolicy]
ReadPrec GetVerifiedAccessGroupPolicy
Int -> ReadS GetVerifiedAccessGroupPolicy
ReadS [GetVerifiedAccessGroupPolicy]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetVerifiedAccessGroupPolicy]
$creadListPrec :: ReadPrec [GetVerifiedAccessGroupPolicy]
readPrec :: ReadPrec GetVerifiedAccessGroupPolicy
$creadPrec :: ReadPrec GetVerifiedAccessGroupPolicy
readList :: ReadS [GetVerifiedAccessGroupPolicy]
$creadList :: ReadS [GetVerifiedAccessGroupPolicy]
readsPrec :: Int -> ReadS GetVerifiedAccessGroupPolicy
$creadsPrec :: Int -> ReadS GetVerifiedAccessGroupPolicy
Prelude.Read, Int -> GetVerifiedAccessGroupPolicy -> ShowS
[GetVerifiedAccessGroupPolicy] -> ShowS
GetVerifiedAccessGroupPolicy -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetVerifiedAccessGroupPolicy] -> ShowS
$cshowList :: [GetVerifiedAccessGroupPolicy] -> ShowS
show :: GetVerifiedAccessGroupPolicy -> String
$cshow :: GetVerifiedAccessGroupPolicy -> String
showsPrec :: Int -> GetVerifiedAccessGroupPolicy -> ShowS
$cshowsPrec :: Int -> GetVerifiedAccessGroupPolicy -> ShowS
Prelude.Show, forall x.
Rep GetVerifiedAccessGroupPolicy x -> GetVerifiedAccessGroupPolicy
forall x.
GetVerifiedAccessGroupPolicy -> Rep GetVerifiedAccessGroupPolicy x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetVerifiedAccessGroupPolicy x -> GetVerifiedAccessGroupPolicy
$cfrom :: forall x.
GetVerifiedAccessGroupPolicy -> Rep GetVerifiedAccessGroupPolicy x
Prelude.Generic)
newGetVerifiedAccessGroupPolicy ::
Prelude.Text ->
GetVerifiedAccessGroupPolicy
newGetVerifiedAccessGroupPolicy :: Text -> GetVerifiedAccessGroupPolicy
newGetVerifiedAccessGroupPolicy
Text
pVerifiedAccessGroupId_ =
GetVerifiedAccessGroupPolicy'
{ $sel:dryRun:GetVerifiedAccessGroupPolicy' :: Maybe Bool
dryRun =
forall a. Maybe a
Prelude.Nothing,
$sel:verifiedAccessGroupId:GetVerifiedAccessGroupPolicy' :: Text
verifiedAccessGroupId =
Text
pVerifiedAccessGroupId_
}
getVerifiedAccessGroupPolicy_dryRun :: Lens.Lens' GetVerifiedAccessGroupPolicy (Prelude.Maybe Prelude.Bool)
getVerifiedAccessGroupPolicy_dryRun :: Lens' GetVerifiedAccessGroupPolicy (Maybe Bool)
getVerifiedAccessGroupPolicy_dryRun = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetVerifiedAccessGroupPolicy' {Maybe Bool
dryRun :: Maybe Bool
$sel:dryRun:GetVerifiedAccessGroupPolicy' :: GetVerifiedAccessGroupPolicy -> Maybe Bool
dryRun} -> Maybe Bool
dryRun) (\s :: GetVerifiedAccessGroupPolicy
s@GetVerifiedAccessGroupPolicy' {} Maybe Bool
a -> GetVerifiedAccessGroupPolicy
s {$sel:dryRun:GetVerifiedAccessGroupPolicy' :: Maybe Bool
dryRun = Maybe Bool
a} :: GetVerifiedAccessGroupPolicy)
getVerifiedAccessGroupPolicy_verifiedAccessGroupId :: Lens.Lens' GetVerifiedAccessGroupPolicy Prelude.Text
getVerifiedAccessGroupPolicy_verifiedAccessGroupId :: Lens' GetVerifiedAccessGroupPolicy Text
getVerifiedAccessGroupPolicy_verifiedAccessGroupId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetVerifiedAccessGroupPolicy' {Text
verifiedAccessGroupId :: Text
$sel:verifiedAccessGroupId:GetVerifiedAccessGroupPolicy' :: GetVerifiedAccessGroupPolicy -> Text
verifiedAccessGroupId} -> Text
verifiedAccessGroupId) (\s :: GetVerifiedAccessGroupPolicy
s@GetVerifiedAccessGroupPolicy' {} Text
a -> GetVerifiedAccessGroupPolicy
s {$sel:verifiedAccessGroupId:GetVerifiedAccessGroupPolicy' :: Text
verifiedAccessGroupId = Text
a} :: GetVerifiedAccessGroupPolicy)
instance Core.AWSRequest GetVerifiedAccessGroupPolicy where
type
AWSResponse GetVerifiedAccessGroupPolicy =
GetVerifiedAccessGroupPolicyResponse
request :: (Service -> Service)
-> GetVerifiedAccessGroupPolicy
-> Request GetVerifiedAccessGroupPolicy
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 GetVerifiedAccessGroupPolicy
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse GetVerifiedAccessGroupPolicy)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> [Node] -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveXML
( \Int
s ResponseHeaders
h [Node]
x ->
Maybe Text
-> Maybe Bool -> Int -> GetVerifiedAccessGroupPolicyResponse
GetVerifiedAccessGroupPolicyResponse'
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
"policyDocument")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"policyEnabled")
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))
)
instance
Prelude.Hashable
GetVerifiedAccessGroupPolicy
where
hashWithSalt :: Int -> GetVerifiedAccessGroupPolicy -> Int
hashWithSalt Int
_salt GetVerifiedAccessGroupPolicy' {Maybe Bool
Text
verifiedAccessGroupId :: Text
dryRun :: Maybe Bool
$sel:verifiedAccessGroupId:GetVerifiedAccessGroupPolicy' :: GetVerifiedAccessGroupPolicy -> Text
$sel:dryRun:GetVerifiedAccessGroupPolicy' :: GetVerifiedAccessGroupPolicy -> Maybe Bool
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
dryRun
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
verifiedAccessGroupId
instance Prelude.NFData GetVerifiedAccessGroupPolicy where
rnf :: GetVerifiedAccessGroupPolicy -> ()
rnf GetVerifiedAccessGroupPolicy' {Maybe Bool
Text
verifiedAccessGroupId :: Text
dryRun :: Maybe Bool
$sel:verifiedAccessGroupId:GetVerifiedAccessGroupPolicy' :: GetVerifiedAccessGroupPolicy -> Text
$sel:dryRun:GetVerifiedAccessGroupPolicy' :: GetVerifiedAccessGroupPolicy -> Maybe Bool
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
dryRun
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
verifiedAccessGroupId
instance Data.ToHeaders GetVerifiedAccessGroupPolicy where
toHeaders :: GetVerifiedAccessGroupPolicy -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath GetVerifiedAccessGroupPolicy where
toPath :: GetVerifiedAccessGroupPolicy -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery GetVerifiedAccessGroupPolicy where
toQuery :: GetVerifiedAccessGroupPolicy -> QueryString
toQuery GetVerifiedAccessGroupPolicy' {Maybe Bool
Text
verifiedAccessGroupId :: Text
dryRun :: Maybe Bool
$sel:verifiedAccessGroupId:GetVerifiedAccessGroupPolicy' :: GetVerifiedAccessGroupPolicy -> Text
$sel:dryRun:GetVerifiedAccessGroupPolicy' :: GetVerifiedAccessGroupPolicy -> Maybe Bool
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"Action"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: ( ByteString
"GetVerifiedAccessGroupPolicy" ::
Prelude.ByteString
),
ByteString
"Version"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2016-11-15" :: Prelude.ByteString),
ByteString
"DryRun" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Bool
dryRun,
ByteString
"VerifiedAccessGroupId"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
verifiedAccessGroupId
]
data GetVerifiedAccessGroupPolicyResponse = GetVerifiedAccessGroupPolicyResponse'
{
GetVerifiedAccessGroupPolicyResponse -> Maybe Text
policyDocument :: Prelude.Maybe Prelude.Text,
GetVerifiedAccessGroupPolicyResponse -> Maybe Bool
policyEnabled :: Prelude.Maybe Prelude.Bool,
GetVerifiedAccessGroupPolicyResponse -> Int
httpStatus :: Prelude.Int
}
deriving (GetVerifiedAccessGroupPolicyResponse
-> GetVerifiedAccessGroupPolicyResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetVerifiedAccessGroupPolicyResponse
-> GetVerifiedAccessGroupPolicyResponse -> Bool
$c/= :: GetVerifiedAccessGroupPolicyResponse
-> GetVerifiedAccessGroupPolicyResponse -> Bool
== :: GetVerifiedAccessGroupPolicyResponse
-> GetVerifiedAccessGroupPolicyResponse -> Bool
$c== :: GetVerifiedAccessGroupPolicyResponse
-> GetVerifiedAccessGroupPolicyResponse -> Bool
Prelude.Eq, ReadPrec [GetVerifiedAccessGroupPolicyResponse]
ReadPrec GetVerifiedAccessGroupPolicyResponse
Int -> ReadS GetVerifiedAccessGroupPolicyResponse
ReadS [GetVerifiedAccessGroupPolicyResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetVerifiedAccessGroupPolicyResponse]
$creadListPrec :: ReadPrec [GetVerifiedAccessGroupPolicyResponse]
readPrec :: ReadPrec GetVerifiedAccessGroupPolicyResponse
$creadPrec :: ReadPrec GetVerifiedAccessGroupPolicyResponse
readList :: ReadS [GetVerifiedAccessGroupPolicyResponse]
$creadList :: ReadS [GetVerifiedAccessGroupPolicyResponse]
readsPrec :: Int -> ReadS GetVerifiedAccessGroupPolicyResponse
$creadsPrec :: Int -> ReadS GetVerifiedAccessGroupPolicyResponse
Prelude.Read, Int -> GetVerifiedAccessGroupPolicyResponse -> ShowS
[GetVerifiedAccessGroupPolicyResponse] -> ShowS
GetVerifiedAccessGroupPolicyResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetVerifiedAccessGroupPolicyResponse] -> ShowS
$cshowList :: [GetVerifiedAccessGroupPolicyResponse] -> ShowS
show :: GetVerifiedAccessGroupPolicyResponse -> String
$cshow :: GetVerifiedAccessGroupPolicyResponse -> String
showsPrec :: Int -> GetVerifiedAccessGroupPolicyResponse -> ShowS
$cshowsPrec :: Int -> GetVerifiedAccessGroupPolicyResponse -> ShowS
Prelude.Show, forall x.
Rep GetVerifiedAccessGroupPolicyResponse x
-> GetVerifiedAccessGroupPolicyResponse
forall x.
GetVerifiedAccessGroupPolicyResponse
-> Rep GetVerifiedAccessGroupPolicyResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetVerifiedAccessGroupPolicyResponse x
-> GetVerifiedAccessGroupPolicyResponse
$cfrom :: forall x.
GetVerifiedAccessGroupPolicyResponse
-> Rep GetVerifiedAccessGroupPolicyResponse x
Prelude.Generic)
newGetVerifiedAccessGroupPolicyResponse ::
Prelude.Int ->
GetVerifiedAccessGroupPolicyResponse
newGetVerifiedAccessGroupPolicyResponse :: Int -> GetVerifiedAccessGroupPolicyResponse
newGetVerifiedAccessGroupPolicyResponse Int
pHttpStatus_ =
GetVerifiedAccessGroupPolicyResponse'
{ $sel:policyDocument:GetVerifiedAccessGroupPolicyResponse' :: Maybe Text
policyDocument =
forall a. Maybe a
Prelude.Nothing,
$sel:policyEnabled:GetVerifiedAccessGroupPolicyResponse' :: Maybe Bool
policyEnabled = forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:GetVerifiedAccessGroupPolicyResponse' :: Int
httpStatus = Int
pHttpStatus_
}
getVerifiedAccessGroupPolicyResponse_policyDocument :: Lens.Lens' GetVerifiedAccessGroupPolicyResponse (Prelude.Maybe Prelude.Text)
getVerifiedAccessGroupPolicyResponse_policyDocument :: Lens' GetVerifiedAccessGroupPolicyResponse (Maybe Text)
getVerifiedAccessGroupPolicyResponse_policyDocument = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetVerifiedAccessGroupPolicyResponse' {Maybe Text
policyDocument :: Maybe Text
$sel:policyDocument:GetVerifiedAccessGroupPolicyResponse' :: GetVerifiedAccessGroupPolicyResponse -> Maybe Text
policyDocument} -> Maybe Text
policyDocument) (\s :: GetVerifiedAccessGroupPolicyResponse
s@GetVerifiedAccessGroupPolicyResponse' {} Maybe Text
a -> GetVerifiedAccessGroupPolicyResponse
s {$sel:policyDocument:GetVerifiedAccessGroupPolicyResponse' :: Maybe Text
policyDocument = Maybe Text
a} :: GetVerifiedAccessGroupPolicyResponse)
getVerifiedAccessGroupPolicyResponse_policyEnabled :: Lens.Lens' GetVerifiedAccessGroupPolicyResponse (Prelude.Maybe Prelude.Bool)
getVerifiedAccessGroupPolicyResponse_policyEnabled :: Lens' GetVerifiedAccessGroupPolicyResponse (Maybe Bool)
getVerifiedAccessGroupPolicyResponse_policyEnabled = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetVerifiedAccessGroupPolicyResponse' {Maybe Bool
policyEnabled :: Maybe Bool
$sel:policyEnabled:GetVerifiedAccessGroupPolicyResponse' :: GetVerifiedAccessGroupPolicyResponse -> Maybe Bool
policyEnabled} -> Maybe Bool
policyEnabled) (\s :: GetVerifiedAccessGroupPolicyResponse
s@GetVerifiedAccessGroupPolicyResponse' {} Maybe Bool
a -> GetVerifiedAccessGroupPolicyResponse
s {$sel:policyEnabled:GetVerifiedAccessGroupPolicyResponse' :: Maybe Bool
policyEnabled = Maybe Bool
a} :: GetVerifiedAccessGroupPolicyResponse)
getVerifiedAccessGroupPolicyResponse_httpStatus :: Lens.Lens' GetVerifiedAccessGroupPolicyResponse Prelude.Int
getVerifiedAccessGroupPolicyResponse_httpStatus :: Lens' GetVerifiedAccessGroupPolicyResponse Int
getVerifiedAccessGroupPolicyResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetVerifiedAccessGroupPolicyResponse' {Int
httpStatus :: Int
$sel:httpStatus:GetVerifiedAccessGroupPolicyResponse' :: GetVerifiedAccessGroupPolicyResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GetVerifiedAccessGroupPolicyResponse
s@GetVerifiedAccessGroupPolicyResponse' {} Int
a -> GetVerifiedAccessGroupPolicyResponse
s {$sel:httpStatus:GetVerifiedAccessGroupPolicyResponse' :: Int
httpStatus = Int
a} :: GetVerifiedAccessGroupPolicyResponse)
instance
Prelude.NFData
GetVerifiedAccessGroupPolicyResponse
where
rnf :: GetVerifiedAccessGroupPolicyResponse -> ()
rnf GetVerifiedAccessGroupPolicyResponse' {Int
Maybe Bool
Maybe Text
httpStatus :: Int
policyEnabled :: Maybe Bool
policyDocument :: Maybe Text
$sel:httpStatus:GetVerifiedAccessGroupPolicyResponse' :: GetVerifiedAccessGroupPolicyResponse -> Int
$sel:policyEnabled:GetVerifiedAccessGroupPolicyResponse' :: GetVerifiedAccessGroupPolicyResponse -> Maybe Bool
$sel:policyDocument:GetVerifiedAccessGroupPolicyResponse' :: GetVerifiedAccessGroupPolicyResponse -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
policyDocument
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
policyEnabled
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus