Mail-Message
view release on metacpan or search on metacpan
lib/Mail/Message/Body.pm view on Meta::CPAN
{ my $self = shift;
return $self->{MMB_description} if !@_ && $self->{MMB_description};
my $disp = shift // 'none';
$self->{MMB_description} = blessed $disp ? $disp->clone : Mail::Message::Field->new('Content-Description' => $disp);
}
sub disposition(;$)
{ my $self = shift;
return $self->{MMB_disposition} if !@_ && $self->{MMB_disposition};
my $disp = shift // 'none';
$self->{MMB_disposition} = blessed $disp ? $disp->clone : Mail::Message::Field->new('Content-Disposition' => $disp);
}
sub language(@)
{ my $self = shift;
return $self->{MMB_lang} if !@_ && $self->{MMB_lang};
my $langs
= @_ > 1 ? (join ', ', @_)
: blessed $_[0] ? $_[0]
: ref $_[0] eq 'ARRAY' ? (join ', ', @{$_[0]})
: $_[0];
$self->{MMB_lang}
= ! defined $langs || ! length $langs ? undef
: blessed $langs ? $langs->clone
: Mail::Message::Field->new('Content-Language' => $langs);
}
sub contentId(;$)
{ my $self = shift;
return $self->{MMB_id} if !@_ && $self->{MMB_id};
my $cid = shift // 'none';
$self->{MMB_id} = blessed $cid ? $cid->clone : Mail::Message::Field->new('Content-ID' => $cid);
}
sub checked(;$)
{ my $self = shift;
@_ ? ($self->{MMB_checked} = shift) : $self->{MMB_checked};
}
sub nrLines(@) { $_[0]->notImplemented }
sub size(@) { $_[0]->notImplemented }
#--------------------
sub string() { $_[0]->notImplemented }
sub string_unless_carp()
{ my $self = shift;
(caller)[0] eq 'Carp' or return $self->string;
my $class = ref $self =~ s/^Mail::Message/MM/r;
"$class object";
}
sub lines() { $_[0]->notImplemented }
sub file(;$) { $_[0]->notImplemented }
sub print(;$) { $_[0]->notImplemented }
sub printEscapedFrom($) { $_[0]->notImplemented }
sub write(@)
{ my ($self, %args) = @_;
my $filename = $args{filename}
or error __x"no filename parameter for write() body.";
#XXX encoding?
open my $out, '>', $filename
or fault __x"cannot open {file} to write body", file => $filename;
$self->print($out);
$out->close
or fault __x"error closing {file} after write body", file => $filename;
$self;
}
sub endsOnNewline() { $_[0]->notImplemented }
sub stripTrailingNewline() { $_[0]->notImplemented }
#--------------------
sub read(@) { $_[0]->notImplemented }
sub contentInfoTo($)
{ my ($self, $head) = @_;
return unless defined $head;
my $lines = $self->nrLines;
my $size = $self->size;
$size += $lines if $Mail::Message::crlf_platform;
$head->set($self->type);
$head->set($self->transferEncoding);
$head->set($self->disposition);
$head->set($self->description);
$head->set($self->language);
$head->set($self->contentId);
$self;
( run in 2.590 seconds using v1.01-cache-2.11-cpan-aadc1410aed )