{-# 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.SMS.Types.ReplicationJob 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.SMS.Types.LicenseType
import Amazonka.SMS.Types.ReplicationJobState
import Amazonka.SMS.Types.ReplicationRun
import Amazonka.SMS.Types.ServerType
import Amazonka.SMS.Types.VmServer
data ReplicationJob = ReplicationJob'
{
ReplicationJob -> Maybe Text
description :: Prelude.Maybe Prelude.Text,
ReplicationJob -> Maybe Bool
encrypted :: Prelude.Maybe Prelude.Bool,
ReplicationJob -> Maybe Int
frequency :: Prelude.Maybe Prelude.Int,
ReplicationJob -> Maybe Text
kmsKeyId :: Prelude.Maybe Prelude.Text,
ReplicationJob -> Maybe Text
latestAmiId :: Prelude.Maybe Prelude.Text,
ReplicationJob -> Maybe LicenseType
licenseType :: Prelude.Maybe LicenseType,
ReplicationJob -> Maybe POSIX
nextReplicationRunStartTime :: Prelude.Maybe Data.POSIX,
ReplicationJob -> Maybe Int
numberOfRecentAmisToKeep :: Prelude.Maybe Prelude.Int,
ReplicationJob -> Maybe Text
replicationJobId :: Prelude.Maybe Prelude.Text,
ReplicationJob -> Maybe [ReplicationRun]
replicationRunList :: Prelude.Maybe [ReplicationRun],
ReplicationJob -> Maybe Text
roleName :: Prelude.Maybe Prelude.Text,
ReplicationJob -> Maybe Bool
runOnce :: Prelude.Maybe Prelude.Bool,
ReplicationJob -> Maybe POSIX
seedReplicationTime :: Prelude.Maybe Data.POSIX,
ReplicationJob -> Maybe Text
serverId :: Prelude.Maybe Prelude.Text,
ReplicationJob -> Maybe ServerType
serverType :: Prelude.Maybe ServerType,
ReplicationJob -> Maybe ReplicationJobState
state :: Prelude.Maybe ReplicationJobState,
ReplicationJob -> Maybe Text
statusMessage :: Prelude.Maybe Prelude.Text,
ReplicationJob -> Maybe VmServer
vmServer :: Prelude.Maybe VmServer
}
deriving (ReplicationJob -> ReplicationJob -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ReplicationJob -> ReplicationJob -> Bool
$c/= :: ReplicationJob -> ReplicationJob -> Bool
== :: ReplicationJob -> ReplicationJob -> Bool
$c== :: ReplicationJob -> ReplicationJob -> Bool
Prelude.Eq, ReadPrec [ReplicationJob]
ReadPrec ReplicationJob
Int -> ReadS ReplicationJob
ReadS [ReplicationJob]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ReplicationJob]
$creadListPrec :: ReadPrec [ReplicationJob]
readPrec :: ReadPrec ReplicationJob
$creadPrec :: ReadPrec ReplicationJob
readList :: ReadS [ReplicationJob]
$creadList :: ReadS [ReplicationJob]
readsPrec :: Int -> ReadS ReplicationJob
$creadsPrec :: Int -> ReadS ReplicationJob
Prelude.Read, Int -> ReplicationJob -> ShowS
[ReplicationJob] -> ShowS
ReplicationJob -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ReplicationJob] -> ShowS
$cshowList :: [ReplicationJob] -> ShowS
show :: ReplicationJob -> String
$cshow :: ReplicationJob -> String
showsPrec :: Int -> ReplicationJob -> ShowS
$cshowsPrec :: Int -> ReplicationJob -> ShowS
Prelude.Show, forall x. Rep ReplicationJob x -> ReplicationJob
forall x. ReplicationJob -> Rep ReplicationJob x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ReplicationJob x -> ReplicationJob
$cfrom :: forall x. ReplicationJob -> Rep ReplicationJob x
Prelude.Generic)
newReplicationJob ::
ReplicationJob
newReplicationJob :: ReplicationJob
newReplicationJob =
ReplicationJob'
{ $sel:description:ReplicationJob' :: Maybe Text
description = forall a. Maybe a
Prelude.Nothing,
$sel:encrypted:ReplicationJob' :: Maybe Bool
encrypted = forall a. Maybe a
Prelude.Nothing,
$sel:frequency:ReplicationJob' :: Maybe Int
frequency = forall a. Maybe a
Prelude.Nothing,
$sel:kmsKeyId:ReplicationJob' :: Maybe Text
kmsKeyId = forall a. Maybe a
Prelude.Nothing,
$sel:latestAmiId:ReplicationJob' :: Maybe Text
latestAmiId = forall a. Maybe a
Prelude.Nothing,
$sel:licenseType:ReplicationJob' :: Maybe LicenseType
licenseType = forall a. Maybe a
Prelude.Nothing,
$sel:nextReplicationRunStartTime:ReplicationJob' :: Maybe POSIX
nextReplicationRunStartTime = forall a. Maybe a
Prelude.Nothing,
$sel:numberOfRecentAmisToKeep:ReplicationJob' :: Maybe Int
numberOfRecentAmisToKeep = forall a. Maybe a
Prelude.Nothing,
$sel:replicationJobId:ReplicationJob' :: Maybe Text
replicationJobId = forall a. Maybe a
Prelude.Nothing,
$sel:replicationRunList:ReplicationJob' :: Maybe [ReplicationRun]
replicationRunList = forall a. Maybe a
Prelude.Nothing,
$sel:roleName:ReplicationJob' :: Maybe Text
roleName = forall a. Maybe a
Prelude.Nothing,
$sel:runOnce:ReplicationJob' :: Maybe Bool
runOnce = forall a. Maybe a
Prelude.Nothing,
$sel:seedReplicationTime:ReplicationJob' :: Maybe POSIX
seedReplicationTime = forall a. Maybe a
Prelude.Nothing,
$sel:serverId:ReplicationJob' :: Maybe Text
serverId = forall a. Maybe a
Prelude.Nothing,
$sel:serverType:ReplicationJob' :: Maybe ServerType
serverType = forall a. Maybe a
Prelude.Nothing,
$sel:state:ReplicationJob' :: Maybe ReplicationJobState
state = forall a. Maybe a
Prelude.Nothing,
$sel:statusMessage:ReplicationJob' :: Maybe Text
statusMessage = forall a. Maybe a
Prelude.Nothing,
$sel:vmServer:ReplicationJob' :: Maybe VmServer
vmServer = forall a. Maybe a
Prelude.Nothing
}
replicationJob_description :: Lens.Lens' ReplicationJob (Prelude.Maybe Prelude.Text)
replicationJob_description :: Lens' ReplicationJob (Maybe Text)
replicationJob_description = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationJob' {Maybe Text
description :: Maybe Text
$sel:description:ReplicationJob' :: ReplicationJob -> Maybe Text
description} -> Maybe Text
description) (\s :: ReplicationJob
s@ReplicationJob' {} Maybe Text
a -> ReplicationJob
s {$sel:description:ReplicationJob' :: Maybe Text
description = Maybe Text
a} :: ReplicationJob)
replicationJob_encrypted :: Lens.Lens' ReplicationJob (Prelude.Maybe Prelude.Bool)
replicationJob_encrypted :: Lens' ReplicationJob (Maybe Bool)
replicationJob_encrypted = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationJob' {Maybe Bool
encrypted :: Maybe Bool
$sel:encrypted:ReplicationJob' :: ReplicationJob -> Maybe Bool
encrypted} -> Maybe Bool
encrypted) (\s :: ReplicationJob
s@ReplicationJob' {} Maybe Bool
a -> ReplicationJob
s {$sel:encrypted:ReplicationJob' :: Maybe Bool
encrypted = Maybe Bool
a} :: ReplicationJob)
replicationJob_frequency :: Lens.Lens' ReplicationJob (Prelude.Maybe Prelude.Int)
replicationJob_frequency :: Lens' ReplicationJob (Maybe Int)
replicationJob_frequency = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationJob' {Maybe Int
frequency :: Maybe Int
$sel:frequency:ReplicationJob' :: ReplicationJob -> Maybe Int
frequency} -> Maybe Int
frequency) (\s :: ReplicationJob
s@ReplicationJob' {} Maybe Int
a -> ReplicationJob
s {$sel:frequency:ReplicationJob' :: Maybe Int
frequency = Maybe Int
a} :: ReplicationJob)
replicationJob_kmsKeyId :: Lens.Lens' ReplicationJob (Prelude.Maybe Prelude.Text)
replicationJob_kmsKeyId :: Lens' ReplicationJob (Maybe Text)
replicationJob_kmsKeyId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationJob' {Maybe Text
kmsKeyId :: Maybe Text
$sel:kmsKeyId:ReplicationJob' :: ReplicationJob -> Maybe Text
kmsKeyId} -> Maybe Text
kmsKeyId) (\s :: ReplicationJob
s@ReplicationJob' {} Maybe Text
a -> ReplicationJob
s {$sel:kmsKeyId:ReplicationJob' :: Maybe Text
kmsKeyId = Maybe Text
a} :: ReplicationJob)
replicationJob_latestAmiId :: Lens.Lens' ReplicationJob (Prelude.Maybe Prelude.Text)
replicationJob_latestAmiId :: Lens' ReplicationJob (Maybe Text)
replicationJob_latestAmiId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationJob' {Maybe Text
latestAmiId :: Maybe Text
$sel:latestAmiId:ReplicationJob' :: ReplicationJob -> Maybe Text
latestAmiId} -> Maybe Text
latestAmiId) (\s :: ReplicationJob
s@ReplicationJob' {} Maybe Text
a -> ReplicationJob
s {$sel:latestAmiId:ReplicationJob' :: Maybe Text
latestAmiId = Maybe Text
a} :: ReplicationJob)
replicationJob_licenseType :: Lens.Lens' ReplicationJob (Prelude.Maybe LicenseType)
replicationJob_licenseType :: Lens' ReplicationJob (Maybe LicenseType)
replicationJob_licenseType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationJob' {Maybe LicenseType
licenseType :: Maybe LicenseType
$sel:licenseType:ReplicationJob' :: ReplicationJob -> Maybe LicenseType
licenseType} -> Maybe LicenseType
licenseType) (\s :: ReplicationJob
s@ReplicationJob' {} Maybe LicenseType
a -> ReplicationJob
s {$sel:licenseType:ReplicationJob' :: Maybe LicenseType
licenseType = Maybe LicenseType
a} :: ReplicationJob)
replicationJob_nextReplicationRunStartTime :: Lens.Lens' ReplicationJob (Prelude.Maybe Prelude.UTCTime)
replicationJob_nextReplicationRunStartTime :: Lens' ReplicationJob (Maybe UTCTime)
replicationJob_nextReplicationRunStartTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationJob' {Maybe POSIX
nextReplicationRunStartTime :: Maybe POSIX
$sel:nextReplicationRunStartTime:ReplicationJob' :: ReplicationJob -> Maybe POSIX
nextReplicationRunStartTime} -> Maybe POSIX
nextReplicationRunStartTime) (\s :: ReplicationJob
s@ReplicationJob' {} Maybe POSIX
a -> ReplicationJob
s {$sel:nextReplicationRunStartTime:ReplicationJob' :: Maybe POSIX
nextReplicationRunStartTime = Maybe POSIX
a} :: ReplicationJob) 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
replicationJob_numberOfRecentAmisToKeep :: Lens.Lens' ReplicationJob (Prelude.Maybe Prelude.Int)
replicationJob_numberOfRecentAmisToKeep :: Lens' ReplicationJob (Maybe Int)
replicationJob_numberOfRecentAmisToKeep = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationJob' {Maybe Int
numberOfRecentAmisToKeep :: Maybe Int
$sel:numberOfRecentAmisToKeep:ReplicationJob' :: ReplicationJob -> Maybe Int
numberOfRecentAmisToKeep} -> Maybe Int
numberOfRecentAmisToKeep) (\s :: ReplicationJob
s@ReplicationJob' {} Maybe Int
a -> ReplicationJob
s {$sel:numberOfRecentAmisToKeep:ReplicationJob' :: Maybe Int
numberOfRecentAmisToKeep = Maybe Int
a} :: ReplicationJob)
replicationJob_replicationJobId :: Lens.Lens' ReplicationJob (Prelude.Maybe Prelude.Text)
replicationJob_replicationJobId :: Lens' ReplicationJob (Maybe Text)
replicationJob_replicationJobId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationJob' {Maybe Text
replicationJobId :: Maybe Text
$sel:replicationJobId:ReplicationJob' :: ReplicationJob -> Maybe Text
replicationJobId} -> Maybe Text
replicationJobId) (\s :: ReplicationJob
s@ReplicationJob' {} Maybe Text
a -> ReplicationJob
s {$sel:replicationJobId:ReplicationJob' :: Maybe Text
replicationJobId = Maybe Text
a} :: ReplicationJob)
replicationJob_replicationRunList :: Lens.Lens' ReplicationJob (Prelude.Maybe [ReplicationRun])
replicationJob_replicationRunList :: Lens' ReplicationJob (Maybe [ReplicationRun])
replicationJob_replicationRunList = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationJob' {Maybe [ReplicationRun]
replicationRunList :: Maybe [ReplicationRun]
$sel:replicationRunList:ReplicationJob' :: ReplicationJob -> Maybe [ReplicationRun]
replicationRunList} -> Maybe [ReplicationRun]
replicationRunList) (\s :: ReplicationJob
s@ReplicationJob' {} Maybe [ReplicationRun]
a -> ReplicationJob
s {$sel:replicationRunList:ReplicationJob' :: Maybe [ReplicationRun]
replicationRunList = Maybe [ReplicationRun]
a} :: ReplicationJob) 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
replicationJob_roleName :: Lens.Lens' ReplicationJob (Prelude.Maybe Prelude.Text)
replicationJob_roleName :: Lens' ReplicationJob (Maybe Text)
replicationJob_roleName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationJob' {Maybe Text
roleName :: Maybe Text
$sel:roleName:ReplicationJob' :: ReplicationJob -> Maybe Text
roleName} -> Maybe Text
roleName) (\s :: ReplicationJob
s@ReplicationJob' {} Maybe Text
a -> ReplicationJob
s {$sel:roleName:ReplicationJob' :: Maybe Text
roleName = Maybe Text
a} :: ReplicationJob)
replicationJob_runOnce :: Lens.Lens' ReplicationJob (Prelude.Maybe Prelude.Bool)
replicationJob_runOnce :: Lens' ReplicationJob (Maybe Bool)
replicationJob_runOnce = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationJob' {Maybe Bool
runOnce :: Maybe Bool
$sel:runOnce:ReplicationJob' :: ReplicationJob -> Maybe Bool
runOnce} -> Maybe Bool
runOnce) (\s :: ReplicationJob
s@ReplicationJob' {} Maybe Bool
a -> ReplicationJob
s {$sel:runOnce:ReplicationJob' :: Maybe Bool
runOnce = Maybe Bool
a} :: ReplicationJob)
replicationJob_seedReplicationTime :: Lens.Lens' ReplicationJob (Prelude.Maybe Prelude.UTCTime)
replicationJob_seedReplicationTime :: Lens' ReplicationJob (Maybe UTCTime)
replicationJob_seedReplicationTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationJob' {Maybe POSIX
seedReplicationTime :: Maybe POSIX
$sel:seedReplicationTime:ReplicationJob' :: ReplicationJob -> Maybe POSIX
seedReplicationTime} -> Maybe POSIX
seedReplicationTime) (\s :: ReplicationJob
s@ReplicationJob' {} Maybe POSIX
a -> ReplicationJob
s {$sel:seedReplicationTime:ReplicationJob' :: Maybe POSIX
seedReplicationTime = Maybe POSIX
a} :: ReplicationJob) 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
replicationJob_serverId :: Lens.Lens' ReplicationJob (Prelude.Maybe Prelude.Text)
replicationJob_serverId :: Lens' ReplicationJob (Maybe Text)
replicationJob_serverId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationJob' {Maybe Text
serverId :: Maybe Text
$sel:serverId:ReplicationJob' :: ReplicationJob -> Maybe Text
serverId} -> Maybe Text
serverId) (\s :: ReplicationJob
s@ReplicationJob' {} Maybe Text
a -> ReplicationJob
s {$sel:serverId:ReplicationJob' :: Maybe Text
serverId = Maybe Text
a} :: ReplicationJob)
replicationJob_serverType :: Lens.Lens' ReplicationJob (Prelude.Maybe ServerType)
replicationJob_serverType :: Lens' ReplicationJob (Maybe ServerType)
replicationJob_serverType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationJob' {Maybe ServerType
serverType :: Maybe ServerType
$sel:serverType:ReplicationJob' :: ReplicationJob -> Maybe ServerType
serverType} -> Maybe ServerType
serverType) (\s :: ReplicationJob
s@ReplicationJob' {} Maybe ServerType
a -> ReplicationJob
s {$sel:serverType:ReplicationJob' :: Maybe ServerType
serverType = Maybe ServerType
a} :: ReplicationJob)
replicationJob_state :: Lens.Lens' ReplicationJob (Prelude.Maybe ReplicationJobState)
replicationJob_state :: Lens' ReplicationJob (Maybe ReplicationJobState)
replicationJob_state = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationJob' {Maybe ReplicationJobState
state :: Maybe ReplicationJobState
$sel:state:ReplicationJob' :: ReplicationJob -> Maybe ReplicationJobState
state} -> Maybe ReplicationJobState
state) (\s :: ReplicationJob
s@ReplicationJob' {} Maybe ReplicationJobState
a -> ReplicationJob
s {$sel:state:ReplicationJob' :: Maybe ReplicationJobState
state = Maybe ReplicationJobState
a} :: ReplicationJob)
replicationJob_statusMessage :: Lens.Lens' ReplicationJob (Prelude.Maybe Prelude.Text)
replicationJob_statusMessage :: Lens' ReplicationJob (Maybe Text)
replicationJob_statusMessage = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationJob' {Maybe Text
statusMessage :: Maybe Text
$sel:statusMessage:ReplicationJob' :: ReplicationJob -> Maybe Text
statusMessage} -> Maybe Text
statusMessage) (\s :: ReplicationJob
s@ReplicationJob' {} Maybe Text
a -> ReplicationJob
s {$sel:statusMessage:ReplicationJob' :: Maybe Text
statusMessage = Maybe Text
a} :: ReplicationJob)
replicationJob_vmServer :: Lens.Lens' ReplicationJob (Prelude.Maybe VmServer)
replicationJob_vmServer :: Lens' ReplicationJob (Maybe VmServer)
replicationJob_vmServer = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationJob' {Maybe VmServer
vmServer :: Maybe VmServer
$sel:vmServer:ReplicationJob' :: ReplicationJob -> Maybe VmServer
vmServer} -> Maybe VmServer
vmServer) (\s :: ReplicationJob
s@ReplicationJob' {} Maybe VmServer
a -> ReplicationJob
s {$sel:vmServer:ReplicationJob' :: Maybe VmServer
vmServer = Maybe VmServer
a} :: ReplicationJob)
instance Data.FromJSON ReplicationJob where
parseJSON :: Value -> Parser ReplicationJob
parseJSON =
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
String
"ReplicationJob"
( \Object
x ->
Maybe Text
-> Maybe Bool
-> Maybe Int
-> Maybe Text
-> Maybe Text
-> Maybe LicenseType
-> Maybe POSIX
-> Maybe Int
-> Maybe Text
-> Maybe [ReplicationRun]
-> Maybe Text
-> Maybe Bool
-> Maybe POSIX
-> Maybe Text
-> Maybe ServerType
-> Maybe ReplicationJobState
-> Maybe Text
-> Maybe VmServer
-> ReplicationJob
ReplicationJob'
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
"description")
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
"encrypted")
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
"frequency")
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
"kmsKeyId")
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
"latestAmiId")
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
"licenseType")
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
"nextReplicationRunStartTime")
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
"numberOfRecentAmisToKeep")
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
"replicationJobId")
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
"replicationRunList"
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
"roleName")
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
"runOnce")
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
"seedReplicationTime")
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
"serverId")
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
"serverType")
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
"state")
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
"statusMessage")
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
"vmServer")
)
instance Prelude.Hashable ReplicationJob where
hashWithSalt :: Int -> ReplicationJob -> Int
hashWithSalt Int
_salt ReplicationJob' {Maybe Bool
Maybe Int
Maybe [ReplicationRun]
Maybe Text
Maybe POSIX
Maybe LicenseType
Maybe ReplicationJobState
Maybe ServerType
Maybe VmServer
vmServer :: Maybe VmServer
statusMessage :: Maybe Text
state :: Maybe ReplicationJobState
serverType :: Maybe ServerType
serverId :: Maybe Text
seedReplicationTime :: Maybe POSIX
runOnce :: Maybe Bool
roleName :: Maybe Text
replicationRunList :: Maybe [ReplicationRun]
replicationJobId :: Maybe Text
numberOfRecentAmisToKeep :: Maybe Int
nextReplicationRunStartTime :: Maybe POSIX
licenseType :: Maybe LicenseType
latestAmiId :: Maybe Text
kmsKeyId :: Maybe Text
frequency :: Maybe Int
encrypted :: Maybe Bool
description :: Maybe Text
$sel:vmServer:ReplicationJob' :: ReplicationJob -> Maybe VmServer
$sel:statusMessage:ReplicationJob' :: ReplicationJob -> Maybe Text
$sel:state:ReplicationJob' :: ReplicationJob -> Maybe ReplicationJobState
$sel:serverType:ReplicationJob' :: ReplicationJob -> Maybe ServerType
$sel:serverId:ReplicationJob' :: ReplicationJob -> Maybe Text
$sel:seedReplicationTime:ReplicationJob' :: ReplicationJob -> Maybe POSIX
$sel:runOnce:ReplicationJob' :: ReplicationJob -> Maybe Bool
$sel:roleName:ReplicationJob' :: ReplicationJob -> Maybe Text
$sel:replicationRunList:ReplicationJob' :: ReplicationJob -> Maybe [ReplicationRun]
$sel:replicationJobId:ReplicationJob' :: ReplicationJob -> Maybe Text
$sel:numberOfRecentAmisToKeep:ReplicationJob' :: ReplicationJob -> Maybe Int
$sel:nextReplicationRunStartTime:ReplicationJob' :: ReplicationJob -> Maybe POSIX
$sel:licenseType:ReplicationJob' :: ReplicationJob -> Maybe LicenseType
$sel:latestAmiId:ReplicationJob' :: ReplicationJob -> Maybe Text
$sel:kmsKeyId:ReplicationJob' :: ReplicationJob -> Maybe Text
$sel:frequency:ReplicationJob' :: ReplicationJob -> Maybe Int
$sel:encrypted:ReplicationJob' :: ReplicationJob -> Maybe Bool
$sel:description:ReplicationJob' :: ReplicationJob -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
description
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
encrypted
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
frequency
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
kmsKeyId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
latestAmiId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe LicenseType
licenseType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe POSIX
nextReplicationRunStartTime
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
numberOfRecentAmisToKeep
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
replicationJobId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [ReplicationRun]
replicationRunList
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
roleName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
runOnce
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe POSIX
seedReplicationTime
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
serverId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ServerType
serverType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ReplicationJobState
state
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
statusMessage
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe VmServer
vmServer
instance Prelude.NFData ReplicationJob where
rnf :: ReplicationJob -> ()
rnf ReplicationJob' {Maybe Bool
Maybe Int
Maybe [ReplicationRun]
Maybe Text
Maybe POSIX
Maybe LicenseType
Maybe ReplicationJobState
Maybe ServerType
Maybe VmServer
vmServer :: Maybe VmServer
statusMessage :: Maybe Text
state :: Maybe ReplicationJobState
serverType :: Maybe ServerType
serverId :: Maybe Text
seedReplicationTime :: Maybe POSIX
runOnce :: Maybe Bool
roleName :: Maybe Text
replicationRunList :: Maybe [ReplicationRun]
replicationJobId :: Maybe Text
numberOfRecentAmisToKeep :: Maybe Int
nextReplicationRunStartTime :: Maybe POSIX
licenseType :: Maybe LicenseType
latestAmiId :: Maybe Text
kmsKeyId :: Maybe Text
frequency :: Maybe Int
encrypted :: Maybe Bool
description :: Maybe Text
$sel:vmServer:ReplicationJob' :: ReplicationJob -> Maybe VmServer
$sel:statusMessage:ReplicationJob' :: ReplicationJob -> Maybe Text
$sel:state:ReplicationJob' :: ReplicationJob -> Maybe ReplicationJobState
$sel:serverType:ReplicationJob' :: ReplicationJob -> Maybe ServerType
$sel:serverId:ReplicationJob' :: ReplicationJob -> Maybe Text
$sel:seedReplicationTime:ReplicationJob' :: ReplicationJob -> Maybe POSIX
$sel:runOnce:ReplicationJob' :: ReplicationJob -> Maybe Bool
$sel:roleName:ReplicationJob' :: ReplicationJob -> Maybe Text
$sel:replicationRunList:ReplicationJob' :: ReplicationJob -> Maybe [ReplicationRun]
$sel:replicationJobId:ReplicationJob' :: ReplicationJob -> Maybe Text
$sel:numberOfRecentAmisToKeep:ReplicationJob' :: ReplicationJob -> Maybe Int
$sel:nextReplicationRunStartTime:ReplicationJob' :: ReplicationJob -> Maybe POSIX
$sel:licenseType:ReplicationJob' :: ReplicationJob -> Maybe LicenseType
$sel:latestAmiId:ReplicationJob' :: ReplicationJob -> Maybe Text
$sel:kmsKeyId:ReplicationJob' :: ReplicationJob -> Maybe Text
$sel:frequency:ReplicationJob' :: ReplicationJob -> Maybe Int
$sel:encrypted:ReplicationJob' :: ReplicationJob -> Maybe Bool
$sel:description:ReplicationJob' :: ReplicationJob -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
description
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
encrypted
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
frequency
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
kmsKeyId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
latestAmiId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe LicenseType
licenseType
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
nextReplicationRunStartTime
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
numberOfRecentAmisToKeep
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
replicationJobId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [ReplicationRun]
replicationRunList
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
roleName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
runOnce
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
seedReplicationTime
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
serverId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ServerType
serverType
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ReplicationJobState
state
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
statusMessage
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe VmServer
vmServer