module Stratosphere.AppMesh.GatewayRoute.GrpcGatewayRouteProperty (
module Exports, GrpcGatewayRouteProperty(..),
mkGrpcGatewayRouteProperty
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.AppMesh.GatewayRoute.GrpcGatewayRouteActionProperty as Exports
import {-# SOURCE #-} Stratosphere.AppMesh.GatewayRoute.GrpcGatewayRouteMatchProperty as Exports
import Stratosphere.ResourceProperties
data GrpcGatewayRouteProperty
=
GrpcGatewayRouteProperty {GrpcGatewayRouteProperty -> ()
haddock_workaround_ :: (),
GrpcGatewayRouteProperty -> GrpcGatewayRouteActionProperty
action :: GrpcGatewayRouteActionProperty,
GrpcGatewayRouteProperty -> GrpcGatewayRouteMatchProperty
match :: GrpcGatewayRouteMatchProperty}
deriving stock (GrpcGatewayRouteProperty -> GrpcGatewayRouteProperty -> Bool
(GrpcGatewayRouteProperty -> GrpcGatewayRouteProperty -> Bool)
-> (GrpcGatewayRouteProperty -> GrpcGatewayRouteProperty -> Bool)
-> Eq GrpcGatewayRouteProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: GrpcGatewayRouteProperty -> GrpcGatewayRouteProperty -> Bool
== :: GrpcGatewayRouteProperty -> GrpcGatewayRouteProperty -> Bool
$c/= :: GrpcGatewayRouteProperty -> GrpcGatewayRouteProperty -> Bool
/= :: GrpcGatewayRouteProperty -> GrpcGatewayRouteProperty -> Bool
Prelude.Eq, Int -> GrpcGatewayRouteProperty -> ShowS
[GrpcGatewayRouteProperty] -> ShowS
GrpcGatewayRouteProperty -> String
(Int -> GrpcGatewayRouteProperty -> ShowS)
-> (GrpcGatewayRouteProperty -> String)
-> ([GrpcGatewayRouteProperty] -> ShowS)
-> Show GrpcGatewayRouteProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> GrpcGatewayRouteProperty -> ShowS
showsPrec :: Int -> GrpcGatewayRouteProperty -> ShowS
$cshow :: GrpcGatewayRouteProperty -> String
show :: GrpcGatewayRouteProperty -> String
$cshowList :: [GrpcGatewayRouteProperty] -> ShowS
showList :: [GrpcGatewayRouteProperty] -> ShowS
Prelude.Show)
mkGrpcGatewayRouteProperty ::
GrpcGatewayRouteActionProperty
-> GrpcGatewayRouteMatchProperty -> GrpcGatewayRouteProperty
mkGrpcGatewayRouteProperty :: GrpcGatewayRouteActionProperty
-> GrpcGatewayRouteMatchProperty -> GrpcGatewayRouteProperty
mkGrpcGatewayRouteProperty GrpcGatewayRouteActionProperty
action GrpcGatewayRouteMatchProperty
match
= GrpcGatewayRouteProperty
{haddock_workaround_ :: ()
haddock_workaround_ = (), action :: GrpcGatewayRouteActionProperty
action = GrpcGatewayRouteActionProperty
action, match :: GrpcGatewayRouteMatchProperty
match = GrpcGatewayRouteMatchProperty
match}
instance ToResourceProperties GrpcGatewayRouteProperty where
toResourceProperties :: GrpcGatewayRouteProperty -> ResourceProperties
toResourceProperties GrpcGatewayRouteProperty {()
GrpcGatewayRouteMatchProperty
GrpcGatewayRouteActionProperty
haddock_workaround_ :: GrpcGatewayRouteProperty -> ()
action :: GrpcGatewayRouteProperty -> GrpcGatewayRouteActionProperty
match :: GrpcGatewayRouteProperty -> GrpcGatewayRouteMatchProperty
haddock_workaround_ :: ()
action :: GrpcGatewayRouteActionProperty
match :: GrpcGatewayRouteMatchProperty
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::AppMesh::GatewayRoute.GrpcGatewayRoute",
supportsTags :: Bool
supportsTags = Bool
Prelude.False,
properties :: Object
properties = [Key
"Action" Key -> GrpcGatewayRouteActionProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= GrpcGatewayRouteActionProperty
action, Key
"Match" Key -> GrpcGatewayRouteMatchProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= GrpcGatewayRouteMatchProperty
match]}
instance JSON.ToJSON GrpcGatewayRouteProperty where
toJSON :: GrpcGatewayRouteProperty -> Value
toJSON GrpcGatewayRouteProperty {()
GrpcGatewayRouteMatchProperty
GrpcGatewayRouteActionProperty
haddock_workaround_ :: GrpcGatewayRouteProperty -> ()
action :: GrpcGatewayRouteProperty -> GrpcGatewayRouteActionProperty
match :: GrpcGatewayRouteProperty -> GrpcGatewayRouteMatchProperty
haddock_workaround_ :: ()
action :: GrpcGatewayRouteActionProperty
match :: GrpcGatewayRouteMatchProperty
..}
= [(Key, Value)] -> Value
JSON.object [Key
"Action" Key -> GrpcGatewayRouteActionProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= GrpcGatewayRouteActionProperty
action, Key
"Match" Key -> GrpcGatewayRouteMatchProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= GrpcGatewayRouteMatchProperty
match]
instance Property "Action" GrpcGatewayRouteProperty where
type PropertyType "Action" GrpcGatewayRouteProperty = GrpcGatewayRouteActionProperty
set :: PropertyType "Action" GrpcGatewayRouteProperty
-> GrpcGatewayRouteProperty -> GrpcGatewayRouteProperty
set PropertyType "Action" GrpcGatewayRouteProperty
newValue GrpcGatewayRouteProperty {()
GrpcGatewayRouteMatchProperty
GrpcGatewayRouteActionProperty
haddock_workaround_ :: GrpcGatewayRouteProperty -> ()
action :: GrpcGatewayRouteProperty -> GrpcGatewayRouteActionProperty
match :: GrpcGatewayRouteProperty -> GrpcGatewayRouteMatchProperty
haddock_workaround_ :: ()
action :: GrpcGatewayRouteActionProperty
match :: GrpcGatewayRouteMatchProperty
..}
= GrpcGatewayRouteProperty {action :: GrpcGatewayRouteActionProperty
action = PropertyType "Action" GrpcGatewayRouteProperty
GrpcGatewayRouteActionProperty
newValue, ()
GrpcGatewayRouteMatchProperty
haddock_workaround_ :: ()
match :: GrpcGatewayRouteMatchProperty
haddock_workaround_ :: ()
match :: GrpcGatewayRouteMatchProperty
..}
instance Property "Match" GrpcGatewayRouteProperty where
type PropertyType "Match" GrpcGatewayRouteProperty = GrpcGatewayRouteMatchProperty
set :: PropertyType "Match" GrpcGatewayRouteProperty
-> GrpcGatewayRouteProperty -> GrpcGatewayRouteProperty
set PropertyType "Match" GrpcGatewayRouteProperty
newValue GrpcGatewayRouteProperty {()
GrpcGatewayRouteMatchProperty
GrpcGatewayRouteActionProperty
haddock_workaround_ :: GrpcGatewayRouteProperty -> ()
action :: GrpcGatewayRouteProperty -> GrpcGatewayRouteActionProperty
match :: GrpcGatewayRouteProperty -> GrpcGatewayRouteMatchProperty
haddock_workaround_ :: ()
action :: GrpcGatewayRouteActionProperty
match :: GrpcGatewayRouteMatchProperty
..}
= GrpcGatewayRouteProperty {match :: GrpcGatewayRouteMatchProperty
match = PropertyType "Match" GrpcGatewayRouteProperty
GrpcGatewayRouteMatchProperty
newValue, ()
GrpcGatewayRouteActionProperty
haddock_workaround_ :: ()
action :: GrpcGatewayRouteActionProperty
haddock_workaround_ :: ()
action :: GrpcGatewayRouteActionProperty
..}