1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162
|
use strict;
use warnings;
package MetaCPAN::Client::Mirror;
# ABSTRACT: A Mirror data object
$MetaCPAN::Client::Mirror::VERSION = '2.025000';
use Moo;
use Carp;
with 'MetaCPAN::Client::Role::Entity';
my %known_fields = (
scalar => [qw<
aka_name
A_or_CNAME
ccode
city
continent
country
dnsrr
freq
ftp
http
inceptdate
name
note
org
region
reitredate
rsync
src
tz
>],
arrayref => [qw< contact location >],
hashref => [qw<>],
);
my @known_fields =
map { @{ $known_fields{$_} } } qw< scalar arrayref hashref >;
foreach my $field (@known_fields) {
has $field => (
is => 'ro',
lazy => 1,
default => sub {
my $self = shift;
return $self->data->{$field};
},
);
}
sub _known_fields { return \%known_fields }
1;
__END__
=pod
=encoding UTF-8
=head1 NAME
MetaCPAN::Client::Mirror - A Mirror data object
=head1 VERSION
version 2.025000
=head1 SYNOPSIS
my $mirror = $mcpan->mirror('eutelia.it');
=head1 DESCRIPTION
A MetaCPAN mirror entity object.
=head1 ATTRIBUTES
=head2 name
The name of the mirror, which is what you passed
=head2 org
The organization that maintains the mirror.
=head2 ftp
An FTP url for the mirror.
=head2 rsync
An rsync url for the mirror.
=head2 src
=head2 city
The city where the mirror is located.
=head2 country
The name of the country where the mirror is located.
=head2 ccode
The ISO country code for the mirror's country.
=head2 aka_name
=head2 tz
=head2 note
=head2 dnsrr
=head2 region
=head2 inceptdate
=head2 freq
=head2 continent
=head2 http
=head2 reitredate
=head2 A_or_CNAME
=head2 contact
Array-Ref.
=head2 location
Array-Ref.
=head1 AUTHORS
=over 4
=item *
Sawyer X <xsawyerx@cpan.org>
=item *
Mickey Nasriachi <mickey@cpan.org>
=back
=head1 COPYRIGHT AND LICENSE
This software is copyright (c) 2016 by Sawyer X.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
=cut
|