module Stratosphere.KafkaConnect.Connector.ApacheKafkaClusterProperty (
        module Exports, ApacheKafkaClusterProperty(..),
        mkApacheKafkaClusterProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.KafkaConnect.Connector.VpcProperty as Exports
import Stratosphere.ResourceProperties
import Stratosphere.Value
data ApacheKafkaClusterProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kafkaconnect-connector-apachekafkacluster.html>
    ApacheKafkaClusterProperty {ApacheKafkaClusterProperty -> ()
haddock_workaround_ :: (),
                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kafkaconnect-connector-apachekafkacluster.html#cfn-kafkaconnect-connector-apachekafkacluster-bootstrapservers>
                                ApacheKafkaClusterProperty -> Value Text
bootstrapServers :: (Value Prelude.Text),
                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kafkaconnect-connector-apachekafkacluster.html#cfn-kafkaconnect-connector-apachekafkacluster-vpc>
                                ApacheKafkaClusterProperty -> VpcProperty
vpc :: VpcProperty}
  deriving stock (ApacheKafkaClusterProperty -> ApacheKafkaClusterProperty -> Bool
(ApacheKafkaClusterProperty -> ApacheKafkaClusterProperty -> Bool)
-> (ApacheKafkaClusterProperty
    -> ApacheKafkaClusterProperty -> Bool)
-> Eq ApacheKafkaClusterProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ApacheKafkaClusterProperty -> ApacheKafkaClusterProperty -> Bool
== :: ApacheKafkaClusterProperty -> ApacheKafkaClusterProperty -> Bool
$c/= :: ApacheKafkaClusterProperty -> ApacheKafkaClusterProperty -> Bool
/= :: ApacheKafkaClusterProperty -> ApacheKafkaClusterProperty -> Bool
Prelude.Eq, Int -> ApacheKafkaClusterProperty -> ShowS
[ApacheKafkaClusterProperty] -> ShowS
ApacheKafkaClusterProperty -> String
(Int -> ApacheKafkaClusterProperty -> ShowS)
-> (ApacheKafkaClusterProperty -> String)
-> ([ApacheKafkaClusterProperty] -> ShowS)
-> Show ApacheKafkaClusterProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ApacheKafkaClusterProperty -> ShowS
showsPrec :: Int -> ApacheKafkaClusterProperty -> ShowS
$cshow :: ApacheKafkaClusterProperty -> String
show :: ApacheKafkaClusterProperty -> String
$cshowList :: [ApacheKafkaClusterProperty] -> ShowS
showList :: [ApacheKafkaClusterProperty] -> ShowS
Prelude.Show)
mkApacheKafkaClusterProperty ::
  Value Prelude.Text -> VpcProperty -> ApacheKafkaClusterProperty
mkApacheKafkaClusterProperty :: Value Text -> VpcProperty -> ApacheKafkaClusterProperty
mkApacheKafkaClusterProperty Value Text
bootstrapServers VpcProperty
vpc
  = ApacheKafkaClusterProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), bootstrapServers :: Value Text
bootstrapServers = Value Text
bootstrapServers,
       vpc :: VpcProperty
vpc = VpcProperty
vpc}
instance ToResourceProperties ApacheKafkaClusterProperty where
  toResourceProperties :: ApacheKafkaClusterProperty -> ResourceProperties
toResourceProperties ApacheKafkaClusterProperty {()
Value Text
VpcProperty
haddock_workaround_ :: ApacheKafkaClusterProperty -> ()
bootstrapServers :: ApacheKafkaClusterProperty -> Value Text
vpc :: ApacheKafkaClusterProperty -> VpcProperty
haddock_workaround_ :: ()
bootstrapServers :: Value Text
vpc :: VpcProperty
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::KafkaConnect::Connector.ApacheKafkaCluster",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"BootstrapServers" 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
bootstrapServers,
                       Key
"Vpc" Key -> VpcProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= VpcProperty
vpc]}
instance JSON.ToJSON ApacheKafkaClusterProperty where
  toJSON :: ApacheKafkaClusterProperty -> Value
toJSON ApacheKafkaClusterProperty {()
Value Text
VpcProperty
haddock_workaround_ :: ApacheKafkaClusterProperty -> ()
bootstrapServers :: ApacheKafkaClusterProperty -> Value Text
vpc :: ApacheKafkaClusterProperty -> VpcProperty
haddock_workaround_ :: ()
bootstrapServers :: Value Text
vpc :: VpcProperty
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"BootstrapServers" 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
bootstrapServers, Key
"Vpc" Key -> VpcProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= VpcProperty
vpc]
instance Property "BootstrapServers" ApacheKafkaClusterProperty where
  type PropertyType "BootstrapServers" ApacheKafkaClusterProperty = Value Prelude.Text
  set :: PropertyType "BootstrapServers" ApacheKafkaClusterProperty
-> ApacheKafkaClusterProperty -> ApacheKafkaClusterProperty
set PropertyType "BootstrapServers" ApacheKafkaClusterProperty
newValue ApacheKafkaClusterProperty {()
Value Text
VpcProperty
haddock_workaround_ :: ApacheKafkaClusterProperty -> ()
bootstrapServers :: ApacheKafkaClusterProperty -> Value Text
vpc :: ApacheKafkaClusterProperty -> VpcProperty
haddock_workaround_ :: ()
bootstrapServers :: Value Text
vpc :: VpcProperty
..}
    = ApacheKafkaClusterProperty {bootstrapServers :: Value Text
bootstrapServers = PropertyType "BootstrapServers" ApacheKafkaClusterProperty
Value Text
newValue, ()
VpcProperty
haddock_workaround_ :: ()
vpc :: VpcProperty
haddock_workaround_ :: ()
vpc :: VpcProperty
..}
instance Property "Vpc" ApacheKafkaClusterProperty where
  type PropertyType "Vpc" ApacheKafkaClusterProperty = VpcProperty
  set :: PropertyType "Vpc" ApacheKafkaClusterProperty
-> ApacheKafkaClusterProperty -> ApacheKafkaClusterProperty
set PropertyType "Vpc" ApacheKafkaClusterProperty
newValue ApacheKafkaClusterProperty {()
Value Text
VpcProperty
haddock_workaround_ :: ApacheKafkaClusterProperty -> ()
bootstrapServers :: ApacheKafkaClusterProperty -> Value Text
vpc :: ApacheKafkaClusterProperty -> VpcProperty
haddock_workaround_ :: ()
bootstrapServers :: Value Text
vpc :: VpcProperty
..}
    = ApacheKafkaClusterProperty {vpc :: VpcProperty
vpc = PropertyType "Vpc" ApacheKafkaClusterProperty
VpcProperty
newValue, ()
Value Text
haddock_workaround_ :: ()
bootstrapServers :: Value Text
haddock_workaround_ :: ()
bootstrapServers :: Value Text
..}