*/ class Logger { /** * @var string $name */ protected $name; /** * @var IOInterface $inputOutput */ protected $inputOutput; /** * @param string $name * @param IOInterface $io */ public function __construct($name, IOInterface $io) { $this->name = $name; $this->inputOutput = $io; } /** * Log a debug message * * Messages will be output at the "very verbose" logging level (eg `-vv` * needed on the Composer command). * * @param string $message */ public function debug($message) { if ($this->inputOutput->isVeryVerbose()) { $message = " [{$this->name}] {$message}"; $this->log($message); } } /** * Log an informative message * * Messages will be output at the "verbose" logging level (eg `-v` needed * on the Composer command). * * @param string $message */ public function info($message) { if ($this->inputOutput->isVerbose()) { $message = " [{$this->name}] {$message}"; $this->log($message); } } /** * Log a warning message * * @param string $message */ public function warning($message) { $message = " [{$this->name}] {$message}"; $this->log($message); } /** * Write a message * * @param string $message */ protected function log($message) { if (method_exists($this->inputOutput, 'writeError')) { $this->inputOutput->writeError($message); } else { // @codeCoverageIgnoreStart // Backwards compatiblity for Composer before cb336a5 $this->inputOutput->write($message); // @codeCoverageIgnoreEnd } } } // vim:sw=4:ts=4:sts=4:et: