{-# 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.UpdateAction where
import qualified Amazonka.Core as Core
import Amazonka.ElastiCache.Types.CacheNodeUpdateStatus
import Amazonka.ElastiCache.Types.NodeGroupUpdateStatus
import Amazonka.ElastiCache.Types.ServiceUpdateSeverity
import Amazonka.ElastiCache.Types.ServiceUpdateStatus
import Amazonka.ElastiCache.Types.ServiceUpdateType
import Amazonka.ElastiCache.Types.SlaMet
import Amazonka.ElastiCache.Types.UpdateActionStatus
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
data UpdateAction = UpdateAction'
{
UpdateAction -> Maybe ServiceUpdateType
serviceUpdateType :: Prelude.Maybe ServiceUpdateType,
UpdateAction -> Maybe SlaMet
slaMet :: Prelude.Maybe SlaMet,
UpdateAction -> Maybe Text
cacheClusterId :: Prelude.Maybe Prelude.Text,
UpdateAction -> Maybe Text
serviceUpdateName :: Prelude.Maybe Prelude.Text,
UpdateAction -> Maybe UpdateActionStatus
updateActionStatus :: Prelude.Maybe UpdateActionStatus,
UpdateAction -> Maybe Text
engine :: Prelude.Maybe Prelude.Text,
UpdateAction -> Maybe Text
nodesUpdated :: Prelude.Maybe Prelude.Text,
UpdateAction -> Maybe ISO8601
updateActionStatusModifiedDate :: Prelude.Maybe Core.ISO8601,
UpdateAction -> Maybe ISO8601
serviceUpdateReleaseDate :: Prelude.Maybe Core.ISO8601,
UpdateAction -> Maybe [CacheNodeUpdateStatus]
cacheNodeUpdateStatus :: Prelude.Maybe [CacheNodeUpdateStatus],
UpdateAction -> Maybe ServiceUpdateSeverity
serviceUpdateSeverity :: Prelude.Maybe ServiceUpdateSeverity,
UpdateAction -> Maybe [NodeGroupUpdateStatus]
nodeGroupUpdateStatus :: Prelude.Maybe [NodeGroupUpdateStatus],
UpdateAction -> Maybe ISO8601
serviceUpdateRecommendedApplyByDate :: Prelude.Maybe Core.ISO8601,
UpdateAction -> Maybe ISO8601
updateActionAvailableDate :: Prelude.Maybe Core.ISO8601,
UpdateAction -> Maybe ServiceUpdateStatus
serviceUpdateStatus :: Prelude.Maybe ServiceUpdateStatus,
UpdateAction -> Maybe Text
estimatedUpdateTime :: Prelude.Maybe Prelude.Text,
UpdateAction -> Maybe Text
replicationGroupId :: Prelude.Maybe Prelude.Text
}
deriving (UpdateAction -> UpdateAction -> Bool
(UpdateAction -> UpdateAction -> Bool)
-> (UpdateAction -> UpdateAction -> Bool) -> Eq UpdateAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: UpdateAction -> UpdateAction -> Bool
$c/= :: UpdateAction -> UpdateAction -> Bool
== :: UpdateAction -> UpdateAction -> Bool
$c== :: UpdateAction -> UpdateAction -> Bool
Prelude.Eq, ReadPrec [UpdateAction]
ReadPrec UpdateAction
Int -> ReadS UpdateAction
ReadS [UpdateAction]
(Int -> ReadS UpdateAction)
-> ReadS [UpdateAction]
-> ReadPrec UpdateAction
-> ReadPrec [UpdateAction]
-> Read UpdateAction
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [UpdateAction]
$creadListPrec :: ReadPrec [UpdateAction]
readPrec :: ReadPrec UpdateAction
$creadPrec :: ReadPrec UpdateAction
readList :: ReadS [UpdateAction]
$creadList :: ReadS [UpdateAction]
readsPrec :: Int -> ReadS UpdateAction
$creadsPrec :: Int -> ReadS UpdateAction
Prelude.Read, Int -> UpdateAction -> ShowS
[UpdateAction] -> ShowS
UpdateAction -> String
(Int -> UpdateAction -> ShowS)
-> (UpdateAction -> String)
-> ([UpdateAction] -> ShowS)
-> Show UpdateAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [UpdateAction] -> ShowS
$cshowList :: [UpdateAction] -> ShowS
show :: UpdateAction -> String
$cshow :: UpdateAction -> String
showsPrec :: Int -> UpdateAction -> ShowS
$cshowsPrec :: Int -> UpdateAction -> ShowS
Prelude.Show, (forall x. UpdateAction -> Rep UpdateAction x)
-> (forall x. Rep UpdateAction x -> UpdateAction)
-> Generic UpdateAction
forall x. Rep UpdateAction x -> UpdateAction
forall x. UpdateAction -> Rep UpdateAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep UpdateAction x -> UpdateAction
$cfrom :: forall x. UpdateAction -> Rep UpdateAction x
Prelude.Generic)
newUpdateAction ::
UpdateAction
newUpdateAction :: UpdateAction
newUpdateAction =
UpdateAction' :: Maybe ServiceUpdateType
-> Maybe SlaMet
-> Maybe Text
-> Maybe Text
-> Maybe UpdateActionStatus
-> Maybe Text
-> Maybe Text
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction
UpdateAction'
{ $sel:serviceUpdateType:UpdateAction' :: Maybe ServiceUpdateType
serviceUpdateType = Maybe ServiceUpdateType
forall a. Maybe a
Prelude.Nothing,
$sel:slaMet:UpdateAction' :: Maybe SlaMet
slaMet = Maybe SlaMet
forall a. Maybe a
Prelude.Nothing,
$sel:cacheClusterId:UpdateAction' :: Maybe Text
cacheClusterId = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:serviceUpdateName:UpdateAction' :: Maybe Text
serviceUpdateName = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:updateActionStatus:UpdateAction' :: Maybe UpdateActionStatus
updateActionStatus = Maybe UpdateActionStatus
forall a. Maybe a
Prelude.Nothing,
$sel:engine:UpdateAction' :: Maybe Text
engine = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:nodesUpdated:UpdateAction' :: Maybe Text
nodesUpdated = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:updateActionStatusModifiedDate:UpdateAction' :: Maybe ISO8601
updateActionStatusModifiedDate = Maybe ISO8601
forall a. Maybe a
Prelude.Nothing,
$sel:serviceUpdateReleaseDate:UpdateAction' :: Maybe ISO8601
serviceUpdateReleaseDate = Maybe ISO8601
forall a. Maybe a
Prelude.Nothing,
$sel:cacheNodeUpdateStatus:UpdateAction' :: Maybe [CacheNodeUpdateStatus]
cacheNodeUpdateStatus = Maybe [CacheNodeUpdateStatus]
forall a. Maybe a
Prelude.Nothing,
$sel:serviceUpdateSeverity:UpdateAction' :: Maybe ServiceUpdateSeverity
serviceUpdateSeverity = Maybe ServiceUpdateSeverity
forall a. Maybe a
Prelude.Nothing,
$sel:nodeGroupUpdateStatus:UpdateAction' :: Maybe [NodeGroupUpdateStatus]
nodeGroupUpdateStatus = Maybe [NodeGroupUpdateStatus]
forall a. Maybe a
Prelude.Nothing,
$sel:serviceUpdateRecommendedApplyByDate:UpdateAction' :: Maybe ISO8601
serviceUpdateRecommendedApplyByDate =
Maybe ISO8601
forall a. Maybe a
Prelude.Nothing,
$sel:updateActionAvailableDate:UpdateAction' :: Maybe ISO8601
updateActionAvailableDate = Maybe ISO8601
forall a. Maybe a
Prelude.Nothing,
$sel:serviceUpdateStatus:UpdateAction' :: Maybe ServiceUpdateStatus
serviceUpdateStatus = Maybe ServiceUpdateStatus
forall a. Maybe a
Prelude.Nothing,
$sel:estimatedUpdateTime:UpdateAction' :: Maybe Text
estimatedUpdateTime = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:replicationGroupId:UpdateAction' :: Maybe Text
replicationGroupId = Maybe Text
forall a. Maybe a
Prelude.Nothing
}
updateAction_serviceUpdateType :: Lens.Lens' UpdateAction (Prelude.Maybe ServiceUpdateType)
updateAction_serviceUpdateType :: (Maybe ServiceUpdateType -> f (Maybe ServiceUpdateType))
-> UpdateAction -> f UpdateAction
updateAction_serviceUpdateType = (UpdateAction -> Maybe ServiceUpdateType)
-> (UpdateAction -> Maybe ServiceUpdateType -> UpdateAction)
-> Lens
UpdateAction
UpdateAction
(Maybe ServiceUpdateType)
(Maybe ServiceUpdateType)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAction' {Maybe ServiceUpdateType
serviceUpdateType :: Maybe ServiceUpdateType
$sel:serviceUpdateType:UpdateAction' :: UpdateAction -> Maybe ServiceUpdateType
serviceUpdateType} -> Maybe ServiceUpdateType
serviceUpdateType) (\s :: UpdateAction
s@UpdateAction' {} Maybe ServiceUpdateType
a -> UpdateAction
s {$sel:serviceUpdateType:UpdateAction' :: Maybe ServiceUpdateType
serviceUpdateType = Maybe ServiceUpdateType
a} :: UpdateAction)
updateAction_slaMet :: Lens.Lens' UpdateAction (Prelude.Maybe SlaMet)
updateAction_slaMet :: (Maybe SlaMet -> f (Maybe SlaMet))
-> UpdateAction -> f UpdateAction
updateAction_slaMet = (UpdateAction -> Maybe SlaMet)
-> (UpdateAction -> Maybe SlaMet -> UpdateAction)
-> Lens UpdateAction UpdateAction (Maybe SlaMet) (Maybe SlaMet)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAction' {Maybe SlaMet
slaMet :: Maybe SlaMet
$sel:slaMet:UpdateAction' :: UpdateAction -> Maybe SlaMet
slaMet} -> Maybe SlaMet
slaMet) (\s :: UpdateAction
s@UpdateAction' {} Maybe SlaMet
a -> UpdateAction
s {$sel:slaMet:UpdateAction' :: Maybe SlaMet
slaMet = Maybe SlaMet
a} :: UpdateAction)
updateAction_cacheClusterId :: Lens.Lens' UpdateAction (Prelude.Maybe Prelude.Text)
updateAction_cacheClusterId :: (Maybe Text -> f (Maybe Text)) -> UpdateAction -> f UpdateAction
updateAction_cacheClusterId = (UpdateAction -> Maybe Text)
-> (UpdateAction -> Maybe Text -> UpdateAction)
-> Lens UpdateAction UpdateAction (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAction' {Maybe Text
cacheClusterId :: Maybe Text
$sel:cacheClusterId:UpdateAction' :: UpdateAction -> Maybe Text
cacheClusterId} -> Maybe Text
cacheClusterId) (\s :: UpdateAction
s@UpdateAction' {} Maybe Text
a -> UpdateAction
s {$sel:cacheClusterId:UpdateAction' :: Maybe Text
cacheClusterId = Maybe Text
a} :: UpdateAction)
updateAction_serviceUpdateName :: Lens.Lens' UpdateAction (Prelude.Maybe Prelude.Text)
updateAction_serviceUpdateName :: (Maybe Text -> f (Maybe Text)) -> UpdateAction -> f UpdateAction
updateAction_serviceUpdateName = (UpdateAction -> Maybe Text)
-> (UpdateAction -> Maybe Text -> UpdateAction)
-> Lens UpdateAction UpdateAction (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAction' {Maybe Text
serviceUpdateName :: Maybe Text
$sel:serviceUpdateName:UpdateAction' :: UpdateAction -> Maybe Text
serviceUpdateName} -> Maybe Text
serviceUpdateName) (\s :: UpdateAction
s@UpdateAction' {} Maybe Text
a -> UpdateAction
s {$sel:serviceUpdateName:UpdateAction' :: Maybe Text
serviceUpdateName = Maybe Text
a} :: UpdateAction)
updateAction_updateActionStatus :: Lens.Lens' UpdateAction (Prelude.Maybe UpdateActionStatus)
updateAction_updateActionStatus :: (Maybe UpdateActionStatus -> f (Maybe UpdateActionStatus))
-> UpdateAction -> f UpdateAction
updateAction_updateActionStatus = (UpdateAction -> Maybe UpdateActionStatus)
-> (UpdateAction -> Maybe UpdateActionStatus -> UpdateAction)
-> Lens
UpdateAction
UpdateAction
(Maybe UpdateActionStatus)
(Maybe UpdateActionStatus)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAction' {Maybe UpdateActionStatus
updateActionStatus :: Maybe UpdateActionStatus
$sel:updateActionStatus:UpdateAction' :: UpdateAction -> Maybe UpdateActionStatus
updateActionStatus} -> Maybe UpdateActionStatus
updateActionStatus) (\s :: UpdateAction
s@UpdateAction' {} Maybe UpdateActionStatus
a -> UpdateAction
s {$sel:updateActionStatus:UpdateAction' :: Maybe UpdateActionStatus
updateActionStatus = Maybe UpdateActionStatus
a} :: UpdateAction)
updateAction_engine :: Lens.Lens' UpdateAction (Prelude.Maybe Prelude.Text)
updateAction_engine :: (Maybe Text -> f (Maybe Text)) -> UpdateAction -> f UpdateAction
updateAction_engine = (UpdateAction -> Maybe Text)
-> (UpdateAction -> Maybe Text -> UpdateAction)
-> Lens UpdateAction UpdateAction (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAction' {Maybe Text
engine :: Maybe Text
$sel:engine:UpdateAction' :: UpdateAction -> Maybe Text
engine} -> Maybe Text
engine) (\s :: UpdateAction
s@UpdateAction' {} Maybe Text
a -> UpdateAction
s {$sel:engine:UpdateAction' :: Maybe Text
engine = Maybe Text
a} :: UpdateAction)
updateAction_nodesUpdated :: Lens.Lens' UpdateAction (Prelude.Maybe Prelude.Text)
updateAction_nodesUpdated :: (Maybe Text -> f (Maybe Text)) -> UpdateAction -> f UpdateAction
updateAction_nodesUpdated = (UpdateAction -> Maybe Text)
-> (UpdateAction -> Maybe Text -> UpdateAction)
-> Lens UpdateAction UpdateAction (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAction' {Maybe Text
nodesUpdated :: Maybe Text
$sel:nodesUpdated:UpdateAction' :: UpdateAction -> Maybe Text
nodesUpdated} -> Maybe Text
nodesUpdated) (\s :: UpdateAction
s@UpdateAction' {} Maybe Text
a -> UpdateAction
s {$sel:nodesUpdated:UpdateAction' :: Maybe Text
nodesUpdated = Maybe Text
a} :: UpdateAction)
updateAction_updateActionStatusModifiedDate :: Lens.Lens' UpdateAction (Prelude.Maybe Prelude.UTCTime)
updateAction_updateActionStatusModifiedDate :: (Maybe UTCTime -> f (Maybe UTCTime))
-> UpdateAction -> f UpdateAction
updateAction_updateActionStatusModifiedDate = (UpdateAction -> Maybe ISO8601)
-> (UpdateAction -> Maybe ISO8601 -> UpdateAction)
-> Lens UpdateAction UpdateAction (Maybe ISO8601) (Maybe ISO8601)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAction' {Maybe ISO8601
updateActionStatusModifiedDate :: Maybe ISO8601
$sel:updateActionStatusModifiedDate:UpdateAction' :: UpdateAction -> Maybe ISO8601
updateActionStatusModifiedDate} -> Maybe ISO8601
updateActionStatusModifiedDate) (\s :: UpdateAction
s@UpdateAction' {} Maybe ISO8601
a -> UpdateAction
s {$sel:updateActionStatusModifiedDate:UpdateAction' :: Maybe ISO8601
updateActionStatusModifiedDate = Maybe ISO8601
a} :: UpdateAction) ((Maybe ISO8601 -> f (Maybe ISO8601))
-> UpdateAction -> f UpdateAction)
-> ((Maybe UTCTime -> f (Maybe UTCTime))
-> Maybe ISO8601 -> f (Maybe ISO8601))
-> (Maybe UTCTime -> f (Maybe UTCTime))
-> UpdateAction
-> f UpdateAction
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso ISO8601 ISO8601 UTCTime UTCTime
-> Iso
(Maybe ISO8601) (Maybe ISO8601) (Maybe UTCTime) (Maybe UTCTime)
forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping AnIso ISO8601 ISO8601 UTCTime UTCTime
forall (a :: Format). Iso' (Time a) UTCTime
Core._Time
updateAction_serviceUpdateReleaseDate :: Lens.Lens' UpdateAction (Prelude.Maybe Prelude.UTCTime)
updateAction_serviceUpdateReleaseDate :: (Maybe UTCTime -> f (Maybe UTCTime))
-> UpdateAction -> f UpdateAction
updateAction_serviceUpdateReleaseDate = (UpdateAction -> Maybe ISO8601)
-> (UpdateAction -> Maybe ISO8601 -> UpdateAction)
-> Lens UpdateAction UpdateAction (Maybe ISO8601) (Maybe ISO8601)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAction' {Maybe ISO8601
serviceUpdateReleaseDate :: Maybe ISO8601
$sel:serviceUpdateReleaseDate:UpdateAction' :: UpdateAction -> Maybe ISO8601
serviceUpdateReleaseDate} -> Maybe ISO8601
serviceUpdateReleaseDate) (\s :: UpdateAction
s@UpdateAction' {} Maybe ISO8601
a -> UpdateAction
s {$sel:serviceUpdateReleaseDate:UpdateAction' :: Maybe ISO8601
serviceUpdateReleaseDate = Maybe ISO8601
a} :: UpdateAction) ((Maybe ISO8601 -> f (Maybe ISO8601))
-> UpdateAction -> f UpdateAction)
-> ((Maybe UTCTime -> f (Maybe UTCTime))
-> Maybe ISO8601 -> f (Maybe ISO8601))
-> (Maybe UTCTime -> f (Maybe UTCTime))
-> UpdateAction
-> f UpdateAction
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso ISO8601 ISO8601 UTCTime UTCTime
-> Iso
(Maybe ISO8601) (Maybe ISO8601) (Maybe UTCTime) (Maybe UTCTime)
forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping AnIso ISO8601 ISO8601 UTCTime UTCTime
forall (a :: Format). Iso' (Time a) UTCTime
Core._Time
updateAction_cacheNodeUpdateStatus :: Lens.Lens' UpdateAction (Prelude.Maybe [CacheNodeUpdateStatus])
updateAction_cacheNodeUpdateStatus :: (Maybe [CacheNodeUpdateStatus]
-> f (Maybe [CacheNodeUpdateStatus]))
-> UpdateAction -> f UpdateAction
updateAction_cacheNodeUpdateStatus = (UpdateAction -> Maybe [CacheNodeUpdateStatus])
-> (UpdateAction -> Maybe [CacheNodeUpdateStatus] -> UpdateAction)
-> Lens
UpdateAction
UpdateAction
(Maybe [CacheNodeUpdateStatus])
(Maybe [CacheNodeUpdateStatus])
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAction' {Maybe [CacheNodeUpdateStatus]
cacheNodeUpdateStatus :: Maybe [CacheNodeUpdateStatus]
$sel:cacheNodeUpdateStatus:UpdateAction' :: UpdateAction -> Maybe [CacheNodeUpdateStatus]
cacheNodeUpdateStatus} -> Maybe [CacheNodeUpdateStatus]
cacheNodeUpdateStatus) (\s :: UpdateAction
s@UpdateAction' {} Maybe [CacheNodeUpdateStatus]
a -> UpdateAction
s {$sel:cacheNodeUpdateStatus:UpdateAction' :: Maybe [CacheNodeUpdateStatus]
cacheNodeUpdateStatus = Maybe [CacheNodeUpdateStatus]
a} :: UpdateAction) ((Maybe [CacheNodeUpdateStatus]
-> f (Maybe [CacheNodeUpdateStatus]))
-> UpdateAction -> f UpdateAction)
-> ((Maybe [CacheNodeUpdateStatus]
-> f (Maybe [CacheNodeUpdateStatus]))
-> Maybe [CacheNodeUpdateStatus]
-> f (Maybe [CacheNodeUpdateStatus]))
-> (Maybe [CacheNodeUpdateStatus]
-> f (Maybe [CacheNodeUpdateStatus]))
-> UpdateAction
-> f UpdateAction
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso
[CacheNodeUpdateStatus]
[CacheNodeUpdateStatus]
[CacheNodeUpdateStatus]
[CacheNodeUpdateStatus]
-> Iso
(Maybe [CacheNodeUpdateStatus])
(Maybe [CacheNodeUpdateStatus])
(Maybe [CacheNodeUpdateStatus])
(Maybe [CacheNodeUpdateStatus])
forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping AnIso
[CacheNodeUpdateStatus]
[CacheNodeUpdateStatus]
[CacheNodeUpdateStatus]
[CacheNodeUpdateStatus]
forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
updateAction_serviceUpdateSeverity :: Lens.Lens' UpdateAction (Prelude.Maybe ServiceUpdateSeverity)
updateAction_serviceUpdateSeverity :: (Maybe ServiceUpdateSeverity -> f (Maybe ServiceUpdateSeverity))
-> UpdateAction -> f UpdateAction
updateAction_serviceUpdateSeverity = (UpdateAction -> Maybe ServiceUpdateSeverity)
-> (UpdateAction -> Maybe ServiceUpdateSeverity -> UpdateAction)
-> Lens
UpdateAction
UpdateAction
(Maybe ServiceUpdateSeverity)
(Maybe ServiceUpdateSeverity)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAction' {Maybe ServiceUpdateSeverity
serviceUpdateSeverity :: Maybe ServiceUpdateSeverity
$sel:serviceUpdateSeverity:UpdateAction' :: UpdateAction -> Maybe ServiceUpdateSeverity
serviceUpdateSeverity} -> Maybe ServiceUpdateSeverity
serviceUpdateSeverity) (\s :: UpdateAction
s@UpdateAction' {} Maybe ServiceUpdateSeverity
a -> UpdateAction
s {$sel:serviceUpdateSeverity:UpdateAction' :: Maybe ServiceUpdateSeverity
serviceUpdateSeverity = Maybe ServiceUpdateSeverity
a} :: UpdateAction)
updateAction_nodeGroupUpdateStatus :: Lens.Lens' UpdateAction (Prelude.Maybe [NodeGroupUpdateStatus])
updateAction_nodeGroupUpdateStatus :: (Maybe [NodeGroupUpdateStatus]
-> f (Maybe [NodeGroupUpdateStatus]))
-> UpdateAction -> f UpdateAction
updateAction_nodeGroupUpdateStatus = (UpdateAction -> Maybe [NodeGroupUpdateStatus])
-> (UpdateAction -> Maybe [NodeGroupUpdateStatus] -> UpdateAction)
-> Lens
UpdateAction
UpdateAction
(Maybe [NodeGroupUpdateStatus])
(Maybe [NodeGroupUpdateStatus])
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAction' {Maybe [NodeGroupUpdateStatus]
nodeGroupUpdateStatus :: Maybe [NodeGroupUpdateStatus]
$sel:nodeGroupUpdateStatus:UpdateAction' :: UpdateAction -> Maybe [NodeGroupUpdateStatus]
nodeGroupUpdateStatus} -> Maybe [NodeGroupUpdateStatus]
nodeGroupUpdateStatus) (\s :: UpdateAction
s@UpdateAction' {} Maybe [NodeGroupUpdateStatus]
a -> UpdateAction
s {$sel:nodeGroupUpdateStatus:UpdateAction' :: Maybe [NodeGroupUpdateStatus]
nodeGroupUpdateStatus = Maybe [NodeGroupUpdateStatus]
a} :: UpdateAction) ((Maybe [NodeGroupUpdateStatus]
-> f (Maybe [NodeGroupUpdateStatus]))
-> UpdateAction -> f UpdateAction)
-> ((Maybe [NodeGroupUpdateStatus]
-> f (Maybe [NodeGroupUpdateStatus]))
-> Maybe [NodeGroupUpdateStatus]
-> f (Maybe [NodeGroupUpdateStatus]))
-> (Maybe [NodeGroupUpdateStatus]
-> f (Maybe [NodeGroupUpdateStatus]))
-> UpdateAction
-> f UpdateAction
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso
[NodeGroupUpdateStatus]
[NodeGroupUpdateStatus]
[NodeGroupUpdateStatus]
[NodeGroupUpdateStatus]
-> Iso
(Maybe [NodeGroupUpdateStatus])
(Maybe [NodeGroupUpdateStatus])
(Maybe [NodeGroupUpdateStatus])
(Maybe [NodeGroupUpdateStatus])
forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping AnIso
[NodeGroupUpdateStatus]
[NodeGroupUpdateStatus]
[NodeGroupUpdateStatus]
[NodeGroupUpdateStatus]
forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
updateAction_serviceUpdateRecommendedApplyByDate :: Lens.Lens' UpdateAction (Prelude.Maybe Prelude.UTCTime)
updateAction_serviceUpdateRecommendedApplyByDate :: (Maybe UTCTime -> f (Maybe UTCTime))
-> UpdateAction -> f UpdateAction
updateAction_serviceUpdateRecommendedApplyByDate = (UpdateAction -> Maybe ISO8601)
-> (UpdateAction -> Maybe ISO8601 -> UpdateAction)
-> Lens UpdateAction UpdateAction (Maybe ISO8601) (Maybe ISO8601)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAction' {Maybe ISO8601
serviceUpdateRecommendedApplyByDate :: Maybe ISO8601
$sel:serviceUpdateRecommendedApplyByDate:UpdateAction' :: UpdateAction -> Maybe ISO8601
serviceUpdateRecommendedApplyByDate} -> Maybe ISO8601
serviceUpdateRecommendedApplyByDate) (\s :: UpdateAction
s@UpdateAction' {} Maybe ISO8601
a -> UpdateAction
s {$sel:serviceUpdateRecommendedApplyByDate:UpdateAction' :: Maybe ISO8601
serviceUpdateRecommendedApplyByDate = Maybe ISO8601
a} :: UpdateAction) ((Maybe ISO8601 -> f (Maybe ISO8601))
-> UpdateAction -> f UpdateAction)
-> ((Maybe UTCTime -> f (Maybe UTCTime))
-> Maybe ISO8601 -> f (Maybe ISO8601))
-> (Maybe UTCTime -> f (Maybe UTCTime))
-> UpdateAction
-> f UpdateAction
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso ISO8601 ISO8601 UTCTime UTCTime
-> Iso
(Maybe ISO8601) (Maybe ISO8601) (Maybe UTCTime) (Maybe UTCTime)
forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping AnIso ISO8601 ISO8601 UTCTime UTCTime
forall (a :: Format). Iso' (Time a) UTCTime
Core._Time
updateAction_updateActionAvailableDate :: Lens.Lens' UpdateAction (Prelude.Maybe Prelude.UTCTime)
updateAction_updateActionAvailableDate :: (Maybe UTCTime -> f (Maybe UTCTime))
-> UpdateAction -> f UpdateAction
updateAction_updateActionAvailableDate = (UpdateAction -> Maybe ISO8601)
-> (UpdateAction -> Maybe ISO8601 -> UpdateAction)
-> Lens UpdateAction UpdateAction (Maybe ISO8601) (Maybe ISO8601)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAction' {Maybe ISO8601
updateActionAvailableDate :: Maybe ISO8601
$sel:updateActionAvailableDate:UpdateAction' :: UpdateAction -> Maybe ISO8601
updateActionAvailableDate} -> Maybe ISO8601
updateActionAvailableDate) (\s :: UpdateAction
s@UpdateAction' {} Maybe ISO8601
a -> UpdateAction
s {$sel:updateActionAvailableDate:UpdateAction' :: Maybe ISO8601
updateActionAvailableDate = Maybe ISO8601
a} :: UpdateAction) ((Maybe ISO8601 -> f (Maybe ISO8601))
-> UpdateAction -> f UpdateAction)
-> ((Maybe UTCTime -> f (Maybe UTCTime))
-> Maybe ISO8601 -> f (Maybe ISO8601))
-> (Maybe UTCTime -> f (Maybe UTCTime))
-> UpdateAction
-> f UpdateAction
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso ISO8601 ISO8601 UTCTime UTCTime
-> Iso
(Maybe ISO8601) (Maybe ISO8601) (Maybe UTCTime) (Maybe UTCTime)
forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping AnIso ISO8601 ISO8601 UTCTime UTCTime
forall (a :: Format). Iso' (Time a) UTCTime
Core._Time
updateAction_serviceUpdateStatus :: Lens.Lens' UpdateAction (Prelude.Maybe ServiceUpdateStatus)
updateAction_serviceUpdateStatus :: (Maybe ServiceUpdateStatus -> f (Maybe ServiceUpdateStatus))
-> UpdateAction -> f UpdateAction
updateAction_serviceUpdateStatus = (UpdateAction -> Maybe ServiceUpdateStatus)
-> (UpdateAction -> Maybe ServiceUpdateStatus -> UpdateAction)
-> Lens
UpdateAction
UpdateAction
(Maybe ServiceUpdateStatus)
(Maybe ServiceUpdateStatus)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAction' {Maybe ServiceUpdateStatus
serviceUpdateStatus :: Maybe ServiceUpdateStatus
$sel:serviceUpdateStatus:UpdateAction' :: UpdateAction -> Maybe ServiceUpdateStatus
serviceUpdateStatus} -> Maybe ServiceUpdateStatus
serviceUpdateStatus) (\s :: UpdateAction
s@UpdateAction' {} Maybe ServiceUpdateStatus
a -> UpdateAction
s {$sel:serviceUpdateStatus:UpdateAction' :: Maybe ServiceUpdateStatus
serviceUpdateStatus = Maybe ServiceUpdateStatus
a} :: UpdateAction)
updateAction_estimatedUpdateTime :: Lens.Lens' UpdateAction (Prelude.Maybe Prelude.Text)
updateAction_estimatedUpdateTime :: (Maybe Text -> f (Maybe Text)) -> UpdateAction -> f UpdateAction
updateAction_estimatedUpdateTime = (UpdateAction -> Maybe Text)
-> (UpdateAction -> Maybe Text -> UpdateAction)
-> Lens UpdateAction UpdateAction (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAction' {Maybe Text
estimatedUpdateTime :: Maybe Text
$sel:estimatedUpdateTime:UpdateAction' :: UpdateAction -> Maybe Text
estimatedUpdateTime} -> Maybe Text
estimatedUpdateTime) (\s :: UpdateAction
s@UpdateAction' {} Maybe Text
a -> UpdateAction
s {$sel:estimatedUpdateTime:UpdateAction' :: Maybe Text
estimatedUpdateTime = Maybe Text
a} :: UpdateAction)
updateAction_replicationGroupId :: Lens.Lens' UpdateAction (Prelude.Maybe Prelude.Text)
updateAction_replicationGroupId :: (Maybe Text -> f (Maybe Text)) -> UpdateAction -> f UpdateAction
updateAction_replicationGroupId = (UpdateAction -> Maybe Text)
-> (UpdateAction -> Maybe Text -> UpdateAction)
-> Lens UpdateAction UpdateAction (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAction' {Maybe Text
replicationGroupId :: Maybe Text
$sel:replicationGroupId:UpdateAction' :: UpdateAction -> Maybe Text
replicationGroupId} -> Maybe Text
replicationGroupId) (\s :: UpdateAction
s@UpdateAction' {} Maybe Text
a -> UpdateAction
s {$sel:replicationGroupId:UpdateAction' :: Maybe Text
replicationGroupId = Maybe Text
a} :: UpdateAction)
instance Core.FromXML UpdateAction where
parseXML :: [Node] -> Either String UpdateAction
parseXML [Node]
x =
Maybe ServiceUpdateType
-> Maybe SlaMet
-> Maybe Text
-> Maybe Text
-> Maybe UpdateActionStatus
-> Maybe Text
-> Maybe Text
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction
UpdateAction'
(Maybe ServiceUpdateType
-> Maybe SlaMet
-> Maybe Text
-> Maybe Text
-> Maybe UpdateActionStatus
-> Maybe Text
-> Maybe Text
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
-> Either String (Maybe ServiceUpdateType)
-> Either
String
(Maybe SlaMet
-> Maybe Text
-> Maybe Text
-> Maybe UpdateActionStatus
-> Maybe Text
-> Maybe Text
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> ([Node]
x [Node] -> Text -> Either String (Maybe ServiceUpdateType)
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Core..@? Text
"ServiceUpdateType")
Either
String
(Maybe SlaMet
-> Maybe Text
-> Maybe Text
-> Maybe UpdateActionStatus
-> Maybe Text
-> Maybe Text
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
-> Either String (Maybe SlaMet)
-> Either
String
(Maybe Text
-> Maybe Text
-> Maybe UpdateActionStatus
-> Maybe Text
-> Maybe Text
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x [Node] -> Text -> Either String (Maybe SlaMet)
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Core..@? Text
"SlaMet")
Either
String
(Maybe Text
-> Maybe Text
-> Maybe UpdateActionStatus
-> Maybe Text
-> Maybe Text
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
-> Either String (Maybe Text)
-> Either
String
(Maybe Text
-> Maybe UpdateActionStatus
-> Maybe Text
-> Maybe Text
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x [Node] -> Text -> Either String (Maybe Text)
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Core..@? Text
"CacheClusterId")
Either
String
(Maybe Text
-> Maybe UpdateActionStatus
-> Maybe Text
-> Maybe Text
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
-> Either String (Maybe Text)
-> Either
String
(Maybe UpdateActionStatus
-> Maybe Text
-> Maybe Text
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x [Node] -> Text -> Either String (Maybe Text)
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Core..@? Text
"ServiceUpdateName")
Either
String
(Maybe UpdateActionStatus
-> Maybe Text
-> Maybe Text
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
-> Either String (Maybe UpdateActionStatus)
-> Either
String
(Maybe Text
-> Maybe Text
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x [Node] -> Text -> Either String (Maybe UpdateActionStatus)
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Core..@? Text
"UpdateActionStatus")
Either
String
(Maybe Text
-> Maybe Text
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
-> Either String (Maybe Text)
-> Either
String
(Maybe Text
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x [Node] -> Text -> Either String (Maybe Text)
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Core..@? Text
"Engine")
Either
String
(Maybe Text
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
-> Either String (Maybe Text)
-> Either
String
(Maybe ISO8601
-> Maybe ISO8601
-> Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x [Node] -> Text -> Either String (Maybe Text)
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Core..@? Text
"NodesUpdated")
Either
String
(Maybe ISO8601
-> Maybe ISO8601
-> Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
-> Either String (Maybe ISO8601)
-> Either
String
(Maybe ISO8601
-> Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x [Node] -> Text -> Either String (Maybe ISO8601)
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Core..@? Text
"UpdateActionStatusModifiedDate")
Either
String
(Maybe ISO8601
-> Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
-> Either String (Maybe ISO8601)
-> Either
String
(Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x [Node] -> Text -> Either String (Maybe ISO8601)
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Core..@? Text
"ServiceUpdateReleaseDate")
Either
String
(Maybe [CacheNodeUpdateStatus]
-> Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
-> Either String (Maybe [CacheNodeUpdateStatus])
-> Either
String
(Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( [Node]
x [Node] -> Text -> Either String (Maybe [Node])
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Core..@? Text
"CacheNodeUpdateStatus"
Either String (Maybe [Node]) -> [Node] -> Either String [Node]
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ [Node]
forall a. Monoid a => a
Prelude.mempty
Either String [Node]
-> ([Node] -> Either String (Maybe [CacheNodeUpdateStatus]))
-> Either String (Maybe [CacheNodeUpdateStatus])
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= ([Node] -> Either String [CacheNodeUpdateStatus])
-> [Node] -> Either String (Maybe [CacheNodeUpdateStatus])
forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may (Text -> [Node] -> Either String [CacheNodeUpdateStatus]
forall a. FromXML a => Text -> [Node] -> Either String [a]
Core.parseXMLList Text
"CacheNodeUpdateStatus")
)
Either
String
(Maybe ServiceUpdateSeverity
-> Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
-> Either String (Maybe ServiceUpdateSeverity)
-> Either
String
(Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x [Node] -> Text -> Either String (Maybe ServiceUpdateSeverity)
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Core..@? Text
"ServiceUpdateSeverity")
Either
String
(Maybe [NodeGroupUpdateStatus]
-> Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
-> Either String (Maybe [NodeGroupUpdateStatus])
-> Either
String
(Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( [Node]
x [Node] -> Text -> Either String (Maybe [Node])
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Core..@? Text
"NodeGroupUpdateStatus"
Either String (Maybe [Node]) -> [Node] -> Either String [Node]
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ [Node]
forall a. Monoid a => a
Prelude.mempty
Either String [Node]
-> ([Node] -> Either String (Maybe [NodeGroupUpdateStatus]))
-> Either String (Maybe [NodeGroupUpdateStatus])
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= ([Node] -> Either String [NodeGroupUpdateStatus])
-> [Node] -> Either String (Maybe [NodeGroupUpdateStatus])
forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may (Text -> [Node] -> Either String [NodeGroupUpdateStatus]
forall a. FromXML a => Text -> [Node] -> Either String [a]
Core.parseXMLList Text
"NodeGroupUpdateStatus")
)
Either
String
(Maybe ISO8601
-> Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
-> Either String (Maybe ISO8601)
-> Either
String
(Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x [Node] -> Text -> Either String (Maybe ISO8601)
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Core..@? Text
"ServiceUpdateRecommendedApplyByDate")
Either
String
(Maybe ISO8601
-> Maybe ServiceUpdateStatus
-> Maybe Text
-> Maybe Text
-> UpdateAction)
-> Either String (Maybe ISO8601)
-> Either
String
(Maybe ServiceUpdateStatus
-> Maybe Text -> Maybe Text -> UpdateAction)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x [Node] -> Text -> Either String (Maybe ISO8601)
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Core..@? Text
"UpdateActionAvailableDate")
Either
String
(Maybe ServiceUpdateStatus
-> Maybe Text -> Maybe Text -> UpdateAction)
-> Either String (Maybe ServiceUpdateStatus)
-> Either String (Maybe Text -> Maybe Text -> UpdateAction)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x [Node] -> Text -> Either String (Maybe ServiceUpdateStatus)
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Core..@? Text
"ServiceUpdateStatus")
Either String (Maybe Text -> Maybe Text -> UpdateAction)
-> Either String (Maybe Text)
-> Either String (Maybe Text -> UpdateAction)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x [Node] -> Text -> Either String (Maybe Text)
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Core..@? Text
"EstimatedUpdateTime")
Either String (Maybe Text -> UpdateAction)
-> Either String (Maybe Text) -> Either String UpdateAction
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x [Node] -> Text -> Either String (Maybe Text)
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Core..@? Text
"ReplicationGroupId")
instance Prelude.Hashable UpdateAction
instance Prelude.NFData UpdateAction