public static function SettingsForm::create in Lightning Layout 8
Same name and namespace in other branches
- 8.2 src/Form/SettingsForm.php \Drupal\lightning_layout\Form\SettingsForm::create()
Instantiates a new instance of this class.
This is a factory method that returns a new instance of this class. The factory should pass any needed dependencies into the constructor of this class, but not the container itself. Every call to this method must return a new instance of this class; that is, it may not implement a singleton.
Parameters
\Symfony\Component\DependencyInjection\ContainerInterface $container: The service container this instance should use.
Overrides ConfigFormBase::create
File
- src/
Form/ SettingsForm.php, line 66
Class
- SettingsForm
- The settings form for controlling Lightning Layout's behavior.
Namespace
Drupal\lightning_layout\FormCode
public static function create(ContainerInterface $container) {
$arguments = [
$container
->get('config.factory'),
$container
->get('entity_type.manager'),
$container
->get('plugin.manager.block'),
$container
->get('string_translation'),
];
// Entity Block is not a hard dependency of Lightning Layout, so we need
// to be careful not to inject its deriver if it's not available.
$deriver = 'Drupal\\entity_block\\Plugin\\Derivative\\EntityBlock';
if (class_exists($deriver)) {
$arguments[] = call_user_func([
$deriver,
'create',
], $container, 'entity_block');
}
$reflector = new \ReflectionClass(static::class);
return $reflector
->newInstanceArgs($arguments);
}