module Stratosphere.AppMesh.VirtualGateway.VirtualGatewayTlsValidationContextFileTrustProperty (
        VirtualGatewayTlsValidationContextFileTrustProperty(..),
        mkVirtualGatewayTlsValidationContextFileTrustProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data VirtualGatewayTlsValidationContextFileTrustProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaytlsvalidationcontextfiletrust.html>
    VirtualGatewayTlsValidationContextFileTrustProperty {VirtualGatewayTlsValidationContextFileTrustProperty -> ()
haddock_workaround_ :: (),
                                                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaytlsvalidationcontextfiletrust.html#cfn-appmesh-virtualgateway-virtualgatewaytlsvalidationcontextfiletrust-certificatechain>
                                                         VirtualGatewayTlsValidationContextFileTrustProperty -> Value Text
certificateChain :: (Value Prelude.Text)}
  deriving stock (VirtualGatewayTlsValidationContextFileTrustProperty
-> VirtualGatewayTlsValidationContextFileTrustProperty -> Bool
(VirtualGatewayTlsValidationContextFileTrustProperty
 -> VirtualGatewayTlsValidationContextFileTrustProperty -> Bool)
-> (VirtualGatewayTlsValidationContextFileTrustProperty
    -> VirtualGatewayTlsValidationContextFileTrustProperty -> Bool)
-> Eq VirtualGatewayTlsValidationContextFileTrustProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: VirtualGatewayTlsValidationContextFileTrustProperty
-> VirtualGatewayTlsValidationContextFileTrustProperty -> Bool
== :: VirtualGatewayTlsValidationContextFileTrustProperty
-> VirtualGatewayTlsValidationContextFileTrustProperty -> Bool
$c/= :: VirtualGatewayTlsValidationContextFileTrustProperty
-> VirtualGatewayTlsValidationContextFileTrustProperty -> Bool
/= :: VirtualGatewayTlsValidationContextFileTrustProperty
-> VirtualGatewayTlsValidationContextFileTrustProperty -> Bool
Prelude.Eq, Int -> VirtualGatewayTlsValidationContextFileTrustProperty -> ShowS
[VirtualGatewayTlsValidationContextFileTrustProperty] -> ShowS
VirtualGatewayTlsValidationContextFileTrustProperty -> String
(Int
 -> VirtualGatewayTlsValidationContextFileTrustProperty -> ShowS)
-> (VirtualGatewayTlsValidationContextFileTrustProperty -> String)
-> ([VirtualGatewayTlsValidationContextFileTrustProperty] -> ShowS)
-> Show VirtualGatewayTlsValidationContextFileTrustProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> VirtualGatewayTlsValidationContextFileTrustProperty -> ShowS
showsPrec :: Int -> VirtualGatewayTlsValidationContextFileTrustProperty -> ShowS
$cshow :: VirtualGatewayTlsValidationContextFileTrustProperty -> String
show :: VirtualGatewayTlsValidationContextFileTrustProperty -> String
$cshowList :: [VirtualGatewayTlsValidationContextFileTrustProperty] -> ShowS
showList :: [VirtualGatewayTlsValidationContextFileTrustProperty] -> ShowS
Prelude.Show)
mkVirtualGatewayTlsValidationContextFileTrustProperty ::
  Value Prelude.Text
  -> VirtualGatewayTlsValidationContextFileTrustProperty
mkVirtualGatewayTlsValidationContextFileTrustProperty :: Value Text -> VirtualGatewayTlsValidationContextFileTrustProperty
mkVirtualGatewayTlsValidationContextFileTrustProperty
  Value Text
certificateChain
  = VirtualGatewayTlsValidationContextFileTrustProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), certificateChain :: Value Text
certificateChain = Value Text
certificateChain}
instance ToResourceProperties VirtualGatewayTlsValidationContextFileTrustProperty where
  toResourceProperties :: VirtualGatewayTlsValidationContextFileTrustProperty
-> ResourceProperties
toResourceProperties
    VirtualGatewayTlsValidationContextFileTrustProperty {()
Value Text
haddock_workaround_ :: VirtualGatewayTlsValidationContextFileTrustProperty -> ()
certificateChain :: VirtualGatewayTlsValidationContextFileTrustProperty -> Value Text
haddock_workaround_ :: ()
certificateChain :: Value Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::AppMesh::VirtualGateway.VirtualGatewayTlsValidationContextFileTrust",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"CertificateChain" 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
certificateChain]}
instance JSON.ToJSON VirtualGatewayTlsValidationContextFileTrustProperty where
  toJSON :: VirtualGatewayTlsValidationContextFileTrustProperty -> Value
toJSON VirtualGatewayTlsValidationContextFileTrustProperty {()
Value Text
haddock_workaround_ :: VirtualGatewayTlsValidationContextFileTrustProperty -> ()
certificateChain :: VirtualGatewayTlsValidationContextFileTrustProperty -> Value Text
haddock_workaround_ :: ()
certificateChain :: Value Text
..}
    = [(Key, Value)] -> Value
JSON.object [Key
"CertificateChain" 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
certificateChain]
instance Property "CertificateChain" VirtualGatewayTlsValidationContextFileTrustProperty where
  type PropertyType "CertificateChain" VirtualGatewayTlsValidationContextFileTrustProperty = Value Prelude.Text
  set :: PropertyType
  "CertificateChain"
  VirtualGatewayTlsValidationContextFileTrustProperty
-> VirtualGatewayTlsValidationContextFileTrustProperty
-> VirtualGatewayTlsValidationContextFileTrustProperty
set
    PropertyType
  "CertificateChain"
  VirtualGatewayTlsValidationContextFileTrustProperty
newValue
    VirtualGatewayTlsValidationContextFileTrustProperty {()
Value Text
haddock_workaround_ :: VirtualGatewayTlsValidationContextFileTrustProperty -> ()
certificateChain :: VirtualGatewayTlsValidationContextFileTrustProperty -> Value Text
haddock_workaround_ :: ()
certificateChain :: Value Text
..}
    = VirtualGatewayTlsValidationContextFileTrustProperty
        {certificateChain :: Value Text
certificateChain = PropertyType
  "CertificateChain"
  VirtualGatewayTlsValidationContextFileTrustProperty
Value Text
newValue, ()
haddock_workaround_ :: ()
haddock_workaround_ :: ()
..}