module Stratosphere.Macie.FindingsFilter (
module Exports, FindingsFilter(..), mkFindingsFilter
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.Macie.FindingsFilter.FindingCriteriaProperty as Exports
import Stratosphere.ResourceProperties
import Stratosphere.Tag
import Stratosphere.Value
data FindingsFilter
=
FindingsFilter {FindingsFilter -> ()
haddock_workaround_ :: (),
FindingsFilter -> Maybe (Value Text)
action :: (Prelude.Maybe (Value Prelude.Text)),
FindingsFilter -> Maybe (Value Text)
description :: (Prelude.Maybe (Value Prelude.Text)),
FindingsFilter -> FindingCriteriaProperty
findingCriteria :: FindingCriteriaProperty,
FindingsFilter -> Value Text
name :: (Value Prelude.Text),
FindingsFilter -> Maybe (Value Integer)
position :: (Prelude.Maybe (Value Prelude.Integer)),
FindingsFilter -> Maybe [Tag]
tags :: (Prelude.Maybe [Tag])}
deriving stock (FindingsFilter -> FindingsFilter -> Bool
(FindingsFilter -> FindingsFilter -> Bool)
-> (FindingsFilter -> FindingsFilter -> Bool) -> Eq FindingsFilter
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: FindingsFilter -> FindingsFilter -> Bool
== :: FindingsFilter -> FindingsFilter -> Bool
$c/= :: FindingsFilter -> FindingsFilter -> Bool
/= :: FindingsFilter -> FindingsFilter -> Bool
Prelude.Eq, Int -> FindingsFilter -> ShowS
[FindingsFilter] -> ShowS
FindingsFilter -> String
(Int -> FindingsFilter -> ShowS)
-> (FindingsFilter -> String)
-> ([FindingsFilter] -> ShowS)
-> Show FindingsFilter
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> FindingsFilter -> ShowS
showsPrec :: Int -> FindingsFilter -> ShowS
$cshow :: FindingsFilter -> String
show :: FindingsFilter -> String
$cshowList :: [FindingsFilter] -> ShowS
showList :: [FindingsFilter] -> ShowS
Prelude.Show)
mkFindingsFilter ::
FindingCriteriaProperty -> Value Prelude.Text -> FindingsFilter
mkFindingsFilter :: FindingCriteriaProperty -> Value Text -> FindingsFilter
mkFindingsFilter FindingCriteriaProperty
findingCriteria Value Text
name
= FindingsFilter
{haddock_workaround_ :: ()
haddock_workaround_ = (), findingCriteria :: FindingCriteriaProperty
findingCriteria = FindingCriteriaProperty
findingCriteria,
name :: Value Text
name = Value Text
name, action :: Maybe (Value Text)
action = Maybe (Value Text)
forall a. Maybe a
Prelude.Nothing,
description :: Maybe (Value Text)
description = Maybe (Value Text)
forall a. Maybe a
Prelude.Nothing, position :: Maybe (Value Integer)
position = Maybe (Value Integer)
forall a. Maybe a
Prelude.Nothing,
tags :: Maybe [Tag]
tags = Maybe [Tag]
forall a. Maybe a
Prelude.Nothing}
instance ToResourceProperties FindingsFilter where
toResourceProperties :: FindingsFilter -> ResourceProperties
toResourceProperties FindingsFilter {Maybe [Tag]
Maybe (Value Integer)
Maybe (Value Text)
()
Value Text
FindingCriteriaProperty
haddock_workaround_ :: FindingsFilter -> ()
action :: FindingsFilter -> Maybe (Value Text)
description :: FindingsFilter -> Maybe (Value Text)
findingCriteria :: FindingsFilter -> FindingCriteriaProperty
name :: FindingsFilter -> Value Text
position :: FindingsFilter -> Maybe (Value Integer)
tags :: FindingsFilter -> Maybe [Tag]
haddock_workaround_ :: ()
action :: Maybe (Value Text)
description :: Maybe (Value Text)
findingCriteria :: FindingCriteriaProperty
name :: Value Text
position :: Maybe (Value Integer)
tags :: Maybe [Tag]
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::Macie::FindingsFilter",
supportsTags :: Bool
supportsTags = Bool
Prelude.True,
properties :: Object
properties = [Item Object] -> Object
forall l. IsList l => [Item l] -> l
Prelude.fromList
([(Key, Value)] -> [(Key, Value)] -> [(Key, Value)]
forall a. Semigroup a => a -> a -> a
(Prelude.<>)
[Key
"FindingCriteria" Key -> FindingCriteriaProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= FindingCriteriaProperty
findingCriteria, Key
"Name" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
name]
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Action" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
action,
Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Description" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
description,
Key -> Value Integer -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Position" (Value Integer -> (Key, Value))
-> Maybe (Value Integer) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Integer)
position,
Key -> [Tag] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Tags" ([Tag] -> (Key, Value)) -> Maybe [Tag] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [Tag]
tags]))}
instance JSON.ToJSON FindingsFilter where
toJSON :: FindingsFilter -> Value
toJSON FindingsFilter {Maybe [Tag]
Maybe (Value Integer)
Maybe (Value Text)
()
Value Text
FindingCriteriaProperty
haddock_workaround_ :: FindingsFilter -> ()
action :: FindingsFilter -> Maybe (Value Text)
description :: FindingsFilter -> Maybe (Value Text)
findingCriteria :: FindingsFilter -> FindingCriteriaProperty
name :: FindingsFilter -> Value Text
position :: FindingsFilter -> Maybe (Value Integer)
tags :: FindingsFilter -> Maybe [Tag]
haddock_workaround_ :: ()
action :: Maybe (Value Text)
description :: Maybe (Value Text)
findingCriteria :: FindingCriteriaProperty
name :: Value Text
position :: Maybe (Value Integer)
tags :: Maybe [Tag]
..}
= [(Key, Value)] -> Value
JSON.object
([Item [(Key, Value)]] -> [(Key, Value)]
forall l. IsList l => [Item l] -> l
Prelude.fromList
([(Key, Value)] -> [(Key, Value)] -> [(Key, Value)]
forall a. Semigroup a => a -> a -> a
(Prelude.<>)
[Key
"FindingCriteria" Key -> FindingCriteriaProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= FindingCriteriaProperty
findingCriteria, Key
"Name" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
name]
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Action" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
action,
Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Description" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
description,
Key -> Value Integer -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Position" (Value Integer -> (Key, Value))
-> Maybe (Value Integer) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Integer)
position,
Key -> [Tag] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Tags" ([Tag] -> (Key, Value)) -> Maybe [Tag] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [Tag]
tags])))
instance Property "Action" FindingsFilter where
type PropertyType "Action" FindingsFilter = Value Prelude.Text
set :: PropertyType "Action" FindingsFilter
-> FindingsFilter -> FindingsFilter
set PropertyType "Action" FindingsFilter
newValue FindingsFilter {Maybe [Tag]
Maybe (Value Integer)
Maybe (Value Text)
()
Value Text
FindingCriteriaProperty
haddock_workaround_ :: FindingsFilter -> ()
action :: FindingsFilter -> Maybe (Value Text)
description :: FindingsFilter -> Maybe (Value Text)
findingCriteria :: FindingsFilter -> FindingCriteriaProperty
name :: FindingsFilter -> Value Text
position :: FindingsFilter -> Maybe (Value Integer)
tags :: FindingsFilter -> Maybe [Tag]
haddock_workaround_ :: ()
action :: Maybe (Value Text)
description :: Maybe (Value Text)
findingCriteria :: FindingCriteriaProperty
name :: Value Text
position :: Maybe (Value Integer)
tags :: Maybe [Tag]
..}
= FindingsFilter {action :: Maybe (Value Text)
action = Value Text -> Maybe (Value Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "Action" FindingsFilter
Value Text
newValue, Maybe [Tag]
Maybe (Value Integer)
Maybe (Value Text)
()
Value Text
FindingCriteriaProperty
haddock_workaround_ :: ()
description :: Maybe (Value Text)
findingCriteria :: FindingCriteriaProperty
name :: Value Text
position :: Maybe (Value Integer)
tags :: Maybe [Tag]
haddock_workaround_ :: ()
description :: Maybe (Value Text)
findingCriteria :: FindingCriteriaProperty
name :: Value Text
position :: Maybe (Value Integer)
tags :: Maybe [Tag]
..}
instance Property "Description" FindingsFilter where
type PropertyType "Description" FindingsFilter = Value Prelude.Text
set :: PropertyType "Description" FindingsFilter
-> FindingsFilter -> FindingsFilter
set PropertyType "Description" FindingsFilter
newValue FindingsFilter {Maybe [Tag]
Maybe (Value Integer)
Maybe (Value Text)
()
Value Text
FindingCriteriaProperty
haddock_workaround_ :: FindingsFilter -> ()
action :: FindingsFilter -> Maybe (Value Text)
description :: FindingsFilter -> Maybe (Value Text)
findingCriteria :: FindingsFilter -> FindingCriteriaProperty
name :: FindingsFilter -> Value Text
position :: FindingsFilter -> Maybe (Value Integer)
tags :: FindingsFilter -> Maybe [Tag]
haddock_workaround_ :: ()
action :: Maybe (Value Text)
description :: Maybe (Value Text)
findingCriteria :: FindingCriteriaProperty
name :: Value Text
position :: Maybe (Value Integer)
tags :: Maybe [Tag]
..}
= FindingsFilter {description :: Maybe (Value Text)
description = Value Text -> Maybe (Value Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "Description" FindingsFilter
Value Text
newValue, Maybe [Tag]
Maybe (Value Integer)
Maybe (Value Text)
()
Value Text
FindingCriteriaProperty
haddock_workaround_ :: ()
action :: Maybe (Value Text)
findingCriteria :: FindingCriteriaProperty
name :: Value Text
position :: Maybe (Value Integer)
tags :: Maybe [Tag]
haddock_workaround_ :: ()
action :: Maybe (Value Text)
findingCriteria :: FindingCriteriaProperty
name :: Value Text
position :: Maybe (Value Integer)
tags :: Maybe [Tag]
..}
instance Property "FindingCriteria" FindingsFilter where
type PropertyType "FindingCriteria" FindingsFilter = FindingCriteriaProperty
set :: PropertyType "FindingCriteria" FindingsFilter
-> FindingsFilter -> FindingsFilter
set PropertyType "FindingCriteria" FindingsFilter
newValue FindingsFilter {Maybe [Tag]
Maybe (Value Integer)
Maybe (Value Text)
()
Value Text
FindingCriteriaProperty
haddock_workaround_ :: FindingsFilter -> ()
action :: FindingsFilter -> Maybe (Value Text)
description :: FindingsFilter -> Maybe (Value Text)
findingCriteria :: FindingsFilter -> FindingCriteriaProperty
name :: FindingsFilter -> Value Text
position :: FindingsFilter -> Maybe (Value Integer)
tags :: FindingsFilter -> Maybe [Tag]
haddock_workaround_ :: ()
action :: Maybe (Value Text)
description :: Maybe (Value Text)
findingCriteria :: FindingCriteriaProperty
name :: Value Text
position :: Maybe (Value Integer)
tags :: Maybe [Tag]
..}
= FindingsFilter {findingCriteria :: FindingCriteriaProperty
findingCriteria = PropertyType "FindingCriteria" FindingsFilter
FindingCriteriaProperty
newValue, Maybe [Tag]
Maybe (Value Integer)
Maybe (Value Text)
()
Value Text
haddock_workaround_ :: ()
action :: Maybe (Value Text)
description :: Maybe (Value Text)
name :: Value Text
position :: Maybe (Value Integer)
tags :: Maybe [Tag]
haddock_workaround_ :: ()
action :: Maybe (Value Text)
description :: Maybe (Value Text)
name :: Value Text
position :: Maybe (Value Integer)
tags :: Maybe [Tag]
..}
instance Property "Name" FindingsFilter where
type PropertyType "Name" FindingsFilter = Value Prelude.Text
set :: PropertyType "Name" FindingsFilter
-> FindingsFilter -> FindingsFilter
set PropertyType "Name" FindingsFilter
newValue FindingsFilter {Maybe [Tag]
Maybe (Value Integer)
Maybe (Value Text)
()
Value Text
FindingCriteriaProperty
haddock_workaround_ :: FindingsFilter -> ()
action :: FindingsFilter -> Maybe (Value Text)
description :: FindingsFilter -> Maybe (Value Text)
findingCriteria :: FindingsFilter -> FindingCriteriaProperty
name :: FindingsFilter -> Value Text
position :: FindingsFilter -> Maybe (Value Integer)
tags :: FindingsFilter -> Maybe [Tag]
haddock_workaround_ :: ()
action :: Maybe (Value Text)
description :: Maybe (Value Text)
findingCriteria :: FindingCriteriaProperty
name :: Value Text
position :: Maybe (Value Integer)
tags :: Maybe [Tag]
..}
= FindingsFilter {name :: Value Text
name = PropertyType "Name" FindingsFilter
Value Text
newValue, Maybe [Tag]
Maybe (Value Integer)
Maybe (Value Text)
()
FindingCriteriaProperty
haddock_workaround_ :: ()
action :: Maybe (Value Text)
description :: Maybe (Value Text)
findingCriteria :: FindingCriteriaProperty
position :: Maybe (Value Integer)
tags :: Maybe [Tag]
haddock_workaround_ :: ()
action :: Maybe (Value Text)
description :: Maybe (Value Text)
findingCriteria :: FindingCriteriaProperty
position :: Maybe (Value Integer)
tags :: Maybe [Tag]
..}
instance Property "Position" FindingsFilter where
type PropertyType "Position" FindingsFilter = Value Prelude.Integer
set :: PropertyType "Position" FindingsFilter
-> FindingsFilter -> FindingsFilter
set PropertyType "Position" FindingsFilter
newValue FindingsFilter {Maybe [Tag]
Maybe (Value Integer)
Maybe (Value Text)
()
Value Text
FindingCriteriaProperty
haddock_workaround_ :: FindingsFilter -> ()
action :: FindingsFilter -> Maybe (Value Text)
description :: FindingsFilter -> Maybe (Value Text)
findingCriteria :: FindingsFilter -> FindingCriteriaProperty
name :: FindingsFilter -> Value Text
position :: FindingsFilter -> Maybe (Value Integer)
tags :: FindingsFilter -> Maybe [Tag]
haddock_workaround_ :: ()
action :: Maybe (Value Text)
description :: Maybe (Value Text)
findingCriteria :: FindingCriteriaProperty
name :: Value Text
position :: Maybe (Value Integer)
tags :: Maybe [Tag]
..}
= FindingsFilter {position :: Maybe (Value Integer)
position = Value Integer -> Maybe (Value Integer)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "Position" FindingsFilter
Value Integer
newValue, Maybe [Tag]
Maybe (Value Text)
()
Value Text
FindingCriteriaProperty
haddock_workaround_ :: ()
action :: Maybe (Value Text)
description :: Maybe (Value Text)
findingCriteria :: FindingCriteriaProperty
name :: Value Text
tags :: Maybe [Tag]
haddock_workaround_ :: ()
action :: Maybe (Value Text)
description :: Maybe (Value Text)
findingCriteria :: FindingCriteriaProperty
name :: Value Text
tags :: Maybe [Tag]
..}
instance Property "Tags" FindingsFilter where
type PropertyType "Tags" FindingsFilter = [Tag]
set :: PropertyType "Tags" FindingsFilter
-> FindingsFilter -> FindingsFilter
set PropertyType "Tags" FindingsFilter
newValue FindingsFilter {Maybe [Tag]
Maybe (Value Integer)
Maybe (Value Text)
()
Value Text
FindingCriteriaProperty
haddock_workaround_ :: FindingsFilter -> ()
action :: FindingsFilter -> Maybe (Value Text)
description :: FindingsFilter -> Maybe (Value Text)
findingCriteria :: FindingsFilter -> FindingCriteriaProperty
name :: FindingsFilter -> Value Text
position :: FindingsFilter -> Maybe (Value Integer)
tags :: FindingsFilter -> Maybe [Tag]
haddock_workaround_ :: ()
action :: Maybe (Value Text)
description :: Maybe (Value Text)
findingCriteria :: FindingCriteriaProperty
name :: Value Text
position :: Maybe (Value Integer)
tags :: Maybe [Tag]
..}
= FindingsFilter {tags :: Maybe [Tag]
tags = [Tag] -> Maybe [Tag]
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure [Tag]
PropertyType "Tags" FindingsFilter
newValue, Maybe (Value Integer)
Maybe (Value Text)
()
Value Text
FindingCriteriaProperty
haddock_workaround_ :: ()
action :: Maybe (Value Text)
description :: Maybe (Value Text)
findingCriteria :: FindingCriteriaProperty
name :: Value Text
position :: Maybe (Value Integer)
haddock_workaround_ :: ()
action :: Maybe (Value Text)
description :: Maybe (Value Text)
findingCriteria :: FindingCriteriaProperty
name :: Value Text
position :: Maybe (Value Integer)
..}