File Coverage

blib/lib/Paws/RDS/CopyDBSnapshot.pm
Criterion Covered Total %
statement 6 6 100.0
branch n/a
condition n/a
subroutine 2 2 100.0
pod n/a
total 8 8 100.0


line stmt bran cond sub pod time code
1              
2             package Paws::RDS::CopyDBSnapshot;
3 1     1   478 use Moose;
  1         3  
  1         8  
4             has CopyTags => (is => 'ro', isa => 'Bool');
5             has KmsKeyId => (is => 'ro', isa => 'Str');
6             has OptionGroupName => (is => 'ro', isa => 'Str');
7             has PreSignedUrl => (is => 'ro', isa => 'Str');
8             has SourceDBSnapshotIdentifier => (is => 'ro', isa => 'Str', required => 1);
9             has Tags => (is => 'ro', isa => 'ArrayRef[Paws::RDS::Tag]');
10             has TargetDBSnapshotIdentifier => (is => 'ro', isa => 'Str', required => 1);
11              
12 1     1   6484 use MooseX::ClassAttribute;
  1         4  
  1         9  
13              
14             class_has _api_call => (isa => 'Str', is => 'ro', default => 'CopyDBSnapshot');
15             class_has _returns => (isa => 'Str', is => 'ro', default => 'Paws::RDS::CopyDBSnapshotResult');
16             class_has _result_key => (isa => 'Str', is => 'ro', default => 'CopyDBSnapshotResult');
17             1;
18              
19             ### main pod documentation begin ###
20              
21             =head1 NAME
22              
23             Paws::RDS::CopyDBSnapshot - Arguments for method CopyDBSnapshot on Paws::RDS
24              
25             =head1 DESCRIPTION
26              
27             This class represents the parameters used for calling the method CopyDBSnapshot on the
28             Amazon Relational Database Service service. Use the attributes of this class
29             as arguments to method CopyDBSnapshot.
30              
31             You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CopyDBSnapshot.
32              
33             As an example:
34              
35             $service_obj->CopyDBSnapshot(Att1 => $value1, Att2 => $value2, ...);
36              
37             Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object.
38              
39             =head1 ATTRIBUTES
40              
41              
42             =head2 CopyTags => Bool
43              
44             True to copy all tags from the source DB snapshot to the target DB
45             snapshot; otherwise false. The default is false.
46              
47              
48              
49             =head2 KmsKeyId => Str
50              
51             The AWS KMS key ID for an encrypted DB snapshot. The KMS key ID is the
52             Amazon Resource Name (ARN), KMS key identifier, or the KMS key alias
53             for the KMS encryption key.
54              
55             If you copy an encrypted DB snapshot from your AWS account, you can
56             specify a value for this parameter to encrypt the copy with a new KMS
57             encryption key. If you don't specify a value for this parameter, then
58             the copy of the DB snapshot is encrypted with the same KMS key as the
59             source DB snapshot.
60              
61             If you copy an encrypted DB snapshot that is shared from another AWS
62             account, then you must specify a value for this parameter.
63              
64             If you specify this parameter when you copy an unencrypted snapshot,
65             the copy is encrypted.
66              
67             If you copy an encrypted snapshot to a different AWS Region, then you
68             must specify a KMS key for the destination AWS Region. KMS encryption
69             keys are specific to the AWS Region that they are created in, and you
70             cannot use encryption keys from one AWS Region in another AWS Region.
71              
72              
73              
74             =head2 OptionGroupName => Str
75              
76             The name of an option group to associate with the copy of the snapshot.
77              
78             Specify this option if you are copying a snapshot from one AWS Region
79             to another, and your DB instance uses a nondefault option group. If
80             your source DB instance uses Transparent Data Encryption for Oracle or
81             Microsoft SQL Server, you must specify this option when copying across
82             regions. For more information, see Option Group Considerations.
83              
84              
85              
86             =head2 PreSignedUrl => Str
87              
88             The URL that contains a Signature Version 4 signed request for the
89             C<CopyDBSnapshot> API action in the source AWS Region that contains the
90             source DB snapshot to copy.
91              
92             You must specify this parameter when you copy an encrypted DB snapshot
93             from another AWS Region by using the Amazon RDS API. You can specify
94             the source region option instead of this parameter when you copy an
95             encrypted DB snapshot from another AWS Region by using the AWS CLI.
96              
97             The presigned URL must be a valid request for the C<CopyDBSnapshot> API
98             action that can be executed in the source AWS Region that contains the
99             encrypted DB snapshot to be copied. The presigned URL request must
100             contain the following parameter values:
101              
102             =over
103              
104             =item *
105              
106             C<DestinationRegion> - The AWS Region that the encrypted DB snapshot
107             will be copied to. This AWS Region is the same one where the
108             C<CopyDBSnapshot> action is called that contains this presigned URL.
109              
110             For example, if you copy an encrypted DB snapshot from the us-west-2
111             region to the us-east-1 region, then you call the C<CopyDBSnapshot>
112             action in the us-east-1 region and provide a presigned URL that
113             contains a call to the C<CopyDBSnapshot> action in the us-west-2
114             region. For this example, the C<DestinationRegion> in the presigned URL
115             must be set to the us-east-1 region.
116              
117             =item *
118              
119             C<KmsKeyId> - The KMS key identifier for the key to use to encrypt the
120             copy of the DB snapshot in the destination AWS Region. This is the same
121             identifier for both the C<CopyDBSnapshot> action that is called in the
122             destination AWS Region, and the action contained in the presigned URL.
123              
124             =item *
125              
126             C<SourceDBSnapshotIdentifier> - The DB snapshot identifier for the
127             encrypted snapshot to be copied. This identifier must be in the Amazon
128             Resource Name (ARN) format for the source AWS Region. For example, if
129             you are copying an encrypted DB snapshot from the us-west-2 region,
130             then your C<SourceDBSnapshotIdentifier> looks like the following
131             example:
132             C<arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20161115>.
133              
134             =back
135              
136             To learn how to generate a Signature Version 4 signed request, see
137             Authenticating Requests: Using Query Parameters (AWS Signature Version
138             4) and Signature Version 4 Signing Process.
139              
140              
141              
142             =head2 B<REQUIRED> SourceDBSnapshotIdentifier => Str
143              
144             The identifier for the source DB snapshot.
145              
146             If the source snapshot is in the same AWS Region as the copy, specify a
147             valid DB snapshot identifier. For example, you might specify
148             C<rds:mysql-instance1-snapshot-20130805>.
149              
150             If the source snapshot is in a different AWS Region than the copy,
151             specify a valid DB snapshot ARN. For example, you might specify
152             C<arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20130805>.
153              
154             If you are copying from a shared manual DB snapshot, this parameter
155             must be the Amazon Resource Name (ARN) of the shared DB snapshot.
156              
157             If you are copying an encrypted snapshot this parameter must be in the
158             ARN format for the source AWS Region, and must match the
159             C<SourceDBSnapshotIdentifier> in the C<PreSignedUrl> parameter.
160              
161             Constraints:
162              
163             =over
164              
165             =item *
166              
167             Must specify a valid system snapshot in the "available" state.
168              
169             =back
170              
171             Example: C<rds:mydb-2012-04-02-00-01>
172              
173             Example:
174             C<arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20130805>
175              
176              
177              
178             =head2 Tags => ArrayRef[L<Paws::RDS::Tag>]
179              
180              
181              
182              
183              
184             =head2 B<REQUIRED> TargetDBSnapshotIdentifier => Str
185              
186             The identifier for the copy of the snapshot.
187              
188             Constraints:
189              
190             =over
191              
192             =item *
193              
194             Cannot be null, empty, or blank
195              
196             =item *
197              
198             Must contain from 1 to 255 alphanumeric characters or hyphens
199              
200             =item *
201              
202             First character must be a letter
203              
204             =item *
205              
206             Cannot end with a hyphen or contain two consecutive hyphens
207              
208             =back
209              
210             Example: C<my-db-snapshot>
211              
212              
213              
214              
215             =head1 SEE ALSO
216              
217             This class forms part of L<Paws>, documenting arguments for method CopyDBSnapshot in L<Paws::RDS>
218              
219             =head1 BUGS and CONTRIBUTIONS
220              
221             The source code is located here: https://github.com/pplu/aws-sdk-perl
222              
223             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
224              
225             =cut
226