if ((is_file($path) && !
is_readable($path)) ||
is_dir($path)) { throw new InvalidArgumentException(sprintf('Path "%s" is not readable.',
$path));
} } $this->body =
$body;
$this->charset =
$charset;
$this->subtype =
$subtype;
$this->seekable = \
is_resource($body) ?
stream_get_meta_data($body)['seekable'
] && 0 ===
fseek($body, 0, \SEEK_CUR
) : null;
if (null ===
$encoding) { $this->encoding =
$this->
chooseEncoding();
} else { if ('quoted-printable' !==
$encoding && 'base64' !==
$encoding && '8bit' !==
$encoding) { throw new InvalidArgumentException(sprintf('The encoding must be one of "quoted-printable", "base64", or "8bit" ("%s" given).',
$encoding));
} $this->encoding =
$encoding;
} } public function getMediaType(): string
{ return 'text';
}