/*
* Copyright 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.
*/
/*
* Do not modify this file. This file is generated from the backup-2018-11-15.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.Backup.Model
{
///
/// Container for the parameters to the StartCopyJob operation.
/// Starts a job to create a one-time copy of the specified resource.
///
///
///
/// Does not support continuous backups.
///
///
public partial class StartCopyJobRequest : AmazonBackupRequest
{
private string _destinationBackupVaultArn;
private string _iamRoleArn;
private string _idempotencyToken;
private Lifecycle _lifecycle;
private string _recoveryPointArn;
private string _sourceBackupVaultName;
///
/// Gets and sets the property DestinationBackupVaultArn.
///
/// An Amazon Resource Name (ARN) that uniquely identifies a destination backup vault
/// to copy to; for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault
.
///
///
[AWSProperty(Required=true)]
public string DestinationBackupVaultArn
{
get { return this._destinationBackupVaultArn; }
set { this._destinationBackupVaultArn = value; }
}
// Check to see if DestinationBackupVaultArn property is set
internal bool IsSetDestinationBackupVaultArn()
{
return this._destinationBackupVaultArn != null;
}
///
/// Gets and sets the property IamRoleArn.
///
/// Specifies the IAM role ARN used to copy the target recovery point; for example, arn:aws:iam::123456789012:role/S3Access
.
///
///
[AWSProperty(Required=true)]
public string IamRoleArn
{
get { return this._iamRoleArn; }
set { this._iamRoleArn = value; }
}
// Check to see if IamRoleArn property is set
internal bool IsSetIamRoleArn()
{
return this._iamRoleArn != null;
}
///
/// Gets and sets the property IdempotencyToken.
///
/// A customer-chosen string that you can use to distinguish between otherwise identical
/// calls to StartCopyJob
. Retrying a successful request with the same idempotency
/// token results in a success message with no action taken.
///
///
public string IdempotencyToken
{
get { return this._idempotencyToken; }
set { this._idempotencyToken = value; }
}
// Check to see if IdempotencyToken property is set
internal bool IsSetIdempotencyToken()
{
return this._idempotencyToken != null;
}
///
/// Gets and sets the property Lifecycle.
///
public Lifecycle Lifecycle
{
get { return this._lifecycle; }
set { this._lifecycle = value; }
}
// Check to see if Lifecycle property is set
internal bool IsSetLifecycle()
{
return this._lifecycle != null;
}
///
/// Gets and sets the property RecoveryPointArn.
///
/// An ARN that uniquely identifies a recovery point to use for the copy job; for example,
/// arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.
///
///
///
[AWSProperty(Required=true)]
public string RecoveryPointArn
{
get { return this._recoveryPointArn; }
set { this._recoveryPointArn = value; }
}
// Check to see if RecoveryPointArn property is set
internal bool IsSetRecoveryPointArn()
{
return this._recoveryPointArn != null;
}
///
/// Gets and sets the property SourceBackupVaultName.
///
/// The name of a logical source container where backups are stored. Backup vaults are
/// identified by names that are unique to the account used to create them and the Amazon
/// Web Services Region where they are created. They consist of lowercase letters, numbers,
/// and hyphens.
///
///
[AWSProperty(Required=true)]
public string SourceBackupVaultName
{
get { return this._sourceBackupVaultName; }
set { this._sourceBackupVaultName = value; }
}
// Check to see if SourceBackupVaultName property is set
internal bool IsSetSourceBackupVaultName()
{
return this._sourceBackupVaultName != null;
}
}
}