SensioLabs\Deptrac\Configuration\ConfigurationRuleset::getAllowedDependendencies PHP Method

getAllowedDependendencies() public method

public getAllowedDependendencies ( $layerName ) : array
return array
    public function getAllowedDependendencies($layerName)
    {
        if (!isset($this->layerMap[$layerName])) {
            return [];
        }
        return $this->layerMap[$layerName];
    }

Usage Example

コード例 #1
0
 /**
  * @param DependencyResult                $dependencyResult
  * @param ClassNameLayerResolverInterface $classNameLayerResolver
  * @param ConfigurationRuleset            $configurationRuleset
  *
  * @return RulesetViolation[]
  */
 public function getViolations(DependencyResult $dependencyResult, ClassNameLayerResolverInterface $classNameLayerResolver, ConfigurationRuleset $configurationRuleset)
 {
     $violations = [];
     foreach ($dependencyResult->getDependenciesAndInheritDependencies() as $dependency) {
         $layerNames = $classNameLayerResolver->getLayersByClassName($dependency->getClassA());
         foreach ($layerNames as $layerName) {
             foreach ($classNameLayerResolver->getLayersByClassName($dependency->getClassB()) as $layerNameOfDependency) {
                 if ($layerName == $layerNameOfDependency) {
                     continue;
                 }
                 if (in_array($layerNameOfDependency, $configurationRuleset->getAllowedDependendencies($layerName))) {
                     continue;
                 }
                 $violations[] = new RulesetViolation($dependency, $layerName, $layerNameOfDependency, '');
             }
         }
     }
     return $violations;
 }