Class ProtectedDatabase.Builder
- java.lang.Object
-
- com.oracle.bmc.recovery.model.ProtectedDatabase.Builder
-
- Enclosing class:
- ProtectedDatabase
public static class ProtectedDatabase.Builder extends Object
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ProtectedDatabase
build()
ProtectedDatabase.Builder
changeRate(Double changeRate)
The percentage of data changes that exist in the database between successive incremental backups.ProtectedDatabase.Builder
compartmentId(String compartmentId)
The OCID of the compartment that contains the protected database.ProtectedDatabase.Builder
compressionRatio(Double compressionRatio)
The compression ratio of the protected database.ProtectedDatabase.Builder
copy(ProtectedDatabase model)
ProtectedDatabase.Builder
databaseId(String databaseId)
The OCID of the protected database.ProtectedDatabase.Builder
databaseSize(DatabaseSizes databaseSize)
The size of the protected database.ProtectedDatabase.Builder
databaseSizeInGBs(Integer databaseSizeInGBs)
The size of the database in GBs, in gigabytes.ProtectedDatabase.Builder
dbUniqueName(String dbUniqueName)
The dbUniqueName for the protected database in Recovery Service.ProtectedDatabase.Builder
definedTags(Map<String,Map<String,Object>> definedTags)
Defined tags for this resource.ProtectedDatabase.Builder
displayName(String displayName)
The protected database name.ProtectedDatabase.Builder
freeformTags(Map<String,String> freeformTags)
Simple key-value pair that is applied without any predefined name, type or scope.ProtectedDatabase.Builder
health(Health health)
Indicates the protection status of the database.ProtectedDatabase.Builder
healthDetails(String healthDetails)
A message describing the current health of the protected database.ProtectedDatabase.Builder
id(String id)
The OCID of the protected database.ProtectedDatabase.Builder
isReadOnlyResource(Boolean isReadOnlyResource)
Indicates whether the protected database is created by Recovery Service or created manually.ProtectedDatabase.Builder
isRedoLogsShipped(Boolean isRedoLogsShipped)
The value TRUE indicates that the protected database is configured to use Real-time data protection, and redo-data is sent from the protected database to Recovery Service.ProtectedDatabase.Builder
lifecycleDetails(String lifecycleDetails)
Detailed description about the current lifecycle state of the protected database.ProtectedDatabase.Builder
lifecycleState(LifecycleState lifecycleState)
The current state of the Protected Database.ProtectedDatabase.Builder
metrics(Metrics metrics)
ProtectedDatabase.Builder
policyLockedDateTime(String policyLockedDateTime)
An RFC3339 formatted datetime string that specifies the exact date and time for the retention lock to take effect and permanently lock the retention period defined in the policy.ProtectedDatabase.Builder
protectionPolicyId(String protectionPolicyId)
The OCID of the protection policy associated with the protected database.ProtectedDatabase.Builder
recoveryServiceSubnets(List<RecoveryServiceSubnetDetails> recoveryServiceSubnets)
List of recovery service subnet resources associated with the protected database.ProtectedDatabase.Builder
subscriptionId(String subscriptionId)
The OCID of the cloud service subscription to which the protected database is linked.ProtectedDatabase.Builder
systemTags(Map<String,Map<String,Object>> systemTags)
Usage of system tag keys.ProtectedDatabase.Builder
timeCreated(Date timeCreated)
An RFC3339 formatted datetime string that indicates the created time for a protected database.ProtectedDatabase.Builder
timeUpdated(Date timeUpdated)
An RFC3339 formatted datetime string that indicates the last updated time for a protected database.ProtectedDatabase.Builder
vpcUserName(String vpcUserName)
The virtual private catalog (VPC) user credentials that authenticates the protected database to access Recovery Service.
-
-
-
Method Detail
-
id
public ProtectedDatabase.Builder id(String id)
The OCID of the protected database.- Parameters:
id
- the value to set- Returns:
- this builder
-
displayName
public ProtectedDatabase.Builder displayName(String displayName)
The protected database name.You can change the displayName. Avoid entering confidential information.
- Parameters:
displayName
- the value to set- Returns:
- this builder
-
compartmentId
public ProtectedDatabase.Builder compartmentId(String compartmentId)
The OCID of the compartment that contains the protected database.- Parameters:
compartmentId
- the value to set- Returns:
- this builder
-
dbUniqueName
public ProtectedDatabase.Builder dbUniqueName(String dbUniqueName)
The dbUniqueName for the protected database in Recovery Service.You cannot change the unique name.
- Parameters:
dbUniqueName
- the value to set- Returns:
- this builder
-
vpcUserName
public ProtectedDatabase.Builder vpcUserName(String vpcUserName)
The virtual private catalog (VPC) user credentials that authenticates the protected database to access Recovery Service.- Parameters:
vpcUserName
- the value to set- Returns:
- this builder
-
databaseSize
public ProtectedDatabase.Builder databaseSize(DatabaseSizes databaseSize)
The size of the protected database.XS - Less than 5GB, S - 5GB to 50GB, M - 50GB to 500GB, L - 500GB to 1TB, XL - 1TB to 5TB, XXL - Greater than 5TB.
- Parameters:
databaseSize
- the value to set- Returns:
- this builder
-
protectionPolicyId
public ProtectedDatabase.Builder protectionPolicyId(String protectionPolicyId)
The OCID of the protection policy associated with the protected database.- Parameters:
protectionPolicyId
- the value to set- Returns:
- this builder
-
policyLockedDateTime
public ProtectedDatabase.Builder policyLockedDateTime(String policyLockedDateTime)
An RFC3339 formatted datetime string that specifies the exact date and time for the retention lock to take effect and permanently lock the retention period defined in the policy.The retention lock feature controls whether Recovery Service strictly preserves backups for the duration defined in a policy. Retention lock is useful to enforce recovery window compliance and to prevent unintentional modifications to protected database backups. Recovery Service enforces a 14-day delay before the retention lock set for a policy can take effect.
- Parameters:
policyLockedDateTime
- the value to set- Returns:
- this builder
-
recoveryServiceSubnets
public ProtectedDatabase.Builder recoveryServiceSubnets(List<RecoveryServiceSubnetDetails> recoveryServiceSubnets)
List of recovery service subnet resources associated with the protected database.- Parameters:
recoveryServiceSubnets
- the value to set- Returns:
- this builder
-
databaseId
public ProtectedDatabase.Builder databaseId(String databaseId)
The OCID of the protected database.- Parameters:
databaseId
- the value to set- Returns:
- this builder
-
databaseSizeInGBs
public ProtectedDatabase.Builder databaseSizeInGBs(Integer databaseSizeInGBs)
The size of the database in GBs, in gigabytes.- Parameters:
databaseSizeInGBs
- the value to set- Returns:
- this builder
-
changeRate
public ProtectedDatabase.Builder changeRate(Double changeRate)
The percentage of data changes that exist in the database between successive incremental backups.- Parameters:
changeRate
- the value to set- Returns:
- this builder
-
compressionRatio
public ProtectedDatabase.Builder compressionRatio(Double compressionRatio)
The compression ratio of the protected database.The compression ratio represents the ratio of compressed block size to expanded block size.
- Parameters:
compressionRatio
- the value to set- Returns:
- this builder
-
isRedoLogsShipped
public ProtectedDatabase.Builder isRedoLogsShipped(Boolean isRedoLogsShipped)
The value TRUE indicates that the protected database is configured to use Real-time data protection, and redo-data is sent from the protected database to Recovery Service.Real-time data protection substantially reduces the window of potential data loss that exists between successive archived redo log backups. For this to be effective, additional configuration is needed on client side.
- Parameters:
isRedoLogsShipped
- the value to set- Returns:
- this builder
-
timeCreated
public ProtectedDatabase.Builder timeCreated(Date timeCreated)
An RFC3339 formatted datetime string that indicates the created time for a protected database.For example: ‘2020-05-22T21:10:29.600Z’
- Parameters:
timeCreated
- the value to set- Returns:
- this builder
-
timeUpdated
public ProtectedDatabase.Builder timeUpdated(Date timeUpdated)
An RFC3339 formatted datetime string that indicates the last updated time for a protected database.For example: ‘2020-05-22T21:10:29.600Z’
- Parameters:
timeUpdated
- the value to set- Returns:
- this builder
-
lifecycleState
public ProtectedDatabase.Builder lifecycleState(LifecycleState lifecycleState)
The current state of the Protected Database.- Parameters:
lifecycleState
- the value to set- Returns:
- this builder
-
health
public ProtectedDatabase.Builder health(Health health)
Indicates the protection status of the database.A 'PROTECTED' status indicates that Recovery Service can ensure database recovery to any point in time within the entire recovery window. The potential data loss exposure since the last backup is: - Less than 10 seconds, if Real-time data protection is enabled - Less than 70 minutes if Real-time data protection is disabled
A 'WARNING' status indicates that Recovery Service can ensure database recovery within the current recovery window - 1 day. The potential data loss exposure since the last backup is: - Greater than 10 seconds, if Real-time data protection is enabled - Greater than 60 minutes, if if Real-time data protection is disabled
An 'ALERT' status indicates that Recovery Service cannot recover the database within the current recovery window.
- Parameters:
health
- the value to set- Returns:
- this builder
-
isReadOnlyResource
public ProtectedDatabase.Builder isReadOnlyResource(Boolean isReadOnlyResource)
Indicates whether the protected database is created by Recovery Service or created manually.Set to TRUE for a service-defined protected database. When you enable the OCI-managed automatic backups option for a database and set Recovery Service as the backup destination, then Recovery Service creates the associated protected database resource. Set to FALSE for a user-defined protected database.
- Parameters:
isReadOnlyResource
- the value to set- Returns:
- this builder
-
lifecycleDetails
public ProtectedDatabase.Builder lifecycleDetails(String lifecycleDetails)
Detailed description about the current lifecycle state of the protected database.For example, it can be used to provide actionable information for a resource in a Failed state.
- Parameters:
lifecycleDetails
- the value to set- Returns:
- this builder
-
healthDetails
public ProtectedDatabase.Builder healthDetails(String healthDetails)
A message describing the current health of the protected database.- Parameters:
healthDetails
- the value to set- Returns:
- this builder
-
metrics
public ProtectedDatabase.Builder metrics(Metrics metrics)
-
subscriptionId
public ProtectedDatabase.Builder subscriptionId(String subscriptionId)
The OCID of the cloud service subscription to which the protected database is linked.- Parameters:
subscriptionId
- the value to set- Returns:
- this builder
-
freeformTags
public ProtectedDatabase.Builder freeformTags(Map<String,String> freeformTags)
Simple key-value pair that is applied without any predefined name, type or scope.Exists for cross-compatibility only. Example: {“bar-key”: “value”}
- Parameters:
freeformTags
- the value to set- Returns:
- this builder
-
definedTags
public ProtectedDatabase.Builder definedTags(Map<String,Map<String,Object>> definedTags)
Defined tags for this resource.Each key is predefined and scoped to a namespace. Example: {“foo-namespace”: {“bar-key”: “value”}}. For more information, see Resource Tags
- Parameters:
definedTags
- the value to set- Returns:
- this builder
-
systemTags
public ProtectedDatabase.Builder systemTags(Map<String,Map<String,Object>> systemTags)
Usage of system tag keys.These predefined keys are scoped to namespaces. Example: {“orcl-cloud”: {“free-tier-retained”: “true”}}. For more information, see Resource Tags
- Parameters:
systemTags
- the value to set- Returns:
- this builder
-
build
public ProtectedDatabase build()
-
copy
public ProtectedDatabase.Builder copy(ProtectedDatabase model)
-
-