{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.SageMaker.Types.QualityCheckStepMetadata
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.SageMaker.Types.QualityCheckStepMetadata where

import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude

-- | Container for the metadata for a Quality check step. For more
-- information, see the topic on
-- <https://docs.aws.amazon.com/sagemaker/latest/dg/build-and-manage-steps.html#step-type-quality-check QualityCheck step>
-- in the /Amazon SageMaker Developer Guide/.
--
-- /See:/ 'newQualityCheckStepMetadata' smart constructor.
data QualityCheckStepMetadata = QualityCheckStepMetadata'
  { -- | The Amazon S3 URI of the baseline constraints file used for the drift
    -- check.
    QualityCheckStepMetadata -> Maybe Text
baselineUsedForDriftCheckConstraints :: Prelude.Maybe Prelude.Text,
    -- | The Amazon S3 URI of the baseline statistics file used for the drift
    -- check.
    QualityCheckStepMetadata -> Maybe Text
baselineUsedForDriftCheckStatistics :: Prelude.Maybe Prelude.Text,
    -- | The Amazon S3 URI of the newly calculated baseline constraints file.
    QualityCheckStepMetadata -> Maybe Text
calculatedBaselineConstraints :: Prelude.Maybe Prelude.Text,
    -- | The Amazon S3 URI of the newly calculated baseline statistics file.
    QualityCheckStepMetadata -> Maybe Text
calculatedBaselineStatistics :: Prelude.Maybe Prelude.Text,
    -- | The Amazon Resource Name (ARN) of the Quality check processing job that
    -- was run by this step execution.
    QualityCheckStepMetadata -> Maybe Text
checkJobArn :: Prelude.Maybe Prelude.Text,
    -- | The type of the Quality check step.
    QualityCheckStepMetadata -> Maybe Text
checkType :: Prelude.Maybe Prelude.Text,
    -- | The model package group name.
    QualityCheckStepMetadata -> Maybe Text
modelPackageGroupName :: Prelude.Maybe Prelude.Text,
    -- | This flag indicates if a newly calculated baseline can be accessed
    -- through step properties @BaselineUsedForDriftCheckConstraints@ and
    -- @BaselineUsedForDriftCheckStatistics@. If it is set to @False@, the
    -- previous baseline of the configured check type must also be available.
    -- These can be accessed through the @BaselineUsedForDriftCheckConstraints@
    -- and @ BaselineUsedForDriftCheckStatistics@ properties.
    QualityCheckStepMetadata -> Maybe Bool
registerNewBaseline :: Prelude.Maybe Prelude.Bool,
    -- | This flag indicates if the drift check against the previous baseline
    -- will be skipped or not. If it is set to @False@, the previous baseline
    -- of the configured check type must be available.
    QualityCheckStepMetadata -> Maybe Bool
skipCheck :: Prelude.Maybe Prelude.Bool,
    -- | The Amazon S3 URI of violation report if violations are detected.
    QualityCheckStepMetadata -> Maybe Text
violationReport :: Prelude.Maybe Prelude.Text
  }
  deriving (QualityCheckStepMetadata -> QualityCheckStepMetadata -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: QualityCheckStepMetadata -> QualityCheckStepMetadata -> Bool
$c/= :: QualityCheckStepMetadata -> QualityCheckStepMetadata -> Bool
== :: QualityCheckStepMetadata -> QualityCheckStepMetadata -> Bool
$c== :: QualityCheckStepMetadata -> QualityCheckStepMetadata -> Bool
Prelude.Eq, ReadPrec [QualityCheckStepMetadata]
ReadPrec QualityCheckStepMetadata
Int -> ReadS QualityCheckStepMetadata
ReadS [QualityCheckStepMetadata]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [QualityCheckStepMetadata]
$creadListPrec :: ReadPrec [QualityCheckStepMetadata]
readPrec :: ReadPrec QualityCheckStepMetadata
$creadPrec :: ReadPrec QualityCheckStepMetadata
readList :: ReadS [QualityCheckStepMetadata]
$creadList :: ReadS [QualityCheckStepMetadata]
readsPrec :: Int -> ReadS QualityCheckStepMetadata
$creadsPrec :: Int -> ReadS QualityCheckStepMetadata
Prelude.Read, Int -> QualityCheckStepMetadata -> ShowS
[QualityCheckStepMetadata] -> ShowS
QualityCheckStepMetadata -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [QualityCheckStepMetadata] -> ShowS
$cshowList :: [QualityCheckStepMetadata] -> ShowS
show :: QualityCheckStepMetadata -> String
$cshow :: QualityCheckStepMetadata -> String
showsPrec :: Int -> QualityCheckStepMetadata -> ShowS
$cshowsPrec :: Int -> QualityCheckStepMetadata -> ShowS
Prelude.Show, forall x.
Rep QualityCheckStepMetadata x -> QualityCheckStepMetadata
forall x.
QualityCheckStepMetadata -> Rep QualityCheckStepMetadata x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep QualityCheckStepMetadata x -> QualityCheckStepMetadata
$cfrom :: forall x.
QualityCheckStepMetadata -> Rep QualityCheckStepMetadata x
Prelude.Generic)

-- |
-- Create a value of 'QualityCheckStepMetadata' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'baselineUsedForDriftCheckConstraints', 'qualityCheckStepMetadata_baselineUsedForDriftCheckConstraints' - The Amazon S3 URI of the baseline constraints file used for the drift
-- check.
--
-- 'baselineUsedForDriftCheckStatistics', 'qualityCheckStepMetadata_baselineUsedForDriftCheckStatistics' - The Amazon S3 URI of the baseline statistics file used for the drift
-- check.
--
-- 'calculatedBaselineConstraints', 'qualityCheckStepMetadata_calculatedBaselineConstraints' - The Amazon S3 URI of the newly calculated baseline constraints file.
--
-- 'calculatedBaselineStatistics', 'qualityCheckStepMetadata_calculatedBaselineStatistics' - The Amazon S3 URI of the newly calculated baseline statistics file.
--
-- 'checkJobArn', 'qualityCheckStepMetadata_checkJobArn' - The Amazon Resource Name (ARN) of the Quality check processing job that
-- was run by this step execution.
--
-- 'checkType', 'qualityCheckStepMetadata_checkType' - The type of the Quality check step.
--
-- 'modelPackageGroupName', 'qualityCheckStepMetadata_modelPackageGroupName' - The model package group name.
--
-- 'registerNewBaseline', 'qualityCheckStepMetadata_registerNewBaseline' - This flag indicates if a newly calculated baseline can be accessed
-- through step properties @BaselineUsedForDriftCheckConstraints@ and
-- @BaselineUsedForDriftCheckStatistics@. If it is set to @False@, the
-- previous baseline of the configured check type must also be available.
-- These can be accessed through the @BaselineUsedForDriftCheckConstraints@
-- and @ BaselineUsedForDriftCheckStatistics@ properties.
--
-- 'skipCheck', 'qualityCheckStepMetadata_skipCheck' - This flag indicates if the drift check against the previous baseline
-- will be skipped or not. If it is set to @False@, the previous baseline
-- of the configured check type must be available.
--
-- 'violationReport', 'qualityCheckStepMetadata_violationReport' - The Amazon S3 URI of violation report if violations are detected.
newQualityCheckStepMetadata ::
  QualityCheckStepMetadata
newQualityCheckStepMetadata :: QualityCheckStepMetadata
newQualityCheckStepMetadata =
  QualityCheckStepMetadata'
    { $sel:baselineUsedForDriftCheckConstraints:QualityCheckStepMetadata' :: Maybe Text
baselineUsedForDriftCheckConstraints =
        forall a. Maybe a
Prelude.Nothing,
      $sel:baselineUsedForDriftCheckStatistics:QualityCheckStepMetadata' :: Maybe Text
baselineUsedForDriftCheckStatistics =
        forall a. Maybe a
Prelude.Nothing,
      $sel:calculatedBaselineConstraints:QualityCheckStepMetadata' :: Maybe Text
calculatedBaselineConstraints = forall a. Maybe a
Prelude.Nothing,
      $sel:calculatedBaselineStatistics:QualityCheckStepMetadata' :: Maybe Text
calculatedBaselineStatistics = forall a. Maybe a
Prelude.Nothing,
      $sel:checkJobArn:QualityCheckStepMetadata' :: Maybe Text
checkJobArn = forall a. Maybe a
Prelude.Nothing,
      $sel:checkType:QualityCheckStepMetadata' :: Maybe Text
checkType = forall a. Maybe a
Prelude.Nothing,
      $sel:modelPackageGroupName:QualityCheckStepMetadata' :: Maybe Text
modelPackageGroupName = forall a. Maybe a
Prelude.Nothing,
      $sel:registerNewBaseline:QualityCheckStepMetadata' :: Maybe Bool
registerNewBaseline = forall a. Maybe a
Prelude.Nothing,
      $sel:skipCheck:QualityCheckStepMetadata' :: Maybe Bool
skipCheck = forall a. Maybe a
Prelude.Nothing,
      $sel:violationReport:QualityCheckStepMetadata' :: Maybe Text
violationReport = forall a. Maybe a
Prelude.Nothing
    }

-- | The Amazon S3 URI of the baseline constraints file used for the drift
-- check.
qualityCheckStepMetadata_baselineUsedForDriftCheckConstraints :: Lens.Lens' QualityCheckStepMetadata (Prelude.Maybe Prelude.Text)
qualityCheckStepMetadata_baselineUsedForDriftCheckConstraints :: Lens' QualityCheckStepMetadata (Maybe Text)
qualityCheckStepMetadata_baselineUsedForDriftCheckConstraints = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\QualityCheckStepMetadata' {Maybe Text
baselineUsedForDriftCheckConstraints :: Maybe Text
$sel:baselineUsedForDriftCheckConstraints:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
baselineUsedForDriftCheckConstraints} -> Maybe Text
baselineUsedForDriftCheckConstraints) (\s :: QualityCheckStepMetadata
s@QualityCheckStepMetadata' {} Maybe Text
a -> QualityCheckStepMetadata
s {$sel:baselineUsedForDriftCheckConstraints:QualityCheckStepMetadata' :: Maybe Text
baselineUsedForDriftCheckConstraints = Maybe Text
a} :: QualityCheckStepMetadata)

-- | The Amazon S3 URI of the baseline statistics file used for the drift
-- check.
qualityCheckStepMetadata_baselineUsedForDriftCheckStatistics :: Lens.Lens' QualityCheckStepMetadata (Prelude.Maybe Prelude.Text)
qualityCheckStepMetadata_baselineUsedForDriftCheckStatistics :: Lens' QualityCheckStepMetadata (Maybe Text)
qualityCheckStepMetadata_baselineUsedForDriftCheckStatistics = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\QualityCheckStepMetadata' {Maybe Text
baselineUsedForDriftCheckStatistics :: Maybe Text
$sel:baselineUsedForDriftCheckStatistics:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
baselineUsedForDriftCheckStatistics} -> Maybe Text
baselineUsedForDriftCheckStatistics) (\s :: QualityCheckStepMetadata
s@QualityCheckStepMetadata' {} Maybe Text
a -> QualityCheckStepMetadata
s {$sel:baselineUsedForDriftCheckStatistics:QualityCheckStepMetadata' :: Maybe Text
baselineUsedForDriftCheckStatistics = Maybe Text
a} :: QualityCheckStepMetadata)

-- | The Amazon S3 URI of the newly calculated baseline constraints file.
qualityCheckStepMetadata_calculatedBaselineConstraints :: Lens.Lens' QualityCheckStepMetadata (Prelude.Maybe Prelude.Text)
qualityCheckStepMetadata_calculatedBaselineConstraints :: Lens' QualityCheckStepMetadata (Maybe Text)
qualityCheckStepMetadata_calculatedBaselineConstraints = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\QualityCheckStepMetadata' {Maybe Text
calculatedBaselineConstraints :: Maybe Text
$sel:calculatedBaselineConstraints:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
calculatedBaselineConstraints} -> Maybe Text
calculatedBaselineConstraints) (\s :: QualityCheckStepMetadata
s@QualityCheckStepMetadata' {} Maybe Text
a -> QualityCheckStepMetadata
s {$sel:calculatedBaselineConstraints:QualityCheckStepMetadata' :: Maybe Text
calculatedBaselineConstraints = Maybe Text
a} :: QualityCheckStepMetadata)

-- | The Amazon S3 URI of the newly calculated baseline statistics file.
qualityCheckStepMetadata_calculatedBaselineStatistics :: Lens.Lens' QualityCheckStepMetadata (Prelude.Maybe Prelude.Text)
qualityCheckStepMetadata_calculatedBaselineStatistics :: Lens' QualityCheckStepMetadata (Maybe Text)
qualityCheckStepMetadata_calculatedBaselineStatistics = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\QualityCheckStepMetadata' {Maybe Text
calculatedBaselineStatistics :: Maybe Text
$sel:calculatedBaselineStatistics:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
calculatedBaselineStatistics} -> Maybe Text
calculatedBaselineStatistics) (\s :: QualityCheckStepMetadata
s@QualityCheckStepMetadata' {} Maybe Text
a -> QualityCheckStepMetadata
s {$sel:calculatedBaselineStatistics:QualityCheckStepMetadata' :: Maybe Text
calculatedBaselineStatistics = Maybe Text
a} :: QualityCheckStepMetadata)

-- | The Amazon Resource Name (ARN) of the Quality check processing job that
-- was run by this step execution.
qualityCheckStepMetadata_checkJobArn :: Lens.Lens' QualityCheckStepMetadata (Prelude.Maybe Prelude.Text)
qualityCheckStepMetadata_checkJobArn :: Lens' QualityCheckStepMetadata (Maybe Text)
qualityCheckStepMetadata_checkJobArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\QualityCheckStepMetadata' {Maybe Text
checkJobArn :: Maybe Text
$sel:checkJobArn:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
checkJobArn} -> Maybe Text
checkJobArn) (\s :: QualityCheckStepMetadata
s@QualityCheckStepMetadata' {} Maybe Text
a -> QualityCheckStepMetadata
s {$sel:checkJobArn:QualityCheckStepMetadata' :: Maybe Text
checkJobArn = Maybe Text
a} :: QualityCheckStepMetadata)

-- | The type of the Quality check step.
qualityCheckStepMetadata_checkType :: Lens.Lens' QualityCheckStepMetadata (Prelude.Maybe Prelude.Text)
qualityCheckStepMetadata_checkType :: Lens' QualityCheckStepMetadata (Maybe Text)
qualityCheckStepMetadata_checkType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\QualityCheckStepMetadata' {Maybe Text
checkType :: Maybe Text
$sel:checkType:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
checkType} -> Maybe Text
checkType) (\s :: QualityCheckStepMetadata
s@QualityCheckStepMetadata' {} Maybe Text
a -> QualityCheckStepMetadata
s {$sel:checkType:QualityCheckStepMetadata' :: Maybe Text
checkType = Maybe Text
a} :: QualityCheckStepMetadata)

-- | The model package group name.
qualityCheckStepMetadata_modelPackageGroupName :: Lens.Lens' QualityCheckStepMetadata (Prelude.Maybe Prelude.Text)
qualityCheckStepMetadata_modelPackageGroupName :: Lens' QualityCheckStepMetadata (Maybe Text)
qualityCheckStepMetadata_modelPackageGroupName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\QualityCheckStepMetadata' {Maybe Text
modelPackageGroupName :: Maybe Text
$sel:modelPackageGroupName:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
modelPackageGroupName} -> Maybe Text
modelPackageGroupName) (\s :: QualityCheckStepMetadata
s@QualityCheckStepMetadata' {} Maybe Text
a -> QualityCheckStepMetadata
s {$sel:modelPackageGroupName:QualityCheckStepMetadata' :: Maybe Text
modelPackageGroupName = Maybe Text
a} :: QualityCheckStepMetadata)

-- | This flag indicates if a newly calculated baseline can be accessed
-- through step properties @BaselineUsedForDriftCheckConstraints@ and
-- @BaselineUsedForDriftCheckStatistics@. If it is set to @False@, the
-- previous baseline of the configured check type must also be available.
-- These can be accessed through the @BaselineUsedForDriftCheckConstraints@
-- and @ BaselineUsedForDriftCheckStatistics@ properties.
qualityCheckStepMetadata_registerNewBaseline :: Lens.Lens' QualityCheckStepMetadata (Prelude.Maybe Prelude.Bool)
qualityCheckStepMetadata_registerNewBaseline :: Lens' QualityCheckStepMetadata (Maybe Bool)
qualityCheckStepMetadata_registerNewBaseline = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\QualityCheckStepMetadata' {Maybe Bool
registerNewBaseline :: Maybe Bool
$sel:registerNewBaseline:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Bool
registerNewBaseline} -> Maybe Bool
registerNewBaseline) (\s :: QualityCheckStepMetadata
s@QualityCheckStepMetadata' {} Maybe Bool
a -> QualityCheckStepMetadata
s {$sel:registerNewBaseline:QualityCheckStepMetadata' :: Maybe Bool
registerNewBaseline = Maybe Bool
a} :: QualityCheckStepMetadata)

-- | This flag indicates if the drift check against the previous baseline
-- will be skipped or not. If it is set to @False@, the previous baseline
-- of the configured check type must be available.
qualityCheckStepMetadata_skipCheck :: Lens.Lens' QualityCheckStepMetadata (Prelude.Maybe Prelude.Bool)
qualityCheckStepMetadata_skipCheck :: Lens' QualityCheckStepMetadata (Maybe Bool)
qualityCheckStepMetadata_skipCheck = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\QualityCheckStepMetadata' {Maybe Bool
skipCheck :: Maybe Bool
$sel:skipCheck:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Bool
skipCheck} -> Maybe Bool
skipCheck) (\s :: QualityCheckStepMetadata
s@QualityCheckStepMetadata' {} Maybe Bool
a -> QualityCheckStepMetadata
s {$sel:skipCheck:QualityCheckStepMetadata' :: Maybe Bool
skipCheck = Maybe Bool
a} :: QualityCheckStepMetadata)

-- | The Amazon S3 URI of violation report if violations are detected.
qualityCheckStepMetadata_violationReport :: Lens.Lens' QualityCheckStepMetadata (Prelude.Maybe Prelude.Text)
qualityCheckStepMetadata_violationReport :: Lens' QualityCheckStepMetadata (Maybe Text)
qualityCheckStepMetadata_violationReport = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\QualityCheckStepMetadata' {Maybe Text
violationReport :: Maybe Text
$sel:violationReport:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
violationReport} -> Maybe Text
violationReport) (\s :: QualityCheckStepMetadata
s@QualityCheckStepMetadata' {} Maybe Text
a -> QualityCheckStepMetadata
s {$sel:violationReport:QualityCheckStepMetadata' :: Maybe Text
violationReport = Maybe Text
a} :: QualityCheckStepMetadata)

instance Data.FromJSON QualityCheckStepMetadata where
  parseJSON :: Value -> Parser QualityCheckStepMetadata
parseJSON =
    forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
      String
"QualityCheckStepMetadata"
      ( \Object
x ->
          Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Bool
-> Maybe Bool
-> Maybe Text
-> QualityCheckStepMetadata
QualityCheckStepMetadata'
            forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"BaselineUsedForDriftCheckConstraints")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"BaselineUsedForDriftCheckStatistics")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"CalculatedBaselineConstraints")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"CalculatedBaselineStatistics")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"CheckJobArn")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"CheckType")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ModelPackageGroupName")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"RegisterNewBaseline")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"SkipCheck")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ViolationReport")
      )

instance Prelude.Hashable QualityCheckStepMetadata where
  hashWithSalt :: Int -> QualityCheckStepMetadata -> Int
hashWithSalt Int
_salt QualityCheckStepMetadata' {Maybe Bool
Maybe Text
violationReport :: Maybe Text
skipCheck :: Maybe Bool
registerNewBaseline :: Maybe Bool
modelPackageGroupName :: Maybe Text
checkType :: Maybe Text
checkJobArn :: Maybe Text
calculatedBaselineStatistics :: Maybe Text
calculatedBaselineConstraints :: Maybe Text
baselineUsedForDriftCheckStatistics :: Maybe Text
baselineUsedForDriftCheckConstraints :: Maybe Text
$sel:violationReport:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
$sel:skipCheck:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Bool
$sel:registerNewBaseline:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Bool
$sel:modelPackageGroupName:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
$sel:checkType:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
$sel:checkJobArn:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
$sel:calculatedBaselineStatistics:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
$sel:calculatedBaselineConstraints:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
$sel:baselineUsedForDriftCheckStatistics:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
$sel:baselineUsedForDriftCheckConstraints:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
..} =
    Int
_salt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
baselineUsedForDriftCheckConstraints
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
baselineUsedForDriftCheckStatistics
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
calculatedBaselineConstraints
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
calculatedBaselineStatistics
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
checkJobArn
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
checkType
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
modelPackageGroupName
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
registerNewBaseline
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
skipCheck
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
violationReport

instance Prelude.NFData QualityCheckStepMetadata where
  rnf :: QualityCheckStepMetadata -> ()
rnf QualityCheckStepMetadata' {Maybe Bool
Maybe Text
violationReport :: Maybe Text
skipCheck :: Maybe Bool
registerNewBaseline :: Maybe Bool
modelPackageGroupName :: Maybe Text
checkType :: Maybe Text
checkJobArn :: Maybe Text
calculatedBaselineStatistics :: Maybe Text
calculatedBaselineConstraints :: Maybe Text
baselineUsedForDriftCheckStatistics :: Maybe Text
baselineUsedForDriftCheckConstraints :: Maybe Text
$sel:violationReport:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
$sel:skipCheck:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Bool
$sel:registerNewBaseline:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Bool
$sel:modelPackageGroupName:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
$sel:checkType:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
$sel:checkJobArn:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
$sel:calculatedBaselineStatistics:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
$sel:calculatedBaselineConstraints:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
$sel:baselineUsedForDriftCheckStatistics:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
$sel:baselineUsedForDriftCheckConstraints:QualityCheckStepMetadata' :: QualityCheckStepMetadata -> Maybe Text
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
baselineUsedForDriftCheckConstraints
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
baselineUsedForDriftCheckStatistics
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
calculatedBaselineConstraints
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
calculatedBaselineStatistics
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
checkJobArn
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
checkType
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
modelPackageGroupName
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
registerNewBaseline
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
skipCheck
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
violationReport