/**
  * Return the next Qualifier.
  *	
  * @return object Qualifier
  * 
  * @throws object HierarchyException An exception with one of
  *		   the following messages defined in
  *		   org.osid.hierarchy.HierarchyException may be thrown:	 {@link
  *		   org.osid.hierarchy.HierarchyException#OPERATION_FAILED
  *		   OPERATION_FAILED}, {@link
  *		   org.osid.hierarchy.HierarchyException#PERMISSION_DENIED
  *		   PERMISSION_DENIED}, {@link
  *		   org.osid.hierarchy.HierarchyException#CONFIGURATION_ERROR
  *		   CONFIGURATION_ERROR}, {@link
  *		   org.osid.hierarchy.HierarchyException#UNIMPLEMENTED
  *		   UNIMPLEMENTED}, {@link
  *		   org.osid.hierarchy.HierarchyException#NO_MORE_ITERATOR_ELEMENTS
  *		   NO_MORE_ITERATOR_ELEMENTS}
  * 
  * @access public
  */
 function next()
 {
     // If this is the first element access, inform our AZ cache that we are
     // working with this set of nodes so that it can fetch AZs for all of
     // them at once.
     if ($this->_i == -1) {
         $isAuthorizedCache = IsAuthorizedCache::instance();
         $isAuthorizedCache->queueAssetArray($this->_elements);
     }
     return parent::next();
 }
 /**
  * Answer the authorization cache used by this manager.
  *
  * WARNING: NOT IN OSID
  * 
  * @return object IsAuthorizedCache
  * @access public
  * @since 4/21/08
  */
 public function getIsAuthorizedCache()
 {
     return IsAuthorizedCache::instance();
 }
 /**
  * This class implements the Singleton pattern. There is only ever
  * one instance of the this class and it is accessed only via the 
  * ClassName::instance() method.
  * 
  * @return object 
  * @access public
  * @since 5/26/05
  * @static
  */
 public static function instance()
 {
     if (!isset(self::$instance)) {
         self::$instance = new IsAuthorizedCache();
     }
     return self::$instance;
 }