module Stratosphere.AppTest.TestCase.M2NonManagedApplicationActionProperty (
        M2NonManagedApplicationActionProperty(..),
        mkM2NonManagedApplicationActionProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data M2NonManagedApplicationActionProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apptest-testcase-m2nonmanagedapplicationaction.html>
    M2NonManagedApplicationActionProperty {M2NonManagedApplicationActionProperty -> ()
haddock_workaround_ :: (),
                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apptest-testcase-m2nonmanagedapplicationaction.html#cfn-apptest-testcase-m2nonmanagedapplicationaction-actiontype>
                                           M2NonManagedApplicationActionProperty -> Value Text
actionType :: (Value Prelude.Text),
                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apptest-testcase-m2nonmanagedapplicationaction.html#cfn-apptest-testcase-m2nonmanagedapplicationaction-resource>
                                           M2NonManagedApplicationActionProperty -> Value Text
resource :: (Value Prelude.Text)}
  deriving stock (M2NonManagedApplicationActionProperty
-> M2NonManagedApplicationActionProperty -> Bool
(M2NonManagedApplicationActionProperty
 -> M2NonManagedApplicationActionProperty -> Bool)
-> (M2NonManagedApplicationActionProperty
    -> M2NonManagedApplicationActionProperty -> Bool)
-> Eq M2NonManagedApplicationActionProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: M2NonManagedApplicationActionProperty
-> M2NonManagedApplicationActionProperty -> Bool
== :: M2NonManagedApplicationActionProperty
-> M2NonManagedApplicationActionProperty -> Bool
$c/= :: M2NonManagedApplicationActionProperty
-> M2NonManagedApplicationActionProperty -> Bool
/= :: M2NonManagedApplicationActionProperty
-> M2NonManagedApplicationActionProperty -> Bool
Prelude.Eq, Int -> M2NonManagedApplicationActionProperty -> ShowS
[M2NonManagedApplicationActionProperty] -> ShowS
M2NonManagedApplicationActionProperty -> String
(Int -> M2NonManagedApplicationActionProperty -> ShowS)
-> (M2NonManagedApplicationActionProperty -> String)
-> ([M2NonManagedApplicationActionProperty] -> ShowS)
-> Show M2NonManagedApplicationActionProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> M2NonManagedApplicationActionProperty -> ShowS
showsPrec :: Int -> M2NonManagedApplicationActionProperty -> ShowS
$cshow :: M2NonManagedApplicationActionProperty -> String
show :: M2NonManagedApplicationActionProperty -> String
$cshowList :: [M2NonManagedApplicationActionProperty] -> ShowS
showList :: [M2NonManagedApplicationActionProperty] -> ShowS
Prelude.Show)
mkM2NonManagedApplicationActionProperty ::
  Value Prelude.Text
  -> Value Prelude.Text -> M2NonManagedApplicationActionProperty
mkM2NonManagedApplicationActionProperty :: Value Text -> Value Text -> M2NonManagedApplicationActionProperty
mkM2NonManagedApplicationActionProperty Value Text
actionType Value Text
resource
  = M2NonManagedApplicationActionProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), actionType :: Value Text
actionType = Value Text
actionType,
       resource :: Value Text
resource = Value Text
resource}
instance ToResourceProperties M2NonManagedApplicationActionProperty where
  toResourceProperties :: M2NonManagedApplicationActionProperty -> ResourceProperties
toResourceProperties M2NonManagedApplicationActionProperty {()
Value Text
haddock_workaround_ :: M2NonManagedApplicationActionProperty -> ()
actionType :: M2NonManagedApplicationActionProperty -> Value Text
resource :: M2NonManagedApplicationActionProperty -> Value Text
haddock_workaround_ :: ()
actionType :: Value Text
resource :: Value Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::AppTest::TestCase.M2NonManagedApplicationAction",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"ActionType" 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
actionType,
                       Key
"Resource" 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
resource]}
instance JSON.ToJSON M2NonManagedApplicationActionProperty where
  toJSON :: M2NonManagedApplicationActionProperty -> Value
toJSON M2NonManagedApplicationActionProperty {()
Value Text
haddock_workaround_ :: M2NonManagedApplicationActionProperty -> ()
actionType :: M2NonManagedApplicationActionProperty -> Value Text
resource :: M2NonManagedApplicationActionProperty -> Value Text
haddock_workaround_ :: ()
actionType :: Value Text
resource :: Value Text
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"ActionType" 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
actionType, Key
"Resource" 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
resource]
instance Property "ActionType" M2NonManagedApplicationActionProperty where
  type PropertyType "ActionType" M2NonManagedApplicationActionProperty = Value Prelude.Text
  set :: PropertyType "ActionType" M2NonManagedApplicationActionProperty
-> M2NonManagedApplicationActionProperty
-> M2NonManagedApplicationActionProperty
set PropertyType "ActionType" M2NonManagedApplicationActionProperty
newValue M2NonManagedApplicationActionProperty {()
Value Text
haddock_workaround_ :: M2NonManagedApplicationActionProperty -> ()
actionType :: M2NonManagedApplicationActionProperty -> Value Text
resource :: M2NonManagedApplicationActionProperty -> Value Text
haddock_workaround_ :: ()
actionType :: Value Text
resource :: Value Text
..}
    = M2NonManagedApplicationActionProperty {actionType :: Value Text
actionType = PropertyType "ActionType" M2NonManagedApplicationActionProperty
Value Text
newValue, ()
Value Text
haddock_workaround_ :: ()
resource :: Value Text
haddock_workaround_ :: ()
resource :: Value Text
..}
instance Property "Resource" M2NonManagedApplicationActionProperty where
  type PropertyType "Resource" M2NonManagedApplicationActionProperty = Value Prelude.Text
  set :: PropertyType "Resource" M2NonManagedApplicationActionProperty
-> M2NonManagedApplicationActionProperty
-> M2NonManagedApplicationActionProperty
set PropertyType "Resource" M2NonManagedApplicationActionProperty
newValue M2NonManagedApplicationActionProperty {()
Value Text
haddock_workaround_ :: M2NonManagedApplicationActionProperty -> ()
actionType :: M2NonManagedApplicationActionProperty -> Value Text
resource :: M2NonManagedApplicationActionProperty -> Value Text
haddock_workaround_ :: ()
actionType :: Value Text
resource :: Value Text
..}
    = M2NonManagedApplicationActionProperty {resource :: Value Text
resource = PropertyType "Resource" M2NonManagedApplicationActionProperty
Value Text
newValue, ()
Value Text
haddock_workaround_ :: ()
actionType :: Value Text
haddock_workaround_ :: ()
actionType :: Value Text
..}