summaryrefslogtreecommitdiff
path: root/vendor/swiftmailer/swiftmailer/lib/classes/Swift.php
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/swiftmailer/swiftmailer/lib/classes/Swift.php')
-rw-r--r--vendor/swiftmailer/swiftmailer/lib/classes/Swift.php80
1 files changed, 80 insertions, 0 deletions
diff --git a/vendor/swiftmailer/swiftmailer/lib/classes/Swift.php b/vendor/swiftmailer/swiftmailer/lib/classes/Swift.php
new file mode 100644
index 0000000..82c381b
--- /dev/null
+++ b/vendor/swiftmailer/swiftmailer/lib/classes/Swift.php
@@ -0,0 +1,80 @@
+<?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.
+ */
+
+/**
+ * General utility class in Swift Mailer, not to be instantiated.
+ *
+ *
+ * @author Chris Corbyn
+ */
+abstract class Swift
+{
+ /** Swift Mailer Version number generated during dist release process */
+ const VERSION = '@SWIFT_VERSION_NUMBER@';
+
+ public static $initialized = false;
+ public static $inits = array();
+
+ /**
+ * Registers an initializer callable that will be called the first time
+ * a SwiftMailer class is autoloaded.
+ *
+ * This enables you to tweak the default configuration in a lazy way.
+ *
+ * @param mixed $callable A valid PHP callable that will be called when autoloading the first Swift class
+ */
+ public static function init($callable)
+ {
+ self::$inits[] = $callable;
+ }
+
+ /**
+ * Internal autoloader for spl_autoload_register().
+ *
+ * @param string $class
+ */
+ public static function autoload($class)
+ {
+ // Don't interfere with other autoloaders
+ if (0 !== strpos($class, 'Swift_')) {
+ return;
+ }
+
+ $path = __DIR__.'/'.str_replace('_', '/', $class).'.php';
+
+ if (!file_exists($path)) {
+ return;
+ }
+
+ require $path;
+
+ if (self::$inits && !self::$initialized) {
+ self::$initialized = true;
+ foreach (self::$inits as $init) {
+ call_user_func($init);
+ }
+ }
+ }
+
+ /**
+ * Configure autoloading using Swift Mailer.
+ *
+ * This is designed to play nicely with other autoloaders.
+ *
+ * @param mixed $callable A valid PHP callable that will be called when autoloading the first Swift class
+ */
+ public static function registerAutoload($callable = null)
+ {
+ if (null !== $callable) {
+ self::$inits[] = $callable;
+ }
+ spl_autoload_register(array('Swift', 'autoload'));
+ }
+}