Using the bebug middleware class will become deprecated (now already marked
authorRoland Haeder <roland@mxchange.org>
Sat, 1 Aug 2015 12:27:03 +0000 (14:27 +0200)
committerRoland Haeder <roland@mxchange.org>
Sat, 1 Aug 2015 12:27:03 +0000 (14:27 +0200)
to warn you) when the new logger facilities are coming out.

Signed-off-by: Roland H├Ąder <roland@mxchange.org>
inc/classes/main/class_BaseFrameworkSystem.php
inc/classes/main/factories/class_ [new file with mode: 0644]
inc/classes/main/factories/logger/.htaccess [new file with mode: 0644]
inc/classes/main/factories/logger/class_LoggerFactory.php [new file with mode: 0644]
inc/classes/middleware/debug/class_DebugMiddleware.php

index e26468c..e3d1584 100644 (file)
@@ -444,7 +444,7 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface {
        }
 
        /**
-        * Destructor for all classes
+        * Destructor for all classes. You should not call this method on your own.
         *
         * @return      void
         */
@@ -1871,6 +1871,7 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface {
         *
         * @param       $className              Name of the class (currently unsupported)
         * @return      $debugInstance  An instance of a debugger class
+        * @deprecated  Not fully, as the new Logger facilities are not finished yet.
         */
        public final static function createDebugInstance ($className) {
                // Is the instance set?
diff --git a/inc/classes/main/factories/class_ b/inc/classes/main/factories/class_
new file mode 100644 (file)
index 0000000..d05b844
--- /dev/null
@@ -0,0 +1,37 @@
+<?php
+/**
+ * A ??? factory
+ *
+ * @author             Roland Haeder <webmaster@shipsimu.org>
+ * @version            0.0.0
+ * @copyright  Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2015 Core Developer Team
+ * @license            GNU GPL 3.0 or any newer version
+ * @link               http://www.shipsimu.org
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+class ???Factory extends BaseFactory {
+       /**
+        * Protected constructor
+        *
+        * @return      void
+        */
+       protected function __construct () {
+               // Call parent constructor
+               parent::__construct(__CLASS__);
+       }
+}
+
+// [EOF]
+?>
diff --git a/inc/classes/main/factories/logger/.htaccess b/inc/classes/main/factories/logger/.htaccess
new file mode 100644 (file)
index 0000000..3a42882
--- /dev/null
@@ -0,0 +1 @@
+Deny from all
diff --git a/inc/classes/main/factories/logger/class_LoggerFactory.php b/inc/classes/main/factories/logger/class_LoggerFactory.php
new file mode 100644 (file)
index 0000000..202f23d
--- /dev/null
@@ -0,0 +1,51 @@
+<?php
+/**
+ * A Logger factory
+ *
+ * @author             Roland Haeder <webmaster@shipsimu.org>
+ * @version            0.0.0
+ * @copyright  Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2015 Core Developer Team
+ * @license            GNU GPL 3.0 or any newer version
+ * @link               http://www.shipsimu.org
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+class LoggerFactory extends BaseFactory {
+       /**
+        * Protected constructor
+        *
+        * @return      void
+        */
+       protected function __construct () {
+               // Call parent constructor
+               parent::__construct(__CLASS__);
+       }
+
+       /**
+        * Creates a logger instance for given FrameworkInterface. This allows every
+        * class that implements FrameworkInterface to have an own logger. Surely
+        * this factory and the logger itself cannot have an own logger as this would
+        * lead to an endless loop: Get factory instance, get a logger for the factory
+        * instance which ivokes the factory's method again.
+        *
+        * @param       $objectInstance         An instance of a FrameworkInterface class
+        * @return      $loggerInstance         An instance of a Logger class
+        */
+       public static final function createLoggerInstance (FrameworkInterface $objectInstance) {
+               // @TODO Unfinished work
+       }
+}
+
+// [EOF]
+?>
index 3789e64..045a330 100644 (file)
@@ -9,6 +9,7 @@
  * @copyright  Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2015 Core Developer Team
  * @license            GNU GPL 3.0 or any newer version
  * @link               http://www.shipsimu.org
+ * @deprecated See LoggerFactory for a more flexible approach
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by