NAME

Net::RNDC::Exception - Internal exception class

SYNOPSIS

For use within Net::RNDC* only.

To throw an error:

die Net::RNDC::Exception->new("some error");

Typically used with Try::Tiny:

try {
  something_that_dies_like_above();
} catch {
  my $err = $_;
  if (UNIVERSAL::isa($err, 'Net::RNDC::Exception')) {
    warn "Error: " . $err->error . "\n";
  }
};

DESCRIPTION

This package is used to pass exceptions around internally so that a simple error interface can be exposed by the API and any actual exceptions are real problems with usage/bugs.

Constructor

new

Net::RNDC::Exception->new($error);

Constructs a new exception with the given $error and attached file/line number information to it.

Required Arguments:

  • $error - A string describing the error.

Methods

Error

my $error = $exception->error;

Returns a string containing the error from object construction, along with a file and line identifier.

AUTHOR

Matthew Horsfall (alh) <WolfSage@gmail.com>

LICENSE

You may distribute this code under the same terms as Perl itself.