tarte_au_citron-1.0.0-beta1/src/Form/AbstractForm.php
src/Form/AbstractForm.php
<?php
namespace Drupal\tarte_au_citron\Form;
use Drupal\Core\Cache\CacheBackendInterface;
use Drupal\Core\Config\ConfigFactoryInterface;
use Drupal\Core\Config\TypedConfigManagerInterface;
use Drupal\Core\Extension\ModuleHandlerInterface;
use Drupal\Core\Form\ConfigFormBase;
use Drupal\tarte_au_citron\LibraryJsDiscoverInterface;
use Drupal\tarte_au_citron\ServicesManagerInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;
/**
* Implements an abstract form.
*/
abstract class AbstractForm extends ConfigFormBase {
/**
* The module handler.
*
* @var \Drupal\Core\Extension\ModuleHandlerInterface
*/
protected ModuleHandlerInterface $moduleHandler;
/**
* The service manager.
*
* @var \Drupal\tarte_au_citron\ServicesManagerInterface
*/
protected ServicesManagerInterface $servicesManager;
/**
* The library js discover service.
*
* @var \Drupal\tarte_au_citron\LibraryJsDiscoverInterface
*/
protected LibraryJsDiscoverInterface $libraryJsDiscover;
/**
* The tarte_au_citron cache bin.
*
* @var \Drupal\Core\Cache\CacheBackendInterface
*/
protected CacheBackendInterface $cache;
/**
* {@inheritdoc}
*/
public static function create(ContainerInterface $container): static {
$instance = parent::create($container);
$instance->moduleHandler = $container->get('module_handler');
$instance->servicesManager = $container->get('tarte_au_citron.services_manager');
$instance->libraryJsDiscover = $container->get('tarte_au_citron.library_js_discover');
$instance->cache = $container->get('tarte_au_citron.services_js');
return $instance;
}
}
