FeaturePhp/ProductLine/Product.php
private function getGeneratorElements($func) {
        $allGenerators = $this->getAllGenerators();

        foreach ($this->configuration->getSelectedFeatures() as $feature)
            $this->addArtifactToUsedGenerators($allGenerators, $feature, "addSelectedArtifact");

        foreach ($this->configuration->getDeselectedFeatures() as $feature)
            $this->addArtifactToUsedGenerators($allGenerators, $feature, "addDeselectedArtifact");

        $elements = array();
        foreach ($allGenerators as $generator)
            if ($generator->hasArtifacts())
                $elements = array_merge($elements, call_user_func(array($generator, $func)));
        return $elements;
    }
private function getGeneratorElements($func) {
        $allGenerators = $this->getAllGenerators();

        foreach ($this->configuration->getSelectedFeatures() as $feature)
            $this->addArtifactToUsedGenerators($allGenerators, $feature, "addSelectedArtifact");

        foreach ($this->configuration->getDeselectedFeatures() as $feature)
            $this->addArtifactToUsedGenerators($allGenerators, $feature, "addDeselectedArtifact");

        $elements = array();
        foreach ($allGenerators as $generator)
            if ($generator->hasArtifacts())
                $elements = array_merge($elements, call_user_func(array($generator, $func)));
        return $elements;
    }
private function getGeneratorElements ( $ func ) { $ allGenerators = $ this -> getAllGenerators ( ) ; foreach ( $ this -> configuration -> getSelectedFeatures ( ) as $ feature ) $ this -> addArtifactToUsedGenerators ( $ allGenerators , $ feature , "addSelectedArtifact" ) ; foreach ( $ this -> configuration -> getDeselectedFeatures ( ) as $ feature ) $ this -> addArtifactToUsedGenerators ( $ allGenerators , $ feature , "addDeselectedArtifact" ) ; $ elements = array ( ) ; foreach ( $ allGenerators as $ generator ) if ( $ generator -> hasArtifacts ( ) ) $ elements = array_merge ( $ elements , call_user_func ( array ( $ generator , $ func ) ) ) ; return $ elements ; }
Returns elements generated for the product.
To do this, every artifact is registered with the generators it specifies.
Then every generator generates some elements. Finally all the elements are merged.
@param callable $func
@return mixed[]
Returns elements generated for the product . To do this every artifact is registered with the generators it specifies . Then every generator generates some elements . Finally all the elements are merged .