{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.EC2.Types.VerifiedAccessTrustProviderCondensed where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.EC2.Internal
import Amazonka.EC2.Types.DeviceTrustProviderType
import Amazonka.EC2.Types.TrustProviderType
import Amazonka.EC2.Types.UserTrustProviderType
import qualified Amazonka.Prelude as Prelude
data VerifiedAccessTrustProviderCondensed = VerifiedAccessTrustProviderCondensed'
{
VerifiedAccessTrustProviderCondensed -> Maybe Text
description :: Prelude.Maybe Prelude.Text,
VerifiedAccessTrustProviderCondensed
-> Maybe DeviceTrustProviderType
deviceTrustProviderType :: Prelude.Maybe DeviceTrustProviderType,
VerifiedAccessTrustProviderCondensed -> Maybe TrustProviderType
trustProviderType :: Prelude.Maybe TrustProviderType,
VerifiedAccessTrustProviderCondensed -> Maybe UserTrustProviderType
userTrustProviderType :: Prelude.Maybe UserTrustProviderType,
VerifiedAccessTrustProviderCondensed -> Maybe Text
verifiedAccessTrustProviderId :: Prelude.Maybe Prelude.Text
}
deriving (VerifiedAccessTrustProviderCondensed
-> VerifiedAccessTrustProviderCondensed -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: VerifiedAccessTrustProviderCondensed
-> VerifiedAccessTrustProviderCondensed -> Bool
$c/= :: VerifiedAccessTrustProviderCondensed
-> VerifiedAccessTrustProviderCondensed -> Bool
== :: VerifiedAccessTrustProviderCondensed
-> VerifiedAccessTrustProviderCondensed -> Bool
$c== :: VerifiedAccessTrustProviderCondensed
-> VerifiedAccessTrustProviderCondensed -> Bool
Prelude.Eq, ReadPrec [VerifiedAccessTrustProviderCondensed]
ReadPrec VerifiedAccessTrustProviderCondensed
Int -> ReadS VerifiedAccessTrustProviderCondensed
ReadS [VerifiedAccessTrustProviderCondensed]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [VerifiedAccessTrustProviderCondensed]
$creadListPrec :: ReadPrec [VerifiedAccessTrustProviderCondensed]
readPrec :: ReadPrec VerifiedAccessTrustProviderCondensed
$creadPrec :: ReadPrec VerifiedAccessTrustProviderCondensed
readList :: ReadS [VerifiedAccessTrustProviderCondensed]
$creadList :: ReadS [VerifiedAccessTrustProviderCondensed]
readsPrec :: Int -> ReadS VerifiedAccessTrustProviderCondensed
$creadsPrec :: Int -> ReadS VerifiedAccessTrustProviderCondensed
Prelude.Read, Int -> VerifiedAccessTrustProviderCondensed -> ShowS
[VerifiedAccessTrustProviderCondensed] -> ShowS
VerifiedAccessTrustProviderCondensed -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [VerifiedAccessTrustProviderCondensed] -> ShowS
$cshowList :: [VerifiedAccessTrustProviderCondensed] -> ShowS
show :: VerifiedAccessTrustProviderCondensed -> String
$cshow :: VerifiedAccessTrustProviderCondensed -> String
showsPrec :: Int -> VerifiedAccessTrustProviderCondensed -> ShowS
$cshowsPrec :: Int -> VerifiedAccessTrustProviderCondensed -> ShowS
Prelude.Show, forall x.
Rep VerifiedAccessTrustProviderCondensed x
-> VerifiedAccessTrustProviderCondensed
forall x.
VerifiedAccessTrustProviderCondensed
-> Rep VerifiedAccessTrustProviderCondensed x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep VerifiedAccessTrustProviderCondensed x
-> VerifiedAccessTrustProviderCondensed
$cfrom :: forall x.
VerifiedAccessTrustProviderCondensed
-> Rep VerifiedAccessTrustProviderCondensed x
Prelude.Generic)
newVerifiedAccessTrustProviderCondensed ::
VerifiedAccessTrustProviderCondensed
newVerifiedAccessTrustProviderCondensed :: VerifiedAccessTrustProviderCondensed
newVerifiedAccessTrustProviderCondensed =
VerifiedAccessTrustProviderCondensed'
{ $sel:description:VerifiedAccessTrustProviderCondensed' :: Maybe Text
description =
forall a. Maybe a
Prelude.Nothing,
$sel:deviceTrustProviderType:VerifiedAccessTrustProviderCondensed' :: Maybe DeviceTrustProviderType
deviceTrustProviderType =
forall a. Maybe a
Prelude.Nothing,
$sel:trustProviderType:VerifiedAccessTrustProviderCondensed' :: Maybe TrustProviderType
trustProviderType = forall a. Maybe a
Prelude.Nothing,
$sel:userTrustProviderType:VerifiedAccessTrustProviderCondensed' :: Maybe UserTrustProviderType
userTrustProviderType =
forall a. Maybe a
Prelude.Nothing,
$sel:verifiedAccessTrustProviderId:VerifiedAccessTrustProviderCondensed' :: Maybe Text
verifiedAccessTrustProviderId =
forall a. Maybe a
Prelude.Nothing
}
verifiedAccessTrustProviderCondensed_description :: Lens.Lens' VerifiedAccessTrustProviderCondensed (Prelude.Maybe Prelude.Text)
verifiedAccessTrustProviderCondensed_description :: Lens' VerifiedAccessTrustProviderCondensed (Maybe Text)
verifiedAccessTrustProviderCondensed_description = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\VerifiedAccessTrustProviderCondensed' {Maybe Text
description :: Maybe Text
$sel:description:VerifiedAccessTrustProviderCondensed' :: VerifiedAccessTrustProviderCondensed -> Maybe Text
description} -> Maybe Text
description) (\s :: VerifiedAccessTrustProviderCondensed
s@VerifiedAccessTrustProviderCondensed' {} Maybe Text
a -> VerifiedAccessTrustProviderCondensed
s {$sel:description:VerifiedAccessTrustProviderCondensed' :: Maybe Text
description = Maybe Text
a} :: VerifiedAccessTrustProviderCondensed)
verifiedAccessTrustProviderCondensed_deviceTrustProviderType :: Lens.Lens' VerifiedAccessTrustProviderCondensed (Prelude.Maybe DeviceTrustProviderType)
verifiedAccessTrustProviderCondensed_deviceTrustProviderType :: Lens'
VerifiedAccessTrustProviderCondensed
(Maybe DeviceTrustProviderType)
verifiedAccessTrustProviderCondensed_deviceTrustProviderType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\VerifiedAccessTrustProviderCondensed' {Maybe DeviceTrustProviderType
deviceTrustProviderType :: Maybe DeviceTrustProviderType
$sel:deviceTrustProviderType:VerifiedAccessTrustProviderCondensed' :: VerifiedAccessTrustProviderCondensed
-> Maybe DeviceTrustProviderType
deviceTrustProviderType} -> Maybe DeviceTrustProviderType
deviceTrustProviderType) (\s :: VerifiedAccessTrustProviderCondensed
s@VerifiedAccessTrustProviderCondensed' {} Maybe DeviceTrustProviderType
a -> VerifiedAccessTrustProviderCondensed
s {$sel:deviceTrustProviderType:VerifiedAccessTrustProviderCondensed' :: Maybe DeviceTrustProviderType
deviceTrustProviderType = Maybe DeviceTrustProviderType
a} :: VerifiedAccessTrustProviderCondensed)
verifiedAccessTrustProviderCondensed_trustProviderType :: Lens.Lens' VerifiedAccessTrustProviderCondensed (Prelude.Maybe TrustProviderType)
verifiedAccessTrustProviderCondensed_trustProviderType :: Lens'
VerifiedAccessTrustProviderCondensed (Maybe TrustProviderType)
verifiedAccessTrustProviderCondensed_trustProviderType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\VerifiedAccessTrustProviderCondensed' {Maybe TrustProviderType
trustProviderType :: Maybe TrustProviderType
$sel:trustProviderType:VerifiedAccessTrustProviderCondensed' :: VerifiedAccessTrustProviderCondensed -> Maybe TrustProviderType
trustProviderType} -> Maybe TrustProviderType
trustProviderType) (\s :: VerifiedAccessTrustProviderCondensed
s@VerifiedAccessTrustProviderCondensed' {} Maybe TrustProviderType
a -> VerifiedAccessTrustProviderCondensed
s {$sel:trustProviderType:VerifiedAccessTrustProviderCondensed' :: Maybe TrustProviderType
trustProviderType = Maybe TrustProviderType
a} :: VerifiedAccessTrustProviderCondensed)
verifiedAccessTrustProviderCondensed_userTrustProviderType :: Lens.Lens' VerifiedAccessTrustProviderCondensed (Prelude.Maybe UserTrustProviderType)
verifiedAccessTrustProviderCondensed_userTrustProviderType :: Lens'
VerifiedAccessTrustProviderCondensed (Maybe UserTrustProviderType)
verifiedAccessTrustProviderCondensed_userTrustProviderType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\VerifiedAccessTrustProviderCondensed' {Maybe UserTrustProviderType
userTrustProviderType :: Maybe UserTrustProviderType
$sel:userTrustProviderType:VerifiedAccessTrustProviderCondensed' :: VerifiedAccessTrustProviderCondensed -> Maybe UserTrustProviderType
userTrustProviderType} -> Maybe UserTrustProviderType
userTrustProviderType) (\s :: VerifiedAccessTrustProviderCondensed
s@VerifiedAccessTrustProviderCondensed' {} Maybe UserTrustProviderType
a -> VerifiedAccessTrustProviderCondensed
s {$sel:userTrustProviderType:VerifiedAccessTrustProviderCondensed' :: Maybe UserTrustProviderType
userTrustProviderType = Maybe UserTrustProviderType
a} :: VerifiedAccessTrustProviderCondensed)
verifiedAccessTrustProviderCondensed_verifiedAccessTrustProviderId :: Lens.Lens' VerifiedAccessTrustProviderCondensed (Prelude.Maybe Prelude.Text)
verifiedAccessTrustProviderCondensed_verifiedAccessTrustProviderId :: Lens' VerifiedAccessTrustProviderCondensed (Maybe Text)
verifiedAccessTrustProviderCondensed_verifiedAccessTrustProviderId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\VerifiedAccessTrustProviderCondensed' {Maybe Text
verifiedAccessTrustProviderId :: Maybe Text
$sel:verifiedAccessTrustProviderId:VerifiedAccessTrustProviderCondensed' :: VerifiedAccessTrustProviderCondensed -> Maybe Text
verifiedAccessTrustProviderId} -> Maybe Text
verifiedAccessTrustProviderId) (\s :: VerifiedAccessTrustProviderCondensed
s@VerifiedAccessTrustProviderCondensed' {} Maybe Text
a -> VerifiedAccessTrustProviderCondensed
s {$sel:verifiedAccessTrustProviderId:VerifiedAccessTrustProviderCondensed' :: Maybe Text
verifiedAccessTrustProviderId = Maybe Text
a} :: VerifiedAccessTrustProviderCondensed)
instance
Data.FromXML
VerifiedAccessTrustProviderCondensed
where
parseXML :: [Node] -> Either String VerifiedAccessTrustProviderCondensed
parseXML [Node]
x =
Maybe Text
-> Maybe DeviceTrustProviderType
-> Maybe TrustProviderType
-> Maybe UserTrustProviderType
-> Maybe Text
-> VerifiedAccessTrustProviderCondensed
VerifiedAccessTrustProviderCondensed'
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
"description")
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
"deviceTrustProviderType")
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
"trustProviderType")
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
"userTrustProviderType")
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
"verifiedAccessTrustProviderId")
instance
Prelude.Hashable
VerifiedAccessTrustProviderCondensed
where
hashWithSalt :: Int -> VerifiedAccessTrustProviderCondensed -> Int
hashWithSalt
Int
_salt
VerifiedAccessTrustProviderCondensed' {Maybe Text
Maybe DeviceTrustProviderType
Maybe TrustProviderType
Maybe UserTrustProviderType
verifiedAccessTrustProviderId :: Maybe Text
userTrustProviderType :: Maybe UserTrustProviderType
trustProviderType :: Maybe TrustProviderType
deviceTrustProviderType :: Maybe DeviceTrustProviderType
description :: Maybe Text
$sel:verifiedAccessTrustProviderId:VerifiedAccessTrustProviderCondensed' :: VerifiedAccessTrustProviderCondensed -> Maybe Text
$sel:userTrustProviderType:VerifiedAccessTrustProviderCondensed' :: VerifiedAccessTrustProviderCondensed -> Maybe UserTrustProviderType
$sel:trustProviderType:VerifiedAccessTrustProviderCondensed' :: VerifiedAccessTrustProviderCondensed -> Maybe TrustProviderType
$sel:deviceTrustProviderType:VerifiedAccessTrustProviderCondensed' :: VerifiedAccessTrustProviderCondensed
-> Maybe DeviceTrustProviderType
$sel:description:VerifiedAccessTrustProviderCondensed' :: VerifiedAccessTrustProviderCondensed -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
description
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe DeviceTrustProviderType
deviceTrustProviderType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe TrustProviderType
trustProviderType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe UserTrustProviderType
userTrustProviderType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
verifiedAccessTrustProviderId
instance
Prelude.NFData
VerifiedAccessTrustProviderCondensed
where
rnf :: VerifiedAccessTrustProviderCondensed -> ()
rnf VerifiedAccessTrustProviderCondensed' {Maybe Text
Maybe DeviceTrustProviderType
Maybe TrustProviderType
Maybe UserTrustProviderType
verifiedAccessTrustProviderId :: Maybe Text
userTrustProviderType :: Maybe UserTrustProviderType
trustProviderType :: Maybe TrustProviderType
deviceTrustProviderType :: Maybe DeviceTrustProviderType
description :: Maybe Text
$sel:verifiedAccessTrustProviderId:VerifiedAccessTrustProviderCondensed' :: VerifiedAccessTrustProviderCondensed -> Maybe Text
$sel:userTrustProviderType:VerifiedAccessTrustProviderCondensed' :: VerifiedAccessTrustProviderCondensed -> Maybe UserTrustProviderType
$sel:trustProviderType:VerifiedAccessTrustProviderCondensed' :: VerifiedAccessTrustProviderCondensed -> Maybe TrustProviderType
$sel:deviceTrustProviderType:VerifiedAccessTrustProviderCondensed' :: VerifiedAccessTrustProviderCondensed
-> Maybe DeviceTrustProviderType
$sel:description:VerifiedAccessTrustProviderCondensed' :: VerifiedAccessTrustProviderCondensed -> Maybe Text
..} =
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 DeviceTrustProviderType
deviceTrustProviderType
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe TrustProviderType
trustProviderType
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 Maybe Text
verifiedAccessTrustProviderId