package WebCoso::X; use utf8; use strict; use warnings; use Exception::Class ( 'WebCoso::X::Base' => { description => 'eccezione di base', }, 'WebCoso::X::FileError' => { isa => 'WebCoso::X::Base', fields => [ 'filename' ], description => 'classe base per errori relativi a file', }, 'WebCoso::X::ConfigError' => { isa => 'WebCoso::X::FileError', fields => [ 'nested' ], description => 'errore nel file di configurazione', }, 'WebCoso::X::FileNotFound' => { isa => 'WebCoso::X::FileError', fields => [ 'abs_filename' ], description => 'un file di una risorsa non è presente', }, 'WebCoso::X::OpenError' => { isa => 'WebCoso::X::FileError', description => ' non è stato possibile aprire un file', }, 'WebCoso::X::NoSuchPipeline' => { isa => 'WebCoso::X::Base', fields => [ 'pipeline' ], description => 'è stata richiesta una pipeline ignota', }, 'WebCoso::X::NoSuchResource' => { isa => 'WebCoso::X::Base', fields => [ 'resource' ], description => 'è stata richiesta una risorsa ignota', }, 'WebCoso::X::NoSuchStep' => { isa => 'WebCoso::X::Base', fields => [ 'pipeline', 'step' ], description => 'una pipeline vuole usare uno step ignoto', }, ); WebCoso::X::Base->Trace(1); sub WebCoso::X::ConfigError::full_message { my ($self)=@_; return 'Errore di configuazione: ' . $self->nested(); } sub WebCoso::X::FileError::full_message { my ($self)=@_; return 'Errore relativo al file: ' . $self->filename(); } sub WebCoso::X::FileNotFoundError::full_message { my ($self)=@_; return 'Impossibile trovare il file: ' . $self->filename(); } sub WebCoso::X::OpenError::full_message { my ($self)=@_; return 'Impossibile aprire il file: ' . $self->filename(); } sub WebCoso::X::NoSuchPipeline::full_message { my ($self)=@_; return 'Pipeline ignota: ' . $self->pipeline(); } sub WebCoso::X::NoSuchResource::full_message { my ($self)=@_; return 'Risorsa ignota: ' . $self->resource(); } sub WebCoso::X::NoSuchStep::full_message { my ($self)=@_; return 'La pipeline ' . $self->pipeline() . ' vuole usare lo step ' . $self->step() . ' che è ignoto'; } 1;