{-# 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.RobOMaker.Types.SimulationJob 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.RobOMaker.Types.ComputeResponse
import Amazonka.RobOMaker.Types.DataSource
import Amazonka.RobOMaker.Types.FailureBehavior
import Amazonka.RobOMaker.Types.LoggingConfig
import Amazonka.RobOMaker.Types.NetworkInterface
import Amazonka.RobOMaker.Types.OutputLocation
import Amazonka.RobOMaker.Types.RobotApplicationConfig
import Amazonka.RobOMaker.Types.SimulationApplicationConfig
import Amazonka.RobOMaker.Types.SimulationJobErrorCode
import Amazonka.RobOMaker.Types.SimulationJobStatus
import Amazonka.RobOMaker.Types.VPCConfigResponse
data SimulationJob = SimulationJob'
{
SimulationJob -> Maybe Text
arn :: Prelude.Maybe Prelude.Text,
SimulationJob -> Maybe Text
clientRequestToken :: Prelude.Maybe Prelude.Text,
SimulationJob -> Maybe ComputeResponse
compute :: Prelude.Maybe ComputeResponse,
SimulationJob -> Maybe [DataSource]
dataSources :: Prelude.Maybe [DataSource],
SimulationJob -> Maybe FailureBehavior
failureBehavior :: Prelude.Maybe FailureBehavior,
SimulationJob -> Maybe SimulationJobErrorCode
failureCode :: Prelude.Maybe SimulationJobErrorCode,
SimulationJob -> Maybe Text
failureReason :: Prelude.Maybe Prelude.Text,
SimulationJob -> Maybe Text
iamRole :: Prelude.Maybe Prelude.Text,
SimulationJob -> Maybe POSIX
lastStartedAt :: Prelude.Maybe Data.POSIX,
SimulationJob -> Maybe POSIX
lastUpdatedAt :: Prelude.Maybe Data.POSIX,
SimulationJob -> Maybe LoggingConfig
loggingConfig :: Prelude.Maybe LoggingConfig,
SimulationJob -> Maybe Integer
maxJobDurationInSeconds :: Prelude.Maybe Prelude.Integer,
SimulationJob -> Maybe Text
name :: Prelude.Maybe Prelude.Text,
SimulationJob -> Maybe NetworkInterface
networkInterface :: Prelude.Maybe NetworkInterface,
SimulationJob -> Maybe OutputLocation
outputLocation :: Prelude.Maybe OutputLocation,
SimulationJob -> Maybe (NonEmpty RobotApplicationConfig)
robotApplications :: Prelude.Maybe (Prelude.NonEmpty RobotApplicationConfig),
SimulationJob -> Maybe (NonEmpty SimulationApplicationConfig)
simulationApplications :: Prelude.Maybe (Prelude.NonEmpty SimulationApplicationConfig),
SimulationJob -> Maybe Integer
simulationTimeMillis :: Prelude.Maybe Prelude.Integer,
SimulationJob -> Maybe SimulationJobStatus
status :: Prelude.Maybe SimulationJobStatus,
SimulationJob -> Maybe (HashMap Text Text)
tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),
SimulationJob -> Maybe VPCConfigResponse
vpcConfig :: Prelude.Maybe VPCConfigResponse
}
deriving (SimulationJob -> SimulationJob -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SimulationJob -> SimulationJob -> Bool
$c/= :: SimulationJob -> SimulationJob -> Bool
== :: SimulationJob -> SimulationJob -> Bool
$c== :: SimulationJob -> SimulationJob -> Bool
Prelude.Eq, ReadPrec [SimulationJob]
ReadPrec SimulationJob
Int -> ReadS SimulationJob
ReadS [SimulationJob]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [SimulationJob]
$creadListPrec :: ReadPrec [SimulationJob]
readPrec :: ReadPrec SimulationJob
$creadPrec :: ReadPrec SimulationJob
readList :: ReadS [SimulationJob]
$creadList :: ReadS [SimulationJob]
readsPrec :: Int -> ReadS SimulationJob
$creadsPrec :: Int -> ReadS SimulationJob
Prelude.Read, Int -> SimulationJob -> ShowS
[SimulationJob] -> ShowS
SimulationJob -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SimulationJob] -> ShowS
$cshowList :: [SimulationJob] -> ShowS
show :: SimulationJob -> String
$cshow :: SimulationJob -> String
showsPrec :: Int -> SimulationJob -> ShowS
$cshowsPrec :: Int -> SimulationJob -> ShowS
Prelude.Show, forall x. Rep SimulationJob x -> SimulationJob
forall x. SimulationJob -> Rep SimulationJob x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep SimulationJob x -> SimulationJob
$cfrom :: forall x. SimulationJob -> Rep SimulationJob x
Prelude.Generic)
newSimulationJob ::
SimulationJob
newSimulationJob :: SimulationJob
newSimulationJob =
SimulationJob'
{ $sel:arn:SimulationJob' :: Maybe Text
arn = forall a. Maybe a
Prelude.Nothing,
$sel:clientRequestToken:SimulationJob' :: Maybe Text
clientRequestToken = forall a. Maybe a
Prelude.Nothing,
$sel:compute:SimulationJob' :: Maybe ComputeResponse
compute = forall a. Maybe a
Prelude.Nothing,
$sel:dataSources:SimulationJob' :: Maybe [DataSource]
dataSources = forall a. Maybe a
Prelude.Nothing,
$sel:failureBehavior:SimulationJob' :: Maybe FailureBehavior
failureBehavior = forall a. Maybe a
Prelude.Nothing,
$sel:failureCode:SimulationJob' :: Maybe SimulationJobErrorCode
failureCode = forall a. Maybe a
Prelude.Nothing,
$sel:failureReason:SimulationJob' :: Maybe Text
failureReason = forall a. Maybe a
Prelude.Nothing,
$sel:iamRole:SimulationJob' :: Maybe Text
iamRole = forall a. Maybe a
Prelude.Nothing,
$sel:lastStartedAt:SimulationJob' :: Maybe POSIX
lastStartedAt = forall a. Maybe a
Prelude.Nothing,
$sel:lastUpdatedAt:SimulationJob' :: Maybe POSIX
lastUpdatedAt = forall a. Maybe a
Prelude.Nothing,
$sel:loggingConfig:SimulationJob' :: Maybe LoggingConfig
loggingConfig = forall a. Maybe a
Prelude.Nothing,
$sel:maxJobDurationInSeconds:SimulationJob' :: Maybe Integer
maxJobDurationInSeconds = forall a. Maybe a
Prelude.Nothing,
$sel:name:SimulationJob' :: Maybe Text
name = forall a. Maybe a
Prelude.Nothing,
$sel:networkInterface:SimulationJob' :: Maybe NetworkInterface
networkInterface = forall a. Maybe a
Prelude.Nothing,
$sel:outputLocation:SimulationJob' :: Maybe OutputLocation
outputLocation = forall a. Maybe a
Prelude.Nothing,
$sel:robotApplications:SimulationJob' :: Maybe (NonEmpty RobotApplicationConfig)
robotApplications = forall a. Maybe a
Prelude.Nothing,
$sel:simulationApplications:SimulationJob' :: Maybe (NonEmpty SimulationApplicationConfig)
simulationApplications = forall a. Maybe a
Prelude.Nothing,
$sel:simulationTimeMillis:SimulationJob' :: Maybe Integer
simulationTimeMillis = forall a. Maybe a
Prelude.Nothing,
$sel:status:SimulationJob' :: Maybe SimulationJobStatus
status = forall a. Maybe a
Prelude.Nothing,
$sel:tags:SimulationJob' :: Maybe (HashMap Text Text)
tags = forall a. Maybe a
Prelude.Nothing,
$sel:vpcConfig:SimulationJob' :: Maybe VPCConfigResponse
vpcConfig = forall a. Maybe a
Prelude.Nothing
}
simulationJob_arn :: Lens.Lens' SimulationJob (Prelude.Maybe Prelude.Text)
simulationJob_arn :: Lens' SimulationJob (Maybe Text)
simulationJob_arn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe Text
arn :: Maybe Text
$sel:arn:SimulationJob' :: SimulationJob -> Maybe Text
arn} -> Maybe Text
arn) (\s :: SimulationJob
s@SimulationJob' {} Maybe Text
a -> SimulationJob
s {$sel:arn:SimulationJob' :: Maybe Text
arn = Maybe Text
a} :: SimulationJob)
simulationJob_clientRequestToken :: Lens.Lens' SimulationJob (Prelude.Maybe Prelude.Text)
simulationJob_clientRequestToken :: Lens' SimulationJob (Maybe Text)
simulationJob_clientRequestToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe Text
clientRequestToken :: Maybe Text
$sel:clientRequestToken:SimulationJob' :: SimulationJob -> Maybe Text
clientRequestToken} -> Maybe Text
clientRequestToken) (\s :: SimulationJob
s@SimulationJob' {} Maybe Text
a -> SimulationJob
s {$sel:clientRequestToken:SimulationJob' :: Maybe Text
clientRequestToken = Maybe Text
a} :: SimulationJob)
simulationJob_compute :: Lens.Lens' SimulationJob (Prelude.Maybe ComputeResponse)
simulationJob_compute :: Lens' SimulationJob (Maybe ComputeResponse)
simulationJob_compute = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe ComputeResponse
compute :: Maybe ComputeResponse
$sel:compute:SimulationJob' :: SimulationJob -> Maybe ComputeResponse
compute} -> Maybe ComputeResponse
compute) (\s :: SimulationJob
s@SimulationJob' {} Maybe ComputeResponse
a -> SimulationJob
s {$sel:compute:SimulationJob' :: Maybe ComputeResponse
compute = Maybe ComputeResponse
a} :: SimulationJob)
simulationJob_dataSources :: Lens.Lens' SimulationJob (Prelude.Maybe [DataSource])
simulationJob_dataSources :: Lens' SimulationJob (Maybe [DataSource])
simulationJob_dataSources = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe [DataSource]
dataSources :: Maybe [DataSource]
$sel:dataSources:SimulationJob' :: SimulationJob -> Maybe [DataSource]
dataSources} -> Maybe [DataSource]
dataSources) (\s :: SimulationJob
s@SimulationJob' {} Maybe [DataSource]
a -> SimulationJob
s {$sel:dataSources:SimulationJob' :: Maybe [DataSource]
dataSources = Maybe [DataSource]
a} :: SimulationJob) 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
simulationJob_failureBehavior :: Lens.Lens' SimulationJob (Prelude.Maybe FailureBehavior)
simulationJob_failureBehavior :: Lens' SimulationJob (Maybe FailureBehavior)
simulationJob_failureBehavior = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe FailureBehavior
failureBehavior :: Maybe FailureBehavior
$sel:failureBehavior:SimulationJob' :: SimulationJob -> Maybe FailureBehavior
failureBehavior} -> Maybe FailureBehavior
failureBehavior) (\s :: SimulationJob
s@SimulationJob' {} Maybe FailureBehavior
a -> SimulationJob
s {$sel:failureBehavior:SimulationJob' :: Maybe FailureBehavior
failureBehavior = Maybe FailureBehavior
a} :: SimulationJob)
simulationJob_failureCode :: Lens.Lens' SimulationJob (Prelude.Maybe SimulationJobErrorCode)
simulationJob_failureCode :: Lens' SimulationJob (Maybe SimulationJobErrorCode)
simulationJob_failureCode = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe SimulationJobErrorCode
failureCode :: Maybe SimulationJobErrorCode
$sel:failureCode:SimulationJob' :: SimulationJob -> Maybe SimulationJobErrorCode
failureCode} -> Maybe SimulationJobErrorCode
failureCode) (\s :: SimulationJob
s@SimulationJob' {} Maybe SimulationJobErrorCode
a -> SimulationJob
s {$sel:failureCode:SimulationJob' :: Maybe SimulationJobErrorCode
failureCode = Maybe SimulationJobErrorCode
a} :: SimulationJob)
simulationJob_failureReason :: Lens.Lens' SimulationJob (Prelude.Maybe Prelude.Text)
simulationJob_failureReason :: Lens' SimulationJob (Maybe Text)
simulationJob_failureReason = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe Text
failureReason :: Maybe Text
$sel:failureReason:SimulationJob' :: SimulationJob -> Maybe Text
failureReason} -> Maybe Text
failureReason) (\s :: SimulationJob
s@SimulationJob' {} Maybe Text
a -> SimulationJob
s {$sel:failureReason:SimulationJob' :: Maybe Text
failureReason = Maybe Text
a} :: SimulationJob)
simulationJob_iamRole :: Lens.Lens' SimulationJob (Prelude.Maybe Prelude.Text)
simulationJob_iamRole :: Lens' SimulationJob (Maybe Text)
simulationJob_iamRole = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe Text
iamRole :: Maybe Text
$sel:iamRole:SimulationJob' :: SimulationJob -> Maybe Text
iamRole} -> Maybe Text
iamRole) (\s :: SimulationJob
s@SimulationJob' {} Maybe Text
a -> SimulationJob
s {$sel:iamRole:SimulationJob' :: Maybe Text
iamRole = Maybe Text
a} :: SimulationJob)
simulationJob_lastStartedAt :: Lens.Lens' SimulationJob (Prelude.Maybe Prelude.UTCTime)
simulationJob_lastStartedAt :: Lens' SimulationJob (Maybe UTCTime)
simulationJob_lastStartedAt = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe POSIX
lastStartedAt :: Maybe POSIX
$sel:lastStartedAt:SimulationJob' :: SimulationJob -> Maybe POSIX
lastStartedAt} -> Maybe POSIX
lastStartedAt) (\s :: SimulationJob
s@SimulationJob' {} Maybe POSIX
a -> SimulationJob
s {$sel:lastStartedAt:SimulationJob' :: Maybe POSIX
lastStartedAt = Maybe POSIX
a} :: SimulationJob) 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
simulationJob_lastUpdatedAt :: Lens.Lens' SimulationJob (Prelude.Maybe Prelude.UTCTime)
simulationJob_lastUpdatedAt :: Lens' SimulationJob (Maybe UTCTime)
simulationJob_lastUpdatedAt = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe POSIX
lastUpdatedAt :: Maybe POSIX
$sel:lastUpdatedAt:SimulationJob' :: SimulationJob -> Maybe POSIX
lastUpdatedAt} -> Maybe POSIX
lastUpdatedAt) (\s :: SimulationJob
s@SimulationJob' {} Maybe POSIX
a -> SimulationJob
s {$sel:lastUpdatedAt:SimulationJob' :: Maybe POSIX
lastUpdatedAt = Maybe POSIX
a} :: SimulationJob) 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
simulationJob_loggingConfig :: Lens.Lens' SimulationJob (Prelude.Maybe LoggingConfig)
simulationJob_loggingConfig :: Lens' SimulationJob (Maybe LoggingConfig)
simulationJob_loggingConfig = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe LoggingConfig
loggingConfig :: Maybe LoggingConfig
$sel:loggingConfig:SimulationJob' :: SimulationJob -> Maybe LoggingConfig
loggingConfig} -> Maybe LoggingConfig
loggingConfig) (\s :: SimulationJob
s@SimulationJob' {} Maybe LoggingConfig
a -> SimulationJob
s {$sel:loggingConfig:SimulationJob' :: Maybe LoggingConfig
loggingConfig = Maybe LoggingConfig
a} :: SimulationJob)
simulationJob_maxJobDurationInSeconds :: Lens.Lens' SimulationJob (Prelude.Maybe Prelude.Integer)
simulationJob_maxJobDurationInSeconds :: Lens' SimulationJob (Maybe Integer)
simulationJob_maxJobDurationInSeconds = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe Integer
maxJobDurationInSeconds :: Maybe Integer
$sel:maxJobDurationInSeconds:SimulationJob' :: SimulationJob -> Maybe Integer
maxJobDurationInSeconds} -> Maybe Integer
maxJobDurationInSeconds) (\s :: SimulationJob
s@SimulationJob' {} Maybe Integer
a -> SimulationJob
s {$sel:maxJobDurationInSeconds:SimulationJob' :: Maybe Integer
maxJobDurationInSeconds = Maybe Integer
a} :: SimulationJob)
simulationJob_name :: Lens.Lens' SimulationJob (Prelude.Maybe Prelude.Text)
simulationJob_name :: Lens' SimulationJob (Maybe Text)
simulationJob_name = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe Text
name :: Maybe Text
$sel:name:SimulationJob' :: SimulationJob -> Maybe Text
name} -> Maybe Text
name) (\s :: SimulationJob
s@SimulationJob' {} Maybe Text
a -> SimulationJob
s {$sel:name:SimulationJob' :: Maybe Text
name = Maybe Text
a} :: SimulationJob)
simulationJob_networkInterface :: Lens.Lens' SimulationJob (Prelude.Maybe NetworkInterface)
simulationJob_networkInterface :: Lens' SimulationJob (Maybe NetworkInterface)
simulationJob_networkInterface = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe NetworkInterface
networkInterface :: Maybe NetworkInterface
$sel:networkInterface:SimulationJob' :: SimulationJob -> Maybe NetworkInterface
networkInterface} -> Maybe NetworkInterface
networkInterface) (\s :: SimulationJob
s@SimulationJob' {} Maybe NetworkInterface
a -> SimulationJob
s {$sel:networkInterface:SimulationJob' :: Maybe NetworkInterface
networkInterface = Maybe NetworkInterface
a} :: SimulationJob)
simulationJob_outputLocation :: Lens.Lens' SimulationJob (Prelude.Maybe OutputLocation)
simulationJob_outputLocation :: Lens' SimulationJob (Maybe OutputLocation)
simulationJob_outputLocation = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe OutputLocation
outputLocation :: Maybe OutputLocation
$sel:outputLocation:SimulationJob' :: SimulationJob -> Maybe OutputLocation
outputLocation} -> Maybe OutputLocation
outputLocation) (\s :: SimulationJob
s@SimulationJob' {} Maybe OutputLocation
a -> SimulationJob
s {$sel:outputLocation:SimulationJob' :: Maybe OutputLocation
outputLocation = Maybe OutputLocation
a} :: SimulationJob)
simulationJob_robotApplications :: Lens.Lens' SimulationJob (Prelude.Maybe (Prelude.NonEmpty RobotApplicationConfig))
simulationJob_robotApplications :: Lens' SimulationJob (Maybe (NonEmpty RobotApplicationConfig))
simulationJob_robotApplications = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe (NonEmpty RobotApplicationConfig)
robotApplications :: Maybe (NonEmpty RobotApplicationConfig)
$sel:robotApplications:SimulationJob' :: SimulationJob -> Maybe (NonEmpty RobotApplicationConfig)
robotApplications} -> Maybe (NonEmpty RobotApplicationConfig)
robotApplications) (\s :: SimulationJob
s@SimulationJob' {} Maybe (NonEmpty RobotApplicationConfig)
a -> SimulationJob
s {$sel:robotApplications:SimulationJob' :: Maybe (NonEmpty RobotApplicationConfig)
robotApplications = Maybe (NonEmpty RobotApplicationConfig)
a} :: SimulationJob) 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
simulationJob_simulationApplications :: Lens.Lens' SimulationJob (Prelude.Maybe (Prelude.NonEmpty SimulationApplicationConfig))
simulationJob_simulationApplications :: Lens' SimulationJob (Maybe (NonEmpty SimulationApplicationConfig))
simulationJob_simulationApplications = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe (NonEmpty SimulationApplicationConfig)
simulationApplications :: Maybe (NonEmpty SimulationApplicationConfig)
$sel:simulationApplications:SimulationJob' :: SimulationJob -> Maybe (NonEmpty SimulationApplicationConfig)
simulationApplications} -> Maybe (NonEmpty SimulationApplicationConfig)
simulationApplications) (\s :: SimulationJob
s@SimulationJob' {} Maybe (NonEmpty SimulationApplicationConfig)
a -> SimulationJob
s {$sel:simulationApplications:SimulationJob' :: Maybe (NonEmpty SimulationApplicationConfig)
simulationApplications = Maybe (NonEmpty SimulationApplicationConfig)
a} :: SimulationJob) 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
simulationJob_simulationTimeMillis :: Lens.Lens' SimulationJob (Prelude.Maybe Prelude.Integer)
simulationJob_simulationTimeMillis :: Lens' SimulationJob (Maybe Integer)
simulationJob_simulationTimeMillis = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe Integer
simulationTimeMillis :: Maybe Integer
$sel:simulationTimeMillis:SimulationJob' :: SimulationJob -> Maybe Integer
simulationTimeMillis} -> Maybe Integer
simulationTimeMillis) (\s :: SimulationJob
s@SimulationJob' {} Maybe Integer
a -> SimulationJob
s {$sel:simulationTimeMillis:SimulationJob' :: Maybe Integer
simulationTimeMillis = Maybe Integer
a} :: SimulationJob)
simulationJob_status :: Lens.Lens' SimulationJob (Prelude.Maybe SimulationJobStatus)
simulationJob_status :: Lens' SimulationJob (Maybe SimulationJobStatus)
simulationJob_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe SimulationJobStatus
status :: Maybe SimulationJobStatus
$sel:status:SimulationJob' :: SimulationJob -> Maybe SimulationJobStatus
status} -> Maybe SimulationJobStatus
status) (\s :: SimulationJob
s@SimulationJob' {} Maybe SimulationJobStatus
a -> SimulationJob
s {$sel:status:SimulationJob' :: Maybe SimulationJobStatus
status = Maybe SimulationJobStatus
a} :: SimulationJob)
simulationJob_tags :: Lens.Lens' SimulationJob (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))
simulationJob_tags :: Lens' SimulationJob (Maybe (HashMap Text Text))
simulationJob_tags = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe (HashMap Text Text)
tags :: Maybe (HashMap Text Text)
$sel:tags:SimulationJob' :: SimulationJob -> Maybe (HashMap Text Text)
tags} -> Maybe (HashMap Text Text)
tags) (\s :: SimulationJob
s@SimulationJob' {} Maybe (HashMap Text Text)
a -> SimulationJob
s {$sel:tags:SimulationJob' :: Maybe (HashMap Text Text)
tags = Maybe (HashMap Text Text)
a} :: SimulationJob) 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
simulationJob_vpcConfig :: Lens.Lens' SimulationJob (Prelude.Maybe VPCConfigResponse)
simulationJob_vpcConfig :: Lens' SimulationJob (Maybe VPCConfigResponse)
simulationJob_vpcConfig = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SimulationJob' {Maybe VPCConfigResponse
vpcConfig :: Maybe VPCConfigResponse
$sel:vpcConfig:SimulationJob' :: SimulationJob -> Maybe VPCConfigResponse
vpcConfig} -> Maybe VPCConfigResponse
vpcConfig) (\s :: SimulationJob
s@SimulationJob' {} Maybe VPCConfigResponse
a -> SimulationJob
s {$sel:vpcConfig:SimulationJob' :: Maybe VPCConfigResponse
vpcConfig = Maybe VPCConfigResponse
a} :: SimulationJob)
instance Data.FromJSON SimulationJob where
parseJSON :: Value -> Parser SimulationJob
parseJSON =
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
String
"SimulationJob"
( \Object
x ->
Maybe Text
-> Maybe Text
-> Maybe ComputeResponse
-> Maybe [DataSource]
-> Maybe FailureBehavior
-> Maybe SimulationJobErrorCode
-> Maybe Text
-> Maybe Text
-> Maybe POSIX
-> Maybe POSIX
-> Maybe LoggingConfig
-> Maybe Integer
-> Maybe Text
-> Maybe NetworkInterface
-> Maybe OutputLocation
-> Maybe (NonEmpty RobotApplicationConfig)
-> Maybe (NonEmpty SimulationApplicationConfig)
-> Maybe Integer
-> Maybe SimulationJobStatus
-> Maybe (HashMap Text Text)
-> Maybe VPCConfigResponse
-> SimulationJob
SimulationJob'
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
"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
"clientRequestToken")
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
"compute")
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
"dataSources" 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
"failureBehavior")
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
"failureCode")
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
"failureReason")
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
"iamRole")
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
"lastStartedAt")
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
"lastUpdatedAt")
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
"loggingConfig")
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
"maxJobDurationInSeconds")
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
"networkInterface")
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
"outputLocation")
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
"robotApplications")
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
"simulationApplications")
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
"simulationTimeMillis")
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
"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 (Maybe a)
Data..:? Key
"vpcConfig")
)
instance Prelude.Hashable SimulationJob where
hashWithSalt :: Int -> SimulationJob -> Int
hashWithSalt Int
_salt SimulationJob' {Maybe Integer
Maybe [DataSource]
Maybe (NonEmpty RobotApplicationConfig)
Maybe (NonEmpty SimulationApplicationConfig)
Maybe Text
Maybe (HashMap Text Text)
Maybe POSIX
Maybe ComputeResponse
Maybe FailureBehavior
Maybe LoggingConfig
Maybe NetworkInterface
Maybe OutputLocation
Maybe SimulationJobErrorCode
Maybe SimulationJobStatus
Maybe VPCConfigResponse
vpcConfig :: Maybe VPCConfigResponse
tags :: Maybe (HashMap Text Text)
status :: Maybe SimulationJobStatus
simulationTimeMillis :: Maybe Integer
simulationApplications :: Maybe (NonEmpty SimulationApplicationConfig)
robotApplications :: Maybe (NonEmpty RobotApplicationConfig)
outputLocation :: Maybe OutputLocation
networkInterface :: Maybe NetworkInterface
name :: Maybe Text
maxJobDurationInSeconds :: Maybe Integer
loggingConfig :: Maybe LoggingConfig
lastUpdatedAt :: Maybe POSIX
lastStartedAt :: Maybe POSIX
iamRole :: Maybe Text
failureReason :: Maybe Text
failureCode :: Maybe SimulationJobErrorCode
failureBehavior :: Maybe FailureBehavior
dataSources :: Maybe [DataSource]
compute :: Maybe ComputeResponse
clientRequestToken :: Maybe Text
arn :: Maybe Text
$sel:vpcConfig:SimulationJob' :: SimulationJob -> Maybe VPCConfigResponse
$sel:tags:SimulationJob' :: SimulationJob -> Maybe (HashMap Text Text)
$sel:status:SimulationJob' :: SimulationJob -> Maybe SimulationJobStatus
$sel:simulationTimeMillis:SimulationJob' :: SimulationJob -> Maybe Integer
$sel:simulationApplications:SimulationJob' :: SimulationJob -> Maybe (NonEmpty SimulationApplicationConfig)
$sel:robotApplications:SimulationJob' :: SimulationJob -> Maybe (NonEmpty RobotApplicationConfig)
$sel:outputLocation:SimulationJob' :: SimulationJob -> Maybe OutputLocation
$sel:networkInterface:SimulationJob' :: SimulationJob -> Maybe NetworkInterface
$sel:name:SimulationJob' :: SimulationJob -> Maybe Text
$sel:maxJobDurationInSeconds:SimulationJob' :: SimulationJob -> Maybe Integer
$sel:loggingConfig:SimulationJob' :: SimulationJob -> Maybe LoggingConfig
$sel:lastUpdatedAt:SimulationJob' :: SimulationJob -> Maybe POSIX
$sel:lastStartedAt:SimulationJob' :: SimulationJob -> Maybe POSIX
$sel:iamRole:SimulationJob' :: SimulationJob -> Maybe Text
$sel:failureReason:SimulationJob' :: SimulationJob -> Maybe Text
$sel:failureCode:SimulationJob' :: SimulationJob -> Maybe SimulationJobErrorCode
$sel:failureBehavior:SimulationJob' :: SimulationJob -> Maybe FailureBehavior
$sel:dataSources:SimulationJob' :: SimulationJob -> Maybe [DataSource]
$sel:compute:SimulationJob' :: SimulationJob -> Maybe ComputeResponse
$sel:clientRequestToken:SimulationJob' :: SimulationJob -> Maybe Text
$sel:arn:SimulationJob' :: SimulationJob -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
arn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
clientRequestToken
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ComputeResponse
compute
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [DataSource]
dataSources
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe FailureBehavior
failureBehavior
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe SimulationJobErrorCode
failureCode
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
failureReason
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
iamRole
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe POSIX
lastStartedAt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe POSIX
lastUpdatedAt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe LoggingConfig
loggingConfig
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Integer
maxJobDurationInSeconds
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
name
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe NetworkInterface
networkInterface
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe OutputLocation
outputLocation
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe (NonEmpty RobotApplicationConfig)
robotApplications
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe (NonEmpty SimulationApplicationConfig)
simulationApplications
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Integer
simulationTimeMillis
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe SimulationJobStatus
status
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe (HashMap Text Text)
tags
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe VPCConfigResponse
vpcConfig
instance Prelude.NFData SimulationJob where
rnf :: SimulationJob -> ()
rnf SimulationJob' {Maybe Integer
Maybe [DataSource]
Maybe (NonEmpty RobotApplicationConfig)
Maybe (NonEmpty SimulationApplicationConfig)
Maybe Text
Maybe (HashMap Text Text)
Maybe POSIX
Maybe ComputeResponse
Maybe FailureBehavior
Maybe LoggingConfig
Maybe NetworkInterface
Maybe OutputLocation
Maybe SimulationJobErrorCode
Maybe SimulationJobStatus
Maybe VPCConfigResponse
vpcConfig :: Maybe VPCConfigResponse
tags :: Maybe (HashMap Text Text)
status :: Maybe SimulationJobStatus
simulationTimeMillis :: Maybe Integer
simulationApplications :: Maybe (NonEmpty SimulationApplicationConfig)
robotApplications :: Maybe (NonEmpty RobotApplicationConfig)
outputLocation :: Maybe OutputLocation
networkInterface :: Maybe NetworkInterface
name :: Maybe Text
maxJobDurationInSeconds :: Maybe Integer
loggingConfig :: Maybe LoggingConfig
lastUpdatedAt :: Maybe POSIX
lastStartedAt :: Maybe POSIX
iamRole :: Maybe Text
failureReason :: Maybe Text
failureCode :: Maybe SimulationJobErrorCode
failureBehavior :: Maybe FailureBehavior
dataSources :: Maybe [DataSource]
compute :: Maybe ComputeResponse
clientRequestToken :: Maybe Text
arn :: Maybe Text
$sel:vpcConfig:SimulationJob' :: SimulationJob -> Maybe VPCConfigResponse
$sel:tags:SimulationJob' :: SimulationJob -> Maybe (HashMap Text Text)
$sel:status:SimulationJob' :: SimulationJob -> Maybe SimulationJobStatus
$sel:simulationTimeMillis:SimulationJob' :: SimulationJob -> Maybe Integer
$sel:simulationApplications:SimulationJob' :: SimulationJob -> Maybe (NonEmpty SimulationApplicationConfig)
$sel:robotApplications:SimulationJob' :: SimulationJob -> Maybe (NonEmpty RobotApplicationConfig)
$sel:outputLocation:SimulationJob' :: SimulationJob -> Maybe OutputLocation
$sel:networkInterface:SimulationJob' :: SimulationJob -> Maybe NetworkInterface
$sel:name:SimulationJob' :: SimulationJob -> Maybe Text
$sel:maxJobDurationInSeconds:SimulationJob' :: SimulationJob -> Maybe Integer
$sel:loggingConfig:SimulationJob' :: SimulationJob -> Maybe LoggingConfig
$sel:lastUpdatedAt:SimulationJob' :: SimulationJob -> Maybe POSIX
$sel:lastStartedAt:SimulationJob' :: SimulationJob -> Maybe POSIX
$sel:iamRole:SimulationJob' :: SimulationJob -> Maybe Text
$sel:failureReason:SimulationJob' :: SimulationJob -> Maybe Text
$sel:failureCode:SimulationJob' :: SimulationJob -> Maybe SimulationJobErrorCode
$sel:failureBehavior:SimulationJob' :: SimulationJob -> Maybe FailureBehavior
$sel:dataSources:SimulationJob' :: SimulationJob -> Maybe [DataSource]
$sel:compute:SimulationJob' :: SimulationJob -> Maybe ComputeResponse
$sel:clientRequestToken:SimulationJob' :: SimulationJob -> Maybe Text
$sel:arn:SimulationJob' :: SimulationJob -> Maybe Text
..} =
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 Text
clientRequestToken
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ComputeResponse
compute
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [DataSource]
dataSources
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe FailureBehavior
failureBehavior
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe SimulationJobErrorCode
failureCode
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
failureReason
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
iamRole
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
lastStartedAt
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
lastUpdatedAt
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe LoggingConfig
loggingConfig
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Integer
maxJobDurationInSeconds
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 NetworkInterface
networkInterface
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe OutputLocation
outputLocation
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe (NonEmpty RobotApplicationConfig)
robotApplications
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe (NonEmpty SimulationApplicationConfig)
simulationApplications
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Integer
simulationTimeMillis
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe SimulationJobStatus
status
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe (HashMap Text Text)
tags
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe VPCConfigResponse
vpcConfig