protected function createPackagePlugin($rawPackage) { $plugin = PackagePlugin::inject(array('packageOptions' => array('co3' => PackagePlugin::LOAD_ALL), 'packageSrc' => array($this->getConfValue('path/package')), 'encoding' => $this->getConfValue('encoding'))); $this->setPlugin('package', $plugin); $package = Package::inject($rawPackage); $plugin->loadPackage('co3', $this->getConfValue('path/co3dir'), $package); return $this; }
protected function mergePackageOptions($name, Package $package, $options) { if ($package->getId() != $this->loadedPackages[$name]->getId()) { throw new Exception("Package loading colusion. Name:'{$name}'\n" . "loaded package id: '" . $this->loadedPackages[$name]->getID() . "'\n new package id: '" - $package->getID() . "'\n"); } $oldOptions = $this->packageOptions[$name]; $this->packageOptions[$name] = $options | ${$oldOptions}; $options = $options & ~$oldOptions; return $options; }