module Stratosphere.IoTFleetWise.Campaign.MqttTopicConfigProperty ( MqttTopicConfigProperty(..), mkMqttTopicConfigProperty ) where import qualified Data.Aeson as JSON import qualified Stratosphere.Prelude as Prelude import Stratosphere.Property import Stratosphere.ResourceProperties import Stratosphere.Value data MqttTopicConfigProperty = -- | See: MqttTopicConfigProperty {haddock_workaround_ :: (), -- | See: executionRoleArn :: (Value Prelude.Text), -- | See: mqttTopicArn :: (Value Prelude.Text)} deriving stock (Prelude.Eq, Prelude.Show) mkMqttTopicConfigProperty :: Value Prelude.Text -> Value Prelude.Text -> MqttTopicConfigProperty mkMqttTopicConfigProperty executionRoleArn mqttTopicArn = MqttTopicConfigProperty {haddock_workaround_ = (), executionRoleArn = executionRoleArn, mqttTopicArn = mqttTopicArn} instance ToResourceProperties MqttTopicConfigProperty where toResourceProperties MqttTopicConfigProperty {..} = ResourceProperties {awsType = "AWS::IoTFleetWise::Campaign.MqttTopicConfig", supportsTags = Prelude.False, properties = ["ExecutionRoleArn" JSON..= executionRoleArn, "MqttTopicArn" JSON..= mqttTopicArn]} instance JSON.ToJSON MqttTopicConfigProperty where toJSON MqttTopicConfigProperty {..} = JSON.object ["ExecutionRoleArn" JSON..= executionRoleArn, "MqttTopicArn" JSON..= mqttTopicArn] instance Property "ExecutionRoleArn" MqttTopicConfigProperty where type PropertyType "ExecutionRoleArn" MqttTopicConfigProperty = Value Prelude.Text set newValue MqttTopicConfigProperty {..} = MqttTopicConfigProperty {executionRoleArn = newValue, ..} instance Property "MqttTopicArn" MqttTopicConfigProperty where type PropertyType "MqttTopicArn" MqttTopicConfigProperty = Value Prelude.Text set newValue MqttTopicConfigProperty {..} = MqttTopicConfigProperty {mqttTopicArn = newValue, ..}