module Stratosphere.WAFv2.WebACL.ResponseInspectionJsonProperty (
        ResponseInspectionJsonProperty(..),
        mkResponseInspectionJsonProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data ResponseInspectionJsonProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-responseinspectionjson.html>
    ResponseInspectionJsonProperty {ResponseInspectionJsonProperty -> ()
haddock_workaround_ :: (),
                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-responseinspectionjson.html#cfn-wafv2-webacl-responseinspectionjson-failurevalues>
                                    ResponseInspectionJsonProperty -> ValueList Text
failureValues :: (ValueList Prelude.Text),
                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-responseinspectionjson.html#cfn-wafv2-webacl-responseinspectionjson-identifier>
                                    ResponseInspectionJsonProperty -> Value Text
identifier :: (Value Prelude.Text),
                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-responseinspectionjson.html#cfn-wafv2-webacl-responseinspectionjson-successvalues>
                                    ResponseInspectionJsonProperty -> ValueList Text
successValues :: (ValueList Prelude.Text)}
  deriving stock (ResponseInspectionJsonProperty
-> ResponseInspectionJsonProperty -> Bool
(ResponseInspectionJsonProperty
 -> ResponseInspectionJsonProperty -> Bool)
-> (ResponseInspectionJsonProperty
    -> ResponseInspectionJsonProperty -> Bool)
-> Eq ResponseInspectionJsonProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ResponseInspectionJsonProperty
-> ResponseInspectionJsonProperty -> Bool
== :: ResponseInspectionJsonProperty
-> ResponseInspectionJsonProperty -> Bool
$c/= :: ResponseInspectionJsonProperty
-> ResponseInspectionJsonProperty -> Bool
/= :: ResponseInspectionJsonProperty
-> ResponseInspectionJsonProperty -> Bool
Prelude.Eq, Int -> ResponseInspectionJsonProperty -> ShowS
[ResponseInspectionJsonProperty] -> ShowS
ResponseInspectionJsonProperty -> String
(Int -> ResponseInspectionJsonProperty -> ShowS)
-> (ResponseInspectionJsonProperty -> String)
-> ([ResponseInspectionJsonProperty] -> ShowS)
-> Show ResponseInspectionJsonProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ResponseInspectionJsonProperty -> ShowS
showsPrec :: Int -> ResponseInspectionJsonProperty -> ShowS
$cshow :: ResponseInspectionJsonProperty -> String
show :: ResponseInspectionJsonProperty -> String
$cshowList :: [ResponseInspectionJsonProperty] -> ShowS
showList :: [ResponseInspectionJsonProperty] -> ShowS
Prelude.Show)
mkResponseInspectionJsonProperty ::
  ValueList Prelude.Text
  -> Value Prelude.Text
     -> ValueList Prelude.Text -> ResponseInspectionJsonProperty
mkResponseInspectionJsonProperty :: ValueList Text
-> Value Text -> ValueList Text -> ResponseInspectionJsonProperty
mkResponseInspectionJsonProperty
  ValueList Text
failureValues
  Value Text
identifier
  ValueList Text
successValues
  = ResponseInspectionJsonProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), failureValues :: ValueList Text
failureValues = ValueList Text
failureValues,
       identifier :: Value Text
identifier = Value Text
identifier, successValues :: ValueList Text
successValues = ValueList Text
successValues}
instance ToResourceProperties ResponseInspectionJsonProperty where
  toResourceProperties :: ResponseInspectionJsonProperty -> ResourceProperties
toResourceProperties ResponseInspectionJsonProperty {()
ValueList Text
Value Text
haddock_workaround_ :: ResponseInspectionJsonProperty -> ()
failureValues :: ResponseInspectionJsonProperty -> ValueList Text
identifier :: ResponseInspectionJsonProperty -> Value Text
successValues :: ResponseInspectionJsonProperty -> ValueList Text
haddock_workaround_ :: ()
failureValues :: ValueList Text
identifier :: Value Text
successValues :: ValueList Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::WAFv2::WebACL.ResponseInspectionJson",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"FailureValues" Key -> ValueList Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= ValueList Text
failureValues,
                       Key
"Identifier" 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
identifier,
                       Key
"SuccessValues" Key -> ValueList Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= ValueList Text
successValues]}
instance JSON.ToJSON ResponseInspectionJsonProperty where
  toJSON :: ResponseInspectionJsonProperty -> Value
toJSON ResponseInspectionJsonProperty {()
ValueList Text
Value Text
haddock_workaround_ :: ResponseInspectionJsonProperty -> ()
failureValues :: ResponseInspectionJsonProperty -> ValueList Text
identifier :: ResponseInspectionJsonProperty -> Value Text
successValues :: ResponseInspectionJsonProperty -> ValueList Text
haddock_workaround_ :: ()
failureValues :: ValueList Text
identifier :: Value Text
successValues :: ValueList Text
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"FailureValues" Key -> ValueList Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= ValueList Text
failureValues,
         Key
"Identifier" 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
identifier,
         Key
"SuccessValues" Key -> ValueList Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= ValueList Text
successValues]
instance Property "FailureValues" ResponseInspectionJsonProperty where
  type PropertyType "FailureValues" ResponseInspectionJsonProperty = ValueList Prelude.Text
  set :: PropertyType "FailureValues" ResponseInspectionJsonProperty
-> ResponseInspectionJsonProperty -> ResponseInspectionJsonProperty
set PropertyType "FailureValues" ResponseInspectionJsonProperty
newValue ResponseInspectionJsonProperty {()
ValueList Text
Value Text
haddock_workaround_ :: ResponseInspectionJsonProperty -> ()
failureValues :: ResponseInspectionJsonProperty -> ValueList Text
identifier :: ResponseInspectionJsonProperty -> Value Text
successValues :: ResponseInspectionJsonProperty -> ValueList Text
haddock_workaround_ :: ()
failureValues :: ValueList Text
identifier :: Value Text
successValues :: ValueList Text
..}
    = ResponseInspectionJsonProperty {failureValues :: ValueList Text
failureValues = PropertyType "FailureValues" ResponseInspectionJsonProperty
ValueList Text
newValue, ()
ValueList Text
Value Text
haddock_workaround_ :: ()
identifier :: Value Text
successValues :: ValueList Text
haddock_workaround_ :: ()
identifier :: Value Text
successValues :: ValueList Text
..}
instance Property "Identifier" ResponseInspectionJsonProperty where
  type PropertyType "Identifier" ResponseInspectionJsonProperty = Value Prelude.Text
  set :: PropertyType "Identifier" ResponseInspectionJsonProperty
-> ResponseInspectionJsonProperty -> ResponseInspectionJsonProperty
set PropertyType "Identifier" ResponseInspectionJsonProperty
newValue ResponseInspectionJsonProperty {()
ValueList Text
Value Text
haddock_workaround_ :: ResponseInspectionJsonProperty -> ()
failureValues :: ResponseInspectionJsonProperty -> ValueList Text
identifier :: ResponseInspectionJsonProperty -> Value Text
successValues :: ResponseInspectionJsonProperty -> ValueList Text
haddock_workaround_ :: ()
failureValues :: ValueList Text
identifier :: Value Text
successValues :: ValueList Text
..}
    = ResponseInspectionJsonProperty {identifier :: Value Text
identifier = PropertyType "Identifier" ResponseInspectionJsonProperty
Value Text
newValue, ()
ValueList Text
haddock_workaround_ :: ()
failureValues :: ValueList Text
successValues :: ValueList Text
haddock_workaround_ :: ()
failureValues :: ValueList Text
successValues :: ValueList Text
..}
instance Property "SuccessValues" ResponseInspectionJsonProperty where
  type PropertyType "SuccessValues" ResponseInspectionJsonProperty = ValueList Prelude.Text
  set :: PropertyType "SuccessValues" ResponseInspectionJsonProperty
-> ResponseInspectionJsonProperty -> ResponseInspectionJsonProperty
set PropertyType "SuccessValues" ResponseInspectionJsonProperty
newValue ResponseInspectionJsonProperty {()
ValueList Text
Value Text
haddock_workaround_ :: ResponseInspectionJsonProperty -> ()
failureValues :: ResponseInspectionJsonProperty -> ValueList Text
identifier :: ResponseInspectionJsonProperty -> Value Text
successValues :: ResponseInspectionJsonProperty -> ValueList Text
haddock_workaround_ :: ()
failureValues :: ValueList Text
identifier :: Value Text
successValues :: ValueList Text
..}
    = ResponseInspectionJsonProperty {successValues :: ValueList Text
successValues = PropertyType "SuccessValues" ResponseInspectionJsonProperty
ValueList Text
newValue, ()
ValueList Text
Value Text
haddock_workaround_ :: ()
failureValues :: ValueList Text
identifier :: Value Text
haddock_workaround_ :: ()
failureValues :: ValueList Text
identifier :: Value Text
..}