[ Index ]

PHP Cross Reference of Limb3

title

Body

[close]

/toolkit/src/ -> lmbCompositeNonItersectingToolkitTools.class.php (source)

   1  <?php
   2  /*
   3   * Limb PHP Framework
   4   *
   5   * @link http://limb-project.com 
   6   * @copyright  Copyright &copy; 2004-2007 BIT(http://bit-creative.com)
   7   * @license    LGPL http://www.gnu.org/copyleft/lesser.html 
   8   */
   9  lmb_require(dirname(__FILE__) . '/lmbCompositeToolkitTools.class.php');
  10  
  11  /**
  12   * Composes several tools into one
  13   * Checks if tools have intersecting methods. Throws an exception if two separate tools have the same method.
  14   * @see lmbToolkit :: extend()
  15   * @package toolkit
  16   * @version $Id: lmbCompositeNonItersectingToolkitTools.class.php 5945 2007-06-06 08:31:43Z pachanga $
  17   */
  18  class lmbCompositeNonItersectingToolkitTools extends lmbCompositeToolkitTools
  19  {
  20    function getToolsSignatures()
  21    {
  22      $result = array();
  23      foreach($this->tools as $tools)
  24      {
  25        $signatures = $tools->getToolsSignatures();
  26  
  27        if($intersect = array_intersect(array_keys($signatures), array_keys($result)))
  28        {
  29          throw new lmbException('tools signatures intersection',
  30                                  array('intersection' => $intersect));
  31        }
  32        $result = array_merge($result, $signatures);
  33      }
  34      return $result;
  35    }
  36  }
  37  ?>


Generated: Mon Dec 1 03:56:46 2008 Cross-referenced by PHPXref 0.7