All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.neptune.model.CopyDBClusterSnapshotRequest Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Amazon Neptune module holds the client classes that are used for communicating with Amazon Neptune Service

The newest version!
/*
 * 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.neptune.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 CopyDBClusterSnapshotRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable {

    /**
     * 

* The identifier of the DB cluster snapshot to copy. This parameter is not case-sensitive. *

*

* Constraints: *

*
    *
  • *

    * Must specify a valid system snapshot in the "available" state. *

    *
  • *
  • *

    * Specify a valid DB snapshot identifier. *

    *
  • *
*

* Example: my-cluster-snapshot1 *

*/ private String sourceDBClusterSnapshotIdentifier; /** *

* The identifier of the new DB cluster snapshot to create from the source DB cluster snapshot. This parameter is * not case-sensitive. *

*

* Constraints: *

*
    *
  • *

    * Must contain from 1 to 63 letters, numbers, or hyphens. *

    *
  • *
  • *

    * First character must be a letter. *

    *
  • *
  • *

    * Cannot end with a hyphen or contain two consecutive hyphens. *

    *
  • *
*

* Example: my-cluster-snapshot2 *

*/ private String targetDBClusterSnapshotIdentifier; /** *

* The Amazon Amazon KMS key ID for an encrypted DB cluster snapshot. The KMS key ID is the Amazon Resource Name * (ARN), KMS key identifier, or the KMS key alias for the KMS encryption key. *

*

* If you copy an encrypted DB cluster snapshot from your Amazon account, you can specify a value for * KmsKeyId to encrypt the copy with a new KMS encryption key. If you don't specify a value for * KmsKeyId, then the copy of the DB cluster snapshot is encrypted with the same KMS key as the source * DB cluster snapshot. *

*

* If you copy an encrypted DB cluster snapshot that is shared from another Amazon account, then you must specify a * value for KmsKeyId. *

*

* KMS encryption keys are specific to the Amazon Region that they are created in, and you can't use encryption keys * from one Amazon Region in another Amazon Region. *

*

* You cannot encrypt an unencrypted DB cluster snapshot when you copy it. If you try to copy an unencrypted DB * cluster snapshot and specify a value for the KmsKeyId parameter, an error is returned. *

*/ private String kmsKeyId; /** *

* Not currently supported. *

*/ private String preSignedUrl; /** *

* True to copy all tags from the source DB cluster snapshot to the target DB cluster snapshot, and otherwise false. * The default is false. *

*/ private Boolean copyTags; /** *

* The tags to assign to the new DB cluster snapshot copy. *

*/ private java.util.List tags; /** The region where the source instance is located. */ private String sourceRegion; /** *

* The identifier of the DB cluster snapshot to copy. This parameter is not case-sensitive. *

*

* Constraints: *

*
    *
  • *

    * Must specify a valid system snapshot in the "available" state. *

    *
  • *
  • *

    * Specify a valid DB snapshot identifier. *

    *
  • *
*

* Example: my-cluster-snapshot1 *

* * @param sourceDBClusterSnapshotIdentifier * The identifier of the DB cluster snapshot to copy. This parameter is not case-sensitive.

*

* Constraints: *

*
    *
  • *

    * Must specify a valid system snapshot in the "available" state. *

    *
  • *
  • *

    * Specify a valid DB snapshot identifier. *

    *
  • *
*

* Example: my-cluster-snapshot1 */ public void setSourceDBClusterSnapshotIdentifier(String sourceDBClusterSnapshotIdentifier) { this.sourceDBClusterSnapshotIdentifier = sourceDBClusterSnapshotIdentifier; } /** *

* The identifier of the DB cluster snapshot to copy. This parameter is not case-sensitive. *

*

* Constraints: *

*
    *
  • *

    * Must specify a valid system snapshot in the "available" state. *

    *
  • *
  • *

    * Specify a valid DB snapshot identifier. *

    *
  • *
*

* Example: my-cluster-snapshot1 *

* * @return The identifier of the DB cluster snapshot to copy. This parameter is not case-sensitive.

*

* Constraints: *

*
    *
  • *

    * Must specify a valid system snapshot in the "available" state. *

    *
  • *
  • *

    * Specify a valid DB snapshot identifier. *

    *
  • *
*

* Example: my-cluster-snapshot1 */ public String getSourceDBClusterSnapshotIdentifier() { return this.sourceDBClusterSnapshotIdentifier; } /** *

* The identifier of the DB cluster snapshot to copy. This parameter is not case-sensitive. *

*

* Constraints: *

*
    *
  • *

    * Must specify a valid system snapshot in the "available" state. *

    *
  • *
  • *

    * Specify a valid DB snapshot identifier. *

    *
  • *
*

* Example: my-cluster-snapshot1 *

* * @param sourceDBClusterSnapshotIdentifier * The identifier of the DB cluster snapshot to copy. This parameter is not case-sensitive.

*

* Constraints: *

*
    *
  • *

    * Must specify a valid system snapshot in the "available" state. *

    *
  • *
  • *

    * Specify a valid DB snapshot identifier. *

    *
  • *
*

* Example: my-cluster-snapshot1 * @return Returns a reference to this object so that method calls can be chained together. */ public CopyDBClusterSnapshotRequest withSourceDBClusterSnapshotIdentifier(String sourceDBClusterSnapshotIdentifier) { setSourceDBClusterSnapshotIdentifier(sourceDBClusterSnapshotIdentifier); return this; } /** *

* The identifier of the new DB cluster snapshot to create from the source DB cluster snapshot. This parameter is * not case-sensitive. *

*

* Constraints: *

*
    *
  • *

    * Must contain from 1 to 63 letters, numbers, or hyphens. *

    *
  • *
  • *

    * First character must be a letter. *

    *
  • *
  • *

    * Cannot end with a hyphen or contain two consecutive hyphens. *

    *
  • *
*

* Example: my-cluster-snapshot2 *

* * @param targetDBClusterSnapshotIdentifier * The identifier of the new DB cluster snapshot to create from the source DB cluster snapshot. This * parameter is not case-sensitive.

*

* Constraints: *

*
    *
  • *

    * Must contain from 1 to 63 letters, numbers, or hyphens. *

    *
  • *
  • *

    * First character must be a letter. *

    *
  • *
  • *

    * Cannot end with a hyphen or contain two consecutive hyphens. *

    *
  • *
*

* Example: my-cluster-snapshot2 */ public void setTargetDBClusterSnapshotIdentifier(String targetDBClusterSnapshotIdentifier) { this.targetDBClusterSnapshotIdentifier = targetDBClusterSnapshotIdentifier; } /** *

* The identifier of the new DB cluster snapshot to create from the source DB cluster snapshot. This parameter is * not case-sensitive. *

*

* Constraints: *

*
    *
  • *

    * Must contain from 1 to 63 letters, numbers, or hyphens. *

    *
  • *
  • *

    * First character must be a letter. *

    *
  • *
  • *

    * Cannot end with a hyphen or contain two consecutive hyphens. *

    *
  • *
*

* Example: my-cluster-snapshot2 *

* * @return The identifier of the new DB cluster snapshot to create from the source DB cluster snapshot. This * parameter is not case-sensitive.

*

* Constraints: *

*
    *
  • *

    * Must contain from 1 to 63 letters, numbers, or hyphens. *

    *
  • *
  • *

    * First character must be a letter. *

    *
  • *
  • *

    * Cannot end with a hyphen or contain two consecutive hyphens. *

    *
  • *
*

* Example: my-cluster-snapshot2 */ public String getTargetDBClusterSnapshotIdentifier() { return this.targetDBClusterSnapshotIdentifier; } /** *

* The identifier of the new DB cluster snapshot to create from the source DB cluster snapshot. This parameter is * not case-sensitive. *

*

* Constraints: *

*
    *
  • *

    * Must contain from 1 to 63 letters, numbers, or hyphens. *

    *
  • *
  • *

    * First character must be a letter. *

    *
  • *
  • *

    * Cannot end with a hyphen or contain two consecutive hyphens. *

    *
  • *
*

* Example: my-cluster-snapshot2 *

* * @param targetDBClusterSnapshotIdentifier * The identifier of the new DB cluster snapshot to create from the source DB cluster snapshot. This * parameter is not case-sensitive.

*

* Constraints: *

*
    *
  • *

    * Must contain from 1 to 63 letters, numbers, or hyphens. *

    *
  • *
  • *

    * First character must be a letter. *

    *
  • *
  • *

    * Cannot end with a hyphen or contain two consecutive hyphens. *

    *
  • *
*

* Example: my-cluster-snapshot2 * @return Returns a reference to this object so that method calls can be chained together. */ public CopyDBClusterSnapshotRequest withTargetDBClusterSnapshotIdentifier(String targetDBClusterSnapshotIdentifier) { setTargetDBClusterSnapshotIdentifier(targetDBClusterSnapshotIdentifier); return this; } /** *

* The Amazon Amazon KMS key ID for an encrypted DB cluster snapshot. The KMS key ID is the Amazon Resource Name * (ARN), KMS key identifier, or the KMS key alias for the KMS encryption key. *

*

* If you copy an encrypted DB cluster snapshot from your Amazon account, you can specify a value for * KmsKeyId to encrypt the copy with a new KMS encryption key. If you don't specify a value for * KmsKeyId, then the copy of the DB cluster snapshot is encrypted with the same KMS key as the source * DB cluster snapshot. *

*

* If you copy an encrypted DB cluster snapshot that is shared from another Amazon account, then you must specify a * value for KmsKeyId. *

*

* KMS encryption keys are specific to the Amazon Region that they are created in, and you can't use encryption keys * from one Amazon Region in another Amazon Region. *

*

* You cannot encrypt an unencrypted DB cluster snapshot when you copy it. If you try to copy an unencrypted DB * cluster snapshot and specify a value for the KmsKeyId parameter, an error is returned. *

* * @param kmsKeyId * The Amazon Amazon KMS key ID for an encrypted DB cluster snapshot. The KMS key ID is the Amazon Resource * Name (ARN), KMS key identifier, or the KMS key alias for the KMS encryption key.

*

* If you copy an encrypted DB cluster snapshot from your Amazon account, you can specify a value for * KmsKeyId to encrypt the copy with a new KMS encryption key. If you don't specify a value for * KmsKeyId, then the copy of the DB cluster snapshot is encrypted with the same KMS key as the * source DB cluster snapshot. *

*

* If you copy an encrypted DB cluster snapshot that is shared from another Amazon account, then you must * specify a value for KmsKeyId. *

*

* KMS encryption keys are specific to the Amazon Region that they are created in, and you can't use * encryption keys from one Amazon Region in another Amazon Region. *

*

* You cannot encrypt an unencrypted DB cluster snapshot when you copy it. If you try to copy an unencrypted * DB cluster snapshot and specify a value for the KmsKeyId parameter, an error is returned. */ public void setKmsKeyId(String kmsKeyId) { this.kmsKeyId = kmsKeyId; } /** *

* The Amazon Amazon KMS key ID for an encrypted DB cluster snapshot. The KMS key ID is the Amazon Resource Name * (ARN), KMS key identifier, or the KMS key alias for the KMS encryption key. *

*

* If you copy an encrypted DB cluster snapshot from your Amazon account, you can specify a value for * KmsKeyId to encrypt the copy with a new KMS encryption key. If you don't specify a value for * KmsKeyId, then the copy of the DB cluster snapshot is encrypted with the same KMS key as the source * DB cluster snapshot. *

*

* If you copy an encrypted DB cluster snapshot that is shared from another Amazon account, then you must specify a * value for KmsKeyId. *

*

* KMS encryption keys are specific to the Amazon Region that they are created in, and you can't use encryption keys * from one Amazon Region in another Amazon Region. *

*

* You cannot encrypt an unencrypted DB cluster snapshot when you copy it. If you try to copy an unencrypted DB * cluster snapshot and specify a value for the KmsKeyId parameter, an error is returned. *

* * @return The Amazon Amazon KMS key ID for an encrypted DB cluster snapshot. The KMS key ID is the Amazon Resource * Name (ARN), KMS key identifier, or the KMS key alias for the KMS encryption key.

*

* If you copy an encrypted DB cluster snapshot from your Amazon account, you can specify a value for * KmsKeyId to encrypt the copy with a new KMS encryption key. If you don't specify a value for * KmsKeyId, then the copy of the DB cluster snapshot is encrypted with the same KMS key as the * source DB cluster snapshot. *

*

* If you copy an encrypted DB cluster snapshot that is shared from another Amazon account, then you must * specify a value for KmsKeyId. *

*

* KMS encryption keys are specific to the Amazon Region that they are created in, and you can't use * encryption keys from one Amazon Region in another Amazon Region. *

*

* You cannot encrypt an unencrypted DB cluster snapshot when you copy it. If you try to copy an unencrypted * DB cluster snapshot and specify a value for the KmsKeyId parameter, an error is returned. */ public String getKmsKeyId() { return this.kmsKeyId; } /** *

* The Amazon Amazon KMS key ID for an encrypted DB cluster snapshot. The KMS key ID is the Amazon Resource Name * (ARN), KMS key identifier, or the KMS key alias for the KMS encryption key. *

*

* If you copy an encrypted DB cluster snapshot from your Amazon account, you can specify a value for * KmsKeyId to encrypt the copy with a new KMS encryption key. If you don't specify a value for * KmsKeyId, then the copy of the DB cluster snapshot is encrypted with the same KMS key as the source * DB cluster snapshot. *

*

* If you copy an encrypted DB cluster snapshot that is shared from another Amazon account, then you must specify a * value for KmsKeyId. *

*

* KMS encryption keys are specific to the Amazon Region that they are created in, and you can't use encryption keys * from one Amazon Region in another Amazon Region. *

*

* You cannot encrypt an unencrypted DB cluster snapshot when you copy it. If you try to copy an unencrypted DB * cluster snapshot and specify a value for the KmsKeyId parameter, an error is returned. *

* * @param kmsKeyId * The Amazon Amazon KMS key ID for an encrypted DB cluster snapshot. The KMS key ID is the Amazon Resource * Name (ARN), KMS key identifier, or the KMS key alias for the KMS encryption key.

*

* If you copy an encrypted DB cluster snapshot from your Amazon account, you can specify a value for * KmsKeyId to encrypt the copy with a new KMS encryption key. If you don't specify a value for * KmsKeyId, then the copy of the DB cluster snapshot is encrypted with the same KMS key as the * source DB cluster snapshot. *

*

* If you copy an encrypted DB cluster snapshot that is shared from another Amazon account, then you must * specify a value for KmsKeyId. *

*

* KMS encryption keys are specific to the Amazon Region that they are created in, and you can't use * encryption keys from one Amazon Region in another Amazon Region. *

*

* You cannot encrypt an unencrypted DB cluster snapshot when you copy it. If you try to copy an unencrypted * DB cluster snapshot and specify a value for the KmsKeyId parameter, an error is returned. * @return Returns a reference to this object so that method calls can be chained together. */ public CopyDBClusterSnapshotRequest withKmsKeyId(String kmsKeyId) { setKmsKeyId(kmsKeyId); return this; } /** *

* Not currently supported. *

* * @param preSignedUrl * Not currently supported. */ public void setPreSignedUrl(String preSignedUrl) { this.preSignedUrl = preSignedUrl; } /** *

* Not currently supported. *

* * @return Not currently supported. */ public String getPreSignedUrl() { return this.preSignedUrl; } /** *

* Not currently supported. *

* * @param preSignedUrl * Not currently supported. * @return Returns a reference to this object so that method calls can be chained together. */ public CopyDBClusterSnapshotRequest withPreSignedUrl(String preSignedUrl) { setPreSignedUrl(preSignedUrl); return this; } /** *

* True to copy all tags from the source DB cluster snapshot to the target DB cluster snapshot, and otherwise false. * The default is false. *

* * @param copyTags * True to copy all tags from the source DB cluster snapshot to the target DB cluster snapshot, and otherwise * false. The default is false. */ public void setCopyTags(Boolean copyTags) { this.copyTags = copyTags; } /** *

* True to copy all tags from the source DB cluster snapshot to the target DB cluster snapshot, and otherwise false. * The default is false. *

* * @return True to copy all tags from the source DB cluster snapshot to the target DB cluster snapshot, and * otherwise false. The default is false. */ public Boolean getCopyTags() { return this.copyTags; } /** *

* True to copy all tags from the source DB cluster snapshot to the target DB cluster snapshot, and otherwise false. * The default is false. *

* * @param copyTags * True to copy all tags from the source DB cluster snapshot to the target DB cluster snapshot, and otherwise * false. The default is false. * @return Returns a reference to this object so that method calls can be chained together. */ public CopyDBClusterSnapshotRequest withCopyTags(Boolean copyTags) { setCopyTags(copyTags); return this; } /** *

* True to copy all tags from the source DB cluster snapshot to the target DB cluster snapshot, and otherwise false. * The default is false. *

* * @return True to copy all tags from the source DB cluster snapshot to the target DB cluster snapshot, and * otherwise false. The default is false. */ public Boolean isCopyTags() { return this.copyTags; } /** *

* The tags to assign to the new DB cluster snapshot copy. *

* * @return The tags to assign to the new DB cluster snapshot copy. */ public java.util.List getTags() { return tags; } /** *

* The tags to assign to the new DB cluster snapshot copy. *

* * @param tags * The tags to assign to the new DB cluster snapshot copy. */ public void setTags(java.util.Collection tags) { if (tags == null) { this.tags = null; return; } this.tags = new java.util.ArrayList(tags); } /** *

* The tags to assign to the new DB cluster snapshot copy. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setTags(java.util.Collection)} or {@link #withTags(java.util.Collection)} if you want to override the * existing values. *

* * @param tags * The tags to assign to the new DB cluster snapshot copy. * @return Returns a reference to this object so that method calls can be chained together. */ public CopyDBClusterSnapshotRequest withTags(Tag... tags) { if (this.tags == null) { setTags(new java.util.ArrayList(tags.length)); } for (Tag ele : tags) { this.tags.add(ele); } return this; } /** *

* The tags to assign to the new DB cluster snapshot copy. *

* * @param tags * The tags to assign to the new DB cluster snapshot copy. * @return Returns a reference to this object so that method calls can be chained together. */ public CopyDBClusterSnapshotRequest withTags(java.util.Collection tags) { setTags(tags); return this; } /** * The region where the source instance is located. * * @param sourceRegion * The region where the source instance is located. */ public void setSourceRegion(String sourceRegion) { this.sourceRegion = sourceRegion; } /** * The region where the source instance is located. * * @return The region where the source instance is located. */ public String getSourceRegion() { return this.sourceRegion; } /** * The region where the source instance is located. * * @param sourceRegion * The region where the source instance is located. * @return Returns a reference to this object so that method calls can be chained together. */ public CopyDBClusterSnapshotRequest withSourceRegion(String sourceRegion) { setSourceRegion(sourceRegion); 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 (getSourceDBClusterSnapshotIdentifier() != null) sb.append("SourceDBClusterSnapshotIdentifier: ").append(getSourceDBClusterSnapshotIdentifier()).append(","); if (getTargetDBClusterSnapshotIdentifier() != null) sb.append("TargetDBClusterSnapshotIdentifier: ").append(getTargetDBClusterSnapshotIdentifier()).append(","); if (getKmsKeyId() != null) sb.append("KmsKeyId: ").append(getKmsKeyId()).append(","); if (getPreSignedUrl() != null) sb.append("PreSignedUrl: ").append(getPreSignedUrl()).append(","); if (getCopyTags() != null) sb.append("CopyTags: ").append(getCopyTags()).append(","); if (getTags() != null) sb.append("Tags: ").append(getTags()).append(","); if (getSourceRegion() != null) sb.append("SourceRegion: ").append(getSourceRegion()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CopyDBClusterSnapshotRequest == false) return false; CopyDBClusterSnapshotRequest other = (CopyDBClusterSnapshotRequest) obj; if (other.getSourceDBClusterSnapshotIdentifier() == null ^ this.getSourceDBClusterSnapshotIdentifier() == null) return false; if (other.getSourceDBClusterSnapshotIdentifier() != null && other.getSourceDBClusterSnapshotIdentifier().equals(this.getSourceDBClusterSnapshotIdentifier()) == false) return false; if (other.getTargetDBClusterSnapshotIdentifier() == null ^ this.getTargetDBClusterSnapshotIdentifier() == null) return false; if (other.getTargetDBClusterSnapshotIdentifier() != null && other.getTargetDBClusterSnapshotIdentifier().equals(this.getTargetDBClusterSnapshotIdentifier()) == false) return false; if (other.getKmsKeyId() == null ^ this.getKmsKeyId() == null) return false; if (other.getKmsKeyId() != null && other.getKmsKeyId().equals(this.getKmsKeyId()) == false) return false; if (other.getPreSignedUrl() == null ^ this.getPreSignedUrl() == null) return false; if (other.getPreSignedUrl() != null && other.getPreSignedUrl().equals(this.getPreSignedUrl()) == false) return false; if (other.getCopyTags() == null ^ this.getCopyTags() == null) return false; if (other.getCopyTags() != null && other.getCopyTags().equals(this.getCopyTags()) == false) return false; if (other.getTags() == null ^ this.getTags() == null) return false; if (other.getTags() != null && other.getTags().equals(this.getTags()) == false) return false; if (other.getSourceRegion() == null ^ this.getSourceRegion() == null) return false; if (other.getSourceRegion() != null && other.getSourceRegion().equals(this.getSourceRegion()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getSourceDBClusterSnapshotIdentifier() == null) ? 0 : getSourceDBClusterSnapshotIdentifier().hashCode()); hashCode = prime * hashCode + ((getTargetDBClusterSnapshotIdentifier() == null) ? 0 : getTargetDBClusterSnapshotIdentifier().hashCode()); hashCode = prime * hashCode + ((getKmsKeyId() == null) ? 0 : getKmsKeyId().hashCode()); hashCode = prime * hashCode + ((getPreSignedUrl() == null) ? 0 : getPreSignedUrl().hashCode()); hashCode = prime * hashCode + ((getCopyTags() == null) ? 0 : getCopyTags().hashCode()); hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode()); hashCode = prime * hashCode + ((getSourceRegion() == null) ? 0 : getSourceRegion().hashCode()); return hashCode; } @Override public CopyDBClusterSnapshotRequest clone() { return (CopyDBClusterSnapshotRequest) super.clone(); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy