فهرست منبع

Fix some resettableinterface usages

Jordi Boggiano 7 سال پیش
والد
کامیت
dddc7ed781

+ 0 - 1
src/Monolog/ErrorHandler.php

@@ -13,7 +13,6 @@ namespace Monolog;
 
 use Psr\Log\LoggerInterface;
 use Psr\Log\LogLevel;
-use Monolog\Registry;
 
 /**
  * Monolog error handler

+ 7 - 1
src/Monolog/Handler/AbstractHandler.php

@@ -12,13 +12,14 @@
 namespace Monolog\Handler;
 
 use Monolog\Logger;
+use Monolog\ResettableInterface;
 
 /**
  * Base Handler class providing basic level/bubble support
  *
  * @author Jordi Boggiano <j.boggiano@seld.be>
  */
-abstract class AbstractHandler extends Handler
+abstract class AbstractHandler extends Handler implements ResettableInterface
 {
     protected $level = Logger::DEBUG;
     protected $bubble = true;
@@ -88,4 +89,9 @@ abstract class AbstractHandler extends Handler
     {
         return $this->bubble;
     }
+
+    public function reset()
+    {
+        $this->close();
+    }
 }

+ 2 - 2
src/Monolog/Handler/AbstractProcessingHandler.php

@@ -21,7 +21,7 @@ use Monolog\ResettableInterface;
  * @author Jordi Boggiano <j.boggiano@seld.be>
  * @author Christophe Coevoet <stof@notk.org>
  */
-abstract class AbstractProcessingHandler extends AbstractHandler implements ProcessableHandlerInterface, FormattableHandlerInterface, ResettableInterface
+abstract class AbstractProcessingHandler extends AbstractHandler implements ProcessableHandlerInterface, FormattableHandlerInterface
 {
     use ProcessableHandlerTrait;
     use FormattableHandlerTrait;
@@ -53,7 +53,7 @@ abstract class AbstractProcessingHandler extends AbstractHandler implements Proc
 
     public function reset()
     {
-        $this->close();
+        parent::reset();
 
         foreach ($this->processors as $processor) {
             if ($processor instanceof ResettableInterface) {

+ 3 - 0
src/Monolog/Handler/BrowserConsoleHandler.php

@@ -13,6 +13,7 @@ namespace Monolog\Handler;
 
 use Monolog\Formatter\LineFormatter;
 use Monolog\Formatter\FormatterInterface;
+use Monolog\ResettableInterface;
 
 /**
  * Handler sending logs to browser's javascript console with no browser extension required
@@ -76,6 +77,8 @@ class BrowserConsoleHandler extends AbstractProcessingHandler
 
     public function reset()
     {
+        parent::reset();
+
         self::resetStatic();
     }
 

+ 1 - 3
src/Monolog/Handler/FingersCrossedHandler.php

@@ -28,7 +28,7 @@ use Monolog\ResettableInterface;
  *
  * @author Jordi Boggiano <j.boggiano@seld.be>
  */
-class FingersCrossedHandler extends Handler implements ProcessableHandlerInterface
+class FingersCrossedHandler extends Handler implements ProcessableHandlerInterface, ResettableInterface
 {
     use ProcessableHandlerTrait;
 
@@ -148,8 +148,6 @@ class FingersCrossedHandler extends Handler implements ProcessableHandlerInterfa
      */
     public function reset()
     {
-        parent::reset();
-
         $this->buffer = array();
         $this->buffering = true;
 

+ 10 - 3
src/Monolog/Handler/GroupHandler.php

@@ -19,7 +19,7 @@ use Monolog\ResettableInterface;
  *
  * @author Lenar Lõhmus <lenar@city.ee>
  */
-class GroupHandler extends Handler implements ProcessableHandlerInterface
+class GroupHandler extends Handler implements ProcessableHandlerInterface, ResettableInterface
 {
     use ProcessableHandlerTrait;
 
@@ -93,8 +93,6 @@ class GroupHandler extends Handler implements ProcessableHandlerInterface
 
     public function reset()
     {
-        parent::reset();
-
         foreach ($this->handlers as $handler) {
             if ($handler instanceof ResettableInterface) {
                 $handler->reset();
@@ -102,6 +100,15 @@ class GroupHandler extends Handler implements ProcessableHandlerInterface
         }
     }
 
+    public function close()
+    {
+        parent::close();
+
+        foreach ($this->handlers as $handler) {
+            $handler->close();
+        }
+    }
+
     /**
      * {@inheritdoc}
      */