{-# 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 #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.RDS.Types.DBInstanceAutomatedBackup
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.RDS.Types.DBInstanceAutomatedBackup where

import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude
import Amazonka.RDS.Types.DBInstanceAutomatedBackupsReplication
import Amazonka.RDS.Types.RestoreWindow

-- | An automated backup of a DB instance. It consists of system backups,
-- transaction logs, and the database instance properties that existed at
-- the time you deleted the source instance.
--
-- /See:/ 'newDBInstanceAutomatedBackup' smart constructor.
data DBInstanceAutomatedBackup = DBInstanceAutomatedBackup'
  { -- | Specifies the allocated storage size in gibibytes (GiB).
    DBInstanceAutomatedBackup -> Maybe Int
allocatedStorage :: Prelude.Maybe Prelude.Int,
    -- | The Availability Zone that the automated backup was created in. For
    -- information on Amazon Web Services Regions and Availability Zones, see
    -- <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html Regions and Availability Zones>.
    DBInstanceAutomatedBackup -> Maybe Text
availabilityZone :: Prelude.Maybe Prelude.Text,
    -- | The retention period for the automated backups.
    DBInstanceAutomatedBackup -> Maybe Int
backupRetentionPeriod :: Prelude.Maybe Prelude.Int,
    -- | Specifies where automated backups are stored: Amazon Web Services
    -- Outposts or the Amazon Web Services Region.
    DBInstanceAutomatedBackup -> Maybe Text
backupTarget :: Prelude.Maybe Prelude.Text,
    -- | The Amazon Resource Name (ARN) for the automated backups.
    DBInstanceAutomatedBackup -> Maybe Text
dbInstanceArn :: Prelude.Maybe Prelude.Text,
    -- | The Amazon Resource Name (ARN) for the replicated automated backups.
    DBInstanceAutomatedBackup -> Maybe Text
dbInstanceAutomatedBackupsArn :: Prelude.Maybe Prelude.Text,
    -- | The list of replications to different Amazon Web Services Regions
    -- associated with the automated backup.
    DBInstanceAutomatedBackup
-> Maybe [DBInstanceAutomatedBackupsReplication]
dbInstanceAutomatedBackupsReplications :: Prelude.Maybe [DBInstanceAutomatedBackupsReplication],
    -- | The customer id of the instance that is\/was associated with the
    -- automated backup.
    DBInstanceAutomatedBackup -> Maybe Text
dbInstanceIdentifier :: Prelude.Maybe Prelude.Text,
    -- | The identifier for the source DB instance, which can\'t be changed and
    -- which is unique to an Amazon Web Services Region.
    DBInstanceAutomatedBackup -> Maybe Text
dbiResourceId :: Prelude.Maybe Prelude.Text,
    -- | Specifies whether the automated backup is encrypted.
    DBInstanceAutomatedBackup -> Maybe Bool
encrypted :: Prelude.Maybe Prelude.Bool,
    -- | The name of the database engine for this automated backup.
    DBInstanceAutomatedBackup -> Maybe Text
engine :: Prelude.Maybe Prelude.Text,
    -- | The version of the database engine for the automated backup.
    DBInstanceAutomatedBackup -> Maybe Text
engineVersion :: Prelude.Maybe Prelude.Text,
    -- | True if mapping of Amazon Web Services Identity and Access Management
    -- (IAM) accounts to database accounts is enabled, and otherwise false.
    DBInstanceAutomatedBackup -> Maybe Bool
iAMDatabaseAuthenticationEnabled :: Prelude.Maybe Prelude.Bool,
    -- | Provides the date and time that the DB instance was created.
    DBInstanceAutomatedBackup -> Maybe ISO8601
instanceCreateTime :: Prelude.Maybe Data.ISO8601,
    -- | The IOPS (I\/O operations per second) value for the automated backup.
    DBInstanceAutomatedBackup -> Maybe Int
iops :: Prelude.Maybe Prelude.Int,
    -- | The Amazon Web Services KMS key ID for an automated backup.
    --
    -- The Amazon Web Services KMS key identifier is the key ARN, key ID, alias
    -- ARN, or alias name for the KMS key.
    DBInstanceAutomatedBackup -> Maybe Text
kmsKeyId :: Prelude.Maybe Prelude.Text,
    -- | License model information for the automated backup.
    DBInstanceAutomatedBackup -> Maybe Text
licenseModel :: Prelude.Maybe Prelude.Text,
    -- | The license model of an automated backup.
    DBInstanceAutomatedBackup -> Maybe Text
masterUsername :: Prelude.Maybe Prelude.Text,
    -- | The option group the automated backup is associated with. If omitted,
    -- the default option group for the engine specified is used.
    DBInstanceAutomatedBackup -> Maybe Text
optionGroupName :: Prelude.Maybe Prelude.Text,
    -- | The port number that the automated backup used for connections.
    --
    -- Default: Inherits from the source DB instance
    --
    -- Valid Values: @1150-65535@
    DBInstanceAutomatedBackup -> Maybe Int
port :: Prelude.Maybe Prelude.Int,
    -- | The Amazon Web Services Region associated with the automated backup.
    DBInstanceAutomatedBackup -> Maybe Text
region :: Prelude.Maybe Prelude.Text,
    -- | Earliest and latest time an instance can be restored to.
    DBInstanceAutomatedBackup -> Maybe RestoreWindow
restoreWindow :: Prelude.Maybe RestoreWindow,
    -- | Provides a list of status information for an automated backup:
    --
    -- -   @active@ - automated backups for current instances
    --
    -- -   @retained@ - automated backups for deleted instances
    --
    -- -   @creating@ - automated backups that are waiting for the first
    --     automated snapshot to be available.
    DBInstanceAutomatedBackup -> Maybe Text
status :: Prelude.Maybe Prelude.Text,
    -- | Specifies the storage throughput for the automated backup.
    DBInstanceAutomatedBackup -> Maybe Int
storageThroughput :: Prelude.Maybe Prelude.Int,
    -- | Specifies the storage type associated with the automated backup.
    DBInstanceAutomatedBackup -> Maybe Text
storageType :: Prelude.Maybe Prelude.Text,
    -- | The ARN from the key store with which the automated backup is associated
    -- for TDE encryption.
    DBInstanceAutomatedBackup -> Maybe Text
tdeCredentialArn :: Prelude.Maybe Prelude.Text,
    -- | The time zone of the automated backup. In most cases, the @Timezone@
    -- element is empty. @Timezone@ content appears only for Microsoft SQL
    -- Server DB instances that were created with a time zone specified.
    DBInstanceAutomatedBackup -> Maybe Text
timezone :: Prelude.Maybe Prelude.Text,
    -- | Provides the VPC ID associated with the DB instance.
    DBInstanceAutomatedBackup -> Maybe Text
vpcId :: Prelude.Maybe Prelude.Text
  }
  deriving (DBInstanceAutomatedBackup -> DBInstanceAutomatedBackup -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DBInstanceAutomatedBackup -> DBInstanceAutomatedBackup -> Bool
$c/= :: DBInstanceAutomatedBackup -> DBInstanceAutomatedBackup -> Bool
== :: DBInstanceAutomatedBackup -> DBInstanceAutomatedBackup -> Bool
$c== :: DBInstanceAutomatedBackup -> DBInstanceAutomatedBackup -> Bool
Prelude.Eq, ReadPrec [DBInstanceAutomatedBackup]
ReadPrec DBInstanceAutomatedBackup
Int -> ReadS DBInstanceAutomatedBackup
ReadS [DBInstanceAutomatedBackup]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DBInstanceAutomatedBackup]
$creadListPrec :: ReadPrec [DBInstanceAutomatedBackup]
readPrec :: ReadPrec DBInstanceAutomatedBackup
$creadPrec :: ReadPrec DBInstanceAutomatedBackup
readList :: ReadS [DBInstanceAutomatedBackup]
$creadList :: ReadS [DBInstanceAutomatedBackup]
readsPrec :: Int -> ReadS DBInstanceAutomatedBackup
$creadsPrec :: Int -> ReadS DBInstanceAutomatedBackup
Prelude.Read, Int -> DBInstanceAutomatedBackup -> ShowS
[DBInstanceAutomatedBackup] -> ShowS
DBInstanceAutomatedBackup -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DBInstanceAutomatedBackup] -> ShowS
$cshowList :: [DBInstanceAutomatedBackup] -> ShowS
show :: DBInstanceAutomatedBackup -> String
$cshow :: DBInstanceAutomatedBackup -> String
showsPrec :: Int -> DBInstanceAutomatedBackup -> ShowS
$cshowsPrec :: Int -> DBInstanceAutomatedBackup -> ShowS
Prelude.Show, forall x.
Rep DBInstanceAutomatedBackup x -> DBInstanceAutomatedBackup
forall x.
DBInstanceAutomatedBackup -> Rep DBInstanceAutomatedBackup x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DBInstanceAutomatedBackup x -> DBInstanceAutomatedBackup
$cfrom :: forall x.
DBInstanceAutomatedBackup -> Rep DBInstanceAutomatedBackup x
Prelude.Generic)

-- |
-- Create a value of 'DBInstanceAutomatedBackup' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'allocatedStorage', 'dbInstanceAutomatedBackup_allocatedStorage' - Specifies the allocated storage size in gibibytes (GiB).
--
-- 'availabilityZone', 'dbInstanceAutomatedBackup_availabilityZone' - The Availability Zone that the automated backup was created in. For
-- information on Amazon Web Services Regions and Availability Zones, see
-- <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html Regions and Availability Zones>.
--
-- 'backupRetentionPeriod', 'dbInstanceAutomatedBackup_backupRetentionPeriod' - The retention period for the automated backups.
--
-- 'backupTarget', 'dbInstanceAutomatedBackup_backupTarget' - Specifies where automated backups are stored: Amazon Web Services
-- Outposts or the Amazon Web Services Region.
--
-- 'dbInstanceArn', 'dbInstanceAutomatedBackup_dbInstanceArn' - The Amazon Resource Name (ARN) for the automated backups.
--
-- 'dbInstanceAutomatedBackupsArn', 'dbInstanceAutomatedBackup_dbInstanceAutomatedBackupsArn' - The Amazon Resource Name (ARN) for the replicated automated backups.
--
-- 'dbInstanceAutomatedBackupsReplications', 'dbInstanceAutomatedBackup_dbInstanceAutomatedBackupsReplications' - The list of replications to different Amazon Web Services Regions
-- associated with the automated backup.
--
-- 'dbInstanceIdentifier', 'dbInstanceAutomatedBackup_dbInstanceIdentifier' - The customer id of the instance that is\/was associated with the
-- automated backup.
--
-- 'dbiResourceId', 'dbInstanceAutomatedBackup_dbiResourceId' - The identifier for the source DB instance, which can\'t be changed and
-- which is unique to an Amazon Web Services Region.
--
-- 'encrypted', 'dbInstanceAutomatedBackup_encrypted' - Specifies whether the automated backup is encrypted.
--
-- 'engine', 'dbInstanceAutomatedBackup_engine' - The name of the database engine for this automated backup.
--
-- 'engineVersion', 'dbInstanceAutomatedBackup_engineVersion' - The version of the database engine for the automated backup.
--
-- 'iAMDatabaseAuthenticationEnabled', 'dbInstanceAutomatedBackup_iAMDatabaseAuthenticationEnabled' - True if mapping of Amazon Web Services Identity and Access Management
-- (IAM) accounts to database accounts is enabled, and otherwise false.
--
-- 'instanceCreateTime', 'dbInstanceAutomatedBackup_instanceCreateTime' - Provides the date and time that the DB instance was created.
--
-- 'iops', 'dbInstanceAutomatedBackup_iops' - The IOPS (I\/O operations per second) value for the automated backup.
--
-- 'kmsKeyId', 'dbInstanceAutomatedBackup_kmsKeyId' - The Amazon Web Services KMS key ID for an automated backup.
--
-- The Amazon Web Services KMS key identifier is the key ARN, key ID, alias
-- ARN, or alias name for the KMS key.
--
-- 'licenseModel', 'dbInstanceAutomatedBackup_licenseModel' - License model information for the automated backup.
--
-- 'masterUsername', 'dbInstanceAutomatedBackup_masterUsername' - The license model of an automated backup.
--
-- 'optionGroupName', 'dbInstanceAutomatedBackup_optionGroupName' - The option group the automated backup is associated with. If omitted,
-- the default option group for the engine specified is used.
--
-- 'port', 'dbInstanceAutomatedBackup_port' - The port number that the automated backup used for connections.
--
-- Default: Inherits from the source DB instance
--
-- Valid Values: @1150-65535@
--
-- 'region', 'dbInstanceAutomatedBackup_region' - The Amazon Web Services Region associated with the automated backup.
--
-- 'restoreWindow', 'dbInstanceAutomatedBackup_restoreWindow' - Earliest and latest time an instance can be restored to.
--
-- 'status', 'dbInstanceAutomatedBackup_status' - Provides a list of status information for an automated backup:
--
-- -   @active@ - automated backups for current instances
--
-- -   @retained@ - automated backups for deleted instances
--
-- -   @creating@ - automated backups that are waiting for the first
--     automated snapshot to be available.
--
-- 'storageThroughput', 'dbInstanceAutomatedBackup_storageThroughput' - Specifies the storage throughput for the automated backup.
--
-- 'storageType', 'dbInstanceAutomatedBackup_storageType' - Specifies the storage type associated with the automated backup.
--
-- 'tdeCredentialArn', 'dbInstanceAutomatedBackup_tdeCredentialArn' - The ARN from the key store with which the automated backup is associated
-- for TDE encryption.
--
-- 'timezone', 'dbInstanceAutomatedBackup_timezone' - The time zone of the automated backup. In most cases, the @Timezone@
-- element is empty. @Timezone@ content appears only for Microsoft SQL
-- Server DB instances that were created with a time zone specified.
--
-- 'vpcId', 'dbInstanceAutomatedBackup_vpcId' - Provides the VPC ID associated with the DB instance.
newDBInstanceAutomatedBackup ::
  DBInstanceAutomatedBackup
newDBInstanceAutomatedBackup :: DBInstanceAutomatedBackup
newDBInstanceAutomatedBackup =
  DBInstanceAutomatedBackup'
    { $sel:allocatedStorage:DBInstanceAutomatedBackup' :: Maybe Int
allocatedStorage =
        forall a. Maybe a
Prelude.Nothing,
      $sel:availabilityZone:DBInstanceAutomatedBackup' :: Maybe Text
availabilityZone = forall a. Maybe a
Prelude.Nothing,
      $sel:backupRetentionPeriod:DBInstanceAutomatedBackup' :: Maybe Int
backupRetentionPeriod = forall a. Maybe a
Prelude.Nothing,
      $sel:backupTarget:DBInstanceAutomatedBackup' :: Maybe Text
backupTarget = forall a. Maybe a
Prelude.Nothing,
      $sel:dbInstanceArn:DBInstanceAutomatedBackup' :: Maybe Text
dbInstanceArn = forall a. Maybe a
Prelude.Nothing,
      $sel:dbInstanceAutomatedBackupsArn:DBInstanceAutomatedBackup' :: Maybe Text
dbInstanceAutomatedBackupsArn = forall a. Maybe a
Prelude.Nothing,
      $sel:dbInstanceAutomatedBackupsReplications:DBInstanceAutomatedBackup' :: Maybe [DBInstanceAutomatedBackupsReplication]
dbInstanceAutomatedBackupsReplications =
        forall a. Maybe a
Prelude.Nothing,
      $sel:dbInstanceIdentifier:DBInstanceAutomatedBackup' :: Maybe Text
dbInstanceIdentifier = forall a. Maybe a
Prelude.Nothing,
      $sel:dbiResourceId:DBInstanceAutomatedBackup' :: Maybe Text
dbiResourceId = forall a. Maybe a
Prelude.Nothing,
      $sel:encrypted:DBInstanceAutomatedBackup' :: Maybe Bool
encrypted = forall a. Maybe a
Prelude.Nothing,
      $sel:engine:DBInstanceAutomatedBackup' :: Maybe Text
engine = forall a. Maybe a
Prelude.Nothing,
      $sel:engineVersion:DBInstanceAutomatedBackup' :: Maybe Text
engineVersion = forall a. Maybe a
Prelude.Nothing,
      $sel:iAMDatabaseAuthenticationEnabled:DBInstanceAutomatedBackup' :: Maybe Bool
iAMDatabaseAuthenticationEnabled =
        forall a. Maybe a
Prelude.Nothing,
      $sel:instanceCreateTime:DBInstanceAutomatedBackup' :: Maybe ISO8601
instanceCreateTime = forall a. Maybe a
Prelude.Nothing,
      $sel:iops:DBInstanceAutomatedBackup' :: Maybe Int
iops = forall a. Maybe a
Prelude.Nothing,
      $sel:kmsKeyId:DBInstanceAutomatedBackup' :: Maybe Text
kmsKeyId = forall a. Maybe a
Prelude.Nothing,
      $sel:licenseModel:DBInstanceAutomatedBackup' :: Maybe Text
licenseModel = forall a. Maybe a
Prelude.Nothing,
      $sel:masterUsername:DBInstanceAutomatedBackup' :: Maybe Text
masterUsername = forall a. Maybe a
Prelude.Nothing,
      $sel:optionGroupName:DBInstanceAutomatedBackup' :: Maybe Text
optionGroupName = forall a. Maybe a
Prelude.Nothing,
      $sel:port:DBInstanceAutomatedBackup' :: Maybe Int
port = forall a. Maybe a
Prelude.Nothing,
      $sel:region:DBInstanceAutomatedBackup' :: Maybe Text
region = forall a. Maybe a
Prelude.Nothing,
      $sel:restoreWindow:DBInstanceAutomatedBackup' :: Maybe RestoreWindow
restoreWindow = forall a. Maybe a
Prelude.Nothing,
      $sel:status:DBInstanceAutomatedBackup' :: Maybe Text
status = forall a. Maybe a
Prelude.Nothing,
      $sel:storageThroughput:DBInstanceAutomatedBackup' :: Maybe Int
storageThroughput = forall a. Maybe a
Prelude.Nothing,
      $sel:storageType:DBInstanceAutomatedBackup' :: Maybe Text
storageType = forall a. Maybe a
Prelude.Nothing,
      $sel:tdeCredentialArn:DBInstanceAutomatedBackup' :: Maybe Text
tdeCredentialArn = forall a. Maybe a
Prelude.Nothing,
      $sel:timezone:DBInstanceAutomatedBackup' :: Maybe Text
timezone = forall a. Maybe a
Prelude.Nothing,
      $sel:vpcId:DBInstanceAutomatedBackup' :: Maybe Text
vpcId = forall a. Maybe a
Prelude.Nothing
    }

-- | Specifies the allocated storage size in gibibytes (GiB).
dbInstanceAutomatedBackup_allocatedStorage :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Int)
dbInstanceAutomatedBackup_allocatedStorage :: Lens' DBInstanceAutomatedBackup (Maybe Int)
dbInstanceAutomatedBackup_allocatedStorage = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Int
allocatedStorage :: Maybe Int
$sel:allocatedStorage:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Int
allocatedStorage} -> Maybe Int
allocatedStorage) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Int
a -> DBInstanceAutomatedBackup
s {$sel:allocatedStorage:DBInstanceAutomatedBackup' :: Maybe Int
allocatedStorage = Maybe Int
a} :: DBInstanceAutomatedBackup)

-- | The Availability Zone that the automated backup was created in. For
-- information on Amazon Web Services Regions and Availability Zones, see
-- <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html Regions and Availability Zones>.
dbInstanceAutomatedBackup_availabilityZone :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Text)
dbInstanceAutomatedBackup_availabilityZone :: Lens' DBInstanceAutomatedBackup (Maybe Text)
dbInstanceAutomatedBackup_availabilityZone = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Text
availabilityZone :: Maybe Text
$sel:availabilityZone:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
availabilityZone} -> Maybe Text
availabilityZone) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Text
a -> DBInstanceAutomatedBackup
s {$sel:availabilityZone:DBInstanceAutomatedBackup' :: Maybe Text
availabilityZone = Maybe Text
a} :: DBInstanceAutomatedBackup)

-- | The retention period for the automated backups.
dbInstanceAutomatedBackup_backupRetentionPeriod :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Int)
dbInstanceAutomatedBackup_backupRetentionPeriod :: Lens' DBInstanceAutomatedBackup (Maybe Int)
dbInstanceAutomatedBackup_backupRetentionPeriod = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Int
backupRetentionPeriod :: Maybe Int
$sel:backupRetentionPeriod:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Int
backupRetentionPeriod} -> Maybe Int
backupRetentionPeriod) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Int
a -> DBInstanceAutomatedBackup
s {$sel:backupRetentionPeriod:DBInstanceAutomatedBackup' :: Maybe Int
backupRetentionPeriod = Maybe Int
a} :: DBInstanceAutomatedBackup)

-- | Specifies where automated backups are stored: Amazon Web Services
-- Outposts or the Amazon Web Services Region.
dbInstanceAutomatedBackup_backupTarget :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Text)
dbInstanceAutomatedBackup_backupTarget :: Lens' DBInstanceAutomatedBackup (Maybe Text)
dbInstanceAutomatedBackup_backupTarget = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Text
backupTarget :: Maybe Text
$sel:backupTarget:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
backupTarget} -> Maybe Text
backupTarget) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Text
a -> DBInstanceAutomatedBackup
s {$sel:backupTarget:DBInstanceAutomatedBackup' :: Maybe Text
backupTarget = Maybe Text
a} :: DBInstanceAutomatedBackup)

-- | The Amazon Resource Name (ARN) for the automated backups.
dbInstanceAutomatedBackup_dbInstanceArn :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Text)
dbInstanceAutomatedBackup_dbInstanceArn :: Lens' DBInstanceAutomatedBackup (Maybe Text)
dbInstanceAutomatedBackup_dbInstanceArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Text
dbInstanceArn :: Maybe Text
$sel:dbInstanceArn:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
dbInstanceArn} -> Maybe Text
dbInstanceArn) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Text
a -> DBInstanceAutomatedBackup
s {$sel:dbInstanceArn:DBInstanceAutomatedBackup' :: Maybe Text
dbInstanceArn = Maybe Text
a} :: DBInstanceAutomatedBackup)

-- | The Amazon Resource Name (ARN) for the replicated automated backups.
dbInstanceAutomatedBackup_dbInstanceAutomatedBackupsArn :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Text)
dbInstanceAutomatedBackup_dbInstanceAutomatedBackupsArn :: Lens' DBInstanceAutomatedBackup (Maybe Text)
dbInstanceAutomatedBackup_dbInstanceAutomatedBackupsArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Text
dbInstanceAutomatedBackupsArn :: Maybe Text
$sel:dbInstanceAutomatedBackupsArn:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
dbInstanceAutomatedBackupsArn} -> Maybe Text
dbInstanceAutomatedBackupsArn) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Text
a -> DBInstanceAutomatedBackup
s {$sel:dbInstanceAutomatedBackupsArn:DBInstanceAutomatedBackup' :: Maybe Text
dbInstanceAutomatedBackupsArn = Maybe Text
a} :: DBInstanceAutomatedBackup)

-- | The list of replications to different Amazon Web Services Regions
-- associated with the automated backup.
dbInstanceAutomatedBackup_dbInstanceAutomatedBackupsReplications :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe [DBInstanceAutomatedBackupsReplication])
dbInstanceAutomatedBackup_dbInstanceAutomatedBackupsReplications :: Lens'
  DBInstanceAutomatedBackup
  (Maybe [DBInstanceAutomatedBackupsReplication])
dbInstanceAutomatedBackup_dbInstanceAutomatedBackupsReplications = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe [DBInstanceAutomatedBackupsReplication]
dbInstanceAutomatedBackupsReplications :: Maybe [DBInstanceAutomatedBackupsReplication]
$sel:dbInstanceAutomatedBackupsReplications:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup
-> Maybe [DBInstanceAutomatedBackupsReplication]
dbInstanceAutomatedBackupsReplications} -> Maybe [DBInstanceAutomatedBackupsReplication]
dbInstanceAutomatedBackupsReplications) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe [DBInstanceAutomatedBackupsReplication]
a -> DBInstanceAutomatedBackup
s {$sel:dbInstanceAutomatedBackupsReplications:DBInstanceAutomatedBackup' :: Maybe [DBInstanceAutomatedBackupsReplication]
dbInstanceAutomatedBackupsReplications = Maybe [DBInstanceAutomatedBackupsReplication]
a} :: DBInstanceAutomatedBackup) 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

-- | The customer id of the instance that is\/was associated with the
-- automated backup.
dbInstanceAutomatedBackup_dbInstanceIdentifier :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Text)
dbInstanceAutomatedBackup_dbInstanceIdentifier :: Lens' DBInstanceAutomatedBackup (Maybe Text)
dbInstanceAutomatedBackup_dbInstanceIdentifier = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Text
dbInstanceIdentifier :: Maybe Text
$sel:dbInstanceIdentifier:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
dbInstanceIdentifier} -> Maybe Text
dbInstanceIdentifier) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Text
a -> DBInstanceAutomatedBackup
s {$sel:dbInstanceIdentifier:DBInstanceAutomatedBackup' :: Maybe Text
dbInstanceIdentifier = Maybe Text
a} :: DBInstanceAutomatedBackup)

-- | The identifier for the source DB instance, which can\'t be changed and
-- which is unique to an Amazon Web Services Region.
dbInstanceAutomatedBackup_dbiResourceId :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Text)
dbInstanceAutomatedBackup_dbiResourceId :: Lens' DBInstanceAutomatedBackup (Maybe Text)
dbInstanceAutomatedBackup_dbiResourceId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Text
dbiResourceId :: Maybe Text
$sel:dbiResourceId:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
dbiResourceId} -> Maybe Text
dbiResourceId) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Text
a -> DBInstanceAutomatedBackup
s {$sel:dbiResourceId:DBInstanceAutomatedBackup' :: Maybe Text
dbiResourceId = Maybe Text
a} :: DBInstanceAutomatedBackup)

-- | Specifies whether the automated backup is encrypted.
dbInstanceAutomatedBackup_encrypted :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Bool)
dbInstanceAutomatedBackup_encrypted :: Lens' DBInstanceAutomatedBackup (Maybe Bool)
dbInstanceAutomatedBackup_encrypted = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Bool
encrypted :: Maybe Bool
$sel:encrypted:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Bool
encrypted} -> Maybe Bool
encrypted) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Bool
a -> DBInstanceAutomatedBackup
s {$sel:encrypted:DBInstanceAutomatedBackup' :: Maybe Bool
encrypted = Maybe Bool
a} :: DBInstanceAutomatedBackup)

-- | The name of the database engine for this automated backup.
dbInstanceAutomatedBackup_engine :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Text)
dbInstanceAutomatedBackup_engine :: Lens' DBInstanceAutomatedBackup (Maybe Text)
dbInstanceAutomatedBackup_engine = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Text
engine :: Maybe Text
$sel:engine:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
engine} -> Maybe Text
engine) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Text
a -> DBInstanceAutomatedBackup
s {$sel:engine:DBInstanceAutomatedBackup' :: Maybe Text
engine = Maybe Text
a} :: DBInstanceAutomatedBackup)

-- | The version of the database engine for the automated backup.
dbInstanceAutomatedBackup_engineVersion :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Text)
dbInstanceAutomatedBackup_engineVersion :: Lens' DBInstanceAutomatedBackup (Maybe Text)
dbInstanceAutomatedBackup_engineVersion = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Text
engineVersion :: Maybe Text
$sel:engineVersion:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
engineVersion} -> Maybe Text
engineVersion) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Text
a -> DBInstanceAutomatedBackup
s {$sel:engineVersion:DBInstanceAutomatedBackup' :: Maybe Text
engineVersion = Maybe Text
a} :: DBInstanceAutomatedBackup)

-- | True if mapping of Amazon Web Services Identity and Access Management
-- (IAM) accounts to database accounts is enabled, and otherwise false.
dbInstanceAutomatedBackup_iAMDatabaseAuthenticationEnabled :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Bool)
dbInstanceAutomatedBackup_iAMDatabaseAuthenticationEnabled :: Lens' DBInstanceAutomatedBackup (Maybe Bool)
dbInstanceAutomatedBackup_iAMDatabaseAuthenticationEnabled = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Bool
iAMDatabaseAuthenticationEnabled :: Maybe Bool
$sel:iAMDatabaseAuthenticationEnabled:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Bool
iAMDatabaseAuthenticationEnabled} -> Maybe Bool
iAMDatabaseAuthenticationEnabled) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Bool
a -> DBInstanceAutomatedBackup
s {$sel:iAMDatabaseAuthenticationEnabled:DBInstanceAutomatedBackup' :: Maybe Bool
iAMDatabaseAuthenticationEnabled = Maybe Bool
a} :: DBInstanceAutomatedBackup)

-- | Provides the date and time that the DB instance was created.
dbInstanceAutomatedBackup_instanceCreateTime :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.UTCTime)
dbInstanceAutomatedBackup_instanceCreateTime :: Lens' DBInstanceAutomatedBackup (Maybe UTCTime)
dbInstanceAutomatedBackup_instanceCreateTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe ISO8601
instanceCreateTime :: Maybe ISO8601
$sel:instanceCreateTime:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe ISO8601
instanceCreateTime} -> Maybe ISO8601
instanceCreateTime) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe ISO8601
a -> DBInstanceAutomatedBackup
s {$sel:instanceCreateTime:DBInstanceAutomatedBackup' :: Maybe ISO8601
instanceCreateTime = Maybe ISO8601
a} :: DBInstanceAutomatedBackup) 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

-- | The IOPS (I\/O operations per second) value for the automated backup.
dbInstanceAutomatedBackup_iops :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Int)
dbInstanceAutomatedBackup_iops :: Lens' DBInstanceAutomatedBackup (Maybe Int)
dbInstanceAutomatedBackup_iops = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Int
iops :: Maybe Int
$sel:iops:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Int
iops} -> Maybe Int
iops) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Int
a -> DBInstanceAutomatedBackup
s {$sel:iops:DBInstanceAutomatedBackup' :: Maybe Int
iops = Maybe Int
a} :: DBInstanceAutomatedBackup)

-- | The Amazon Web Services KMS key ID for an automated backup.
--
-- The Amazon Web Services KMS key identifier is the key ARN, key ID, alias
-- ARN, or alias name for the KMS key.
dbInstanceAutomatedBackup_kmsKeyId :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Text)
dbInstanceAutomatedBackup_kmsKeyId :: Lens' DBInstanceAutomatedBackup (Maybe Text)
dbInstanceAutomatedBackup_kmsKeyId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Text
kmsKeyId :: Maybe Text
$sel:kmsKeyId:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
kmsKeyId} -> Maybe Text
kmsKeyId) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Text
a -> DBInstanceAutomatedBackup
s {$sel:kmsKeyId:DBInstanceAutomatedBackup' :: Maybe Text
kmsKeyId = Maybe Text
a} :: DBInstanceAutomatedBackup)

-- | License model information for the automated backup.
dbInstanceAutomatedBackup_licenseModel :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Text)
dbInstanceAutomatedBackup_licenseModel :: Lens' DBInstanceAutomatedBackup (Maybe Text)
dbInstanceAutomatedBackup_licenseModel = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Text
licenseModel :: Maybe Text
$sel:licenseModel:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
licenseModel} -> Maybe Text
licenseModel) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Text
a -> DBInstanceAutomatedBackup
s {$sel:licenseModel:DBInstanceAutomatedBackup' :: Maybe Text
licenseModel = Maybe Text
a} :: DBInstanceAutomatedBackup)

-- | The license model of an automated backup.
dbInstanceAutomatedBackup_masterUsername :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Text)
dbInstanceAutomatedBackup_masterUsername :: Lens' DBInstanceAutomatedBackup (Maybe Text)
dbInstanceAutomatedBackup_masterUsername = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Text
masterUsername :: Maybe Text
$sel:masterUsername:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
masterUsername} -> Maybe Text
masterUsername) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Text
a -> DBInstanceAutomatedBackup
s {$sel:masterUsername:DBInstanceAutomatedBackup' :: Maybe Text
masterUsername = Maybe Text
a} :: DBInstanceAutomatedBackup)

-- | The option group the automated backup is associated with. If omitted,
-- the default option group for the engine specified is used.
dbInstanceAutomatedBackup_optionGroupName :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Text)
dbInstanceAutomatedBackup_optionGroupName :: Lens' DBInstanceAutomatedBackup (Maybe Text)
dbInstanceAutomatedBackup_optionGroupName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Text
optionGroupName :: Maybe Text
$sel:optionGroupName:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
optionGroupName} -> Maybe Text
optionGroupName) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Text
a -> DBInstanceAutomatedBackup
s {$sel:optionGroupName:DBInstanceAutomatedBackup' :: Maybe Text
optionGroupName = Maybe Text
a} :: DBInstanceAutomatedBackup)

-- | The port number that the automated backup used for connections.
--
-- Default: Inherits from the source DB instance
--
-- Valid Values: @1150-65535@
dbInstanceAutomatedBackup_port :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Int)
dbInstanceAutomatedBackup_port :: Lens' DBInstanceAutomatedBackup (Maybe Int)
dbInstanceAutomatedBackup_port = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Int
port :: Maybe Int
$sel:port:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Int
port} -> Maybe Int
port) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Int
a -> DBInstanceAutomatedBackup
s {$sel:port:DBInstanceAutomatedBackup' :: Maybe Int
port = Maybe Int
a} :: DBInstanceAutomatedBackup)

-- | The Amazon Web Services Region associated with the automated backup.
dbInstanceAutomatedBackup_region :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Text)
dbInstanceAutomatedBackup_region :: Lens' DBInstanceAutomatedBackup (Maybe Text)
dbInstanceAutomatedBackup_region = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Text
region :: Maybe Text
$sel:region:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
region} -> Maybe Text
region) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Text
a -> DBInstanceAutomatedBackup
s {$sel:region:DBInstanceAutomatedBackup' :: Maybe Text
region = Maybe Text
a} :: DBInstanceAutomatedBackup)

-- | Earliest and latest time an instance can be restored to.
dbInstanceAutomatedBackup_restoreWindow :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe RestoreWindow)
dbInstanceAutomatedBackup_restoreWindow :: Lens' DBInstanceAutomatedBackup (Maybe RestoreWindow)
dbInstanceAutomatedBackup_restoreWindow = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe RestoreWindow
restoreWindow :: Maybe RestoreWindow
$sel:restoreWindow:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe RestoreWindow
restoreWindow} -> Maybe RestoreWindow
restoreWindow) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe RestoreWindow
a -> DBInstanceAutomatedBackup
s {$sel:restoreWindow:DBInstanceAutomatedBackup' :: Maybe RestoreWindow
restoreWindow = Maybe RestoreWindow
a} :: DBInstanceAutomatedBackup)

-- | Provides a list of status information for an automated backup:
--
-- -   @active@ - automated backups for current instances
--
-- -   @retained@ - automated backups for deleted instances
--
-- -   @creating@ - automated backups that are waiting for the first
--     automated snapshot to be available.
dbInstanceAutomatedBackup_status :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Text)
dbInstanceAutomatedBackup_status :: Lens' DBInstanceAutomatedBackup (Maybe Text)
dbInstanceAutomatedBackup_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Text
status :: Maybe Text
$sel:status:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
status} -> Maybe Text
status) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Text
a -> DBInstanceAutomatedBackup
s {$sel:status:DBInstanceAutomatedBackup' :: Maybe Text
status = Maybe Text
a} :: DBInstanceAutomatedBackup)

-- | Specifies the storage throughput for the automated backup.
dbInstanceAutomatedBackup_storageThroughput :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Int)
dbInstanceAutomatedBackup_storageThroughput :: Lens' DBInstanceAutomatedBackup (Maybe Int)
dbInstanceAutomatedBackup_storageThroughput = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Int
storageThroughput :: Maybe Int
$sel:storageThroughput:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Int
storageThroughput} -> Maybe Int
storageThroughput) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Int
a -> DBInstanceAutomatedBackup
s {$sel:storageThroughput:DBInstanceAutomatedBackup' :: Maybe Int
storageThroughput = Maybe Int
a} :: DBInstanceAutomatedBackup)

-- | Specifies the storage type associated with the automated backup.
dbInstanceAutomatedBackup_storageType :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Text)
dbInstanceAutomatedBackup_storageType :: Lens' DBInstanceAutomatedBackup (Maybe Text)
dbInstanceAutomatedBackup_storageType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Text
storageType :: Maybe Text
$sel:storageType:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
storageType} -> Maybe Text
storageType) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Text
a -> DBInstanceAutomatedBackup
s {$sel:storageType:DBInstanceAutomatedBackup' :: Maybe Text
storageType = Maybe Text
a} :: DBInstanceAutomatedBackup)

-- | The ARN from the key store with which the automated backup is associated
-- for TDE encryption.
dbInstanceAutomatedBackup_tdeCredentialArn :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Text)
dbInstanceAutomatedBackup_tdeCredentialArn :: Lens' DBInstanceAutomatedBackup (Maybe Text)
dbInstanceAutomatedBackup_tdeCredentialArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Text
tdeCredentialArn :: Maybe Text
$sel:tdeCredentialArn:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
tdeCredentialArn} -> Maybe Text
tdeCredentialArn) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Text
a -> DBInstanceAutomatedBackup
s {$sel:tdeCredentialArn:DBInstanceAutomatedBackup' :: Maybe Text
tdeCredentialArn = Maybe Text
a} :: DBInstanceAutomatedBackup)

-- | The time zone of the automated backup. In most cases, the @Timezone@
-- element is empty. @Timezone@ content appears only for Microsoft SQL
-- Server DB instances that were created with a time zone specified.
dbInstanceAutomatedBackup_timezone :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Text)
dbInstanceAutomatedBackup_timezone :: Lens' DBInstanceAutomatedBackup (Maybe Text)
dbInstanceAutomatedBackup_timezone = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Text
timezone :: Maybe Text
$sel:timezone:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
timezone} -> Maybe Text
timezone) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Text
a -> DBInstanceAutomatedBackup
s {$sel:timezone:DBInstanceAutomatedBackup' :: Maybe Text
timezone = Maybe Text
a} :: DBInstanceAutomatedBackup)

-- | Provides the VPC ID associated with the DB instance.
dbInstanceAutomatedBackup_vpcId :: Lens.Lens' DBInstanceAutomatedBackup (Prelude.Maybe Prelude.Text)
dbInstanceAutomatedBackup_vpcId :: Lens' DBInstanceAutomatedBackup (Maybe Text)
dbInstanceAutomatedBackup_vpcId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DBInstanceAutomatedBackup' {Maybe Text
vpcId :: Maybe Text
$sel:vpcId:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
vpcId} -> Maybe Text
vpcId) (\s :: DBInstanceAutomatedBackup
s@DBInstanceAutomatedBackup' {} Maybe Text
a -> DBInstanceAutomatedBackup
s {$sel:vpcId:DBInstanceAutomatedBackup' :: Maybe Text
vpcId = Maybe Text
a} :: DBInstanceAutomatedBackup)

instance Data.FromXML DBInstanceAutomatedBackup where
  parseXML :: [Node] -> Either String DBInstanceAutomatedBackup
parseXML [Node]
x =
    Maybe Int
-> Maybe Text
-> Maybe Int
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe [DBInstanceAutomatedBackupsReplication]
-> Maybe Text
-> Maybe Text
-> Maybe Bool
-> Maybe Text
-> Maybe Text
-> Maybe Bool
-> Maybe ISO8601
-> Maybe Int
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Int
-> Maybe Text
-> Maybe RestoreWindow
-> Maybe Text
-> Maybe Int
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> DBInstanceAutomatedBackup
DBInstanceAutomatedBackup'
      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
"AllocatedStorage")
      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
"AvailabilityZone")
      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
"BackupRetentionPeriod")
      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
"BackupTarget")
      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
"DBInstanceArn")
      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
"DBInstanceAutomatedBackupsArn")
      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
"DBInstanceAutomatedBackupsReplications"
                      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
"DBInstanceAutomatedBackupsReplication"
                        )
                  )
      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
"DBInstanceIdentifier")
      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
"DbiResourceId")
      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
"Encrypted")
      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
"Engine")
      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
"EngineVersion")
      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
"IAMDatabaseAuthenticationEnabled")
      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
"InstanceCreateTime")
      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
"Iops")
      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
"LicenseModel")
      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
"MasterUsername")
      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
"OptionGroupName")
      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
"Port")
      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
"Region")
      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
"RestoreWindow")
      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
"StorageThroughput")
      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
"StorageType")
      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
"TdeCredentialArn")
      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
"Timezone")
      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
"VpcId")

instance Prelude.Hashable DBInstanceAutomatedBackup where
  hashWithSalt :: Int -> DBInstanceAutomatedBackup -> Int
hashWithSalt Int
_salt DBInstanceAutomatedBackup' {Maybe Bool
Maybe Int
Maybe [DBInstanceAutomatedBackupsReplication]
Maybe Text
Maybe ISO8601
Maybe RestoreWindow
vpcId :: Maybe Text
timezone :: Maybe Text
tdeCredentialArn :: Maybe Text
storageType :: Maybe Text
storageThroughput :: Maybe Int
status :: Maybe Text
restoreWindow :: Maybe RestoreWindow
region :: Maybe Text
port :: Maybe Int
optionGroupName :: Maybe Text
masterUsername :: Maybe Text
licenseModel :: Maybe Text
kmsKeyId :: Maybe Text
iops :: Maybe Int
instanceCreateTime :: Maybe ISO8601
iAMDatabaseAuthenticationEnabled :: Maybe Bool
engineVersion :: Maybe Text
engine :: Maybe Text
encrypted :: Maybe Bool
dbiResourceId :: Maybe Text
dbInstanceIdentifier :: Maybe Text
dbInstanceAutomatedBackupsReplications :: Maybe [DBInstanceAutomatedBackupsReplication]
dbInstanceAutomatedBackupsArn :: Maybe Text
dbInstanceArn :: Maybe Text
backupTarget :: Maybe Text
backupRetentionPeriod :: Maybe Int
availabilityZone :: Maybe Text
allocatedStorage :: Maybe Int
$sel:vpcId:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:timezone:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:tdeCredentialArn:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:storageType:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:storageThroughput:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Int
$sel:status:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:restoreWindow:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe RestoreWindow
$sel:region:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:port:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Int
$sel:optionGroupName:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:masterUsername:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:licenseModel:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:kmsKeyId:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:iops:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Int
$sel:instanceCreateTime:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe ISO8601
$sel:iAMDatabaseAuthenticationEnabled:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Bool
$sel:engineVersion:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:engine:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:encrypted:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Bool
$sel:dbiResourceId:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:dbInstanceIdentifier:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:dbInstanceAutomatedBackupsReplications:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup
-> Maybe [DBInstanceAutomatedBackupsReplication]
$sel:dbInstanceAutomatedBackupsArn:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:dbInstanceArn:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:backupTarget:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:backupRetentionPeriod:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Int
$sel:availabilityZone:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:allocatedStorage:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Int
..} =
    Int
_salt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
allocatedStorage
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
availabilityZone
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
backupRetentionPeriod
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
backupTarget
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
dbInstanceArn
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
dbInstanceAutomatedBackupsArn
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [DBInstanceAutomatedBackupsReplication]
dbInstanceAutomatedBackupsReplications
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
dbInstanceIdentifier
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
dbiResourceId
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
encrypted
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
engine
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
engineVersion
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
iAMDatabaseAuthenticationEnabled
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ISO8601
instanceCreateTime
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
iops
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
kmsKeyId
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
licenseModel
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
masterUsername
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
optionGroupName
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
port
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
region
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe RestoreWindow
restoreWindow
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
status
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
storageThroughput
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
storageType
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
tdeCredentialArn
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
timezone
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
vpcId

instance Prelude.NFData DBInstanceAutomatedBackup where
  rnf :: DBInstanceAutomatedBackup -> ()
rnf DBInstanceAutomatedBackup' {Maybe Bool
Maybe Int
Maybe [DBInstanceAutomatedBackupsReplication]
Maybe Text
Maybe ISO8601
Maybe RestoreWindow
vpcId :: Maybe Text
timezone :: Maybe Text
tdeCredentialArn :: Maybe Text
storageType :: Maybe Text
storageThroughput :: Maybe Int
status :: Maybe Text
restoreWindow :: Maybe RestoreWindow
region :: Maybe Text
port :: Maybe Int
optionGroupName :: Maybe Text
masterUsername :: Maybe Text
licenseModel :: Maybe Text
kmsKeyId :: Maybe Text
iops :: Maybe Int
instanceCreateTime :: Maybe ISO8601
iAMDatabaseAuthenticationEnabled :: Maybe Bool
engineVersion :: Maybe Text
engine :: Maybe Text
encrypted :: Maybe Bool
dbiResourceId :: Maybe Text
dbInstanceIdentifier :: Maybe Text
dbInstanceAutomatedBackupsReplications :: Maybe [DBInstanceAutomatedBackupsReplication]
dbInstanceAutomatedBackupsArn :: Maybe Text
dbInstanceArn :: Maybe Text
backupTarget :: Maybe Text
backupRetentionPeriod :: Maybe Int
availabilityZone :: Maybe Text
allocatedStorage :: Maybe Int
$sel:vpcId:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:timezone:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:tdeCredentialArn:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:storageType:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:storageThroughput:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Int
$sel:status:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:restoreWindow:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe RestoreWindow
$sel:region:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:port:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Int
$sel:optionGroupName:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:masterUsername:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:licenseModel:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:kmsKeyId:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:iops:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Int
$sel:instanceCreateTime:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe ISO8601
$sel:iAMDatabaseAuthenticationEnabled:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Bool
$sel:engineVersion:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:engine:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:encrypted:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Bool
$sel:dbiResourceId:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:dbInstanceIdentifier:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:dbInstanceAutomatedBackupsReplications:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup
-> Maybe [DBInstanceAutomatedBackupsReplication]
$sel:dbInstanceAutomatedBackupsArn:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:dbInstanceArn:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:backupTarget:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:backupRetentionPeriod:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Int
$sel:availabilityZone:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Text
$sel:allocatedStorage:DBInstanceAutomatedBackup' :: DBInstanceAutomatedBackup -> Maybe Int
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
allocatedStorage
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
availabilityZone
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
backupRetentionPeriod
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
backupTarget
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
dbInstanceArn
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
dbInstanceAutomatedBackupsArn
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [DBInstanceAutomatedBackupsReplication]
dbInstanceAutomatedBackupsReplications
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
dbInstanceIdentifier
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
dbiResourceId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
encrypted
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
engine
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
engineVersion
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
iAMDatabaseAuthenticationEnabled
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ISO8601
instanceCreateTime
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
iops
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
kmsKeyId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
licenseModel
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
masterUsername
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
optionGroupName
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
port
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
region
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe RestoreWindow
restoreWindow
      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 Int
storageThroughput
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe Text
storageType
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe Text
tdeCredentialArn
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe Text
timezone
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe Text
vpcId