File Coverage

blib/lib/Mail/LMLM/Types/GoogleGroups.pm
Criterion Covered Total %
statement 12 43 27.9
branch 0 10 0.0
condition 0 3 0.0
subroutine 4 11 36.3
pod 5 5 100.0
total 21 72 29.1


line stmt bran cond sub pod time code
1             package Mail::LMLM::Types::GoogleGroups;
2             $Mail::LMLM::Types::GoogleGroups::VERSION = '0.6806';
3 1     1   5 use strict;
  1         2  
  1         22  
4 1     1   3 use warnings;
  1         2  
  1         19  
5              
6 1     1   4 use Mail::LMLM::Types::Mailman;
  1         1  
  1         16  
7              
8 1     1   5 use vars qw(@ISA);
  1         1  
  1         401  
9              
10             @ISA = qw(Mail::LMLM::Types::Mailman);
11              
12             sub parse_args
13             {
14 0     0 1   my $self = shift;
15              
16 0           my $args = shift;
17              
18 0           $args = $self->SUPER::parse_args($args);
19              
20 0           my ( @left, $key, $value );
21              
22 0           while ( scalar(@$args) )
23             {
24 0           $key = shift(@$args);
25 0           $value = shift(@$args);
26              
27 0 0         if ( $key =~ /^-?(maintenance[-_]url)$/ )
    0          
28             {
29 0           $self->{'maintenance_url'} = $value;
30             }
31             elsif ( $key =~ /^-?(owner)$/ )
32             {
33 0           $self->{'owner'} = $value;
34             }
35             else
36             {
37 0           push @left, $key, $value;
38             }
39             }
40              
41 0           $self->{'google_homepage'} =
42             "http://groups.google.com/group/" . $self->get_group_base() . "/";
43              
44 0           $self->{'homepage'} = $self->{'google_homepage'};
45              
46 0           return \@left;
47             }
48              
49             sub get_maintenance_url
50             {
51 0     0 1   my $self = shift;
52              
53 0 0         if ( exists( $self->{'maintenance_url'} ) )
54             {
55 0           return $self->{'maintenance_url'};
56             }
57             else
58             {
59 0           return $self->{'google_homepage'};
60             }
61             }
62              
63             sub group_form
64             {
65 0     0 1   my $self = shift;
66              
67 0           my $add = shift;
68              
69 0 0         return ( ( $self->get_group_base() . ( $add ? ( "-" . $add ) : "" ) ),
70             $self->get_hostname() );
71             }
72              
73             sub _get_post_address
74             {
75 0     0     my $self = shift;
76              
77 0           return $self->group_form();
78             }
79              
80             sub _get_owner_address
81             {
82 0     0     my $self = shift;
83              
84 0 0         if ( $self->{owner} )
85             {
86 0           return @{ $self->{owner} };
  0            
87             }
88             else
89             {
90 0           return $self->group_form("owner");
91             }
92             }
93              
94             sub get_default_hostname
95             {
96 0     0 1   return "googlegroups.com";
97             }
98              
99             sub get_online_archive
100             {
101 0     0 1   my $self = shift;
102              
103 0   0       return $self->SUPER::get_online_archive()
104             || $self->get_maintenance_url();
105             }
106             1;
107              
108             __END__