From c3cc2c9677b1bba8f23232628db2c7d975b7b2ac Mon Sep 17 00:00:00 2001 From: fukachan Date: Sun, 26 Aug 2001 05:43:10 +0000 Subject: Initial revision --- fml/lib/FML/Command/User/subscribe.pm | 91 +++++++++++++++++++++++++++++++++++ 1 file changed, 91 insertions(+) create mode 100644 fml/lib/FML/Command/User/subscribe.pm (limited to 'fml/lib/FML/Command/User/subscribe.pm') diff --git a/fml/lib/FML/Command/User/subscribe.pm b/fml/lib/FML/Command/User/subscribe.pm new file mode 100644 index 00000000..41e1f64a --- /dev/null +++ b/fml/lib/FML/Command/User/subscribe.pm @@ -0,0 +1,91 @@ +#-*- 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: subscribe.pm,v 1.10 2001/07/15 12:03:37 fukachan Exp $ +# + +package FML::Command::User::subscribe; +use strict; +use vars qw(@ISA @EXPORT @EXPORT_OK $AUTOLOAD); +use Carp; + +use ErrorStatus; +use FML::Command::Utils; +@ISA = qw(FML::Command::Utils ErrorStatus); + + +=head1 NAME + +FML::Command::subscribe - subscribe a new member + +=head1 SYNOPSIS + +=head1 DESCRIPTION + +See C for more details. + +=head1 METHODS + +=head2 C + +=cut + + +sub process +{ + my ($self, $curproc, $optargs) = @_; + my $config = $curproc->{ config }; + my $member_map = $config->{ primary_member_map }; + my $recipient_map = $config->{ primary_recipient_map }; + my $options = $optargs->{ options }; + my $address = $optargs->{ address } || $options->[ 0 ]; + + # fundamental check + croak("\$member_map is not specified") unless $member_map; + croak("\$recipient_map is not specified") unless $recipient_map; + + use IO::Adapter; + my $obj = new IO::Adapter $member_map; + $obj->touch(); + $obj->add( $address ); + + if ($obj->error()) { + $self->error_set( $obj->error() ); + return undef; + } + + $obj = new IO::Adapter $recipient_map; + $obj->touch(); + $obj->add( $address ); + $self->error_set( $obj->error() ); + + if ($obj->error()) { + $self->error_set( $obj->error() ); + return undef; + } +} + + +=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 + +FML::Command::subscribe appeared in fml5 mailing list driver package. +See C for more details. + +=cut + + +1; -- cgit v1.2.1