Loading devel_generate/drush/devel_generate.drush8.inc +28 −0 Original line number Diff line number Diff line Loading @@ -99,6 +99,25 @@ function devel_generate_drush_command() { ], 'aliases' => ['genm'], ]; $items['generate-media'] = [ 'callback' => 'drush_devel_generate', 'callback arguments' => [ 'plugin_id' => 'media', ], 'description' => 'Create media items.', 'drupal dependencies' => ['devel_generate', 'media'], 'arguments' => [ 'num' => 'Number of media items to generate.', ], 'options' => [ 'kill' => 'Delete all media items before generating new media.', 'media-types' => 'A comma-delimited list of media types to create.', 'feedback' => 'An integer representing interval for insertion rate logging. Defaults to 1000', 'skip-fields' => 'A comma delimited list of fields to omit when generating random values.', 'languages' => 'A comma-separated list of language codes', ], 'aliases' => ['genmd'], ]; return $items; } Loading Loading @@ -152,6 +171,15 @@ function drush_devel_generate_generate_menus_validate() { _drush_plugin_validate($params); } /** * Implements drush_hook_COMMAND_validate(). */ function drush_devel_generate_generate_media_validate() { // Array of "Callback arguments" and "command line args". $params = func_get_args(); _drush_plugin_validate($params); } /** * Helper function which returns an array with a plugin instance * for a given id and the validated values ready to be used by Loading devel_generate/src/Annotation/DevelGenerate.php +7 −0 Original line number Diff line number Diff line Loading @@ -75,4 +75,11 @@ class DevelGenerate extends Plugin { */ public $drushSettings = []; /** * Modules that should be enabled in order to make the plugin discoverable. * * @var array */ public $dependencies = []; } devel_generate/src/Commands/DevelGenerateCommands.php +18 −1 Original line number Diff line number Diff line Loading @@ -111,7 +111,7 @@ class DevelGenerateCommands extends DrushCommands { * @option feedback An integer representing interval for insertion rate logging. * @aliases gent */ public function terms($num = 50, $options = ['kill' => FALSE, 'feedback' => 1000]) { public function terms($num = 50, $options = ['kill' => FALSE, 'bundles' => NULL, 'feedback' => 1000]) { $this->generate(); } Loading Loading @@ -165,6 +165,23 @@ class DevelGenerateCommands extends DrushCommands { $this->generate(); } /** * Create media items. * * @command devel-generate-media * @pluginId media * @param int $num Number of media items to generate. * @option kill Delete all media items before generating new media. * @option media-types A comma-delimited list of media types to create. * @option feedback An integer representing interval for insertion rate logging. * @option skip-fields A comma delimited list of fields to omit when generating random values. * @option languages A comma-separated list of language codes * @aliases genmd * @validate-module-enabled media */ public function media($num = 50, $options = ['kill' => FALSE, 'media-types' => NULL, 'feedback' => 1000]) { $this->generate(); } /** * @hook validate Loading devel_generate/src/DevelGenerateBaseInterface.php +8 −2 Original line number Diff line number Diff line Loading @@ -70,8 +70,14 @@ interface DevelGenerateBaseInterface extends PluginInspectionInterface { /** * Responsible for validating Drush params. * * @Return an array of values ready to be used for generateElements() * @param array $args * The command arguments. * @param array $options * The commend options. * * @return array * An array of values ready to be used for generateElements(). */ function validateDrushParams($args); function validateDrushParams(array $args, array $options = []); } devel_generate/src/DevelGeneratePluginManager.php +22 −0 Original line number Diff line number Diff line Loading @@ -28,4 +28,26 @@ Class DevelGeneratePluginManager extends DefaultPluginManager { $this->setCacheBackend($cache_backend, 'devel_generate_plugins'); } /** * {@inheritdoc} */ protected function findDefinitions() { $definitions = []; foreach (parent::findDefinitions() as $plugin_id => $plugin_definition) { $plugin_available = TRUE; foreach ($plugin_definition['dependencies'] as $module_name) { // If a plugin defines module dependencies and at least one module is // not installed don't make this plugin available. if (!$this->moduleHandler->moduleExists($module_name)) { $plugin_available = FALSE; break; } } if ($plugin_available) { $definitions[$plugin_id] = $plugin_definition; } } return $definitions; } } Loading
devel_generate/drush/devel_generate.drush8.inc +28 −0 Original line number Diff line number Diff line Loading @@ -99,6 +99,25 @@ function devel_generate_drush_command() { ], 'aliases' => ['genm'], ]; $items['generate-media'] = [ 'callback' => 'drush_devel_generate', 'callback arguments' => [ 'plugin_id' => 'media', ], 'description' => 'Create media items.', 'drupal dependencies' => ['devel_generate', 'media'], 'arguments' => [ 'num' => 'Number of media items to generate.', ], 'options' => [ 'kill' => 'Delete all media items before generating new media.', 'media-types' => 'A comma-delimited list of media types to create.', 'feedback' => 'An integer representing interval for insertion rate logging. Defaults to 1000', 'skip-fields' => 'A comma delimited list of fields to omit when generating random values.', 'languages' => 'A comma-separated list of language codes', ], 'aliases' => ['genmd'], ]; return $items; } Loading Loading @@ -152,6 +171,15 @@ function drush_devel_generate_generate_menus_validate() { _drush_plugin_validate($params); } /** * Implements drush_hook_COMMAND_validate(). */ function drush_devel_generate_generate_media_validate() { // Array of "Callback arguments" and "command line args". $params = func_get_args(); _drush_plugin_validate($params); } /** * Helper function which returns an array with a plugin instance * for a given id and the validated values ready to be used by Loading
devel_generate/src/Annotation/DevelGenerate.php +7 −0 Original line number Diff line number Diff line Loading @@ -75,4 +75,11 @@ class DevelGenerate extends Plugin { */ public $drushSettings = []; /** * Modules that should be enabled in order to make the plugin discoverable. * * @var array */ public $dependencies = []; }
devel_generate/src/Commands/DevelGenerateCommands.php +18 −1 Original line number Diff line number Diff line Loading @@ -111,7 +111,7 @@ class DevelGenerateCommands extends DrushCommands { * @option feedback An integer representing interval for insertion rate logging. * @aliases gent */ public function terms($num = 50, $options = ['kill' => FALSE, 'feedback' => 1000]) { public function terms($num = 50, $options = ['kill' => FALSE, 'bundles' => NULL, 'feedback' => 1000]) { $this->generate(); } Loading Loading @@ -165,6 +165,23 @@ class DevelGenerateCommands extends DrushCommands { $this->generate(); } /** * Create media items. * * @command devel-generate-media * @pluginId media * @param int $num Number of media items to generate. * @option kill Delete all media items before generating new media. * @option media-types A comma-delimited list of media types to create. * @option feedback An integer representing interval for insertion rate logging. * @option skip-fields A comma delimited list of fields to omit when generating random values. * @option languages A comma-separated list of language codes * @aliases genmd * @validate-module-enabled media */ public function media($num = 50, $options = ['kill' => FALSE, 'media-types' => NULL, 'feedback' => 1000]) { $this->generate(); } /** * @hook validate Loading
devel_generate/src/DevelGenerateBaseInterface.php +8 −2 Original line number Diff line number Diff line Loading @@ -70,8 +70,14 @@ interface DevelGenerateBaseInterface extends PluginInspectionInterface { /** * Responsible for validating Drush params. * * @Return an array of values ready to be used for generateElements() * @param array $args * The command arguments. * @param array $options * The commend options. * * @return array * An array of values ready to be used for generateElements(). */ function validateDrushParams($args); function validateDrushParams(array $args, array $options = []); }
devel_generate/src/DevelGeneratePluginManager.php +22 −0 Original line number Diff line number Diff line Loading @@ -28,4 +28,26 @@ Class DevelGeneratePluginManager extends DefaultPluginManager { $this->setCacheBackend($cache_backend, 'devel_generate_plugins'); } /** * {@inheritdoc} */ protected function findDefinitions() { $definitions = []; foreach (parent::findDefinitions() as $plugin_id => $plugin_definition) { $plugin_available = TRUE; foreach ($plugin_definition['dependencies'] as $module_name) { // If a plugin defines module dependencies and at least one module is // not installed don't make this plugin available. if (!$this->moduleHandler->moduleExists($module_name)) { $plugin_available = FALSE; break; } } if ($plugin_available) { $definitions[$plugin_id] = $plugin_definition; } } return $definitions; } }