vendor/swiftmailer/lib/classes/Swift/Attachment.php
changeset 0 7f95f8617b0b
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/vendor/swiftmailer/lib/classes/Swift/Attachment.php	Sat Sep 24 15:40:41 2011 +0200
@@ -0,0 +1,72 @@
+<?php
+
+/*
+ * This file is part of SwiftMailer.
+ * (c) 2004-2009 Chris Corbyn
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+
+/**
+ * Attachment class for attaching files to a {@link Swift_Mime_Message}.
+ * @package Swift
+ * @subpackage Mime
+ * @author Chris Corbyn
+ */
+class Swift_Attachment extends Swift_Mime_Attachment
+{
+  
+  /**
+   * Create a new Attachment.
+   * Details may be optionally provided to the constructor.
+   * @param string|Swift_OutputByteStream $data
+   * @param string $filename
+   * @param string $contentType
+   */
+  public function __construct($data = null, $filename = null,
+    $contentType = null)
+  {
+    call_user_func_array(
+      array($this, 'Swift_Mime_Attachment::__construct'),
+      Swift_DependencyContainer::getInstance()
+        ->createDependenciesFor('mime.attachment')
+      );
+    
+    $this->setBody($data);
+    $this->setFilename($filename);
+    if ($contentType)
+    {
+      $this->setContentType($contentType);
+    }
+  }
+  
+  /**
+   * Create a new Attachment.
+   * @param string|Swift_OutputByteStream $data
+   * @param string $filename
+   * @param string $contentType
+   * @return Swift_Mime_Attachment
+   */
+  public static function newInstance($data = null, $filename = null,
+    $contentType = null)
+  {
+    return new self($data, $filename, $contentType);
+  }
+  
+  /**
+   * Create a new Attachment from a filesystem path.
+   * @param string $path
+   * @param string $contentType optional
+   * @return Swift_Mime_Attachment
+   */
+  public static function fromPath($path, $contentType = null)
+  {
+    return self::newInstance()->setFile(
+      new Swift_ByteStream_FileByteStream($path),
+      $contentType
+      );
+  }
+  
+}