Blame view

sources/3rdparty/PEAR/Task/Windowseol.php 2.22 KB
03e52840d   Kload   Init
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
  <?php
  /**
   * <tasks:windowseol>
   *
   * PHP versions 4 and 5
   *
   * @category   pear
   * @package    PEAR
   * @author     Greg Beaver <cellog@php.net>
   * @copyright  1997-2009 The Authors
   * @license    http://opensource.org/licenses/bsd-license.php New BSD License
   * @version    CVS: $Id: Windowseol.php 313023 2011-07-06 19:17:11Z dufuz $
   * @link       http://pear.php.net/package/PEAR
   * @since      File available since Release 1.4.0a1
   */
  /**
   * Base class
   */
  require_once 'PEAR/Task/Common.php';
  /**
   * Implements the windows line endsings file task.
   * @category   pear
   * @package    PEAR
   * @author     Greg Beaver <cellog@php.net>
   * @copyright  1997-2009 The Authors
   * @license    http://opensource.org/licenses/bsd-license.php New BSD License
   * @version    Release: 1.9.4
   * @link       http://pear.php.net/package/PEAR
   * @since      Class available since Release 1.4.0a1
   */
  class PEAR_Task_Windowseol extends PEAR_Task_Common
  {
      var $type = 'simple';
      var $phase = PEAR_TASK_PACKAGE;
      var $_replacements;
  
      /**
       * Validate the raw xml at parsing-time.
       * @param PEAR_PackageFile_v2
       * @param array raw, parsed xml
       * @param PEAR_Config
       * @static
       */
      function validateXml($pkg, $xml, $config, $fileXml)
      {
          if ($xml != '') {
              return array(PEAR_TASK_ERROR_INVALID, 'no attributes allowed');
          }
          return true;
      }
  
      /**
       * Initialize a task instance with the parameters
       * @param array raw, parsed xml
       * @param unused
       */
      function init($xml, $attribs)
      {
      }
  
      /**
       * Replace all line endings with windows line endings
       *
       * See validateXml() source for the complete list of allowed fields
       * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2
       * @param string file contents
       * @param string the eventual final file location (informational only)
       * @return string|false|PEAR_Error false to skip this file, PEAR_Error to fail
       *         (use $this->throwError), otherwise return the new contents
       */
      function startSession($pkg, $contents, $dest)
      {
          $this->logger->log(3, "replacing all line endings with \\r\
   in $dest");
          return preg_replace("/\r
  |
  \r|\r|
  /", "\r
  ", $contents);
      }
  }
  ?>