Config::Model::Exception - Exception mechanism for configuration model


NAME

Config::Model::Exception - Exception mechanism for configuration model


SYNOPSIS

 # in module
 Config::Model::Exception::Model->throw
     (
       object => $self,
       error => "Oops in model"
     ) if $fail ;
 # in application
 try 
   { 
     function_that_may_fail() 
   }
 catch Config::Model::Exception::Model with
  {
    my $exception = shift;
    warn $ex->error ;
    # fix failure
  }


DESCRIPTION

You must read the Exception::Class manpage and Error before reading on.

This module creates all the exception class used by the Config::Model manpage.

All expection class name begins with Config::Model::Exception::

The exception classes are:

Any

Base class. It accepts an object argument. The user must pass the reference of the object where the exception occured. The object name (or xpath) will be used to generate the error message.

  TODO: list all exception classes and hierarchy.


How to get trace

By default, most of the exceptions will not print out the stack trace. For debug purpose, you can force a strack trace.

For instance, if you want a stack trace for an "unknown element" error, you must add this line in your script:

  Config::Model::Exception::UnknownElement->Trace(1) ;

If you're not sure which class to trace, add this line in your script:

  Config::Model::Exception::Any->Trace(1) ;


AUTHOR

Dominique Dumont, (ddumont at cpan dot org)


SEE ALSO

the Config::Model manpage, the Config::Model::Instance manpage, the Config::Model::Node manpage, the Config::Model::Value manpage Error, the Exception::Class manpage

 Config::Model::Exception - Exception mechanism for configuration model