| line | stmt | bran | cond | sub | pod | time | code | 
| 1 |  |  |  |  |  |  |  | 
| 2 |  |  |  |  |  |  | package Paws::EC2::CreateVolume; | 
| 3 | 1 |  |  | 1 |  | 650 | use Moose; | 
|  | 1 |  |  | 1 |  | 3 |  | 
|  | 1 |  |  |  |  | 9 |  | 
|  | 1 |  |  |  |  | 815 |  | 
|  | 1 |  |  |  |  | 4 |  | 
|  | 1 |  |  |  |  | 13 |  | 
| 4 |  |  |  |  |  |  | has AvailabilityZone => (is => 'ro', isa => 'Str', required => 1); | 
| 5 |  |  |  |  |  |  | has DryRun => (is => 'ro', isa => 'Bool', traits => ['NameInRequest'], request_name => 'dryRun' ); | 
| 6 |  |  |  |  |  |  | has Encrypted => (is => 'ro', isa => 'Bool', traits => ['NameInRequest'], request_name => 'encrypted' ); | 
| 7 |  |  |  |  |  |  | has Iops => (is => 'ro', isa => 'Int'); | 
| 8 |  |  |  |  |  |  | has KmsKeyId => (is => 'ro', isa => 'Str'); | 
| 9 |  |  |  |  |  |  | has Size => (is => 'ro', isa => 'Int'); | 
| 10 |  |  |  |  |  |  | has SnapshotId => (is => 'ro', isa => 'Str'); | 
| 11 |  |  |  |  |  |  | has TagSpecifications => (is => 'ro', isa => 'ArrayRef[Paws::EC2::TagSpecification]', traits => ['NameInRequest'], request_name => 'TagSpecification' ); | 
| 12 |  |  |  |  |  |  | has VolumeType => (is => 'ro', isa => 'Str'); | 
| 13 |  |  |  |  |  |  |  | 
| 14 | 1 |  |  | 1 |  | 6929 | use MooseX::ClassAttribute; | 
|  | 1 |  |  | 1 |  | 3 |  | 
|  | 1 |  |  |  |  | 9 |  | 
|  | 1 |  |  |  |  | 9753 |  | 
|  | 1 |  |  |  |  | 4 |  | 
|  | 1 |  |  |  |  | 13 |  | 
| 15 |  |  |  |  |  |  |  | 
| 16 |  |  |  |  |  |  | class_has _api_call => (isa => 'Str', is => 'ro', default => 'CreateVolume'); | 
| 17 |  |  |  |  |  |  | class_has _returns => (isa => 'Str', is => 'ro', default => 'Paws::EC2::Volume'); | 
| 18 |  |  |  |  |  |  | class_has _result_key => (isa => 'Str', is => 'ro'); | 
| 19 |  |  |  |  |  |  | 1; | 
| 20 |  |  |  |  |  |  |  | 
| 21 |  |  |  |  |  |  | ### main pod documentation begin ### | 
| 22 |  |  |  |  |  |  |  | 
| 23 |  |  |  |  |  |  | =head1 NAME | 
| 24 |  |  |  |  |  |  |  | 
| 25 |  |  |  |  |  |  | Paws::EC2::CreateVolume - Arguments for method CreateVolume on Paws::EC2 | 
| 26 |  |  |  |  |  |  |  | 
| 27 |  |  |  |  |  |  | =head1 DESCRIPTION | 
| 28 |  |  |  |  |  |  |  | 
| 29 |  |  |  |  |  |  | This class represents the parameters used for calling the method CreateVolume on the | 
| 30 |  |  |  |  |  |  | Amazon Elastic Compute Cloud service. Use the attributes of this class | 
| 31 |  |  |  |  |  |  | as arguments to method CreateVolume. | 
| 32 |  |  |  |  |  |  |  | 
| 33 |  |  |  |  |  |  | You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CreateVolume. | 
| 34 |  |  |  |  |  |  |  | 
| 35 |  |  |  |  |  |  | As an example: | 
| 36 |  |  |  |  |  |  |  | 
| 37 |  |  |  |  |  |  | $service_obj->CreateVolume(Att1 => $value1, Att2 => $value2, ...); | 
| 38 |  |  |  |  |  |  |  | 
| 39 |  |  |  |  |  |  | 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. | 
| 40 |  |  |  |  |  |  |  | 
| 41 |  |  |  |  |  |  | =head1 ATTRIBUTES | 
| 42 |  |  |  |  |  |  |  | 
| 43 |  |  |  |  |  |  |  | 
| 44 |  |  |  |  |  |  | =head2 B<REQUIRED> AvailabilityZone => Str | 
| 45 |  |  |  |  |  |  |  | 
| 46 |  |  |  |  |  |  | The Availability Zone in which to create the volume. Use | 
| 47 |  |  |  |  |  |  | DescribeAvailabilityZones to list the Availability Zones that are | 
| 48 |  |  |  |  |  |  | currently available to you. | 
| 49 |  |  |  |  |  |  |  | 
| 50 |  |  |  |  |  |  |  | 
| 51 |  |  |  |  |  |  |  | 
| 52 |  |  |  |  |  |  | =head2 DryRun => Bool | 
| 53 |  |  |  |  |  |  |  | 
| 54 |  |  |  |  |  |  | Checks whether you have the required permissions for the action, | 
| 55 |  |  |  |  |  |  | without actually making the request, and provides an error response. If | 
| 56 |  |  |  |  |  |  | you have the required permissions, the error response is | 
| 57 |  |  |  |  |  |  | C<DryRunOperation>. Otherwise, it is C<UnauthorizedOperation>. | 
| 58 |  |  |  |  |  |  |  | 
| 59 |  |  |  |  |  |  |  | 
| 60 |  |  |  |  |  |  |  | 
| 61 |  |  |  |  |  |  | =head2 Encrypted => Bool | 
| 62 |  |  |  |  |  |  |  | 
| 63 |  |  |  |  |  |  | Specifies whether the volume should be encrypted. Encrypted Amazon EBS | 
| 64 |  |  |  |  |  |  | volumes may only be attached to instances that support Amazon EBS | 
| 65 |  |  |  |  |  |  | encryption. Volumes that are created from encrypted snapshots are | 
| 66 |  |  |  |  |  |  | automatically encrypted. There is no way to create an encrypted volume | 
| 67 |  |  |  |  |  |  | from an unencrypted snapshot or vice versa. If your AMI uses encrypted | 
| 68 |  |  |  |  |  |  | volumes, you can only launch it on supported instance types. For more | 
| 69 |  |  |  |  |  |  | information, see Amazon EBS Encryption in the I<Amazon Elastic Compute | 
| 70 |  |  |  |  |  |  | Cloud User Guide>. | 
| 71 |  |  |  |  |  |  |  | 
| 72 |  |  |  |  |  |  |  | 
| 73 |  |  |  |  |  |  |  | 
| 74 |  |  |  |  |  |  | =head2 Iops => Int | 
| 75 |  |  |  |  |  |  |  | 
| 76 |  |  |  |  |  |  | Only valid for Provisioned IOPS SSD volumes. The number of I/O | 
| 77 |  |  |  |  |  |  | operations per second (IOPS) to provision for the volume, with a | 
| 78 |  |  |  |  |  |  | maximum ratio of 50 IOPS/GiB. | 
| 79 |  |  |  |  |  |  |  | 
| 80 |  |  |  |  |  |  | Constraint: Range is 100 to 20000 for Provisioned IOPS SSD volumes | 
| 81 |  |  |  |  |  |  |  | 
| 82 |  |  |  |  |  |  |  | 
| 83 |  |  |  |  |  |  |  | 
| 84 |  |  |  |  |  |  | =head2 KmsKeyId => Str | 
| 85 |  |  |  |  |  |  |  | 
| 86 |  |  |  |  |  |  | The full ARN of the AWS Key Management Service (AWS KMS) customer | 
| 87 |  |  |  |  |  |  | master key (CMK) to use when creating the encrypted volume. This | 
| 88 |  |  |  |  |  |  | parameter is only required if you want to use a non-default CMK; if | 
| 89 |  |  |  |  |  |  | this parameter is not specified, the default CMK for EBS is used. The | 
| 90 |  |  |  |  |  |  | ARN contains the C<arn:aws:kms> namespace, followed by the region of | 
| 91 |  |  |  |  |  |  | the CMK, the AWS account ID of the CMK owner, the C<key> namespace, and | 
| 92 |  |  |  |  |  |  | then the CMK ID. For example, | 
| 93 |  |  |  |  |  |  | arn:aws:kms:I<us-east-1>:I<012345678910>:key/I<abcd1234-a123-456a-a12b-a123b4cd56ef>. | 
| 94 |  |  |  |  |  |  | If a C<KmsKeyId> is specified, the C<Encrypted> flag must also be set. | 
| 95 |  |  |  |  |  |  |  | 
| 96 |  |  |  |  |  |  |  | 
| 97 |  |  |  |  |  |  |  | 
| 98 |  |  |  |  |  |  | =head2 Size => Int | 
| 99 |  |  |  |  |  |  |  | 
| 100 |  |  |  |  |  |  | The size of the volume, in GiBs. | 
| 101 |  |  |  |  |  |  |  | 
| 102 |  |  |  |  |  |  | Constraints: 1-16384 for C<gp2>, 4-16384 for C<io1>, 500-16384 for | 
| 103 |  |  |  |  |  |  | C<st1>, 500-16384 for C<sc1>, and 1-1024 for C<standard>. If you | 
| 104 |  |  |  |  |  |  | specify a snapshot, the volume size must be equal to or larger than the | 
| 105 |  |  |  |  |  |  | snapshot size. | 
| 106 |  |  |  |  |  |  |  | 
| 107 |  |  |  |  |  |  | Default: If you're creating the volume from a snapshot and don't | 
| 108 |  |  |  |  |  |  | specify a volume size, the default is the snapshot size. | 
| 109 |  |  |  |  |  |  |  | 
| 110 |  |  |  |  |  |  |  | 
| 111 |  |  |  |  |  |  |  | 
| 112 |  |  |  |  |  |  | =head2 SnapshotId => Str | 
| 113 |  |  |  |  |  |  |  | 
| 114 |  |  |  |  |  |  | The snapshot from which to create the volume. | 
| 115 |  |  |  |  |  |  |  | 
| 116 |  |  |  |  |  |  |  | 
| 117 |  |  |  |  |  |  |  | 
| 118 |  |  |  |  |  |  | =head2 TagSpecifications => ArrayRef[L<Paws::EC2::TagSpecification>] | 
| 119 |  |  |  |  |  |  |  | 
| 120 |  |  |  |  |  |  | The tags to apply to the volume during creation. | 
| 121 |  |  |  |  |  |  |  | 
| 122 |  |  |  |  |  |  |  | 
| 123 |  |  |  |  |  |  |  | 
| 124 |  |  |  |  |  |  | =head2 VolumeType => Str | 
| 125 |  |  |  |  |  |  |  | 
| 126 |  |  |  |  |  |  | The volume type. This can be C<gp2> for General Purpose SSD, C<io1> for | 
| 127 |  |  |  |  |  |  | Provisioned IOPS SSD, C<st1> for Throughput Optimized HDD, C<sc1> for | 
| 128 |  |  |  |  |  |  | Cold HDD, or C<standard> for Magnetic volumes. | 
| 129 |  |  |  |  |  |  |  | 
| 130 |  |  |  |  |  |  | Default: C<standard> | 
| 131 |  |  |  |  |  |  |  | 
| 132 |  |  |  |  |  |  | Valid values are: C<"standard">, C<"io1">, C<"gp2">, C<"sc1">, C<"st1"> | 
| 133 |  |  |  |  |  |  |  | 
| 134 |  |  |  |  |  |  |  | 
| 135 |  |  |  |  |  |  | =head1 SEE ALSO | 
| 136 |  |  |  |  |  |  |  | 
| 137 |  |  |  |  |  |  | This class forms part of L<Paws>, documenting arguments for method CreateVolume in L<Paws::EC2> | 
| 138 |  |  |  |  |  |  |  | 
| 139 |  |  |  |  |  |  | =head1 BUGS and CONTRIBUTIONS | 
| 140 |  |  |  |  |  |  |  | 
| 141 |  |  |  |  |  |  | The source code is located here: https://github.com/pplu/aws-sdk-perl | 
| 142 |  |  |  |  |  |  |  | 
| 143 |  |  |  |  |  |  | Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues | 
| 144 |  |  |  |  |  |  |  | 
| 145 |  |  |  |  |  |  | =cut | 
| 146 |  |  |  |  |  |  |  |