/** * @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; }