Net-Amazon-EC2
view release on metacpan or search on metacpan
lib/Net/Amazon/EC2/RunningInstances.pm view on Meta::CPAN
=item architecture (optional)
The architecture of the image.
=item root_device_name (optional)
The root device name (e.g., /dev/sda1).
=item root_device_type (optional)
The root device type used by the AMI. The AMI can use an Amazon EBS or instance store root device.
=item block_device_mapping (optional)
An array ref of Net::Amazon::EC2::BlockDeviceMapping objects.
=item tag_set (optional)
An array ref of Net::Amazon::EC2::TagSet objects.
=item name (optional)
The instance name from tags.
=cut
has 'ami_launch_index' => ( is => 'ro', isa => 'Str', required => 0 );
has 'dns_name' => ( is => 'ro', isa => 'Maybe[Str]', required => 0 );
has 'image_id' => ( is => 'ro', isa => 'Str', required => 1 );
has 'kernel_id' => ( is => 'ro', isa => 'Maybe[Str]', required => 1 );
has 'ramdisk_id' => ( is => 'ro', isa => 'Maybe[Str]', required => 1 );
has 'instance_id' => ( is => 'ro', isa => 'Str', required => 1 );
has 'instance_state' => (
is => 'ro',
isa => 'Net::Amazon::EC2::InstanceState',
required => 1
);
has 'instance_type' => ( is => 'ro', isa => 'Str', required => 1 );
has 'key_name' => ( is => 'ro', isa => 'Maybe[Str]', required => 0 );
has 'launch_time' => ( is => 'ro', isa => 'Str', required => 1 );
has 'placement' => ( is => 'ro', isa => 'Net::Amazon::EC2::PlacementResponse', required => 1 );
has 'private_dns_name' => ( is => 'ro', isa => 'Maybe[Str]', required => 0 );
has 'product_codes' => (
is => 'rw',
isa => 'ArrayRef[Net::Amazon::EC2::ProductCode]',
auto_deref => 1,
required => 0,
);
has 'reason' => ( is => 'ro', isa => 'Maybe[Str]', required => 0 );
has 'platform' => ( is => 'ro', isa => 'Maybe[Str]', required => 0 );
has 'monitoring' => ( is => 'ro', isa => 'Maybe[Str]', required => 0 );
has 'subnet_id' => ( is => 'ro', isa => 'Maybe[Str]', required => 0 );
has 'vpc_id' => ( is => 'ro', isa => 'Maybe[Str]', required => 0 );
has 'private_ip_address' => ( is => 'ro', isa => 'Maybe[Str]', required => 0 );
has 'ip_address' => ( is => 'ro', isa => 'Maybe[Str]', required => 0 );
has 'state_reason' => ( is => 'ro', isa => 'Maybe[Net::Amazon::EC2::StateReason]', required => 0 );
has 'architecture' => ( is => 'ro', isa => 'Maybe[Str]', required => 0 );
has 'root_device_name' => ( is => 'ro', isa => 'Maybe[Str]', required => 0 );
has 'root_device_type' => ( is => 'ro', isa => 'Maybe[Str]', required => 0 );
has 'block_device_mapping' => ( is => 'ro', isa => 'Maybe[ArrayRef[Net::Amazon::EC2::BlockDeviceMapping]]', required => 0 );
has 'network_interface_set' => ( is => 'ro', isa => 'Maybe[ArrayRef[Net::Amazon::EC2::NetworkInterfaceSet]]', required => 0 );
has 'tag_set' => ( is => 'ro', isa => 'Maybe[ArrayRef[Net::Amazon::EC2::TagSet]]', required => 0 );
has 'name' => (
is => 'ro',
lazy => 1,
default => sub {
my $self = shift;
return '' if !$self->tag_set || scalar @{$self->tag_set} == 0;
my $name = (grep {$_->{key} eq 'Name'} @{$self->tag_set})[0];
return $name->{value} || '';
},
);
__PACKAGE__->meta->make_immutable();
=back
=head1 AUTHOR
Jeff Kim <cpan@chosec.com>
=head1 COPYRIGHT
Copyright (c) 2006-2010 Jeff Kim. This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
=cut
no Moose;
1;
( run in 0.871 second using v1.01-cache-2.11-cpan-39bf76dae61 )