module Stratosphere.AppMesh.VirtualNode.VirtualNodeSpecProperty (
module Exports, VirtualNodeSpecProperty(..),
mkVirtualNodeSpecProperty
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.AppMesh.VirtualNode.BackendProperty as Exports
import {-# SOURCE #-} Stratosphere.AppMesh.VirtualNode.BackendDefaultsProperty as Exports
import {-# SOURCE #-} Stratosphere.AppMesh.VirtualNode.ListenerProperty as Exports
import {-# SOURCE #-} Stratosphere.AppMesh.VirtualNode.LoggingProperty as Exports
import {-# SOURCE #-} Stratosphere.AppMesh.VirtualNode.ServiceDiscoveryProperty as Exports
import Stratosphere.ResourceProperties
data VirtualNodeSpecProperty
=
VirtualNodeSpecProperty {VirtualNodeSpecProperty -> ()
haddock_workaround_ :: (),
VirtualNodeSpecProperty -> Maybe BackendDefaultsProperty
backendDefaults :: (Prelude.Maybe BackendDefaultsProperty),
VirtualNodeSpecProperty -> Maybe [BackendProperty]
backends :: (Prelude.Maybe [BackendProperty]),
VirtualNodeSpecProperty -> Maybe [ListenerProperty]
listeners :: (Prelude.Maybe [ListenerProperty]),
VirtualNodeSpecProperty -> Maybe LoggingProperty
logging :: (Prelude.Maybe LoggingProperty),
VirtualNodeSpecProperty -> Maybe ServiceDiscoveryProperty
serviceDiscovery :: (Prelude.Maybe ServiceDiscoveryProperty)}
deriving stock (VirtualNodeSpecProperty -> VirtualNodeSpecProperty -> Bool
(VirtualNodeSpecProperty -> VirtualNodeSpecProperty -> Bool)
-> (VirtualNodeSpecProperty -> VirtualNodeSpecProperty -> Bool)
-> Eq VirtualNodeSpecProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: VirtualNodeSpecProperty -> VirtualNodeSpecProperty -> Bool
== :: VirtualNodeSpecProperty -> VirtualNodeSpecProperty -> Bool
$c/= :: VirtualNodeSpecProperty -> VirtualNodeSpecProperty -> Bool
/= :: VirtualNodeSpecProperty -> VirtualNodeSpecProperty -> Bool
Prelude.Eq, Int -> VirtualNodeSpecProperty -> ShowS
[VirtualNodeSpecProperty] -> ShowS
VirtualNodeSpecProperty -> String
(Int -> VirtualNodeSpecProperty -> ShowS)
-> (VirtualNodeSpecProperty -> String)
-> ([VirtualNodeSpecProperty] -> ShowS)
-> Show VirtualNodeSpecProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> VirtualNodeSpecProperty -> ShowS
showsPrec :: Int -> VirtualNodeSpecProperty -> ShowS
$cshow :: VirtualNodeSpecProperty -> String
show :: VirtualNodeSpecProperty -> String
$cshowList :: [VirtualNodeSpecProperty] -> ShowS
showList :: [VirtualNodeSpecProperty] -> ShowS
Prelude.Show)
mkVirtualNodeSpecProperty :: VirtualNodeSpecProperty
mkVirtualNodeSpecProperty :: VirtualNodeSpecProperty
mkVirtualNodeSpecProperty
= VirtualNodeSpecProperty
{haddock_workaround_ :: ()
haddock_workaround_ = (), backendDefaults :: Maybe BackendDefaultsProperty
backendDefaults = Maybe BackendDefaultsProperty
forall a. Maybe a
Prelude.Nothing,
backends :: Maybe [BackendProperty]
backends = Maybe [BackendProperty]
forall a. Maybe a
Prelude.Nothing, listeners :: Maybe [ListenerProperty]
listeners = Maybe [ListenerProperty]
forall a. Maybe a
Prelude.Nothing,
logging :: Maybe LoggingProperty
logging = Maybe LoggingProperty
forall a. Maybe a
Prelude.Nothing, serviceDiscovery :: Maybe ServiceDiscoveryProperty
serviceDiscovery = Maybe ServiceDiscoveryProperty
forall a. Maybe a
Prelude.Nothing}
instance ToResourceProperties VirtualNodeSpecProperty where
toResourceProperties :: VirtualNodeSpecProperty -> ResourceProperties
toResourceProperties VirtualNodeSpecProperty {Maybe [ListenerProperty]
Maybe [BackendProperty]
Maybe LoggingProperty
Maybe ServiceDiscoveryProperty
Maybe BackendDefaultsProperty
()
haddock_workaround_ :: VirtualNodeSpecProperty -> ()
backendDefaults :: VirtualNodeSpecProperty -> Maybe BackendDefaultsProperty
backends :: VirtualNodeSpecProperty -> Maybe [BackendProperty]
listeners :: VirtualNodeSpecProperty -> Maybe [ListenerProperty]
logging :: VirtualNodeSpecProperty -> Maybe LoggingProperty
serviceDiscovery :: VirtualNodeSpecProperty -> Maybe ServiceDiscoveryProperty
haddock_workaround_ :: ()
backendDefaults :: Maybe BackendDefaultsProperty
backends :: Maybe [BackendProperty]
listeners :: Maybe [ListenerProperty]
logging :: Maybe LoggingProperty
serviceDiscovery :: Maybe ServiceDiscoveryProperty
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::AppMesh::VirtualNode.VirtualNodeSpec",
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 -> BackendDefaultsProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"BackendDefaults" (BackendDefaultsProperty -> (Key, Value))
-> Maybe BackendDefaultsProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe BackendDefaultsProperty
backendDefaults,
Key -> [BackendProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Backends" ([BackendProperty] -> (Key, Value))
-> Maybe [BackendProperty] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [BackendProperty]
backends,
Key -> [ListenerProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Listeners" ([ListenerProperty] -> (Key, Value))
-> Maybe [ListenerProperty] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [ListenerProperty]
listeners,
Key -> LoggingProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Logging" (LoggingProperty -> (Key, Value))
-> Maybe LoggingProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe LoggingProperty
logging,
Key -> ServiceDiscoveryProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"ServiceDiscovery" (ServiceDiscoveryProperty -> (Key, Value))
-> Maybe ServiceDiscoveryProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ServiceDiscoveryProperty
serviceDiscovery])}
instance JSON.ToJSON VirtualNodeSpecProperty where
toJSON :: VirtualNodeSpecProperty -> Value
toJSON VirtualNodeSpecProperty {Maybe [ListenerProperty]
Maybe [BackendProperty]
Maybe LoggingProperty
Maybe ServiceDiscoveryProperty
Maybe BackendDefaultsProperty
()
haddock_workaround_ :: VirtualNodeSpecProperty -> ()
backendDefaults :: VirtualNodeSpecProperty -> Maybe BackendDefaultsProperty
backends :: VirtualNodeSpecProperty -> Maybe [BackendProperty]
listeners :: VirtualNodeSpecProperty -> Maybe [ListenerProperty]
logging :: VirtualNodeSpecProperty -> Maybe LoggingProperty
serviceDiscovery :: VirtualNodeSpecProperty -> Maybe ServiceDiscoveryProperty
haddock_workaround_ :: ()
backendDefaults :: Maybe BackendDefaultsProperty
backends :: Maybe [BackendProperty]
listeners :: Maybe [ListenerProperty]
logging :: Maybe LoggingProperty
serviceDiscovery :: Maybe ServiceDiscoveryProperty
..}
= [(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 -> BackendDefaultsProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"BackendDefaults" (BackendDefaultsProperty -> (Key, Value))
-> Maybe BackendDefaultsProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe BackendDefaultsProperty
backendDefaults,
Key -> [BackendProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Backends" ([BackendProperty] -> (Key, Value))
-> Maybe [BackendProperty] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [BackendProperty]
backends,
Key -> [ListenerProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Listeners" ([ListenerProperty] -> (Key, Value))
-> Maybe [ListenerProperty] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [ListenerProperty]
listeners,
Key -> LoggingProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Logging" (LoggingProperty -> (Key, Value))
-> Maybe LoggingProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe LoggingProperty
logging,
Key -> ServiceDiscoveryProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"ServiceDiscovery" (ServiceDiscoveryProperty -> (Key, Value))
-> Maybe ServiceDiscoveryProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ServiceDiscoveryProperty
serviceDiscovery]))
instance Property "BackendDefaults" VirtualNodeSpecProperty where
type PropertyType "BackendDefaults" VirtualNodeSpecProperty = BackendDefaultsProperty
set :: PropertyType "BackendDefaults" VirtualNodeSpecProperty
-> VirtualNodeSpecProperty -> VirtualNodeSpecProperty
set PropertyType "BackendDefaults" VirtualNodeSpecProperty
newValue VirtualNodeSpecProperty {Maybe [ListenerProperty]
Maybe [BackendProperty]
Maybe LoggingProperty
Maybe ServiceDiscoveryProperty
Maybe BackendDefaultsProperty
()
haddock_workaround_ :: VirtualNodeSpecProperty -> ()
backendDefaults :: VirtualNodeSpecProperty -> Maybe BackendDefaultsProperty
backends :: VirtualNodeSpecProperty -> Maybe [BackendProperty]
listeners :: VirtualNodeSpecProperty -> Maybe [ListenerProperty]
logging :: VirtualNodeSpecProperty -> Maybe LoggingProperty
serviceDiscovery :: VirtualNodeSpecProperty -> Maybe ServiceDiscoveryProperty
haddock_workaround_ :: ()
backendDefaults :: Maybe BackendDefaultsProperty
backends :: Maybe [BackendProperty]
listeners :: Maybe [ListenerProperty]
logging :: Maybe LoggingProperty
serviceDiscovery :: Maybe ServiceDiscoveryProperty
..}
= VirtualNodeSpecProperty
{backendDefaults :: Maybe BackendDefaultsProperty
backendDefaults = BackendDefaultsProperty -> Maybe BackendDefaultsProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "BackendDefaults" VirtualNodeSpecProperty
BackendDefaultsProperty
newValue, Maybe [ListenerProperty]
Maybe [BackendProperty]
Maybe LoggingProperty
Maybe ServiceDiscoveryProperty
()
haddock_workaround_ :: ()
backends :: Maybe [BackendProperty]
listeners :: Maybe [ListenerProperty]
logging :: Maybe LoggingProperty
serviceDiscovery :: Maybe ServiceDiscoveryProperty
haddock_workaround_ :: ()
backends :: Maybe [BackendProperty]
listeners :: Maybe [ListenerProperty]
logging :: Maybe LoggingProperty
serviceDiscovery :: Maybe ServiceDiscoveryProperty
..}
instance Property "Backends" VirtualNodeSpecProperty where
type PropertyType "Backends" VirtualNodeSpecProperty = [BackendProperty]
set :: PropertyType "Backends" VirtualNodeSpecProperty
-> VirtualNodeSpecProperty -> VirtualNodeSpecProperty
set PropertyType "Backends" VirtualNodeSpecProperty
newValue VirtualNodeSpecProperty {Maybe [ListenerProperty]
Maybe [BackendProperty]
Maybe LoggingProperty
Maybe ServiceDiscoveryProperty
Maybe BackendDefaultsProperty
()
haddock_workaround_ :: VirtualNodeSpecProperty -> ()
backendDefaults :: VirtualNodeSpecProperty -> Maybe BackendDefaultsProperty
backends :: VirtualNodeSpecProperty -> Maybe [BackendProperty]
listeners :: VirtualNodeSpecProperty -> Maybe [ListenerProperty]
logging :: VirtualNodeSpecProperty -> Maybe LoggingProperty
serviceDiscovery :: VirtualNodeSpecProperty -> Maybe ServiceDiscoveryProperty
haddock_workaround_ :: ()
backendDefaults :: Maybe BackendDefaultsProperty
backends :: Maybe [BackendProperty]
listeners :: Maybe [ListenerProperty]
logging :: Maybe LoggingProperty
serviceDiscovery :: Maybe ServiceDiscoveryProperty
..}
= VirtualNodeSpecProperty {backends :: Maybe [BackendProperty]
backends = [BackendProperty] -> Maybe [BackendProperty]
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure [BackendProperty]
PropertyType "Backends" VirtualNodeSpecProperty
newValue, Maybe [ListenerProperty]
Maybe LoggingProperty
Maybe ServiceDiscoveryProperty
Maybe BackendDefaultsProperty
()
haddock_workaround_ :: ()
backendDefaults :: Maybe BackendDefaultsProperty
listeners :: Maybe [ListenerProperty]
logging :: Maybe LoggingProperty
serviceDiscovery :: Maybe ServiceDiscoveryProperty
haddock_workaround_ :: ()
backendDefaults :: Maybe BackendDefaultsProperty
listeners :: Maybe [ListenerProperty]
logging :: Maybe LoggingProperty
serviceDiscovery :: Maybe ServiceDiscoveryProperty
..}
instance Property "Listeners" VirtualNodeSpecProperty where
type PropertyType "Listeners" VirtualNodeSpecProperty = [ListenerProperty]
set :: PropertyType "Listeners" VirtualNodeSpecProperty
-> VirtualNodeSpecProperty -> VirtualNodeSpecProperty
set PropertyType "Listeners" VirtualNodeSpecProperty
newValue VirtualNodeSpecProperty {Maybe [ListenerProperty]
Maybe [BackendProperty]
Maybe LoggingProperty
Maybe ServiceDiscoveryProperty
Maybe BackendDefaultsProperty
()
haddock_workaround_ :: VirtualNodeSpecProperty -> ()
backendDefaults :: VirtualNodeSpecProperty -> Maybe BackendDefaultsProperty
backends :: VirtualNodeSpecProperty -> Maybe [BackendProperty]
listeners :: VirtualNodeSpecProperty -> Maybe [ListenerProperty]
logging :: VirtualNodeSpecProperty -> Maybe LoggingProperty
serviceDiscovery :: VirtualNodeSpecProperty -> Maybe ServiceDiscoveryProperty
haddock_workaround_ :: ()
backendDefaults :: Maybe BackendDefaultsProperty
backends :: Maybe [BackendProperty]
listeners :: Maybe [ListenerProperty]
logging :: Maybe LoggingProperty
serviceDiscovery :: Maybe ServiceDiscoveryProperty
..}
= VirtualNodeSpecProperty {listeners :: Maybe [ListenerProperty]
listeners = [ListenerProperty] -> Maybe [ListenerProperty]
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure [ListenerProperty]
PropertyType "Listeners" VirtualNodeSpecProperty
newValue, Maybe [BackendProperty]
Maybe LoggingProperty
Maybe ServiceDiscoveryProperty
Maybe BackendDefaultsProperty
()
haddock_workaround_ :: ()
backendDefaults :: Maybe BackendDefaultsProperty
backends :: Maybe [BackendProperty]
logging :: Maybe LoggingProperty
serviceDiscovery :: Maybe ServiceDiscoveryProperty
haddock_workaround_ :: ()
backendDefaults :: Maybe BackendDefaultsProperty
backends :: Maybe [BackendProperty]
logging :: Maybe LoggingProperty
serviceDiscovery :: Maybe ServiceDiscoveryProperty
..}
instance Property "Logging" VirtualNodeSpecProperty where
type PropertyType "Logging" VirtualNodeSpecProperty = LoggingProperty
set :: PropertyType "Logging" VirtualNodeSpecProperty
-> VirtualNodeSpecProperty -> VirtualNodeSpecProperty
set PropertyType "Logging" VirtualNodeSpecProperty
newValue VirtualNodeSpecProperty {Maybe [ListenerProperty]
Maybe [BackendProperty]
Maybe LoggingProperty
Maybe ServiceDiscoveryProperty
Maybe BackendDefaultsProperty
()
haddock_workaround_ :: VirtualNodeSpecProperty -> ()
backendDefaults :: VirtualNodeSpecProperty -> Maybe BackendDefaultsProperty
backends :: VirtualNodeSpecProperty -> Maybe [BackendProperty]
listeners :: VirtualNodeSpecProperty -> Maybe [ListenerProperty]
logging :: VirtualNodeSpecProperty -> Maybe LoggingProperty
serviceDiscovery :: VirtualNodeSpecProperty -> Maybe ServiceDiscoveryProperty
haddock_workaround_ :: ()
backendDefaults :: Maybe BackendDefaultsProperty
backends :: Maybe [BackendProperty]
listeners :: Maybe [ListenerProperty]
logging :: Maybe LoggingProperty
serviceDiscovery :: Maybe ServiceDiscoveryProperty
..}
= VirtualNodeSpecProperty {logging :: Maybe LoggingProperty
logging = LoggingProperty -> Maybe LoggingProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "Logging" VirtualNodeSpecProperty
LoggingProperty
newValue, Maybe [ListenerProperty]
Maybe [BackendProperty]
Maybe ServiceDiscoveryProperty
Maybe BackendDefaultsProperty
()
haddock_workaround_ :: ()
backendDefaults :: Maybe BackendDefaultsProperty
backends :: Maybe [BackendProperty]
listeners :: Maybe [ListenerProperty]
serviceDiscovery :: Maybe ServiceDiscoveryProperty
haddock_workaround_ :: ()
backendDefaults :: Maybe BackendDefaultsProperty
backends :: Maybe [BackendProperty]
listeners :: Maybe [ListenerProperty]
serviceDiscovery :: Maybe ServiceDiscoveryProperty
..}
instance Property "ServiceDiscovery" VirtualNodeSpecProperty where
type PropertyType "ServiceDiscovery" VirtualNodeSpecProperty = ServiceDiscoveryProperty
set :: PropertyType "ServiceDiscovery" VirtualNodeSpecProperty
-> VirtualNodeSpecProperty -> VirtualNodeSpecProperty
set PropertyType "ServiceDiscovery" VirtualNodeSpecProperty
newValue VirtualNodeSpecProperty {Maybe [ListenerProperty]
Maybe [BackendProperty]
Maybe LoggingProperty
Maybe ServiceDiscoveryProperty
Maybe BackendDefaultsProperty
()
haddock_workaround_ :: VirtualNodeSpecProperty -> ()
backendDefaults :: VirtualNodeSpecProperty -> Maybe BackendDefaultsProperty
backends :: VirtualNodeSpecProperty -> Maybe [BackendProperty]
listeners :: VirtualNodeSpecProperty -> Maybe [ListenerProperty]
logging :: VirtualNodeSpecProperty -> Maybe LoggingProperty
serviceDiscovery :: VirtualNodeSpecProperty -> Maybe ServiceDiscoveryProperty
haddock_workaround_ :: ()
backendDefaults :: Maybe BackendDefaultsProperty
backends :: Maybe [BackendProperty]
listeners :: Maybe [ListenerProperty]
logging :: Maybe LoggingProperty
serviceDiscovery :: Maybe ServiceDiscoveryProperty
..}
= VirtualNodeSpecProperty
{serviceDiscovery :: Maybe ServiceDiscoveryProperty
serviceDiscovery = ServiceDiscoveryProperty -> Maybe ServiceDiscoveryProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "ServiceDiscovery" VirtualNodeSpecProperty
ServiceDiscoveryProperty
newValue, Maybe [ListenerProperty]
Maybe [BackendProperty]
Maybe LoggingProperty
Maybe BackendDefaultsProperty
()
haddock_workaround_ :: ()
backendDefaults :: Maybe BackendDefaultsProperty
backends :: Maybe [BackendProperty]
listeners :: Maybe [ListenerProperty]
logging :: Maybe LoggingProperty
haddock_workaround_ :: ()
backendDefaults :: Maybe BackendDefaultsProperty
backends :: Maybe [BackendProperty]
listeners :: Maybe [ListenerProperty]
logging :: Maybe LoggingProperty
..}