| Current Path : /home/digilove/public_html/libraries/smartslider3/src/SmartSlider3/Generator/ |
| Current File : /home/digilove/public_html/libraries/smartslider3/src/SmartSlider3/Generator/GeneratorFactory.php |
<?php
namespace Nextend\SmartSlider3\Generator;
use Nextend\Framework\Pattern\PluggableTrait;
use Nextend\Framework\Pattern\SingletonTrait;
class GeneratorFactory {
use PluggableTrait, SingletonTrait;
/** @var AbstractGeneratorGroup[] */
private static $generators = array();
protected function init() {
$this->makePluggable('SliderGenerator');
}
/**
* @param AbstractGeneratorGroup $generator
*/
public static function addGenerator($generator) {
self::$generators[$generator->getName()] = $generator;
}
public static function getGenerators() {
foreach (self::$generators as $generator) {
$generator->load();
}
return self::$generators;
}
/**
* @param $name
*
* @return AbstractGeneratorGroup|false
*/
public static function getGenerator($name) {
if (!isset(self::$generators[$name])) {
return false;
}
return self::$generators[$name]->load();
}
}
GeneratorFactory::getInstance();