File Coverage

blib/lib/Mail/Message/Head/Delayed.pm
Criterion Covered Total %
statement 25 34 73.5
branch 1 4 25.0
condition 0 3 0.0
subroutine 9 13 69.2
pod 6 7 85.7
total 41 61 67.2


line stmt bran cond sub pod time code
1             # Copyrights 2001-2023 by [Mark Overmeer].
2             # For other contributors see ChangeLog.
3             # See the manual pages for details on the licensing terms.
4             # Pod stripped from pm file by OODoc 2.03.
5             # This code is part of distribution Mail-Box. Meta-POD processed with
6             # OODoc into POD and HTML manual-pages. See README.md
7             # Copyright Mark Overmeer. Licensed under the same terms as Perl itself.
8              
9             package Mail::Message::Head::Delayed;
10 14     14   107 use vars '$VERSION';
  14         43  
  14         741  
11             $VERSION = '3.010';
12              
13 14     14   92 use base 'Mail::Message::Head';
  14         45  
  14         1486  
14              
15 14     14   133 use strict;
  14         41  
  14         385  
16 14     14   79 use warnings;
  14         29  
  14         594  
17              
18             use Object::Realize::Later
19 14         117 becomes => 'Mail::Message::Head::Complete',
20             realize => 'load',
21 14     14   106 believe_caller => 1;
  14         33  
22              
23 14     14   8342 use Scalar::Util 'weaken';
  14         45  
  14         5921  
24              
25              
26 0     0 1 0 sub build(@) {shift->log(ERROR => "Cannot build() a delayed header.") }
27              
28             #------------------------------------------
29              
30             sub init($$)
31 737     737 0 8844 { my ($self, $args) = @_;
32 737         1884 $self->SUPER::init($args);
33              
34 737 50       15708 if(defined $args->{message})
35 0         0 { $self->{MMHD_message} = $args->{message};
36 0         0 weaken($self->{MMHD_message});
37             }
38              
39 737         3783 $self;
40             }
41              
42             #------------------------------------------
43              
44             sub isDelayed() {1}
45              
46             #------------------------------------------
47              
48             sub modified(;$)
49 0 0 0 0 1 0 { return 0 if @_==1 || !$_[1];
50 0         0 shift->forceRealize->modified(1);
51             }
52              
53             #------------------------------------------
54              
55             sub isModified() { 0 }
56              
57             #------------------------------------------
58              
59             sub isEmpty() { 0 }
60              
61             #------------------------------------------
62              
63              
64             sub get($;$)
65 152     152 1 994 { my $self = shift;
66 152         310 $self->load->get(@_);
67             }
68              
69             #------------------------------------------
70              
71              
72             sub guessBodySize() {undef}
73              
74              
75             sub guessTimestamp() {undef}
76              
77             #------------------------------------------
78              
79             sub read($)
80 0     0 1 0 { my ($self, $parser, $headtype, $bodytype) = @_;
81              
82             # $parser->skipHeader not implemented... returns where
83 0         0 $self->{MMH_where} = 0;
84 0         0 $self;
85             }
86              
87 406     406 1 56667 sub load() {$_[0] = $_[0]->message->loadHead}
88 0     0 1   sub setNoRealize($) { shift->log(INTERNAL => "Setting field on a delayed?") }
89              
90             1;