module Stratosphere.AppMesh.VirtualNode.ListenerTlsProperty (
module Exports, ListenerTlsProperty(..), mkListenerTlsProperty
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.AppMesh.VirtualNode.ListenerTlsCertificateProperty as Exports
import {-# SOURCE #-} Stratosphere.AppMesh.VirtualNode.ListenerTlsValidationContextProperty as Exports
import Stratosphere.ResourceProperties
import Stratosphere.Value
data ListenerTlsProperty
=
ListenerTlsProperty {ListenerTlsProperty -> ()
haddock_workaround_ :: (),
ListenerTlsProperty -> ListenerTlsCertificateProperty
certificate :: ListenerTlsCertificateProperty,
ListenerTlsProperty -> Value Text
mode :: (Value Prelude.Text),
ListenerTlsProperty -> Maybe ListenerTlsValidationContextProperty
validation :: (Prelude.Maybe ListenerTlsValidationContextProperty)}
deriving stock (ListenerTlsProperty -> ListenerTlsProperty -> Bool
(ListenerTlsProperty -> ListenerTlsProperty -> Bool)
-> (ListenerTlsProperty -> ListenerTlsProperty -> Bool)
-> Eq ListenerTlsProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ListenerTlsProperty -> ListenerTlsProperty -> Bool
== :: ListenerTlsProperty -> ListenerTlsProperty -> Bool
$c/= :: ListenerTlsProperty -> ListenerTlsProperty -> Bool
/= :: ListenerTlsProperty -> ListenerTlsProperty -> Bool
Prelude.Eq, Int -> ListenerTlsProperty -> ShowS
[ListenerTlsProperty] -> ShowS
ListenerTlsProperty -> String
(Int -> ListenerTlsProperty -> ShowS)
-> (ListenerTlsProperty -> String)
-> ([ListenerTlsProperty] -> ShowS)
-> Show ListenerTlsProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ListenerTlsProperty -> ShowS
showsPrec :: Int -> ListenerTlsProperty -> ShowS
$cshow :: ListenerTlsProperty -> String
show :: ListenerTlsProperty -> String
$cshowList :: [ListenerTlsProperty] -> ShowS
showList :: [ListenerTlsProperty] -> ShowS
Prelude.Show)
mkListenerTlsProperty ::
ListenerTlsCertificateProperty
-> Value Prelude.Text -> ListenerTlsProperty
mkListenerTlsProperty :: ListenerTlsCertificateProperty -> Value Text -> ListenerTlsProperty
mkListenerTlsProperty ListenerTlsCertificateProperty
certificate Value Text
mode
= ListenerTlsProperty
{haddock_workaround_ :: ()
haddock_workaround_ = (), certificate :: ListenerTlsCertificateProperty
certificate = ListenerTlsCertificateProperty
certificate, mode :: Value Text
mode = Value Text
mode,
validation :: Maybe ListenerTlsValidationContextProperty
validation = Maybe ListenerTlsValidationContextProperty
forall a. Maybe a
Prelude.Nothing}
instance ToResourceProperties ListenerTlsProperty where
toResourceProperties :: ListenerTlsProperty -> ResourceProperties
toResourceProperties ListenerTlsProperty {Maybe ListenerTlsValidationContextProperty
()
Value Text
ListenerTlsCertificateProperty
haddock_workaround_ :: ListenerTlsProperty -> ()
certificate :: ListenerTlsProperty -> ListenerTlsCertificateProperty
mode :: ListenerTlsProperty -> Value Text
validation :: ListenerTlsProperty -> Maybe ListenerTlsValidationContextProperty
haddock_workaround_ :: ()
certificate :: ListenerTlsCertificateProperty
mode :: Value Text
validation :: Maybe ListenerTlsValidationContextProperty
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::AppMesh::VirtualNode.ListenerTls",
supportsTags :: Bool
supportsTags = Bool
Prelude.False,
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
"Certificate" Key -> ListenerTlsCertificateProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= ListenerTlsCertificateProperty
certificate, Key
"Mode" 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
mode]
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> ListenerTlsValidationContextProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Validation" (ListenerTlsValidationContextProperty -> (Key, Value))
-> Maybe ListenerTlsValidationContextProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ListenerTlsValidationContextProperty
validation]))}
instance JSON.ToJSON ListenerTlsProperty where
toJSON :: ListenerTlsProperty -> Value
toJSON ListenerTlsProperty {Maybe ListenerTlsValidationContextProperty
()
Value Text
ListenerTlsCertificateProperty
haddock_workaround_ :: ListenerTlsProperty -> ()
certificate :: ListenerTlsProperty -> ListenerTlsCertificateProperty
mode :: ListenerTlsProperty -> Value Text
validation :: ListenerTlsProperty -> Maybe ListenerTlsValidationContextProperty
haddock_workaround_ :: ()
certificate :: ListenerTlsCertificateProperty
mode :: Value Text
validation :: Maybe ListenerTlsValidationContextProperty
..}
= [(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
"Certificate" Key -> ListenerTlsCertificateProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= ListenerTlsCertificateProperty
certificate, Key
"Mode" 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
mode]
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> ListenerTlsValidationContextProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Validation" (ListenerTlsValidationContextProperty -> (Key, Value))
-> Maybe ListenerTlsValidationContextProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ListenerTlsValidationContextProperty
validation])))
instance Property "Certificate" ListenerTlsProperty where
type PropertyType "Certificate" ListenerTlsProperty = ListenerTlsCertificateProperty
set :: PropertyType "Certificate" ListenerTlsProperty
-> ListenerTlsProperty -> ListenerTlsProperty
set PropertyType "Certificate" ListenerTlsProperty
newValue ListenerTlsProperty {Maybe ListenerTlsValidationContextProperty
()
Value Text
ListenerTlsCertificateProperty
haddock_workaround_ :: ListenerTlsProperty -> ()
certificate :: ListenerTlsProperty -> ListenerTlsCertificateProperty
mode :: ListenerTlsProperty -> Value Text
validation :: ListenerTlsProperty -> Maybe ListenerTlsValidationContextProperty
haddock_workaround_ :: ()
certificate :: ListenerTlsCertificateProperty
mode :: Value Text
validation :: Maybe ListenerTlsValidationContextProperty
..}
= ListenerTlsProperty {certificate :: ListenerTlsCertificateProperty
certificate = PropertyType "Certificate" ListenerTlsProperty
ListenerTlsCertificateProperty
newValue, Maybe ListenerTlsValidationContextProperty
()
Value Text
haddock_workaround_ :: ()
mode :: Value Text
validation :: Maybe ListenerTlsValidationContextProperty
haddock_workaround_ :: ()
mode :: Value Text
validation :: Maybe ListenerTlsValidationContextProperty
..}
instance Property "Mode" ListenerTlsProperty where
type PropertyType "Mode" ListenerTlsProperty = Value Prelude.Text
set :: PropertyType "Mode" ListenerTlsProperty
-> ListenerTlsProperty -> ListenerTlsProperty
set PropertyType "Mode" ListenerTlsProperty
newValue ListenerTlsProperty {Maybe ListenerTlsValidationContextProperty
()
Value Text
ListenerTlsCertificateProperty
haddock_workaround_ :: ListenerTlsProperty -> ()
certificate :: ListenerTlsProperty -> ListenerTlsCertificateProperty
mode :: ListenerTlsProperty -> Value Text
validation :: ListenerTlsProperty -> Maybe ListenerTlsValidationContextProperty
haddock_workaround_ :: ()
certificate :: ListenerTlsCertificateProperty
mode :: Value Text
validation :: Maybe ListenerTlsValidationContextProperty
..}
= ListenerTlsProperty {mode :: Value Text
mode = PropertyType "Mode" ListenerTlsProperty
Value Text
newValue, Maybe ListenerTlsValidationContextProperty
()
ListenerTlsCertificateProperty
haddock_workaround_ :: ()
certificate :: ListenerTlsCertificateProperty
validation :: Maybe ListenerTlsValidationContextProperty
haddock_workaround_ :: ()
certificate :: ListenerTlsCertificateProperty
validation :: Maybe ListenerTlsValidationContextProperty
..}
instance Property "Validation" ListenerTlsProperty where
type PropertyType "Validation" ListenerTlsProperty = ListenerTlsValidationContextProperty
set :: PropertyType "Validation" ListenerTlsProperty
-> ListenerTlsProperty -> ListenerTlsProperty
set PropertyType "Validation" ListenerTlsProperty
newValue ListenerTlsProperty {Maybe ListenerTlsValidationContextProperty
()
Value Text
ListenerTlsCertificateProperty
haddock_workaround_ :: ListenerTlsProperty -> ()
certificate :: ListenerTlsProperty -> ListenerTlsCertificateProperty
mode :: ListenerTlsProperty -> Value Text
validation :: ListenerTlsProperty -> Maybe ListenerTlsValidationContextProperty
haddock_workaround_ :: ()
certificate :: ListenerTlsCertificateProperty
mode :: Value Text
validation :: Maybe ListenerTlsValidationContextProperty
..}
= ListenerTlsProperty {validation :: Maybe ListenerTlsValidationContextProperty
validation = ListenerTlsValidationContextProperty
-> Maybe ListenerTlsValidationContextProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "Validation" ListenerTlsProperty
ListenerTlsValidationContextProperty
newValue, ()
Value Text
ListenerTlsCertificateProperty
haddock_workaround_ :: ()
certificate :: ListenerTlsCertificateProperty
mode :: Value Text
haddock_workaround_ :: ()
certificate :: ListenerTlsCertificateProperty
mode :: Value Text
..}