Version 1
[yaffs-website] / vendor / drupal / console / src / Generator / PluginFieldTypeGenerator.php
1 <?php
2
3 /**
4  * @file
5  * Contains \Drupal\Console\Generator\PluginFieldTypeGenerator.
6  */
7
8 namespace Drupal\Console\Generator;
9
10 use Drupal\Console\Core\Generator\Generator;
11 use Drupal\Console\Extension\Manager;
12
13 class PluginFieldTypeGenerator extends Generator
14 {
15     /**
16      * PluginFieldTypeGenerator constructor.
17      *
18      * @param Manager $extensionManager
19      */
20     public function __construct(
21         Manager $extensionManager
22     ) {
23         $this->extensionManager = $extensionManager;
24     }
25
26     /**
27      * Generator Plugin Field Type.
28      *
29      * @param string $module            Module name
30      * @param string $class_name        Plugin Class name
31      * @param string $label             Plugin label
32      * @param string $plugin_id         Plugin id
33      * @param string $description       Plugin description
34      * @param string $default_widget    Default widget this field type used supports
35      * @param string $default_formatter Default formatter this field type used supports
36      */
37     public function generate($module, $class_name, $label, $plugin_id, $description, $default_widget, $default_formatter)
38     {
39         $parameters = [
40             'module' => $module,
41             'class_name' => $class_name,
42             'label' => $label,
43             'plugin_id' => $plugin_id,
44             'description' => $description,
45             'default_widget' => $default_widget,
46             'default_formatter' => $default_formatter,
47         ];
48
49         $this->renderFile(
50             'module/src/Plugin/Field/FieldType/fieldtype.php.twig',
51             $this->extensionManager->getPluginPath($module, 'Field/FieldType') . '/' . $class_name . '.php',
52             $parameters
53         );
54     }
55 }