Continued:
[core.git] / inc / main / middleware / compressor / class_CompressorChannel.php
index 4adb945ad1ee196dbe26db46fdd0cc3fe9a62a6f..1e7bf82a9965dfbdd494d967a2f0ac5c919600f0 100644 (file)
@@ -1,9 +1,12 @@
 <?php
 // Own namespace
-namespace CoreFramework\Channel\Compressor;
+namespace CoreFramework\Middleware\Compressor;
 
 // Import framework stuff
+use CoreFramework\Compressor\Compressor;
 use CoreFramework\Factory\ObjectFactory;
+use CoreFramework\Middleware\BaseMiddleware;
+use CoreFramework\Registry\Registerable;
 
 /**
  * Middleware class for selecting the right compressor channel
@@ -68,7 +71,7 @@ class CompressorChannel extends BaseMiddleware implements Registerable {
                        // Read all directories but no sub directories, .htaccess files and NullCompressor class
                        while ($directoryEntry = $directoryInstance->readDirectoryExcept(array('.htaccess', 'class_NullCompressor.php'))) {
                                // Debug message
-                               //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput('COMPRESSOR[' . __METHOD__ . ':' . __LINE__ . ']: directoryEntry=' . $directoryEntry);
+                               //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__, __LINE__)->debugOutput('COMPRESSOR[' . __METHOD__ . ':' . __LINE__ . ']: directoryEntry=' . $directoryEntry);
 
                                // Is this a class file?
                                if ((substr($directoryEntry, 0, 6) == 'class_') && (substr($directoryEntry, -4, 4) == '.php')) {
@@ -76,10 +79,19 @@ class CompressorChannel extends BaseMiddleware implements Registerable {
                                         * your files like your classes and also that's why you
                                         * must keep on class in one file.
                                         */
-                                       $className = substr($directoryEntry, 6, -4);
+
+                                       // Base name of compressor class
+                                       $baseClassName = substr($directoryEntry, 6, -4);
+
+                                       // Create full class name (with namespace
+                                       $fullClassName = sprintf(
+                                               'CoreFramework\Compressor\%s\%s',
+                                               str_replace('Compressor', '', $baseClassName),
+                                               $baseClassName
+                                       );
 
                                        // Get an instance from our object factory
-                                       $tempInstance = ObjectFactory::createObjectByName($className);
+                                       $tempInstance = ObjectFactory::createObjectByName($fullClassName);
 
                                        // Is it null?
                                        if (is_null($tempInstance)) {
@@ -107,7 +119,7 @@ class CompressorChannel extends BaseMiddleware implements Registerable {
                ) {
                        // Set the null compressor handler. This should not be configureable!
                        // @TODO Is there a configurable fall-back compressor needed, or is NullCompressor okay?
-                       $compressorInstance->setCompressor(ObjectFactory::createObjectByName('NullCompressor'));
+                       $compressorInstance->setCompressor(ObjectFactory::createObjectByName('CoreFramework\Compressor\Null\NullCompressor'));
                } // END - if
 
                // Return the compressor instance