module Stratosphere.DataZone.DataSource.FormInputProperty ( FormInputProperty(..), mkFormInputProperty ) where import qualified Data.Aeson as JSON import qualified Stratosphere.Prelude as Prelude import Stratosphere.Property import Stratosphere.ResourceProperties import Stratosphere.Value data FormInputProperty = -- | See: FormInputProperty {haddock_workaround_ :: (), -- | See: content :: (Prelude.Maybe (Value Prelude.Text)), -- | See: formName :: (Value Prelude.Text), -- | See: typeIdentifier :: (Prelude.Maybe (Value Prelude.Text)), -- | See: typeRevision :: (Prelude.Maybe (Value Prelude.Text))} deriving stock (Prelude.Eq, Prelude.Show) mkFormInputProperty :: Value Prelude.Text -> FormInputProperty mkFormInputProperty formName = FormInputProperty {haddock_workaround_ = (), formName = formName, content = Prelude.Nothing, typeIdentifier = Prelude.Nothing, typeRevision = Prelude.Nothing} instance ToResourceProperties FormInputProperty where toResourceProperties FormInputProperty {..} = ResourceProperties {awsType = "AWS::DataZone::DataSource.FormInput", supportsTags = Prelude.False, properties = Prelude.fromList ((Prelude.<>) ["FormName" JSON..= formName] (Prelude.catMaybes [(JSON..=) "Content" Prelude.<$> content, (JSON..=) "TypeIdentifier" Prelude.<$> typeIdentifier, (JSON..=) "TypeRevision" Prelude.<$> typeRevision]))} instance JSON.ToJSON FormInputProperty where toJSON FormInputProperty {..} = JSON.object (Prelude.fromList ((Prelude.<>) ["FormName" JSON..= formName] (Prelude.catMaybes [(JSON..=) "Content" Prelude.<$> content, (JSON..=) "TypeIdentifier" Prelude.<$> typeIdentifier, (JSON..=) "TypeRevision" Prelude.<$> typeRevision]))) instance Property "Content" FormInputProperty where type PropertyType "Content" FormInputProperty = Value Prelude.Text set newValue FormInputProperty {..} = FormInputProperty {content = Prelude.pure newValue, ..} instance Property "FormName" FormInputProperty where type PropertyType "FormName" FormInputProperty = Value Prelude.Text set newValue FormInputProperty {..} = FormInputProperty {formName = newValue, ..} instance Property "TypeIdentifier" FormInputProperty where type PropertyType "TypeIdentifier" FormInputProperty = Value Prelude.Text set newValue FormInputProperty {..} = FormInputProperty {typeIdentifier = Prelude.pure newValue, ..} instance Property "TypeRevision" FormInputProperty where type PropertyType "TypeRevision" FormInputProperty = Value Prelude.Text set newValue FormInputProperty {..} = FormInputProperty {typeRevision = Prelude.pure newValue, ..}