public function getDependencyGroups(): array
    {
        if (null === $this->dependencyGroups) {
            $this->dependencyGroups = [];
            foreach ($this->getTaskConfigurations() as $taskConfiguration) {
                $isInBranch = false;
                foreach ($this->dependencyGroups as $branch) {
                    if (\in_array($taskConfiguration->getCode(), $branch, true)) {
                        $isInBranch = true;
                        break;
                    }
                }

                if (!$isInBranch) {
                    $dependencies = $this->buildDependencies($taskConfiguration);
                    $dependencies = $this->sortDependencies($dependencies);

                    $this->dependencyGroups[] = $dependencies;
                }
            }
        }

        return $this->dependencyGroups;
    }
public function getDependencyGroups(): array
    {
        if (null === $this->dependencyGroups) {
            $this->dependencyGroups = [];
            foreach ($this->getTaskConfigurations() as $taskConfiguration) {
                $isInBranch = false;
                foreach ($this->dependencyGroups as $branch) {
                    if (\in_array($taskConfiguration->getCode(), $branch, true)) {
                        $isInBranch = true;
                        break;
                    }
                }

                if (!$isInBranch) {
                    $dependencies = $this->buildDependencies($taskConfiguration);
                    $dependencies = $this->sortDependencies($dependencies);

                    $this->dependencyGroups[] = $dependencies;
                }
            }
        }

        return $this->dependencyGroups;
    }
public function getDependencyGroups ( ) : array { if ( null === $ this -> dependencyGroups ) { $ this -> dependencyGroups = [ ] ; foreach ( $ this -> getTaskConfigurations ( ) as $ taskConfiguration ) { $ isInBranch = false ; foreach ( $ this -> dependencyGroups as $ branch ) { if ( \ in_array ( $ taskConfiguration -> getCode ( ) , $ branch , true ) ) { $ isInBranch = true ; break ; } } if ( ! $ isInBranch ) { $ dependencies = $ this -> buildDependencies ( $ taskConfiguration ) ; $ dependencies = $ this -> sortDependencies ( $ dependencies ) ; $ this -> dependencyGroups [ ] = $ dependencies ; } } } return $ this -> dependencyGroups ; }
Group all task by dependencies

If one task depend from another, it should come after

@throws \CleverAge\ProcessBundle\Exception\MissingTaskConfigurationException

@return array
Group all task by dependencies