/**
  * Recursively resolve dependecies for given plugin
  * 
  * @param Dependency $deps
  */
 private function resolveDependencies(Dependency $deps)
 {
     foreach ($deps->getDependentPackages() as $depPackage) {
         foreach ($deps->getDependentPlugins($depPackage) as $depPlugin) {
             if (!isset($this->loadedPackages[$depPackage]) or !in_array($depPlugin, $this->loadedPackages[$depPackage])) {
                 $this->usePlugin($depPackage, $depPlugin);
             }
         }
     }
 }
 /**
  * Recursively resolve dependecies for given plugin
  * 
  * @param Dependency $deps
  */
 private function resolveDependencies(Dependency $deps, $forceLoaderIncludes = false)
 {
     foreach ($deps->getDependentPackages() as $depPackage) {
         foreach ($deps->getDependentPlugins($depPackage) as $depPlugin) {
             if (!isset($this->loadedPackages[$depPackage]) or !in_array($depPlugin, $this->loadedPackages[$depPackage])) {
                 $this->usePlugin($depPackage, $depPlugin, null, false, false, $forceLoaderIncludes);
             }
         }
     }
 }