{-# 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 #-}
module Amazonka.Inspector.Types.AssessmentRun where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.Inspector.Types.AssessmentRunNotification
import Amazonka.Inspector.Types.AssessmentRunState
import Amazonka.Inspector.Types.AssessmentRunStateChange
import Amazonka.Inspector.Types.Attribute
import Amazonka.Inspector.Types.Severity
import qualified Amazonka.Prelude as Prelude
data AssessmentRun = AssessmentRun'
{
AssessmentRun -> Maybe POSIX
completedAt :: Prelude.Maybe Data.POSIX,
AssessmentRun -> Maybe POSIX
startedAt :: Prelude.Maybe Data.POSIX,
AssessmentRun -> Text
arn :: Prelude.Text,
AssessmentRun -> Text
name :: Prelude.Text,
AssessmentRun -> Text
assessmentTemplateArn :: Prelude.Text,
AssessmentRun -> AssessmentRunState
state :: AssessmentRunState,
AssessmentRun -> Natural
durationInSeconds :: Prelude.Natural,
AssessmentRun -> NonEmpty Text
rulesPackageArns :: Prelude.NonEmpty Prelude.Text,
AssessmentRun -> [Attribute]
userAttributesForFindings :: [Attribute],
AssessmentRun -> POSIX
createdAt :: Data.POSIX,
AssessmentRun -> POSIX
stateChangedAt :: Data.POSIX,
AssessmentRun -> Bool
dataCollected :: Prelude.Bool,
AssessmentRun -> [AssessmentRunStateChange]
stateChanges :: [AssessmentRunStateChange],
AssessmentRun -> [AssessmentRunNotification]
notifications :: [AssessmentRunNotification],
AssessmentRun -> HashMap Severity Int
findingCounts :: Prelude.HashMap Severity Prelude.Int
}
deriving (AssessmentRun -> AssessmentRun -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: AssessmentRun -> AssessmentRun -> Bool
$c/= :: AssessmentRun -> AssessmentRun -> Bool
== :: AssessmentRun -> AssessmentRun -> Bool
$c== :: AssessmentRun -> AssessmentRun -> Bool
Prelude.Eq, ReadPrec [AssessmentRun]
ReadPrec AssessmentRun
Int -> ReadS AssessmentRun
ReadS [AssessmentRun]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [AssessmentRun]
$creadListPrec :: ReadPrec [AssessmentRun]
readPrec :: ReadPrec AssessmentRun
$creadPrec :: ReadPrec AssessmentRun
readList :: ReadS [AssessmentRun]
$creadList :: ReadS [AssessmentRun]
readsPrec :: Int -> ReadS AssessmentRun
$creadsPrec :: Int -> ReadS AssessmentRun
Prelude.Read, Int -> AssessmentRun -> ShowS
[AssessmentRun] -> ShowS
AssessmentRun -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [AssessmentRun] -> ShowS
$cshowList :: [AssessmentRun] -> ShowS
show :: AssessmentRun -> String
$cshow :: AssessmentRun -> String
showsPrec :: Int -> AssessmentRun -> ShowS
$cshowsPrec :: Int -> AssessmentRun -> ShowS
Prelude.Show, forall x. Rep AssessmentRun x -> AssessmentRun
forall x. AssessmentRun -> Rep AssessmentRun x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep AssessmentRun x -> AssessmentRun
$cfrom :: forall x. AssessmentRun -> Rep AssessmentRun x
Prelude.Generic)
newAssessmentRun ::
Prelude.Text ->
Prelude.Text ->
Prelude.Text ->
AssessmentRunState ->
Prelude.Natural ->
Prelude.NonEmpty Prelude.Text ->
Prelude.UTCTime ->
Prelude.UTCTime ->
Prelude.Bool ->
AssessmentRun
newAssessmentRun :: Text
-> Text
-> Text
-> AssessmentRunState
-> Natural
-> NonEmpty Text
-> UTCTime
-> UTCTime
-> Bool
-> AssessmentRun
newAssessmentRun
Text
pArn_
Text
pName_
Text
pAssessmentTemplateArn_
AssessmentRunState
pState_
Natural
pDurationInSeconds_
NonEmpty Text
pRulesPackageArns_
UTCTime
pCreatedAt_
UTCTime
pStateChangedAt_
Bool
pDataCollected_ =
AssessmentRun'
{ $sel:completedAt:AssessmentRun' :: Maybe POSIX
completedAt = forall a. Maybe a
Prelude.Nothing,
$sel:startedAt:AssessmentRun' :: Maybe POSIX
startedAt = forall a. Maybe a
Prelude.Nothing,
$sel:arn:AssessmentRun' :: Text
arn = Text
pArn_,
$sel:name:AssessmentRun' :: Text
name = Text
pName_,
$sel:assessmentTemplateArn:AssessmentRun' :: Text
assessmentTemplateArn = Text
pAssessmentTemplateArn_,
$sel:state:AssessmentRun' :: AssessmentRunState
state = AssessmentRunState
pState_,
$sel:durationInSeconds:AssessmentRun' :: Natural
durationInSeconds = Natural
pDurationInSeconds_,
$sel:rulesPackageArns:AssessmentRun' :: NonEmpty Text
rulesPackageArns =
forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced forall t b. AReview t b -> b -> t
Lens.# NonEmpty Text
pRulesPackageArns_,
$sel:userAttributesForFindings:AssessmentRun' :: [Attribute]
userAttributesForFindings = forall a. Monoid a => a
Prelude.mempty,
$sel:createdAt:AssessmentRun' :: POSIX
createdAt = forall (a :: Format). Iso' (Time a) UTCTime
Data._Time forall t b. AReview t b -> b -> t
Lens.# UTCTime
pCreatedAt_,
$sel:stateChangedAt:AssessmentRun' :: POSIX
stateChangedAt = forall (a :: Format). Iso' (Time a) UTCTime
Data._Time forall t b. AReview t b -> b -> t
Lens.# UTCTime
pStateChangedAt_,
$sel:dataCollected:AssessmentRun' :: Bool
dataCollected = Bool
pDataCollected_,
$sel:stateChanges:AssessmentRun' :: [AssessmentRunStateChange]
stateChanges = forall a. Monoid a => a
Prelude.mempty,
$sel:notifications:AssessmentRun' :: [AssessmentRunNotification]
notifications = forall a. Monoid a => a
Prelude.mempty,
$sel:findingCounts:AssessmentRun' :: HashMap Severity Int
findingCounts = forall a. Monoid a => a
Prelude.mempty
}
assessmentRun_completedAt :: Lens.Lens' AssessmentRun (Prelude.Maybe Prelude.UTCTime)
assessmentRun_completedAt :: Lens' AssessmentRun (Maybe UTCTime)
assessmentRun_completedAt = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AssessmentRun' {Maybe POSIX
completedAt :: Maybe POSIX
$sel:completedAt:AssessmentRun' :: AssessmentRun -> Maybe POSIX
completedAt} -> Maybe POSIX
completedAt) (\s :: AssessmentRun
s@AssessmentRun' {} Maybe POSIX
a -> AssessmentRun
s {$sel:completedAt:AssessmentRun' :: Maybe POSIX
completedAt = Maybe POSIX
a} :: AssessmentRun) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall (a :: Format). Iso' (Time a) UTCTime
Data._Time
assessmentRun_startedAt :: Lens.Lens' AssessmentRun (Prelude.Maybe Prelude.UTCTime)
assessmentRun_startedAt :: Lens' AssessmentRun (Maybe UTCTime)
assessmentRun_startedAt = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AssessmentRun' {Maybe POSIX
startedAt :: Maybe POSIX
$sel:startedAt:AssessmentRun' :: AssessmentRun -> Maybe POSIX
startedAt} -> Maybe POSIX
startedAt) (\s :: AssessmentRun
s@AssessmentRun' {} Maybe POSIX
a -> AssessmentRun
s {$sel:startedAt:AssessmentRun' :: Maybe POSIX
startedAt = Maybe POSIX
a} :: AssessmentRun) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall (a :: Format). Iso' (Time a) UTCTime
Data._Time
assessmentRun_arn :: Lens.Lens' AssessmentRun Prelude.Text
assessmentRun_arn :: Lens' AssessmentRun Text
assessmentRun_arn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AssessmentRun' {Text
arn :: Text
$sel:arn:AssessmentRun' :: AssessmentRun -> Text
arn} -> Text
arn) (\s :: AssessmentRun
s@AssessmentRun' {} Text
a -> AssessmentRun
s {$sel:arn:AssessmentRun' :: Text
arn = Text
a} :: AssessmentRun)
assessmentRun_name :: Lens.Lens' AssessmentRun Prelude.Text
assessmentRun_name :: Lens' AssessmentRun Text
assessmentRun_name = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AssessmentRun' {Text
name :: Text
$sel:name:AssessmentRun' :: AssessmentRun -> Text
name} -> Text
name) (\s :: AssessmentRun
s@AssessmentRun' {} Text
a -> AssessmentRun
s {$sel:name:AssessmentRun' :: Text
name = Text
a} :: AssessmentRun)
assessmentRun_assessmentTemplateArn :: Lens.Lens' AssessmentRun Prelude.Text
assessmentRun_assessmentTemplateArn :: Lens' AssessmentRun Text
assessmentRun_assessmentTemplateArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AssessmentRun' {Text
assessmentTemplateArn :: Text
$sel:assessmentTemplateArn:AssessmentRun' :: AssessmentRun -> Text
assessmentTemplateArn} -> Text
assessmentTemplateArn) (\s :: AssessmentRun
s@AssessmentRun' {} Text
a -> AssessmentRun
s {$sel:assessmentTemplateArn:AssessmentRun' :: Text
assessmentTemplateArn = Text
a} :: AssessmentRun)
assessmentRun_state :: Lens.Lens' AssessmentRun AssessmentRunState
assessmentRun_state :: Lens' AssessmentRun AssessmentRunState
assessmentRun_state = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AssessmentRun' {AssessmentRunState
state :: AssessmentRunState
$sel:state:AssessmentRun' :: AssessmentRun -> AssessmentRunState
state} -> AssessmentRunState
state) (\s :: AssessmentRun
s@AssessmentRun' {} AssessmentRunState
a -> AssessmentRun
s {$sel:state:AssessmentRun' :: AssessmentRunState
state = AssessmentRunState
a} :: AssessmentRun)
assessmentRun_durationInSeconds :: Lens.Lens' AssessmentRun Prelude.Natural
assessmentRun_durationInSeconds :: Lens' AssessmentRun Natural
assessmentRun_durationInSeconds = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AssessmentRun' {Natural
durationInSeconds :: Natural
$sel:durationInSeconds:AssessmentRun' :: AssessmentRun -> Natural
durationInSeconds} -> Natural
durationInSeconds) (\s :: AssessmentRun
s@AssessmentRun' {} Natural
a -> AssessmentRun
s {$sel:durationInSeconds:AssessmentRun' :: Natural
durationInSeconds = Natural
a} :: AssessmentRun)
assessmentRun_rulesPackageArns :: Lens.Lens' AssessmentRun (Prelude.NonEmpty Prelude.Text)
assessmentRun_rulesPackageArns :: Lens' AssessmentRun (NonEmpty Text)
assessmentRun_rulesPackageArns = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AssessmentRun' {NonEmpty Text
rulesPackageArns :: NonEmpty Text
$sel:rulesPackageArns:AssessmentRun' :: AssessmentRun -> NonEmpty Text
rulesPackageArns} -> NonEmpty Text
rulesPackageArns) (\s :: AssessmentRun
s@AssessmentRun' {} NonEmpty Text
a -> AssessmentRun
s {$sel:rulesPackageArns:AssessmentRun' :: NonEmpty Text
rulesPackageArns = NonEmpty Text
a} :: AssessmentRun) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
assessmentRun_userAttributesForFindings :: Lens.Lens' AssessmentRun [Attribute]
assessmentRun_userAttributesForFindings :: Lens' AssessmentRun [Attribute]
assessmentRun_userAttributesForFindings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AssessmentRun' {[Attribute]
userAttributesForFindings :: [Attribute]
$sel:userAttributesForFindings:AssessmentRun' :: AssessmentRun -> [Attribute]
userAttributesForFindings} -> [Attribute]
userAttributesForFindings) (\s :: AssessmentRun
s@AssessmentRun' {} [Attribute]
a -> AssessmentRun
s {$sel:userAttributesForFindings:AssessmentRun' :: [Attribute]
userAttributesForFindings = [Attribute]
a} :: AssessmentRun) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
assessmentRun_createdAt :: Lens.Lens' AssessmentRun Prelude.UTCTime
assessmentRun_createdAt :: Lens' AssessmentRun UTCTime
assessmentRun_createdAt = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AssessmentRun' {POSIX
createdAt :: POSIX
$sel:createdAt:AssessmentRun' :: AssessmentRun -> POSIX
createdAt} -> POSIX
createdAt) (\s :: AssessmentRun
s@AssessmentRun' {} POSIX
a -> AssessmentRun
s {$sel:createdAt:AssessmentRun' :: POSIX
createdAt = POSIX
a} :: AssessmentRun) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (a :: Format). Iso' (Time a) UTCTime
Data._Time
assessmentRun_stateChangedAt :: Lens.Lens' AssessmentRun Prelude.UTCTime
assessmentRun_stateChangedAt :: Lens' AssessmentRun UTCTime
assessmentRun_stateChangedAt = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AssessmentRun' {POSIX
stateChangedAt :: POSIX
$sel:stateChangedAt:AssessmentRun' :: AssessmentRun -> POSIX
stateChangedAt} -> POSIX
stateChangedAt) (\s :: AssessmentRun
s@AssessmentRun' {} POSIX
a -> AssessmentRun
s {$sel:stateChangedAt:AssessmentRun' :: POSIX
stateChangedAt = POSIX
a} :: AssessmentRun) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (a :: Format). Iso' (Time a) UTCTime
Data._Time
assessmentRun_dataCollected :: Lens.Lens' AssessmentRun Prelude.Bool
assessmentRun_dataCollected :: Lens' AssessmentRun Bool
assessmentRun_dataCollected = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AssessmentRun' {Bool
dataCollected :: Bool
$sel:dataCollected:AssessmentRun' :: AssessmentRun -> Bool
dataCollected} -> Bool
dataCollected) (\s :: AssessmentRun
s@AssessmentRun' {} Bool
a -> AssessmentRun
s {$sel:dataCollected:AssessmentRun' :: Bool
dataCollected = Bool
a} :: AssessmentRun)
assessmentRun_stateChanges :: Lens.Lens' AssessmentRun [AssessmentRunStateChange]
assessmentRun_stateChanges :: Lens' AssessmentRun [AssessmentRunStateChange]
assessmentRun_stateChanges = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AssessmentRun' {[AssessmentRunStateChange]
stateChanges :: [AssessmentRunStateChange]
$sel:stateChanges:AssessmentRun' :: AssessmentRun -> [AssessmentRunStateChange]
stateChanges} -> [AssessmentRunStateChange]
stateChanges) (\s :: AssessmentRun
s@AssessmentRun' {} [AssessmentRunStateChange]
a -> AssessmentRun
s {$sel:stateChanges:AssessmentRun' :: [AssessmentRunStateChange]
stateChanges = [AssessmentRunStateChange]
a} :: AssessmentRun) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
assessmentRun_notifications :: Lens.Lens' AssessmentRun [AssessmentRunNotification]
assessmentRun_notifications :: Lens' AssessmentRun [AssessmentRunNotification]
assessmentRun_notifications = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AssessmentRun' {[AssessmentRunNotification]
notifications :: [AssessmentRunNotification]
$sel:notifications:AssessmentRun' :: AssessmentRun -> [AssessmentRunNotification]
notifications} -> [AssessmentRunNotification]
notifications) (\s :: AssessmentRun
s@AssessmentRun' {} [AssessmentRunNotification]
a -> AssessmentRun
s {$sel:notifications:AssessmentRun' :: [AssessmentRunNotification]
notifications = [AssessmentRunNotification]
a} :: AssessmentRun) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
assessmentRun_findingCounts :: Lens.Lens' AssessmentRun (Prelude.HashMap Severity Prelude.Int)
assessmentRun_findingCounts :: Lens' AssessmentRun (HashMap Severity Int)
assessmentRun_findingCounts = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AssessmentRun' {HashMap Severity Int
findingCounts :: HashMap Severity Int
$sel:findingCounts:AssessmentRun' :: AssessmentRun -> HashMap Severity Int
findingCounts} -> HashMap Severity Int
findingCounts) (\s :: AssessmentRun
s@AssessmentRun' {} HashMap Severity Int
a -> AssessmentRun
s {$sel:findingCounts:AssessmentRun' :: HashMap Severity Int
findingCounts = HashMap Severity Int
a} :: AssessmentRun) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
instance Data.FromJSON AssessmentRun where
parseJSON :: Value -> Parser AssessmentRun
parseJSON =
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
String
"AssessmentRun"
( \Object
x ->
Maybe POSIX
-> Maybe POSIX
-> Text
-> Text
-> Text
-> AssessmentRunState
-> Natural
-> NonEmpty Text
-> [Attribute]
-> POSIX
-> POSIX
-> Bool
-> [AssessmentRunStateChange]
-> [AssessmentRunNotification]
-> HashMap Severity Int
-> AssessmentRun
AssessmentRun'
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
"completedAt")
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
"startedAt")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser a
Data..: Key
"arn")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser a
Data..: Key
"name")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser a
Data..: Key
"assessmentTemplateArn")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser a
Data..: Key
"state")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser a
Data..: Key
"durationInSeconds")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser a
Data..: Key
"rulesPackageArns")
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
"userAttributesForFindings"
forall a. Parser (Maybe a) -> a -> Parser a
Data..!= forall a. Monoid a => a
Prelude.mempty
)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser a
Data..: Key
"createdAt")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser a
Data..: Key
"stateChangedAt")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser a
Data..: Key
"dataCollected")
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
"stateChanges" forall a. Parser (Maybe a) -> a -> Parser a
Data..!= forall a. Monoid a => a
Prelude.mempty)
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
"notifications" forall a. Parser (Maybe a) -> a -> Parser a
Data..!= forall a. Monoid a => a
Prelude.mempty)
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
"findingCounts" forall a. Parser (Maybe a) -> a -> Parser a
Data..!= forall a. Monoid a => a
Prelude.mempty)
)
instance Prelude.Hashable AssessmentRun where
hashWithSalt :: Int -> AssessmentRun -> Int
hashWithSalt Int
_salt AssessmentRun' {Bool
Natural
[AssessmentRunStateChange]
[Attribute]
[AssessmentRunNotification]
Maybe POSIX
NonEmpty Text
Text
HashMap Severity Int
POSIX
AssessmentRunState
findingCounts :: HashMap Severity Int
notifications :: [AssessmentRunNotification]
stateChanges :: [AssessmentRunStateChange]
dataCollected :: Bool
stateChangedAt :: POSIX
createdAt :: POSIX
userAttributesForFindings :: [Attribute]
rulesPackageArns :: NonEmpty Text
durationInSeconds :: Natural
state :: AssessmentRunState
assessmentTemplateArn :: Text
name :: Text
arn :: Text
startedAt :: Maybe POSIX
completedAt :: Maybe POSIX
$sel:findingCounts:AssessmentRun' :: AssessmentRun -> HashMap Severity Int
$sel:notifications:AssessmentRun' :: AssessmentRun -> [AssessmentRunNotification]
$sel:stateChanges:AssessmentRun' :: AssessmentRun -> [AssessmentRunStateChange]
$sel:dataCollected:AssessmentRun' :: AssessmentRun -> Bool
$sel:stateChangedAt:AssessmentRun' :: AssessmentRun -> POSIX
$sel:createdAt:AssessmentRun' :: AssessmentRun -> POSIX
$sel:userAttributesForFindings:AssessmentRun' :: AssessmentRun -> [Attribute]
$sel:rulesPackageArns:AssessmentRun' :: AssessmentRun -> NonEmpty Text
$sel:durationInSeconds:AssessmentRun' :: AssessmentRun -> Natural
$sel:state:AssessmentRun' :: AssessmentRun -> AssessmentRunState
$sel:assessmentTemplateArn:AssessmentRun' :: AssessmentRun -> Text
$sel:name:AssessmentRun' :: AssessmentRun -> Text
$sel:arn:AssessmentRun' :: AssessmentRun -> Text
$sel:startedAt:AssessmentRun' :: AssessmentRun -> Maybe POSIX
$sel:completedAt:AssessmentRun' :: AssessmentRun -> Maybe POSIX
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe POSIX
completedAt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe POSIX
startedAt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
arn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
name
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
assessmentTemplateArn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` AssessmentRunState
state
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Natural
durationInSeconds
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` NonEmpty Text
rulesPackageArns
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` [Attribute]
userAttributesForFindings
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` POSIX
createdAt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` POSIX
stateChangedAt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Bool
dataCollected
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` [AssessmentRunStateChange]
stateChanges
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` [AssessmentRunNotification]
notifications
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` HashMap Severity Int
findingCounts
instance Prelude.NFData AssessmentRun where
rnf :: AssessmentRun -> ()
rnf AssessmentRun' {Bool
Natural
[AssessmentRunStateChange]
[Attribute]
[AssessmentRunNotification]
Maybe POSIX
NonEmpty Text
Text
HashMap Severity Int
POSIX
AssessmentRunState
findingCounts :: HashMap Severity Int
notifications :: [AssessmentRunNotification]
stateChanges :: [AssessmentRunStateChange]
dataCollected :: Bool
stateChangedAt :: POSIX
createdAt :: POSIX
userAttributesForFindings :: [Attribute]
rulesPackageArns :: NonEmpty Text
durationInSeconds :: Natural
state :: AssessmentRunState
assessmentTemplateArn :: Text
name :: Text
arn :: Text
startedAt :: Maybe POSIX
completedAt :: Maybe POSIX
$sel:findingCounts:AssessmentRun' :: AssessmentRun -> HashMap Severity Int
$sel:notifications:AssessmentRun' :: AssessmentRun -> [AssessmentRunNotification]
$sel:stateChanges:AssessmentRun' :: AssessmentRun -> [AssessmentRunStateChange]
$sel:dataCollected:AssessmentRun' :: AssessmentRun -> Bool
$sel:stateChangedAt:AssessmentRun' :: AssessmentRun -> POSIX
$sel:createdAt:AssessmentRun' :: AssessmentRun -> POSIX
$sel:userAttributesForFindings:AssessmentRun' :: AssessmentRun -> [Attribute]
$sel:rulesPackageArns:AssessmentRun' :: AssessmentRun -> NonEmpty Text
$sel:durationInSeconds:AssessmentRun' :: AssessmentRun -> Natural
$sel:state:AssessmentRun' :: AssessmentRun -> AssessmentRunState
$sel:assessmentTemplateArn:AssessmentRun' :: AssessmentRun -> Text
$sel:name:AssessmentRun' :: AssessmentRun -> Text
$sel:arn:AssessmentRun' :: AssessmentRun -> Text
$sel:startedAt:AssessmentRun' :: AssessmentRun -> Maybe POSIX
$sel:completedAt:AssessmentRun' :: AssessmentRun -> Maybe POSIX
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
completedAt
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
startedAt
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
arn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
name
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
assessmentTemplateArn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf AssessmentRunState
state
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Natural
durationInSeconds
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf NonEmpty Text
rulesPackageArns
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf [Attribute]
userAttributesForFindings
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf POSIX
createdAt
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf POSIX
stateChangedAt
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Bool
dataCollected
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf [AssessmentRunStateChange]
stateChanges
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf [AssessmentRunNotification]
notifications
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf HashMap Severity Int
findingCounts