1# -*- Mode: cperl; coding: utf-8; cperl-indent-level: 4 -*- 2# vim: ts=4 sts=4 sw=4: 3package CPAN::Exception::yaml_process_error; 4use strict; 5use overload '""' => "as_string"; 6 7use vars qw( 8 $VERSION 9); 10$VERSION = "5.5"; 11 12 13sub new { 14 my($class,$module,$file,$during,$error) = @_; 15 # my $at = Carp::longmess(""); # XXX find something more beautiful 16 bless { module => $module, 17 file => $file, 18 during => $during, 19 error => $error, 20 # at => $at, 21 }, $class; 22} 23 24sub as_string { 25 my($self) = shift; 26 if ($self->{during}) { 27 if ($self->{file}) { 28 if ($self->{module}) { 29 if ($self->{error}) { 30 return "Alert: While trying to '$self->{during}' YAML file\n". 31 " '$self->{file}'\n". 32 "with '$self->{module}' the following error was encountered:\n". 33 " $self->{error}\n"; 34 } else { 35 return "Alert: While trying to '$self->{during}' YAML file\n". 36 " '$self->{file}'\n". 37 "with '$self->{module}' some unknown error was encountered\n"; 38 } 39 } else { 40 return "Alert: While trying to '$self->{during}' YAML file\n". 41 " '$self->{file}'\n". 42 "some unknown error was encountered\n"; 43 } 44 } else { 45 return "Alert: While trying to '$self->{during}' some YAML file\n". 46 "some unknown error was encountered\n"; 47 } 48 } else { 49 return "Alert: unknown error encountered\n"; 50 } 51} 52 531; 54