module Stratosphere.CodePipeline.Pipeline.ArtifactStoreMapProperty (
        module Exports, ArtifactStoreMapProperty(..),
        mkArtifactStoreMapProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.CodePipeline.Pipeline.ArtifactStoreProperty as Exports
import Stratosphere.ResourceProperties
import Stratosphere.Value
data ArtifactStoreMapProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstoremap.html>
    ArtifactStoreMapProperty {ArtifactStoreMapProperty -> ()
haddock_workaround_ :: (),
                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstoremap.html#cfn-codepipeline-pipeline-artifactstoremap-artifactstore>
                              ArtifactStoreMapProperty -> ArtifactStoreProperty
artifactStore :: ArtifactStoreProperty,
                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstoremap.html#cfn-codepipeline-pipeline-artifactstoremap-region>
                              ArtifactStoreMapProperty -> Value Text
region :: (Value Prelude.Text)}
  deriving stock (ArtifactStoreMapProperty -> ArtifactStoreMapProperty -> Bool
(ArtifactStoreMapProperty -> ArtifactStoreMapProperty -> Bool)
-> (ArtifactStoreMapProperty -> ArtifactStoreMapProperty -> Bool)
-> Eq ArtifactStoreMapProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ArtifactStoreMapProperty -> ArtifactStoreMapProperty -> Bool
== :: ArtifactStoreMapProperty -> ArtifactStoreMapProperty -> Bool
$c/= :: ArtifactStoreMapProperty -> ArtifactStoreMapProperty -> Bool
/= :: ArtifactStoreMapProperty -> ArtifactStoreMapProperty -> Bool
Prelude.Eq, Int -> ArtifactStoreMapProperty -> ShowS
[ArtifactStoreMapProperty] -> ShowS
ArtifactStoreMapProperty -> String
(Int -> ArtifactStoreMapProperty -> ShowS)
-> (ArtifactStoreMapProperty -> String)
-> ([ArtifactStoreMapProperty] -> ShowS)
-> Show ArtifactStoreMapProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ArtifactStoreMapProperty -> ShowS
showsPrec :: Int -> ArtifactStoreMapProperty -> ShowS
$cshow :: ArtifactStoreMapProperty -> String
show :: ArtifactStoreMapProperty -> String
$cshowList :: [ArtifactStoreMapProperty] -> ShowS
showList :: [ArtifactStoreMapProperty] -> ShowS
Prelude.Show)
mkArtifactStoreMapProperty ::
  ArtifactStoreProperty
  -> Value Prelude.Text -> ArtifactStoreMapProperty
mkArtifactStoreMapProperty :: ArtifactStoreProperty -> Value Text -> ArtifactStoreMapProperty
mkArtifactStoreMapProperty ArtifactStoreProperty
artifactStore Value Text
region
  = ArtifactStoreMapProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), artifactStore :: ArtifactStoreProperty
artifactStore = ArtifactStoreProperty
artifactStore,
       region :: Value Text
region = Value Text
region}
instance ToResourceProperties ArtifactStoreMapProperty where
  toResourceProperties :: ArtifactStoreMapProperty -> ResourceProperties
toResourceProperties ArtifactStoreMapProperty {()
Value Text
ArtifactStoreProperty
haddock_workaround_ :: ArtifactStoreMapProperty -> ()
artifactStore :: ArtifactStoreMapProperty -> ArtifactStoreProperty
region :: ArtifactStoreMapProperty -> Value Text
haddock_workaround_ :: ()
artifactStore :: ArtifactStoreProperty
region :: Value Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::CodePipeline::Pipeline.ArtifactStoreMap",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"ArtifactStore" Key -> ArtifactStoreProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= ArtifactStoreProperty
artifactStore,
                       Key
"Region" 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
region]}
instance JSON.ToJSON ArtifactStoreMapProperty where
  toJSON :: ArtifactStoreMapProperty -> Value
toJSON ArtifactStoreMapProperty {()
Value Text
ArtifactStoreProperty
haddock_workaround_ :: ArtifactStoreMapProperty -> ()
artifactStore :: ArtifactStoreMapProperty -> ArtifactStoreProperty
region :: ArtifactStoreMapProperty -> Value Text
haddock_workaround_ :: ()
artifactStore :: ArtifactStoreProperty
region :: Value Text
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"ArtifactStore" Key -> ArtifactStoreProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= ArtifactStoreProperty
artifactStore, Key
"Region" 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
region]
instance Property "ArtifactStore" ArtifactStoreMapProperty where
  type PropertyType "ArtifactStore" ArtifactStoreMapProperty = ArtifactStoreProperty
  set :: PropertyType "ArtifactStore" ArtifactStoreMapProperty
-> ArtifactStoreMapProperty -> ArtifactStoreMapProperty
set PropertyType "ArtifactStore" ArtifactStoreMapProperty
newValue ArtifactStoreMapProperty {()
Value Text
ArtifactStoreProperty
haddock_workaround_ :: ArtifactStoreMapProperty -> ()
artifactStore :: ArtifactStoreMapProperty -> ArtifactStoreProperty
region :: ArtifactStoreMapProperty -> Value Text
haddock_workaround_ :: ()
artifactStore :: ArtifactStoreProperty
region :: Value Text
..}
    = ArtifactStoreMapProperty {artifactStore :: ArtifactStoreProperty
artifactStore = PropertyType "ArtifactStore" ArtifactStoreMapProperty
ArtifactStoreProperty
newValue, ()
Value Text
haddock_workaround_ :: ()
region :: Value Text
haddock_workaround_ :: ()
region :: Value Text
..}
instance Property "Region" ArtifactStoreMapProperty where
  type PropertyType "Region" ArtifactStoreMapProperty = Value Prelude.Text
  set :: PropertyType "Region" ArtifactStoreMapProperty
-> ArtifactStoreMapProperty -> ArtifactStoreMapProperty
set PropertyType "Region" ArtifactStoreMapProperty
newValue ArtifactStoreMapProperty {()
Value Text
ArtifactStoreProperty
haddock_workaround_ :: ArtifactStoreMapProperty -> ()
artifactStore :: ArtifactStoreMapProperty -> ArtifactStoreProperty
region :: ArtifactStoreMapProperty -> Value Text
haddock_workaround_ :: ()
artifactStore :: ArtifactStoreProperty
region :: Value Text
..}
    = ArtifactStoreMapProperty {region :: Value Text
region = PropertyType "Region" ArtifactStoreMapProperty
Value Text
newValue, ()
ArtifactStoreProperty
haddock_workaround_ :: ()
artifactStore :: ArtifactStoreProperty
haddock_workaround_ :: ()
artifactStore :: ArtifactStoreProperty
..}