module Stratosphere.AppRunner.VpcIngressConnection.IngressVpcConfigurationProperty (
        IngressVpcConfigurationProperty(..),
        mkIngressVpcConfigurationProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data IngressVpcConfigurationProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apprunner-vpcingressconnection-ingressvpcconfiguration.html>
    IngressVpcConfigurationProperty {IngressVpcConfigurationProperty -> ()
haddock_workaround_ :: (),
                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apprunner-vpcingressconnection-ingressvpcconfiguration.html#cfn-apprunner-vpcingressconnection-ingressvpcconfiguration-vpcendpointid>
                                     IngressVpcConfigurationProperty -> Value Text
vpcEndpointId :: (Value Prelude.Text),
                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apprunner-vpcingressconnection-ingressvpcconfiguration.html#cfn-apprunner-vpcingressconnection-ingressvpcconfiguration-vpcid>
                                     IngressVpcConfigurationProperty -> Value Text
vpcId :: (Value Prelude.Text)}
  deriving stock (IngressVpcConfigurationProperty
-> IngressVpcConfigurationProperty -> Bool
(IngressVpcConfigurationProperty
 -> IngressVpcConfigurationProperty -> Bool)
-> (IngressVpcConfigurationProperty
    -> IngressVpcConfigurationProperty -> Bool)
-> Eq IngressVpcConfigurationProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: IngressVpcConfigurationProperty
-> IngressVpcConfigurationProperty -> Bool
== :: IngressVpcConfigurationProperty
-> IngressVpcConfigurationProperty -> Bool
$c/= :: IngressVpcConfigurationProperty
-> IngressVpcConfigurationProperty -> Bool
/= :: IngressVpcConfigurationProperty
-> IngressVpcConfigurationProperty -> Bool
Prelude.Eq, Int -> IngressVpcConfigurationProperty -> ShowS
[IngressVpcConfigurationProperty] -> ShowS
IngressVpcConfigurationProperty -> String
(Int -> IngressVpcConfigurationProperty -> ShowS)
-> (IngressVpcConfigurationProperty -> String)
-> ([IngressVpcConfigurationProperty] -> ShowS)
-> Show IngressVpcConfigurationProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> IngressVpcConfigurationProperty -> ShowS
showsPrec :: Int -> IngressVpcConfigurationProperty -> ShowS
$cshow :: IngressVpcConfigurationProperty -> String
show :: IngressVpcConfigurationProperty -> String
$cshowList :: [IngressVpcConfigurationProperty] -> ShowS
showList :: [IngressVpcConfigurationProperty] -> ShowS
Prelude.Show)
mkIngressVpcConfigurationProperty ::
  Value Prelude.Text
  -> Value Prelude.Text -> IngressVpcConfigurationProperty
mkIngressVpcConfigurationProperty :: Value Text -> Value Text -> IngressVpcConfigurationProperty
mkIngressVpcConfigurationProperty Value Text
vpcEndpointId Value Text
vpcId
  = IngressVpcConfigurationProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), vpcEndpointId :: Value Text
vpcEndpointId = Value Text
vpcEndpointId,
       vpcId :: Value Text
vpcId = Value Text
vpcId}
instance ToResourceProperties IngressVpcConfigurationProperty where
  toResourceProperties :: IngressVpcConfigurationProperty -> ResourceProperties
toResourceProperties IngressVpcConfigurationProperty {()
Value Text
haddock_workaround_ :: IngressVpcConfigurationProperty -> ()
vpcEndpointId :: IngressVpcConfigurationProperty -> Value Text
vpcId :: IngressVpcConfigurationProperty -> Value Text
haddock_workaround_ :: ()
vpcEndpointId :: Value Text
vpcId :: Value Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::AppRunner::VpcIngressConnection.IngressVpcConfiguration",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"VpcEndpointId" 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
vpcEndpointId,
                       Key
"VpcId" 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
vpcId]}
instance JSON.ToJSON IngressVpcConfigurationProperty where
  toJSON :: IngressVpcConfigurationProperty -> Value
toJSON IngressVpcConfigurationProperty {()
Value Text
haddock_workaround_ :: IngressVpcConfigurationProperty -> ()
vpcEndpointId :: IngressVpcConfigurationProperty -> Value Text
vpcId :: IngressVpcConfigurationProperty -> Value Text
haddock_workaround_ :: ()
vpcEndpointId :: Value Text
vpcId :: Value Text
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"VpcEndpointId" 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
vpcEndpointId, Key
"VpcId" 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
vpcId]
instance Property "VpcEndpointId" IngressVpcConfigurationProperty where
  type PropertyType "VpcEndpointId" IngressVpcConfigurationProperty = Value Prelude.Text
  set :: PropertyType "VpcEndpointId" IngressVpcConfigurationProperty
-> IngressVpcConfigurationProperty
-> IngressVpcConfigurationProperty
set PropertyType "VpcEndpointId" IngressVpcConfigurationProperty
newValue IngressVpcConfigurationProperty {()
Value Text
haddock_workaround_ :: IngressVpcConfigurationProperty -> ()
vpcEndpointId :: IngressVpcConfigurationProperty -> Value Text
vpcId :: IngressVpcConfigurationProperty -> Value Text
haddock_workaround_ :: ()
vpcEndpointId :: Value Text
vpcId :: Value Text
..}
    = IngressVpcConfigurationProperty {vpcEndpointId :: Value Text
vpcEndpointId = PropertyType "VpcEndpointId" IngressVpcConfigurationProperty
Value Text
newValue, ()
Value Text
haddock_workaround_ :: ()
vpcId :: Value Text
haddock_workaround_ :: ()
vpcId :: Value Text
..}
instance Property "VpcId" IngressVpcConfigurationProperty where
  type PropertyType "VpcId" IngressVpcConfigurationProperty = Value Prelude.Text
  set :: PropertyType "VpcId" IngressVpcConfigurationProperty
-> IngressVpcConfigurationProperty
-> IngressVpcConfigurationProperty
set PropertyType "VpcId" IngressVpcConfigurationProperty
newValue IngressVpcConfigurationProperty {()
Value Text
haddock_workaround_ :: IngressVpcConfigurationProperty -> ()
vpcEndpointId :: IngressVpcConfigurationProperty -> Value Text
vpcId :: IngressVpcConfigurationProperty -> Value Text
haddock_workaround_ :: ()
vpcEndpointId :: Value Text
vpcId :: Value Text
..}
    = IngressVpcConfigurationProperty {vpcId :: Value Text
vpcId = PropertyType "VpcId" IngressVpcConfigurationProperty
Value Text
newValue, ()
Value Text
haddock_workaround_ :: ()
vpcEndpointId :: Value Text
haddock_workaround_ :: ()
vpcEndpointId :: Value Text
..}