diff options
author | BlueRaja <BlueRaja.admin@gmail.com> | 2015-05-07 23:14:47 -0500 |
---|---|---|
committer | BlueRaja <BlueRaja.admin@gmail.com> | 2015-05-07 23:14:47 -0500 |
commit | 3dc3919ce1b5336861979cde56884842615c967b (patch) | |
tree | f0a2418290cecd15f20c834bb071ffa9f3694b09 /includes/google-api-php-client-master/src/Google/Logger/Psr.php | |
parent | 29e872fbc6c552ef02208fe9fa5416b69773aa38 (diff) | |
parent | c517b645c8723b5f4d20cbb91cbc4b9f45579cbb (diff) | |
download | pathery-3dc3919ce1b5336861979cde56884842615c967b.tar.xz |
Merge branch 'master' of git.raylu.net:pathery
Diffstat (limited to 'includes/google-api-php-client-master/src/Google/Logger/Psr.php')
-rw-r--r-- | includes/google-api-php-client-master/src/Google/Logger/Psr.php | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/includes/google-api-php-client-master/src/Google/Logger/Psr.php b/includes/google-api-php-client-master/src/Google/Logger/Psr.php new file mode 100644 index 0000000..20104e4 --- /dev/null +++ b/includes/google-api-php-client-master/src/Google/Logger/Psr.php @@ -0,0 +1,93 @@ +<?php +/* + * Copyright 2014 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +if (!class_exists('Google_Client')) { + require_once dirname(__FILE__) . '/../autoload.php'; +} + +/** + * Psr logging class based on the PSR-3 standard. + * + * This logger will delegate all logging to a PSR-3 compatible logger specified + * with the `Google_Logger_Psr::setLogger()` method. + */ +class Google_Logger_Psr extends Google_Logger_Abstract +{ + /** + * @param Psr\Log\LoggerInterface $logger The PSR-3 logger + */ + private $logger; + + /** + * @param Google_Client $client The current Google client + * @param Psr\Log\LoggerInterface $logger PSR-3 logger where logging will be delegated. + */ + public function __construct(Google_Client $client, /*Psr\Log\LoggerInterface*/ $logger = null) + { + parent::__construct($client); + + if ($logger) { + $this->setLogger($logger); + } + } + + /** + * Sets the PSR-3 logger where logging will be delegated. + * + * NOTE: The `$logger` should technically implement + * `Psr\Log\LoggerInterface`, but we don't explicitly require this so that + * we can be compatible with PHP 5.2. + * + * @param Psr\Log\LoggerInterface $logger The PSR-3 logger + */ + public function setLogger(/*Psr\Log\LoggerInterface*/ $logger) + { + $this->logger = $logger; + } + + /** + * {@inheritdoc} + */ + public function shouldHandle($level) + { + return isset($this->logger) && parent::shouldHandle($level); + } + + /** + * {@inheritdoc} + */ + public function log($level, $message, array $context = array()) + { + if (!$this->shouldHandle($level)) { + return false; + } + + if ($context) { + $this->reverseJsonInContext($context); + } + + $levelName = is_int($level) ? array_search($level, self::$levels) : $level; + $this->logger->log($levelName, $message, $context); + } + + /** + * {@inheritdoc} + */ + protected function write($message, array $context = array()) + { + } +} |