File: LogWriter.php

package info (click to toggle)
icinga-web 1.7.1%2Bdfsg2-6
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 83,496 kB
  • sloc: php: 252,926; xml: 142,251; sql: 8,190; sh: 1,039; makefile: 575; perl: 215; python: 194
file content (95 lines) | stat: -rw-r--r-- 2,693 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
<?php

    /**
     * $Id: LogWriter.php 552 2009-08-29 12:18:13Z mrook $
     *
     * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
     * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
     * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
     * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
     * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
     * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
     * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
     * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
     * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
     * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
     * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
     *
     * This software consists of voluntary contributions made by many individuals
     * and is licensed under the LGPL. For more information please see
     * <http://phing.info>.
     */
    
    require_once 'phing/system/io/Writer.php';
    require_once 'phing/Task.php';

    /**
     * Extends the Writer class to output messages to Phing's log
     *
     * @author Michiel Rook <michiel.rook@gmail.com>
     * @version $Id: LogWriter.php 552 2009-08-29 12:18:13Z mrook $
     * @package phing.util
     */
    class LogWriter extends Writer
    {
        private $task = NULL;
        
        private $level = NULL;
        
        /**
         * Constructs a new LogWriter object
         */
        function __construct(Task $task, $level = Project::MSG_INFO)
        {
            $this->task = $task;
            $this->level = $level;
        }
        
        /**
         * @see Writer::write()
         */
        function write($buf, $off = null, $len = null)
        {
            $lines = explode("\n", $buf);
            
            foreach ($lines as $line)
            {
                if ($line == "")
                {
                    continue;
                }
                
                $this->task->log($line, $this->level);
            }
        }
        
        /**
         * @see Writer::reset()
         */
        function reset()
        {
        }

        /**
         * @see Writer::close()
         */
        function close()
        {
        }
        
        /**
         * @see Writer::open()
         */
        function open()
        {
        }
        
        /**
         * @see Writer::getResource()
         */
        function getResource()
        {
            return $this->task;
        }
    }