Show
Ignore:
Timestamp:
02/19/08 21:59:14 (6 years ago)
Author:
tokuhirom
Message:

refactoring.

Location:
lang/perl/Net-CIDR-MobileJP/trunk
Files:
1 removed
1 modified

Legend:

Unmodified
Added
Removed
  • lang/perl/Net-CIDR-MobileJP/trunk/net-cidr-mobilejp-scraper.pl

    r2626 r6942  
    22use strict; 
    33use warnings; 
    4 use Getopt::Long; 
    5 use UNIVERSAL::require; 
    6 use Pod::Usage; 
     4 
    75use YAML; 
    86 
    9 my $module = 'Net::CIDR::MobileJP::Scraper'; 
    10 GetOptions( 
    11     'module=s'     => \$module, 
    12 ) or pod2usage(2); 
    13 $module->use or die $@; 
     7use WWW::MobileCarrierJP::DoCoMo::CIDR; 
     8use WWW::MobileCarrierJP::EZWeb::CIDR; 
     9use WWW::MobileCarrierJP::AirHPhone::CIDR; 
     10use WWW::MobileCarrierJP::ThirdForce::CIDR; 
    1411 
    15 print YAML::Dump($module->new->run); 
     12&main;exit; 
     13 
     14sub short_name_for { 
     15    my $carrier = shift; 
     16    +{ 
     17        DoCoMo     => 'I', 
     18        EZWeb      => 'E', 
     19        AirHPhone  => 'H', 
     20        ThirdForce => 'V', 
     21    }->{$carrier}; 
     22} 
     23 
     24sub scrape { 
     25    my $result; 
     26    for my $carrier (qw/DoCoMo EZWeb AirHPhone ThirdForce/) { 
     27        my $class = "WWW::MobileCarrierJP::${carrier}::CIDR"; 
     28        my $dat = $class->scrape; 
     29        $result->{short_name_for($carrier)} = [map { "$_->{ip}$_->{subnetmask}" } @$dat]; 
     30    } 
     31    return $result; 
     32} 
     33 
     34sub main { 
     35    print YAML::Dump(scrape()); 
     36} 
    1637 
    1738__END__ 
     
    2142    $ net-cidr-mobilejp-scraper.pl 
    2243 
    23     Options: 
    24         --module=Net::CIDR::MobileJP::Scraper::Plugin::EZweb 
    25  
    2644=head2 DESCRIPTION 
    2745