From 27bd89dd63e80ca7f9c2d0a7962e8f04d88642da Mon Sep 17 00:00:00 2001 From: Dominik Liebler Date: Mon, 19 Aug 2019 17:02:15 +0200 Subject: [PATCH] remove Interface-Suffix --- .../{LoggerInterface.php => Logger.php} | 2 +- Behavioral/NullObject/NullLogger.php | 2 +- Behavioral/NullObject/PrintLogger.php | 2 +- Behavioral/NullObject/README.rst | 6 +++--- Behavioral/NullObject/Service.php | 6 +++--- Behavioral/NullObject/uml/uml.png | Bin 8701 -> 28436 bytes 6 files changed, 9 insertions(+), 9 deletions(-) rename Behavioral/NullObject/{LoggerInterface.php => Logger.php} (89%) diff --git a/Behavioral/NullObject/LoggerInterface.php b/Behavioral/NullObject/Logger.php similarity index 89% rename from Behavioral/NullObject/LoggerInterface.php rename to Behavioral/NullObject/Logger.php index fe6a269..c9a345d 100644 --- a/Behavioral/NullObject/LoggerInterface.php +++ b/Behavioral/NullObject/Logger.php @@ -6,7 +6,7 @@ namespace DesignPatterns\Behavioral\NullObject; /** * Key feature: NullLogger must inherit from this interface like any other loggers */ -interface LoggerInterface +interface Logger { public function log(string $str); } diff --git a/Behavioral/NullObject/NullLogger.php b/Behavioral/NullObject/NullLogger.php index 2d8b76a..5f19370 100644 --- a/Behavioral/NullObject/NullLogger.php +++ b/Behavioral/NullObject/NullLogger.php @@ -3,7 +3,7 @@ declare(strict_types=1); namespace DesignPatterns\Behavioral\NullObject; -class NullLogger implements LoggerInterface +class NullLogger implements Logger { public function log(string $str) { diff --git a/Behavioral/NullObject/PrintLogger.php b/Behavioral/NullObject/PrintLogger.php index 37f47b6..9eecd5e 100644 --- a/Behavioral/NullObject/PrintLogger.php +++ b/Behavioral/NullObject/PrintLogger.php @@ -3,7 +3,7 @@ declare(strict_types=1); namespace DesignPatterns\Behavioral\NullObject; -class PrintLogger implements LoggerInterface +class PrintLogger implements Logger { public function log(string $str) { diff --git a/Behavioral/NullObject/README.rst b/Behavioral/NullObject/README.rst index 3d2a8d3..0787b7b 100644 --- a/Behavioral/NullObject/README.rst +++ b/Behavioral/NullObject/README.rst @@ -43,9 +43,9 @@ Service.php :language: php :linenos: -LoggerInterface.php +Logger.php -.. literalinclude:: LoggerInterface.php +.. literalinclude:: Logger.php :language: php :linenos: @@ -71,4 +71,4 @@ Tests/LoggerTest.php :linenos: .. _`GitHub`: https://github.com/domnikl/DesignPatternsPHP/tree/master/Behavioral/NullObject -.. __: http://en.wikipedia.org/wiki/Null_Object_pattern \ No newline at end of file +.. __: http://en.wikipedia.org/wiki/Null_Object_pattern diff --git a/Behavioral/NullObject/Service.php b/Behavioral/NullObject/Service.php index b44714e..943920d 100644 --- a/Behavioral/NullObject/Service.php +++ b/Behavioral/NullObject/Service.php @@ -6,14 +6,14 @@ namespace DesignPatterns\Behavioral\NullObject; class Service { /** - * @var LoggerInterface + * @var Logger */ private $logger; /** - * @param LoggerInterface $logger + * @param Logger $logger */ - public function __construct(LoggerInterface $logger) + public function __construct(Logger $logger) { $this->logger = $logger; } diff --git a/Behavioral/NullObject/uml/uml.png b/Behavioral/NullObject/uml/uml.png index 9a081bee990ca9c404bac6119405103d4d7c221a..0f731b3b6d0b41eab03a628a420ccbbcb9f5a911 100644 GIT binary patch literal 28436 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 Ky(*W01pO~Nl(h%|