{-# 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.AppFlow.Types.ExecutionRecord where
import Amazonka.AppFlow.Types.ExecutionResult
import Amazonka.AppFlow.Types.ExecutionStatus
import qualified Amazonka.Core as Core
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
data ExecutionRecord = ExecutionRecord'
{
ExecutionRecord -> Maybe Text
executionId :: Prelude.Maybe Prelude.Text,
ExecutionRecord -> Maybe POSIX
lastUpdatedAt :: Prelude.Maybe Core.POSIX,
ExecutionRecord -> Maybe POSIX
dataPullStartTime :: Prelude.Maybe Core.POSIX,
ExecutionRecord -> Maybe ExecutionStatus
executionStatus :: Prelude.Maybe ExecutionStatus,
ExecutionRecord -> Maybe POSIX
startedAt :: Prelude.Maybe Core.POSIX,
ExecutionRecord -> Maybe POSIX
dataPullEndTime :: Prelude.Maybe Core.POSIX,
ExecutionRecord -> Maybe ExecutionResult
executionResult :: Prelude.Maybe ExecutionResult
}
deriving (ExecutionRecord -> ExecutionRecord -> Bool
(ExecutionRecord -> ExecutionRecord -> Bool)
-> (ExecutionRecord -> ExecutionRecord -> Bool)
-> Eq ExecutionRecord
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ExecutionRecord -> ExecutionRecord -> Bool
$c/= :: ExecutionRecord -> ExecutionRecord -> Bool
== :: ExecutionRecord -> ExecutionRecord -> Bool
$c== :: ExecutionRecord -> ExecutionRecord -> Bool
Prelude.Eq, ReadPrec [ExecutionRecord]
ReadPrec ExecutionRecord
Int -> ReadS ExecutionRecord
ReadS [ExecutionRecord]
(Int -> ReadS ExecutionRecord)
-> ReadS [ExecutionRecord]
-> ReadPrec ExecutionRecord
-> ReadPrec [ExecutionRecord]
-> Read ExecutionRecord
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ExecutionRecord]
$creadListPrec :: ReadPrec [ExecutionRecord]
readPrec :: ReadPrec ExecutionRecord
$creadPrec :: ReadPrec ExecutionRecord
readList :: ReadS [ExecutionRecord]
$creadList :: ReadS [ExecutionRecord]
readsPrec :: Int -> ReadS ExecutionRecord
$creadsPrec :: Int -> ReadS ExecutionRecord
Prelude.Read, Int -> ExecutionRecord -> ShowS
[ExecutionRecord] -> ShowS
ExecutionRecord -> String
(Int -> ExecutionRecord -> ShowS)
-> (ExecutionRecord -> String)
-> ([ExecutionRecord] -> ShowS)
-> Show ExecutionRecord
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ExecutionRecord] -> ShowS
$cshowList :: [ExecutionRecord] -> ShowS
show :: ExecutionRecord -> String
$cshow :: ExecutionRecord -> String
showsPrec :: Int -> ExecutionRecord -> ShowS
$cshowsPrec :: Int -> ExecutionRecord -> ShowS
Prelude.Show, (forall x. ExecutionRecord -> Rep ExecutionRecord x)
-> (forall x. Rep ExecutionRecord x -> ExecutionRecord)
-> Generic ExecutionRecord
forall x. Rep ExecutionRecord x -> ExecutionRecord
forall x. ExecutionRecord -> Rep ExecutionRecord x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ExecutionRecord x -> ExecutionRecord
$cfrom :: forall x. ExecutionRecord -> Rep ExecutionRecord x
Prelude.Generic)
newExecutionRecord ::
ExecutionRecord
newExecutionRecord :: ExecutionRecord
newExecutionRecord =
ExecutionRecord' :: Maybe Text
-> Maybe POSIX
-> Maybe POSIX
-> Maybe ExecutionStatus
-> Maybe POSIX
-> Maybe POSIX
-> Maybe ExecutionResult
-> ExecutionRecord
ExecutionRecord'
{ $sel:executionId:ExecutionRecord' :: Maybe Text
executionId = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:lastUpdatedAt:ExecutionRecord' :: Maybe POSIX
lastUpdatedAt = Maybe POSIX
forall a. Maybe a
Prelude.Nothing,
$sel:dataPullStartTime:ExecutionRecord' :: Maybe POSIX
dataPullStartTime = Maybe POSIX
forall a. Maybe a
Prelude.Nothing,
$sel:executionStatus:ExecutionRecord' :: Maybe ExecutionStatus
executionStatus = Maybe ExecutionStatus
forall a. Maybe a
Prelude.Nothing,
$sel:startedAt:ExecutionRecord' :: Maybe POSIX
startedAt = Maybe POSIX
forall a. Maybe a
Prelude.Nothing,
$sel:dataPullEndTime:ExecutionRecord' :: Maybe POSIX
dataPullEndTime = Maybe POSIX
forall a. Maybe a
Prelude.Nothing,
$sel:executionResult:ExecutionRecord' :: Maybe ExecutionResult
executionResult = Maybe ExecutionResult
forall a. Maybe a
Prelude.Nothing
}
executionRecord_executionId :: Lens.Lens' ExecutionRecord (Prelude.Maybe Prelude.Text)
executionRecord_executionId :: (Maybe Text -> f (Maybe Text))
-> ExecutionRecord -> f ExecutionRecord
executionRecord_executionId = (ExecutionRecord -> Maybe Text)
-> (ExecutionRecord -> Maybe Text -> ExecutionRecord)
-> Lens ExecutionRecord ExecutionRecord (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ExecutionRecord' {Maybe Text
executionId :: Maybe Text
$sel:executionId:ExecutionRecord' :: ExecutionRecord -> Maybe Text
executionId} -> Maybe Text
executionId) (\s :: ExecutionRecord
s@ExecutionRecord' {} Maybe Text
a -> ExecutionRecord
s {$sel:executionId:ExecutionRecord' :: Maybe Text
executionId = Maybe Text
a} :: ExecutionRecord)
executionRecord_lastUpdatedAt :: Lens.Lens' ExecutionRecord (Prelude.Maybe Prelude.UTCTime)
executionRecord_lastUpdatedAt :: (Maybe UTCTime -> f (Maybe UTCTime))
-> ExecutionRecord -> f ExecutionRecord
executionRecord_lastUpdatedAt = (ExecutionRecord -> Maybe POSIX)
-> (ExecutionRecord -> Maybe POSIX -> ExecutionRecord)
-> Lens ExecutionRecord ExecutionRecord (Maybe POSIX) (Maybe POSIX)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ExecutionRecord' {Maybe POSIX
lastUpdatedAt :: Maybe POSIX
$sel:lastUpdatedAt:ExecutionRecord' :: ExecutionRecord -> Maybe POSIX
lastUpdatedAt} -> Maybe POSIX
lastUpdatedAt) (\s :: ExecutionRecord
s@ExecutionRecord' {} Maybe POSIX
a -> ExecutionRecord
s {$sel:lastUpdatedAt:ExecutionRecord' :: Maybe POSIX
lastUpdatedAt = Maybe POSIX
a} :: ExecutionRecord) ((Maybe POSIX -> f (Maybe POSIX))
-> ExecutionRecord -> f ExecutionRecord)
-> ((Maybe UTCTime -> f (Maybe UTCTime))
-> Maybe POSIX -> f (Maybe POSIX))
-> (Maybe UTCTime -> f (Maybe UTCTime))
-> ExecutionRecord
-> f ExecutionRecord
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso POSIX POSIX UTCTime UTCTime
-> Iso (Maybe POSIX) (Maybe POSIX) (Maybe UTCTime) (Maybe UTCTime)
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 AnIso POSIX POSIX UTCTime UTCTime
forall (a :: Format). Iso' (Time a) UTCTime
Core._Time
executionRecord_dataPullStartTime :: Lens.Lens' ExecutionRecord (Prelude.Maybe Prelude.UTCTime)
executionRecord_dataPullStartTime :: (Maybe UTCTime -> f (Maybe UTCTime))
-> ExecutionRecord -> f ExecutionRecord
executionRecord_dataPullStartTime = (ExecutionRecord -> Maybe POSIX)
-> (ExecutionRecord -> Maybe POSIX -> ExecutionRecord)
-> Lens ExecutionRecord ExecutionRecord (Maybe POSIX) (Maybe POSIX)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ExecutionRecord' {Maybe POSIX
dataPullStartTime :: Maybe POSIX
$sel:dataPullStartTime:ExecutionRecord' :: ExecutionRecord -> Maybe POSIX
dataPullStartTime} -> Maybe POSIX
dataPullStartTime) (\s :: ExecutionRecord
s@ExecutionRecord' {} Maybe POSIX
a -> ExecutionRecord
s {$sel:dataPullStartTime:ExecutionRecord' :: Maybe POSIX
dataPullStartTime = Maybe POSIX
a} :: ExecutionRecord) ((Maybe POSIX -> f (Maybe POSIX))
-> ExecutionRecord -> f ExecutionRecord)
-> ((Maybe UTCTime -> f (Maybe UTCTime))
-> Maybe POSIX -> f (Maybe POSIX))
-> (Maybe UTCTime -> f (Maybe UTCTime))
-> ExecutionRecord
-> f ExecutionRecord
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso POSIX POSIX UTCTime UTCTime
-> Iso (Maybe POSIX) (Maybe POSIX) (Maybe UTCTime) (Maybe UTCTime)
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 AnIso POSIX POSIX UTCTime UTCTime
forall (a :: Format). Iso' (Time a) UTCTime
Core._Time
executionRecord_executionStatus :: Lens.Lens' ExecutionRecord (Prelude.Maybe ExecutionStatus)
executionRecord_executionStatus :: (Maybe ExecutionStatus -> f (Maybe ExecutionStatus))
-> ExecutionRecord -> f ExecutionRecord
executionRecord_executionStatus = (ExecutionRecord -> Maybe ExecutionStatus)
-> (ExecutionRecord -> Maybe ExecutionStatus -> ExecutionRecord)
-> Lens
ExecutionRecord
ExecutionRecord
(Maybe ExecutionStatus)
(Maybe ExecutionStatus)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ExecutionRecord' {Maybe ExecutionStatus
executionStatus :: Maybe ExecutionStatus
$sel:executionStatus:ExecutionRecord' :: ExecutionRecord -> Maybe ExecutionStatus
executionStatus} -> Maybe ExecutionStatus
executionStatus) (\s :: ExecutionRecord
s@ExecutionRecord' {} Maybe ExecutionStatus
a -> ExecutionRecord
s {$sel:executionStatus:ExecutionRecord' :: Maybe ExecutionStatus
executionStatus = Maybe ExecutionStatus
a} :: ExecutionRecord)
executionRecord_startedAt :: Lens.Lens' ExecutionRecord (Prelude.Maybe Prelude.UTCTime)
executionRecord_startedAt :: (Maybe UTCTime -> f (Maybe UTCTime))
-> ExecutionRecord -> f ExecutionRecord
executionRecord_startedAt = (ExecutionRecord -> Maybe POSIX)
-> (ExecutionRecord -> Maybe POSIX -> ExecutionRecord)
-> Lens ExecutionRecord ExecutionRecord (Maybe POSIX) (Maybe POSIX)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ExecutionRecord' {Maybe POSIX
startedAt :: Maybe POSIX
$sel:startedAt:ExecutionRecord' :: ExecutionRecord -> Maybe POSIX
startedAt} -> Maybe POSIX
startedAt) (\s :: ExecutionRecord
s@ExecutionRecord' {} Maybe POSIX
a -> ExecutionRecord
s {$sel:startedAt:ExecutionRecord' :: Maybe POSIX
startedAt = Maybe POSIX
a} :: ExecutionRecord) ((Maybe POSIX -> f (Maybe POSIX))
-> ExecutionRecord -> f ExecutionRecord)
-> ((Maybe UTCTime -> f (Maybe UTCTime))
-> Maybe POSIX -> f (Maybe POSIX))
-> (Maybe UTCTime -> f (Maybe UTCTime))
-> ExecutionRecord
-> f ExecutionRecord
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso POSIX POSIX UTCTime UTCTime
-> Iso (Maybe POSIX) (Maybe POSIX) (Maybe UTCTime) (Maybe UTCTime)
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 AnIso POSIX POSIX UTCTime UTCTime
forall (a :: Format). Iso' (Time a) UTCTime
Core._Time
executionRecord_dataPullEndTime :: Lens.Lens' ExecutionRecord (Prelude.Maybe Prelude.UTCTime)
executionRecord_dataPullEndTime :: (Maybe UTCTime -> f (Maybe UTCTime))
-> ExecutionRecord -> f ExecutionRecord
executionRecord_dataPullEndTime = (ExecutionRecord -> Maybe POSIX)
-> (ExecutionRecord -> Maybe POSIX -> ExecutionRecord)
-> Lens ExecutionRecord ExecutionRecord (Maybe POSIX) (Maybe POSIX)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ExecutionRecord' {Maybe POSIX
dataPullEndTime :: Maybe POSIX
$sel:dataPullEndTime:ExecutionRecord' :: ExecutionRecord -> Maybe POSIX
dataPullEndTime} -> Maybe POSIX
dataPullEndTime) (\s :: ExecutionRecord
s@ExecutionRecord' {} Maybe POSIX
a -> ExecutionRecord
s {$sel:dataPullEndTime:ExecutionRecord' :: Maybe POSIX
dataPullEndTime = Maybe POSIX
a} :: ExecutionRecord) ((Maybe POSIX -> f (Maybe POSIX))
-> ExecutionRecord -> f ExecutionRecord)
-> ((Maybe UTCTime -> f (Maybe UTCTime))
-> Maybe POSIX -> f (Maybe POSIX))
-> (Maybe UTCTime -> f (Maybe UTCTime))
-> ExecutionRecord
-> f ExecutionRecord
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso POSIX POSIX UTCTime UTCTime
-> Iso (Maybe POSIX) (Maybe POSIX) (Maybe UTCTime) (Maybe UTCTime)
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 AnIso POSIX POSIX UTCTime UTCTime
forall (a :: Format). Iso' (Time a) UTCTime
Core._Time
executionRecord_executionResult :: Lens.Lens' ExecutionRecord (Prelude.Maybe ExecutionResult)
executionRecord_executionResult :: (Maybe ExecutionResult -> f (Maybe ExecutionResult))
-> ExecutionRecord -> f ExecutionRecord
executionRecord_executionResult = (ExecutionRecord -> Maybe ExecutionResult)
-> (ExecutionRecord -> Maybe ExecutionResult -> ExecutionRecord)
-> Lens
ExecutionRecord
ExecutionRecord
(Maybe ExecutionResult)
(Maybe ExecutionResult)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ExecutionRecord' {Maybe ExecutionResult
executionResult :: Maybe ExecutionResult
$sel:executionResult:ExecutionRecord' :: ExecutionRecord -> Maybe ExecutionResult
executionResult} -> Maybe ExecutionResult
executionResult) (\s :: ExecutionRecord
s@ExecutionRecord' {} Maybe ExecutionResult
a -> ExecutionRecord
s {$sel:executionResult:ExecutionRecord' :: Maybe ExecutionResult
executionResult = Maybe ExecutionResult
a} :: ExecutionRecord)
instance Core.FromJSON ExecutionRecord where
parseJSON :: Value -> Parser ExecutionRecord
parseJSON =
String
-> (Object -> Parser ExecutionRecord)
-> Value
-> Parser ExecutionRecord
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Core.withObject
String
"ExecutionRecord"
( \Object
x ->
Maybe Text
-> Maybe POSIX
-> Maybe POSIX
-> Maybe ExecutionStatus
-> Maybe POSIX
-> Maybe POSIX
-> Maybe ExecutionResult
-> ExecutionRecord
ExecutionRecord'
(Maybe Text
-> Maybe POSIX
-> Maybe POSIX
-> Maybe ExecutionStatus
-> Maybe POSIX
-> Maybe POSIX
-> Maybe ExecutionResult
-> ExecutionRecord)
-> Parser (Maybe Text)
-> Parser
(Maybe POSIX
-> Maybe POSIX
-> Maybe ExecutionStatus
-> Maybe POSIX
-> Maybe POSIX
-> Maybe ExecutionResult
-> ExecutionRecord)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"executionId")
Parser
(Maybe POSIX
-> Maybe POSIX
-> Maybe ExecutionStatus
-> Maybe POSIX
-> Maybe POSIX
-> Maybe ExecutionResult
-> ExecutionRecord)
-> Parser (Maybe POSIX)
-> Parser
(Maybe POSIX
-> Maybe ExecutionStatus
-> Maybe POSIX
-> Maybe POSIX
-> Maybe ExecutionResult
-> ExecutionRecord)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe POSIX)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"lastUpdatedAt")
Parser
(Maybe POSIX
-> Maybe ExecutionStatus
-> Maybe POSIX
-> Maybe POSIX
-> Maybe ExecutionResult
-> ExecutionRecord)
-> Parser (Maybe POSIX)
-> Parser
(Maybe ExecutionStatus
-> Maybe POSIX
-> Maybe POSIX
-> Maybe ExecutionResult
-> ExecutionRecord)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe POSIX)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"dataPullStartTime")
Parser
(Maybe ExecutionStatus
-> Maybe POSIX
-> Maybe POSIX
-> Maybe ExecutionResult
-> ExecutionRecord)
-> Parser (Maybe ExecutionStatus)
-> Parser
(Maybe POSIX
-> Maybe POSIX -> Maybe ExecutionResult -> ExecutionRecord)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe ExecutionStatus)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"executionStatus")
Parser
(Maybe POSIX
-> Maybe POSIX -> Maybe ExecutionResult -> ExecutionRecord)
-> Parser (Maybe POSIX)
-> Parser (Maybe POSIX -> Maybe ExecutionResult -> ExecutionRecord)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe POSIX)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"startedAt")
Parser (Maybe POSIX -> Maybe ExecutionResult -> ExecutionRecord)
-> Parser (Maybe POSIX)
-> Parser (Maybe ExecutionResult -> ExecutionRecord)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe POSIX)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"dataPullEndTime")
Parser (Maybe ExecutionResult -> ExecutionRecord)
-> Parser (Maybe ExecutionResult) -> Parser ExecutionRecord
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe ExecutionResult)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"executionResult")
)
instance Prelude.Hashable ExecutionRecord
instance Prelude.NFData ExecutionRecord