NAME FTN::Nodelist - Process FTN nodelist SYNOPSIS my $ndl = new FTN::Nodelist(-file => '/fido/var/ndl/nodelist.*'); if (my $node = $ndl->getNode('2:550/4077')) { print $node->sysop(); } else { warn 'Cannot find node'; } DESCRIPTION "FTN::Nodelist" contains functions that can be used to process Fidonet Technology Network nodelist and pointlist. METHODS new This method creates "FTN::Nodelist" object. Can get following arguments: Nodelist file path: -file => '/path/to/nodelist' Path can point to definite file (ex.: '/var/ndl/nodelist.357') or contain wildcard (.*) instead of digital extension. Maximum extension value will be used to find exact nodelist (ex.: '/var/ndl/nodelist.*') Cacheable status: -cache => 0/1 Default is 1. When cacheable status is set to 1, all search results are stored in object cache. It saves resources when searching the same address, but eats memory to store results. Choose appropriate behaviour depending on your tasks. getNode( $addr ) Takes FTN address as argument. Address can be feed in 3D or 4D style (Zone:Net/Node, Zone:Net/Node.Point). If 4D style is specified, point address is searching. Returns "FTN::Nodelist::Node" object if node can be found in nodelist. See FTN::Nodelist::Node for details how these results can be used. Examples: my $node = $ndl->getNode('2:550/0'); my $node = $ndl->getNode('2:2/0'); my $node = $ndl->getNode('2:550/4077'); my $node = $ndl->getNode('2:550/4077.101'); KNOWN ISSUES When using wildcard in nodelist path, maximum extension is taken into account. It may bring to wrong results when there are many nodelist files and current nodelist has lesser number (for example, "nodelist.365" and "nodelist.006"). This issue may be resolved in next versions of "FTN::Nodelist". AUTHORS Serguei Trouchelle Robert James Clay LICENSE This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. COPYRIGHT Copyright (c) 2005-2007 Serguei Trouchelle. All rights reserved. Copyright (c) 2013 Robert James Clay. All rights reserved.