diff options
| author | fukachan <fukachan> | 2001-04-08 13:25:37 +0000 |
|---|---|---|
| committer | fukachan <fukachan> | 2001-04-08 13:25:37 +0000 |
| commit | 8ff4b4e616c1f63ec678fbc3f8a5853a176a3b9b (patch) | |
| tree | 9aa050978d390c12041f552728600e1cfbd941c6 /fml/lib/ErrorStatus.pm | |
| parent | 011b9510e51ea389595001cf01c86dcf9bffe6a8 (diff) | |
| download | fml8-8ff4b4e616c1f63ec678fbc3f8a5853a176a3b9b.tar.gz fml8-8ff4b4e616c1f63ec678fbc3f8a5853a176a3b9b.tar.bz2 fml8-8ff4b4e616c1f63ec678fbc3f8a5853a176a3b9b.zip | |
relocate error() et. al. definitions for each module to have each
handlers within under the hierarchy.
Diffstat (limited to 'fml/lib/ErrorStatus.pm')
| -rw-r--r-- | fml/lib/ErrorStatus.pm | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/fml/lib/ErrorStatus.pm b/fml/lib/ErrorStatus.pm new file mode 100644 index 00000000..003470ea --- /dev/null +++ b/fml/lib/ErrorStatus.pm @@ -0,0 +1,111 @@ +#-*- perl -*- +# +# Copyright (C) 2001 Ken'ichi Fukamachi +# All rights reserved. This program is free software; you can +# redistribute it and/or modify it under the same terms as Perl itself. +# +# $FML: Status.pm,v 1.3 2001/04/03 09:45:39 fukachan Exp $ +# + +package ErrorStatus; + +use strict; +use vars qw(@ISA @EXPORT @EXPORT_OK); +use Carp; + +require Exporter; +@ISA = qw(Exporter); +@EXPORT_OK = qw(errstr error error_set error_clear); + +=head1 NAME + +ErrorStatus - error handling component + +=head1 SYNOPSIS + +Use this module in your C<Something> class module like this: + + package Something; + use ErrorStatus qw(errstr error error_set error_clear); + + sub xxx + { + if something errors ... + $self->error_set( why this error occurs ... ); + } + +You use C<Something> module like this. + + use Something; + $obj = new Something; + $obj->xxx(); + unless ($obj->error) { $obj->do_somting( ...); }; + +=head1 DESCRIPTION + +simple utility functions to manipulate error messages. + +=head1 METHODS + +=head2 C<error_set($message)> + +save $message as an error message. + +=head2 C<error()> + +return $message which is saved by C<error_set($msg)>. + +=cut + + +sub error_set +{ + my ($self, $mesg) = @_; + $self->{'_error_reason'} = $mesg; +} + + +sub error +{ + my ($self, $args) = @_; + return $self->{'_error_reason'}; +} + + +sub errstr +{ + my ($self, $args) = @_; + return $self->{'_error_reason'}; +} + + +sub error_clear +{ + my ($self, $args) = @_; + my $msg = $self->{'_error_reason'}; + undef $self->{'_error_reason'} if defined $self->{'_error_reason'}; + undef $self->{'_error_action'} if defined $self->{'_error_action'}; + return $msg; +} + + +=head1 AUTHOR + +Ken'ichi Fukamachi + +=head1 COPYRIGHT + +Copyright (C) 2001 Ken'ichi Fukamachi + +All rights reserved. This program is free software; you can +redistribute it and/or modify it under the same terms as Perl itself. + +=head1 HISTORY + +ErrorStatus appeared in fml5 mailing list driver package. +See C<http://www.fml.org/> for more details. + +=cut + + +1; |
