From 465f3fc1d8a893ff7f5baf98a64c3a3aaf3a696d Mon Sep 17 00:00:00 2001 From: fukachan Date: Wed, 24 Jan 2001 13:27:23 +0000 Subject: create FML::Base:: --- fml/lib/FML/Base/Errors.pm | 86 ++++++++++++++++++++++++++++++++++++++++++++++ fml/lib/FML/Base/File.pm | 83 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 169 insertions(+) create mode 100644 fml/lib/FML/Base/Errors.pm create mode 100644 fml/lib/FML/Base/File.pm diff --git a/fml/lib/FML/Base/Errors.pm b/fml/lib/FML/Base/Errors.pm new file mode 100644 index 00000000..cd0882a0 --- /dev/null +++ b/fml/lib/FML/Base/Errors.pm @@ -0,0 +1,86 @@ +#-*- 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. +# +# $Id$ +# $FML$ +# + +package Base::Errors; +use strict; +use vars qw(@ISA @EXPORT @EXPORT_OK); +use Carp; + +require Exporter; +@ISA = qw(Exporter); +@EXPORT_OK = qw(error_reason error error_reset); + +=head1 NAME + +Base::Errors.pm - error handling utilities + +=head1 SYNOPSIS + + package Something; + use Base::Errors qw(error_reason error error_reset); + + sub xxx + { + if something errors ... + $self->error_reason( error reason ); + } + +When you use Something module, + + use Something; + $obj = new Something; + unless ($obj->error) { $obj->do_somting( ...); }; + + +=head1 DESCRIPTION + +=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 + +Base::Errors.pm appeared in fml5. + +=cut + + +sub error_reason +{ + my ($self, $mesg) = @_; + $self->{'_error_reason'} = $mesg; +} + + +sub error +{ + my ($self, $args) = @_; + return $self->{'_error_reason'}; +} + + +sub error_reset +{ + 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; +} + + +1; diff --git a/fml/lib/FML/Base/File.pm b/fml/lib/FML/Base/File.pm new file mode 100644 index 00000000..20fcf809 --- /dev/null +++ b/fml/lib/FML/Base/File.pm @@ -0,0 +1,83 @@ +#-*- 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. +# +# $Id$ +# $FML$ +# + +package Base::File; +use strict; +use vars qw(@ISA @EXPORT @EXPORT_OK $ErrorString); +use Carp; + + +require Exporter; +@ISA = qw(Exporter); +@EXPORT_OK = qw(mkdirhier touch); + +=head1 NAME + +Base::Errors.pm - error handling utilities + +=head1 SYNOPSIS + + package Something; + use Base::Errors qw(error_reason error error_reset); + + sub xxx + { + if something errors ... + $self->error_reason( error reason ); + } + +When you use Something module, + + use Something; + $obj = new Something; + unless ($obj->error) { $obj->do_somting( ...); }; + + +=head1 DESCRIPTION + +=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 + +Base::Errors.pm appeared in fml5. + +=cut + +sub error { return $ErrorString;} +sub error_reset { undef $ErrorString;} + +sub mkdirhier +{ + my ($dir, $mode) = @_; + + eval q{ + use File::Path; + mkpath($dir, 0, $mode); + }; + $ErrorString = $@; +} + + +sub touch +{ + +} + + +1; -- cgit v1.2.1