public function readPackages()
 {
     WCF::getCache()->addResource('packages-' . $this->source->sourceID, PB_DIR . 'cache/cache.packages-' . $this->source->sourceID . '.php', PB_DIR . 'lib/system/cache/CacheBuilderPackages.class.php');
     $packages = WCF::getCache()->get('packages-' . $this->source->sourceID);
     // read current builds
     $files = DirectoryUtil::getInstance($this->source->buildDirectory, false)->getFiles();
     foreach ($files as $file) {
         if (strrpos($file, '.tar.gz') !== false) {
             $package = new PackageReader($this->source->sourceID, $this->source->buildDirectory . $file, true);
             $data = $package->getPackageData();
             $this->packages[$data['name']][$data['version']] = array('file' => $file, 'xml' => $package->getXML());
         }
     }
 }