public function load()
 {
     $loadedClasses = $this->_pluginLoader->loadAll();
     foreach ($loadedClasses as $className) {
         $reflector = new ReflectionClass($className);
         if ($reflector->isInstantiable() && $reflector->isSubclassOf('Zend_Tool_Provider_Abstract')) {
             $this->addProvider($reflector->newInstance());
             continue;
         }
         if ($reflector->isInstantiable() && ($reflector->getName() == 'Zend_Tool_Provider_Action' || $reflector->isSubclassOf('Zend_Tool_Provider_Action'))) {
             $this->addAction($reflector->newInstance());
             continue;
         }
     }
     return $this;
 }
 /**
  * _loadContexts() - statically find and load the context files
  *
  */
 protected static function _loadContexts()
 {
     $pluginLoader = new Zend_Loader_PluginLoader(array('Zend_Tool_Provider_ZfProject_ProjectContext_' => dirname(__FILE__) . '/ProjectContext/'));
     $classes = $pluginLoader->loadAll();
     foreach ($classes as $class) {
         $reflectionClass = new ReflectionClass($class);
         if ($reflectionClass->isInstantiable() && $reflectionClass->isSubclassOf('Zend_Tool_Provider_ZfProject_ProjectContext_ProjectContextAbstract')) {
             $context = $reflectionClass->newInstance();
             self::$_contexts[$context->getContextName()] = $context;
         }
     }
 }