{-# 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.ResilienceHub.Types.AppAssessment 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
import Amazonka.ResilienceHub.Types.AssessmentInvoker
import Amazonka.ResilienceHub.Types.AssessmentStatus
import Amazonka.ResilienceHub.Types.ComplianceStatus
import Amazonka.ResilienceHub.Types.Cost
import Amazonka.ResilienceHub.Types.DisruptionCompliance
import Amazonka.ResilienceHub.Types.DisruptionType
import Amazonka.ResilienceHub.Types.ResiliencyPolicy
import Amazonka.ResilienceHub.Types.ResiliencyScore
import Amazonka.ResilienceHub.Types.ResourceErrorsDetails
data AppAssessment = AppAssessment'
{
AppAssessment -> Maybe Text
appArn :: Prelude.Maybe Prelude.Text,
AppAssessment -> Maybe Text
appVersion :: Prelude.Maybe Prelude.Text,
AppAssessment -> Maybe Text
assessmentName :: Prelude.Maybe Prelude.Text,
AppAssessment
-> Maybe (HashMap DisruptionType DisruptionCompliance)
compliance :: Prelude.Maybe (Prelude.HashMap DisruptionType DisruptionCompliance),
AppAssessment -> Maybe ComplianceStatus
complianceStatus :: Prelude.Maybe ComplianceStatus,
AppAssessment -> Maybe Cost
cost :: Prelude.Maybe Cost,
AppAssessment -> Maybe POSIX
endTime :: Prelude.Maybe Data.POSIX,
AppAssessment -> Maybe Text
message :: Prelude.Maybe Prelude.Text,
AppAssessment -> Maybe ResiliencyPolicy
policy :: Prelude.Maybe ResiliencyPolicy,
AppAssessment -> Maybe ResiliencyScore
resiliencyScore :: Prelude.Maybe ResiliencyScore,
AppAssessment -> Maybe ResourceErrorsDetails
resourceErrorsDetails :: Prelude.Maybe ResourceErrorsDetails,
AppAssessment -> Maybe POSIX
startTime :: Prelude.Maybe Data.POSIX,
AppAssessment -> Maybe (Sensitive (HashMap Text Text))
tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),
AppAssessment -> Text
assessmentArn :: Prelude.Text,
AppAssessment -> AssessmentStatus
assessmentStatus :: AssessmentStatus,
AppAssessment -> AssessmentInvoker
invoker :: AssessmentInvoker
}
deriving (AppAssessment -> AppAssessment -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: AppAssessment -> AppAssessment -> Bool
$c/= :: AppAssessment -> AppAssessment -> Bool
== :: AppAssessment -> AppAssessment -> Bool
$c== :: AppAssessment -> AppAssessment -> Bool
Prelude.Eq, Int -> AppAssessment -> ShowS
[AppAssessment] -> ShowS
AppAssessment -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [AppAssessment] -> ShowS
$cshowList :: [AppAssessment] -> ShowS
show :: AppAssessment -> String
$cshow :: AppAssessment -> String
showsPrec :: Int -> AppAssessment -> ShowS
$cshowsPrec :: Int -> AppAssessment -> ShowS
Prelude.Show, forall x. Rep AppAssessment x -> AppAssessment
forall x. AppAssessment -> Rep AppAssessment x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep AppAssessment x -> AppAssessment
$cfrom :: forall x. AppAssessment -> Rep AppAssessment x
Prelude.Generic)
newAppAssessment ::
Prelude.Text ->
AssessmentStatus ->
AssessmentInvoker ->
AppAssessment
newAppAssessment :: Text -> AssessmentStatus -> AssessmentInvoker -> AppAssessment
newAppAssessment
Text
pAssessmentArn_
AssessmentStatus
pAssessmentStatus_
AssessmentInvoker
pInvoker_ =
AppAssessment'
{ $sel:appArn:AppAssessment' :: Maybe Text
appArn = forall a. Maybe a
Prelude.Nothing,
$sel:appVersion:AppAssessment' :: Maybe Text
appVersion = forall a. Maybe a
Prelude.Nothing,
$sel:assessmentName:AppAssessment' :: Maybe Text
assessmentName = forall a. Maybe a
Prelude.Nothing,
$sel:compliance:AppAssessment' :: Maybe (HashMap DisruptionType DisruptionCompliance)
compliance = forall a. Maybe a
Prelude.Nothing,
$sel:complianceStatus:AppAssessment' :: Maybe ComplianceStatus
complianceStatus = forall a. Maybe a
Prelude.Nothing,
$sel:cost:AppAssessment' :: Maybe Cost
cost = forall a. Maybe a
Prelude.Nothing,
$sel:endTime:AppAssessment' :: Maybe POSIX
endTime = forall a. Maybe a
Prelude.Nothing,
$sel:message:AppAssessment' :: Maybe Text
message = forall a. Maybe a
Prelude.Nothing,
$sel:policy:AppAssessment' :: Maybe ResiliencyPolicy
policy = forall a. Maybe a
Prelude.Nothing,
$sel:resiliencyScore:AppAssessment' :: Maybe ResiliencyScore
resiliencyScore = forall a. Maybe a
Prelude.Nothing,
$sel:resourceErrorsDetails:AppAssessment' :: Maybe ResourceErrorsDetails
resourceErrorsDetails = forall a. Maybe a
Prelude.Nothing,
$sel:startTime:AppAssessment' :: Maybe POSIX
startTime = forall a. Maybe a
Prelude.Nothing,
$sel:tags:AppAssessment' :: Maybe (Sensitive (HashMap Text Text))
tags = forall a. Maybe a
Prelude.Nothing,
$sel:assessmentArn:AppAssessment' :: Text
assessmentArn = Text
pAssessmentArn_,
$sel:assessmentStatus:AppAssessment' :: AssessmentStatus
assessmentStatus = AssessmentStatus
pAssessmentStatus_,
$sel:invoker:AppAssessment' :: AssessmentInvoker
invoker = AssessmentInvoker
pInvoker_
}
appAssessment_appArn :: Lens.Lens' AppAssessment (Prelude.Maybe Prelude.Text)
appAssessment_appArn :: Lens' AppAssessment (Maybe Text)
appAssessment_appArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AppAssessment' {Maybe Text
appArn :: Maybe Text
$sel:appArn:AppAssessment' :: AppAssessment -> Maybe Text
appArn} -> Maybe Text
appArn) (\s :: AppAssessment
s@AppAssessment' {} Maybe Text
a -> AppAssessment
s {$sel:appArn:AppAssessment' :: Maybe Text
appArn = Maybe Text
a} :: AppAssessment)
appAssessment_appVersion :: Lens.Lens' AppAssessment (Prelude.Maybe Prelude.Text)
appAssessment_appVersion :: Lens' AppAssessment (Maybe Text)
appAssessment_appVersion = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AppAssessment' {Maybe Text
appVersion :: Maybe Text
$sel:appVersion:AppAssessment' :: AppAssessment -> Maybe Text
appVersion} -> Maybe Text
appVersion) (\s :: AppAssessment
s@AppAssessment' {} Maybe Text
a -> AppAssessment
s {$sel:appVersion:AppAssessment' :: Maybe Text
appVersion = Maybe Text
a} :: AppAssessment)
appAssessment_assessmentName :: Lens.Lens' AppAssessment (Prelude.Maybe Prelude.Text)
appAssessment_assessmentName :: Lens' AppAssessment (Maybe Text)
appAssessment_assessmentName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AppAssessment' {Maybe Text
assessmentName :: Maybe Text
$sel:assessmentName:AppAssessment' :: AppAssessment -> Maybe Text
assessmentName} -> Maybe Text
assessmentName) (\s :: AppAssessment
s@AppAssessment' {} Maybe Text
a -> AppAssessment
s {$sel:assessmentName:AppAssessment' :: Maybe Text
assessmentName = Maybe Text
a} :: AppAssessment)
appAssessment_compliance :: Lens.Lens' AppAssessment (Prelude.Maybe (Prelude.HashMap DisruptionType DisruptionCompliance))
appAssessment_compliance :: Lens'
AppAssessment (Maybe (HashMap DisruptionType DisruptionCompliance))
appAssessment_compliance = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AppAssessment' {Maybe (HashMap DisruptionType DisruptionCompliance)
compliance :: Maybe (HashMap DisruptionType DisruptionCompliance)
$sel:compliance:AppAssessment' :: AppAssessment
-> Maybe (HashMap DisruptionType DisruptionCompliance)
compliance} -> Maybe (HashMap DisruptionType DisruptionCompliance)
compliance) (\s :: AppAssessment
s@AppAssessment' {} Maybe (HashMap DisruptionType DisruptionCompliance)
a -> AppAssessment
s {$sel:compliance:AppAssessment' :: Maybe (HashMap DisruptionType DisruptionCompliance)
compliance = Maybe (HashMap DisruptionType DisruptionCompliance)
a} :: AppAssessment) 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 s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
appAssessment_complianceStatus :: Lens.Lens' AppAssessment (Prelude.Maybe ComplianceStatus)
appAssessment_complianceStatus :: Lens' AppAssessment (Maybe ComplianceStatus)
appAssessment_complianceStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AppAssessment' {Maybe ComplianceStatus
complianceStatus :: Maybe ComplianceStatus
$sel:complianceStatus:AppAssessment' :: AppAssessment -> Maybe ComplianceStatus
complianceStatus} -> Maybe ComplianceStatus
complianceStatus) (\s :: AppAssessment
s@AppAssessment' {} Maybe ComplianceStatus
a -> AppAssessment
s {$sel:complianceStatus:AppAssessment' :: Maybe ComplianceStatus
complianceStatus = Maybe ComplianceStatus
a} :: AppAssessment)
appAssessment_cost :: Lens.Lens' AppAssessment (Prelude.Maybe Cost)
appAssessment_cost :: Lens' AppAssessment (Maybe Cost)
appAssessment_cost = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AppAssessment' {Maybe Cost
cost :: Maybe Cost
$sel:cost:AppAssessment' :: AppAssessment -> Maybe Cost
cost} -> Maybe Cost
cost) (\s :: AppAssessment
s@AppAssessment' {} Maybe Cost
a -> AppAssessment
s {$sel:cost:AppAssessment' :: Maybe Cost
cost = Maybe Cost
a} :: AppAssessment)
appAssessment_endTime :: Lens.Lens' AppAssessment (Prelude.Maybe Prelude.UTCTime)
appAssessment_endTime :: Lens' AppAssessment (Maybe UTCTime)
appAssessment_endTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AppAssessment' {Maybe POSIX
endTime :: Maybe POSIX
$sel:endTime:AppAssessment' :: AppAssessment -> Maybe POSIX
endTime} -> Maybe POSIX
endTime) (\s :: AppAssessment
s@AppAssessment' {} Maybe POSIX
a -> AppAssessment
s {$sel:endTime:AppAssessment' :: Maybe POSIX
endTime = Maybe POSIX
a} :: AppAssessment) 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
appAssessment_message :: Lens.Lens' AppAssessment (Prelude.Maybe Prelude.Text)
appAssessment_message :: Lens' AppAssessment (Maybe Text)
appAssessment_message = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AppAssessment' {Maybe Text
message :: Maybe Text
$sel:message:AppAssessment' :: AppAssessment -> Maybe Text
message} -> Maybe Text
message) (\s :: AppAssessment
s@AppAssessment' {} Maybe Text
a -> AppAssessment
s {$sel:message:AppAssessment' :: Maybe Text
message = Maybe Text
a} :: AppAssessment)
appAssessment_policy :: Lens.Lens' AppAssessment (Prelude.Maybe ResiliencyPolicy)
appAssessment_policy :: Lens' AppAssessment (Maybe ResiliencyPolicy)
appAssessment_policy = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AppAssessment' {Maybe ResiliencyPolicy
policy :: Maybe ResiliencyPolicy
$sel:policy:AppAssessment' :: AppAssessment -> Maybe ResiliencyPolicy
policy} -> Maybe ResiliencyPolicy
policy) (\s :: AppAssessment
s@AppAssessment' {} Maybe ResiliencyPolicy
a -> AppAssessment
s {$sel:policy:AppAssessment' :: Maybe ResiliencyPolicy
policy = Maybe ResiliencyPolicy
a} :: AppAssessment)
appAssessment_resiliencyScore :: Lens.Lens' AppAssessment (Prelude.Maybe ResiliencyScore)
appAssessment_resiliencyScore :: Lens' AppAssessment (Maybe ResiliencyScore)
appAssessment_resiliencyScore = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AppAssessment' {Maybe ResiliencyScore
resiliencyScore :: Maybe ResiliencyScore
$sel:resiliencyScore:AppAssessment' :: AppAssessment -> Maybe ResiliencyScore
resiliencyScore} -> Maybe ResiliencyScore
resiliencyScore) (\s :: AppAssessment
s@AppAssessment' {} Maybe ResiliencyScore
a -> AppAssessment
s {$sel:resiliencyScore:AppAssessment' :: Maybe ResiliencyScore
resiliencyScore = Maybe ResiliencyScore
a} :: AppAssessment)
appAssessment_resourceErrorsDetails :: Lens.Lens' AppAssessment (Prelude.Maybe ResourceErrorsDetails)
appAssessment_resourceErrorsDetails :: Lens' AppAssessment (Maybe ResourceErrorsDetails)
appAssessment_resourceErrorsDetails = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AppAssessment' {Maybe ResourceErrorsDetails
resourceErrorsDetails :: Maybe ResourceErrorsDetails
$sel:resourceErrorsDetails:AppAssessment' :: AppAssessment -> Maybe ResourceErrorsDetails
resourceErrorsDetails} -> Maybe ResourceErrorsDetails
resourceErrorsDetails) (\s :: AppAssessment
s@AppAssessment' {} Maybe ResourceErrorsDetails
a -> AppAssessment
s {$sel:resourceErrorsDetails:AppAssessment' :: Maybe ResourceErrorsDetails
resourceErrorsDetails = Maybe ResourceErrorsDetails
a} :: AppAssessment)
appAssessment_startTime :: Lens.Lens' AppAssessment (Prelude.Maybe Prelude.UTCTime)
appAssessment_startTime :: Lens' AppAssessment (Maybe UTCTime)
appAssessment_startTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AppAssessment' {Maybe POSIX
startTime :: Maybe POSIX
$sel:startTime:AppAssessment' :: AppAssessment -> Maybe POSIX
startTime} -> Maybe POSIX
startTime) (\s :: AppAssessment
s@AppAssessment' {} Maybe POSIX
a -> AppAssessment
s {$sel:startTime:AppAssessment' :: Maybe POSIX
startTime = Maybe POSIX
a} :: AppAssessment) 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
appAssessment_tags :: Lens.Lens' AppAssessment (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))
appAssessment_tags :: Lens' AppAssessment (Maybe (HashMap Text Text))
appAssessment_tags = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AppAssessment' {Maybe (Sensitive (HashMap Text Text))
tags :: Maybe (Sensitive (HashMap Text Text))
$sel:tags:AppAssessment' :: AppAssessment -> Maybe (Sensitive (HashMap Text Text))
tags} -> Maybe (Sensitive (HashMap Text Text))
tags) (\s :: AppAssessment
s@AppAssessment' {} Maybe (Sensitive (HashMap Text Text))
a -> AppAssessment
s {$sel:tags:AppAssessment' :: Maybe (Sensitive (HashMap Text Text))
tags = Maybe (Sensitive (HashMap Text Text))
a} :: AppAssessment) 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. Iso' (Sensitive a) a
Data._Sensitive 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)
appAssessment_assessmentArn :: Lens.Lens' AppAssessment Prelude.Text
appAssessment_assessmentArn :: Lens' AppAssessment Text
appAssessment_assessmentArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AppAssessment' {Text
assessmentArn :: Text
$sel:assessmentArn:AppAssessment' :: AppAssessment -> Text
assessmentArn} -> Text
assessmentArn) (\s :: AppAssessment
s@AppAssessment' {} Text
a -> AppAssessment
s {$sel:assessmentArn:AppAssessment' :: Text
assessmentArn = Text
a} :: AppAssessment)
appAssessment_assessmentStatus :: Lens.Lens' AppAssessment AssessmentStatus
appAssessment_assessmentStatus :: Lens' AppAssessment AssessmentStatus
appAssessment_assessmentStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AppAssessment' {AssessmentStatus
assessmentStatus :: AssessmentStatus
$sel:assessmentStatus:AppAssessment' :: AppAssessment -> AssessmentStatus
assessmentStatus} -> AssessmentStatus
assessmentStatus) (\s :: AppAssessment
s@AppAssessment' {} AssessmentStatus
a -> AppAssessment
s {$sel:assessmentStatus:AppAssessment' :: AssessmentStatus
assessmentStatus = AssessmentStatus
a} :: AppAssessment)
appAssessment_invoker :: Lens.Lens' AppAssessment AssessmentInvoker
appAssessment_invoker :: Lens' AppAssessment AssessmentInvoker
appAssessment_invoker = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AppAssessment' {AssessmentInvoker
invoker :: AssessmentInvoker
$sel:invoker:AppAssessment' :: AppAssessment -> AssessmentInvoker
invoker} -> AssessmentInvoker
invoker) (\s :: AppAssessment
s@AppAssessment' {} AssessmentInvoker
a -> AppAssessment
s {$sel:invoker:AppAssessment' :: AssessmentInvoker
invoker = AssessmentInvoker
a} :: AppAssessment)
instance Data.FromJSON AppAssessment where
parseJSON :: Value -> Parser AppAssessment
parseJSON =
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
String
"AppAssessment"
( \Object
x ->
Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe (HashMap DisruptionType DisruptionCompliance)
-> Maybe ComplianceStatus
-> Maybe Cost
-> Maybe POSIX
-> Maybe Text
-> Maybe ResiliencyPolicy
-> Maybe ResiliencyScore
-> Maybe ResourceErrorsDetails
-> Maybe POSIX
-> Maybe (Sensitive (HashMap Text Text))
-> Text
-> AssessmentStatus
-> AssessmentInvoker
-> AppAssessment
AppAssessment'
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
"appArn")
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
"appVersion")
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
"assessmentName")
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
"compliance" 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
"complianceStatus")
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
"cost")
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
"endTime")
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
"message")
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
"policy")
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
"resiliencyScore")
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
"resourceErrorsDetails")
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
"startTime")
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
"tags" 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
"assessmentArn")
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
"assessmentStatus")
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
"invoker")
)
instance Prelude.Hashable AppAssessment where
hashWithSalt :: Int -> AppAssessment -> Int
hashWithSalt Int
_salt AppAssessment' {Maybe Text
Maybe (HashMap DisruptionType DisruptionCompliance)
Maybe (Sensitive (HashMap Text Text))
Maybe POSIX
Maybe ComplianceStatus
Maybe Cost
Maybe ResiliencyPolicy
Maybe ResiliencyScore
Maybe ResourceErrorsDetails
Text
AssessmentInvoker
AssessmentStatus
invoker :: AssessmentInvoker
assessmentStatus :: AssessmentStatus
assessmentArn :: Text
tags :: Maybe (Sensitive (HashMap Text Text))
startTime :: Maybe POSIX
resourceErrorsDetails :: Maybe ResourceErrorsDetails
resiliencyScore :: Maybe ResiliencyScore
policy :: Maybe ResiliencyPolicy
message :: Maybe Text
endTime :: Maybe POSIX
cost :: Maybe Cost
complianceStatus :: Maybe ComplianceStatus
compliance :: Maybe (HashMap DisruptionType DisruptionCompliance)
assessmentName :: Maybe Text
appVersion :: Maybe Text
appArn :: Maybe Text
$sel:invoker:AppAssessment' :: AppAssessment -> AssessmentInvoker
$sel:assessmentStatus:AppAssessment' :: AppAssessment -> AssessmentStatus
$sel:assessmentArn:AppAssessment' :: AppAssessment -> Text
$sel:tags:AppAssessment' :: AppAssessment -> Maybe (Sensitive (HashMap Text Text))
$sel:startTime:AppAssessment' :: AppAssessment -> Maybe POSIX
$sel:resourceErrorsDetails:AppAssessment' :: AppAssessment -> Maybe ResourceErrorsDetails
$sel:resiliencyScore:AppAssessment' :: AppAssessment -> Maybe ResiliencyScore
$sel:policy:AppAssessment' :: AppAssessment -> Maybe ResiliencyPolicy
$sel:message:AppAssessment' :: AppAssessment -> Maybe Text
$sel:endTime:AppAssessment' :: AppAssessment -> Maybe POSIX
$sel:cost:AppAssessment' :: AppAssessment -> Maybe Cost
$sel:complianceStatus:AppAssessment' :: AppAssessment -> Maybe ComplianceStatus
$sel:compliance:AppAssessment' :: AppAssessment
-> Maybe (HashMap DisruptionType DisruptionCompliance)
$sel:assessmentName:AppAssessment' :: AppAssessment -> Maybe Text
$sel:appVersion:AppAssessment' :: AppAssessment -> Maybe Text
$sel:appArn:AppAssessment' :: AppAssessment -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
appArn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
appVersion
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
assessmentName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe (HashMap DisruptionType DisruptionCompliance)
compliance
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ComplianceStatus
complianceStatus
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Cost
cost
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe POSIX
endTime
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
message
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ResiliencyPolicy
policy
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ResiliencyScore
resiliencyScore
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ResourceErrorsDetails
resourceErrorsDetails
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe POSIX
startTime
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe (Sensitive (HashMap Text Text))
tags
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
assessmentArn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` AssessmentStatus
assessmentStatus
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` AssessmentInvoker
invoker
instance Prelude.NFData AppAssessment where
rnf :: AppAssessment -> ()
rnf AppAssessment' {Maybe Text
Maybe (HashMap DisruptionType DisruptionCompliance)
Maybe (Sensitive (HashMap Text Text))
Maybe POSIX
Maybe ComplianceStatus
Maybe Cost
Maybe ResiliencyPolicy
Maybe ResiliencyScore
Maybe ResourceErrorsDetails
Text
AssessmentInvoker
AssessmentStatus
invoker :: AssessmentInvoker
assessmentStatus :: AssessmentStatus
assessmentArn :: Text
tags :: Maybe (Sensitive (HashMap Text Text))
startTime :: Maybe POSIX
resourceErrorsDetails :: Maybe ResourceErrorsDetails
resiliencyScore :: Maybe ResiliencyScore
policy :: Maybe ResiliencyPolicy
message :: Maybe Text
endTime :: Maybe POSIX
cost :: Maybe Cost
complianceStatus :: Maybe ComplianceStatus
compliance :: Maybe (HashMap DisruptionType DisruptionCompliance)
assessmentName :: Maybe Text
appVersion :: Maybe Text
appArn :: Maybe Text
$sel:invoker:AppAssessment' :: AppAssessment -> AssessmentInvoker
$sel:assessmentStatus:AppAssessment' :: AppAssessment -> AssessmentStatus
$sel:assessmentArn:AppAssessment' :: AppAssessment -> Text
$sel:tags:AppAssessment' :: AppAssessment -> Maybe (Sensitive (HashMap Text Text))
$sel:startTime:AppAssessment' :: AppAssessment -> Maybe POSIX
$sel:resourceErrorsDetails:AppAssessment' :: AppAssessment -> Maybe ResourceErrorsDetails
$sel:resiliencyScore:AppAssessment' :: AppAssessment -> Maybe ResiliencyScore
$sel:policy:AppAssessment' :: AppAssessment -> Maybe ResiliencyPolicy
$sel:message:AppAssessment' :: AppAssessment -> Maybe Text
$sel:endTime:AppAssessment' :: AppAssessment -> Maybe POSIX
$sel:cost:AppAssessment' :: AppAssessment -> Maybe Cost
$sel:complianceStatus:AppAssessment' :: AppAssessment -> Maybe ComplianceStatus
$sel:compliance:AppAssessment' :: AppAssessment
-> Maybe (HashMap DisruptionType DisruptionCompliance)
$sel:assessmentName:AppAssessment' :: AppAssessment -> Maybe Text
$sel:appVersion:AppAssessment' :: AppAssessment -> Maybe Text
$sel:appArn:AppAssessment' :: AppAssessment -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
appArn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
appVersion
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
assessmentName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe (HashMap DisruptionType DisruptionCompliance)
compliance
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ComplianceStatus
complianceStatus
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Cost
cost
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
endTime
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
message
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ResiliencyPolicy
policy
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ResiliencyScore
resiliencyScore
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ResourceErrorsDetails
resourceErrorsDetails
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
startTime
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe (Sensitive (HashMap Text Text))
tags
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
assessmentArn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf AssessmentStatus
assessmentStatus
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf AssessmentInvoker
invoker