web/lib/Zend/Service/Simpy/WatchlistSet.php
changeset 886 1e110b03ae96
parent 885 2251fb41dbc7
parent 869 82982f1ba738
child 887 503f9a7b7d6c
equal deleted inserted replaced
885:2251fb41dbc7 886:1e110b03ae96
     1 <?php
       
     2 
       
     3 /**
       
     4  * Zend Framework
       
     5  *
       
     6  * LICENSE
       
     7  *
       
     8  * This source file is subject to the new BSD license that is bundled
       
     9  * with this package in the file LICENSE.txt.
       
    10  * It is also available through the world-wide-web at this URL:
       
    11  * http://framework.zend.com/license/new-bsd
       
    12  * If you did not receive a copy of the license and are unable to
       
    13  * obtain it through the world-wide-web, please send an email
       
    14  * to license@zend.com so we can send you a copy immediately.
       
    15  *
       
    16  * @category   Zend
       
    17  * @package    Zend_Service
       
    18  * @subpackage Simpy
       
    19  * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
       
    20  * @license    http://framework.zend.com/license/new-bsd     New BSD License
       
    21  * @version    $Id: WatchlistSet.php 20096 2010-01-06 02:05:09Z bkarwin $
       
    22  */
       
    23 
       
    24 
       
    25 /**
       
    26  * @see Zend_Service_Simpy_Watchlist
       
    27  */
       
    28 require_once 'Zend/Service/Simpy/Watchlist.php';
       
    29 
       
    30 
       
    31 /**
       
    32  * @category   Zend
       
    33  * @package    Zend_Service
       
    34  * @subpackage Simpy
       
    35  * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
       
    36  * @license    http://framework.zend.com/license/new-bsd     New BSD License
       
    37  */
       
    38 class Zend_Service_Simpy_WatchlistSet implements IteratorAggregate
       
    39 {
       
    40     /**
       
    41      * List of watchlists
       
    42      *
       
    43      * @var array of Zend_Service_Simpy_Watchlist objects
       
    44      */
       
    45     protected $_watchlists = array();
       
    46 
       
    47     /**
       
    48      * Constructor to initialize the object with data
       
    49      *
       
    50      * @param  DOMDocument $doc Parsed response from a GetWatchlists operation
       
    51      * @return void
       
    52      */
       
    53     public function __construct(DOMDocument $doc)
       
    54     {
       
    55         $xpath = new DOMXPath($doc);
       
    56         $list = $xpath->query('//watchlists/watchlist');
       
    57 
       
    58         for ($x = 0; $x < $list->length; $x++) {
       
    59             $this->_watchlists[$x] = new Zend_Service_Simpy_Watchlist($list->item($x));
       
    60         }
       
    61     }
       
    62 
       
    63     /**
       
    64      * Returns an iterator for the watchlist set
       
    65      *
       
    66      * @return ArrayIterator
       
    67      */
       
    68     public function getIterator()
       
    69     {
       
    70         return new ArrayIterator($this->_watchlists);
       
    71     }
       
    72 
       
    73     /**
       
    74      * Returns the number of watchlists in the set
       
    75      *
       
    76      * @return int
       
    77      */
       
    78     public function getLength()
       
    79     {
       
    80         return count($this->_watchlists);
       
    81     }
       
    82 }