I don't see a reason to avoid providing the default autoloader within
authorGunnar Wrobel <p@rdus.de>
Mon, 23 Aug 2010 15:26:52 +0000 (17:26 +0200)
committerGunnar Wrobel <p@rdus.de>
Mon, 23 Aug 2010 15:26:52 +0000 (17:26 +0200)
Horde_Autoloader.

It introduces no additional dependencies and will be required by a any
application that does not derive from Horde_Core.

framework/Autoloader/lib/Horde/Autoloader/Default.php [new file with mode: 0644]
framework/Autoloader/package.xml

diff --git a/framework/Autoloader/lib/Horde/Autoloader/Default.php b/framework/Autoloader/lib/Horde/Autoloader/Default.php
new file mode 100644 (file)
index 0000000..355fde0
--- /dev/null
@@ -0,0 +1,32 @@
+<?php
+/**
+ * Horde_Autoloader_default
+ *
+ * Default autoloader definition that simply uses the include path with default
+ * class path mappers.
+ *
+ * @author   Bob Mckee <bmckee@bywires.com>
+ * @author   Chuck Hagenbuch <chuck@horde.org>
+ * @category Horde
+ * @package  Horde_Autoloader
+ */
+require_once 'Horde/Autoloader.php';
+require_once 'Horde/Autoloader/ClassPathMapper.php';
+require_once 'Horde/Autoloader/ClassPathMapper/Default.php';
+
+class Horde_Autoloader_Default extends Horde_Autoloader
+{
+    public function __construct()
+    {
+        foreach (array_reverse(explode(PATH_SEPARATOR, get_include_path())) as $path) {
+            if ($path == '.') { continue; }
+            $path = realpath($path);
+            if ($path) {
+                $this->addClassPathMapper(new Horde_Autoloader_ClassPathMapper_Default($path));
+            }
+        }
+    }
+}
+
+$__autoloader = new Horde_Autoloader_Default();
+$__autoloader->registerAutoloader();
index 66c12e0..aca0967 100644 (file)
@@ -47,6 +47,7 @@ http://pear.php.net/dtd/package-2.0.xsd">
        <file name="Default.php" role="php" />
        <file name="Prefix.php" role="php" />
       </dir> <!-- /lib/Horde/Autoloader/ClassPathMapper -->
+      <file name="Default.php" role="php" />
      </dir> <!-- /lib/Horde/Autoloader -->
     </dir> <!-- /lib/Horde -->
    </dir> <!-- /lib -->
@@ -68,6 +69,7 @@ http://pear.php.net/dtd/package-2.0.xsd">
    <install name="lib/Horde/Autoloader/ClassPathMapper/Default.php" as="Horde/Autoloader/ClassPathMapper/Default.php" />
    <install name="lib/Horde/Autoloader/ClassPathMapper/Prefix.php" as="Horde/Autoloader/ClassPathMapper/Prefix.php" />
    <install name="lib/Horde/Autoloader/ClassPathMapper.php" as="Horde/Autoloader/ClassPathMapper.php" />
+   <install name="lib/Horde/Autoloader/Default.php" as="Horde/Autoloader/Default.php" />
    <install name="lib/Horde/Autoloader.php" as="Horde/Autoloader.php" />
   </filelist>
  </phprelease>