89 lines
2.2 KiB
PHP
89 lines
2.2 KiB
PHP
<?php
|
|
|
|
namespace Openpay\Data;
|
|
|
|
class OpenpayApiConsole {
|
|
|
|
const CONSOLE_NONE = 0;
|
|
const CONSOLE_TRACE = 2;
|
|
const CONSOLE_DEBUG = 4;
|
|
const CONSOLE_INFO = 8;
|
|
const CONSOLE_WARNING = 16;
|
|
const CONSOLE_ERROR = 32;
|
|
const CONSOLE_CRITICAL = 64;
|
|
const CONSOLE_ALL = 126;
|
|
|
|
private static $instance;
|
|
private $level;
|
|
private $toScreen;
|
|
|
|
private function __construct() {
|
|
$this->level = self::CONSOLE_NONE;
|
|
$this->toScreen = false;
|
|
}
|
|
|
|
private function record($prefix, $text) {
|
|
$output = $prefix . ': ' . print_r($text, true);
|
|
if ($this->toScreen == true) {
|
|
print_r('<pre>' . $output . '</pre>' . "\n");
|
|
} else {
|
|
syslog(LOG_INFO, $output);
|
|
}
|
|
}
|
|
|
|
private function checkFlag($flag, $value) {
|
|
return (($flag & $value) == $flag);
|
|
}
|
|
|
|
private static function getInstance() {
|
|
if (self::$instance == null) {
|
|
self::$instance = new self();
|
|
}
|
|
return self::$instance;
|
|
}
|
|
|
|
private static function _log($type, $flag, $text) {
|
|
$logger = self::getInstance();
|
|
if ($logger->checkFlag($flag, $logger->level))
|
|
$logger->record('[' . strtoupper($type) . ']', $text);
|
|
}
|
|
|
|
// -----------------------------------------------
|
|
public static function setLevel($level) {
|
|
$instance = self::getInstance();
|
|
$instance->level = $level;
|
|
}
|
|
|
|
public static function printToScreen($flag) {
|
|
$instance = self::getInstance();
|
|
$instance->toScreen = ($flag ? true : false);
|
|
}
|
|
|
|
public static function trace($text) {
|
|
self::_log('trace', self::CONSOLE_TRACE, $text);
|
|
}
|
|
|
|
public static function debug($text) {
|
|
self::_log('debug', self::CONSOLE_DEBUG, $text);
|
|
}
|
|
|
|
public static function info($text) {
|
|
self::_log('info', self::CONSOLE_INFO, $text);
|
|
}
|
|
|
|
public static function warn($text) {
|
|
self::_log('warning', self::CONSOLE_WARNING, $text);
|
|
}
|
|
|
|
public static function error($text) {
|
|
self::_log('error', self::CONSOLE_ERROR, $text);
|
|
}
|
|
|
|
public static function critical($text) {
|
|
self::_log('critical', self::CONSOLE_CRITICAL, $text);
|
|
}
|
|
|
|
}
|
|
|
|
?>
|