/[cvs]/nfo/php/libs/net.php.pear/Log/observer.php
ViewVC logotype

Annotation of /nfo/php/libs/net.php.pear/Log/observer.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.2 - (hide annotations)
Wed Feb 5 21:48:31 2003 UTC (21 years, 5 months ago) by joko
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +79 -79 lines
+ updated to Log-1.5.3

1 joko 1.2 <?php
2     // $Id: observer.php,v 1.3 2002/10/22 00:13:47 jon Exp $
3     // $Horde: horde/lib/Log/observer.php,v 1.5 2000/06/28 21:36:13 jon Exp $
4    
5     /**
6     * The Log_observer:: class implements the Observer end of a
7     * Subject-Observer pattern for watching log activity and taking
8     * actions on exceptional events.
9     *
10     * @author Chuck Hagenbuch <chuck@horde.org>
11     * @version $Revision: 1.3 $
12     * @since Horde 1.3
13     * @package Log
14     */
15     class Log_observer {
16    
17     /**
18     * The minimum priority level of message that we want to hear
19     * about. PEAR_LOG_EMERG is the highest priority, so we will only
20     * hear messages with an integer priority value less than or
21     * equal to ours. It defaults to PEAR_LOG_INFO, which listens to
22     * everything except PEAR_LOG_DEBUG.
23     * @var string
24     */
25     var $_priority = PEAR_LOG_INFO;
26    
27    
28     /**
29     * Basic Log_observer instance that just prints out messages
30     * received.
31     * @param string $priority priority level of message
32     * @access public
33     */
34     function Log_observer($priority = PEAR_LOG_INFO)
35     {
36     $this->_priority = $priority;
37     }
38    
39     /**
40     * Attempts to return a concrete Log_observer instance of the
41     * specified type.
42     *
43     * @param string $observer_type The type of concrate Log_observer subclass
44     * to return. We will attempt to dynamically
45     * include the code for this subclass.
46     * @param string $priority priority level of message
47     * @return object Log_observer The newly created concrete Log_observer
48     * instance, or an false on an error.
49     */
50     function factory($observer_type, $priority = PEAR_LOG_INFO)
51     {
52     $classfile = substr(__FILE__, 0, -(strlen(basename(__FILE__)))) . 'Log/' . $observer_type . '.php';
53     if (file_exists($classfile)) {
54     include_once $classfile;
55     $class = 'Log_' . $observer_type;
56     return new $observer_type($priority);
57     } else {
58     return false;
59     }
60     }
61    
62     /**
63     * This is a stub method to make sure that LogObserver classes do
64     * something when they are notified of a message. The default
65     * behavior is to just print the message, which is obviously not
66     * desireable in practically any situation - which is why you need
67     * to override this method. :)
68     *
69     * @param array $messageOb A hash containing all information - the text
70     * message itself, the priority, what log it came
71     * from, etc.
72     */
73     function notify($messageOb)
74     {
75     print_r($messageOb);
76     }
77     }
78    
79     ?>

MailToCvsAdmin">MailToCvsAdmin
ViewVC Help
Powered by ViewVC 1.1.26 RSS 2.0 feed