module Stratosphere.CloudFormation.GuardHook.TargetFiltersProperty (
module Exports, TargetFiltersProperty(..), mkTargetFiltersProperty
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.CloudFormation.GuardHook.HookTargetProperty as Exports
import Stratosphere.ResourceProperties
import Stratosphere.Value
data TargetFiltersProperty
=
TargetFiltersProperty {TargetFiltersProperty -> ()
haddock_workaround_ :: (),
TargetFiltersProperty -> Maybe (ValueList Text)
actions :: (Prelude.Maybe (ValueList Prelude.Text)),
TargetFiltersProperty -> Maybe (ValueList Text)
invocationPoints :: (Prelude.Maybe (ValueList Prelude.Text)),
TargetFiltersProperty -> Maybe (ValueList Text)
targetNames :: (Prelude.Maybe (ValueList Prelude.Text)),
TargetFiltersProperty -> Maybe [HookTargetProperty]
targets :: (Prelude.Maybe [HookTargetProperty])}
deriving stock (TargetFiltersProperty -> TargetFiltersProperty -> Bool
(TargetFiltersProperty -> TargetFiltersProperty -> Bool)
-> (TargetFiltersProperty -> TargetFiltersProperty -> Bool)
-> Eq TargetFiltersProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: TargetFiltersProperty -> TargetFiltersProperty -> Bool
== :: TargetFiltersProperty -> TargetFiltersProperty -> Bool
$c/= :: TargetFiltersProperty -> TargetFiltersProperty -> Bool
/= :: TargetFiltersProperty -> TargetFiltersProperty -> Bool
Prelude.Eq, Int -> TargetFiltersProperty -> ShowS
[TargetFiltersProperty] -> ShowS
TargetFiltersProperty -> String
(Int -> TargetFiltersProperty -> ShowS)
-> (TargetFiltersProperty -> String)
-> ([TargetFiltersProperty] -> ShowS)
-> Show TargetFiltersProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> TargetFiltersProperty -> ShowS
showsPrec :: Int -> TargetFiltersProperty -> ShowS
$cshow :: TargetFiltersProperty -> String
show :: TargetFiltersProperty -> String
$cshowList :: [TargetFiltersProperty] -> ShowS
showList :: [TargetFiltersProperty] -> ShowS
Prelude.Show)
mkTargetFiltersProperty :: TargetFiltersProperty
mkTargetFiltersProperty :: TargetFiltersProperty
mkTargetFiltersProperty
= TargetFiltersProperty
{haddock_workaround_ :: ()
haddock_workaround_ = (), actions :: Maybe (ValueList Text)
actions = Maybe (ValueList Text)
forall a. Maybe a
Prelude.Nothing,
invocationPoints :: Maybe (ValueList Text)
invocationPoints = Maybe (ValueList Text)
forall a. Maybe a
Prelude.Nothing, targetNames :: Maybe (ValueList Text)
targetNames = Maybe (ValueList Text)
forall a. Maybe a
Prelude.Nothing,
targets :: Maybe [HookTargetProperty]
targets = Maybe [HookTargetProperty]
forall a. Maybe a
Prelude.Nothing}
instance ToResourceProperties TargetFiltersProperty where
toResourceProperties :: TargetFiltersProperty -> ResourceProperties
toResourceProperties TargetFiltersProperty {Maybe [HookTargetProperty]
Maybe (ValueList Text)
()
haddock_workaround_ :: TargetFiltersProperty -> ()
actions :: TargetFiltersProperty -> Maybe (ValueList Text)
invocationPoints :: TargetFiltersProperty -> Maybe (ValueList Text)
targetNames :: TargetFiltersProperty -> Maybe (ValueList Text)
targets :: TargetFiltersProperty -> Maybe [HookTargetProperty]
haddock_workaround_ :: ()
actions :: Maybe (ValueList Text)
invocationPoints :: Maybe (ValueList Text)
targetNames :: Maybe (ValueList Text)
targets :: Maybe [HookTargetProperty]
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::CloudFormation::GuardHook.TargetFilters",
supportsTags :: Bool
supportsTags = Bool
Prelude.False,
properties :: Object
properties = [Item Object] -> Object
forall l. IsList l => [Item l] -> l
Prelude.fromList
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> ValueList 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
"Actions" (ValueList Text -> (Key, Value))
-> Maybe (ValueList Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (ValueList Text)
actions,
Key -> ValueList 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
"InvocationPoints" (ValueList Text -> (Key, Value))
-> Maybe (ValueList Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (ValueList Text)
invocationPoints,
Key -> ValueList 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
"TargetNames" (ValueList Text -> (Key, Value))
-> Maybe (ValueList Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (ValueList Text)
targetNames,
Key -> [HookTargetProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Targets" ([HookTargetProperty] -> (Key, Value))
-> Maybe [HookTargetProperty] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [HookTargetProperty]
targets])}
instance JSON.ToJSON TargetFiltersProperty where
toJSON :: TargetFiltersProperty -> Value
toJSON TargetFiltersProperty {Maybe [HookTargetProperty]
Maybe (ValueList Text)
()
haddock_workaround_ :: TargetFiltersProperty -> ()
actions :: TargetFiltersProperty -> Maybe (ValueList Text)
invocationPoints :: TargetFiltersProperty -> Maybe (ValueList Text)
targetNames :: TargetFiltersProperty -> Maybe (ValueList Text)
targets :: TargetFiltersProperty -> Maybe [HookTargetProperty]
haddock_workaround_ :: ()
actions :: Maybe (ValueList Text)
invocationPoints :: Maybe (ValueList Text)
targetNames :: Maybe (ValueList Text)
targets :: Maybe [HookTargetProperty]
..}
= [(Key, Value)] -> Value
JSON.object
([Item [(Key, Value)]] -> [(Key, Value)]
forall l. IsList l => [Item l] -> l
Prelude.fromList
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> ValueList 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
"Actions" (ValueList Text -> (Key, Value))
-> Maybe (ValueList Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (ValueList Text)
actions,
Key -> ValueList 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
"InvocationPoints" (ValueList Text -> (Key, Value))
-> Maybe (ValueList Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (ValueList Text)
invocationPoints,
Key -> ValueList 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
"TargetNames" (ValueList Text -> (Key, Value))
-> Maybe (ValueList Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (ValueList Text)
targetNames,
Key -> [HookTargetProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Targets" ([HookTargetProperty] -> (Key, Value))
-> Maybe [HookTargetProperty] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [HookTargetProperty]
targets]))
instance Property "Actions" TargetFiltersProperty where
type PropertyType "Actions" TargetFiltersProperty = ValueList Prelude.Text
set :: PropertyType "Actions" TargetFiltersProperty
-> TargetFiltersProperty -> TargetFiltersProperty
set PropertyType "Actions" TargetFiltersProperty
newValue TargetFiltersProperty {Maybe [HookTargetProperty]
Maybe (ValueList Text)
()
haddock_workaround_ :: TargetFiltersProperty -> ()
actions :: TargetFiltersProperty -> Maybe (ValueList Text)
invocationPoints :: TargetFiltersProperty -> Maybe (ValueList Text)
targetNames :: TargetFiltersProperty -> Maybe (ValueList Text)
targets :: TargetFiltersProperty -> Maybe [HookTargetProperty]
haddock_workaround_ :: ()
actions :: Maybe (ValueList Text)
invocationPoints :: Maybe (ValueList Text)
targetNames :: Maybe (ValueList Text)
targets :: Maybe [HookTargetProperty]
..}
= TargetFiltersProperty {actions :: Maybe (ValueList Text)
actions = ValueList Text -> Maybe (ValueList Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "Actions" TargetFiltersProperty
ValueList Text
newValue, Maybe [HookTargetProperty]
Maybe (ValueList Text)
()
haddock_workaround_ :: ()
invocationPoints :: Maybe (ValueList Text)
targetNames :: Maybe (ValueList Text)
targets :: Maybe [HookTargetProperty]
haddock_workaround_ :: ()
invocationPoints :: Maybe (ValueList Text)
targetNames :: Maybe (ValueList Text)
targets :: Maybe [HookTargetProperty]
..}
instance Property "InvocationPoints" TargetFiltersProperty where
type PropertyType "InvocationPoints" TargetFiltersProperty = ValueList Prelude.Text
set :: PropertyType "InvocationPoints" TargetFiltersProperty
-> TargetFiltersProperty -> TargetFiltersProperty
set PropertyType "InvocationPoints" TargetFiltersProperty
newValue TargetFiltersProperty {Maybe [HookTargetProperty]
Maybe (ValueList Text)
()
haddock_workaround_ :: TargetFiltersProperty -> ()
actions :: TargetFiltersProperty -> Maybe (ValueList Text)
invocationPoints :: TargetFiltersProperty -> Maybe (ValueList Text)
targetNames :: TargetFiltersProperty -> Maybe (ValueList Text)
targets :: TargetFiltersProperty -> Maybe [HookTargetProperty]
haddock_workaround_ :: ()
actions :: Maybe (ValueList Text)
invocationPoints :: Maybe (ValueList Text)
targetNames :: Maybe (ValueList Text)
targets :: Maybe [HookTargetProperty]
..}
= TargetFiltersProperty
{invocationPoints :: Maybe (ValueList Text)
invocationPoints = ValueList Text -> Maybe (ValueList Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "InvocationPoints" TargetFiltersProperty
ValueList Text
newValue, Maybe [HookTargetProperty]
Maybe (ValueList Text)
()
haddock_workaround_ :: ()
actions :: Maybe (ValueList Text)
targetNames :: Maybe (ValueList Text)
targets :: Maybe [HookTargetProperty]
haddock_workaround_ :: ()
actions :: Maybe (ValueList Text)
targetNames :: Maybe (ValueList Text)
targets :: Maybe [HookTargetProperty]
..}
instance Property "TargetNames" TargetFiltersProperty where
type PropertyType "TargetNames" TargetFiltersProperty = ValueList Prelude.Text
set :: PropertyType "TargetNames" TargetFiltersProperty
-> TargetFiltersProperty -> TargetFiltersProperty
set PropertyType "TargetNames" TargetFiltersProperty
newValue TargetFiltersProperty {Maybe [HookTargetProperty]
Maybe (ValueList Text)
()
haddock_workaround_ :: TargetFiltersProperty -> ()
actions :: TargetFiltersProperty -> Maybe (ValueList Text)
invocationPoints :: TargetFiltersProperty -> Maybe (ValueList Text)
targetNames :: TargetFiltersProperty -> Maybe (ValueList Text)
targets :: TargetFiltersProperty -> Maybe [HookTargetProperty]
haddock_workaround_ :: ()
actions :: Maybe (ValueList Text)
invocationPoints :: Maybe (ValueList Text)
targetNames :: Maybe (ValueList Text)
targets :: Maybe [HookTargetProperty]
..}
= TargetFiltersProperty {targetNames :: Maybe (ValueList Text)
targetNames = ValueList Text -> Maybe (ValueList Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "TargetNames" TargetFiltersProperty
ValueList Text
newValue, Maybe [HookTargetProperty]
Maybe (ValueList Text)
()
haddock_workaround_ :: ()
actions :: Maybe (ValueList Text)
invocationPoints :: Maybe (ValueList Text)
targets :: Maybe [HookTargetProperty]
haddock_workaround_ :: ()
actions :: Maybe (ValueList Text)
invocationPoints :: Maybe (ValueList Text)
targets :: Maybe [HookTargetProperty]
..}
instance Property "Targets" TargetFiltersProperty where
type PropertyType "Targets" TargetFiltersProperty = [HookTargetProperty]
set :: PropertyType "Targets" TargetFiltersProperty
-> TargetFiltersProperty -> TargetFiltersProperty
set PropertyType "Targets" TargetFiltersProperty
newValue TargetFiltersProperty {Maybe [HookTargetProperty]
Maybe (ValueList Text)
()
haddock_workaround_ :: TargetFiltersProperty -> ()
actions :: TargetFiltersProperty -> Maybe (ValueList Text)
invocationPoints :: TargetFiltersProperty -> Maybe (ValueList Text)
targetNames :: TargetFiltersProperty -> Maybe (ValueList Text)
targets :: TargetFiltersProperty -> Maybe [HookTargetProperty]
haddock_workaround_ :: ()
actions :: Maybe (ValueList Text)
invocationPoints :: Maybe (ValueList Text)
targetNames :: Maybe (ValueList Text)
targets :: Maybe [HookTargetProperty]
..}
= TargetFiltersProperty {targets :: Maybe [HookTargetProperty]
targets = [HookTargetProperty] -> Maybe [HookTargetProperty]
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure [HookTargetProperty]
PropertyType "Targets" TargetFiltersProperty
newValue, Maybe (ValueList Text)
()
haddock_workaround_ :: ()
actions :: Maybe (ValueList Text)
invocationPoints :: Maybe (ValueList Text)
targetNames :: Maybe (ValueList Text)
haddock_workaround_ :: ()
actions :: Maybe (ValueList Text)
invocationPoints :: Maybe (ValueList Text)
targetNames :: Maybe (ValueList Text)
..}