NAME
XML::Template::Exception - XML::Template exception handling class.
SYNOPSIS
use XML::Template::Exception;
my $exception = XML::Template::Exception->new ('ERRORTYPE',
'This is the error info.');
my $type = $exception->type;
my $info = $exception->info;
if ($exception->isa ('DB')) {
...
}
DESCRIPTION
This modules provides a class for handing exceptions. Typically exceptions are raised in code generated by Element modules. For instance, here is some exception handling code from the DB Element module:
\$result = \$db->select (Table => \$tables,
Where => \$where);
die XML::Template::Exception->new ('DB', \$db->error ())
if defined \$db->error ();
CONSTRUCTOR
The constructor takes two parameters. The first is the error type which a short identifier. The type may contain dotted components (e.g. 'foo', 'foo.bar', 'foo.bar.baz'), to indicate a hierarchy of exception types. That is, 'foo.bar' would be a specific type of the more general 'foo' type. If no type is given, the type is set to 'Undefined'. The second parameter is some text that describes the exception.
The constructor returns a blessed array containg the exception type and info.
isa
if ($exception->isa ('foo.bar')) {
...
}
This method returns 1 if the Exception is of the given type. The given type is matched against each full type in the type hierarchy as well as each child in the hierarchy. So, for instance, if the exception type is foo.bar
, $exception-
isa ('foo.bar')>, $exception-
isa ('foo')>, and $exception-
isa ('bar')> will all return 1.
type
my $type = $exception->type;
This method returns the exception type.
info
my $info = $exception->info;
This method returns the info associated with the exception.
AUTHOR
Jonathan Waxman <jowaxman@bbl.med.upenn.edu>
COPYRIGHT
Copyright (c) 2002-2003 Jonathan A. Waxman All rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.