Net::Peep::Client


NAME

Net::Peep::Client - Perl extension for client application module subclasses for Peep: The Network Auralizer.


SYNOPSIS

  use Net::Peep::Client;
  @INC = qw{ Net::Peep::Client };
  sub new {
      my $self = shift;
      my $class = ref($self) || $self;
      my $this = $class->SUPER::new();
      bless $this, $class;
  } # end sub new


DESCRIPTION

Provides support methods for the various Peep clients applications, can be subclassed to create new client modules, and eases the creation of generic Peep clients.

See the main Peep client documentation or

  perldoc Peep

for more information on usage of this module.


EXPORT

None by default.


METHODS

    new() - The constructor
    parseopts(%options) - Sets the value (using the setOption method
    of the Net::Peep::Conf object) of all command-line options parsed
    by Getopt::Long.  Additional options may be specified using
    %options.  For more information on the format of the %options
    hash, see Getopt::Long.
    parseconf() - Returns 1 if the option has been defined, 0 otherwise.
    callback($coderef) - Specifies a callback, which must be in the
    form of a code reference, to be used in the MainLoop method.
    MainLoop($sleep) - Starts the main loop.  If $sleep returns false,
    the callback is only called once; otherwise, the main loop sleeps
    $sleep seconds between each call to the callback.
    logger() - Returns a Net::Peep::Log object


AUTHOR

Michael Gilfix <mgilfix@eecs.tufts.edu> Copyright (C) 2000

Collin Starkweather <collin.starkweather@colorado.edu>


SEE ALSO

perl(1), peepd(1), Net::Peep::Client::Logparser, Net::Peep::Client::Sysmonitor, Net::Peep::BC, Net::Peep::Log.

http://peep.sourceforge.net


TERMS AND CONDITIONS

You should have received a file COPYING containing license terms along with this program; if not, write to Michael Gilfix (mgilfix@eecs.tufts.edu) for a copy.

This version of Peep is open source; you can redistribute it and/or modify it under the terms listed in the file COPYING.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


CHANGE LOG

$Log: Net::Peep::Client.html,v $

Revision 1.1 2001/04/23 10:19:14 starky

Commit in preparation for release 0.4.1.

o Altered package namespace of Peep clients to Net::Peep

at the suggestion of a CPAN administrator.

o Changed Peep::Client::Log to Net::Peep::Client::Logparser

and Peep::Client::System to Net::Peep::Client::Sysmonitor

for clarity.

o Made adjustments to documentation.

o Fixed miscellaneous bugs.

Revision 1.12 2001/04/17 06:46:21 starky Hopefully the last commit before submission of the Peep client library to the CPAN. Among the changes:

o The clients have been modified somewhat to more elagantly clean up pidfiles in response to sigint and sigterm signals. o Minor changes have been made to the documentation. o The Peep::Client module searches through a host of directories in order to find peep.conf if it is not immediately found in /etc or provided on the command line. o The make test script conf.t was modified to provide output during the testing process. o Changes files and test.pl files were added to prevent specious complaints during the make process.

Revision 1.11 2001/04/11 04:44:31 starky Included an intelligent search for the Peep configuration file. If no file is specified on the command line or the file specified on the command line is not found, peep searches the following directories for peep.conf:

  /etc
  /usr/local/etc
  /usr
  /usr/local
  /opt

Revision 1.10 2001/04/07 08:01:05 starky Corrected some errors in and made some minor changes to the documentation.

Revision 1.9 2001/04/04 05:40:00 starky Made a more intelligent option parser, allowing a user to more easily override the default options. Also moved all error messages that arise from client options (e.g., using noautodiscovery without specifying a port and server) from the parseopts method to being the responsibility of each individual client.

Also made some minor and transparent changes, such as returning a true value on success for many of the methods which have no explicit return value.

Revision 1.8 2001/03/31 07:51:34 mgilfix

  Last major commit before the 0.4.0 release. All of the newly rewritten
clients and libraries are now working and are nicely formatted. The server
installation has been changed a bit so now peep.conf is generated from
the template file during a configure - which brings us closer to having
a work-out-of-the-box system.

Revision 1.8 2001/03/31 02:17:00 mgilfix Made the final adjustments to for the 0.4.0 release so everything now works. Lots of changes here: autodiscovery works in every situation now (client up, server starts & vice-versa), clients now shutdown elegantly with a SIGTERM or SIGINT and remove their pidfiles upon exit, broadcast and server definitions in the class definitions is now parsed correctly, the client libraries now parse the events so they can translate from names to internal numbers. There's probably some other changes in there but many were made :) Also reformatted all of the code, so it uses consistent indentation.

Revision 1.7 2001/03/30 18:34:12 starky Adjusted documentation and made some modifications to Peep::BC to handle autodiscovery differently. This is the last commit before the 0.4.0 release.

Revision 1.6 2001/03/28 02:41:48 starky Created a new client called 'pinger' which pings a set of hosts to check whether they are alive. Made some adjustments to the client modules to accomodate the new client.

Also fixed some trivial pre-0.4.0-launch bugs.

Revision 1.5 2001/03/27 05:47:55 starky Forgot to use Pod::Text.

Revision 1.4 2001/03/27 00:44:19 starky Completed work on rearchitecting the Peep client API, modified client code to be consistent with the new API, and added and tested the sysmonitor client, which replaces the uptime client.

This is the last major commit prior to launching the new client code, though the API or architecture may undergo some initial changes following launch in response to comments or suggestions from the user and developer base.

Revision 1.3 2001/03/19 07:47:37 starky Fixed bugs in autodiscovery/noautodiscovery. Now both are supported by Peep::BC and both look relatively bug free. Wahoo!

Revision 1.2 2001/03/18 17:17:46 starky Finally got LogParser (now called logparser) running smoothly.

Revision 1.1 2001/03/16 18:31:59 starky Initial commit of some very broken code which will eventually comprise a rearchitecting of the Peep client libraries; most importantly, the Perl modules.

A detailed e-mail regarding this commit will be posted to the Peep develop list (peep-develop@lists.sourceforge.net)

Contact me (Collin Starkweather) at

  collin.starkweather@colorado.edu

or

  collin.starkweather@collinstarkweather.com

with any questions.

 Net::Peep::Client