module Stratosphere.EC2.NetworkInsightsAccessScope.PathStatementRequestProperty (
module Exports, PathStatementRequestProperty(..),
mkPathStatementRequestProperty
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.EC2.NetworkInsightsAccessScope.PacketHeaderStatementRequestProperty as Exports
import {-# SOURCE #-} Stratosphere.EC2.NetworkInsightsAccessScope.ResourceStatementRequestProperty as Exports
import Stratosphere.ResourceProperties
data PathStatementRequestProperty
=
PathStatementRequestProperty {PathStatementRequestProperty -> ()
haddock_workaround_ :: (),
:: (Prelude.Maybe PacketHeaderStatementRequestProperty),
PathStatementRequestProperty
-> Maybe ResourceStatementRequestProperty
resourceStatement :: (Prelude.Maybe ResourceStatementRequestProperty)}
deriving stock (PathStatementRequestProperty
-> PathStatementRequestProperty -> Bool
(PathStatementRequestProperty
-> PathStatementRequestProperty -> Bool)
-> (PathStatementRequestProperty
-> PathStatementRequestProperty -> Bool)
-> Eq PathStatementRequestProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: PathStatementRequestProperty
-> PathStatementRequestProperty -> Bool
== :: PathStatementRequestProperty
-> PathStatementRequestProperty -> Bool
$c/= :: PathStatementRequestProperty
-> PathStatementRequestProperty -> Bool
/= :: PathStatementRequestProperty
-> PathStatementRequestProperty -> Bool
Prelude.Eq, Int -> PathStatementRequestProperty -> ShowS
[PathStatementRequestProperty] -> ShowS
PathStatementRequestProperty -> String
(Int -> PathStatementRequestProperty -> ShowS)
-> (PathStatementRequestProperty -> String)
-> ([PathStatementRequestProperty] -> ShowS)
-> Show PathStatementRequestProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> PathStatementRequestProperty -> ShowS
showsPrec :: Int -> PathStatementRequestProperty -> ShowS
$cshow :: PathStatementRequestProperty -> String
show :: PathStatementRequestProperty -> String
$cshowList :: [PathStatementRequestProperty] -> ShowS
showList :: [PathStatementRequestProperty] -> ShowS
Prelude.Show)
mkPathStatementRequestProperty :: PathStatementRequestProperty
mkPathStatementRequestProperty :: PathStatementRequestProperty
mkPathStatementRequestProperty
= PathStatementRequestProperty
{haddock_workaround_ :: ()
haddock_workaround_ = (), packetHeaderStatement :: Maybe PacketHeaderStatementRequestProperty
packetHeaderStatement = Maybe PacketHeaderStatementRequestProperty
forall a. Maybe a
Prelude.Nothing,
resourceStatement :: Maybe ResourceStatementRequestProperty
resourceStatement = Maybe ResourceStatementRequestProperty
forall a. Maybe a
Prelude.Nothing}
instance ToResourceProperties PathStatementRequestProperty where
toResourceProperties :: PathStatementRequestProperty -> ResourceProperties
toResourceProperties PathStatementRequestProperty {Maybe PacketHeaderStatementRequestProperty
Maybe ResourceStatementRequestProperty
()
haddock_workaround_ :: PathStatementRequestProperty -> ()
packetHeaderStatement :: PathStatementRequestProperty
-> Maybe PacketHeaderStatementRequestProperty
resourceStatement :: PathStatementRequestProperty
-> Maybe ResourceStatementRequestProperty
haddock_workaround_ :: ()
packetHeaderStatement :: Maybe PacketHeaderStatementRequestProperty
resourceStatement :: Maybe ResourceStatementRequestProperty
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::EC2::NetworkInsightsAccessScope.PathStatementRequest",
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 -> PacketHeaderStatementRequestProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"PacketHeaderStatement"
(PacketHeaderStatementRequestProperty -> (Key, Value))
-> Maybe PacketHeaderStatementRequestProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe PacketHeaderStatementRequestProperty
packetHeaderStatement,
Key -> ResourceStatementRequestProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"ResourceStatement" (ResourceStatementRequestProperty -> (Key, Value))
-> Maybe ResourceStatementRequestProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ResourceStatementRequestProperty
resourceStatement])}
instance JSON.ToJSON PathStatementRequestProperty where
toJSON :: PathStatementRequestProperty -> Value
toJSON PathStatementRequestProperty {Maybe PacketHeaderStatementRequestProperty
Maybe ResourceStatementRequestProperty
()
haddock_workaround_ :: PathStatementRequestProperty -> ()
packetHeaderStatement :: PathStatementRequestProperty
-> Maybe PacketHeaderStatementRequestProperty
resourceStatement :: PathStatementRequestProperty
-> Maybe ResourceStatementRequestProperty
haddock_workaround_ :: ()
packetHeaderStatement :: Maybe PacketHeaderStatementRequestProperty
resourceStatement :: Maybe ResourceStatementRequestProperty
..}
= [(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 -> PacketHeaderStatementRequestProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"PacketHeaderStatement"
(PacketHeaderStatementRequestProperty -> (Key, Value))
-> Maybe PacketHeaderStatementRequestProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe PacketHeaderStatementRequestProperty
packetHeaderStatement,
Key -> ResourceStatementRequestProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"ResourceStatement" (ResourceStatementRequestProperty -> (Key, Value))
-> Maybe ResourceStatementRequestProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ResourceStatementRequestProperty
resourceStatement]))
instance Property "PacketHeaderStatement" PathStatementRequestProperty where
type PropertyType "PacketHeaderStatement" PathStatementRequestProperty = PacketHeaderStatementRequestProperty
set :: PropertyType "PacketHeaderStatement" PathStatementRequestProperty
-> PathStatementRequestProperty -> PathStatementRequestProperty
set PropertyType "PacketHeaderStatement" PathStatementRequestProperty
newValue PathStatementRequestProperty {Maybe PacketHeaderStatementRequestProperty
Maybe ResourceStatementRequestProperty
()
haddock_workaround_ :: PathStatementRequestProperty -> ()
packetHeaderStatement :: PathStatementRequestProperty
-> Maybe PacketHeaderStatementRequestProperty
resourceStatement :: PathStatementRequestProperty
-> Maybe ResourceStatementRequestProperty
haddock_workaround_ :: ()
packetHeaderStatement :: Maybe PacketHeaderStatementRequestProperty
resourceStatement :: Maybe ResourceStatementRequestProperty
..}
= PathStatementRequestProperty
{packetHeaderStatement :: Maybe PacketHeaderStatementRequestProperty
packetHeaderStatement = PacketHeaderStatementRequestProperty
-> Maybe PacketHeaderStatementRequestProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "PacketHeaderStatement" PathStatementRequestProperty
PacketHeaderStatementRequestProperty
newValue, Maybe ResourceStatementRequestProperty
()
haddock_workaround_ :: ()
resourceStatement :: Maybe ResourceStatementRequestProperty
haddock_workaround_ :: ()
resourceStatement :: Maybe ResourceStatementRequestProperty
..}
instance Property "ResourceStatement" PathStatementRequestProperty where
type PropertyType "ResourceStatement" PathStatementRequestProperty = ResourceStatementRequestProperty
set :: PropertyType "ResourceStatement" PathStatementRequestProperty
-> PathStatementRequestProperty -> PathStatementRequestProperty
set PropertyType "ResourceStatement" PathStatementRequestProperty
newValue PathStatementRequestProperty {Maybe PacketHeaderStatementRequestProperty
Maybe ResourceStatementRequestProperty
()
haddock_workaround_ :: PathStatementRequestProperty -> ()
packetHeaderStatement :: PathStatementRequestProperty
-> Maybe PacketHeaderStatementRequestProperty
resourceStatement :: PathStatementRequestProperty
-> Maybe ResourceStatementRequestProperty
haddock_workaround_ :: ()
packetHeaderStatement :: Maybe PacketHeaderStatementRequestProperty
resourceStatement :: Maybe ResourceStatementRequestProperty
..}
= PathStatementRequestProperty
{resourceStatement :: Maybe ResourceStatementRequestProperty
resourceStatement = ResourceStatementRequestProperty
-> Maybe ResourceStatementRequestProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "ResourceStatement" PathStatementRequestProperty
ResourceStatementRequestProperty
newValue, Maybe PacketHeaderStatementRequestProperty
()
haddock_workaround_ :: ()
packetHeaderStatement :: Maybe PacketHeaderStatementRequestProperty
haddock_workaround_ :: ()
packetHeaderStatement :: Maybe PacketHeaderStatementRequestProperty
..}