module Stratosphere.NetworkFirewall.TLSInspectionConfiguration.ServerCertificateScopeProperty (
module Exports, ServerCertificateScopeProperty(..),
mkServerCertificateScopeProperty
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.NetworkFirewall.TLSInspectionConfiguration.AddressProperty as Exports
import {-# SOURCE #-} Stratosphere.NetworkFirewall.TLSInspectionConfiguration.PortRangeProperty as Exports
import Stratosphere.ResourceProperties
import Stratosphere.Value
data ServerCertificateScopeProperty
=
ServerCertificateScopeProperty {ServerCertificateScopeProperty -> ()
haddock_workaround_ :: (),
ServerCertificateScopeProperty -> Maybe [PortRangeProperty]
destinationPorts :: (Prelude.Maybe [PortRangeProperty]),
ServerCertificateScopeProperty -> Maybe [AddressProperty]
destinations :: (Prelude.Maybe [AddressProperty]),
ServerCertificateScopeProperty -> Maybe (ValueList Integer)
protocols :: (Prelude.Maybe (ValueList Prelude.Integer)),
ServerCertificateScopeProperty -> Maybe [PortRangeProperty]
sourcePorts :: (Prelude.Maybe [PortRangeProperty]),
ServerCertificateScopeProperty -> Maybe [AddressProperty]
sources :: (Prelude.Maybe [AddressProperty])}
deriving stock (ServerCertificateScopeProperty
-> ServerCertificateScopeProperty -> Bool
(ServerCertificateScopeProperty
-> ServerCertificateScopeProperty -> Bool)
-> (ServerCertificateScopeProperty
-> ServerCertificateScopeProperty -> Bool)
-> Eq ServerCertificateScopeProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ServerCertificateScopeProperty
-> ServerCertificateScopeProperty -> Bool
== :: ServerCertificateScopeProperty
-> ServerCertificateScopeProperty -> Bool
$c/= :: ServerCertificateScopeProperty
-> ServerCertificateScopeProperty -> Bool
/= :: ServerCertificateScopeProperty
-> ServerCertificateScopeProperty -> Bool
Prelude.Eq, Int -> ServerCertificateScopeProperty -> ShowS
[ServerCertificateScopeProperty] -> ShowS
ServerCertificateScopeProperty -> String
(Int -> ServerCertificateScopeProperty -> ShowS)
-> (ServerCertificateScopeProperty -> String)
-> ([ServerCertificateScopeProperty] -> ShowS)
-> Show ServerCertificateScopeProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ServerCertificateScopeProperty -> ShowS
showsPrec :: Int -> ServerCertificateScopeProperty -> ShowS
$cshow :: ServerCertificateScopeProperty -> String
show :: ServerCertificateScopeProperty -> String
$cshowList :: [ServerCertificateScopeProperty] -> ShowS
showList :: [ServerCertificateScopeProperty] -> ShowS
Prelude.Show)
mkServerCertificateScopeProperty :: ServerCertificateScopeProperty
mkServerCertificateScopeProperty :: ServerCertificateScopeProperty
mkServerCertificateScopeProperty
= ServerCertificateScopeProperty
{haddock_workaround_ :: ()
haddock_workaround_ = (), destinationPorts :: Maybe [PortRangeProperty]
destinationPorts = Maybe [PortRangeProperty]
forall a. Maybe a
Prelude.Nothing,
destinations :: Maybe [AddressProperty]
destinations = Maybe [AddressProperty]
forall a. Maybe a
Prelude.Nothing, protocols :: Maybe (ValueList Integer)
protocols = Maybe (ValueList Integer)
forall a. Maybe a
Prelude.Nothing,
sourcePorts :: Maybe [PortRangeProperty]
sourcePorts = Maybe [PortRangeProperty]
forall a. Maybe a
Prelude.Nothing, sources :: Maybe [AddressProperty]
sources = Maybe [AddressProperty]
forall a. Maybe a
Prelude.Nothing}
instance ToResourceProperties ServerCertificateScopeProperty where
toResourceProperties :: ServerCertificateScopeProperty -> ResourceProperties
toResourceProperties ServerCertificateScopeProperty {Maybe [AddressProperty]
Maybe [PortRangeProperty]
Maybe (ValueList Integer)
()
haddock_workaround_ :: ServerCertificateScopeProperty -> ()
destinationPorts :: ServerCertificateScopeProperty -> Maybe [PortRangeProperty]
destinations :: ServerCertificateScopeProperty -> Maybe [AddressProperty]
protocols :: ServerCertificateScopeProperty -> Maybe (ValueList Integer)
sourcePorts :: ServerCertificateScopeProperty -> Maybe [PortRangeProperty]
sources :: ServerCertificateScopeProperty -> Maybe [AddressProperty]
haddock_workaround_ :: ()
destinationPorts :: Maybe [PortRangeProperty]
destinations :: Maybe [AddressProperty]
protocols :: Maybe (ValueList Integer)
sourcePorts :: Maybe [PortRangeProperty]
sources :: Maybe [AddressProperty]
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::NetworkFirewall::TLSInspectionConfiguration.ServerCertificateScope",
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 -> [PortRangeProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"DestinationPorts" ([PortRangeProperty] -> (Key, Value))
-> Maybe [PortRangeProperty] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [PortRangeProperty]
destinationPorts,
Key -> [AddressProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Destinations" ([AddressProperty] -> (Key, Value))
-> Maybe [AddressProperty] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [AddressProperty]
destinations,
Key -> ValueList 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
"Protocols" (ValueList Integer -> (Key, Value))
-> Maybe (ValueList Integer) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (ValueList Integer)
protocols,
Key -> [PortRangeProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"SourcePorts" ([PortRangeProperty] -> (Key, Value))
-> Maybe [PortRangeProperty] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [PortRangeProperty]
sourcePorts,
Key -> [AddressProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Sources" ([AddressProperty] -> (Key, Value))
-> Maybe [AddressProperty] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [AddressProperty]
sources])}
instance JSON.ToJSON ServerCertificateScopeProperty where
toJSON :: ServerCertificateScopeProperty -> Value
toJSON ServerCertificateScopeProperty {Maybe [AddressProperty]
Maybe [PortRangeProperty]
Maybe (ValueList Integer)
()
haddock_workaround_ :: ServerCertificateScopeProperty -> ()
destinationPorts :: ServerCertificateScopeProperty -> Maybe [PortRangeProperty]
destinations :: ServerCertificateScopeProperty -> Maybe [AddressProperty]
protocols :: ServerCertificateScopeProperty -> Maybe (ValueList Integer)
sourcePorts :: ServerCertificateScopeProperty -> Maybe [PortRangeProperty]
sources :: ServerCertificateScopeProperty -> Maybe [AddressProperty]
haddock_workaround_ :: ()
destinationPorts :: Maybe [PortRangeProperty]
destinations :: Maybe [AddressProperty]
protocols :: Maybe (ValueList Integer)
sourcePorts :: Maybe [PortRangeProperty]
sources :: Maybe [AddressProperty]
..}
= [(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 -> [PortRangeProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"DestinationPorts" ([PortRangeProperty] -> (Key, Value))
-> Maybe [PortRangeProperty] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [PortRangeProperty]
destinationPorts,
Key -> [AddressProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Destinations" ([AddressProperty] -> (Key, Value))
-> Maybe [AddressProperty] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [AddressProperty]
destinations,
Key -> ValueList 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
"Protocols" (ValueList Integer -> (Key, Value))
-> Maybe (ValueList Integer) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (ValueList Integer)
protocols,
Key -> [PortRangeProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"SourcePorts" ([PortRangeProperty] -> (Key, Value))
-> Maybe [PortRangeProperty] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [PortRangeProperty]
sourcePorts,
Key -> [AddressProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Sources" ([AddressProperty] -> (Key, Value))
-> Maybe [AddressProperty] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [AddressProperty]
sources]))
instance Property "DestinationPorts" ServerCertificateScopeProperty where
type PropertyType "DestinationPorts" ServerCertificateScopeProperty = [PortRangeProperty]
set :: PropertyType "DestinationPorts" ServerCertificateScopeProperty
-> ServerCertificateScopeProperty -> ServerCertificateScopeProperty
set PropertyType "DestinationPorts" ServerCertificateScopeProperty
newValue ServerCertificateScopeProperty {Maybe [AddressProperty]
Maybe [PortRangeProperty]
Maybe (ValueList Integer)
()
haddock_workaround_ :: ServerCertificateScopeProperty -> ()
destinationPorts :: ServerCertificateScopeProperty -> Maybe [PortRangeProperty]
destinations :: ServerCertificateScopeProperty -> Maybe [AddressProperty]
protocols :: ServerCertificateScopeProperty -> Maybe (ValueList Integer)
sourcePorts :: ServerCertificateScopeProperty -> Maybe [PortRangeProperty]
sources :: ServerCertificateScopeProperty -> Maybe [AddressProperty]
haddock_workaround_ :: ()
destinationPorts :: Maybe [PortRangeProperty]
destinations :: Maybe [AddressProperty]
protocols :: Maybe (ValueList Integer)
sourcePorts :: Maybe [PortRangeProperty]
sources :: Maybe [AddressProperty]
..}
= ServerCertificateScopeProperty
{destinationPorts :: Maybe [PortRangeProperty]
destinationPorts = [PortRangeProperty] -> Maybe [PortRangeProperty]
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure [PortRangeProperty]
PropertyType "DestinationPorts" ServerCertificateScopeProperty
newValue, Maybe [AddressProperty]
Maybe [PortRangeProperty]
Maybe (ValueList Integer)
()
haddock_workaround_ :: ()
destinations :: Maybe [AddressProperty]
protocols :: Maybe (ValueList Integer)
sourcePorts :: Maybe [PortRangeProperty]
sources :: Maybe [AddressProperty]
haddock_workaround_ :: ()
destinations :: Maybe [AddressProperty]
protocols :: Maybe (ValueList Integer)
sourcePorts :: Maybe [PortRangeProperty]
sources :: Maybe [AddressProperty]
..}
instance Property "Destinations" ServerCertificateScopeProperty where
type PropertyType "Destinations" ServerCertificateScopeProperty = [AddressProperty]
set :: PropertyType "Destinations" ServerCertificateScopeProperty
-> ServerCertificateScopeProperty -> ServerCertificateScopeProperty
set PropertyType "Destinations" ServerCertificateScopeProperty
newValue ServerCertificateScopeProperty {Maybe [AddressProperty]
Maybe [PortRangeProperty]
Maybe (ValueList Integer)
()
haddock_workaround_ :: ServerCertificateScopeProperty -> ()
destinationPorts :: ServerCertificateScopeProperty -> Maybe [PortRangeProperty]
destinations :: ServerCertificateScopeProperty -> Maybe [AddressProperty]
protocols :: ServerCertificateScopeProperty -> Maybe (ValueList Integer)
sourcePorts :: ServerCertificateScopeProperty -> Maybe [PortRangeProperty]
sources :: ServerCertificateScopeProperty -> Maybe [AddressProperty]
haddock_workaround_ :: ()
destinationPorts :: Maybe [PortRangeProperty]
destinations :: Maybe [AddressProperty]
protocols :: Maybe (ValueList Integer)
sourcePorts :: Maybe [PortRangeProperty]
sources :: Maybe [AddressProperty]
..}
= ServerCertificateScopeProperty
{destinations :: Maybe [AddressProperty]
destinations = [AddressProperty] -> Maybe [AddressProperty]
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure [AddressProperty]
PropertyType "Destinations" ServerCertificateScopeProperty
newValue, Maybe [AddressProperty]
Maybe [PortRangeProperty]
Maybe (ValueList Integer)
()
haddock_workaround_ :: ()
destinationPorts :: Maybe [PortRangeProperty]
protocols :: Maybe (ValueList Integer)
sourcePorts :: Maybe [PortRangeProperty]
sources :: Maybe [AddressProperty]
haddock_workaround_ :: ()
destinationPorts :: Maybe [PortRangeProperty]
protocols :: Maybe (ValueList Integer)
sourcePorts :: Maybe [PortRangeProperty]
sources :: Maybe [AddressProperty]
..}
instance Property "Protocols" ServerCertificateScopeProperty where
type PropertyType "Protocols" ServerCertificateScopeProperty = ValueList Prelude.Integer
set :: PropertyType "Protocols" ServerCertificateScopeProperty
-> ServerCertificateScopeProperty -> ServerCertificateScopeProperty
set PropertyType "Protocols" ServerCertificateScopeProperty
newValue ServerCertificateScopeProperty {Maybe [AddressProperty]
Maybe [PortRangeProperty]
Maybe (ValueList Integer)
()
haddock_workaround_ :: ServerCertificateScopeProperty -> ()
destinationPorts :: ServerCertificateScopeProperty -> Maybe [PortRangeProperty]
destinations :: ServerCertificateScopeProperty -> Maybe [AddressProperty]
protocols :: ServerCertificateScopeProperty -> Maybe (ValueList Integer)
sourcePorts :: ServerCertificateScopeProperty -> Maybe [PortRangeProperty]
sources :: ServerCertificateScopeProperty -> Maybe [AddressProperty]
haddock_workaround_ :: ()
destinationPorts :: Maybe [PortRangeProperty]
destinations :: Maybe [AddressProperty]
protocols :: Maybe (ValueList Integer)
sourcePorts :: Maybe [PortRangeProperty]
sources :: Maybe [AddressProperty]
..}
= ServerCertificateScopeProperty
{protocols :: Maybe (ValueList Integer)
protocols = ValueList Integer -> Maybe (ValueList Integer)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "Protocols" ServerCertificateScopeProperty
ValueList Integer
newValue, Maybe [AddressProperty]
Maybe [PortRangeProperty]
()
haddock_workaround_ :: ()
destinationPorts :: Maybe [PortRangeProperty]
destinations :: Maybe [AddressProperty]
sourcePorts :: Maybe [PortRangeProperty]
sources :: Maybe [AddressProperty]
haddock_workaround_ :: ()
destinationPorts :: Maybe [PortRangeProperty]
destinations :: Maybe [AddressProperty]
sourcePorts :: Maybe [PortRangeProperty]
sources :: Maybe [AddressProperty]
..}
instance Property "SourcePorts" ServerCertificateScopeProperty where
type PropertyType "SourcePorts" ServerCertificateScopeProperty = [PortRangeProperty]
set :: PropertyType "SourcePorts" ServerCertificateScopeProperty
-> ServerCertificateScopeProperty -> ServerCertificateScopeProperty
set PropertyType "SourcePorts" ServerCertificateScopeProperty
newValue ServerCertificateScopeProperty {Maybe [AddressProperty]
Maybe [PortRangeProperty]
Maybe (ValueList Integer)
()
haddock_workaround_ :: ServerCertificateScopeProperty -> ()
destinationPorts :: ServerCertificateScopeProperty -> Maybe [PortRangeProperty]
destinations :: ServerCertificateScopeProperty -> Maybe [AddressProperty]
protocols :: ServerCertificateScopeProperty -> Maybe (ValueList Integer)
sourcePorts :: ServerCertificateScopeProperty -> Maybe [PortRangeProperty]
sources :: ServerCertificateScopeProperty -> Maybe [AddressProperty]
haddock_workaround_ :: ()
destinationPorts :: Maybe [PortRangeProperty]
destinations :: Maybe [AddressProperty]
protocols :: Maybe (ValueList Integer)
sourcePorts :: Maybe [PortRangeProperty]
sources :: Maybe [AddressProperty]
..}
= ServerCertificateScopeProperty
{sourcePorts :: Maybe [PortRangeProperty]
sourcePorts = [PortRangeProperty] -> Maybe [PortRangeProperty]
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure [PortRangeProperty]
PropertyType "SourcePorts" ServerCertificateScopeProperty
newValue, Maybe [AddressProperty]
Maybe [PortRangeProperty]
Maybe (ValueList Integer)
()
haddock_workaround_ :: ()
destinationPorts :: Maybe [PortRangeProperty]
destinations :: Maybe [AddressProperty]
protocols :: Maybe (ValueList Integer)
sources :: Maybe [AddressProperty]
haddock_workaround_ :: ()
destinationPorts :: Maybe [PortRangeProperty]
destinations :: Maybe [AddressProperty]
protocols :: Maybe (ValueList Integer)
sources :: Maybe [AddressProperty]
..}
instance Property "Sources" ServerCertificateScopeProperty where
type PropertyType "Sources" ServerCertificateScopeProperty = [AddressProperty]
set :: PropertyType "Sources" ServerCertificateScopeProperty
-> ServerCertificateScopeProperty -> ServerCertificateScopeProperty
set PropertyType "Sources" ServerCertificateScopeProperty
newValue ServerCertificateScopeProperty {Maybe [AddressProperty]
Maybe [PortRangeProperty]
Maybe (ValueList Integer)
()
haddock_workaround_ :: ServerCertificateScopeProperty -> ()
destinationPorts :: ServerCertificateScopeProperty -> Maybe [PortRangeProperty]
destinations :: ServerCertificateScopeProperty -> Maybe [AddressProperty]
protocols :: ServerCertificateScopeProperty -> Maybe (ValueList Integer)
sourcePorts :: ServerCertificateScopeProperty -> Maybe [PortRangeProperty]
sources :: ServerCertificateScopeProperty -> Maybe [AddressProperty]
haddock_workaround_ :: ()
destinationPorts :: Maybe [PortRangeProperty]
destinations :: Maybe [AddressProperty]
protocols :: Maybe (ValueList Integer)
sourcePorts :: Maybe [PortRangeProperty]
sources :: Maybe [AddressProperty]
..}
= ServerCertificateScopeProperty
{sources :: Maybe [AddressProperty]
sources = [AddressProperty] -> Maybe [AddressProperty]
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure [AddressProperty]
PropertyType "Sources" ServerCertificateScopeProperty
newValue, Maybe [AddressProperty]
Maybe [PortRangeProperty]
Maybe (ValueList Integer)
()
haddock_workaround_ :: ()
destinationPorts :: Maybe [PortRangeProperty]
destinations :: Maybe [AddressProperty]
protocols :: Maybe (ValueList Integer)
sourcePorts :: Maybe [PortRangeProperty]
haddock_workaround_ :: ()
destinationPorts :: Maybe [PortRangeProperty]
destinations :: Maybe [AddressProperty]
protocols :: Maybe (ValueList Integer)
sourcePorts :: Maybe [PortRangeProperty]
..}