basket_imex-10.x-dev/src/Generator/ImexGenerator.php

src/Generator/ImexGenerator.php
<?php

namespace Drupal\basket_imex\Generator;

use Drupal\Console\Core\Generator\Generator;
use Drupal\Console\Core\Generator\GeneratorInterface;
use Drupal\Console\Extension\Manager;

/**
 * Class EventNotificationsGenerator.
 *
 * @package Drupal\Console\Generator
 */
class ImexGenerator extends Generator implements GeneratorInterface {

  /**
   * Manager object.
   *
   * @var \Drupal\Console\Extension\Manager
   */
  protected $extensionManager;

  /**
   * {@inheritdoc}
   */
  public function __construct(Manager $extensionManager) {
    $this->extensionManager = $extensionManager;
  }

  /**
   * {@inheritdoc}
   */
  public function generate(array $parameters) {

    // Example how to render a twig template using the renderFile method.
    $this->renderer->addSkeletonDir(__DIR__ . '/templates');

    $module = $parameters['module'];
    $class = $parameters['class'];

    $moduleInstance = $this->extensionManager->getModule($module);
    $moduleDir = $moduleInstance->getPath();

    switch ($parameters['g_type']) {
      case'service':
        $this->renderFile(
          'basket_imex-generate-service.php.twig',
          $moduleDir . '/src/Plugin/IMEX/' . $class . '.php',
          $parameters
        );
        break;

      case'field':
        $this->renderFile(
          'basket_imex-generate-field.php.twig',
          $moduleDir . '/src/Plugin/IMEX/field/' . $class . '.php',
          $parameters
        );
        break;
    }
  }

}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc