Subversion Repositories SmartDukaan

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
12345 anikendra 1
<?php
2
/**
3
 * Base Log Engine class
4
 *
5
 * CakePHP(tm) :  Rapid Development Framework (http://cakephp.org)
6
 * Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
7
 *
8
 * Licensed under The MIT License
9
 * For full copyright and license information, please see the LICENSE.txt
10
 * Redistributions of files must retain the above copyright notice.
11
 *
12
 * @copyright     Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
13
 * @link          http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
14
 * @package       Cake.Log.Engine
15
 * @since         CakePHP(tm) v 2.2
16
 * @license       http://www.opensource.org/licenses/mit-license.php MIT License
17
 */
18
 
19
App::uses('CakeLogInterface', 'Log');
20
 
21
/**
22
 * Base log engine class.
23
 *
24
 * @package       Cake.Log.Engine
25
 */
26
abstract class BaseLog implements CakeLogInterface {
27
 
28
/**
29
 * Engine config
30
 *
31
 * @var string
32
 */
33
	protected $_config = array();
34
 
35
/**
36
 * Constructor
37
 *
38
 * @param array $config Configuration array
39
 */
40
	public function __construct($config = array()) {
41
		$this->config($config);
42
	}
43
 
44
/**
45
 * Sets instance config. When $config is null, returns config array
46
 *
47
 * Config
48
 *
49
 * - `types` string or array, levels the engine is interested in
50
 * - `scopes` string or array, scopes the engine is interested in
51
 *
52
 * @param array $config engine configuration
53
 * @return array
54
 */
55
	public function config($config = array()) {
56
		if (!empty($config)) {
57
			foreach (array('types', 'scopes') as $option) {
58
				if (isset($config[$option]) && is_string($config[$option])) {
59
					$config[$option] = array($config[$option]);
60
				}
61
			}
62
			$this->_config = $config;
63
		}
64
		return $this->_config;
65
	}
66
 
67
}