summaryrefslogtreecommitdiff
path: root/fml
diff options
context:
space:
mode:
authorfukachan <fukachan>2001-05-27 14:27:52 +0000
committerfukachan <fukachan>2001-05-27 14:27:52 +0000
commitca2923dd45188113437adc39455e91a30fe8cc5e (patch)
treec63c6e60a97f5d9bdda4a451b8c9d0054f66e18a /fml
parentebecb4722efdea9668ee10dd41aa696d66505e48 (diff)
downloadfml8-ca2923dd45188113437adc39455e91a30fe8cc5e.tar.gz
fml8-ca2923dd45188113437adc39455e91a30fe8cc5e.tar.bz2
fml8-ca2923dd45188113437adc39455e91a30fe8cc5e.zip
clean up documentation
Diffstat (limited to 'fml')
-rw-r--r--fml/doc/ja/tutorial/internals/config.cf.sgml19
-rw-r--r--fml/lib/FML/Article.pm28
-rw-r--r--fml/lib/FML/Command.pm22
-rw-r--r--fml/lib/FML/Command/add.pm5
-rw-r--r--fml/lib/FML/Command/bye.pm5
-rw-r--r--fml/lib/FML/Command/newml.pm5
-rw-r--r--fml/lib/FML/Command/remove.pm5
-rw-r--r--fml/lib/FML/Command/resign.pm5
-rw-r--r--fml/lib/FML/Command/subscribe.pm5
-rw-r--r--fml/lib/FML/Command/unsubscribe.pm5
-rw-r--r--fml/lib/FML/Config.pm59
-rw-r--r--fml/lib/FML/Debug.pm6
-rw-r--r--fml/lib/FML/Header.pm46
-rw-r--r--fml/lib/FML/Log.pm11
-rw-r--r--fml/lib/FML/PCB.pm23
-rw-r--r--fml/lib/FML/Parse.pm11
-rw-r--r--fml/lib/File/Sequence.pm8
-rw-r--r--fml/lib/File/Utils.pm9
-rw-r--r--fml/lib/IO/File/Atomic.pm20
-rw-r--r--fml/lib/Mail/Bounce/Postfix19991231.pm17
-rw-r--r--fml/lib/Mail/Message/Parse.pm17
21 files changed, 212 insertions, 119 deletions
diff --git a/fml/doc/ja/tutorial/internals/config.cf.sgml b/fml/doc/ja/tutorial/internals/config.cf.sgml
index c08b209b..3883b103 100644
--- a/fml/doc/ja/tutorial/internals/config.cf.sgml
+++ b/fml/doc/ja/tutorial/internals/config.cf.sgml
@@ -1,5 +1,5 @@
<!--
- $FML: config.cf.sgml,v 1.1 2001/05/05 03:53:40 fukachan Exp $
+ $FML: config.cf.sgml,v 1.2 2001/05/10 03:11:43 fukachan Exp $
-->
<chapter>
@@ -155,6 +155,23 @@ $config->{ another_key }
(キーはなんでもよい)メソッドが呼ばれた際に再評価されることになります。
</para>
+
+<sect2>
+ <title> 内部構造: 変数展開 </title>
+
+<para>
+内部構造の話をすると、
+まず %_fml_config に キーと値 の組が保存されます。
+これは $dir/$file のような形式のままです。
+
+get() はこのハッシュではなく %_fml_config_result の値を返しています。
+これは $dir などが展開された後の値で、
+/var/spool/ml/elena/file などとなっています。
+この変数の値の展開は get() なりで呼ばれた時に始めて行なわれます。
+</para>
+
+</sect2>
+
</sect1>
</chapter>
diff --git a/fml/lib/FML/Article.pm b/fml/lib/FML/Article.pm
index 3d5bcb92..d6df27ac 100644
--- a/fml/lib/FML/Article.pm
+++ b/fml/lib/FML/Article.pm
@@ -4,8 +4,7 @@
# 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: Article.pm,v 1.20 2001/04/07 06:41:31 fukachan Exp $
+# $FML: Article.pm,v 1.21 2001/04/08 06:42:59 fukachan Exp $
#
package FML::Article;
@@ -18,7 +17,7 @@ use FML::Log qw(Log LogWarn LogError);
=head1 NAME
-FML::Article - article manipulation components
+FML::Article - manipulate ML article
=head1 SYNOPSIS
@@ -29,17 +28,18 @@ FML::Article - article manipulation components
=head1 DESCRIPTION
-$article object is just a container which holds
+C<$article> object is just a container which holds
C<header> and C<body> object as hash keys.
-The C<header> is an FML::Header object and
-the C<body> is a Mail::Message object.
+The C<header> is an C<FML::Header> object
+and
+the C<body> is a C<Mail::Message> object.
=head1 METHODS
=head2 C<new(curproc)>
-prepare a message duplicated from the incoming message holded in
-C<$curproc->{ incoming_message }>.
+prepare an article message, which is duplicated from the incoming
+message C<$curproc->{ incoming_message }>.
=cut
@@ -84,15 +84,11 @@ sub _setup_article_template
=head2 C<increment_id()>
-increment article sequence number and
+increment the sequence number of this article C<$self> and
save it to C<$sequence_file>.
This routine uses C<File::Sequence> module.
-=head2 C<id()>
-
-return the current article sequence number.
-
=cut
@@ -119,6 +115,12 @@ sub increment_id
}
+=head2 C<id()>
+
+return the current article sequence number.
+
+=cut
+
# Descriptions: return the article id (sequence number)
# Arguments: $self
# Side Effects: none
diff --git a/fml/lib/FML/Command.pm b/fml/lib/FML/Command.pm
index b5e73f4c..3a8d9f27 100644
--- a/fml/lib/FML/Command.pm
+++ b/fml/lib/FML/Command.pm
@@ -4,8 +4,7 @@
# 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$
+# $FML: Command.pm,v 1.4 2001/04/03 09:45:40 fukachan Exp $
#
package FML::Command;
@@ -22,10 +21,22 @@ FML::Command - dispacher of fml commands
=head1 DESCRIPTION
+C<FML::Commands> is a wrapper and dispathcer for fml commands.
+AUTOLOAD() picks up the command request and dispatches
+C<FML::Command::somoting> for the request.
+
=head1 METHODS
=head2 C<new()>
+ordinary constructor.
+
+=head2 C<AUTOLOAD()>
+
+dispatcher.
+It hooks up the C<command> request and loads the module
+C<FML::Command::command>.
+
=cut
@@ -69,6 +80,13 @@ sub AUTOLOAD
}
+=head2 C<require_lock(command)>
+
+specifield C<command> requires lock (giant lock) ?
+return 1 by default (almost all command requires lock).
+
+=cut
+
sub require_lock
{
my ($self, $command) = @_;
diff --git a/fml/lib/FML/Command/add.pm b/fml/lib/FML/Command/add.pm
index 93a68303..776c58fa 100644
--- a/fml/lib/FML/Command/add.pm
+++ b/fml/lib/FML/Command/add.pm
@@ -4,8 +4,7 @@
# 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$
+# $FML: add.pm,v 1.5 2001/04/03 09:45:41 fukachan Exp $
#
package FML::Command::add;
@@ -28,6 +27,8 @@ FML::Command::add - add a new member
=head1 SYNOPSIS
+See C<FML::Command> for more details.
+
=head1 DESCRIPTION
=head1 AUTHOR
diff --git a/fml/lib/FML/Command/bye.pm b/fml/lib/FML/Command/bye.pm
index cbf32718..ca703ff3 100644
--- a/fml/lib/FML/Command/bye.pm
+++ b/fml/lib/FML/Command/bye.pm
@@ -4,8 +4,7 @@
# 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$
+# $FML: bye.pm,v 1.6 2001/04/03 09:45:41 fukachan Exp $
#
package FML::Command::bye;
@@ -29,6 +28,8 @@ FML::Command::bye - remove the specified member
=head1 SYNOPSIS
+See C<FML::Command> for more details.
+
=head1 DESCRIPTION
=head1 AUTHOR
diff --git a/fml/lib/FML/Command/newml.pm b/fml/lib/FML/Command/newml.pm
index ad431a58..e58a94c7 100644
--- a/fml/lib/FML/Command/newml.pm
+++ b/fml/lib/FML/Command/newml.pm
@@ -4,8 +4,7 @@
# 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$
+# $FML: newml.pm,v 1.5 2001/04/03 09:45:42 fukachan Exp $
#
package FML::Command::newml;
@@ -23,6 +22,8 @@ FML::Command::newml - make a new mailing list
$obj = new FML::Command::newml;
$obj->newml($curproc, $args);
+See C<FML::Command> for more details.
+
=head1 DESCRIPTION
=head1 METHODS
diff --git a/fml/lib/FML/Command/remove.pm b/fml/lib/FML/Command/remove.pm
index 951fbbe3..439d45f8 100644
--- a/fml/lib/FML/Command/remove.pm
+++ b/fml/lib/FML/Command/remove.pm
@@ -4,8 +4,7 @@
# 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$
+# $FML: remove.pm,v 1.5 2001/04/03 09:45:42 fukachan Exp $
#
package FML::Command::remove;
@@ -29,6 +28,8 @@ FML::Command::remove - remove the specified member
=head1 SYNOPSIS
+See C<FML::Command> for more details.
+
=head1 DESCRIPTION
=head1 AUTHOR
diff --git a/fml/lib/FML/Command/resign.pm b/fml/lib/FML/Command/resign.pm
index 9fa6375f..71ea8d37 100644
--- a/fml/lib/FML/Command/resign.pm
+++ b/fml/lib/FML/Command/resign.pm
@@ -4,8 +4,7 @@
# 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$
+# $FML: resign.pm,v 1.5 2001/04/03 09:45:42 fukachan Exp $
#
package FML::Command::resign;
@@ -28,6 +27,8 @@ FML::Command::resign - alias of "unsubscribe" command
=head1 SYNOPSIS
+See C<FML::Command> for more details.
+
=head1 DESCRIPTION
all requests are forwarded to C<FML::Command::unsubscribe>.
diff --git a/fml/lib/FML/Command/subscribe.pm b/fml/lib/FML/Command/subscribe.pm
index cd84aef7..6db06362 100644
--- a/fml/lib/FML/Command/subscribe.pm
+++ b/fml/lib/FML/Command/subscribe.pm
@@ -4,8 +4,7 @@
# 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: subscribe.pm,v 1.7 2001/04/03 09:45:42 fukachan Exp $
+# $FML: subscribe.pm,v 1.8 2001/05/04 14:32:32 fukachan Exp $
#
package FML::Command::subscribe;
@@ -21,6 +20,8 @@ FML::Command::subscribe - subscribe a new member
=head1 DESCRIPTION
+See C<FML::Command> for more details.
+
=head1 METHODS
=head2 C<subscribe( $address )>
diff --git a/fml/lib/FML/Command/unsubscribe.pm b/fml/lib/FML/Command/unsubscribe.pm
index 3690fc04..d425357b 100644
--- a/fml/lib/FML/Command/unsubscribe.pm
+++ b/fml/lib/FML/Command/unsubscribe.pm
@@ -4,8 +4,7 @@
# 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: unsubscribe.pm,v 1.7 2001/04/03 09:45:42 fukachan Exp $
+# $FML: unsubscribe.pm,v 1.8 2001/05/04 14:32:32 fukachan Exp $
#
package FML::Command::unsubscribe;
@@ -19,6 +18,8 @@ FML::Command::unsubscribe - remove the specified member
=head1 SYNOPSIS
+See C<FML::Command> for more details.
+
=head1 DESCRIPTION
=head1 METHODS
diff --git a/fml/lib/FML/Config.pm b/fml/lib/FML/Config.pm
index 746b3fa6..688ac32a 100644
--- a/fml/lib/FML/Config.pm
+++ b/fml/lib/FML/Config.pm
@@ -1,7 +1,7 @@
#-*- perl -*-
# Copyright (C) 2000-2001 Ken'ichi Fukamachi
#
-# $FML: Config.pm,v 1.28 2001/05/05 04:01:55 fukachan Exp $
+# $FML: Config.pm,v 1.29 2001/05/18 17:30:09 fukachan Exp $
#
package FML::Config;
@@ -38,29 +38,28 @@ FML::Config -- manipulate fml5 configuration
=head2 DATA STRUCTURE
-C<%CurProc> holds the CURrent PROCess information.
-The hash holds several references to other data structures,
-which are mainly hashes.
+C<$curproc> hash holds the CURrent PROCess information.
+It contains several references to other data structures.
- $CurProc = {
+ $curproc = {
# configurations
config => {
key => value,
},
- # emulator mode though fml mode in fact
- emulator => $emulator,
-
# struct incoming_message holds the mail input from STDIN.
incoming_message => $r_msg,
article => $r_msg,
};
-We use r_variable_name syntax where "r_" implies "reference to" here.
-C<$r_msg> is the reference to "struct message".
+where we use r_variable_name syntax where "r_" implies "reference to"
+here.
+
+For exapmle, this C<$r_msg> is the reference to a hash to represent a
+mail message. It composes of header, body and several information.
$r_msg = {
- r_header => \$header,
+ r_header => \$header,p
r_body => \$body,
info => {
mime-version => 1.0,
@@ -75,12 +74,27 @@ where $header is the object returned by Mail::Header class (CPAN
module) and the $body is the reference to the mail body region on
memory which locates within FML::Parse name space.
+=head2 DELAYED VALUE EXPANSION
+
+data manipulation of set() and get() is assymetric and asynchronous.
+
+C<set(key,value)> saves the value for a key in C<%fml_config>.
+
+C<get(key)> returns the value for a key in C<%fml_config_result>,
+which is value expanded C<%fml_config>.
+The expansion is done when C<get()> is called not when C<set()> is
+called.
+
=head1 METHODS
=head2 C<new( ref_to_curproc )>
-special method only used in the initialization phase.
-This method binds $curproc and the %_fml_config memory area.
+special method used only in the fml initialization phase.
+This method binds $curproc and the %_fml_config hash on memory.
+
+Internally this method uses C<tie()> to get and set a key to a value.
+For example, C<get()> and C<set()> described below is a wrapper for
+tie() IO.
=cut
@@ -133,8 +147,8 @@ alias of C<load_file( filename )>.
=head2 C<load_file( filename )>
-read the configuration file, split key and value and set them to
-%_fml_config.
+read the configuration file, split keys and the values in it and set
+them to %_fml_config.
=cut
@@ -270,9 +284,17 @@ sub _expand_variables
=head2 C<yes( key )>
+useful method to return 1 or 0 according the value to the given key.
+
=head2 C<no( key )>
-=head2 C<has_attribute( key )>
+useful method to return 1 or 0 according the value to the given key.
+
+=head2 C<has_attribute( key, attribute )>
+
+Some types of C<key> has a list as a value.
+If C<key> has the C<attribute> in the list, return 1.
+return 0 if not.
=cut
@@ -354,9 +376,12 @@ sub dump_variables
}
-
=head1 TIEED HASH
+tie() operations for hash are binded to \%_fml_config.
+For example, C<get()> and C<set()> described above is a wrapper for
+tie() IO.
+
=cut
sub TIEHASH
diff --git a/fml/lib/FML/Debug.pm b/fml/lib/FML/Debug.pm
index 098f255e..31582c49 100644
--- a/fml/lib/FML/Debug.pm
+++ b/fml/lib/FML/Debug.pm
@@ -3,7 +3,7 @@
# Copyright (C) 2000-2001 Ken'ichi Fukamachi
# All rights reserved.
#
-# $FML$
+# $FML: Debug.pm,v 1.4 2001/04/03 09:45:40 fukachan Exp $
#
package FML::Debug;
@@ -19,9 +19,9 @@ FML::Debug -- debug utilities
=head1 METHODS
-=item show_structure()
+=head2 C<show_structure($x)>
-It shows the data structure for the given variable.
+It shows the data structure for the given variable C<$x>.
It is just a wrapper for L<Data::Dumper>.
=cut
diff --git a/fml/lib/FML/Header.pm b/fml/lib/FML/Header.pm
index 56b712ae..1e9792cf 100644
--- a/fml/lib/FML/Header.pm
+++ b/fml/lib/FML/Header.pm
@@ -4,8 +4,7 @@
# 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: Header.pm,v 1.35 2001/05/19 03:24:51 fukachan Exp $
+# $FML: Header.pm,v 1.36 2001/05/19 14:15:20 fukachan Exp $
#
package FML::Header;
@@ -44,7 +43,11 @@ C<as_string()>, C<fold_length()>, C<tags()>, C<dup()>, C<cleanup()>,
C<unfold()>.
CAUTION: Pay attention!
-C<FML::Header> overload C<get()> to remove the trailing "\n".
+C<FML::Header> overloads C<get()> to remove the trailing "\n".
+
+=head2 C<new()>
+
+forward the request up to superclass C<Mail::header::new()>.
=cut
@@ -102,6 +105,14 @@ sub set
}
+=head2 C<address_clean_up(address)>
+
+clean up given C<address>.
+It parse it by C<Mail::Address::parse()> and nuke < and >.
+
+=cut
+
+
sub address_clean_up
{
my ($self, $addr) = @_;
@@ -122,6 +133,7 @@ sub address_clean_up
=head2 C<data_type()>
return the C<type> defind in the header's Content-Type field.
+For example, C<text/plain>, C<mime/multipart> and et. al.
=head2 C<mime_boundary()>
@@ -207,11 +219,17 @@ sub add_fml_article_id
=head2 C<add_software_info($config, $args)>
-add X-MLServer: and List-Software:
+add X-MLServer: and List-Software:.
+
+C<MIME::Lite> object as a $args->{ message } can be handled
+when $args->{type} is 'MIME::Lite'.
=head2 C<add_rfc2369($config, $args)>
-add List-* sereies defined in RFC2369.
+add List-* sereies defined in RFC2369 and RFC2919.
+
+C<MIME::Lite> object as a $args->{ message } can be handled
+when $args->{type} is 'MIME::Lite'.
=head2 C<add_x_sequence($config, $args)>
@@ -294,8 +312,8 @@ sub add_x_sequence
=head2 C<rewrite_subject_tag($config, $args)>
-add subject tag e.g. [elena:00010].
-The real function exists in C<FML::Header::Subject>.
+add subject tag like [elena:00010].
+The actual function definitions exist in C<FML::Header::Subject>.
=head2 C<rewrite_reply_to>
@@ -337,6 +355,10 @@ sub rewrite_reply_to
=head2 C<delete_unsafe_header_fields($config, $args)>
remove header fields defiend in C<$unsafe_header_fields>.
+C<$unsafe_header_fields> is a list of keys.
+The keys are space separeted.
+
+ unsafe_header_fields = Return-Receipt-To
=cut
@@ -352,12 +374,13 @@ sub delete_unsafe_header_fields
=head2 C<delete_subject_tag_like_string($string)>
-remove subject tag like string in C<$string>.
+remove subject tag like the string given as C<$string>.
=head2 C<extract_message_id_references()>
-return message-id list (ARRAY REFERENCE) from the header (self).
-It extracts message-id(s) from In-Reply-To: and References: fields.
+return message-id list (ARRAY REFERENCE) extracted from the header
+(C<$self>). It extracts message-id(s) from In-Reply-To: and
+References: fields.
=cut
@@ -400,7 +423,8 @@ sub extract_message_id_references
=head2 C<verify_message_id_uniqueness($config, $args)>
check whether message-id is unique or not. If the message-id is found
-in our past message-id cache, the injected message loops.
+in the past message-id cache, the injected message must causes a mail
+loop.
=head2 C<verify_x_ml_info_uniqueness($config, $args)>
diff --git a/fml/lib/FML/Log.pm b/fml/lib/FML/Log.pm
index 9e516f3b..1c57ccc4 100644
--- a/fml/lib/FML/Log.pm
+++ b/fml/lib/FML/Log.pm
@@ -2,8 +2,7 @@
#
# Copyright (C) 2000 Ken'ichi Fukamachi
#
-# $Id$
-# $FML$
+# $FML: Log.pm,v 1.10 2001/04/03 09:45:40 fukachan Exp $
#
package FML::Log;
@@ -39,10 +38,9 @@ or specify arguments in the hash reference
level => $level,
});
-
=head1 DESCRIPTION
-FML::Log.pm contains several interfaces for several files,
+FML::Log.pm contains several interfaces to write log,
for example, log files, syslog() (not yet implemented).
=head2 Log( $message [, $args])
@@ -61,6 +59,9 @@ This routine depends on C<FML::Config> and C<FML::Credential>.
$config->{ log_format_type } defines the format sytle.
C<sender> to log is taken from C<FML::Credential> object.
+Key C<log_format_type> changes the log format.
+By default our log format is same as one of fml 4.0.
+
=head2 LogWarn( $message [, $args])
same as Log("warn: $message", $args);
@@ -143,7 +144,7 @@ Ken'ichi Fukamachi <F<fukachan@fml.org>>
=head1 COPYRIGHT
-Copyright (C) 2000 Ken'ichi Fukamachi
+Copyright (C) 2000,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.
diff --git a/fml/lib/FML/PCB.pm b/fml/lib/FML/PCB.pm
index 3d9cbd29..2593cc6f 100644
--- a/fml/lib/FML/PCB.pm
+++ b/fml/lib/FML/PCB.pm
@@ -1,8 +1,7 @@
#-*- perl -*-
-# Copyright (C) 2000 Ken'ichi Fukamachi
+# Copyright (C) 2000,2001 Ken'ichi Fukamachi
#
-# $Id$
-# $FML$ # 注意: cvs のタグを $FML$ にする
+# $FML: PCB.pm,v 1.5 2001/04/03 09:45:40 fukachan Exp $
#
package FML::PCB;
@@ -14,7 +13,7 @@ use vars qw(%_fml_PCB); # PCB: Process Control Block (malloc it here)
=head1 NAME
-FML::PCB -- manipulate Process Control Block
+FML::PCB -- hold some information for the current process
=head1 SYNOPSIS
@@ -26,20 +25,19 @@ FML::PCB -- manipulate Process Control Block
=head2 DATA STRUCTURE
-C<$CurProc>->C<{ pcb }> area holds the CURrent PROCess information.
-The hash holds several references to other data structures,
-which are mainly hashes.
+C<$curproc>->C<{ pcb }> area holds some information on the current process.
+The hash holds several references to other data structures.
- $CurProc = {
+Typically, $curproc is composed like this:
+
+ $curproc = {
pcb => {
key => value,
},
incoming_message => $r_msg,
article => $r_msg,
-
- ... snip ...
-
+ ... snip ...
};
=head1 METHODS
@@ -47,8 +45,7 @@ which are mainly hashes.
=head2 C<new( $args )>
initialize the C<pcb> memory area.
-If $args HASH REFERENCE is specified,
-copy the hash content in it to C<pcb> area.
+If $args HASH REFERENCE is specified, initialize C<pcb> area by it.
=cut
diff --git a/fml/lib/FML/Parse.pm b/fml/lib/FML/Parse.pm
index 8dfcc04f..37f84cc3 100644
--- a/fml/lib/FML/Parse.pm
+++ b/fml/lib/FML/Parse.pm
@@ -1,11 +1,10 @@
#-*- perl -*-
#
-# Copyright (C) 2000 Ken'ichi Fukamachi
+# Copyright (C) 2000,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: Parse.pm,v 1.14 2001/04/08 06:43:49 fukachan Exp $
+# $FML: Parse.pm,v 1.15 2001/05/05 15:41:43 fukachan Exp $
#
package FML::Parse;
@@ -33,8 +32,8 @@ C<new()> analyses the data injected from STDIN channel and
split it to a set of mail header and body.
C<new()> returns a set of hash references.
-C<$r_header> is the reference to a header object, which is
-C<Mail::Header> object.
+The returned C<$r_header> is the reference to a header object,
+which is C<Mail::Header> object.
C<$r_body> is reference to the scalar mail body variable, which is
C<Mail::Message> object.
@@ -85,9 +84,9 @@ sub _parse
=head1 SEE ALSO
+L<Mail::Message>,
L<Mail::Header>,
L<FML::Header>,
-L<Mail::Message>,
L<FML::Config>,
L<FML::Log>
diff --git a/fml/lib/File/Sequence.pm b/fml/lib/File/Sequence.pm
index e42a3801..be75d4a8 100644
--- a/fml/lib/File/Sequence.pm
+++ b/fml/lib/File/Sequence.pm
@@ -4,8 +4,7 @@
# 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: Sequence.pm,v 1.6 2001/04/03 09:31:27 fukachan Exp $
+# $FML: Sequence.pm,v 1.7 2001/04/08 13:25:39 fukachan Exp $
#
package File::Sequence;
@@ -45,7 +44,7 @@ $id becomes 0, 1, 2, 0, 1, 2...
=head1 DESCRIPTION
File::Sequence module maintains the sequence number for something,
-for example, the article number.
+for example, the article number typically.
As an extension, you can generate a cyclic number by this module.
Please specify C<modulus> parameter in new() method if you want to get
@@ -64,9 +63,6 @@ increment the sequence number.
=cut
-require Exporter;
-@ISA = qw(Exporter);
-
# Descriptions: constructor
# Arguments: $self $args
diff --git a/fml/lib/File/Utils.pm b/fml/lib/File/Utils.pm
index 7899d91d..59a07d8e 100644
--- a/fml/lib/File/Utils.pm
+++ b/fml/lib/File/Utils.pm
@@ -4,8 +4,7 @@
# All rights reserved. This program is free software; you can
# redistribute it and/or modify it under the same terms as Perl itself.
#
-# $Id$
-# $File$
+# $FML$
#
package File::Utils;
@@ -20,7 +19,7 @@ require Exporter;
=head1 NAME
-File::Utils - utilities to handle files
+File::Utils - utilities to handle files or directories
=head1 SYNOPSIS
@@ -83,7 +82,7 @@ sub mkdirhier
=head2 C<touch($file, $mode)>
-create a file which is size zero if the file not exists.
+create a file (which size is 0) if the file not exists.
=cut
@@ -172,7 +171,7 @@ sub search_program
=head2 C<copy($src, $dst)>
-copy C<$src> to C<$dst> in the atomic way.
+copy C<$src> to C<$dst> in atomic way.
This routine uses C<IO::File::Atomic> module.
=cut
diff --git a/fml/lib/IO/File/Atomic.pm b/fml/lib/IO/File/Atomic.pm
index 4b1eb363..026d810a 100644
--- a/fml/lib/IO/File/Atomic.pm
+++ b/fml/lib/IO/File/Atomic.pm
@@ -4,8 +4,7 @@
# 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$
+# $FML: Atomic.pm,v 1.9 2001/04/03 09:45:46 fukachan Exp $
#
package IO::File::Atomic;
@@ -14,7 +13,6 @@ use vars qw(@ISA @EXPORT @EXPORT_OK);
use Carp;
use IO::File;
-require Exporter;
@ISA = qw(IO::File);
BEGIN {}
@@ -74,8 +72,8 @@ The C<atomic> feature is based on C<rename(2)> system call.
=head2 C<new()>
-The usual constructor.
-The request is forwarded to SUPERCLASS new().
+The ordinary constructor.
+The request is forwarded to SUPER CLASS's new().
=cut
@@ -99,15 +97,14 @@ sub new
open C<file> with C<mode>.
If C<mode> is not specified, open C<file> with writable mode by default.
-Actually this method openes a new temporary file for write.
+Actually this method opens a new temporary file for write.
So to write this C<file> is to write the temporary file.
-When close() method sucesses, the file is replaced with this temporary file,
-so updated.
+When close() method sucesses, the file is replaced with this temporary file.
=head2 C<rw_open(file[, mode])>
-return the read and write file descriptor.
-This is a wrapper for C<open()> method above for conveninece.
+return the file descriptor for both to read and write C<file>.
+This is a wrapper for C<open()> method described above for conveninece.
=head2 C<close()>
@@ -228,7 +225,8 @@ return the error.
=head2 C<rollback()>
-stop the operation. remove the temporary file.
+stop the operation and remove the temporary file to back to the first
+state.
=cut
diff --git a/fml/lib/Mail/Bounce/Postfix19991231.pm b/fml/lib/Mail/Bounce/Postfix19991231.pm
index 07a64098..20ce4b8e 100644
--- a/fml/lib/Mail/Bounce/Postfix19991231.pm
+++ b/fml/lib/Mail/Bounce/Postfix19991231.pm
@@ -4,7 +4,7 @@
# All rights reserved. This program is free software; you can
# redistribute it and/or modify it under the same terms as Perl itself.
#
-# $FML: Postfix19991231.pm,v 1.6 2001/05/20 12:12:04 fukachan Exp $
+# $FML: Postfix19991231.pm,v 1.7 2001/05/20 12:19:59 fukachan Exp $
#
@@ -22,23 +22,18 @@ Mail::Bounce::Postfix19991231 - Postfix-19991231 error message format parser
=head1 SYNOPSIS
-=head1 DESCRIPTION
+See C<Mail::Bounce> for more details.
+=head1 DESCRIPTION
- $result = {
- addr => {
- Original-Recipient => 'rfc822; addr'
- Final-Recipient => 'rfc822; addr'
- Diagnostic-Code => 'reason ...'
- Action => 'failed'
- Status => '4.0.0'
- }
- }
+sub class used in C<Mail::Bounce>.
=head1 METHODS
=head2 C<analyze($msg, $result)>
+See C<Mail::Bounce> for more details.
+
=cut
diff --git a/fml/lib/Mail/Message/Parse.pm b/fml/lib/Mail/Message/Parse.pm
index 074d85f6..1bbfd6f2 100644
--- a/fml/lib/Mail/Message/Parse.pm
+++ b/fml/lib/Mail/Message/Parse.pm
@@ -4,7 +4,7 @@
# All rights reserved. This program is free software; you can
# redistribute it and/or modify it under the same terms as Perl itself.
#
-# $FML: __template.pm,v 1.5 2001/04/03 09:45:39 fukachan Exp $
+# $FML: Parse.pm,v 1.1 2001/05/06 08:21:05 fukachan Exp $
#
@@ -24,6 +24,21 @@ sub new
}
+=head1 NAME
+
+Mail::Message::Parse - parse a mail message
+
+=head1 SYNOPSIS
+
+ use Mail::Message::Parse;
+ my $fh = new Mail::Message::Parse $args;
+
+where C<$args> is same as one of C<Mail::Message>'s C<parse()>.
+
+=head1 DESCRIPTION
+
+just a wrapper for C<Mail::Message> parser function.
+
=head1 AUTHOR
Ken'ichi Fukamachi