[ Index ]
 

Code source de Symfony 1.0.0

Accédez au Source d'autres logiciels libresSoutenez Angelica Josefina !

title

Body

[fermer]

/lib/vendor/phing/tasks/ext/svn/ -> SvnLastRevisionTask.php (source)

   1  <?php
   2  /**
   3   * $Id: SvnLastRevisionTask.php 3076 2006-12-18 08:52:12Z fabien $
   4   *
   5   * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
   6   * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
   7   * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
   8   * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
   9   * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  10   * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  11   * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  12   * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  13   * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  14   * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  15   * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  16   *
  17   * This software consists of voluntary contributions made by many individuals
  18   * and is licensed under the LGPL. For more information please see
  19   * <http://phing.info>.
  20   */
  21  
  22  require_once 'phing/Task.php';
  23  require_once 'phing/tasks/ext/svn/SvnBaseTask.php';
  24  
  25  /**
  26   * Stores the number of the last revision of a workingcopy in a property
  27   *
  28   * @author Michiel Rook <michiel.rook@gmail.com>
  29   * @version $Id: SvnLastRevisionTask.php 3076 2006-12-18 08:52:12Z fabien $
  30   * @package phing.tasks.ext.svn
  31   * @see VersionControl_SVN
  32   * @since 2.1.0
  33   */
  34  class SvnLastRevisionTask extends SvnBaseTask
  35  {
  36      private $propertyName = "svn.lastrevision";
  37  
  38      /**
  39       * Sets the name of the property to use
  40       */
  41  	function setPropertyName($propertyName)
  42      {
  43          $this->propertyName = $propertyName;
  44      }
  45  
  46      /**
  47       * Returns the name of the property to use
  48       */
  49  	function getPropertyName()
  50      {
  51          return $this->propertyName;
  52      }
  53  
  54      /**
  55       * The main entry point
  56       *
  57       * @throws BuildException
  58       */
  59  	function main()
  60      {
  61          $this->setup('info');
  62          
  63          $output = $this->run();
  64          
  65          if (preg_match('/Rev:[\s]+([\d]+)/', $output, $matches))
  66          {
  67              $this->project->setProperty($this->getPropertyName(), $matches[1]);
  68          }
  69          else
  70          {
  71              throw new BuildException("Failed to parse the output of 'svn info'.");
  72          }
  73      }
  74  }
  75  ?>


Généré le : Fri Mar 16 22:42:14 2007 par Balluche grâce à PHPXref 0.7