{-# 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.QuickSight.Types.Analysis 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.QuickSight.Types.AnalysisError
import Amazonka.QuickSight.Types.ResourceStatus
import Amazonka.QuickSight.Types.Sheet
data Analysis = Analysis'
{
Analysis -> Maybe Text
analysisId :: Prelude.Maybe Prelude.Text,
Analysis -> Maybe Text
arn :: Prelude.Maybe Prelude.Text,
Analysis -> Maybe POSIX
createdTime :: Prelude.Maybe Data.POSIX,
Analysis -> Maybe [Text]
dataSetArns :: Prelude.Maybe [Prelude.Text],
Analysis -> Maybe (NonEmpty AnalysisError)
errors :: Prelude.Maybe (Prelude.NonEmpty AnalysisError),
Analysis -> Maybe POSIX
lastUpdatedTime :: Prelude.Maybe Data.POSIX,
Analysis -> Maybe Text
name :: Prelude.Maybe Prelude.Text,
Analysis -> Maybe [Sheet]
sheets :: Prelude.Maybe [Sheet],
Analysis -> Maybe ResourceStatus
status :: Prelude.Maybe ResourceStatus,
Analysis -> Maybe Text
themeArn :: Prelude.Maybe Prelude.Text
}
deriving (Analysis -> Analysis -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: Analysis -> Analysis -> Bool
$c/= :: Analysis -> Analysis -> Bool
== :: Analysis -> Analysis -> Bool
$c== :: Analysis -> Analysis -> Bool
Prelude.Eq, ReadPrec [Analysis]
ReadPrec Analysis
Int -> ReadS Analysis
ReadS [Analysis]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [Analysis]
$creadListPrec :: ReadPrec [Analysis]
readPrec :: ReadPrec Analysis
$creadPrec :: ReadPrec Analysis
readList :: ReadS [Analysis]
$creadList :: ReadS [Analysis]
readsPrec :: Int -> ReadS Analysis
$creadsPrec :: Int -> ReadS Analysis
Prelude.Read, Int -> Analysis -> ShowS
[Analysis] -> ShowS
Analysis -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [Analysis] -> ShowS
$cshowList :: [Analysis] -> ShowS
show :: Analysis -> String
$cshow :: Analysis -> String
showsPrec :: Int -> Analysis -> ShowS
$cshowsPrec :: Int -> Analysis -> ShowS
Prelude.Show, forall x. Rep Analysis x -> Analysis
forall x. Analysis -> Rep Analysis x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep Analysis x -> Analysis
$cfrom :: forall x. Analysis -> Rep Analysis x
Prelude.Generic)
newAnalysis ::
Analysis
newAnalysis :: Analysis
newAnalysis =
Analysis'
{ $sel:analysisId:Analysis' :: Maybe Text
analysisId = forall a. Maybe a
Prelude.Nothing,
$sel:arn:Analysis' :: Maybe Text
arn = forall a. Maybe a
Prelude.Nothing,
$sel:createdTime:Analysis' :: Maybe POSIX
createdTime = forall a. Maybe a
Prelude.Nothing,
$sel:dataSetArns:Analysis' :: Maybe [Text]
dataSetArns = forall a. Maybe a
Prelude.Nothing,
$sel:errors:Analysis' :: Maybe (NonEmpty AnalysisError)
errors = forall a. Maybe a
Prelude.Nothing,
$sel:lastUpdatedTime:Analysis' :: Maybe POSIX
lastUpdatedTime = forall a. Maybe a
Prelude.Nothing,
$sel:name:Analysis' :: Maybe Text
name = forall a. Maybe a
Prelude.Nothing,
$sel:sheets:Analysis' :: Maybe [Sheet]
sheets = forall a. Maybe a
Prelude.Nothing,
$sel:status:Analysis' :: Maybe ResourceStatus
status = forall a. Maybe a
Prelude.Nothing,
$sel:themeArn:Analysis' :: Maybe Text
themeArn = forall a. Maybe a
Prelude.Nothing
}
analysis_analysisId :: Lens.Lens' Analysis (Prelude.Maybe Prelude.Text)
analysis_analysisId :: Lens' Analysis (Maybe Text)
analysis_analysisId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Analysis' {Maybe Text
analysisId :: Maybe Text
$sel:analysisId:Analysis' :: Analysis -> Maybe Text
analysisId} -> Maybe Text
analysisId) (\s :: Analysis
s@Analysis' {} Maybe Text
a -> Analysis
s {$sel:analysisId:Analysis' :: Maybe Text
analysisId = Maybe Text
a} :: Analysis)
analysis_arn :: Lens.Lens' Analysis (Prelude.Maybe Prelude.Text)
analysis_arn :: Lens' Analysis (Maybe Text)
analysis_arn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Analysis' {Maybe Text
arn :: Maybe Text
$sel:arn:Analysis' :: Analysis -> Maybe Text
arn} -> Maybe Text
arn) (\s :: Analysis
s@Analysis' {} Maybe Text
a -> Analysis
s {$sel:arn:Analysis' :: Maybe Text
arn = Maybe Text
a} :: Analysis)
analysis_createdTime :: Lens.Lens' Analysis (Prelude.Maybe Prelude.UTCTime)
analysis_createdTime :: Lens' Analysis (Maybe UTCTime)
analysis_createdTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Analysis' {Maybe POSIX
createdTime :: Maybe POSIX
$sel:createdTime:Analysis' :: Analysis -> Maybe POSIX
createdTime} -> Maybe POSIX
createdTime) (\s :: Analysis
s@Analysis' {} Maybe POSIX
a -> Analysis
s {$sel:createdTime:Analysis' :: Maybe POSIX
createdTime = Maybe POSIX
a} :: Analysis) 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
analysis_dataSetArns :: Lens.Lens' Analysis (Prelude.Maybe [Prelude.Text])
analysis_dataSetArns :: Lens' Analysis (Maybe [Text])
analysis_dataSetArns = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Analysis' {Maybe [Text]
dataSetArns :: Maybe [Text]
$sel:dataSetArns:Analysis' :: Analysis -> Maybe [Text]
dataSetArns} -> Maybe [Text]
dataSetArns) (\s :: Analysis
s@Analysis' {} Maybe [Text]
a -> Analysis
s {$sel:dataSetArns:Analysis' :: Maybe [Text]
dataSetArns = Maybe [Text]
a} :: Analysis) 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
analysis_errors :: Lens.Lens' Analysis (Prelude.Maybe (Prelude.NonEmpty AnalysisError))
analysis_errors :: Lens' Analysis (Maybe (NonEmpty AnalysisError))
analysis_errors = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Analysis' {Maybe (NonEmpty AnalysisError)
errors :: Maybe (NonEmpty AnalysisError)
$sel:errors:Analysis' :: Analysis -> Maybe (NonEmpty AnalysisError)
errors} -> Maybe (NonEmpty AnalysisError)
errors) (\s :: Analysis
s@Analysis' {} Maybe (NonEmpty AnalysisError)
a -> Analysis
s {$sel:errors:Analysis' :: Maybe (NonEmpty AnalysisError)
errors = Maybe (NonEmpty AnalysisError)
a} :: Analysis) 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
analysis_lastUpdatedTime :: Lens.Lens' Analysis (Prelude.Maybe Prelude.UTCTime)
analysis_lastUpdatedTime :: Lens' Analysis (Maybe UTCTime)
analysis_lastUpdatedTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Analysis' {Maybe POSIX
lastUpdatedTime :: Maybe POSIX
$sel:lastUpdatedTime:Analysis' :: Analysis -> Maybe POSIX
lastUpdatedTime} -> Maybe POSIX
lastUpdatedTime) (\s :: Analysis
s@Analysis' {} Maybe POSIX
a -> Analysis
s {$sel:lastUpdatedTime:Analysis' :: Maybe POSIX
lastUpdatedTime = Maybe POSIX
a} :: Analysis) 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
analysis_name :: Lens.Lens' Analysis (Prelude.Maybe Prelude.Text)
analysis_name :: Lens' Analysis (Maybe Text)
analysis_name = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Analysis' {Maybe Text
name :: Maybe Text
$sel:name:Analysis' :: Analysis -> Maybe Text
name} -> Maybe Text
name) (\s :: Analysis
s@Analysis' {} Maybe Text
a -> Analysis
s {$sel:name:Analysis' :: Maybe Text
name = Maybe Text
a} :: Analysis)
analysis_sheets :: Lens.Lens' Analysis (Prelude.Maybe [Sheet])
analysis_sheets :: Lens' Analysis (Maybe [Sheet])
analysis_sheets = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Analysis' {Maybe [Sheet]
sheets :: Maybe [Sheet]
$sel:sheets:Analysis' :: Analysis -> Maybe [Sheet]
sheets} -> Maybe [Sheet]
sheets) (\s :: Analysis
s@Analysis' {} Maybe [Sheet]
a -> Analysis
s {$sel:sheets:Analysis' :: Maybe [Sheet]
sheets = Maybe [Sheet]
a} :: Analysis) 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
analysis_status :: Lens.Lens' Analysis (Prelude.Maybe ResourceStatus)
analysis_status :: Lens' Analysis (Maybe ResourceStatus)
analysis_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Analysis' {Maybe ResourceStatus
status :: Maybe ResourceStatus
$sel:status:Analysis' :: Analysis -> Maybe ResourceStatus
status} -> Maybe ResourceStatus
status) (\s :: Analysis
s@Analysis' {} Maybe ResourceStatus
a -> Analysis
s {$sel:status:Analysis' :: Maybe ResourceStatus
status = Maybe ResourceStatus
a} :: Analysis)
analysis_themeArn :: Lens.Lens' Analysis (Prelude.Maybe Prelude.Text)
analysis_themeArn :: Lens' Analysis (Maybe Text)
analysis_themeArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Analysis' {Maybe Text
themeArn :: Maybe Text
$sel:themeArn:Analysis' :: Analysis -> Maybe Text
themeArn} -> Maybe Text
themeArn) (\s :: Analysis
s@Analysis' {} Maybe Text
a -> Analysis
s {$sel:themeArn:Analysis' :: Maybe Text
themeArn = Maybe Text
a} :: Analysis)
instance Data.FromJSON Analysis where
parseJSON :: Value -> Parser Analysis
parseJSON =
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
String
"Analysis"
( \Object
x ->
Maybe Text
-> Maybe Text
-> Maybe POSIX
-> Maybe [Text]
-> Maybe (NonEmpty AnalysisError)
-> Maybe POSIX
-> Maybe Text
-> Maybe [Sheet]
-> Maybe ResourceStatus
-> Maybe Text
-> Analysis
Analysis'
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
"AnalysisId")
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
"Arn")
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
"CreatedTime")
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
"DataSetArns" 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
"Errors")
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
"LastUpdatedTime")
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
"Name")
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
"Sheets" 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
"Status")
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
"ThemeArn")
)
instance Prelude.Hashable Analysis where
hashWithSalt :: Int -> Analysis -> Int
hashWithSalt Int
_salt Analysis' {Maybe [Text]
Maybe [Sheet]
Maybe (NonEmpty AnalysisError)
Maybe Text
Maybe POSIX
Maybe ResourceStatus
themeArn :: Maybe Text
status :: Maybe ResourceStatus
sheets :: Maybe [Sheet]
name :: Maybe Text
lastUpdatedTime :: Maybe POSIX
errors :: Maybe (NonEmpty AnalysisError)
dataSetArns :: Maybe [Text]
createdTime :: Maybe POSIX
arn :: Maybe Text
analysisId :: Maybe Text
$sel:themeArn:Analysis' :: Analysis -> Maybe Text
$sel:status:Analysis' :: Analysis -> Maybe ResourceStatus
$sel:sheets:Analysis' :: Analysis -> Maybe [Sheet]
$sel:name:Analysis' :: Analysis -> Maybe Text
$sel:lastUpdatedTime:Analysis' :: Analysis -> Maybe POSIX
$sel:errors:Analysis' :: Analysis -> Maybe (NonEmpty AnalysisError)
$sel:dataSetArns:Analysis' :: Analysis -> Maybe [Text]
$sel:createdTime:Analysis' :: Analysis -> Maybe POSIX
$sel:arn:Analysis' :: Analysis -> Maybe Text
$sel:analysisId:Analysis' :: Analysis -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
analysisId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
arn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe POSIX
createdTime
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [Text]
dataSetArns
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe (NonEmpty AnalysisError)
errors
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe POSIX
lastUpdatedTime
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
name
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [Sheet]
sheets
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ResourceStatus
status
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
themeArn
instance Prelude.NFData Analysis where
rnf :: Analysis -> ()
rnf Analysis' {Maybe [Text]
Maybe [Sheet]
Maybe (NonEmpty AnalysisError)
Maybe Text
Maybe POSIX
Maybe ResourceStatus
themeArn :: Maybe Text
status :: Maybe ResourceStatus
sheets :: Maybe [Sheet]
name :: Maybe Text
lastUpdatedTime :: Maybe POSIX
errors :: Maybe (NonEmpty AnalysisError)
dataSetArns :: Maybe [Text]
createdTime :: Maybe POSIX
arn :: Maybe Text
analysisId :: Maybe Text
$sel:themeArn:Analysis' :: Analysis -> Maybe Text
$sel:status:Analysis' :: Analysis -> Maybe ResourceStatus
$sel:sheets:Analysis' :: Analysis -> Maybe [Sheet]
$sel:name:Analysis' :: Analysis -> Maybe Text
$sel:lastUpdatedTime:Analysis' :: Analysis -> Maybe POSIX
$sel:errors:Analysis' :: Analysis -> Maybe (NonEmpty AnalysisError)
$sel:dataSetArns:Analysis' :: Analysis -> Maybe [Text]
$sel:createdTime:Analysis' :: Analysis -> Maybe POSIX
$sel:arn:Analysis' :: Analysis -> Maybe Text
$sel:analysisId:Analysis' :: Analysis -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
analysisId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
arn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
createdTime
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [Text]
dataSetArns
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe (NonEmpty AnalysisError)
errors
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
lastUpdatedTime
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
name
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [Sheet]
sheets
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ResourceStatus
status
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
themeArn