module Stratosphere.EntityResolution.MatchingWorkflow.IntermediateSourceConfigurationProperty (
        IntermediateSourceConfigurationProperty(..),
        mkIntermediateSourceConfigurationProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data IntermediateSourceConfigurationProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-entityresolution-matchingworkflow-intermediatesourceconfiguration.html>
    IntermediateSourceConfigurationProperty {IntermediateSourceConfigurationProperty -> ()
haddock_workaround_ :: (),
                                             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-entityresolution-matchingworkflow-intermediatesourceconfiguration.html#cfn-entityresolution-matchingworkflow-intermediatesourceconfiguration-intermediates3path>
                                             IntermediateSourceConfigurationProperty -> Value Text
intermediateS3Path :: (Value Prelude.Text)}
  deriving stock (IntermediateSourceConfigurationProperty
-> IntermediateSourceConfigurationProperty -> Bool
(IntermediateSourceConfigurationProperty
 -> IntermediateSourceConfigurationProperty -> Bool)
-> (IntermediateSourceConfigurationProperty
    -> IntermediateSourceConfigurationProperty -> Bool)
-> Eq IntermediateSourceConfigurationProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: IntermediateSourceConfigurationProperty
-> IntermediateSourceConfigurationProperty -> Bool
== :: IntermediateSourceConfigurationProperty
-> IntermediateSourceConfigurationProperty -> Bool
$c/= :: IntermediateSourceConfigurationProperty
-> IntermediateSourceConfigurationProperty -> Bool
/= :: IntermediateSourceConfigurationProperty
-> IntermediateSourceConfigurationProperty -> Bool
Prelude.Eq, Int -> IntermediateSourceConfigurationProperty -> ShowS
[IntermediateSourceConfigurationProperty] -> ShowS
IntermediateSourceConfigurationProperty -> String
(Int -> IntermediateSourceConfigurationProperty -> ShowS)
-> (IntermediateSourceConfigurationProperty -> String)
-> ([IntermediateSourceConfigurationProperty] -> ShowS)
-> Show IntermediateSourceConfigurationProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> IntermediateSourceConfigurationProperty -> ShowS
showsPrec :: Int -> IntermediateSourceConfigurationProperty -> ShowS
$cshow :: IntermediateSourceConfigurationProperty -> String
show :: IntermediateSourceConfigurationProperty -> String
$cshowList :: [IntermediateSourceConfigurationProperty] -> ShowS
showList :: [IntermediateSourceConfigurationProperty] -> ShowS
Prelude.Show)
mkIntermediateSourceConfigurationProperty ::
  Value Prelude.Text -> IntermediateSourceConfigurationProperty
mkIntermediateSourceConfigurationProperty :: Value Text -> IntermediateSourceConfigurationProperty
mkIntermediateSourceConfigurationProperty Value Text
intermediateS3Path
  = IntermediateSourceConfigurationProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), intermediateS3Path :: Value Text
intermediateS3Path = Value Text
intermediateS3Path}
instance ToResourceProperties IntermediateSourceConfigurationProperty where
  toResourceProperties :: IntermediateSourceConfigurationProperty -> ResourceProperties
toResourceProperties IntermediateSourceConfigurationProperty {()
Value Text
haddock_workaround_ :: IntermediateSourceConfigurationProperty -> ()
intermediateS3Path :: IntermediateSourceConfigurationProperty -> Value Text
haddock_workaround_ :: ()
intermediateS3Path :: Value Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::EntityResolution::MatchingWorkflow.IntermediateSourceConfiguration",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"IntermediateS3Path" 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
intermediateS3Path]}
instance JSON.ToJSON IntermediateSourceConfigurationProperty where
  toJSON :: IntermediateSourceConfigurationProperty -> Value
toJSON IntermediateSourceConfigurationProperty {()
Value Text
haddock_workaround_ :: IntermediateSourceConfigurationProperty -> ()
intermediateS3Path :: IntermediateSourceConfigurationProperty -> Value Text
haddock_workaround_ :: ()
intermediateS3Path :: Value Text
..}
    = [(Key, Value)] -> Value
JSON.object [Key
"IntermediateS3Path" 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
intermediateS3Path]
instance Property "IntermediateS3Path" IntermediateSourceConfigurationProperty where
  type PropertyType "IntermediateS3Path" IntermediateSourceConfigurationProperty = Value Prelude.Text
  set :: PropertyType
  "IntermediateS3Path" IntermediateSourceConfigurationProperty
-> IntermediateSourceConfigurationProperty
-> IntermediateSourceConfigurationProperty
set PropertyType
  "IntermediateS3Path" IntermediateSourceConfigurationProperty
newValue IntermediateSourceConfigurationProperty {()
Value Text
haddock_workaround_ :: IntermediateSourceConfigurationProperty -> ()
intermediateS3Path :: IntermediateSourceConfigurationProperty -> Value Text
haddock_workaround_ :: ()
intermediateS3Path :: Value Text
..}
    = IntermediateSourceConfigurationProperty
        {intermediateS3Path :: Value Text
intermediateS3Path = PropertyType
  "IntermediateS3Path" IntermediateSourceConfigurationProperty
Value Text
newValue, ()
haddock_workaround_ :: ()
haddock_workaround_ :: ()
..}