Class CreateProtectionPolicyDetails


  • @Generated(value="OracleSDKGenerator",
               comments="API Version: 20210216")
    public final class CreateProtectionPolicyDetails
    extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel
    Describes the parameters required to create a custom protection policy.
    Note: Objects should always be created or deserialized using the CreateProtectionPolicyDetails.Builder. This model distinguishes fields that are null because they are unset from fields that are explicitly set to null. This is done in the setter methods of the CreateProtectionPolicyDetails.Builder, which maintain a set of all explicitly set fields called CreateProtectionPolicyDetails.Builder.__explicitlySet__. The hashCode() and equals(Object) methods are implemented to take the explicitly set fields into account. The constructor, on the other hand, does not take the explicitly set fields into account (since the constructor cannot distinguish explicit null from unset null).
    • Method Detail

      • getDisplayName

        public String getDisplayName()
        A user provided name for the protection policy.

        The ‘displayName’ does not have to be unique, and it can be modified. Avoid entering confidential information.

        Returns:
        the value
      • getBackupRetentionPeriodInDays

        public Integer getBackupRetentionPeriodInDays()
        The maximum number of days to retain backups for a protected database.
        Returns:
        the value
      • getCompartmentId

        public String getCompartmentId()
        Compartment Identifier
        Returns:
        the value
      • getMustEnforceCloudLocality

        public Boolean getMustEnforceCloudLocality()
        Indicates whether the protection policy enforces Recovery Service to retain backups in the same cloud service environment where your Oracle Database is provisioned.

        This parameter is applicable if your Oracle Database runs in a different cloud service environment, such as Microsoft Azure. If you set the mustEnforceCloudLocality parameter to TRUE, then Recovery Service stores the database backups locally in the same cloud service environment where the database resides. For example, if your Oracle Database is provisioned on Microsoft Azure, then Recovery Service stores the database backups in Azure. Note: You cannot change the mustEnforceCloudLocality setting for a protection policy after you create it.

        Returns:
        the value
      • getPolicyLockedDateTime

        public String getPolicyLockedDateTime()
        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. Therefore, you must set policyLockedDateTime to a date that occurs 14 days after the current date. * For example, assuming that the current date is Aug 1, 2023 9 pm, you can set policyLockedDateTime to '2023-08-15T21:00:00.600Z' (Aug 15, 2023, 9:00 pm), or greater. * During the 14-day delay period, you can either increase or decrease the retention period in the policy. * However, you are only allowed to increase the retention period on or after the retention lock date. * You cannot change the value of policyLockedDateTime if the retention lock is already in effect.

        Returns:
        the value
      • getFreeformTags

        public Map<String,​String> getFreeformTags()
        Simple key-value pair that is applied without any predefined name, type or scope.

        Exists for cross-compatibility only. Example: {“bar-key”: “value”}

        Returns:
        the value
      • getDefinedTags

        public Map<String,​Map<String,​Object>> getDefinedTags()
        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

        Returns:
        the value
      • toString

        public String toString()
        Overrides:
        toString in class com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel
      • toString

        public String toString​(boolean includeByteArrayContents)
        Return a string representation of the object.
        Parameters:
        includeByteArrayContents - true to include the full contents of byte arrays
        Returns:
        string representation
      • equals

        public boolean equals​(Object o)
        Overrides:
        equals in class com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel