module Stratosphere.DataZone.ProjectProfile.RegionProperty (
        RegionProperty(..), mkRegionProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data RegionProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-region.html>
    RegionProperty {RegionProperty -> ()
haddock_workaround_ :: (),
                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectprofile-region.html#cfn-datazone-projectprofile-region-regionname>
                    RegionProperty -> Value Text
regionName :: (Value Prelude.Text)}
  deriving stock (RegionProperty -> RegionProperty -> Bool
(RegionProperty -> RegionProperty -> Bool)
-> (RegionProperty -> RegionProperty -> Bool) -> Eq RegionProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: RegionProperty -> RegionProperty -> Bool
== :: RegionProperty -> RegionProperty -> Bool
$c/= :: RegionProperty -> RegionProperty -> Bool
/= :: RegionProperty -> RegionProperty -> Bool
Prelude.Eq, Int -> RegionProperty -> ShowS
[RegionProperty] -> ShowS
RegionProperty -> String
(Int -> RegionProperty -> ShowS)
-> (RegionProperty -> String)
-> ([RegionProperty] -> ShowS)
-> Show RegionProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> RegionProperty -> ShowS
showsPrec :: Int -> RegionProperty -> ShowS
$cshow :: RegionProperty -> String
show :: RegionProperty -> String
$cshowList :: [RegionProperty] -> ShowS
showList :: [RegionProperty] -> ShowS
Prelude.Show)
mkRegionProperty :: Value Prelude.Text -> RegionProperty
mkRegionProperty :: Value Text -> RegionProperty
mkRegionProperty Value Text
regionName
  = RegionProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), regionName :: Value Text
regionName = Value Text
regionName}
instance ToResourceProperties RegionProperty where
  toResourceProperties :: RegionProperty -> ResourceProperties
toResourceProperties RegionProperty {()
Value Text
haddock_workaround_ :: RegionProperty -> ()
regionName :: RegionProperty -> Value Text
haddock_workaround_ :: ()
regionName :: Value Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::DataZone::ProjectProfile.Region",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"RegionName" 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
regionName]}
instance JSON.ToJSON RegionProperty where
  toJSON :: RegionProperty -> Value
toJSON RegionProperty {()
Value Text
haddock_workaround_ :: RegionProperty -> ()
regionName :: RegionProperty -> Value Text
haddock_workaround_ :: ()
regionName :: Value Text
..}
    = [(Key, Value)] -> Value
JSON.object [Key
"RegionName" 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
regionName]
instance Property "RegionName" RegionProperty where
  type PropertyType "RegionName" RegionProperty = Value Prelude.Text
  set :: PropertyType "RegionName" RegionProperty
-> RegionProperty -> RegionProperty
set PropertyType "RegionName" RegionProperty
newValue RegionProperty {()
Value Text
haddock_workaround_ :: RegionProperty -> ()
regionName :: RegionProperty -> Value Text
haddock_workaround_ :: ()
regionName :: Value Text
..}
    = RegionProperty {regionName :: Value Text
regionName = PropertyType "RegionName" RegionProperty
Value Text
newValue, ()
haddock_workaround_ :: ()
haddock_workaround_ :: ()
..}