{-# 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.CreateVerifiedAccessTrustProvider
(
CreateVerifiedAccessTrustProvider (..),
newCreateVerifiedAccessTrustProvider,
createVerifiedAccessTrustProvider_clientToken,
createVerifiedAccessTrustProvider_description,
createVerifiedAccessTrustProvider_deviceOptions,
createVerifiedAccessTrustProvider_deviceTrustProviderType,
createVerifiedAccessTrustProvider_dryRun,
createVerifiedAccessTrustProvider_oidcOptions,
createVerifiedAccessTrustProvider_tagSpecifications,
createVerifiedAccessTrustProvider_userTrustProviderType,
createVerifiedAccessTrustProvider_trustProviderType,
createVerifiedAccessTrustProvider_policyReferenceName,
CreateVerifiedAccessTrustProviderResponse (..),
newCreateVerifiedAccessTrustProviderResponse,
createVerifiedAccessTrustProviderResponse_verifiedAccessTrustProvider,
createVerifiedAccessTrustProviderResponse_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 CreateVerifiedAccessTrustProvider = CreateVerifiedAccessTrustProvider'
{
CreateVerifiedAccessTrustProvider -> Maybe Text
clientToken :: Prelude.Maybe Prelude.Text,
CreateVerifiedAccessTrustProvider -> Maybe Text
description :: Prelude.Maybe Prelude.Text,
CreateVerifiedAccessTrustProvider
-> Maybe CreateVerifiedAccessTrustProviderDeviceOptions
deviceOptions :: Prelude.Maybe CreateVerifiedAccessTrustProviderDeviceOptions,
CreateVerifiedAccessTrustProvider -> Maybe DeviceTrustProviderType
deviceTrustProviderType :: Prelude.Maybe DeviceTrustProviderType,
CreateVerifiedAccessTrustProvider -> Maybe Bool
dryRun :: Prelude.Maybe Prelude.Bool,
CreateVerifiedAccessTrustProvider
-> Maybe CreateVerifiedAccessTrustProviderOidcOptions
oidcOptions :: Prelude.Maybe CreateVerifiedAccessTrustProviderOidcOptions,
CreateVerifiedAccessTrustProvider -> Maybe [TagSpecification]
tagSpecifications :: Prelude.Maybe [TagSpecification],
CreateVerifiedAccessTrustProvider -> Maybe UserTrustProviderType
userTrustProviderType :: Prelude.Maybe UserTrustProviderType,
CreateVerifiedAccessTrustProvider -> TrustProviderType
trustProviderType :: TrustProviderType,
CreateVerifiedAccessTrustProvider -> Text
policyReferenceName :: Prelude.Text
}
deriving (CreateVerifiedAccessTrustProvider
-> CreateVerifiedAccessTrustProvider -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CreateVerifiedAccessTrustProvider
-> CreateVerifiedAccessTrustProvider -> Bool
$c/= :: CreateVerifiedAccessTrustProvider
-> CreateVerifiedAccessTrustProvider -> Bool
== :: CreateVerifiedAccessTrustProvider
-> CreateVerifiedAccessTrustProvider -> Bool
$c== :: CreateVerifiedAccessTrustProvider
-> CreateVerifiedAccessTrustProvider -> Bool
Prelude.Eq, ReadPrec [CreateVerifiedAccessTrustProvider]
ReadPrec CreateVerifiedAccessTrustProvider
Int -> ReadS CreateVerifiedAccessTrustProvider
ReadS [CreateVerifiedAccessTrustProvider]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [CreateVerifiedAccessTrustProvider]
$creadListPrec :: ReadPrec [CreateVerifiedAccessTrustProvider]
readPrec :: ReadPrec CreateVerifiedAccessTrustProvider
$creadPrec :: ReadPrec CreateVerifiedAccessTrustProvider
readList :: ReadS [CreateVerifiedAccessTrustProvider]
$creadList :: ReadS [CreateVerifiedAccessTrustProvider]
readsPrec :: Int -> ReadS CreateVerifiedAccessTrustProvider
$creadsPrec :: Int -> ReadS CreateVerifiedAccessTrustProvider
Prelude.Read, Int -> CreateVerifiedAccessTrustProvider -> ShowS
[CreateVerifiedAccessTrustProvider] -> ShowS
CreateVerifiedAccessTrustProvider -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CreateVerifiedAccessTrustProvider] -> ShowS
$cshowList :: [CreateVerifiedAccessTrustProvider] -> ShowS
show :: CreateVerifiedAccessTrustProvider -> String
$cshow :: CreateVerifiedAccessTrustProvider -> String
showsPrec :: Int -> CreateVerifiedAccessTrustProvider -> ShowS
$cshowsPrec :: Int -> CreateVerifiedAccessTrustProvider -> ShowS
Prelude.Show, forall x.
Rep CreateVerifiedAccessTrustProvider x
-> CreateVerifiedAccessTrustProvider
forall x.
CreateVerifiedAccessTrustProvider
-> Rep CreateVerifiedAccessTrustProvider x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep CreateVerifiedAccessTrustProvider x
-> CreateVerifiedAccessTrustProvider
$cfrom :: forall x.
CreateVerifiedAccessTrustProvider
-> Rep CreateVerifiedAccessTrustProvider x
Prelude.Generic)
newCreateVerifiedAccessTrustProvider ::
TrustProviderType ->
Prelude.Text ->
CreateVerifiedAccessTrustProvider
newCreateVerifiedAccessTrustProvider :: TrustProviderType -> Text -> CreateVerifiedAccessTrustProvider
newCreateVerifiedAccessTrustProvider
TrustProviderType
pTrustProviderType_
Text
pPolicyReferenceName_ =
CreateVerifiedAccessTrustProvider'
{ $sel:clientToken:CreateVerifiedAccessTrustProvider' :: Maybe Text
clientToken =
forall a. Maybe a
Prelude.Nothing,
$sel:description:CreateVerifiedAccessTrustProvider' :: Maybe Text
description = forall a. Maybe a
Prelude.Nothing,
$sel:deviceOptions:CreateVerifiedAccessTrustProvider' :: Maybe CreateVerifiedAccessTrustProviderDeviceOptions
deviceOptions = forall a. Maybe a
Prelude.Nothing,
$sel:deviceTrustProviderType:CreateVerifiedAccessTrustProvider' :: Maybe DeviceTrustProviderType
deviceTrustProviderType =
forall a. Maybe a
Prelude.Nothing,
$sel:dryRun:CreateVerifiedAccessTrustProvider' :: Maybe Bool
dryRun = forall a. Maybe a
Prelude.Nothing,
$sel:oidcOptions:CreateVerifiedAccessTrustProvider' :: Maybe CreateVerifiedAccessTrustProviderOidcOptions
oidcOptions = forall a. Maybe a
Prelude.Nothing,
$sel:tagSpecifications:CreateVerifiedAccessTrustProvider' :: Maybe [TagSpecification]
tagSpecifications = forall a. Maybe a
Prelude.Nothing,
$sel:userTrustProviderType:CreateVerifiedAccessTrustProvider' :: Maybe UserTrustProviderType
userTrustProviderType = forall a. Maybe a
Prelude.Nothing,
$sel:trustProviderType:CreateVerifiedAccessTrustProvider' :: TrustProviderType
trustProviderType = TrustProviderType
pTrustProviderType_,
$sel:policyReferenceName:CreateVerifiedAccessTrustProvider' :: Text
policyReferenceName =
Text
pPolicyReferenceName_
}
createVerifiedAccessTrustProvider_clientToken :: Lens.Lens' CreateVerifiedAccessTrustProvider (Prelude.Maybe Prelude.Text)
createVerifiedAccessTrustProvider_clientToken :: Lens' CreateVerifiedAccessTrustProvider (Maybe Text)
createVerifiedAccessTrustProvider_clientToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateVerifiedAccessTrustProvider' {Maybe Text
clientToken :: Maybe Text
$sel:clientToken:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe Text
clientToken} -> Maybe Text
clientToken) (\s :: CreateVerifiedAccessTrustProvider
s@CreateVerifiedAccessTrustProvider' {} Maybe Text
a -> CreateVerifiedAccessTrustProvider
s {$sel:clientToken:CreateVerifiedAccessTrustProvider' :: Maybe Text
clientToken = Maybe Text
a} :: CreateVerifiedAccessTrustProvider)
createVerifiedAccessTrustProvider_description :: Lens.Lens' CreateVerifiedAccessTrustProvider (Prelude.Maybe Prelude.Text)
createVerifiedAccessTrustProvider_description :: Lens' CreateVerifiedAccessTrustProvider (Maybe Text)
createVerifiedAccessTrustProvider_description = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateVerifiedAccessTrustProvider' {Maybe Text
description :: Maybe Text
$sel:description:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe Text
description} -> Maybe Text
description) (\s :: CreateVerifiedAccessTrustProvider
s@CreateVerifiedAccessTrustProvider' {} Maybe Text
a -> CreateVerifiedAccessTrustProvider
s {$sel:description:CreateVerifiedAccessTrustProvider' :: Maybe Text
description = Maybe Text
a} :: CreateVerifiedAccessTrustProvider)
createVerifiedAccessTrustProvider_deviceOptions :: Lens.Lens' CreateVerifiedAccessTrustProvider (Prelude.Maybe CreateVerifiedAccessTrustProviderDeviceOptions)
createVerifiedAccessTrustProvider_deviceOptions :: Lens'
CreateVerifiedAccessTrustProvider
(Maybe CreateVerifiedAccessTrustProviderDeviceOptions)
createVerifiedAccessTrustProvider_deviceOptions = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateVerifiedAccessTrustProvider' {Maybe CreateVerifiedAccessTrustProviderDeviceOptions
deviceOptions :: Maybe CreateVerifiedAccessTrustProviderDeviceOptions
$sel:deviceOptions:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider
-> Maybe CreateVerifiedAccessTrustProviderDeviceOptions
deviceOptions} -> Maybe CreateVerifiedAccessTrustProviderDeviceOptions
deviceOptions) (\s :: CreateVerifiedAccessTrustProvider
s@CreateVerifiedAccessTrustProvider' {} Maybe CreateVerifiedAccessTrustProviderDeviceOptions
a -> CreateVerifiedAccessTrustProvider
s {$sel:deviceOptions:CreateVerifiedAccessTrustProvider' :: Maybe CreateVerifiedAccessTrustProviderDeviceOptions
deviceOptions = Maybe CreateVerifiedAccessTrustProviderDeviceOptions
a} :: CreateVerifiedAccessTrustProvider)
createVerifiedAccessTrustProvider_deviceTrustProviderType :: Lens.Lens' CreateVerifiedAccessTrustProvider (Prelude.Maybe DeviceTrustProviderType)
createVerifiedAccessTrustProvider_deviceTrustProviderType :: Lens'
CreateVerifiedAccessTrustProvider (Maybe DeviceTrustProviderType)
createVerifiedAccessTrustProvider_deviceTrustProviderType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateVerifiedAccessTrustProvider' {Maybe DeviceTrustProviderType
deviceTrustProviderType :: Maybe DeviceTrustProviderType
$sel:deviceTrustProviderType:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe DeviceTrustProviderType
deviceTrustProviderType} -> Maybe DeviceTrustProviderType
deviceTrustProviderType) (\s :: CreateVerifiedAccessTrustProvider
s@CreateVerifiedAccessTrustProvider' {} Maybe DeviceTrustProviderType
a -> CreateVerifiedAccessTrustProvider
s {$sel:deviceTrustProviderType:CreateVerifiedAccessTrustProvider' :: Maybe DeviceTrustProviderType
deviceTrustProviderType = Maybe DeviceTrustProviderType
a} :: CreateVerifiedAccessTrustProvider)
createVerifiedAccessTrustProvider_dryRun :: Lens.Lens' CreateVerifiedAccessTrustProvider (Prelude.Maybe Prelude.Bool)
createVerifiedAccessTrustProvider_dryRun :: Lens' CreateVerifiedAccessTrustProvider (Maybe Bool)
createVerifiedAccessTrustProvider_dryRun = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateVerifiedAccessTrustProvider' {Maybe Bool
dryRun :: Maybe Bool
$sel:dryRun:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe Bool
dryRun} -> Maybe Bool
dryRun) (\s :: CreateVerifiedAccessTrustProvider
s@CreateVerifiedAccessTrustProvider' {} Maybe Bool
a -> CreateVerifiedAccessTrustProvider
s {$sel:dryRun:CreateVerifiedAccessTrustProvider' :: Maybe Bool
dryRun = Maybe Bool
a} :: CreateVerifiedAccessTrustProvider)
createVerifiedAccessTrustProvider_oidcOptions :: Lens.Lens' CreateVerifiedAccessTrustProvider (Prelude.Maybe CreateVerifiedAccessTrustProviderOidcOptions)
createVerifiedAccessTrustProvider_oidcOptions :: Lens'
CreateVerifiedAccessTrustProvider
(Maybe CreateVerifiedAccessTrustProviderOidcOptions)
createVerifiedAccessTrustProvider_oidcOptions = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateVerifiedAccessTrustProvider' {Maybe CreateVerifiedAccessTrustProviderOidcOptions
oidcOptions :: Maybe CreateVerifiedAccessTrustProviderOidcOptions
$sel:oidcOptions:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider
-> Maybe CreateVerifiedAccessTrustProviderOidcOptions
oidcOptions} -> Maybe CreateVerifiedAccessTrustProviderOidcOptions
oidcOptions) (\s :: CreateVerifiedAccessTrustProvider
s@CreateVerifiedAccessTrustProvider' {} Maybe CreateVerifiedAccessTrustProviderOidcOptions
a -> CreateVerifiedAccessTrustProvider
s {$sel:oidcOptions:CreateVerifiedAccessTrustProvider' :: Maybe CreateVerifiedAccessTrustProviderOidcOptions
oidcOptions = Maybe CreateVerifiedAccessTrustProviderOidcOptions
a} :: CreateVerifiedAccessTrustProvider)
createVerifiedAccessTrustProvider_tagSpecifications :: Lens.Lens' CreateVerifiedAccessTrustProvider (Prelude.Maybe [TagSpecification])
createVerifiedAccessTrustProvider_tagSpecifications :: Lens' CreateVerifiedAccessTrustProvider (Maybe [TagSpecification])
createVerifiedAccessTrustProvider_tagSpecifications = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateVerifiedAccessTrustProvider' {Maybe [TagSpecification]
tagSpecifications :: Maybe [TagSpecification]
$sel:tagSpecifications:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe [TagSpecification]
tagSpecifications} -> Maybe [TagSpecification]
tagSpecifications) (\s :: CreateVerifiedAccessTrustProvider
s@CreateVerifiedAccessTrustProvider' {} Maybe [TagSpecification]
a -> CreateVerifiedAccessTrustProvider
s {$sel:tagSpecifications:CreateVerifiedAccessTrustProvider' :: Maybe [TagSpecification]
tagSpecifications = Maybe [TagSpecification]
a} :: CreateVerifiedAccessTrustProvider) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
createVerifiedAccessTrustProvider_userTrustProviderType :: Lens.Lens' CreateVerifiedAccessTrustProvider (Prelude.Maybe UserTrustProviderType)
createVerifiedAccessTrustProvider_userTrustProviderType :: Lens'
CreateVerifiedAccessTrustProvider (Maybe UserTrustProviderType)
createVerifiedAccessTrustProvider_userTrustProviderType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateVerifiedAccessTrustProvider' {Maybe UserTrustProviderType
userTrustProviderType :: Maybe UserTrustProviderType
$sel:userTrustProviderType:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe UserTrustProviderType
userTrustProviderType} -> Maybe UserTrustProviderType
userTrustProviderType) (\s :: CreateVerifiedAccessTrustProvider
s@CreateVerifiedAccessTrustProvider' {} Maybe UserTrustProviderType
a -> CreateVerifiedAccessTrustProvider
s {$sel:userTrustProviderType:CreateVerifiedAccessTrustProvider' :: Maybe UserTrustProviderType
userTrustProviderType = Maybe UserTrustProviderType
a} :: CreateVerifiedAccessTrustProvider)
createVerifiedAccessTrustProvider_trustProviderType :: Lens.Lens' CreateVerifiedAccessTrustProvider TrustProviderType
createVerifiedAccessTrustProvider_trustProviderType :: Lens' CreateVerifiedAccessTrustProvider TrustProviderType
createVerifiedAccessTrustProvider_trustProviderType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateVerifiedAccessTrustProvider' {TrustProviderType
trustProviderType :: TrustProviderType
$sel:trustProviderType:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> TrustProviderType
trustProviderType} -> TrustProviderType
trustProviderType) (\s :: CreateVerifiedAccessTrustProvider
s@CreateVerifiedAccessTrustProvider' {} TrustProviderType
a -> CreateVerifiedAccessTrustProvider
s {$sel:trustProviderType:CreateVerifiedAccessTrustProvider' :: TrustProviderType
trustProviderType = TrustProviderType
a} :: CreateVerifiedAccessTrustProvider)
createVerifiedAccessTrustProvider_policyReferenceName :: Lens.Lens' CreateVerifiedAccessTrustProvider Prelude.Text
createVerifiedAccessTrustProvider_policyReferenceName :: Lens' CreateVerifiedAccessTrustProvider Text
createVerifiedAccessTrustProvider_policyReferenceName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateVerifiedAccessTrustProvider' {Text
policyReferenceName :: Text
$sel:policyReferenceName:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Text
policyReferenceName} -> Text
policyReferenceName) (\s :: CreateVerifiedAccessTrustProvider
s@CreateVerifiedAccessTrustProvider' {} Text
a -> CreateVerifiedAccessTrustProvider
s {$sel:policyReferenceName:CreateVerifiedAccessTrustProvider' :: Text
policyReferenceName = Text
a} :: CreateVerifiedAccessTrustProvider)
instance
Core.AWSRequest
CreateVerifiedAccessTrustProvider
where
type
AWSResponse CreateVerifiedAccessTrustProvider =
CreateVerifiedAccessTrustProviderResponse
request :: (Service -> Service)
-> CreateVerifiedAccessTrustProvider
-> Request CreateVerifiedAccessTrustProvider
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 CreateVerifiedAccessTrustProvider
-> ClientResponse ClientBody
-> m (Either
Error
(ClientResponse (AWSResponse CreateVerifiedAccessTrustProvider)))
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 VerifiedAccessTrustProvider
-> Int -> CreateVerifiedAccessTrustProviderResponse
CreateVerifiedAccessTrustProviderResponse'
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
"verifiedAccessTrustProvider")
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
CreateVerifiedAccessTrustProvider
where
hashWithSalt :: Int -> CreateVerifiedAccessTrustProvider -> Int
hashWithSalt
Int
_salt
CreateVerifiedAccessTrustProvider' {Maybe Bool
Maybe [TagSpecification]
Maybe Text
Maybe CreateVerifiedAccessTrustProviderDeviceOptions
Maybe CreateVerifiedAccessTrustProviderOidcOptions
Maybe DeviceTrustProviderType
Maybe UserTrustProviderType
Text
TrustProviderType
policyReferenceName :: Text
trustProviderType :: TrustProviderType
userTrustProviderType :: Maybe UserTrustProviderType
tagSpecifications :: Maybe [TagSpecification]
oidcOptions :: Maybe CreateVerifiedAccessTrustProviderOidcOptions
dryRun :: Maybe Bool
deviceTrustProviderType :: Maybe DeviceTrustProviderType
deviceOptions :: Maybe CreateVerifiedAccessTrustProviderDeviceOptions
description :: Maybe Text
clientToken :: Maybe Text
$sel:policyReferenceName:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Text
$sel:trustProviderType:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> TrustProviderType
$sel:userTrustProviderType:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe UserTrustProviderType
$sel:tagSpecifications:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe [TagSpecification]
$sel:oidcOptions:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider
-> Maybe CreateVerifiedAccessTrustProviderOidcOptions
$sel:dryRun:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe Bool
$sel:deviceTrustProviderType:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe DeviceTrustProviderType
$sel:deviceOptions:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider
-> Maybe CreateVerifiedAccessTrustProviderDeviceOptions
$sel:description:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe Text
$sel:clientToken:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
clientToken
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
description
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe CreateVerifiedAccessTrustProviderDeviceOptions
deviceOptions
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe DeviceTrustProviderType
deviceTrustProviderType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
dryRun
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe CreateVerifiedAccessTrustProviderOidcOptions
oidcOptions
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [TagSpecification]
tagSpecifications
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe UserTrustProviderType
userTrustProviderType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` TrustProviderType
trustProviderType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
policyReferenceName
instance
Prelude.NFData
CreateVerifiedAccessTrustProvider
where
rnf :: CreateVerifiedAccessTrustProvider -> ()
rnf CreateVerifiedAccessTrustProvider' {Maybe Bool
Maybe [TagSpecification]
Maybe Text
Maybe CreateVerifiedAccessTrustProviderDeviceOptions
Maybe CreateVerifiedAccessTrustProviderOidcOptions
Maybe DeviceTrustProviderType
Maybe UserTrustProviderType
Text
TrustProviderType
policyReferenceName :: Text
trustProviderType :: TrustProviderType
userTrustProviderType :: Maybe UserTrustProviderType
tagSpecifications :: Maybe [TagSpecification]
oidcOptions :: Maybe CreateVerifiedAccessTrustProviderOidcOptions
dryRun :: Maybe Bool
deviceTrustProviderType :: Maybe DeviceTrustProviderType
deviceOptions :: Maybe CreateVerifiedAccessTrustProviderDeviceOptions
description :: Maybe Text
clientToken :: Maybe Text
$sel:policyReferenceName:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Text
$sel:trustProviderType:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> TrustProviderType
$sel:userTrustProviderType:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe UserTrustProviderType
$sel:tagSpecifications:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe [TagSpecification]
$sel:oidcOptions:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider
-> Maybe CreateVerifiedAccessTrustProviderOidcOptions
$sel:dryRun:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe Bool
$sel:deviceTrustProviderType:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe DeviceTrustProviderType
$sel:deviceOptions:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider
-> Maybe CreateVerifiedAccessTrustProviderDeviceOptions
$sel:description:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe Text
$sel:clientToken:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
clientToken
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
description
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe CreateVerifiedAccessTrustProviderDeviceOptions
deviceOptions
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe DeviceTrustProviderType
deviceTrustProviderType
seq :: forall a b. a -> b -> b
`Prelude.seq` 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 Maybe CreateVerifiedAccessTrustProviderOidcOptions
oidcOptions
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [TagSpecification]
tagSpecifications
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe UserTrustProviderType
userTrustProviderType
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf TrustProviderType
trustProviderType
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
policyReferenceName
instance
Data.ToHeaders
CreateVerifiedAccessTrustProvider
where
toHeaders :: CreateVerifiedAccessTrustProvider -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance
Data.ToPath
CreateVerifiedAccessTrustProvider
where
toPath :: CreateVerifiedAccessTrustProvider -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance
Data.ToQuery
CreateVerifiedAccessTrustProvider
where
toQuery :: CreateVerifiedAccessTrustProvider -> QueryString
toQuery CreateVerifiedAccessTrustProvider' {Maybe Bool
Maybe [TagSpecification]
Maybe Text
Maybe CreateVerifiedAccessTrustProviderDeviceOptions
Maybe CreateVerifiedAccessTrustProviderOidcOptions
Maybe DeviceTrustProviderType
Maybe UserTrustProviderType
Text
TrustProviderType
policyReferenceName :: Text
trustProviderType :: TrustProviderType
userTrustProviderType :: Maybe UserTrustProviderType
tagSpecifications :: Maybe [TagSpecification]
oidcOptions :: Maybe CreateVerifiedAccessTrustProviderOidcOptions
dryRun :: Maybe Bool
deviceTrustProviderType :: Maybe DeviceTrustProviderType
deviceOptions :: Maybe CreateVerifiedAccessTrustProviderDeviceOptions
description :: Maybe Text
clientToken :: Maybe Text
$sel:policyReferenceName:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Text
$sel:trustProviderType:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> TrustProviderType
$sel:userTrustProviderType:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe UserTrustProviderType
$sel:tagSpecifications:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe [TagSpecification]
$sel:oidcOptions:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider
-> Maybe CreateVerifiedAccessTrustProviderOidcOptions
$sel:dryRun:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe Bool
$sel:deviceTrustProviderType:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe DeviceTrustProviderType
$sel:deviceOptions:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider
-> Maybe CreateVerifiedAccessTrustProviderDeviceOptions
$sel:description:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe Text
$sel:clientToken:CreateVerifiedAccessTrustProvider' :: CreateVerifiedAccessTrustProvider -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"Action"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: ( ByteString
"CreateVerifiedAccessTrustProvider" ::
Prelude.ByteString
),
ByteString
"Version"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2016-11-15" :: Prelude.ByteString),
ByteString
"ClientToken" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
clientToken,
ByteString
"Description" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
description,
ByteString
"DeviceOptions" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe CreateVerifiedAccessTrustProviderDeviceOptions
deviceOptions,
ByteString
"DeviceTrustProviderType"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe DeviceTrustProviderType
deviceTrustProviderType,
ByteString
"DryRun" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Bool
dryRun,
ByteString
"OidcOptions" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe CreateVerifiedAccessTrustProviderOidcOptions
oidcOptions,
forall a. ToQuery a => a -> QueryString
Data.toQuery
( forall a.
(IsList a, ToQuery (Item a)) =>
ByteString -> a -> QueryString
Data.toQueryList ByteString
"TagSpecification"
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [TagSpecification]
tagSpecifications
),
ByteString
"UserTrustProviderType"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe UserTrustProviderType
userTrustProviderType,
ByteString
"TrustProviderType" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: TrustProviderType
trustProviderType,
ByteString
"PolicyReferenceName" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
policyReferenceName
]
data CreateVerifiedAccessTrustProviderResponse = CreateVerifiedAccessTrustProviderResponse'
{
CreateVerifiedAccessTrustProviderResponse
-> Maybe VerifiedAccessTrustProvider
verifiedAccessTrustProvider :: Prelude.Maybe VerifiedAccessTrustProvider,
CreateVerifiedAccessTrustProviderResponse -> Int
httpStatus :: Prelude.Int
}
deriving (CreateVerifiedAccessTrustProviderResponse
-> CreateVerifiedAccessTrustProviderResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CreateVerifiedAccessTrustProviderResponse
-> CreateVerifiedAccessTrustProviderResponse -> Bool
$c/= :: CreateVerifiedAccessTrustProviderResponse
-> CreateVerifiedAccessTrustProviderResponse -> Bool
== :: CreateVerifiedAccessTrustProviderResponse
-> CreateVerifiedAccessTrustProviderResponse -> Bool
$c== :: CreateVerifiedAccessTrustProviderResponse
-> CreateVerifiedAccessTrustProviderResponse -> Bool
Prelude.Eq, ReadPrec [CreateVerifiedAccessTrustProviderResponse]
ReadPrec CreateVerifiedAccessTrustProviderResponse
Int -> ReadS CreateVerifiedAccessTrustProviderResponse
ReadS [CreateVerifiedAccessTrustProviderResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [CreateVerifiedAccessTrustProviderResponse]
$creadListPrec :: ReadPrec [CreateVerifiedAccessTrustProviderResponse]
readPrec :: ReadPrec CreateVerifiedAccessTrustProviderResponse
$creadPrec :: ReadPrec CreateVerifiedAccessTrustProviderResponse
readList :: ReadS [CreateVerifiedAccessTrustProviderResponse]
$creadList :: ReadS [CreateVerifiedAccessTrustProviderResponse]
readsPrec :: Int -> ReadS CreateVerifiedAccessTrustProviderResponse
$creadsPrec :: Int -> ReadS CreateVerifiedAccessTrustProviderResponse
Prelude.Read, Int -> CreateVerifiedAccessTrustProviderResponse -> ShowS
[CreateVerifiedAccessTrustProviderResponse] -> ShowS
CreateVerifiedAccessTrustProviderResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CreateVerifiedAccessTrustProviderResponse] -> ShowS
$cshowList :: [CreateVerifiedAccessTrustProviderResponse] -> ShowS
show :: CreateVerifiedAccessTrustProviderResponse -> String
$cshow :: CreateVerifiedAccessTrustProviderResponse -> String
showsPrec :: Int -> CreateVerifiedAccessTrustProviderResponse -> ShowS
$cshowsPrec :: Int -> CreateVerifiedAccessTrustProviderResponse -> ShowS
Prelude.Show, forall x.
Rep CreateVerifiedAccessTrustProviderResponse x
-> CreateVerifiedAccessTrustProviderResponse
forall x.
CreateVerifiedAccessTrustProviderResponse
-> Rep CreateVerifiedAccessTrustProviderResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep CreateVerifiedAccessTrustProviderResponse x
-> CreateVerifiedAccessTrustProviderResponse
$cfrom :: forall x.
CreateVerifiedAccessTrustProviderResponse
-> Rep CreateVerifiedAccessTrustProviderResponse x
Prelude.Generic)
newCreateVerifiedAccessTrustProviderResponse ::
Prelude.Int ->
CreateVerifiedAccessTrustProviderResponse
newCreateVerifiedAccessTrustProviderResponse :: Int -> CreateVerifiedAccessTrustProviderResponse
newCreateVerifiedAccessTrustProviderResponse
Int
pHttpStatus_ =
CreateVerifiedAccessTrustProviderResponse'
{ $sel:verifiedAccessTrustProvider:CreateVerifiedAccessTrustProviderResponse' :: Maybe VerifiedAccessTrustProvider
verifiedAccessTrustProvider =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:CreateVerifiedAccessTrustProviderResponse' :: Int
httpStatus = Int
pHttpStatus_
}
createVerifiedAccessTrustProviderResponse_verifiedAccessTrustProvider :: Lens.Lens' CreateVerifiedAccessTrustProviderResponse (Prelude.Maybe VerifiedAccessTrustProvider)
createVerifiedAccessTrustProviderResponse_verifiedAccessTrustProvider :: Lens'
CreateVerifiedAccessTrustProviderResponse
(Maybe VerifiedAccessTrustProvider)
createVerifiedAccessTrustProviderResponse_verifiedAccessTrustProvider = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateVerifiedAccessTrustProviderResponse' {Maybe VerifiedAccessTrustProvider
verifiedAccessTrustProvider :: Maybe VerifiedAccessTrustProvider
$sel:verifiedAccessTrustProvider:CreateVerifiedAccessTrustProviderResponse' :: CreateVerifiedAccessTrustProviderResponse
-> Maybe VerifiedAccessTrustProvider
verifiedAccessTrustProvider} -> Maybe VerifiedAccessTrustProvider
verifiedAccessTrustProvider) (\s :: CreateVerifiedAccessTrustProviderResponse
s@CreateVerifiedAccessTrustProviderResponse' {} Maybe VerifiedAccessTrustProvider
a -> CreateVerifiedAccessTrustProviderResponse
s {$sel:verifiedAccessTrustProvider:CreateVerifiedAccessTrustProviderResponse' :: Maybe VerifiedAccessTrustProvider
verifiedAccessTrustProvider = Maybe VerifiedAccessTrustProvider
a} :: CreateVerifiedAccessTrustProviderResponse)
createVerifiedAccessTrustProviderResponse_httpStatus :: Lens.Lens' CreateVerifiedAccessTrustProviderResponse Prelude.Int
createVerifiedAccessTrustProviderResponse_httpStatus :: Lens' CreateVerifiedAccessTrustProviderResponse Int
createVerifiedAccessTrustProviderResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateVerifiedAccessTrustProviderResponse' {Int
httpStatus :: Int
$sel:httpStatus:CreateVerifiedAccessTrustProviderResponse' :: CreateVerifiedAccessTrustProviderResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: CreateVerifiedAccessTrustProviderResponse
s@CreateVerifiedAccessTrustProviderResponse' {} Int
a -> CreateVerifiedAccessTrustProviderResponse
s {$sel:httpStatus:CreateVerifiedAccessTrustProviderResponse' :: Int
httpStatus = Int
a} :: CreateVerifiedAccessTrustProviderResponse)
instance
Prelude.NFData
CreateVerifiedAccessTrustProviderResponse
where
rnf :: CreateVerifiedAccessTrustProviderResponse -> ()
rnf CreateVerifiedAccessTrustProviderResponse' {Int
Maybe VerifiedAccessTrustProvider
httpStatus :: Int
verifiedAccessTrustProvider :: Maybe VerifiedAccessTrustProvider
$sel:httpStatus:CreateVerifiedAccessTrustProviderResponse' :: CreateVerifiedAccessTrustProviderResponse -> Int
$sel:verifiedAccessTrustProvider:CreateVerifiedAccessTrustProviderResponse' :: CreateVerifiedAccessTrustProviderResponse
-> Maybe VerifiedAccessTrustProvider
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe VerifiedAccessTrustProvider
verifiedAccessTrustProvider
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus