4 * This file is part of SwiftMailer.
5 * (c) 2004-2009 Chris Corbyn
7 * For the full copyright and license information, please view the LICENSE
8 * file that was distributed with this source code.
11 //@require 'Swift/Mime/Attachment.php';
12 //@require 'Swift/DependencyContainer.php';
13 //@require 'Swift/ByteStream/FileByteStream.php';
16 * An embedded file, in a multipart message.
19 * @author Chris Corbyn
21 class Swift_EmbeddedFile
extends Swift_Mime_EmbeddedFile
25 * Create a new EmbeddedFile.
26 * Details may be optionally provided to the constructor.
27 * @param string|Swift_OutputByteStream $data
28 * @param string $filename
29 * @param string $contentType
31 public function __construct($data = null, $filename = null,
35 array($this, 'Swift_Mime_EmbeddedFile::__construct'),
36 Swift_DependencyContainer
::getInstance()
37 ->createDependenciesFor('mime.embeddedfile')
40 $this->setBody($data);
41 $this->setFilename($filename);
44 $this->setContentType($contentType);
49 * Create a new EmbeddedFile.
50 * @param string|Swift_OutputByteStream $data
51 * @param string $filename
52 * @param string $contentType
53 * @return Swift_Mime_EmbeddedFile
55 public static function newInstance($data = null, $filename = null,
58 return new self($data, $filename, $contentType);
62 * Create a new EmbeddedFile from a filesystem path.
64 * @return Swift_Mime_EmbeddedFile
66 public static function fromPath($path)
68 return self
::newInstance()->setFile(
69 new Swift_ByteStream_FileByteStream($path)