OSDN Git Service

初回コミット(v2.6.17.1)
[magic3/magic3.git] / include / lib / log4php / LoggerLayout.php
1 <?php
2 /**
3  * log4php is a PHP port of the log4j java logging package.
4  * 
5  * <p>This framework is based on log4j (see {@link http://jakarta.apache.org/log4j log4j} for details).</p>
6  * <p>Design, strategies and part of the methods documentation are developed by log4j team 
7  * (Ceki Gülcü as log4j project founder and 
8  * {@link http://jakarta.apache.org/log4j/docs/contributors.html contributors}).</p>
9  *
10  * <p>PHP port, extensions and modifications by VxR. All rights reserved.<br>
11  * For more information, please see {@link http://www.vxr.it/log4php/}.</p>
12  *
13  * <p>This software is published under the terms of the LGPL License
14  * a copy of which has been included with this distribution in the LICENSE file.</p>
15  * 
16  * @package log4php
17  */
18
19 /**
20  * @ignore 
21  */
22 if (!defined('LOG4PHP_DIR')) define('LOG4PHP_DIR', dirname(__FILE__)); 
23
24 /**
25  * Extend this abstract class to create your own log layout format.
26  *  
27  * @author VxR <vxr@vxr.it>
28  * @version $Revision: 2 $
29  * @package log4php
30  * @abstract
31  */
32 class LoggerLayout {
33
34     /**
35      * Creates LoggerLayout instances with the given class name.
36      *
37      * @param string $class
38      * @return LoggerLayout
39      */
40     //function factory($class)
41         static function factory($class)         // \8fC\90³(2006/12/12)
42     {
43         if (!empty($class)) {
44             $class = basename($class);
45             if (!class_exists($class))
46                 @include_once(LOG4PHP_DIR . "/layouts/{$class}.php");
47             if (class_exists($class))
48                 return new $class();
49         }
50         return null;
51     }
52
53     /**
54      * Override this method
55      */
56     function activateOptions() 
57     {
58         // override;
59     }
60
61     /**
62      * Override this method to create your own layout format.
63      *
64      * @param LoggerLoggingEvent
65      * @return string
66      */
67     function format($event)
68     {
69         return $event->getRenderedMessage();
70     } 
71     
72     /**
73      * Returns the content type output by this layout.
74      * @return string
75      */
76     function getContentType()
77     {
78         return "text/plain";
79     } 
80             
81     /**
82      * Returns the footer for the layout format.
83      * @return string
84      */
85     function getFooter()
86     {
87         return null;
88     } 
89
90     /**
91      * Returns the header for the layout format.
92      * @return string
93      */
94     function getHeader()
95     {
96         return null;
97     }
98 }
99 ?>