com.amazonaws.services.backup.model.UpdateRegionSettingsRequest Maven / Gradle / Ivy
Show all versions of aws-java-sdk-backup Show documentation
/*
* Copyright 2019-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package com.amazonaws.services.backup.model;
import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.AmazonWebServiceRequest;
/**
*
* @see AWS API
* Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class UpdateRegionSettingsRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable {
/**
*
* Updates the list of services along with the opt-in preferences for the Region.
*
*
* If resource assignments are only based on tags, then service opt-in settings are applied. If a resource type is
* explicitly assigned to a backup plan, such as Amazon S3, Amazon EC2, or Amazon RDS, it will be included in the
* backup even if the opt-in is not enabled for that particular service. If both a resource type and tags are
* specified in a resource assignment, the resource type specified in the backup plan takes priority over the tag
* condition. Service opt-in settings are disregarded in this situation.
*
*/
private java.util.Map resourceTypeOptInPreference;
/**
*
* Enables or disables full Backup management of backups for a resource type. To enable full Backup management for
* DynamoDB along with
* Backup's advanced DynamoDB backup features, follow the procedure to
* enable advanced DynamoDB backup programmatically.
*
*/
private java.util.Map resourceTypeManagementPreference;
/**
*
* Updates the list of services along with the opt-in preferences for the Region.
*
*
* If resource assignments are only based on tags, then service opt-in settings are applied. If a resource type is
* explicitly assigned to a backup plan, such as Amazon S3, Amazon EC2, or Amazon RDS, it will be included in the
* backup even if the opt-in is not enabled for that particular service. If both a resource type and tags are
* specified in a resource assignment, the resource type specified in the backup plan takes priority over the tag
* condition. Service opt-in settings are disregarded in this situation.
*
*
* @return Updates the list of services along with the opt-in preferences for the Region.
*
* If resource assignments are only based on tags, then service opt-in settings are applied. If a resource
* type is explicitly assigned to a backup plan, such as Amazon S3, Amazon EC2, or Amazon RDS, it will be
* included in the backup even if the opt-in is not enabled for that particular service. If both a resource
* type and tags are specified in a resource assignment, the resource type specified in the backup plan
* takes priority over the tag condition. Service opt-in settings are disregarded in this situation.
*/
public java.util.Map getResourceTypeOptInPreference() {
return resourceTypeOptInPreference;
}
/**
*
* Updates the list of services along with the opt-in preferences for the Region.
*
*
* If resource assignments are only based on tags, then service opt-in settings are applied. If a resource type is
* explicitly assigned to a backup plan, such as Amazon S3, Amazon EC2, or Amazon RDS, it will be included in the
* backup even if the opt-in is not enabled for that particular service. If both a resource type and tags are
* specified in a resource assignment, the resource type specified in the backup plan takes priority over the tag
* condition. Service opt-in settings are disregarded in this situation.
*
*
* @param resourceTypeOptInPreference
* Updates the list of services along with the opt-in preferences for the Region.
*
* If resource assignments are only based on tags, then service opt-in settings are applied. If a resource
* type is explicitly assigned to a backup plan, such as Amazon S3, Amazon EC2, or Amazon RDS, it will be
* included in the backup even if the opt-in is not enabled for that particular service. If both a resource
* type and tags are specified in a resource assignment, the resource type specified in the backup plan takes
* priority over the tag condition. Service opt-in settings are disregarded in this situation.
*/
public void setResourceTypeOptInPreference(java.util.Map resourceTypeOptInPreference) {
this.resourceTypeOptInPreference = resourceTypeOptInPreference;
}
/**
*
* Updates the list of services along with the opt-in preferences for the Region.
*
*
* If resource assignments are only based on tags, then service opt-in settings are applied. If a resource type is
* explicitly assigned to a backup plan, such as Amazon S3, Amazon EC2, or Amazon RDS, it will be included in the
* backup even if the opt-in is not enabled for that particular service. If both a resource type and tags are
* specified in a resource assignment, the resource type specified in the backup plan takes priority over the tag
* condition. Service opt-in settings are disregarded in this situation.
*
*
* @param resourceTypeOptInPreference
* Updates the list of services along with the opt-in preferences for the Region.
*
* If resource assignments are only based on tags, then service opt-in settings are applied. If a resource
* type is explicitly assigned to a backup plan, such as Amazon S3, Amazon EC2, or Amazon RDS, it will be
* included in the backup even if the opt-in is not enabled for that particular service. If both a resource
* type and tags are specified in a resource assignment, the resource type specified in the backup plan takes
* priority over the tag condition. Service opt-in settings are disregarded in this situation.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public UpdateRegionSettingsRequest withResourceTypeOptInPreference(java.util.Map resourceTypeOptInPreference) {
setResourceTypeOptInPreference(resourceTypeOptInPreference);
return this;
}
/**
* Add a single ResourceTypeOptInPreference entry
*
* @see UpdateRegionSettingsRequest#withResourceTypeOptInPreference
* @returns a reference to this object so that method calls can be chained together.
*/
public UpdateRegionSettingsRequest addResourceTypeOptInPreferenceEntry(String key, Boolean value) {
if (null == this.resourceTypeOptInPreference) {
this.resourceTypeOptInPreference = new java.util.HashMap();
}
if (this.resourceTypeOptInPreference.containsKey(key))
throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided.");
this.resourceTypeOptInPreference.put(key, value);
return this;
}
/**
* Removes all the entries added into ResourceTypeOptInPreference.
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public UpdateRegionSettingsRequest clearResourceTypeOptInPreferenceEntries() {
this.resourceTypeOptInPreference = null;
return this;
}
/**
*
* Enables or disables full Backup management of backups for a resource type. To enable full Backup management for
* DynamoDB along with
* Backup's advanced DynamoDB backup features, follow the procedure to
* enable advanced DynamoDB backup programmatically.
*
*
* @return Enables or disables full Backup management of backups for a resource type. To enable full Backup
* management for DynamoDB along with Backup's advanced
* DynamoDB backup features, follow the procedure to enable advanced DynamoDB backup programmatically.
*/
public java.util.Map getResourceTypeManagementPreference() {
return resourceTypeManagementPreference;
}
/**
*
* Enables or disables full Backup management of backups for a resource type. To enable full Backup management for
* DynamoDB along with
* Backup's advanced DynamoDB backup features, follow the procedure to
* enable advanced DynamoDB backup programmatically.
*
*
* @param resourceTypeManagementPreference
* Enables or disables full Backup management of backups for a resource type. To enable full Backup
* management for DynamoDB along with Backup's advanced
* DynamoDB backup features, follow the procedure to enable advanced DynamoDB backup programmatically.
*/
public void setResourceTypeManagementPreference(java.util.Map resourceTypeManagementPreference) {
this.resourceTypeManagementPreference = resourceTypeManagementPreference;
}
/**
*
* Enables or disables full Backup management of backups for a resource type. To enable full Backup management for
* DynamoDB along with
* Backup's advanced DynamoDB backup features, follow the procedure to
* enable advanced DynamoDB backup programmatically.
*
*
* @param resourceTypeManagementPreference
* Enables or disables full Backup management of backups for a resource type. To enable full Backup
* management for DynamoDB along with Backup's advanced
* DynamoDB backup features, follow the procedure to enable advanced DynamoDB backup programmatically.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public UpdateRegionSettingsRequest withResourceTypeManagementPreference(java.util.Map resourceTypeManagementPreference) {
setResourceTypeManagementPreference(resourceTypeManagementPreference);
return this;
}
/**
* Add a single ResourceTypeManagementPreference entry
*
* @see UpdateRegionSettingsRequest#withResourceTypeManagementPreference
* @returns a reference to this object so that method calls can be chained together.
*/
public UpdateRegionSettingsRequest addResourceTypeManagementPreferenceEntry(String key, Boolean value) {
if (null == this.resourceTypeManagementPreference) {
this.resourceTypeManagementPreference = new java.util.HashMap();
}
if (this.resourceTypeManagementPreference.containsKey(key))
throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided.");
this.resourceTypeManagementPreference.put(key, value);
return this;
}
/**
* Removes all the entries added into ResourceTypeManagementPreference.
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public UpdateRegionSettingsRequest clearResourceTypeManagementPreferenceEntries() {
this.resourceTypeManagementPreference = null;
return this;
}
/**
* Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be
* redacted from this string using a placeholder value.
*
* @return A string representation of this object.
*
* @see java.lang.Object#toString()
*/
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("{");
if (getResourceTypeOptInPreference() != null)
sb.append("ResourceTypeOptInPreference: ").append(getResourceTypeOptInPreference()).append(",");
if (getResourceTypeManagementPreference() != null)
sb.append("ResourceTypeManagementPreference: ").append(getResourceTypeManagementPreference());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof UpdateRegionSettingsRequest == false)
return false;
UpdateRegionSettingsRequest other = (UpdateRegionSettingsRequest) obj;
if (other.getResourceTypeOptInPreference() == null ^ this.getResourceTypeOptInPreference() == null)
return false;
if (other.getResourceTypeOptInPreference() != null && other.getResourceTypeOptInPreference().equals(this.getResourceTypeOptInPreference()) == false)
return false;
if (other.getResourceTypeManagementPreference() == null ^ this.getResourceTypeManagementPreference() == null)
return false;
if (other.getResourceTypeManagementPreference() != null
&& other.getResourceTypeManagementPreference().equals(this.getResourceTypeManagementPreference()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getResourceTypeOptInPreference() == null) ? 0 : getResourceTypeOptInPreference().hashCode());
hashCode = prime * hashCode + ((getResourceTypeManagementPreference() == null) ? 0 : getResourceTypeManagementPreference().hashCode());
return hashCode;
}
@Override
public UpdateRegionSettingsRequest clone() {
return (UpdateRegionSettingsRequest) super.clone();
}
}