{-# 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.ElastiCache.Types.ReplicationGroup where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.ElastiCache.Types.AutomaticFailoverStatus
import Amazonka.ElastiCache.Types.DataTieringStatus
import Amazonka.ElastiCache.Types.Endpoint
import Amazonka.ElastiCache.Types.GlobalReplicationGroupInfo
import Amazonka.ElastiCache.Types.IpDiscovery
import Amazonka.ElastiCache.Types.LogDeliveryConfiguration
import Amazonka.ElastiCache.Types.MultiAZStatus
import Amazonka.ElastiCache.Types.NetworkType
import Amazonka.ElastiCache.Types.NodeGroup
import Amazonka.ElastiCache.Types.ReplicationGroupPendingModifiedValues
import Amazonka.ElastiCache.Types.TransitEncryptionMode
import qualified Amazonka.Prelude as Prelude
data ReplicationGroup = ReplicationGroup'
{
ReplicationGroup -> Maybe Text
arn :: Prelude.Maybe Prelude.Text,
ReplicationGroup -> Maybe Bool
atRestEncryptionEnabled :: Prelude.Maybe Prelude.Bool,
ReplicationGroup -> Maybe Bool
authTokenEnabled :: Prelude.Maybe Prelude.Bool,
ReplicationGroup -> Maybe ISO8601
authTokenLastModifiedDate :: Prelude.Maybe Data.ISO8601,
ReplicationGroup -> Maybe Bool
autoMinorVersionUpgrade :: Prelude.Maybe Prelude.Bool,
ReplicationGroup -> Maybe AutomaticFailoverStatus
automaticFailover :: Prelude.Maybe AutomaticFailoverStatus,
ReplicationGroup -> Maybe Text
cacheNodeType :: Prelude.Maybe Prelude.Text,
ReplicationGroup -> Maybe Bool
clusterEnabled :: Prelude.Maybe Prelude.Bool,
ReplicationGroup -> Maybe Endpoint
configurationEndpoint :: Prelude.Maybe Endpoint,
ReplicationGroup -> Maybe DataTieringStatus
dataTiering :: Prelude.Maybe DataTieringStatus,
ReplicationGroup -> Maybe Text
description :: Prelude.Maybe Prelude.Text,
ReplicationGroup -> Maybe GlobalReplicationGroupInfo
globalReplicationGroupInfo :: Prelude.Maybe GlobalReplicationGroupInfo,
ReplicationGroup -> Maybe IpDiscovery
ipDiscovery :: Prelude.Maybe IpDiscovery,
ReplicationGroup -> Maybe Text
kmsKeyId :: Prelude.Maybe Prelude.Text,
ReplicationGroup -> Maybe [LogDeliveryConfiguration]
logDeliveryConfigurations :: Prelude.Maybe [LogDeliveryConfiguration],
ReplicationGroup -> Maybe [Text]
memberClusters :: Prelude.Maybe [Prelude.Text],
ReplicationGroup -> Maybe [Text]
memberClustersOutpostArns :: Prelude.Maybe [Prelude.Text],
ReplicationGroup -> Maybe MultiAZStatus
multiAZ :: Prelude.Maybe MultiAZStatus,
ReplicationGroup -> Maybe NetworkType
networkType :: Prelude.Maybe NetworkType,
ReplicationGroup -> Maybe [NodeGroup]
nodeGroups :: Prelude.Maybe [NodeGroup],
ReplicationGroup -> Maybe ReplicationGroupPendingModifiedValues
pendingModifiedValues :: Prelude.Maybe ReplicationGroupPendingModifiedValues,
ReplicationGroup -> Maybe ISO8601
replicationGroupCreateTime :: Prelude.Maybe Data.ISO8601,
ReplicationGroup -> Maybe Text
replicationGroupId :: Prelude.Maybe Prelude.Text,
ReplicationGroup -> Maybe Int
snapshotRetentionLimit :: Prelude.Maybe Prelude.Int,
ReplicationGroup -> Maybe Text
snapshotWindow :: Prelude.Maybe Prelude.Text,
ReplicationGroup -> Maybe Text
snapshottingClusterId :: Prelude.Maybe Prelude.Text,
ReplicationGroup -> Maybe Text
status :: Prelude.Maybe Prelude.Text,
ReplicationGroup -> Maybe Bool
transitEncryptionEnabled :: Prelude.Maybe Prelude.Bool,
ReplicationGroup -> Maybe TransitEncryptionMode
transitEncryptionMode :: Prelude.Maybe TransitEncryptionMode,
ReplicationGroup -> Maybe [Text]
userGroupIds :: Prelude.Maybe [Prelude.Text]
}
deriving (ReplicationGroup -> ReplicationGroup -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ReplicationGroup -> ReplicationGroup -> Bool
$c/= :: ReplicationGroup -> ReplicationGroup -> Bool
== :: ReplicationGroup -> ReplicationGroup -> Bool
$c== :: ReplicationGroup -> ReplicationGroup -> Bool
Prelude.Eq, ReadPrec [ReplicationGroup]
ReadPrec ReplicationGroup
Int -> ReadS ReplicationGroup
ReadS [ReplicationGroup]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ReplicationGroup]
$creadListPrec :: ReadPrec [ReplicationGroup]
readPrec :: ReadPrec ReplicationGroup
$creadPrec :: ReadPrec ReplicationGroup
readList :: ReadS [ReplicationGroup]
$creadList :: ReadS [ReplicationGroup]
readsPrec :: Int -> ReadS ReplicationGroup
$creadsPrec :: Int -> ReadS ReplicationGroup
Prelude.Read, Int -> ReplicationGroup -> ShowS
[ReplicationGroup] -> ShowS
ReplicationGroup -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ReplicationGroup] -> ShowS
$cshowList :: [ReplicationGroup] -> ShowS
show :: ReplicationGroup -> String
$cshow :: ReplicationGroup -> String
showsPrec :: Int -> ReplicationGroup -> ShowS
$cshowsPrec :: Int -> ReplicationGroup -> ShowS
Prelude.Show, forall x. Rep ReplicationGroup x -> ReplicationGroup
forall x. ReplicationGroup -> Rep ReplicationGroup x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ReplicationGroup x -> ReplicationGroup
$cfrom :: forall x. ReplicationGroup -> Rep ReplicationGroup x
Prelude.Generic)
newReplicationGroup ::
ReplicationGroup
newReplicationGroup :: ReplicationGroup
newReplicationGroup =
ReplicationGroup'
{ $sel:arn:ReplicationGroup' :: Maybe Text
arn = forall a. Maybe a
Prelude.Nothing,
$sel:atRestEncryptionEnabled:ReplicationGroup' :: Maybe Bool
atRestEncryptionEnabled = forall a. Maybe a
Prelude.Nothing,
$sel:authTokenEnabled:ReplicationGroup' :: Maybe Bool
authTokenEnabled = forall a. Maybe a
Prelude.Nothing,
$sel:authTokenLastModifiedDate:ReplicationGroup' :: Maybe ISO8601
authTokenLastModifiedDate = forall a. Maybe a
Prelude.Nothing,
$sel:autoMinorVersionUpgrade:ReplicationGroup' :: Maybe Bool
autoMinorVersionUpgrade = forall a. Maybe a
Prelude.Nothing,
$sel:automaticFailover:ReplicationGroup' :: Maybe AutomaticFailoverStatus
automaticFailover = forall a. Maybe a
Prelude.Nothing,
$sel:cacheNodeType:ReplicationGroup' :: Maybe Text
cacheNodeType = forall a. Maybe a
Prelude.Nothing,
$sel:clusterEnabled:ReplicationGroup' :: Maybe Bool
clusterEnabled = forall a. Maybe a
Prelude.Nothing,
$sel:configurationEndpoint:ReplicationGroup' :: Maybe Endpoint
configurationEndpoint = forall a. Maybe a
Prelude.Nothing,
$sel:dataTiering:ReplicationGroup' :: Maybe DataTieringStatus
dataTiering = forall a. Maybe a
Prelude.Nothing,
$sel:description:ReplicationGroup' :: Maybe Text
description = forall a. Maybe a
Prelude.Nothing,
$sel:globalReplicationGroupInfo:ReplicationGroup' :: Maybe GlobalReplicationGroupInfo
globalReplicationGroupInfo = forall a. Maybe a
Prelude.Nothing,
$sel:ipDiscovery:ReplicationGroup' :: Maybe IpDiscovery
ipDiscovery = forall a. Maybe a
Prelude.Nothing,
$sel:kmsKeyId:ReplicationGroup' :: Maybe Text
kmsKeyId = forall a. Maybe a
Prelude.Nothing,
$sel:logDeliveryConfigurations:ReplicationGroup' :: Maybe [LogDeliveryConfiguration]
logDeliveryConfigurations = forall a. Maybe a
Prelude.Nothing,
$sel:memberClusters:ReplicationGroup' :: Maybe [Text]
memberClusters = forall a. Maybe a
Prelude.Nothing,
$sel:memberClustersOutpostArns:ReplicationGroup' :: Maybe [Text]
memberClustersOutpostArns = forall a. Maybe a
Prelude.Nothing,
$sel:multiAZ:ReplicationGroup' :: Maybe MultiAZStatus
multiAZ = forall a. Maybe a
Prelude.Nothing,
$sel:networkType:ReplicationGroup' :: Maybe NetworkType
networkType = forall a. Maybe a
Prelude.Nothing,
$sel:nodeGroups:ReplicationGroup' :: Maybe [NodeGroup]
nodeGroups = forall a. Maybe a
Prelude.Nothing,
$sel:pendingModifiedValues:ReplicationGroup' :: Maybe ReplicationGroupPendingModifiedValues
pendingModifiedValues = forall a. Maybe a
Prelude.Nothing,
$sel:replicationGroupCreateTime:ReplicationGroup' :: Maybe ISO8601
replicationGroupCreateTime = forall a. Maybe a
Prelude.Nothing,
$sel:replicationGroupId:ReplicationGroup' :: Maybe Text
replicationGroupId = forall a. Maybe a
Prelude.Nothing,
$sel:snapshotRetentionLimit:ReplicationGroup' :: Maybe Int
snapshotRetentionLimit = forall a. Maybe a
Prelude.Nothing,
$sel:snapshotWindow:ReplicationGroup' :: Maybe Text
snapshotWindow = forall a. Maybe a
Prelude.Nothing,
$sel:snapshottingClusterId:ReplicationGroup' :: Maybe Text
snapshottingClusterId = forall a. Maybe a
Prelude.Nothing,
$sel:status:ReplicationGroup' :: Maybe Text
status = forall a. Maybe a
Prelude.Nothing,
$sel:transitEncryptionEnabled:ReplicationGroup' :: Maybe Bool
transitEncryptionEnabled = forall a. Maybe a
Prelude.Nothing,
$sel:transitEncryptionMode:ReplicationGroup' :: Maybe TransitEncryptionMode
transitEncryptionMode = forall a. Maybe a
Prelude.Nothing,
$sel:userGroupIds:ReplicationGroup' :: Maybe [Text]
userGroupIds = forall a. Maybe a
Prelude.Nothing
}
replicationGroup_arn :: Lens.Lens' ReplicationGroup (Prelude.Maybe Prelude.Text)
replicationGroup_arn :: Lens' ReplicationGroup (Maybe Text)
replicationGroup_arn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe Text
arn :: Maybe Text
$sel:arn:ReplicationGroup' :: ReplicationGroup -> Maybe Text
arn} -> Maybe Text
arn) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe Text
a -> ReplicationGroup
s {$sel:arn:ReplicationGroup' :: Maybe Text
arn = Maybe Text
a} :: ReplicationGroup)
replicationGroup_atRestEncryptionEnabled :: Lens.Lens' ReplicationGroup (Prelude.Maybe Prelude.Bool)
replicationGroup_atRestEncryptionEnabled :: Lens' ReplicationGroup (Maybe Bool)
replicationGroup_atRestEncryptionEnabled = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe Bool
atRestEncryptionEnabled :: Maybe Bool
$sel:atRestEncryptionEnabled:ReplicationGroup' :: ReplicationGroup -> Maybe Bool
atRestEncryptionEnabled} -> Maybe Bool
atRestEncryptionEnabled) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe Bool
a -> ReplicationGroup
s {$sel:atRestEncryptionEnabled:ReplicationGroup' :: Maybe Bool
atRestEncryptionEnabled = Maybe Bool
a} :: ReplicationGroup)
replicationGroup_authTokenEnabled :: Lens.Lens' ReplicationGroup (Prelude.Maybe Prelude.Bool)
replicationGroup_authTokenEnabled :: Lens' ReplicationGroup (Maybe Bool)
replicationGroup_authTokenEnabled = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe Bool
authTokenEnabled :: Maybe Bool
$sel:authTokenEnabled:ReplicationGroup' :: ReplicationGroup -> Maybe Bool
authTokenEnabled} -> Maybe Bool
authTokenEnabled) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe Bool
a -> ReplicationGroup
s {$sel:authTokenEnabled:ReplicationGroup' :: Maybe Bool
authTokenEnabled = Maybe Bool
a} :: ReplicationGroup)
replicationGroup_authTokenLastModifiedDate :: Lens.Lens' ReplicationGroup (Prelude.Maybe Prelude.UTCTime)
replicationGroup_authTokenLastModifiedDate :: Lens' ReplicationGroup (Maybe UTCTime)
replicationGroup_authTokenLastModifiedDate = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe ISO8601
authTokenLastModifiedDate :: Maybe ISO8601
$sel:authTokenLastModifiedDate:ReplicationGroup' :: ReplicationGroup -> Maybe ISO8601
authTokenLastModifiedDate} -> Maybe ISO8601
authTokenLastModifiedDate) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe ISO8601
a -> ReplicationGroup
s {$sel:authTokenLastModifiedDate:ReplicationGroup' :: Maybe ISO8601
authTokenLastModifiedDate = Maybe ISO8601
a} :: ReplicationGroup) 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
replicationGroup_autoMinorVersionUpgrade :: Lens.Lens' ReplicationGroup (Prelude.Maybe Prelude.Bool)
replicationGroup_autoMinorVersionUpgrade :: Lens' ReplicationGroup (Maybe Bool)
replicationGroup_autoMinorVersionUpgrade = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe Bool
autoMinorVersionUpgrade :: Maybe Bool
$sel:autoMinorVersionUpgrade:ReplicationGroup' :: ReplicationGroup -> Maybe Bool
autoMinorVersionUpgrade} -> Maybe Bool
autoMinorVersionUpgrade) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe Bool
a -> ReplicationGroup
s {$sel:autoMinorVersionUpgrade:ReplicationGroup' :: Maybe Bool
autoMinorVersionUpgrade = Maybe Bool
a} :: ReplicationGroup)
replicationGroup_automaticFailover :: Lens.Lens' ReplicationGroup (Prelude.Maybe AutomaticFailoverStatus)
replicationGroup_automaticFailover :: Lens' ReplicationGroup (Maybe AutomaticFailoverStatus)
replicationGroup_automaticFailover = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe AutomaticFailoverStatus
automaticFailover :: Maybe AutomaticFailoverStatus
$sel:automaticFailover:ReplicationGroup' :: ReplicationGroup -> Maybe AutomaticFailoverStatus
automaticFailover} -> Maybe AutomaticFailoverStatus
automaticFailover) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe AutomaticFailoverStatus
a -> ReplicationGroup
s {$sel:automaticFailover:ReplicationGroup' :: Maybe AutomaticFailoverStatus
automaticFailover = Maybe AutomaticFailoverStatus
a} :: ReplicationGroup)
replicationGroup_cacheNodeType :: Lens.Lens' ReplicationGroup (Prelude.Maybe Prelude.Text)
replicationGroup_cacheNodeType :: Lens' ReplicationGroup (Maybe Text)
replicationGroup_cacheNodeType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe Text
cacheNodeType :: Maybe Text
$sel:cacheNodeType:ReplicationGroup' :: ReplicationGroup -> Maybe Text
cacheNodeType} -> Maybe Text
cacheNodeType) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe Text
a -> ReplicationGroup
s {$sel:cacheNodeType:ReplicationGroup' :: Maybe Text
cacheNodeType = Maybe Text
a} :: ReplicationGroup)
replicationGroup_clusterEnabled :: Lens.Lens' ReplicationGroup (Prelude.Maybe Prelude.Bool)
replicationGroup_clusterEnabled :: Lens' ReplicationGroup (Maybe Bool)
replicationGroup_clusterEnabled = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe Bool
clusterEnabled :: Maybe Bool
$sel:clusterEnabled:ReplicationGroup' :: ReplicationGroup -> Maybe Bool
clusterEnabled} -> Maybe Bool
clusterEnabled) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe Bool
a -> ReplicationGroup
s {$sel:clusterEnabled:ReplicationGroup' :: Maybe Bool
clusterEnabled = Maybe Bool
a} :: ReplicationGroup)
replicationGroup_configurationEndpoint :: Lens.Lens' ReplicationGroup (Prelude.Maybe Endpoint)
replicationGroup_configurationEndpoint :: Lens' ReplicationGroup (Maybe Endpoint)
replicationGroup_configurationEndpoint = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe Endpoint
configurationEndpoint :: Maybe Endpoint
$sel:configurationEndpoint:ReplicationGroup' :: ReplicationGroup -> Maybe Endpoint
configurationEndpoint} -> Maybe Endpoint
configurationEndpoint) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe Endpoint
a -> ReplicationGroup
s {$sel:configurationEndpoint:ReplicationGroup' :: Maybe Endpoint
configurationEndpoint = Maybe Endpoint
a} :: ReplicationGroup)
replicationGroup_dataTiering :: Lens.Lens' ReplicationGroup (Prelude.Maybe DataTieringStatus)
replicationGroup_dataTiering :: Lens' ReplicationGroup (Maybe DataTieringStatus)
replicationGroup_dataTiering = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe DataTieringStatus
dataTiering :: Maybe DataTieringStatus
$sel:dataTiering:ReplicationGroup' :: ReplicationGroup -> Maybe DataTieringStatus
dataTiering} -> Maybe DataTieringStatus
dataTiering) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe DataTieringStatus
a -> ReplicationGroup
s {$sel:dataTiering:ReplicationGroup' :: Maybe DataTieringStatus
dataTiering = Maybe DataTieringStatus
a} :: ReplicationGroup)
replicationGroup_description :: Lens.Lens' ReplicationGroup (Prelude.Maybe Prelude.Text)
replicationGroup_description :: Lens' ReplicationGroup (Maybe Text)
replicationGroup_description = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe Text
description :: Maybe Text
$sel:description:ReplicationGroup' :: ReplicationGroup -> Maybe Text
description} -> Maybe Text
description) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe Text
a -> ReplicationGroup
s {$sel:description:ReplicationGroup' :: Maybe Text
description = Maybe Text
a} :: ReplicationGroup)
replicationGroup_globalReplicationGroupInfo :: Lens.Lens' ReplicationGroup (Prelude.Maybe GlobalReplicationGroupInfo)
replicationGroup_globalReplicationGroupInfo :: Lens' ReplicationGroup (Maybe GlobalReplicationGroupInfo)
replicationGroup_globalReplicationGroupInfo = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe GlobalReplicationGroupInfo
globalReplicationGroupInfo :: Maybe GlobalReplicationGroupInfo
$sel:globalReplicationGroupInfo:ReplicationGroup' :: ReplicationGroup -> Maybe GlobalReplicationGroupInfo
globalReplicationGroupInfo} -> Maybe GlobalReplicationGroupInfo
globalReplicationGroupInfo) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe GlobalReplicationGroupInfo
a -> ReplicationGroup
s {$sel:globalReplicationGroupInfo:ReplicationGroup' :: Maybe GlobalReplicationGroupInfo
globalReplicationGroupInfo = Maybe GlobalReplicationGroupInfo
a} :: ReplicationGroup)
replicationGroup_ipDiscovery :: Lens.Lens' ReplicationGroup (Prelude.Maybe IpDiscovery)
replicationGroup_ipDiscovery :: Lens' ReplicationGroup (Maybe IpDiscovery)
replicationGroup_ipDiscovery = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe IpDiscovery
ipDiscovery :: Maybe IpDiscovery
$sel:ipDiscovery:ReplicationGroup' :: ReplicationGroup -> Maybe IpDiscovery
ipDiscovery} -> Maybe IpDiscovery
ipDiscovery) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe IpDiscovery
a -> ReplicationGroup
s {$sel:ipDiscovery:ReplicationGroup' :: Maybe IpDiscovery
ipDiscovery = Maybe IpDiscovery
a} :: ReplicationGroup)
replicationGroup_kmsKeyId :: Lens.Lens' ReplicationGroup (Prelude.Maybe Prelude.Text)
replicationGroup_kmsKeyId :: Lens' ReplicationGroup (Maybe Text)
replicationGroup_kmsKeyId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe Text
kmsKeyId :: Maybe Text
$sel:kmsKeyId:ReplicationGroup' :: ReplicationGroup -> Maybe Text
kmsKeyId} -> Maybe Text
kmsKeyId) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe Text
a -> ReplicationGroup
s {$sel:kmsKeyId:ReplicationGroup' :: Maybe Text
kmsKeyId = Maybe Text
a} :: ReplicationGroup)
replicationGroup_logDeliveryConfigurations :: Lens.Lens' ReplicationGroup (Prelude.Maybe [LogDeliveryConfiguration])
replicationGroup_logDeliveryConfigurations :: Lens' ReplicationGroup (Maybe [LogDeliveryConfiguration])
replicationGroup_logDeliveryConfigurations = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe [LogDeliveryConfiguration]
logDeliveryConfigurations :: Maybe [LogDeliveryConfiguration]
$sel:logDeliveryConfigurations:ReplicationGroup' :: ReplicationGroup -> Maybe [LogDeliveryConfiguration]
logDeliveryConfigurations} -> Maybe [LogDeliveryConfiguration]
logDeliveryConfigurations) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe [LogDeliveryConfiguration]
a -> ReplicationGroup
s {$sel:logDeliveryConfigurations:ReplicationGroup' :: Maybe [LogDeliveryConfiguration]
logDeliveryConfigurations = Maybe [LogDeliveryConfiguration]
a} :: ReplicationGroup) 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
replicationGroup_memberClusters :: Lens.Lens' ReplicationGroup (Prelude.Maybe [Prelude.Text])
replicationGroup_memberClusters :: Lens' ReplicationGroup (Maybe [Text])
replicationGroup_memberClusters = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe [Text]
memberClusters :: Maybe [Text]
$sel:memberClusters:ReplicationGroup' :: ReplicationGroup -> Maybe [Text]
memberClusters} -> Maybe [Text]
memberClusters) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe [Text]
a -> ReplicationGroup
s {$sel:memberClusters:ReplicationGroup' :: Maybe [Text]
memberClusters = Maybe [Text]
a} :: ReplicationGroup) 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
replicationGroup_memberClustersOutpostArns :: Lens.Lens' ReplicationGroup (Prelude.Maybe [Prelude.Text])
replicationGroup_memberClustersOutpostArns :: Lens' ReplicationGroup (Maybe [Text])
replicationGroup_memberClustersOutpostArns = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe [Text]
memberClustersOutpostArns :: Maybe [Text]
$sel:memberClustersOutpostArns:ReplicationGroup' :: ReplicationGroup -> Maybe [Text]
memberClustersOutpostArns} -> Maybe [Text]
memberClustersOutpostArns) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe [Text]
a -> ReplicationGroup
s {$sel:memberClustersOutpostArns:ReplicationGroup' :: Maybe [Text]
memberClustersOutpostArns = Maybe [Text]
a} :: ReplicationGroup) 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
replicationGroup_multiAZ :: Lens.Lens' ReplicationGroup (Prelude.Maybe MultiAZStatus)
replicationGroup_multiAZ :: Lens' ReplicationGroup (Maybe MultiAZStatus)
replicationGroup_multiAZ = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe MultiAZStatus
multiAZ :: Maybe MultiAZStatus
$sel:multiAZ:ReplicationGroup' :: ReplicationGroup -> Maybe MultiAZStatus
multiAZ} -> Maybe MultiAZStatus
multiAZ) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe MultiAZStatus
a -> ReplicationGroup
s {$sel:multiAZ:ReplicationGroup' :: Maybe MultiAZStatus
multiAZ = Maybe MultiAZStatus
a} :: ReplicationGroup)
replicationGroup_networkType :: Lens.Lens' ReplicationGroup (Prelude.Maybe NetworkType)
replicationGroup_networkType :: Lens' ReplicationGroup (Maybe NetworkType)
replicationGroup_networkType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe NetworkType
networkType :: Maybe NetworkType
$sel:networkType:ReplicationGroup' :: ReplicationGroup -> Maybe NetworkType
networkType} -> Maybe NetworkType
networkType) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe NetworkType
a -> ReplicationGroup
s {$sel:networkType:ReplicationGroup' :: Maybe NetworkType
networkType = Maybe NetworkType
a} :: ReplicationGroup)
replicationGroup_nodeGroups :: Lens.Lens' ReplicationGroup (Prelude.Maybe [NodeGroup])
replicationGroup_nodeGroups :: Lens' ReplicationGroup (Maybe [NodeGroup])
replicationGroup_nodeGroups = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe [NodeGroup]
nodeGroups :: Maybe [NodeGroup]
$sel:nodeGroups:ReplicationGroup' :: ReplicationGroup -> Maybe [NodeGroup]
nodeGroups} -> Maybe [NodeGroup]
nodeGroups) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe [NodeGroup]
a -> ReplicationGroup
s {$sel:nodeGroups:ReplicationGroup' :: Maybe [NodeGroup]
nodeGroups = Maybe [NodeGroup]
a} :: ReplicationGroup) 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
replicationGroup_pendingModifiedValues :: Lens.Lens' ReplicationGroup (Prelude.Maybe ReplicationGroupPendingModifiedValues)
replicationGroup_pendingModifiedValues :: Lens'
ReplicationGroup (Maybe ReplicationGroupPendingModifiedValues)
replicationGroup_pendingModifiedValues = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe ReplicationGroupPendingModifiedValues
pendingModifiedValues :: Maybe ReplicationGroupPendingModifiedValues
$sel:pendingModifiedValues:ReplicationGroup' :: ReplicationGroup -> Maybe ReplicationGroupPendingModifiedValues
pendingModifiedValues} -> Maybe ReplicationGroupPendingModifiedValues
pendingModifiedValues) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe ReplicationGroupPendingModifiedValues
a -> ReplicationGroup
s {$sel:pendingModifiedValues:ReplicationGroup' :: Maybe ReplicationGroupPendingModifiedValues
pendingModifiedValues = Maybe ReplicationGroupPendingModifiedValues
a} :: ReplicationGroup)
replicationGroup_replicationGroupCreateTime :: Lens.Lens' ReplicationGroup (Prelude.Maybe Prelude.UTCTime)
replicationGroup_replicationGroupCreateTime :: Lens' ReplicationGroup (Maybe UTCTime)
replicationGroup_replicationGroupCreateTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe ISO8601
replicationGroupCreateTime :: Maybe ISO8601
$sel:replicationGroupCreateTime:ReplicationGroup' :: ReplicationGroup -> Maybe ISO8601
replicationGroupCreateTime} -> Maybe ISO8601
replicationGroupCreateTime) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe ISO8601
a -> ReplicationGroup
s {$sel:replicationGroupCreateTime:ReplicationGroup' :: Maybe ISO8601
replicationGroupCreateTime = Maybe ISO8601
a} :: ReplicationGroup) 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
replicationGroup_replicationGroupId :: Lens.Lens' ReplicationGroup (Prelude.Maybe Prelude.Text)
replicationGroup_replicationGroupId :: Lens' ReplicationGroup (Maybe Text)
replicationGroup_replicationGroupId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe Text
replicationGroupId :: Maybe Text
$sel:replicationGroupId:ReplicationGroup' :: ReplicationGroup -> Maybe Text
replicationGroupId} -> Maybe Text
replicationGroupId) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe Text
a -> ReplicationGroup
s {$sel:replicationGroupId:ReplicationGroup' :: Maybe Text
replicationGroupId = Maybe Text
a} :: ReplicationGroup)
replicationGroup_snapshotRetentionLimit :: Lens.Lens' ReplicationGroup (Prelude.Maybe Prelude.Int)
replicationGroup_snapshotRetentionLimit :: Lens' ReplicationGroup (Maybe Int)
replicationGroup_snapshotRetentionLimit = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe Int
snapshotRetentionLimit :: Maybe Int
$sel:snapshotRetentionLimit:ReplicationGroup' :: ReplicationGroup -> Maybe Int
snapshotRetentionLimit} -> Maybe Int
snapshotRetentionLimit) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe Int
a -> ReplicationGroup
s {$sel:snapshotRetentionLimit:ReplicationGroup' :: Maybe Int
snapshotRetentionLimit = Maybe Int
a} :: ReplicationGroup)
replicationGroup_snapshotWindow :: Lens.Lens' ReplicationGroup (Prelude.Maybe Prelude.Text)
replicationGroup_snapshotWindow :: Lens' ReplicationGroup (Maybe Text)
replicationGroup_snapshotWindow = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe Text
snapshotWindow :: Maybe Text
$sel:snapshotWindow:ReplicationGroup' :: ReplicationGroup -> Maybe Text
snapshotWindow} -> Maybe Text
snapshotWindow) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe Text
a -> ReplicationGroup
s {$sel:snapshotWindow:ReplicationGroup' :: Maybe Text
snapshotWindow = Maybe Text
a} :: ReplicationGroup)
replicationGroup_snapshottingClusterId :: Lens.Lens' ReplicationGroup (Prelude.Maybe Prelude.Text)
replicationGroup_snapshottingClusterId :: Lens' ReplicationGroup (Maybe Text)
replicationGroup_snapshottingClusterId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe Text
snapshottingClusterId :: Maybe Text
$sel:snapshottingClusterId:ReplicationGroup' :: ReplicationGroup -> Maybe Text
snapshottingClusterId} -> Maybe Text
snapshottingClusterId) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe Text
a -> ReplicationGroup
s {$sel:snapshottingClusterId:ReplicationGroup' :: Maybe Text
snapshottingClusterId = Maybe Text
a} :: ReplicationGroup)
replicationGroup_status :: Lens.Lens' ReplicationGroup (Prelude.Maybe Prelude.Text)
replicationGroup_status :: Lens' ReplicationGroup (Maybe Text)
replicationGroup_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe Text
status :: Maybe Text
$sel:status:ReplicationGroup' :: ReplicationGroup -> Maybe Text
status} -> Maybe Text
status) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe Text
a -> ReplicationGroup
s {$sel:status:ReplicationGroup' :: Maybe Text
status = Maybe Text
a} :: ReplicationGroup)
replicationGroup_transitEncryptionEnabled :: Lens.Lens' ReplicationGroup (Prelude.Maybe Prelude.Bool)
replicationGroup_transitEncryptionEnabled :: Lens' ReplicationGroup (Maybe Bool)
replicationGroup_transitEncryptionEnabled = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe Bool
transitEncryptionEnabled :: Maybe Bool
$sel:transitEncryptionEnabled:ReplicationGroup' :: ReplicationGroup -> Maybe Bool
transitEncryptionEnabled} -> Maybe Bool
transitEncryptionEnabled) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe Bool
a -> ReplicationGroup
s {$sel:transitEncryptionEnabled:ReplicationGroup' :: Maybe Bool
transitEncryptionEnabled = Maybe Bool
a} :: ReplicationGroup)
replicationGroup_transitEncryptionMode :: Lens.Lens' ReplicationGroup (Prelude.Maybe TransitEncryptionMode)
replicationGroup_transitEncryptionMode :: Lens' ReplicationGroup (Maybe TransitEncryptionMode)
replicationGroup_transitEncryptionMode = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe TransitEncryptionMode
transitEncryptionMode :: Maybe TransitEncryptionMode
$sel:transitEncryptionMode:ReplicationGroup' :: ReplicationGroup -> Maybe TransitEncryptionMode
transitEncryptionMode} -> Maybe TransitEncryptionMode
transitEncryptionMode) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe TransitEncryptionMode
a -> ReplicationGroup
s {$sel:transitEncryptionMode:ReplicationGroup' :: Maybe TransitEncryptionMode
transitEncryptionMode = Maybe TransitEncryptionMode
a} :: ReplicationGroup)
replicationGroup_userGroupIds :: Lens.Lens' ReplicationGroup (Prelude.Maybe [Prelude.Text])
replicationGroup_userGroupIds :: Lens' ReplicationGroup (Maybe [Text])
replicationGroup_userGroupIds = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReplicationGroup' {Maybe [Text]
userGroupIds :: Maybe [Text]
$sel:userGroupIds:ReplicationGroup' :: ReplicationGroup -> Maybe [Text]
userGroupIds} -> Maybe [Text]
userGroupIds) (\s :: ReplicationGroup
s@ReplicationGroup' {} Maybe [Text]
a -> ReplicationGroup
s {$sel:userGroupIds:ReplicationGroup' :: Maybe [Text]
userGroupIds = Maybe [Text]
a} :: ReplicationGroup) 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
instance Data.FromXML ReplicationGroup where
parseXML :: [Node] -> Either String ReplicationGroup
parseXML [Node]
x =
Maybe Text
-> Maybe Bool
-> Maybe Bool
-> Maybe ISO8601
-> Maybe Bool
-> Maybe AutomaticFailoverStatus
-> Maybe Text
-> Maybe Bool
-> Maybe Endpoint
-> Maybe DataTieringStatus
-> Maybe Text
-> Maybe GlobalReplicationGroupInfo
-> Maybe IpDiscovery
-> Maybe Text
-> Maybe [LogDeliveryConfiguration]
-> Maybe [Text]
-> Maybe [Text]
-> Maybe MultiAZStatus
-> Maybe NetworkType
-> Maybe [NodeGroup]
-> Maybe ReplicationGroupPendingModifiedValues
-> Maybe ISO8601
-> Maybe Text
-> Maybe Int
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Bool
-> Maybe TransitEncryptionMode
-> Maybe [Text]
-> ReplicationGroup
ReplicationGroup'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"ARN")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"AtRestEncryptionEnabled")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"AuthTokenEnabled")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"AuthTokenLastModifiedDate")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"AutoMinorVersionUpgrade")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"AutomaticFailover")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"CacheNodeType")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"ClusterEnabled")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"ConfigurationEndpoint")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"DataTiering")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"Description")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"GlobalReplicationGroupInfo")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"IpDiscovery")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"KmsKeyId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( [Node]
x
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"LogDeliveryConfigurations"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may
(forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"LogDeliveryConfiguration")
)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( [Node]
x
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"MemberClusters"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may (forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"ClusterId")
)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( [Node]
x
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"MemberClustersOutpostArns"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may
(forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"ReplicationGroupOutpostArn")
)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"MultiAZ")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"NetworkType")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( [Node]
x
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"NodeGroups"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may (forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"NodeGroup")
)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"PendingModifiedValues")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"ReplicationGroupCreateTime")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"ReplicationGroupId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"SnapshotRetentionLimit")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"SnapshotWindow")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"SnapshottingClusterId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"Status")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"TransitEncryptionEnabled")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"TransitEncryptionMode")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( [Node]
x
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"UserGroupIds"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may (forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"member")
)
instance Prelude.Hashable ReplicationGroup where
hashWithSalt :: Int -> ReplicationGroup -> Int
hashWithSalt Int
_salt ReplicationGroup' {Maybe Bool
Maybe Int
Maybe [Text]
Maybe [LogDeliveryConfiguration]
Maybe [NodeGroup]
Maybe Text
Maybe ISO8601
Maybe AutomaticFailoverStatus
Maybe DataTieringStatus
Maybe Endpoint
Maybe GlobalReplicationGroupInfo
Maybe IpDiscovery
Maybe MultiAZStatus
Maybe NetworkType
Maybe TransitEncryptionMode
Maybe ReplicationGroupPendingModifiedValues
userGroupIds :: Maybe [Text]
transitEncryptionMode :: Maybe TransitEncryptionMode
transitEncryptionEnabled :: Maybe Bool
status :: Maybe Text
snapshottingClusterId :: Maybe Text
snapshotWindow :: Maybe Text
snapshotRetentionLimit :: Maybe Int
replicationGroupId :: Maybe Text
replicationGroupCreateTime :: Maybe ISO8601
pendingModifiedValues :: Maybe ReplicationGroupPendingModifiedValues
nodeGroups :: Maybe [NodeGroup]
networkType :: Maybe NetworkType
multiAZ :: Maybe MultiAZStatus
memberClustersOutpostArns :: Maybe [Text]
memberClusters :: Maybe [Text]
logDeliveryConfigurations :: Maybe [LogDeliveryConfiguration]
kmsKeyId :: Maybe Text
ipDiscovery :: Maybe IpDiscovery
globalReplicationGroupInfo :: Maybe GlobalReplicationGroupInfo
description :: Maybe Text
dataTiering :: Maybe DataTieringStatus
configurationEndpoint :: Maybe Endpoint
clusterEnabled :: Maybe Bool
cacheNodeType :: Maybe Text
automaticFailover :: Maybe AutomaticFailoverStatus
autoMinorVersionUpgrade :: Maybe Bool
authTokenLastModifiedDate :: Maybe ISO8601
authTokenEnabled :: Maybe Bool
atRestEncryptionEnabled :: Maybe Bool
arn :: Maybe Text
$sel:userGroupIds:ReplicationGroup' :: ReplicationGroup -> Maybe [Text]
$sel:transitEncryptionMode:ReplicationGroup' :: ReplicationGroup -> Maybe TransitEncryptionMode
$sel:transitEncryptionEnabled:ReplicationGroup' :: ReplicationGroup -> Maybe Bool
$sel:status:ReplicationGroup' :: ReplicationGroup -> Maybe Text
$sel:snapshottingClusterId:ReplicationGroup' :: ReplicationGroup -> Maybe Text
$sel:snapshotWindow:ReplicationGroup' :: ReplicationGroup -> Maybe Text
$sel:snapshotRetentionLimit:ReplicationGroup' :: ReplicationGroup -> Maybe Int
$sel:replicationGroupId:ReplicationGroup' :: ReplicationGroup -> Maybe Text
$sel:replicationGroupCreateTime:ReplicationGroup' :: ReplicationGroup -> Maybe ISO8601
$sel:pendingModifiedValues:ReplicationGroup' :: ReplicationGroup -> Maybe ReplicationGroupPendingModifiedValues
$sel:nodeGroups:ReplicationGroup' :: ReplicationGroup -> Maybe [NodeGroup]
$sel:networkType:ReplicationGroup' :: ReplicationGroup -> Maybe NetworkType
$sel:multiAZ:ReplicationGroup' :: ReplicationGroup -> Maybe MultiAZStatus
$sel:memberClustersOutpostArns:ReplicationGroup' :: ReplicationGroup -> Maybe [Text]
$sel:memberClusters:ReplicationGroup' :: ReplicationGroup -> Maybe [Text]
$sel:logDeliveryConfigurations:ReplicationGroup' :: ReplicationGroup -> Maybe [LogDeliveryConfiguration]
$sel:kmsKeyId:ReplicationGroup' :: ReplicationGroup -> Maybe Text
$sel:ipDiscovery:ReplicationGroup' :: ReplicationGroup -> Maybe IpDiscovery
$sel:globalReplicationGroupInfo:ReplicationGroup' :: ReplicationGroup -> Maybe GlobalReplicationGroupInfo
$sel:description:ReplicationGroup' :: ReplicationGroup -> Maybe Text
$sel:dataTiering:ReplicationGroup' :: ReplicationGroup -> Maybe DataTieringStatus
$sel:configurationEndpoint:ReplicationGroup' :: ReplicationGroup -> Maybe Endpoint
$sel:clusterEnabled:ReplicationGroup' :: ReplicationGroup -> Maybe Bool
$sel:cacheNodeType:ReplicationGroup' :: ReplicationGroup -> Maybe Text
$sel:automaticFailover:ReplicationGroup' :: ReplicationGroup -> Maybe AutomaticFailoverStatus
$sel:autoMinorVersionUpgrade:ReplicationGroup' :: ReplicationGroup -> Maybe Bool
$sel:authTokenLastModifiedDate:ReplicationGroup' :: ReplicationGroup -> Maybe ISO8601
$sel:authTokenEnabled:ReplicationGroup' :: ReplicationGroup -> Maybe Bool
$sel:atRestEncryptionEnabled:ReplicationGroup' :: ReplicationGroup -> Maybe Bool
$sel:arn:ReplicationGroup' :: ReplicationGroup -> 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 Bool
atRestEncryptionEnabled
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
authTokenEnabled
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ISO8601
authTokenLastModifiedDate
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
autoMinorVersionUpgrade
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe AutomaticFailoverStatus
automaticFailover
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
cacheNodeType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
clusterEnabled
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Endpoint
configurationEndpoint
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe DataTieringStatus
dataTiering
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
description
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe GlobalReplicationGroupInfo
globalReplicationGroupInfo
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe IpDiscovery
ipDiscovery
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
kmsKeyId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [LogDeliveryConfiguration]
logDeliveryConfigurations
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [Text]
memberClusters
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [Text]
memberClustersOutpostArns
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe MultiAZStatus
multiAZ
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe NetworkType
networkType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [NodeGroup]
nodeGroups
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ReplicationGroupPendingModifiedValues
pendingModifiedValues
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ISO8601
replicationGroupCreateTime
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
replicationGroupId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
snapshotRetentionLimit
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
snapshotWindow
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
snapshottingClusterId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
status
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
transitEncryptionEnabled
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe TransitEncryptionMode
transitEncryptionMode
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [Text]
userGroupIds
instance Prelude.NFData ReplicationGroup where
rnf :: ReplicationGroup -> ()
rnf ReplicationGroup' {Maybe Bool
Maybe Int
Maybe [Text]
Maybe [LogDeliveryConfiguration]
Maybe [NodeGroup]
Maybe Text
Maybe ISO8601
Maybe AutomaticFailoverStatus
Maybe DataTieringStatus
Maybe Endpoint
Maybe GlobalReplicationGroupInfo
Maybe IpDiscovery
Maybe MultiAZStatus
Maybe NetworkType
Maybe TransitEncryptionMode
Maybe ReplicationGroupPendingModifiedValues
userGroupIds :: Maybe [Text]
transitEncryptionMode :: Maybe TransitEncryptionMode
transitEncryptionEnabled :: Maybe Bool
status :: Maybe Text
snapshottingClusterId :: Maybe Text
snapshotWindow :: Maybe Text
snapshotRetentionLimit :: Maybe Int
replicationGroupId :: Maybe Text
replicationGroupCreateTime :: Maybe ISO8601
pendingModifiedValues :: Maybe ReplicationGroupPendingModifiedValues
nodeGroups :: Maybe [NodeGroup]
networkType :: Maybe NetworkType
multiAZ :: Maybe MultiAZStatus
memberClustersOutpostArns :: Maybe [Text]
memberClusters :: Maybe [Text]
logDeliveryConfigurations :: Maybe [LogDeliveryConfiguration]
kmsKeyId :: Maybe Text
ipDiscovery :: Maybe IpDiscovery
globalReplicationGroupInfo :: Maybe GlobalReplicationGroupInfo
description :: Maybe Text
dataTiering :: Maybe DataTieringStatus
configurationEndpoint :: Maybe Endpoint
clusterEnabled :: Maybe Bool
cacheNodeType :: Maybe Text
automaticFailover :: Maybe AutomaticFailoverStatus
autoMinorVersionUpgrade :: Maybe Bool
authTokenLastModifiedDate :: Maybe ISO8601
authTokenEnabled :: Maybe Bool
atRestEncryptionEnabled :: Maybe Bool
arn :: Maybe Text
$sel:userGroupIds:ReplicationGroup' :: ReplicationGroup -> Maybe [Text]
$sel:transitEncryptionMode:ReplicationGroup' :: ReplicationGroup -> Maybe TransitEncryptionMode
$sel:transitEncryptionEnabled:ReplicationGroup' :: ReplicationGroup -> Maybe Bool
$sel:status:ReplicationGroup' :: ReplicationGroup -> Maybe Text
$sel:snapshottingClusterId:ReplicationGroup' :: ReplicationGroup -> Maybe Text
$sel:snapshotWindow:ReplicationGroup' :: ReplicationGroup -> Maybe Text
$sel:snapshotRetentionLimit:ReplicationGroup' :: ReplicationGroup -> Maybe Int
$sel:replicationGroupId:ReplicationGroup' :: ReplicationGroup -> Maybe Text
$sel:replicationGroupCreateTime:ReplicationGroup' :: ReplicationGroup -> Maybe ISO8601
$sel:pendingModifiedValues:ReplicationGroup' :: ReplicationGroup -> Maybe ReplicationGroupPendingModifiedValues
$sel:nodeGroups:ReplicationGroup' :: ReplicationGroup -> Maybe [NodeGroup]
$sel:networkType:ReplicationGroup' :: ReplicationGroup -> Maybe NetworkType
$sel:multiAZ:ReplicationGroup' :: ReplicationGroup -> Maybe MultiAZStatus
$sel:memberClustersOutpostArns:ReplicationGroup' :: ReplicationGroup -> Maybe [Text]
$sel:memberClusters:ReplicationGroup' :: ReplicationGroup -> Maybe [Text]
$sel:logDeliveryConfigurations:ReplicationGroup' :: ReplicationGroup -> Maybe [LogDeliveryConfiguration]
$sel:kmsKeyId:ReplicationGroup' :: ReplicationGroup -> Maybe Text
$sel:ipDiscovery:ReplicationGroup' :: ReplicationGroup -> Maybe IpDiscovery
$sel:globalReplicationGroupInfo:ReplicationGroup' :: ReplicationGroup -> Maybe GlobalReplicationGroupInfo
$sel:description:ReplicationGroup' :: ReplicationGroup -> Maybe Text
$sel:dataTiering:ReplicationGroup' :: ReplicationGroup -> Maybe DataTieringStatus
$sel:configurationEndpoint:ReplicationGroup' :: ReplicationGroup -> Maybe Endpoint
$sel:clusterEnabled:ReplicationGroup' :: ReplicationGroup -> Maybe Bool
$sel:cacheNodeType:ReplicationGroup' :: ReplicationGroup -> Maybe Text
$sel:automaticFailover:ReplicationGroup' :: ReplicationGroup -> Maybe AutomaticFailoverStatus
$sel:autoMinorVersionUpgrade:ReplicationGroup' :: ReplicationGroup -> Maybe Bool
$sel:authTokenLastModifiedDate:ReplicationGroup' :: ReplicationGroup -> Maybe ISO8601
$sel:authTokenEnabled:ReplicationGroup' :: ReplicationGroup -> Maybe Bool
$sel:atRestEncryptionEnabled:ReplicationGroup' :: ReplicationGroup -> Maybe Bool
$sel:arn:ReplicationGroup' :: ReplicationGroup -> 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 Bool
atRestEncryptionEnabled
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
authTokenEnabled
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ISO8601
authTokenLastModifiedDate
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
autoMinorVersionUpgrade
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe AutomaticFailoverStatus
automaticFailover
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
cacheNodeType
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
clusterEnabled
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Endpoint
configurationEndpoint
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe DataTieringStatus
dataTiering
seq :: forall a b. a -> b -> b
`Prelude.seq` 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 GlobalReplicationGroupInfo
globalReplicationGroupInfo
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe IpDiscovery
ipDiscovery
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 [LogDeliveryConfiguration]
logDeliveryConfigurations
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [Text]
memberClusters
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
Maybe [Text]
memberClustersOutpostArns
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe MultiAZStatus
multiAZ
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe NetworkType
networkType
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [NodeGroup]
nodeGroups
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
Maybe ReplicationGroupPendingModifiedValues
pendingModifiedValues
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
Maybe ISO8601
replicationGroupCreateTime
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
Maybe Text
replicationGroupId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
Maybe Int
snapshotRetentionLimit
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
Maybe Text
snapshotWindow
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
Maybe Text
snapshottingClusterId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
Maybe Text
status
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
Maybe Bool
transitEncryptionEnabled
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
Maybe TransitEncryptionMode
transitEncryptionMode
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
Maybe [Text]
userGroupIds