/** * @param PackageInterface $package * @param string $packageSourcePath * @return DeploystrategyAbstract */ public function make(PackageInterface $package, $packageSourcePath) { $strategyName = $this->config->getModuleSpecificDeployStrategy($package->getName()); $ns = '\\MagentoHackathon\\Composer\\Magento\\Deploystrategy\\'; $className = $ns . ucfirst($strategyName); if (!class_exists($className)) { $className = $ns . 'Symlink'; } $strategy = new $className($packageSourcePath, realpath($this->config->getMagentoRootDir())); $strategy->setIgnoredMappings($this->config->getModuleSpecificDeployIgnores($package->getName())); $strategy->setIsForced($this->config->getMagentoForceByPackageName($package->getName())); $mappingParser = $this->parserFactory->make($package, $packageSourcePath); $strategy->setMappings($mappingParser->getMappings()); return $strategy; }
/** * @param PackageInterface $package * @param string $packageSourcePath * @return DeploystrategyAbstract */ public function make(PackageInterface $package, $packageSourcePath) { $strategyName = $this->config->getDeployStrategy(); if ($this->config->hasDeployStrategyOverwrite()) { $moduleSpecificDeployStrategies = $this->config->getDeployStrategyOverwrite(); if (isset($moduleSpecificDeployStrategies[$package->getName()])) { $strategyName = $moduleSpecificDeployStrategies[$package->getName()]; } } if (!isset(static::$strategies[$strategyName])) { $className = static::$strategies['symlink']; } else { $className = static::$strategies[$strategyName]; } $strategy = new $className($packageSourcePath, realpath($this->config->getMagentoRootDir())); $strategy->setIgnoredMappings($this->config->getModuleSpecificDeployIgnores($package->getName())); $strategy->setIsForced($this->config->getMagentoForceByPackageName($package->getName())); return $strategy; }