{-# 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.Config.Types.AggregateConformancePackComplianceFilters where
import Amazonka.Config.Types.ConformancePackComplianceType
import qualified Amazonka.Core as Core
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
data AggregateConformancePackComplianceFilters = AggregateConformancePackComplianceFilters'
{
AggregateConformancePackComplianceFilters -> Maybe Text
conformancePackName :: Prelude.Maybe Prelude.Text,
AggregateConformancePackComplianceFilters -> Maybe Text
accountId :: Prelude.Maybe Prelude.Text,
AggregateConformancePackComplianceFilters
-> Maybe ConformancePackComplianceType
complianceType :: Prelude.Maybe ConformancePackComplianceType,
AggregateConformancePackComplianceFilters -> Maybe Text
awsRegion :: Prelude.Maybe Prelude.Text
}
deriving (AggregateConformancePackComplianceFilters
-> AggregateConformancePackComplianceFilters -> Bool
(AggregateConformancePackComplianceFilters
-> AggregateConformancePackComplianceFilters -> Bool)
-> (AggregateConformancePackComplianceFilters
-> AggregateConformancePackComplianceFilters -> Bool)
-> Eq AggregateConformancePackComplianceFilters
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: AggregateConformancePackComplianceFilters
-> AggregateConformancePackComplianceFilters -> Bool
$c/= :: AggregateConformancePackComplianceFilters
-> AggregateConformancePackComplianceFilters -> Bool
== :: AggregateConformancePackComplianceFilters
-> AggregateConformancePackComplianceFilters -> Bool
$c== :: AggregateConformancePackComplianceFilters
-> AggregateConformancePackComplianceFilters -> Bool
Prelude.Eq, ReadPrec [AggregateConformancePackComplianceFilters]
ReadPrec AggregateConformancePackComplianceFilters
Int -> ReadS AggregateConformancePackComplianceFilters
ReadS [AggregateConformancePackComplianceFilters]
(Int -> ReadS AggregateConformancePackComplianceFilters)
-> ReadS [AggregateConformancePackComplianceFilters]
-> ReadPrec AggregateConformancePackComplianceFilters
-> ReadPrec [AggregateConformancePackComplianceFilters]
-> Read AggregateConformancePackComplianceFilters
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [AggregateConformancePackComplianceFilters]
$creadListPrec :: ReadPrec [AggregateConformancePackComplianceFilters]
readPrec :: ReadPrec AggregateConformancePackComplianceFilters
$creadPrec :: ReadPrec AggregateConformancePackComplianceFilters
readList :: ReadS [AggregateConformancePackComplianceFilters]
$creadList :: ReadS [AggregateConformancePackComplianceFilters]
readsPrec :: Int -> ReadS AggregateConformancePackComplianceFilters
$creadsPrec :: Int -> ReadS AggregateConformancePackComplianceFilters
Prelude.Read, Int -> AggregateConformancePackComplianceFilters -> ShowS
[AggregateConformancePackComplianceFilters] -> ShowS
AggregateConformancePackComplianceFilters -> String
(Int -> AggregateConformancePackComplianceFilters -> ShowS)
-> (AggregateConformancePackComplianceFilters -> String)
-> ([AggregateConformancePackComplianceFilters] -> ShowS)
-> Show AggregateConformancePackComplianceFilters
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [AggregateConformancePackComplianceFilters] -> ShowS
$cshowList :: [AggregateConformancePackComplianceFilters] -> ShowS
show :: AggregateConformancePackComplianceFilters -> String
$cshow :: AggregateConformancePackComplianceFilters -> String
showsPrec :: Int -> AggregateConformancePackComplianceFilters -> ShowS
$cshowsPrec :: Int -> AggregateConformancePackComplianceFilters -> ShowS
Prelude.Show, (forall x.
AggregateConformancePackComplianceFilters
-> Rep AggregateConformancePackComplianceFilters x)
-> (forall x.
Rep AggregateConformancePackComplianceFilters x
-> AggregateConformancePackComplianceFilters)
-> Generic AggregateConformancePackComplianceFilters
forall x.
Rep AggregateConformancePackComplianceFilters x
-> AggregateConformancePackComplianceFilters
forall x.
AggregateConformancePackComplianceFilters
-> Rep AggregateConformancePackComplianceFilters x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep AggregateConformancePackComplianceFilters x
-> AggregateConformancePackComplianceFilters
$cfrom :: forall x.
AggregateConformancePackComplianceFilters
-> Rep AggregateConformancePackComplianceFilters x
Prelude.Generic)
newAggregateConformancePackComplianceFilters ::
AggregateConformancePackComplianceFilters
newAggregateConformancePackComplianceFilters :: AggregateConformancePackComplianceFilters
newAggregateConformancePackComplianceFilters =
AggregateConformancePackComplianceFilters' :: Maybe Text
-> Maybe Text
-> Maybe ConformancePackComplianceType
-> Maybe Text
-> AggregateConformancePackComplianceFilters
AggregateConformancePackComplianceFilters'
{ $sel:conformancePackName:AggregateConformancePackComplianceFilters' :: Maybe Text
conformancePackName =
Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:accountId:AggregateConformancePackComplianceFilters' :: Maybe Text
accountId = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:complianceType:AggregateConformancePackComplianceFilters' :: Maybe ConformancePackComplianceType
complianceType = Maybe ConformancePackComplianceType
forall a. Maybe a
Prelude.Nothing,
$sel:awsRegion:AggregateConformancePackComplianceFilters' :: Maybe Text
awsRegion = Maybe Text
forall a. Maybe a
Prelude.Nothing
}
aggregateConformancePackComplianceFilters_conformancePackName :: Lens.Lens' AggregateConformancePackComplianceFilters (Prelude.Maybe Prelude.Text)
aggregateConformancePackComplianceFilters_conformancePackName :: (Maybe Text -> f (Maybe Text))
-> AggregateConformancePackComplianceFilters
-> f AggregateConformancePackComplianceFilters
aggregateConformancePackComplianceFilters_conformancePackName = (AggregateConformancePackComplianceFilters -> Maybe Text)
-> (AggregateConformancePackComplianceFilters
-> Maybe Text -> AggregateConformancePackComplianceFilters)
-> Lens
AggregateConformancePackComplianceFilters
AggregateConformancePackComplianceFilters
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AggregateConformancePackComplianceFilters' {Maybe Text
conformancePackName :: Maybe Text
$sel:conformancePackName:AggregateConformancePackComplianceFilters' :: AggregateConformancePackComplianceFilters -> Maybe Text
conformancePackName} -> Maybe Text
conformancePackName) (\s :: AggregateConformancePackComplianceFilters
s@AggregateConformancePackComplianceFilters' {} Maybe Text
a -> AggregateConformancePackComplianceFilters
s {$sel:conformancePackName:AggregateConformancePackComplianceFilters' :: Maybe Text
conformancePackName = Maybe Text
a} :: AggregateConformancePackComplianceFilters)
aggregateConformancePackComplianceFilters_accountId :: Lens.Lens' AggregateConformancePackComplianceFilters (Prelude.Maybe Prelude.Text)
aggregateConformancePackComplianceFilters_accountId :: (Maybe Text -> f (Maybe Text))
-> AggregateConformancePackComplianceFilters
-> f AggregateConformancePackComplianceFilters
aggregateConformancePackComplianceFilters_accountId = (AggregateConformancePackComplianceFilters -> Maybe Text)
-> (AggregateConformancePackComplianceFilters
-> Maybe Text -> AggregateConformancePackComplianceFilters)
-> Lens
AggregateConformancePackComplianceFilters
AggregateConformancePackComplianceFilters
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AggregateConformancePackComplianceFilters' {Maybe Text
accountId :: Maybe Text
$sel:accountId:AggregateConformancePackComplianceFilters' :: AggregateConformancePackComplianceFilters -> Maybe Text
accountId} -> Maybe Text
accountId) (\s :: AggregateConformancePackComplianceFilters
s@AggregateConformancePackComplianceFilters' {} Maybe Text
a -> AggregateConformancePackComplianceFilters
s {$sel:accountId:AggregateConformancePackComplianceFilters' :: Maybe Text
accountId = Maybe Text
a} :: AggregateConformancePackComplianceFilters)
aggregateConformancePackComplianceFilters_complianceType :: Lens.Lens' AggregateConformancePackComplianceFilters (Prelude.Maybe ConformancePackComplianceType)
aggregateConformancePackComplianceFilters_complianceType :: (Maybe ConformancePackComplianceType
-> f (Maybe ConformancePackComplianceType))
-> AggregateConformancePackComplianceFilters
-> f AggregateConformancePackComplianceFilters
aggregateConformancePackComplianceFilters_complianceType = (AggregateConformancePackComplianceFilters
-> Maybe ConformancePackComplianceType)
-> (AggregateConformancePackComplianceFilters
-> Maybe ConformancePackComplianceType
-> AggregateConformancePackComplianceFilters)
-> Lens
AggregateConformancePackComplianceFilters
AggregateConformancePackComplianceFilters
(Maybe ConformancePackComplianceType)
(Maybe ConformancePackComplianceType)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AggregateConformancePackComplianceFilters' {Maybe ConformancePackComplianceType
complianceType :: Maybe ConformancePackComplianceType
$sel:complianceType:AggregateConformancePackComplianceFilters' :: AggregateConformancePackComplianceFilters
-> Maybe ConformancePackComplianceType
complianceType} -> Maybe ConformancePackComplianceType
complianceType) (\s :: AggregateConformancePackComplianceFilters
s@AggregateConformancePackComplianceFilters' {} Maybe ConformancePackComplianceType
a -> AggregateConformancePackComplianceFilters
s {$sel:complianceType:AggregateConformancePackComplianceFilters' :: Maybe ConformancePackComplianceType
complianceType = Maybe ConformancePackComplianceType
a} :: AggregateConformancePackComplianceFilters)
aggregateConformancePackComplianceFilters_awsRegion :: Lens.Lens' AggregateConformancePackComplianceFilters (Prelude.Maybe Prelude.Text)
aggregateConformancePackComplianceFilters_awsRegion :: (Maybe Text -> f (Maybe Text))
-> AggregateConformancePackComplianceFilters
-> f AggregateConformancePackComplianceFilters
aggregateConformancePackComplianceFilters_awsRegion = (AggregateConformancePackComplianceFilters -> Maybe Text)
-> (AggregateConformancePackComplianceFilters
-> Maybe Text -> AggregateConformancePackComplianceFilters)
-> Lens
AggregateConformancePackComplianceFilters
AggregateConformancePackComplianceFilters
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AggregateConformancePackComplianceFilters' {Maybe Text
awsRegion :: Maybe Text
$sel:awsRegion:AggregateConformancePackComplianceFilters' :: AggregateConformancePackComplianceFilters -> Maybe Text
awsRegion} -> Maybe Text
awsRegion) (\s :: AggregateConformancePackComplianceFilters
s@AggregateConformancePackComplianceFilters' {} Maybe Text
a -> AggregateConformancePackComplianceFilters
s {$sel:awsRegion:AggregateConformancePackComplianceFilters' :: Maybe Text
awsRegion = Maybe Text
a} :: AggregateConformancePackComplianceFilters)
instance
Prelude.Hashable
AggregateConformancePackComplianceFilters
instance
Prelude.NFData
AggregateConformancePackComplianceFilters
instance
Core.ToJSON
AggregateConformancePackComplianceFilters
where
toJSON :: AggregateConformancePackComplianceFilters -> Value
toJSON AggregateConformancePackComplianceFilters' {Maybe Text
Maybe ConformancePackComplianceType
awsRegion :: Maybe Text
complianceType :: Maybe ConformancePackComplianceType
accountId :: Maybe Text
conformancePackName :: Maybe Text
$sel:awsRegion:AggregateConformancePackComplianceFilters' :: AggregateConformancePackComplianceFilters -> Maybe Text
$sel:complianceType:AggregateConformancePackComplianceFilters' :: AggregateConformancePackComplianceFilters
-> Maybe ConformancePackComplianceType
$sel:accountId:AggregateConformancePackComplianceFilters' :: AggregateConformancePackComplianceFilters -> Maybe Text
$sel:conformancePackName:AggregateConformancePackComplianceFilters' :: AggregateConformancePackComplianceFilters -> Maybe Text
..} =
[Pair] -> Value
Core.object
( [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Text
"ConformancePackName" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
conformancePackName,
(Text
"AccountId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
accountId,
(Text
"ComplianceType" Text -> ConformancePackComplianceType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(ConformancePackComplianceType -> Pair)
-> Maybe ConformancePackComplianceType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ConformancePackComplianceType
complianceType,
(Text
"AwsRegion" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
awsRegion
]
)