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;