Algorithm-Closest-NetworkAddress

 view release on metacpan or  search on metacpan

lib/Algorithm/Closest/NetworkAddress.pm  view on Meta::CPAN

from the front (for IP addresses).

=head1 METHODS

=head2 Algorithm::Closest::NetworkAddress->new(network_address_list => ["mon.der.altinity", "mon.lon.altinity", "mon.ny.altinity", "10.20.30.40"]);

Creates an object containing the list of addresses to compare against

=head2 $self->compare($network_address)

Will find the best match in the network_address_list for the network_address specified.
Returns the network address that best matches.

=cut

sub compare {
	my ($self, $target) = @_;
	carp "Must specify a target" unless defined $target;
	my $best_na;
	my $best_level = 0;
	foreach my $na (@{$self->network_address_list}) {
		my $r = $self->measure($na, $target);
		if ($r > $best_level) {
			$best_level = $r;
			$best_na = $na;
		}
	}
	return $best_na || 0;
}

=head1 AUTHOR

Ton Voon C<ton.voon@altinity.com>

=head1 COPYRIGHT

Copyright 2006 Altinity Limited



( run in 0.476 second using v1.01-cache-2.11-cpan-4e96b696675 )