Firewall-Config-Element
view release on metacpan or search on metacpan
lib/Firewall/Config/Element/NatPool/H3c.pm view on Meta::CPAN
package Firewall::Config::Element::NatPool::H3c;
#------------------------------------------------------------------------------
# å è½½æ©å±æ¨¡å
#------------------------------------------------------------------------------
use Moose;
use namespace::autoclean;
use Firewall::Utils::Ip;
#------------------------------------------------------------------------------
# å¼ç¨ Firewall::Config::Element::NatPool::Role è§è²
#------------------------------------------------------------------------------
with 'Firewall::Config::Element::NatPool::Role';
#------------------------------------------------------------------------------
# Firewall::Config::Element::NatPool::H3c éç¨å±æ§
#------------------------------------------------------------------------------
has '+poolIp' => ( is => 'ro', isa => 'ArrayRef', required => 1, );
has name => ( is => 'ro', isa => 'Str', required => 0, );
#------------------------------------------------------------------------------
# éå Firewall::Config::Element::Role => _buildSign æ¹æ³ï¼
#------------------------------------------------------------------------------
sub _buildSign {
my $self = shift;
return $self->createSign( $self->poolName );
}
#------------------------------------------------------------------------------
# å
·ä½å®ç°Firewall::Config::Element::NatPool::Role _buildRange æ¹æ³
#------------------------------------------------------------------------------
sub _buildRange {
my $self = shift;
my $set = Firewall::Utils::Set->new();
for my $addrange ( @{$self->poolIp} ) {
my ( $minip, $maxip ) = split( /\s+/, $addrange );
$set->mergeToSet( Firewall::Utils::Ip->new->getRangeFromIpRange( $minip, $maxip ) );
}
return $set;
}
__PACKAGE__->meta->make_immutable;
1;
( run in 0.807 second using v1.01-cache-2.11-cpan-39bf76dae61 )